Weatherman Dashboard for ESPHome
I have multiple dashboards around my apartment and they display different information depending on the context. Since this is placed near the front door, it contains concise information for what's outside with a homey style to match the rest of the wall.
This is part of the ecosystem for my Home Assistant configuration.
Hardware
- Waveshare 7.5" e-Paper Screen - 480x800 display resolution
- Waveshare Universal e-Paper Driver Board with ESP32
- Ikea RIBBA Picture Frame 5"x7"
- Legrand 3 Way Switch + USB
- Micro USB Thin Ribbon Cable
- Angled USB Thin Ribbon Cable
Software
- ESPHome
- Home Assistant running on a Raspberry Pi as a remote server
Installation
- No soldering is required since the e-Paper driver board was integrated into the ESP32 board. All I needed to do was to connect the e-Paper screen to the driver board, and then connect the driver board to the USB socket on my light switch.
- Copy
/fonts
,/images
, andweatherman.yaml
to your /.config/esphome folder. - Integrate the content of
sensor.yaml
to your Home Assistant template configuration YAML file. - Install HA-GTFS-RT to your Home Assistant using HACS.
- Once booted, flash
weatherman.yaml
the ESP32 board using ESPHome. - Enjoy!
Features
Intelligent Screen Refreshing
To reduce the frequency of screen refreshes and to prolong the life of the e-ink screen, the screen will now only refresh when motion (or any template criteria) sensor binary_sensor.weatherman_motion_detected
is on. I have it set up so that it wakes up when there are any motions from my sensors in the living room.
Last Refreshed Timestamp
The last update timestamp can be displayed on the screen itself. No more wondering when the screen was last refreshed!
Remote Control and Monitoring
The screen can now be controlled and monitored remotely. The screen can be either refreshed manually, restarted, or safely shut down through buttons in your HA. The number of screen refreshes in its lifetime as well as its last update timestamp and wifi signal strength can also be monitored.
Other changes:
- Negative temperatures can now be displayed. Perfect for winter.
- A nice loading screen is shown before any data is received.
- Titles are now in text rather than bitmaps. Much easier to change it to anything you like.
Data Sources
- Metno Hourly Weather Forecast HA integration
- Goodservice.io API
- GTFS-RT Custom Component
References
Here are some other repos that I referenced from:
- https://github.com/DeastinY/esphome-waveshare-e-paper-dashboard
- https://github.com/savikko/smarthome
Weatherman is a reference to the song Blame it on the Weatherman by B*Witched. If you're late to your date because of this, blame it on the Weatherman.