IoT B.Tech Intermediate

ESP32 Weather Station with E-Paper Display

Build an ultra-low-power ESP32 weather station using e-paper display that fetches weather from OpenWeatherMap API and runs months on batteries.

  • Suitable forB.Tech IoT students
  • Build time3-4 weeks
  • LevelIntermediate
  • Available atAjvika Labs, Kakinada

About this project

Weather station uses ESP32 with 2.9-inch e-paper (e-ink) display to show current weather and 5-day forecast. E-paper advantages: readable in direct sunlight, ultra-low power (only draws power when updating), perfect for battery-powered outdoor displays. OpenWeatherMap API provides: current temperature, humidity, pressure, wind speed, UV index, sunrise/sunset, weather condition icons, 5-day forecast. Custom monochrome 64x64 pixel icons for sunny, cloudy, rainy, snowy stored in PROGMEM. ESP32 wakes from deep sleep every 30 minutes, connects to WiFi, fetches weather data, renders on e-paper, then sleeps. Battery life: 2000mAh LiPo lasts 3-6 months with 30-minute updates. Display update time: ~3 seconds for full refresh. Libraries: GxEPD2, ArduinoJson, WiFi, HTTPClient, esp_sleep.

Detailed Project Description

ESP32 Weather Station with E-Paper Display measures environmental parameters and presents them as live readings and history, either on a display or through a web/cloud dashboard.

How It Works
1. Environmental sensors are read at a fixed interval.
2. Readings are averaged/validated and stored (locally or in the cloud).
3. A dashboard renders current values, gauges and trend charts.
4. Optional alerts are raised for extreme values.

Key Components and Their Role
- ESP32: dual-core Wi-Fi + Bluetooth microcontroller that runs the firmware, reads the sensors and hosts the network connection.
- E-paper display: low-power display that keeps the image without power.
- Li-ion battery + charger (TP4056): portable power with charge management.

Implementation Steps
1. Collect the components and study each module's datasheet (pin-out, voltage, interface).
2. Wire the circuit on a breadboard following the pin mapping; power sensors from the correct rail (3.3 V / 5 V).
3. Install Arduino IDE, GxEPD2 Library, OpenWeatherMap API and the required libraries; flash a minimal test sketch for each module separately.
4. Write the main firmware: read sensors → process → drive outputs / send data.
5. Configure network or cloud credentials and test communication end-to-end.
6. Calibrate thresholds, add error handling (reconnect, sensor time-out) and run a long-duration test.
7. Finalise on a PCB / enclosure and document wiring, code and results.

Key Features
- Temperature, humidity and pressure
- Trend charts
- Remote access
- Low-power operation

Expected Output
On completion the student will have a weather dashboard showing current readings and history.

Deliverables
- Complete source code with comments
- Circuit diagram and pin mapping
- Project report with screenshots and results
- Demonstration-ready build

Technologies used

ESP32Arduino IDEC++WiFiHTTPE-PaperNTPDeep Sleep

Hardware components

  • ESP32 DevKit
  • 2.9 inch E-Paper Display
  • 2000mAh LiPo Battery
  • TP4056 Charger
  • Breadboard

Software & tools

  • Arduino IDE
  • GxEPD2 Library
  • OpenWeatherMap API
  • ArduinoJson

What you get

  • Working project / hardware kit, tested before delivery
  • Complete source code with explanation
  • Project demo and guidance for your viva
  • Project report, PPT and IEEE paper support (on request)
Delivery & Payment
Delivery takes a minimum of two weeks from the date your inquiry is confirmed. Payment is in two parts: • 50% advance to start the project • Remaining 50% before delivery Note: • Documentation and PPT are not included by default • If you need documentation/PPT, it can be arranged for extra time and cost We'll confirm the exact timeline and cost with you after reviewing your requirements.