Our washing machine is rude.
Whenever it does something it beeps. The beeps alway sound aggressive – normally a tirade of angry beeps. The most polite you get is the ‘beep-beep-beep‘ which means “ahem, I am done and now I have wet clothes just sitting in me. Not particularly happy about that”, and then there is the generic angry beeping ad infinitum. This means the machine is really not happy about something or other. When you get this tirade the machine chucks its toys out of the pram and stops what it is doing.
The machine’s most insipid behaviour occurs when something is wrong and there are no beeps, just silence. If this happens the machine does not turn off. The silence invariably means something is really wrong, but the machine is not going to tell you about it, and it is going to continue as if nothing happened. Invariably silent treatment ends with water – lots of water – going on the floor. The machine has decided “Screw you. There is something wrong. I am not going to tell you, I am just going to piss on the floor.”
I decided to put an end to this behaviour.
The Leak-o-Meter (name needs work) pulls the plug on the washing machine if its had ‘an accident’.
Preamble
The Leak-o-Meter is a bit of a mashup from Arduino projects/ideas/tutorials from the following sites:
The device mechanically switch power switch to Washing machine on the wall when it detects water pooling under the machine. Our machine is a top-loader and we have had issues with the following:
- The machine drains into basin beside it. The basin has no overflow. If a sock, cloth etc. falls into the basin then as the machine goes through its cycle it deposits it water into the sink – the sink fills – the machine continues on its evil little way but drains onto the floor.
- There is a silicone pipe from the bottom of the machine’s drum to a pressure sensor on the electronic control board. As the machine fills pressures builds in the pipe and when it gets to a present level it cuts off the flow of water into the drum. The machine then proceeds to the next stage in its wash cycle. If this system fails (and it does and has) the machine just continues ‘filling’, going over the edge of the drum…and a deluge transpires on the floor.
Luckily every time we have had this occur we have been at hand and turned the thing off. The leak-o-meter addresses the situation where we are not around the the evil machine turns our house into a water feature.
I thought about hard wiring into the machines PCB but thought I’d probably brick it, or the washing machine would brick itself out of spite. I pondered an automated mains switch and did not really want to play with 240V. The option I arrived at was to mechanically switch the power switch off at the wall when water is detected, shutting off the washing machine and its antics.
When pooling water is detected the servo rotates moving an arm that pushes off the power switch. The device also regales you with “Singing in the Rain” repeatedly until you reset it. This is optional.
The Hardware
Specific electronics
- Arduino (Uno, the cheapest you can find)
- 180° servo for the mechanical bit that turns off power wall socket
- Resistor, 12kΩ (I used two 5kΩ and a 2kΩ in series)
- Speaker (optional) – I got one out of Zoe’s written off hair straighteners
Other
- A 2m length of two-wire cable to connect Arduino to sensor. I used power lead off aforementioned hair straighteners
- Two strips of metal (I used 1mm aluminium strip) for contacts on the water sensor
- Some technic Lego Gear to ramp up torque of servo so you have enough force to flick switch
- Double sided heavy duty tape to mount to wall (I used Scotch™ Outdoor Mounting Tape)
- Various bits of plywood/ timber to fashion sensor and main unit holders out of