NM-EPD-420 with ESP32-Dashboard
Build a low-power 4.2-inch tri-color e-paper weather dashboard on NM-EPD-420.
Overview
ESP32-Dashboard is an open-source e-paper dashboard project by RockBase IoT. On NM-EPD-420 (ESP32-S3 + 4.2-inch tri-color EPD), it provides a practical always-on information screen for weather, air quality, and local environment data. Compared to the esp32-weather-epd project, this implementation uses a more cost-effective and faster-refreshing 4.2-inch tri-color panel, is easier to get started with, and offers richer features and configuration options. The Web-based configuration portal also makes customization more accessible.
This page explains how to deploy and use it on NM-EPD-420.
What You Get on NM-EPD-420
- 4.2-inch tri-color e-paper UI (red/black/white), 400 x 300
- Open-Meteo weather + air quality data (no API key required)
- Indoor temperature and humidity from onboard AHT20
- Deep sleep power-saving wake cycle (default 30 minutes)
- Web configuration portal for Wi-Fi, city/location, unit, language, and sleep schedule
- Multilingual UI support (
en_US,zh_CN)
Hardware and Environment
- Board: NM-EPD-420 (ESP32-S3)
- Framework: Arduino (via PlatformIO)
- Recommended toolchain: VS Code + PlatformIO IDE
- Project repository: RockBase-iot/ESP32-Dashboard
Quick Deployment
1. Clone the project
git clone https://github.com/RockBase-iot/ESP32-Dashboard.git
cd ESP32-Dashboard
2. Open in VS Code
Open the folder in VS Code with PlatformIO extension installed. Dependencies are resolved automatically.
3. Build and flash NM-EPD-420 firmware
pio run -e nm-display-420 -t upload
The project also packs and uploads the LittleFS web portal resources automatically.
4. First-time configuration (AP mode)
- Long press Boot button (IO0, the third button above the screen) for at least 2 seconds to enter AP config mode
- Connect to hotspot
esp_dashboard_XXXXXX - Open
http://192.168.4.1 - Configure Wi-Fi, location, timezone, and units, then save
- Device restarts and begins normal dashboard refresh cycle
5. Reopen web portal later
- Short press Boot button (IO0, the third button above the screen) to keep web portal alive for 5 minutes
- Open
http://<device-ip>from the same LAN
Key Configuration Items
- Wi-Fi SSID / password
- Latitude / longitude and city display name
- UTC offset
- Sleep interval
- Bed time / wake time window
- Unit systems (temperature, wind speed, pressure, distance, precipitation)
- Language (
en_US/zh_CN)
NM-EPD-420 Notes
- Recommended PlatformIO environment:
nm-display-420 - Display driver is based on 4.2-inch tri-color panel (GDEY042Z98)
- The board includes AHT20 sensor support in this project
- IO0 is used for wake/config interaction and deep-sleep wake behavior
Typical Application Scenarios
- Desk weather and AQI board
- Smart home status panel
- Low-power wall-mounted daily briefing display
- Secondary information display in maker projects