This repository has been archived on 2024-07-04. You can view files and clone it, but cannot push or open issues or pull requests.
serial_debugger/hardware/_controller/README.md

57 lines
2.4 KiB
Markdown

# Controller
A debug console and configuration shield for serial TTL muxers. See the ```muxers``` folder for what connects to this shield.
## Hardware / BoM
| Item | Quantity | Unit Cost |
| ---- | -------- | --------- |
| [Keyboard FeatherWing (Keyboard + LCD)](https://www.tindie.com/products/arturo182/keyboard-featherwing-qwerty-keyboard-26-lcd/) | 1 | $55.00 |
| [Feather nRF52840 Express](https://www.adafruit.com/product/4062) | 1 | $24.95 |
## Libraries Used
### Local
These librarires are used by the project and contained in the ```src/``` folder local to the project.
- [GUIslice 0.15](https://github.com/ImpulseAdventure/GUIslice)
- [SdFat 1.1.4](https://github.com/greiman/SdFat)
### External
These libraries are used by the project and can be installed via the Arduino IDE library manager.
- [CircularBuffer](https://github.com/rlogiacco/CircularBuffer)
- [bbq10keyboard](https://github.com/arturo182/arduino_bbq10kbd)
- [Adafruit_ILI9341](https://github.com/adafruit/Adafruit_ILI9341)
- [Adafruit_NeoPixel](https://github.com/adafruit/Adafruit_NeoPixel)
## Hardware Docs
- [https://www.solder.party/docs/keyboard-featherwing/downloads/](https://www.solder.party/docs/keyboard-featherwing/downloads/)
- [https://github.com/arturo182/bbq10kbd_i2c_sw](https://github.com/arturo182/bbq10kbd_i2c_sw)
- [https://github.com/lvgl/lv_arduino](https://github.com/lvgl/lv_arduino)
## Implementation (Incomplete)
- Startup shows connection setup + waits for OK prompt via main hat switch
- Status bar @ top with selected uart, selected speed
- Simple display of serial in/out via lcd
- Button for accessing symbols via pop-up list that aren't on keyboard
- Bccessing a uart selection pop-up that maps to rpi uarts
- Button for accessing password selection pop-up to help with password entry over serial
- Button for accessing uart speed pop-up to help with configuring line speeds
- Way to display pinouts stored on micro sd card
- Configuration read from muxes (if attached)
## Implementation (Complete)
- Battery level on feather neopixel (green = >80% ; yellow >=40% ; orange >= 25% ; red < 25%)
- User LED (red) always on when feather is running
- Battery level shown as progress bar in the upper right corner of the screen
## Building / Uploading
The ```make.ps1```, ```build.ps1``` and ```upload.ps1``` scripts can be used to build/upload this project. These scripts call the ```arduino-cli``` commands programatically.