The ESPHome weather station with a Nextion display

Disclosure: This post contains affiliate links. If you click through and make a purchase, I will earn a commission, at no additional cost to you. Read my full disclosure here.

A painting of a woman standing in the rain with an umbrella.

Today, we're diving into a DIY project that's been on my radar for a while. The only caveat? You'll need a 3D printer – a piece of kit that's sadly still on my wish list. This project is about creating a weather station with a 2.4″ Nextion display and a LOLIN (aka WEMOS) D1 mini ESP8266 board, all snuggled up in a 3D-printed casing. Don't worry, I'll run you through the entire part list a little later.

A weather station built with ESPHome showing the current time (20:47).
A weather station built with ESPHome showing the indoor temperature (24.8 °C), outdoor temperature (17.0 °C), and pool temperature (29.1 °C).

What the ESPHome weather station with a Nextion display can do for you

This gizmo can be your go-to weather station, giving you real-time temperature readings from sensors around your home and even forecasting weather powered by the Home Assistant weather component. Plus, as an ESPHome project, it can display just about anything you've got in your Home Assistant. And, since it's network-connected and can chit-chat with Home Assistant, you're always looking at the most recent values.

How to build an ESPHome weather station

The ESPHome weather station is a creative masterpiece from GitHub user bruxy70. Much like the last project we explored, this one's not rocket science either. It's basically a 2.4″ Nextion display connected to a D1 mini ESP8266 board with just four wires (GND, +5V, RX, and TX). No sensors, no lights, just a sleek setup housed in a 3D-printed enclosure.

You're going to need a microSD or USB FTDI board to flash the display. Here's a heads-up: Nextion displays are a bit of a curveball. They come with an inbuilt ARM microcontroller that pulls the strings for the display. It takes charge of the text, buttons, images, and a bit of onboard storage. Once you're done flashing, you can repurpose your microSD card.

Customizing the interface requires the Nextion Editor. If you're replicating the project straight from the GitHub repository, your display will have two pages – one displaying temperature readings from sensors and the other forecasting the weather.

If the design showcased in the images tickles your fancy, you're in for a treat. The creator has generously shared all files on GitHub, including the STL files for your 3D printer and the design file for the display.

Bringing the Wemos D1 to life with ESPHome

The ESPHome code for this project might seem like Greek to you at first. But fear not, the comments provided should help you make sense of it all. The icing on the cake? It's smart enough to switch off when no one's home, and even dims the display brightness after sunset. Talk about energy efficiency!

A portrait photo oif Liam Alexander Colman, the author, creator, and owner of Home Assistant Guide wearing a suit.

About Liam Alexander Colman

is an experienced Home Assistant user who has been utilizing the platform for a variety of projects over an extended period. His journey began with a Raspberry Pi, which quickly grew to three Raspberry Pis and eventually a full-fledged server. Liam's current operating system of choice is Unraid, with Home Assistant comfortably running in a Docker container.
With a deep understanding of the intricacies of Home Assistant, Liam has an impressive setup, consisting of various Zigbee devices, and seamless integrations with existing products such as his Android TV box. For those interested in learning more about Liam's experience with Home Assistant, he shares his insights on how he first started using the platform and his subsequent journey.

Leave a comment

Share to...