Reptile Welfare Monitor
Reptile keepers rely on spot-checking dial thermometers; a failed heat source or drifting probe can go unnoticed for hours, and there is no long-term record to show a vet. Off-the-shelf systems assume one enclosure and put software in charge of heating.
A multi-enclosure monitoring system — ESP32 sensor nodes publish over MQTT to a Raspberry Pi running a .NET ingestion service, SQLite store and live Blazor dashboard, with sensor auto-registration, server-side calibration and staleness flagging. By design it never controls heating: hardware thermostats stay the primary line of defence, software only watches and alerts.
- Tests passing
- 118 xUnit
- Live deployment
- real ESP32 node with 5 DS18B20 probes on an occupied enclosure
- Pipeline
- ESP32 → Mosquitto MQTT → .NET → SQLite → Blazor, self-hosted on a Pi 3B
- Care-sheet library
- 25 species with target ranges
- Dead-sensor detection
- stale flag within 5 minutes of silence
- Safety rule
- hardware thermostats remain primary control, enforced as an architectural constraint
C++/PlatformIO firmware plus .NET 10 Blazor Server with EF Core and MQTTnet, with the documentation deliberately split into per-agent ownership files so agents work the stack in parallel.