New version of water self watering system Part 1
New version of water self watering system Part 1: During this summer I’ve been working on a small IoT project. The goal is an automatic self-watering system using soil-moisture sensors and water pumps, controlled by a web server running on a Raspberry Pi so I can manage it from anywhere. • IoT • iot, arduino
During this summer I’ve been working on a small IoT project. The goal is an automatic self-watering system using soil-moisture sensors and water pumps, controlled by a web server running on a Raspberry Pi so I can manage it from anywhere.
🔩 Components Used
- 3× RUNCCI-YUN Mini Water Pumps
- 3× Hygrometer Module V2.0 Soil-Moisture Sensors
- 1× ICQUANZX 16-Channel Analog/Digital Multiplexer Breakout
- 1× Arduino Uno R4 WiFi
- 1× Raspberry Pi (hosting the web server)
🧠 How It Works
- Soil-moisture sensors continuously measure the humidity in the soil.
- Readings go through the multiplexer into the Arduino Uno R4 WiFi.
- Based on thresholds, pumps activate to water the plants.
- A web server on the Raspberry Pi provides remote monitoring and control.
🧪 Next Steps
- Improve the web UI for easier control.
- Add notifications for low water level.
- Optimize pump activation to save water and energy.
🧰 Relays for pump control
Here are all the relays used to switch the pumps:
Close-up showing 3d-printed chassi for soil moisture sensors:
🧼 Sensor chassis
Chassis to keep the soil-moisture sensor wiring neat:
Detailed view of the soil sensor board with wiring connected:
🧪 Pump debug loop
A quick debug that loops each water pump:
🌱 Full setup
Here’s the full prototype with sensors, pumps, bottles, and the Raspberry Pi:
Breadboard wiring showing the Arduino, multiplexer, and sensor connections.
Full overview of the system: sensors in soil bottles, pumps, and wiring all connected.


- Will update this post with a video currently later on..
- Currently I am awaiting of a new AC adapter for the relays, will also show the webserver as well.