Appearance
AirQualityFleet reference stack
Bench test
Pending bench test — Validation status.
Fleet dashboard for indoor / ambient air quality. Device type: air_quality.
Telemetry contract
| Key | Unit | Typical indoor band |
|---|---|---|
pm25 | µg/m³ | Single-digit to ~50; spikes during events |
pm10 | µg/m³ | Higher than PM2.5 |
co2 | ppm | About 400–1000 occupied space |
aqi | index | Derived or sensor-native |
temperature | °C | Ambient |
humidity | %RH | Ambient |
Reference hardware (pending bench test)
| Item | Detail |
|---|---|
| Integrated module | Winsen ZPHS01B multi-in-one (PM + optional gas) or equivalent IAQ Modbus box |
| Composite (P2) | Plantower PMS5003 (PM) + Sensirion SCD4x (CO₂) on ESP32, merged to keys above |
| Datasheet | Winsen / Sensirion / Plantower communication specs for scale and warmup time |
Status: Pending bench test — allow sensor warmup (especially CO₂) before alarms; map Modbus or I²C reads to normalized keys.
Connectivity options
| Profile | Edge | Link | Status |
|---|---|---|---|
| P2 | ESP32 aggregator | WiFi | Pending bench test |
| P4 | WiFi IAQ device MQTT | WiFi | BYO |
| P1 | Modbus IAQ + 4G DTU | 4G | Pending bench test |
Wiring — P2 composite (lab / office)
mermaid
flowchart LR
subgraph Sensors
PM[PMS5003 UART]
CO2[SCD4x I2C]
TH[Optional temp RH]
end
ESP[ESP32]
AC[Autoconnecto MQTT]
PM --> ESP
CO2 --> ESP
TH --> ESP
ESP <-->|WiFi| AC| Note | |
|---|---|
| Power | USB 5 V adequate for bench; enclosed supply for permanent mount |
| Placement | Breathing zone height; away from direct vents (per IAQ best practice) |
| AQI | Compute from PM2.5 if sensor does not expose aqi natively (document formula) |
Wiring — P1 Modbus IAQ + DTU
Single RS485 slave (IAQ box) → DTU → air_quality child with register map from vendor manual.
Datasheet alignment
- [ ] PM specs: measurement range and resolution (µg/m³)
- [ ] CO₂: NDIR warmup interval before trusting readings
- [ ] Match sample/alarm thresholds to operational limits (occupancy), not sensor FS
