After all, the outlet valves may also be changed by pumps, so everything can be mounted level, or the machine under the plants. Regardless that the software makes use of float-switches to measure the fill-top within the tank, most safety timeouts are carried out for each motion, so the possibilities of flooding the home are minimized. Still, I at all times manually shut the mains-water-inlet with a proper hand-controlled valve after utilizing the machine and open it solely when needed, just in case! The net interface is using JS and Websockets to dynamically replace the page, showing the identical output that’s seen on the physical show. Keypad button presses might be executed that means as well. Also, the debug logs that are usually supplied on the serial port are also sent out to clients connected through the online interface. The machine is utilizing two microcontrollers, an Arduino Nano clone and an ESP32. The Arduino offers the consumer interface, using a 20×4 LCD from a now-out of date Sparkfun venture known as SerialLCD.
It is related to the Arduino via serial. Input is done utilizing an affordable 3×4 Keymatrix instantly conencted to the Arduino GPIOs. I also added a energy change and a few voltmeters for the completely different voltage regulators and a principal energy swap. All that is mounted in a easy 3D-printed frontpanel. The actual control is completed on an ESP32 which is related to 2 4-channel relais boards. Using these, it controls 5 valves (one inlet and four shops) in addition to three pumps for the fertilizers. For the outlet valves I’m using low cost small chinese language solenoid valves. For the inlet, I’m using a costlier steel solenoid valve from Germany that is able to resist the mains-water-stress (as much as 8bar) that I still had from my cocktail machine experiments. Two float switches are used to inform the fill-height of the water tank. The ESP32 also supplies a simple internet interface to permit the same controls as from the consumer interface. Both UI and controller are connected to each other utilizing I2C.
All relevant indicators are transmitted with a easy DB-9 cable. All this is mounted on an outdated piece of shelf-board, using some customized 3D printed elements. The water tank is realized using a generic 5l liquid tank, with two holes drilled for the fill switches. The holders for the fertilizer bottles, as properly as the bottlecaps, are particularly designed to fit my 1l fertilizer bottles. I designed all of the 3D printed components with OpenSCAD. You can find the recordsdata on my Gitea. Many of the parts I had lying around in the workshop. I only had to buy the outlet valves after realizing one in all the massive valves I still had was no longer working. Also the pumps, hoses and hose-adapters needed to be purchased. The software program can simply be configured to run with more or less fertilizers and retailers, as a lot as the ESP32 GPIOs can provide. Alternatively, it’s also possible to use an Arduino for the controller as an alternative of the ESP, dropping the net interface.