Blog

Weather Display with ESP32 and 3D Printed Case

1/6/2026 2 min read

Welcome to a great DIY project that will excite both tech enthusiasts and weather lovers alike: building a personalized weather display. The heart of this project is an ESP32 microcontroller paired with an elegant 7.5-inch e-paper display, known for its eye-friendly presentation and energy efficiency. This display fetches its data in real time from the OpenWeatherMap API, a comprehensive provider of current and forecasted weather data.

Weather Display with ESP32 and 3D Printed Case

What makes this display combined with the ESP32 special is its impressive energy efficiency. In standby mode, the device consumes minimal power, making it ideal for long-term, autonomous operation. For example, a 3000mAh battery can provide a runtime of around two months with an update interval of 30 minutes. With a larger battery or less frequent updates, this duration can be extended even further. Additionally, the device offers the convenience of USB-C charging.

This weather display is highly customizable. You can not only choose location and time/date formats but also customize units, language, air quality index scales, and even the boundaries of hourly forecast charts to suit your needs.

The expected cost is about 80-95€ depending on which parts you already have.

Necessary parts: (Amazon Affiliate)

ESP32 microchip from Waveshare with the capability to connect a display.

Waveshare 7.5 E-Ink Display

Charging electronics (TP4056)

Battery (3.7V)

Jumper cables (not strictly necessary, can instead be soldered)

Battery cables (also not strictly necessary, can be soldered instead)

Screws (2x10mm) (not strictly necessary, just for the back cover)

Necessary tools:

Soldering iron

3D printer to print the case. Of course, you can also build your own case from wood, cardboard, etc.

Software

The software and accompanying documentation for the weather display can be found here: https://github.com/G6EJD/ESP32-e-Paper-Weather-Display

After copying the templates into your IDE as described in the documentation, choose the template named "Waveshare_7_5_T7" for the display I used.

Print settings

The 3D STL files can be found here: https://makerworld.com/de/models/133148

You can print the case with a standard layer height of 0.2 mm. It is best to use tree supports and gyroid infill.

Assembly

The display is fixed to the front using double-sided tape. The ESP32 and the battery can be inserted into the case. Unfortunately, the charging electronics is also glued in, as it does not have cutouts for screws. I used hot glue. When screwing the case together, be careful not to drive screws through the cables.