retrofit waterstop

a retrofit approach to make existing ball valves smart

Public Chat
Similar projects worth following

For safety reasons, I wanted to be able to switch the water supply of my home on and off. But I live in a rented place where it is not allowed to modify the main water supply pipes and valves. Thus I tried to build a retrofit ball valve driver with some smart features with has no need for such forbidden modifications. 

First I needed to solve the mechanical part of the project. The solution was a 3D-printed coupler that goes directly on the normal valve handles.  The two ball valves are driven with cheap gear motors and the open/close positions are monitored with inductive (the handles are made out of cast iron)  proximity sensors. 

To mount two (one for cold and one for hot water) of these contraptions more printed parts and some aluminium was used.

This simple assembly allowed me to mount (without drilling holes) all components in the water supply box. Additional to the valve drivers three DS18B20 temperature sensors are mounted (with electrical tape and magnets). 

The controller is design similar to my other Arduino Remote I/Os ( This time I tried to make it kinda waterproof and easy to maintain. 

The Box contains an Arduino, a simple H-Bride Motor Controller and two buck converters. 

All logic is outsourced to the main controller in my smart home ( Thus it was easy to visualize the state of the valves and add some smart functions. For example, use the temp sensors (temp difference to ambient) to determine the water flow in the pipes. In combination with other functions, the smart home knows when water is needed and when not. If a flow is detected when there should be no flow the valves close.

  • nice graphs and data logging

    stefan.schnitzer08/01/2021 at 08:16 0 comments

    All data that is created gets stored in an Influx- DB on my Smarthome ( here you can see an example of opening the valves (after a long trip where nobody was at home). First the "open-signal" gets send (green-line) then the valves rotate and the response is received (yellow line). The response (state of the valve) is transmitted as an integer code: 1111 = no limit switch is triggered;  4444 = both limit switches are triggered; 2222 = open limit switch...; 3333 = closed limit switch... .

View project log

Enjoy this project?



John Opsahl wrote 05/04/2021 at 00:56 point

Which geared motor and inductive proximity sensors are you using? 

  Are you sure? yes | no

stefan.schnitzer wrote 05/04/2021 at 09:08 point

-> Heschen M8 LJ8A3-2-Z/BX 10-30VDC 200mA NPN (NO)

-> Some Generic 12V-DC Worm-Geor Motors with 2RPM 

  Are you sure? yes | no

Dan Maloney wrote 05/03/2021 at 20:00 point

This is great even if you do own the plumbing, since motorized valves are so expensive.

Some of the valves in my house are pretty stiff. Did you have any trouble with the motors not delivering enough torque to drive the valves?

  Are you sure? yes | no

stefan.schnitzer wrote 05/04/2021 at 09:17 point

The torque is usually a problem when the valve was not operating for a longer period of time. To mitigate this, I programmed a little test sequence that opens and closes the valves periodically (48h not used & currently no water needed)  

A second problem is that I use the H-Bridge with PWM control to ramp the power on the motor up/down when the approached end-position is near. It took a lot of time to finetune this feature. 

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates