esphome / esphome/feature-requests
Support for Pimoroni Badger 2040 W
- Dominant language
- No language data
- Stars
- 450
- Forks
- 29
- PR merge metrics
- No merged PRs in 30d
Description
**Describe the problem you have/What new integration you would like**
Full support for [Pimoroni Badger 2040 W](https://shop.pimoroni.com/products/badger-2040-w?variant=40514062188627), including driving the e-paper display and using the onboard PCF85063A RTC chip for time keeping and sleep wake.
Ideally, the documentation would feature examples on how to use all onboard components (e-paper, LED, buttons, RTC chip).
**Please describe your use case for this integration and alternatives you've tried:**
Alternatives are custom code in Arduino/C or MicroPython, but nothing as integrated to HomeAssistant.
Pimoroni provides libraries in MicroPython and C++:
https://github.com/pimoroni/pimoroni-pico
https://github.com/pimoroni/badger2040
Looks like there's a driver for UC8151, which matches a chipset from adafruit used in a e-paper screen. Not sure it's the same though.
https://github.com/pimoroni/pimoroni-pico/tree/main/drivers/uc8151
https://www.adafruit.com/product/4262
**Additional context**
I tried the following config:
```yaml
esphome:
name: badger2040-test
friendly_name: badger2040-test
rp2040:
board: rpipicow
spi:
clk_pin: GPIO18
mosi_pin: GPIO19
miso_pin: GPIO16
display:
- platform: waveshare_epaper
cs_pin: GPIO17
dc_pin: GPIO20
busy_pin: GPIO26
reset_pin: GPIO21
model: 2.90in-b
update_interval: 1s
lambda: |-
it.line(0, 0, 50, 50);
```
The screen blinks continuously and shows the expected line, sometimes. When increasing the update_interval, like setting it to 10s, the line never appears but the screen blinks on every refresh.
I tried showing the test card but the screen doesn't change.
Models `2.90in-b` and `2.90in-bV3` are the only ones where the screen does something. For all other 2.90 variants, the screen remains in its original state when booting.
Please let me know if I can help test things. I have several Badgers at home, I can easily spare one.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by comparing the linked Pimoroni Badger 2040 and UC8151 drivers with ESPHome's existing waveshare_epaper configuration shown in the issue. Determine the hardware requirements for the e-paper display, RTC, LED, and buttons; done means integrated support works and documentation includes examples for each onboard component.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, yaml
- Domain
- embedded-iot
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100