solar-powered-weather-station

built a weather monitoring station that measures temperature, humidity, pressure, particulate matter, and CO₂. The data is processed in real time, and is all housed within a 3D-printed enclosure for accurate indoor or outdoor monitoring.

Build:

Output Data:

Mechanical / Enclosure Design:

  • Utilized a custom 3D-printed enclosure based on a modular, layered Stevenson screen for environmental shielding

  • Designed internal mounting structures for:

    • Sensor modules

    • ESP32 controller board

    • Battery pack and charge controller

    • Cable routing channels for clean and protected wiring

  • Included a top-mounted solar panel bracket for optional off-grid power operation

  • Printed the housing using weather-resistant white PLA/PETG to minimize heat absorption and ensure long-term durability

  • Optimized vent spacing to allow natural convection airflow while preventing water ingress and limiting direct solar heating of sensors

PCB Design/Schematic

  • Designed a custom PCB that consolidates the ESP32, sensors, connectors, and power circuitry into a single compact board

  • Used strategically placed pin headers for modular sensor replacement and upgrades

  • Routed analog and digital lines with separation to reduce interference from the PM sensor fan motor

  • Implemented ground planes and decoupling capacitors for stable sensor operation

  • Followed outdoor-station best practices such as conformal coating options and corrosion-resistant connectors

Sensors & Sensing:

  • Integrated a BME280 environmental sensor to measure temperature, humidity, and atmospheric pressure with high accuracy

  • Added a laser-based particulate matter sensor (e.g., PMS7003 / SPS30) to capture PM1.0, PM2.5, and PM10 concentrations

  • Used a dedicated NDIR CO₂ sensor (e.g., SCD30 or MH-Z19B) for stable and calibrated indoor air-quality measurements

  • Designed proper sensor placement inside a Stevenson-style ventilated enclosure to ensure accurate airflow and protect components from direct sunlight and precipitation

  • Implemented sensor smoothing filters (moving average / exponential smoothing) to reduce noise from airflow turbulence and particulate fluctuations

Control & Data Processing System:

  • Powered by an ESP32 microcontroller, selected for its integrated Wi-Fi, low-power modes, and high-speed ADC/I²C/SPI interfaces

  • Developed firmware to poll sensors at fixed intervals, perform calibration routines, and compute derived metrics such as:

    • Absolute humidity

    • Air Quality Index (AQI)

    • Dew point

    • Pressure-based altitude estimation

  • Integrated a local display (OLED/TFT) showing key readings such as temperature, humidity, pressure, PM2.5 levels, and CO₂ concentration in real time

  • Implemented optional data logging and wireless telemetry via Wi-Fi to cloud dashboards (MQTT, Thingspeak, or custom API)

year

2025

year

2025

year

2025

year

2025

tools

ESP32 microcontroller, BME280 sensor, PM2.5 sensor (PMS7003/SPS30), NDIR CO₂ sensor, Custom PCB, 3D printing, OLED/TFT display, KiCad PCB design, Arduino IDE, C/C++ firmware, Soldering tools, Battery/solar power hardware, Embedded systems, Wiring and connectors

tools

ESP32 microcontroller, BME280 sensor, PM2.5 sensor (PMS7003/SPS30), NDIR CO₂ sensor, Custom PCB, 3D printing, OLED/TFT display, KiCad PCB design, Arduino IDE, C/C++ firmware, Soldering tools, Battery/solar power hardware, Embedded systems, Wiring and connectors

tools

ESP32 microcontroller, BME280 sensor, PM2.5 sensor (PMS7003/SPS30), NDIR CO₂ sensor, Custom PCB, 3D printing, OLED/TFT display, KiCad PCB design, Arduino IDE, C/C++ firmware, Soldering tools, Battery/solar power hardware, Embedded systems, Wiring and connectors

tools

ESP32 microcontroller, BME280 sensor, PM2.5 sensor (PMS7003/SPS30), NDIR CO₂ sensor, Custom PCB, 3D printing, OLED/TFT display, KiCad PCB design, Arduino IDE, C/C++ firmware, Soldering tools, Battery/solar power hardware, Embedded systems, Wiring and connectors