ESPHome on SHA2017 Badge | |
---|---|
Participants | Dennis |
Skills | ESP32 |
Status | In progress |
Niche | Other |
Purpose | Use for infra |
Tool | No |
Location | |
Cost | |
Tool category |
ESPHome on SHA2017 Badge Property "Tool Image" (as page type) with input value "File:{{{Picture}}}" contains invalid characters or is incomplete and therefore can cause unexpected results during a query or annotation process. {{{Picture}}} {{#if:No | [[Tool Owner::{{{ProjectParticipants}}} | }} {{#if:No | [[Tool Cost::{{{Cost}}} | }}
What
The SHA2017 Badge is an awesome piece of hardware based on a ESP32 and an e-ink screen. It can run Micropython and a ton of apps for that are available @ the Hatchery. While I was thinking about writing an app for controlling Home Assistant, I realized that ESPHome would be very suited for that. So here are some pointers to running ESPHome on the SHA2017 Badge.
How to install
I am assuming some familiarity with ESPHome at this point. If not, check the guides on the ESPHome site: https://esphome.io/guides/getting_started_command_line.html or https://esphome.io/guides/getting_started_hassio.html
- Compile firmware using a yaml config file suited for your needs (a working one can be found here).
- Upload it to the badge through USB (I used esphome-flasher since I got errors trying uploading with esphome cli and I am too stupid to use esptool :p).
If you enabled wifi and OTA and everything went well, you can program it wirelessly next time.
Stuff that is working
- Touch pads (through MPR121)
- USB and battery voltage readings (not verified but they seem sane)
- Button marked flash on the back
Todo
- Support for the E-Ink screen.
Unfortunately the screen is not supported in ESPHome. There is a Waveshare E-Paper Display Component, but it looks like this does not work with our screen. Maybe we can use this as a base for our own component.