All projects
GrowBuddy
A platform for monitoring the growing environment in greenhouses and grow rooms. ESP32 sensors measure air temperature, humidity and soil moisture and switch pumps, fans or lights according to rules.
- Client
- Personal IoT platform
- Year
- 2026
- Status
- In development
- My role
- Hardware, Firmware, Backend, Frontend
- Technology
- ESP32-C3, FastAPI, TimescaleDB, React

About the project
GrowBuddy is a complete rewrite of my older project as a cloud platform. It works for a single grower with a few pots as well as for a team that shares several greenhouses and needs different permissions.
The device
- Seeed XIAO ESP32-C3 with an air temperature and humidity sensor and a capacitive soil moisture sensor. It can optionally switch a relay, for example for a pump, always with a maximum run-time safeguard.
- Cheap soil moisture sensors are imprecise. That is why every reading is the median of fifteen quick measurements and can be corrected for temperature.
- The device sleeps most of the time. It sends data over HTTPS with certificate verification and stores it in flash memory when Wi-Fi is down.
- It is set up through its own Wi-Fi portal with a random password for each unit, so no passwords or tokens live in the code.
The platform
- Real-time dashboards, CSV export and alerts by email, webhook and in the app.
- Automation based on rules and schedules with safeguards. Switching commands expire and the device has to acknowledge them.
- A 24-hour forecast based on history and the weather forecast, anomaly detection and calculated vapour pressure deficit (VPD).
- A Python (FastAPI) backend on PostgreSQL with TimescaleDB and a React frontend. Everything runs in containers, with automated tests for the backend, frontend and gateway.
Status
The platform is in development. The software works and is covered by tests; I am now validating it on real hardware. Next up are MQTT, over-the-air firmware updates and a mobile app.