As I started my path of ESPhome for custom sensors, I saw that it also supported displays for sensors, and more importantly (and fun!!) – E Ink displays!! I’ve been a big fan of using Grafana as a set of curated dashboards for tablets in kiosk mode. They’ve helped keep an eye on home lab details and a handful of WeatherFlow dashboards. Those are great situations where having a tablet plugged into power for a full-color display makes sense. But E Ink provides many benefits for places where battery-powered options are wanted at a glance.
I went through a few phases as I got started with understanding how these displays worked. First, it was a set of WaveShare displays, both their 4.2-inch and 7.5-inch varieties. But soon, I started seeing a few posts on Reddit and the ESPHome Github Feature Request showing interest in the LILYGO T5-4.7 inch E-Paper Ink Screen display. This seemed cool because it has the ESP32 and rechargeable battery built as an All-In-One instead of needing to assemble and build those components into an enclosure for the Waveshare.
I’ve used the 7.5-inch Waveshare primarily for its display size, although its resolution is less than the LILYGO. However, even with the smaller LILYGO display, it includes buttons, and I love the printable 3D cases available online.
Below are a handful of screens that I’ve built. Each of the ESPhome YAML files may be found on my Github. Note that each configuration is unique to my Home Assistant configuration, data sources, and sensors.
WeatherFlow 24-Hour Precipitation Forecast with 9-Room Temperature & Humidity
- Provides nine temperature and humidity readouts
- Current WeatherFlow temperature including high, low, and chance of precipitation
- At a glance next 24-hour-by-hour WeatheFlow forecast with temperature, hour (small clock), weather conditions, and the chance of precipitation (pie chart).
- WIFI signal, battery level, and last updated timestamp
- Uses my WeatherFlow Home Assistant Data Collector. Please read below for more details.
WeatherFlow 3-Day Overview with 24-Hour Precipitation Forecast
- Three-day overview with current, high, and low temperatures plus the chance of precipitation
- At a glance next 24 hour-by-hour WeatheFlow forecast with temperature, weather conditions, and the chance of precipitation
- Wi-Fi signal, battery level, and last updated timestamp
- Uses my WeatherFlow Home Assistant Data Collector. Please read below for more details.
WeatherFlow 4-Day Overview
- Four-day WeatherFlow forecast with current, high, and low temperatures
- Month/Day and abbreviated Day of the Week
- Wi-Fi signal, battery level, and last updated timestamp
- Uses my WeatherFlow Home Assistant Data Collector. Please read below for more details.
Clock
- Updates every 60 seconds
- Wakes up, gets a text value from Home Assistant to determine if it should stay awake or not (for firmware updates), updates the screen, calculates how long it should sleep until the next minute, and falls asleep.
- Configured to refresh the screen between 7 am and midnight.
- Because it currently takes about 15 seconds to do all that, I only get about seven days of battery power before a required recharge. I would like to get about 30 days on this… (Option would be to skip the Home Assistant API in favor of MQTT to validate sleep status…) I will look to optimize this at some point.