johnboiles/waveshare-epaper

★ 0Forks 0CGitHub ↗Compare

README

Waveshare ESP32 e‑Paper: Next Rain

This project drives a Waveshare e‑Paper ESP32 Driver Board to show the next hourly rain forecast for Berkeley, CA on a 1.54" e‑paper panel.

What It Shows

  • Connects to Wi‑Fi
  • Fetches hourly precipitation forecast from Open‑Meteo
  • Displays the first upcoming hour with precipitation > 0.0 mm

Hardware

  • Waveshare e‑Paper ESP32 Driver Board
  • Waveshare e‑Paper Adapter + 1.54" panel

Switch setting (board):
The driver board has a display‑type switch. For 1.54" panels, use the 1.54" setting shown in Waveshare’s manual. If the image looks wrong or doesn’t refresh, flip the switch to the other position and try again.

Setup

  1. Install PlatformIO (CLI or VS Code extension).
  2. Create Wi‑Fi secrets file:
    • include/secrets.h
    • Example:
      #pragma once
      #define WIFI_SSID "YOUR_WIFI"
      #define WIFI_PASSWORD "YOUR_PASSWORD"
  3. Select your panel model in src/main.cpp:
    • EPD_MODEL_1IN54_V2 (default, 200x200 B/W)
    • EPD_MODEL_1IN54 (older 200x200 B/W)
    • EPD_MODEL_1IN54B (200x200 B/W/Red)
    • EPD_MODEL_1IN54C (152x152 B/W/Yellow)

Build

pio run

Flash

pio run -t upload --upload-port /dev/cu.usbserial-10

Notes

  • Forecast location is currently hardcoded to:
    • Lat/Lon: 37.874468, -122.293605 (Berkeley, CA)
  • The display shows the first hourly precipitation > 0.0 mm. If you want a stricter threshold (e.g., ≥ 0.5 mm), adjust it in src/main.cpp.

Contributors

johnboiles

Issues