38 lines
2.3 KiB
Markdown
38 lines
2.3 KiB
Markdown
|
|
# WombusLED
|
|
|
|
Firmware for controlling WS2812b matrices with ESP-IDF.
|
|
This embedded application is designed around the hardware described in this repository, though the goal is to broaden to other hardware targets.
|
|
The primary target is the ESP32-S3 Wroom1 N4R2 module.
|
|
KiCad schematic and PCB layout files can be found in the pcb directory.
|
|
|
|
Scripts are in scripts directory, named appropriately.
|
|
|
|
## Development plan:
|
|
- [x] Create repository.
|
|
- [x] Build setup, get working hello-world program.
|
|
- [x] Develop 7-segment display driver for the soburg-v2 board, which uses 32-bit shift registers.
|
|
Ensures functional hardware interaction and interface design.
|
|
- [x] Develop WS2812b driver, would be nice to have some kind of testing for this.
|
|
- [x] Develop WS2812b interface. I like the FastLed library for Arduino so might have a lot of similar functionality.
|
|
- [ ] Implement proper app structure, with error checking and performance profiling
|
|
- [ ] Add a couple LED effects- the random blink and rainbow sweep are easy ones.
|
|
- [ ] Create a mock LED panel that executes natively to test LED effects outside of hardware. (SDL2 or something)
|
|
Should use the same interface but a different driver (that's probably integrated into the program)
|
|
Needs to be updated to support the same control interfaces implemented on hardware.
|
|
- [ ] Add support for the aforementioned hardware control interfaces.
|
|
(Dedicated control board may vary, main one not even designed yet)
|
|
Buttons for switching effects, potentiometers, rotary encoders, 7 segement displays, OLED panel, etc.
|
|
- [ ] Checkpoint at a Conway's Game of Life effect that can be modified by controls (speed, brightness, reset)
|
|
- [ ] Design this far out is murky, anything past this point is a future ambition
|
|
- [ ] MicroSD card for bitmap effects. Implies custom images and animations, config for which can be in a yaml or something
|
|
- [ ] Microphone for sound-based effects like a spectrum analyzer
|
|
|
|
This is basic but hopefully can be good platform for future WS2812b projects.
|
|
|
|
## Scripts:
|
|
After cloning: $ ./scripts/repo-setup # installs esp-idf, sets up target configurations\
|
|
To build: $ ./scripts/build.sh\
|
|
To flash: $ ./scripts/flash.sh # note: flash.sh automatically builds\
|
|
To monitor: $ ./scripts/monitor.sh\
|