A modern, open-source sprinkler controller for ESP32. Easily manage irrigation zones and schedules with a sleek web interface and robust backend.
- Define irrigation zones and custom watering programs
- WiFi connection flow for easy setup
- OTA (Over-the-Air) updates for future maintenance
- CLI tool for easy installation and updates
- Fully mobile-friendly interface for use on any device
Try the web sample to see what it is capable of!
- ESP32 development board
- PlatformIO (for backend build)
- Node.js & npm (for frontend build)
-
Clone the repository
git clone https://github.com/davidbertet/RainMaker.git cd RainMaker -
Install on your ESP32
./install.sh
And follow the instructions
-
Update over the air
./install.sh --ota <IP>
Usage: ./install.sh [OPTIONS]
Options:
-o, --ota <IP> Set OTA IP address for over-the-air updates
-p, --upload-password <PWD> Set upload password for authentication
-y, --yes Auto-confirm all prompts (non-interactive mode)
-f, --frontend-only Build/deploy frontend only
-b, --backend-only Build/deploy backend only
-h, --help Show this help message- Lightweight Svelte frontend for fast performance
- ESP-IDF backend with static file serving
- Websocket interface for real-time updates
RainMaker/
โโโ frontend/ # Svelte web application
โโโ backend/ # ESP-IDF backend code
โโโ cli/ # CLI tool for install/update
โโโ assets/ # Images and media for docs
This project is licensed under the MIT License.

