An ESP8285 (or ESP8266) which sends a Slack message into a channel once a big button is pressed.
Show status of progress with a 24 pixel WS2812B LED ring (also known as Neopixel).
After job is done, the ESP will be turned off (so it needs an LDO with ENABLE/SHUTDOWN pin).
It's basically an overcomplicated "dash button" with fancy lights in a button and housed in a very huge case. Funnily enough I shrunk the PCB way more than needed for the case, but I liked this challenge and wanted to get familiar with SMD soldering anyway.
- use an SMD version of the ESP8266 (like ESP-12F)
- use an ESP-32 and utilize the 2 cores (main task doing all the communication + secondary task keeping the lights running concurrently)
- use an SMD ATtiny## with the ESP82## for concurrently driving the LEDs?
- Do you have an interesting idea? Open an issue and tell me!
The SMD ESPs would make the board bigger again, because I need to mount them somehow to the PCB, but that's okay probably. Certainly I don't want to use th bare chips and deal with antenna magic, I leave this journey to the Unexpected Maker.
PCB 3D rendering for v2.1 rev1
PCB schematic rendering for v2.1 rev1
- Early prototype (Jan 2018)
- Next version on a breadboard (Feb 2019)
- First self-designed PCB prototype (Feb 2019)
- v2.1 rev00001 (March 2019)
- v2.1 rev00002 (March 2019)
- coming soon
Component | Amount | Notes |
---|---|---|
PCB | 1 | see kicad project |
ESP8285 | 1 | an ESP8266 should still work |
WS2812B 24 pixel ring | 1 | RGB LEDs; so called Neopixel ring |
18650 cell | 2 | 2000mAh or better |
battery holder (for 2 cells) | 1 | with a DC Jack connector |
wires (Dupont) | 5 | for button and LED ring |
(components for PCB) | many | tbd (check kicad schematic) |
Per default the ESP8266 Arduino framework is used and code should be usable in their IDE.
There are other frameworks usable with ESP8266/ESP8285, but haven't done any testing yet. Especially for JSON support one should look for a generic C/C++ library suitable for embedded devices.
Framework: https://github.com/espressif/ESP8266_NONOS_SDK
Compatible platformio libraries: https://platformio.org/lib/search?query=framework:%22esp8266-nonos-sdk%22
Framework: https://github.com/espressif/ESP8266_RTOS_SDK
Compatible platformio libraries: https://platformio.org/lib/search?query=framework:%22esp8266-rtos-sdk%22