Weather and air quality station: Part 1

Battery-Powered Weather & Air Quality Station

Raspberry Pi Pico 2 W + Inky Impression 7.3” + Bosch BME690 + Bosch BMV080 + Meteoblue API
Firmware written in C for the Pico’s RISC-V core

Project Overview

This project builds a standalone weather and air quality monitoring station. The Raspberry Pi Pico 2 W collects measurements from two Bosch sensors (BME690 and BMV080), pulls forecast data from the Meteoblue API over Wi-Fi, and displays results on a 7.3” e-paper display (Inky Impression). The device will be battery powered and enclosed in a plexiglass case to protect components while ensuring airflow.

System Architecture

Data flow:

Sensors (BME690 + BMV080)
  -> Data Processing + Rolling Averages
    -> Wi-Fi Forecast Fetch (Meteoblue JSON)
      -> UI Construction (framebuffer)
        -> E-Paper Display Refresh

Components:

Design:

Display and UI Strategy

Suggested refresh interval: 20 to 60 minutes

Power System

Battery: 3 AA cells in series

Electrical notes:

Series rules:

Wiring:

3xAA holder (+) -> switch -> optional protection -> VSYS (Pico)
3xAA holder (-) -------------------------------> GND (Pico)

Battery level can be read via VSYS/3 ADC pin.

Estimated Runtime

Assumptions:

Mode Avg Current Runtime Hours Runtime Days
Air Quality Focused (BMV080: 5 min) 2.50 mA ~742 ~30.9
Balanced (BMV080: 10 min) 1.36 mA ~1364 ~56.8
Battery Saver (BMV080: 60 min) 0.38 mA ~4880 ~203

Major power contributors:

Enclosure Notes

Development and Testing Plan

  1. Bring up sensors and verify I2C
  2. Implement sensor data processing and UI rendering
  3. Add Wi-Fi and Meteoblue JSON support
  4. Measure power usage and adjust intervals
  5. Assemble enclosure and validate environmental behavior

Error messaging:

Future Work