Affiliate disclosure: This page contains affiliate links. When you buy through these links, we earn a small commission at no extra cost to you. This helps us keep the site running and the links up to date.
What This Project Is
This project builds a compact, 3D-printed desktop weather station. It uses an ESP32 development board to fetch real-time weather data from the OpenWeatherMap API over Wi-Fi and displays it on a 1.8-inch ST7735 color TFT screen. The enclosure is designed for tool-free assembly, with the screen clipping in and the ESP32 secured by double-sided tape.
This page provides a verified bill of materials with working buy links, specific build tips, and direct links to the necessary firmware and 3D print files. The original project’s firmware was generated by AI, so we’ve included important warnings from the creator about potential inaccuracies.
What You’ll Need to Buy
| # | Component | Spec | Qty | Buy Link | Notes |
|---|---|---|---|---|---|
| 1 | ESP32 Development Board | ESP-WROOM-32, 38-pin | 1 | Adafruit — ESP32 Huzzah32 | Any 38-pin ESP-WROOM-32 board works. This one is reliable. ESP32 uses 3.3V logic, matching the display. |
| 2 | 1.8” Color TFT LCD Display | ST7735 driver, SPI, 128×160 | 1 | Adafruit — 1.8” Color TFT | The firmware uses Adafruit’s ST7735 library. This display is a direct match. Generic ST7735 modules may need INITR_BLACKTAB or INITR_GREENTAB constructor tweaks. |
| 3 | Jumper Wires | Male-to-male or male-to-female, assorted | 1 pack | Adafruit — Jumper Wires | Standard dupont wires for connecting the ESP32 to the display. |
| 4 | Micro USB Cable | Micro USB-B to USB-A, data capable | 1 | Adafruit — Micro USB Cable | For programming the ESP32 and providing power. Ensure it’s a data cable, not charge-only. |
| 5 | Double-sided Tape | Small piece | 1 | Adafruit — Double-sided Foam Tape | For securing the ESP32 inside the printed enclosure. Any strong double-sided tape works. |
Estimated total cost: $20-35 (excluding 3D printing filament).
You will also need a 3D printer and filament for the enclosure.
Where to Get the Files
- STL files for enclosure: Printables — ESP32 Weatherstation
- Firmware (Arduino sketch): GitHub — ESP32Weatherstation README (contains code block)
- Full GitHub repository: GitHub — potatoworld/ESP32Weatherstation
Build Notes
- AI-generated code warning: The project creator explicitly states the firmware was generated by GPT-4 and advises users to “vet the code and install guide yourself, as there may be inaccuracies.” Review the code, especially if you encounter unexpected behavior.
- Firmware configuration: Before uploading, you must edit the Arduino sketch to include your Wi-Fi credentials (SSID and password) and your OpenWeatherMap API key.
- Tool-free assembly: The enclosure is designed to snap together. The screen clips into place, the ESP32 is held with a small piece of double-sided tape, and the lid press-fits. No screws or glue are required.
- Recommended print material: The creator printed their enclosure in CF-PETG (Carbon Fiber PETG) on a Bambu Labs P1S, suggesting it offers good rigidity for the design.
- Startup animation: The progress bar shown during startup is purely aesthetic and is hard-coded to take 4 seconds, regardless of actual boot time.
About This Page
Some Assembly Mandatory builds supply guides for popular maker projects. We research and verify every component link so you can focus on building, not shopping. This guide was researched and compiled with AI assistance and reviewed by our editorial team. Found a dead link or a better component? Let us know.