The Problem
Growing food efficiently requires constant monitoring. Soil moisture, temperature, humidity, and light levels all need to stay within optimal ranges from seed starting through harvest. Manual checks are tedious and easy to forget. Commercial smart garden systems are expensive, cloud-dependent, and lock you into proprietary ecosystems.
The Solution
Tendrilio is an offline-first IoT platform for garden and farm automation:
- Central Dashboard: Runs on a Raspberry Pi, accessible from any device
- Distributed Sensors: ESP32/ESP8266 nodes placed throughout your garden
- Automated Control: Irrigation, vents, and grow lights triggered by sensor data
- AI Anomaly Detection: Statistical analysis catches sensor failures
- Optional Cloud Sync: Monitor your garden remotely from anywhere
Architecture
Features
Environmental Monitoring
- Temperature and humidity
- Soil moisture at multiple depths
- Light levels (PAR — Photosynthetically Active Radiation for grow lights)
- pH and EC (Electrical Conductivity) for hydroponics
Device Management
- USB provisioning wizard for new sensors
- mDNS auto-discovery on the network
- OTA firmware updates with automatic rollback
- Health monitoring and alerts
Automation Rules
- Condition-based triggers (e.g., irrigate when moisture drops below 30%)
- Scheduled actions (e.g., lights on at 6am)
- Conflict resolution (e.g., skip irrigation during rain)
- Cooldown periods to prevent rapid on/off oscillation
Data & Analytics
- Real-time dashboard organized by zone
- Historical data with CSV/JSON export
- Z-score anomaly detection to flag bad sensor readings
- Sensor health scores
Tech Stack
| Layer | Technology |
|---|---|
| Dashboard Frontend | React 18, Material UI, Recharts |
| Dashboard Backend | FastAPI, SQLAlchemy 2, aiomqtt |
| Message Broker | Mosquitto MQTT |
| Database | SQLite (WAL mode) |
| Sensor Firmware | Arduino/PlatformIO (C++) |
| Supported Devices | ESP32, ESP8266, Raspberry Pi Pico W |
Current Status: In Progress
The software is largely complete with 18,000+ lines of code across:
- Full dashboard implementation
- Backend API with 18 route modules
- Firmware for 3 device types
Waiting for hardware: Currently paused while sourcing microcontrollers and sensors for the physical build and testing phase.

Why Offline-First?
Garden automation shouldn't depend on internet connectivity:
- Cloud outages shouldn't kill your plants
- Historical data belongs to you
- The system keeps working during power or internet issues
SQLite serves as the authoritative data source. Cloud sync (when enabled) pushes data one-way for remote monitoring only.
Planned Features
Once hardware arrives:
- Complete sensor calibration workflows
- Long-term field testing (spring 2026)
- Solar power integration for remote sensors
- Machine learning for predictive watering
Related Articles
- Automating the Garden (Work in Progress): Designing an offline-first IoT system for growing food