display check with 2.9.2
-gfxhat
sn3218 library missing from the venv, added to /hw/libs/pimoroni/gfxhat/
cleanup of the code (EPD changed to LCD)
logging info added for config options (contrast, color)
touch control work in progress (6 touch buttons with short and long press and LED feedback)
-i2coled
cleanup of the code (EPD changed to OLED)
Logging info added for config options (width, height, i2c address)
-oledlcd and oledlcdvert
working out of the box
logging info added for available gpio breakouts (buttons)
-displayhatmini
working out of the box
logging info added for available gpio breakouts (buttons, rgb LED, i2c bus)
-pirateaudio
working out of the box
logging info added for available gpio breakouts (buttons, i2s bus)
-pitft
working out of the box
logging info added for available gpio breakouts (buttons)
-tftbonnet
working out of the box
logging info added for available gpio breakouts (buttons, i2c bus)
-minipitft
working out of the box
logging info added for available gpio breakouts (buttons, i2c bus)
-minipitft2
cant test on HW but should work!
logging info added for available gpio breakouts (buttons, i2c bus)
-argonpod
cant test on HW but should work!
logging info added for available gpio breakouts (buttons, IR)
Receive GPS coordinates via termux-location and save whenever an handshake is captured.
Signed-off-by: Kris Henriksen <krishenriksen@users.noreply.github.com>
<!--- Provide a general summary of your changes in the Title above -->
## Description
<!--- Describe your changes in detail -->
Display support for the following screens:
- [Pimoroni GFX Hat](https://shop.pimoroni.com/products/gfx-hat?variant=12828343631955):
ui.display.type = "gfxhat"
Contrast and Backlight color can be imported from config.toml:
ui.display.contrast = 40
ui.display.blcolor = "olive"
Available backlight colors:
white, grey, maroon, red, purple, fuchsia, green,
lime, olive, yellow, navy, blue, teal, aqua
- [Adafruit miniPiTFT](https://www.adafruit.com/product/4484):
ui.display.type = "minipitft"
- [Adafruit miniPiTFT2](https://www.adafruit.com/product/4393):
ui.display.type = "minipitft2"
- [ArgonPod](https://argon40.com/products/pod-display-2-8inch):
ui.display.type = "argonpod"
- [DisplayHatMini](https://shop.pimoroni.com/products/display-hat-mini?variant=39496084717651):
Driver updated to fix issues
- I2C Oled:
Default I2C address changed to 0x3C, because most boards are coming with it by default.
Can be modified in config
ui.display.type = "i2coled"
ui.display.i2c_addr = 0x3C
ui.display.width = 128
ui.display.height = 64
## Motivation and Context
Future plan for LCD and OLED screens:
Change from the pwnagotchis hw libraries for drivers to LumaOLED LumaLCD packages.
Luma Core: https://github.com/rm-hull/luma.core
Luma LCD: https://github.com/rm-hull/luma.lcd
Luma OLED: https://github.com/rm-hull/luma.oled
It has the most used LCD and OLED drivers ready, and adding new screens could be easier in the future.
## How Has This Been Tested?
Except the argonpod and minipitft2 all screens were tested on previous builds,
should work in 2.9.2, but before release I would like to test it with an image.
## Types of changes
<!--- What types of changes does your code introduce? Put an `x` in all the boxes that apply: -->
- [x] Bug fix (non-breaking change which fixes an issue)
- [x] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to change)
## Checklist:
<!--- Go over all the following points, and put an `x` in all the boxes that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're here to help! -->
- [x] My code follows the code style of this project.
- [ ] My change requires a change to the documentation.
- [x] I have updated the documentation accordingly.
- [x] I've read the [CONTRIBUTION](https://github.com/evilsocket/pwnagotchi/blob/master/CONTRIBUTING.md) guide
- [x] I have signed-off my commits with `git commit -s`