When the washing machine at [hydronucleus]’s place went on the fritz, he went straight to the toolbox to try to repair it. The problem was with the old mechanical control unit, so [hydronucleus] got an Arduino out of the parts bin to create a brand new electronic controller for his washing machine. (Imgur Link)
The old mechanical controller functioned like a player piano. A rotating drum with ridges actuate different cycles in the washing machine. Some of the cycles weren’t working properly so [hydronucleus] ripped them out. With the help of a schematic posted on the washing machine itself, the cycles were able to be programmed into the Arduino.
The other obstacle in this repair was getting enough relays together to switch everything in the washing machine. This was solved with a Sainsmart 16 relay block, which has more than enough relays for the job. [hydronucleus] wired up an LCD and a pushbutton to control it and his washing machine is as good as new! The cost of the repair certainly beats a new machine, too. Although if it finally gives up the ghost completely, he could always turn it into a windmill.
Want to read more about [hydronucleus]’s washing machine hack? Check out his Reddit thread!
Mains voltage wiring in a cardboard box mounted to the metal frame in an environment that has lots of splashing water…. awesome safety.
If the water manages to get out of the drum without going down the waste pipe then you have far more things to worry about than the electronics at the top of the machine.
+1
You mean -1.
It’s a bad environment. I’ve got a washing machine where the electronics are encased in a solid block of… something. I should have a better look one day, IIRC it’s a hard clear rubber or resin.
I haven’t seen anything quite like it; it seems over overkill, especially on a cheap machine.
Is surely overkill, but the point is not fixing the machine, is the process of reverse engineering an old control scheme, and build another one using the knowledge.
It’s called a potting compound. It acts as an electrical insulator, corrosion preventer, heatsink, etc. Usually it’s used where electronics has to comply with testing while being submerged. Think electronics for trucks.
“Conformal coating” or “potting compound”.
I wrote what I meant. I have a new washer and the electronics are just bare boards at the top of the machine. I have never had water in or around my machine where it shouldn’t have been.
It might also help against mechanical damage against the vibrations inherent in a washing machine :P
Potting would be the best way to describe it, but I’m not sure what the material actually is. I work with devices that are potted (trucks run over them and so on) and this stuff is odd.
It’s about 20mm thick (3/4″), so ‘conformal coating’ is a bit of an understatement.
But yes, seeing that in a washing machine was something new. Makes board-level repair a bit tougher (huh, I’m surprised more makers don’t do that).
Anyway, the builder of this will get a lesson in environmental factors (water is a major PITA) soon enough.
We make ECUs at work and boards are into 2 chambers – the first creates a solid transparent block, whilst the second gives it a rubber coating. You can throw the things on the floor and they’ll bounce back up. However I wouldn’t bother with IP ratings inside a washing machine, if water gets out of the drum the motor is going to fry first as its typically at the bottom and not protected at all. I’d be impressed if water manages to get half way up as there’s so many holes it can leak from.
I think, water can indeed be a problem, but not because of splashing. If the humidity is high, the drum filled with cold tap water can easily condense quite a lot of water out of air. Then, as the drum heats up, the water will evaporate, and the vapor will condense back on everything cold, potentially on circuit boards.
Potting can be a solution, but it isn’t easy, and it sucks should you want to modify or fix something. I would probably spread some heater resistors around the electronics, just to keep things warm, so that water doesn’t condense there. Heat is not always bad, this is case where a bit of heating is good for durability.
I can emphatically say, that I did this some number of years ago (8+, I think), and it is still working! For those who complain, the cardboard is insulating. :) And the controller has never gotten wet. As far as “heating” resistors, I imagine the current going through the block of relays causes enough heat to dry the thing out, if it got any condensation. That being said, I am not an electrical engineer (PhD CompSci), just a son of a pretty prominent electrical engineer.
Arduino….
IEC 60730-1 ANNEX H TABLE H.11.12.7
Atmel has a guide on this for AVRs, dunno if arduino includes any of the required libs.
http://www.atmel.com/images/doc42008.pdf
You take a risk getting out of bed in the morning, crossing the street, or sticking your face in a fan…….
the card board box isn’t the best idea, but splashing water?
How could a bunch of enclosed relays possible be worse than a bunch of open contacts?
Can be GPS be added? Appliance rental business is very common here in Mexico, and I need to know exactly where my washers are.
did you mean “rental”? lol
You can buy cheap GPS trackers on ebay for ~$10 each. You will need a SIM card for each one, though. You send it a text message and it will reply with GPS coordinates.
Watch out for the amp load of the motor, make sure the contacts in the relay are rated for that or you’re going to be replacing a relay in short order, I might suggest using it as a pilot relay for a 30 amp contactor. I always new this could be done, great proof of concept.
Maybe I didn’t understand, but here relays seems to replace the phase wheel.
I don’t think it drives power to the motor, but more HV signal.
If it drives the motor directly it’ll not last long… For that take relays like RTX from Schrack Tyco they have double contact for those kind of load.
It *looks* like the arduino is simply providing the directions of what to do when and leaving the rest of the hardware intact?
They do and you did understand, I recognize the basic design of washer, the power does get routed through the timer.
Sorry for the abrupt answer, I repair washers for a living, biggest problem I see with timers are when the motor over amps the contacts and burns them, you don’t get that kind of damage if it’s just a signal.
Assuming the relays do deal with the motor power, obviously this isn’t ideal but if you were to use the relays in parallel, how much would that help?
it only helps if they open and close at exactly the same time. otherwise one contact takes the full load for the time difference.
I figured as much, but a few miliseconds can’t be too bad I would have thought.
It is because even if you manage to avoid the electrical arc forming between the two contact (which is deadly for standard relays) you ‘ll have a long term material transfer between the contact and so a slow but certain destruction of the device.
It would be difficult to get material transfer in this application.
See this EXCELLENT PDF document describing the causes of material transfer.
I don’t think this application will have that issue.
As long as the voltage and current ratings of the relays are appropriate for the load, this should work perfectly.
http://www.te.com/commerce/DocumentDelivery/DDEController?Action=srchrtrv&DocNm=13C3203_Contact_Arc_Phenomenon_AppNote&DocType=CS&DocLang=EN
That’s true because it’ll be ramdomly distributed. My bad
Would zero crossing relays help in this situation? They are designed to operate when the AC waveform is at the zero point.
There are no zero-crossing mechanical relays. Zero-crossing can be used for turning on a SCR (or whatever) in a solid state relay module but for mechanical relays, the delay from energizing the magnet to when the contact makes/breaks contact is almost certainly too long (and with too much jitter) to allow useful zero-cross swithing.
Zero crossing switching is the worst that could happen to inductive loads as it maximizes the inrush current. It is what you want meant for resistive loads.
Nothing, most harmful for the relays is their switching on and off.
You are not able to provide idalnej synchronization. It is better to use the appropriate relay for a particular application.
Parallel connection is also not good as a backup, because the relay can spoil in any position.
Ah, the digital fix, how quaint.
I fixed a washer in the late 80’s using similar ideas, but had no micro-controller. Normally motor relays are near the motor, and the switching of the timer engages the high amp relay, so his relays aren’t taking the full brunt of the current surge.
My hack (funny, until now I never considered it a hack…just a fix) was way less sophisticated. The user had a 4 or 5 switch box (I can’t remember the number) and a sheet was posted above the washer. The way the timer works is by engaging different items at the same time to get a cycle running. So rinse is the culmination of agitate and water fill. The only timed circuit in my design was a time delay relay (salvaged from the trash) that would cause the drain pump to engage first, then 30 seconds later the spin cycle cam online. My system had the downside of requiring human interaction for cycles, so unless you paid attention it really was possible to agitate or spin your laundry for 24 hours….just ask my aunt.
Still, glad to find out I did hacks 30 years ago. If I knew then what I know now.
So in other words… the human was the (not so micro)controller! Nicely done too!
Make it nicer – into a repair kit – and sell it.
Go through testing, pay all of the upfront costs to professionally create these, fabricate 10,000 of them to achieve economy of scale and then sell it to the one homeowner for $50 who is willing to open up their washing machine and replace multiple parts and bypass mains voltage? That’s a tough sell.
Arduino washing machine for 50$? would buy. Especially because that is just step away from it being Internet-connected.
My old washing machine worked just fine, but the controller gave up without any clear reason. New module was priced about price of new machine too.
Just 3-d print slices for new timing drums.
Needs wifi so that it can be part of the IOT. One must be buzzword compliant.
Actually wifi could be cool to add if it could tell you when it is done or allowing a remote start.
Already has the arduino buzzword.
IOT Washing machine. Hackers boiled my underpants…
So that’s why they call it “HACKING” . . . Good idea, poor workmanship.
Hey, it’s a hack. In my book that means “Get it working”. You can always make it pretty later.
It may be ugly, may have too cost much money and time, could eventually have problems with relays fusing, etc. But [hydronucleus] gets my thumbs up, for having successfully reverse engineered the washer and building a replacement controller. And for repairing rather than replacing. Given the current state of consumer goods, it might actually last longer than a new washer.
And if it gets enclosed in a water resistant project box and concealed inside the console, it won’t be near as “ugly”.
Not much water gets up into that part of the wash machine anyway.
Water gets everywhere.
Condensations… Cardboards are pretty bad for that and may be moldy etc. ew…
No washing machine I’ve ever repaired had the circuit boards enclosed in anything, much less a water resistant box.
Reversed engineered nothing, they pasted the full schematic right on there.
I don’t know if it’s just a Whirlpool thing, but when I repaired my dryer (ended up being a wire that rusted off of its connector), they had a full schematic on the inside top of the dryer. Makes fixing much simpler
Two thoughts:
1. When I recently repaired a dishwasher had a problem with the mechanical motor-driven switch (not unlike said washing machine), I just took the switch apart and…you know, fixed it. Hacking in a microcontroller and a lot of added complexity never crossed my mind when repairing this simple mechanical component.
2. Solid-state relays FTW. Zero-crossing is implicit with AC SSRs. The cheap 25A-rated Fotek knockoffs on Ebay seem to work fine for switching high-current AC loads — indeed, my research indicates that the 25A version works more reliably than the 40A version of the same thing. I use them for switching on the high-current linear supplies in some properly-big audio amplifiers, and they just plain work*. Just make sure you use an appropriate heatsink.
*I do not have equipment to properly measure the instantaneous current, but judging by the capacity to dim the lights throughout the house in comparison to other known loads, it must be in the realm of 60-70A at turn-on.
Hey Hydro, can give us a model number? I want to check something.
“Although if it finally gives up the ghost completely, he could always turn it into a windmill.” He could also turn it into a hydroelectric generator.
https://www.youtube.com/watch?v=0ieFZI4-6K8
Living off-grid is a lot of work! (c:
I’m guessing that is a DC motor, older wash machines used AC motors.
Modern washing machines also would benefit from reverse engineering as when their electronics fries beyond warranty usually the cost for repair is inflated to be nearly high as a new purchase. I’m talking about $200 for the board alone.
nice hack! however I dont know where you live that washing machines are that expensive. I can get a fairily decent one albeit smaller for a bit over the price of a control box of yours..
I would just have put everything into a tupperware and seal it using silicone. Then made a nice user interface with acrylic and printed paper behind.
I’m sure this was a lot of fun to do (though a better enclosure might be in order), but if I did that I’d start playing games with the wash cycles – I mean *anyone* can play the star wars theme on a *disk drive*, right?
I intentionally buy mechanically timed appliances whenever possible so that when the power spikes (not uncommon here) the “brains” don’t completely fry. The switch assemblies can usually be dismantled and repaired, or replacements are available online ($40 – 70) – usually they last more than a decade.
My washer is fairly up to date’ front load low water use direct drive. It still uses a mechanical timer even though it has a BLDC motor whose controller is naked on the bottom of the unit.
I fixed a friends Bosch dishwasher. Solder joints gone bad on a board soon to die packed into the door at the top, steamy!
I find this statement highly disturbing: “…but I had laundry building up…”
Considering he had parts shipped from China (2–4 weeks?) and that he, apparently, didn’t use his local laundromats, well, I’m glad I didn’t sit next to him. (c:
Nice hack, though. If I were a bit braver, I’d be tempted to do this with my washer even if it’s not broken.
I’m gonna have to do that to my washing machine soon :(
I’ll pass on the cardboard box…
This is very cool idea. I have one old Kenmore washer at home. Probably it is good time to upgrade its brain too… :-)
The problem with the cardboard box is not so much its IP rating, but more the fact it’ll make some good kindling should anything inside get a bit hot.