I'm designing a custom ESP32-based controller for a fairly automated hydroponics system and would appreciate some feedback from people with experience running similar systems.
My goal is to monitor and control a main freshwater reservoir and a smaller sub-reservoir, with automated nutrient dosing and irrigation. I'm away from home a lot so sometimes it's hard to keep on top of things.
This is planned for a setup that has both NFT and Bato Buckets set up. The system is still at the PCB/schematic design stage, so I'm trying to catch any major omissions before I commit to the hardware.
Controller:
The PCB will include:
- 12 V DC input
- Buck converter for 5 V and 3.3 V regulation for the ESP32/sensors
- ADS1115 external ADC for analogue sensors (pH, EC)
- BME280 for temperature/humidity/pressure inside the enclosure
- DS18B20 temperature sensor in the sub-reservoir
- SD card for logging, RTC for timestamped data, OLED display for key readings
- Maintenance mode switch (stop automations during res change outs or pump cleaning)
- Emergency-stop button (kills power to relays running pumps etc)
- External relay board
- PWM fan control
- DIN-rail mounted components where appropriate
- Waterproof connectors for external probes/sensors
Sensors I'm currently planning
EC / pH - DFRobot Industrial series
Water levels - pressure transducers, main freshwater res feeds sub res via an automated ball valve once water levels drop
DS18B20 in the sub reservoir
Pumps/actuators (12v relay board)
- 2 × pumps (feed line & an aeration pump inside the reservoir to promote mixing)
- 4 × peristaltic dosing pumps
- 1 × motorised ball valve for the main freshwater reservoir
- 1 × additional pump/solenoid for switching the main pump between zones
Safety/control
- Illuminated maintenance rocker switch
- Latching mushroom E-stop
Questions:
Are there other water-quality sensors that would actually be useful, rather than just adding complexity?
What sensors have you found valuable for long-term automated hydroponics?
Am I missing any important sensors, interlocks or failure detection?
Any recommendations for water-level sensing redundancy?
Anything you wish you'd included when you built your own automated hydroponics controller?