Dead Washer Lives Again With ATTiny

We aren’t saying that appliances are a scam, but we have noticed that when your appliances fail, there’s a good chance it will be some part you can no longer get from the appliance maker. Or in some cases, it’s a garden-variety part that should cost $2, but has been marked up to $40. When [Balakrishnan] had a failure of the timer control board for a Whirlpool washing machine, it was time to reverse engineer the board and replace it with a small microcontroller.

Of course, this kind of hack is one of those that won’t help you unless you need exactly that timer board. However, the process is generally applicable. Luckily, the motherboard chip was documented and the timer control board used a simple ATmega88, so it was easy to see that the devices were communicating via I2C.

Reading the I2C  bus is easy with a logic analyzer, and this revealed the faulty device’s I2C address. The board that failed was only for display, so a simple program that does nothing other than accept I2C data put the washer in working order. Once it was working with an Arduino, an ATTiny45 did the work with a lot less space and cost.

If you don’t want to reverse engineer the washing machine, you could just replace all the controls. That even works if the old washer wasn’t electronic to start.

59 thoughts on “Dead Washer Lives Again With ATTiny

        1. Right on man. I fixed a 1999 Sears front loader that had a bad ac to dc rectifier as well as a failed triac (if any of that makes sense.) All replacement boards I bought from ebay that claimed to work were failed for the same problem. I found the parts I needed from digikey for around 20 bucks. I soldered in the new parts and it’s worked for a year. I’ve even documented all the parts on the controller board (no SMD stuff) which is all easily accessed for soldering and troubleshooting. I plan for it to be my forever washer and even more importantly, the wife is in agreement. :)

          1. The lid sensor on my top loader broke.
            I shorted across it.

            Thank dog I don’t have a ‘door lock solenoid’ on my washer.

            That’s like electronic e-brakes or self opening car doors and hatches. Just stupid, unless you get a % of maintenance money.
            Who’s buying this garbage new?
            What is their malfunction?

          1. Right. I feel like the reply above doesn’t take into account how insanely complicated something like a mechanical timer is. There’s no replacing the gear train in that, and most of them won’t be made anymore. Not sure how that makes mechanical better than electrical. What I think the reply above is pining for is a simpler dryer that isn’t computer controlled. Less “electronics are bad” and more “overcomplication is bad.”

      1. I have an old washer and dryer, their “programming” is the rotating dial. The dryer has this “diagram” printed on “paper” that not only shows every electrical component and how they connect in the dryer, but a chart of what each mode does, and how long it runs for. So if and when this dial does bite the dust, I can make an identical (in function) controller board with wifi and a few relays. Or buy a new washer that is more energy efficient, but will surely last about half as long as this one has.

        1. I agree that things seemed to last longer a while back. HOWEVER, I also remember a 24 inch TV my parents had that needed a new picture tube and they spent $600 to fix it. So it wasn’t as rosy as we remember. We got an RCA after that GE died and it lasted for over 20 years. THAT is the one that EVERYONE remembers, not the piece of crap that came before it. Average the two TVs and they were NOT great.

          1. That’s true. I opened the dryer because it was making a loud squeaking noise. Turns out it’s a roller wheel the drum rests on. Got a new set of rollers, and gave everything a good cleaning after install. That’s where I found the schematics.

            I bought a refurb Westinghouse 50″ LCD over 13 years ago, after about 2 years the backlight was going bad. I called in the extended warranty I got for it, they paid 100% for the TV due to backlight being more expensive than the TV. Next problem it had was no power up, I opened it up and found the internal power connector was unseated and almost falling out. Reseated it and it worked great until a few years ago when some board went bad and I tried to replace them with no luck. So I got at least ten years out of that TV.

            I do love a good warranty.

    1. It’s the variable timers that I find to be a waste of time. It’ll start out saying it’ll be done in an hour and a half, but it’ll take closer to three hours.
      The newer “energy efficient” machines seem anything but.
      Not to mention the driers that don’t seem to get hot. I’d rather have a mechanical timer any day.
      Perhaps the compromize with these new machines is just to remove the controller and set the cycle times yourself.

      1. The problem is a lot of newer machines have ‘inverter’ motor controllers, which are integrated into the UI and control board, so you’d have to make your own VFD motor controller too, presumably specific or tuned to the motor.

        1. Had a Samsung washing machine with such inverter, after 2.5year it would go in a motor control error… it was officially off guarantee, but the “digital inverter motor” had a 10 year warranty.. I had to battle to make them repair it under the guarantee arguing that the controller is part of the “digital inverter motor” because the “digital inverter” part have all to do with the controller and nothing to do with the asynchronous motor. they finally agreed to repair it… 2.5year after that… same issue again you can’t tell me that this isn’t some form of planned obsolescence… this time I sawed the bottom of the controller box, removed the potting and redid all the soldering on the power traces on the controller board with leaded .. I’ve read that the no lead solder are bad and that due to aging their resistance increase, resulting in this error… no more error and 6 years later it’s still going strong.

          1. no edit button, damn…

            leaded solder I meant…

            electronical VS mechanical isn’t the issue, planned obsolescence is the issue whatever the technology. obviously it’s clear that the old mechanic device suffer less from planned obsolescence and price cuts.

      2. Yeah, I would like to replace their algorithm for time estimation. It changes because they’re load sensing, which saves a lot of energy usually, but the whole “can take longer than what the display says” is just bad design. They should overestimate by default and only decrease when it’s certain. (Or just not show a live time estimate) otherwise you get things like my washer tends to take sometimes up to 30 minutes to do whatever it does when it claims 12 minutes are left, and it will claim 12 minutes the whole time.

        1. I have a hack for this: I use a current-measuring smart switch on the outlet that the washing machine is connected to.

          It connects to Home Assistant and lets me know when the current drops low for a while, which happens whenever the washing load finishes. It doesn’t matter how long the load takes, since it lets me know when it’s finished.

    2. I’m two drain pumps deep plus a water level sensor on my Maytag washer and I intend to drive that machine into the ground until the day I can’t buy the parts. It was used when I bought it 10 years ago. Every year that I keep it out of the scrap yard is a win for the environment and my wallet. It will take a very long time for me to move past the point of benefits from the meager difference in water usage compared to a more modern unit.

      All hail the clever cheapskates who save so much more than money.

    3. The old soviet Vyatka washing machine had secret program – bedsheets-to-handkerchiefs ;)
      Those “mechanicals” .. well .. stack of pcb’s and contacts. You really dont want to experience slight shift of program disk and get full speed centrifuge with already overflown wash tube .. with heater element still at max .. and all the other crazy possibilities

  1. I recently had to do something similar with the electric stove in my mom’s house: the control board failed, nothing would work, and they wanted $450 for a replacement board that wasn’t even available for five months. It turned out to be a ($3 from digikey) failed solenoid, and it wasn’t even that hard to figure out, but it was hugely helpful because she couldn’t even GET a new stove for a while as they too are facing electronics shortages. So it’s still useful to have basic troubleshooting and repair skills with modern appliances.
    Moreover, if you don’t need IOT connectivity in your fridge or stove, there seems to me to be a pretty decent place for complete replacement of dead brains with simpler functionality. Like when my fridge died last month, at first I thought it was the control board and I was looking at the inputs, two thermistors, and the output, a compressor drive relay, and thinking, y’know I don’t NEED their fancy optimized motherboard that handles the icemaker pressure sensor and door open detector, I just need my food to be kept cold…”
    (and then it turned out the compressor had failed so I didn’t pursue repair.) But for a lot of appliances that are largely single-function, single-operation, I think there’s an opportunity for replacing the brains with a micro and a bank of relays.

  2. I’ve fixed quite a few appliances (dishwashers, stoves, etc.) by soldering in a $5 relay instead of paying $450 to replace the control board (the only option from the manufacturer) or a similar amount just to get a repairman to come look at it. Design for Repair needs to be a bigger priority for manufacturers (and RIght to Repair needs to be a bigger priority for legislators).

  3. Oddly, I had the exact opposite thing happen when I had to repair my relatively new refrigerator.

    It was not cooling well, which I tracked to ice building up on the evaporator coils. A little research told me that there was a thermostat and a timer that would pause the compressor every 20 hours or so of runtime and turn on a heater on the coils for 20 minutes to melt the ice.

    Since the fridge was only a few years old I expected to find *some* sort of electronic control, probably, I thought, a simple microcontroller with temperature sensor and a couple of relays.

    Nope. It was an entirely mechanical thermostat that energized a clockwork device with a little shaded pole motor. A long geartrain turned a rotary switch through a 20 hour cycle.

    After a little part number checking I was amazed to find it was basically unchanged since the early 70’s.

    I suppose in certain circumstances, if you already have the tooling it’s just cheaper to keep building an existing mechanical device for 50 years rather than updating it.

    1. I have the exact same problem with a 3 year old Haier fridge…no easy to fix electro-mech timer…this is done by the microprocessor board and they want an arm and a leg to replace. Thinking of using a timer module from a junkyard scrap fridge to fix it externally…don’t know if the stupid processor will detect that refuse to work

    2. That defrost timer may go back even further. I recently replaced a bad timer in a Frigidaire. The official replacement timer had a couple of flying leads which were paralleled onto terminals which in turn fit into a plug in the refrigerator’s writing harness. The instruction sheet with the timer cited configurations for use in models dating back to the 1960s.

      The defrost timer as used in the current setup monitors the temperature of the evaporator coil with a Klixon switch. The timer motor stops until the evaporator warms up, closing the switch and restarting the timer. That helps prevent having unnecessarily wide temperature swings in the freezer caused by defrosting longer than needed.

      It is a very clever use of low tech which is plenty good 50 or 60 years after its introduction, is very inexpensive to manufacture, very low power consumption and usually pretty reliable. I bought my own Frigidaire in 1986 and the original defrost timer is still doing its thing 36.5 years later. I am willing to bet an electronic control board probably would have had an electrolytic capacitor or two which dried up and needed replacement a couple of decades ago.

  4. My kingdom for a line of appliances where all the sensors and controls just happen to be standard PLC stuff and I can just write ladder-logic to program my own cycles.

    For instance, I’ve found that a lot of my digestive issues go away or get milder, if I just set my dishwasher to run a second rinse cycle after completing the main cycle. For some reason my clothes washer has an “extra rinse” button, but my dishwasher doesn’t.

    Or, I’d like to extend the pre-wash time, to do a better job at softening noodles that’re stuck to the sides of a bowl. I could hand-wash the dishes before running the machine but that defeats the purpose. The “pot scrubber” setting on the machine does a better job but it also runs the pump at higher speed and is much louder, and tends to dislodge lightweight glasses that were perfectly fine in the normal cycle. All I need is more time, but the machine won’t let me manually adjust the cycle.

    I bought the dumbest rice cooker I could find, because I can easily add external sensors and relays to control it. I’m doing that right now, it’s running a proof-then-steam cycle for some yeast-risen buns that come out like sweet little clouds. I haven’t found a commercial breadmaker or ricecooker that supports this type of cycle in its factory programing, but because I have control, I’ve been able to make it myself.

    I’m about to buy a toaster-oven/air-fryer and I’m debating between the slightly-electronic one with good temperature control as-is, or the pure-mechanical one that’ll be easier to rip out and replace the controls. Sure would be nice if I could just buy one that speaks MQTT.

    1. Yes me too, appliances should have a microcontroller to do all the low level stuff, like motor control, talking appropriate protocols to sensors, and then expose an API for all of that. The UI and even details of which things to turn on when should be a separate concern; perhaps have the most basic controller built-in to the appliance (maybe just on/off?) and everything else is controlled from your phone, web browser, homeOS, etc via a standard protocol.

  5. Most of our problems were solved a long time ago and the market is just offering bells and whistles on top of ideas they no longer have IP control over. What the world needs is open source designs for all of the “things” that we use in our daily life that don’t really require the complexity that capitalism has overlaid onto them. I have no problem with capitalism, I just think that it needs to be limited to the luxury market and the basic needs of humanity should be provided for using more compassionate strategies that eliminate fundamental inequities. You should be able to buy a washer that is efficient and repairable, with no vendor lock in or IP constraints. If people do want a washer that analyses their farts they can pay extra for that and may get it serviced by the manufacturer too, just stop enslaving the rest of the population into that perpetual and wasteful cycle of needing to buy new things that don’t last. As for the snide remarks about mechanical things not breaking down, well that is not the point, the point is that they have a level of complexity that is at a scale that most people can grasp and work with. I suspect that companies are deliberately making things hypercomplex and monolithic specifically because it locks the consumer out of the maintenance relm completely. There is also an existential threat associated with current capitalistic strategies, what happens if the global industrial system is badly disrupted and all of your stuff can’t be replaced every few years, nor can it be repaired, or even understood and copied? You find yourself sliding back to very primitive times. Consider the average human, take away all of their acquired and not understood technology, then ask them to rebuild civilization from scratch, how far back would they slide assuming they survived at all?

    1. ^^^^ THIS
      I want to see someone (maybe HaD) offering a prize for the first open-source washer controller, dishwasher controller, 2D printer, or any of the other stuff that should be a simple and solved problem by now.

      So much of this stuff goes to e-waste for stupid faults or design flaws and a lot of the time the major mechanical assemblies are still perfectly fine.

      Also – jailbreaking more old phones and tablets with a standard Linux install or whatever so they can be re-purposed for all manner of things rather than scrapped.

    2. Well said, and even currently, in some less advances places, current ‘encumbered’ appliances are a real cancer; less sophisticated, or just more open/documented/standard stuff can easily and economically be repaired.

    3. They won’t sell except to the few of us who are motivated and knowledgeable enough to want to repair the appliance. Most folks these days would rather pay a repair person or simple replace the appliance.

  6. Would be great to have an open control board for washing machines that might be adaptable to various washing machines. I know nothing about how they work but it feels like washing machines are far along enough that I’d expect they all function very similarly…

    1. Clothes washing machines are a little complicated but I think it’s possible.
      Dishwashers are definitely complicated. Specifically, they have multiple floats that they use to figure out how much water is loaded and when it’s correctly drained out, and if those mess up you end up dumping a whole bunch of water on your floor when you try to open it up to find out why it’s stopped. You can’t really run one without dealing with level sensing and some effort to have backups in case the floats jam due to particulates. Likewise, they tend to need to run an initial rinse, and only then open the soap container, so they have at least some state machine nature to them. Traditionally they were run with mechanical timers, but that didn’t remove the need for water level sensing.

      1. I had a dishwasher that the float kept getting stuck. The plastic of the container deformed due the temperature and grabbed the float most of the times. I took the float out and made a sensor using 3 stainless steel rods of different lengths, some 3d printing to hold them in place and a comparator or attiny (can’t remember which). Worked flawlessly.

  7. ugh this look inside the new generation of smart washers is bumming me out. i got the most basic washer from 2011, and it has a marvelous design…it’s exactly the same as the basic washer from 1980 except each individual component is smart. so like there is a phase knob that gates power to the fill level knob which gates power to the temperature knob which gates power to the hot and cold solenoids. so the interface between the components is still very simple (and i think largely backwards-compatible), even though now the temperature knob has a thermocouple and a little IC chip (to implement ‘energystar’) when it used to be just like a 3×4 mechanical switch. so if i have to hack on it, it’s still easy to understand.

    the level of integration here looks like a real drag. and a display!! who needs a display?

  8. Please be careful with replacing appliance control boards with “arduino.”

    The appliances themselves require compliance with modern software safety techniques that you probably are not implementing. They are put in place to limit the possibilities of unintended / uncontroller operation in the event of an MCU hardware or software failure. The way this works is covered by EN/UL60730 or EN/UL60335 or UL1998 depending on the type of product and what country it is sold in.

    For product design where software is depended upon to limit the risk of a fire, electrical or other hazard, you typically start with the safety / self-checking design of the processor FIRST. The product design then is implemented with those restrictions in mind. Besides doing a final DFMEA, when you are designing the product you have to keep thinking to yourself, “What happens when X fails, is there a risk of fire, electric shock or other hazard?”

    The old motor / electro – mechanical timer driven products are REALLY interesting to look at. They last so long because they are so simple with few parts. Failure usually includes worn out rubber components or dirty / failed contacts on the timer itself or sometimes the interlock door switch.

    If you haven’t seen a timer controller for a old washing machine or dishwasher they’re worth checking out.
    The control / timers are operated by an AC motor which when set for various operation pushes to close a number of different parallel contacts at different times to perform various actions enabling pumps, drain valves, water valves, etc– it sort of reminds me of a player piano.

    Yes, appliances from 20 years ago were significantly better performing than now (better at doing their primary function.) What drives new appliance design now are 2 things: government / NGOs forcing product change as it relates to safety (a good thing) and government / NGOs forcing product change as a means of reducing the energy and or water they use (a questionable thing, depends on the product — see Sri Lanka fertilizer.)

  9. At least this was a separate board. Many modern washers have the entire electronics integrated into a single board, and then covered in silicone. The entire thing needs replacing if any single component fails, and of course replacement boards cost almost as much as the entire washer.

    We need more modularity, and less focus on shaving a couple of cents off the electronics. A saving that ultimately costs 100’s or thousands of times more because appliances are scrapped prematurely, due to irrepairability. Let alone the environmental cost.

  10. This is a great, simple hack, BTW, and I don’t want that to get buried in the horrendousness of commercial appliances.

    [Balakrishnan] looked at the main board, identified the I2C pins, snooped the channel, wrote up a quick device that answers, and won. That’s great.

    Next step? Decode the data that’s being sent and make your own display board. Or do it with an ESP8266 and make your own IoT washer. Or…

  11. I’d love to be able to replace the controls on an old General Electric P7 oven. It has two interchangeable modules on top so it can have four round burners or two burners and a grille/griddle. The modules fit either side. It’s the older version with the module plugs in the center. There was a newer P7 series with the connections at the rear.

    It has the knobs for the four burners and the oven at the front, with a mechanical clock and timer under a glass window in the center. The timer is bad so self cleaning can’t work. There’s crud under the window due to the hole through it for the clock setting knob.

    What would be fun is to put a touch screen display in place of the clock / timer and add precision temperature sensors for the oven, burners and two zone grille / griddle. I’d want to replace the knobs with individual temperature displays for each burner and the oven. The oven knob display could also show self cleaning status.

    It should have temperature ramp control for frying, baking, and broiling operations that require running for x time at t temperature then going up (or down) for another length of time, then cooling to a warm holding temperature followed by shutting off. What would be a hot trick would be putting 4 steaks on in 4 pans and having each one cooked to a different amount and all finishing at the same time. The only thing it couldn’t do is flip them. Give it a voice prompt. “In two minutes flip front right.”

  12. Since washing machines (laundry, dishwashers…) have the same basic focntionnality (sensors, relays, simple brain), I can’t wait for a law (my bets are on the EU) that mandates the use of standard parts which can’t be bought from different suppliers (a dishwasher from A could be repaired with standard components from B etc…). Hell adding new cycles/functionnalities should only be a matter of reprogramming the MCU inside (open source firmware).

    The idea is not new, L’Increvable (a very good concept that has been killed off by the appliance industry that didn’t want its business to be disturbed) had it before me : https://www.lincrevable.com/en/

  13. This is an awful kludge, not a hack. The most common problem with appliance control boards is a dirty supply voltage due to dried out electrolytic caps in the power supply. If a machine is >10 years old and behaves erratically, simply replacing all electrolytics will usually cure it for at least another decade with a >90% success rate.
    [Balakrishnan] doesn’t mention that he has checked the power supply. Swapping the display for a dummy reduces the load on the power supply which in turn reduces ripple and that makes the controller happy again. I’m pretty sure the problems will reappear in the near future.

  14. I’m not sure about now, but when I bought my washing machine in 2006 there were basically two different sets of top loader guts no matter which Whirlpool/Maytag/Kenmore (and probably other brands) model you bought. There were different layouts for the switches and some cheapie models omitted switch settings on the front panel though the control board is the same. There were two types of control boards to support two sizes of drive motors.

    Taking two screws out of the hinges on the back of the machine allows the top to slide forward about an inch and then tilted up to access stuff inside. On inside of the machine there should be a book in a pocket glued to the front wall of the cabinet. The book provides quite extensive trouble shooting procedures and information about how to calibrate sensors. There are also schematics foe the two control systems in the back of the book (unfortunately only to the module level in detail). The various tests and calibrations are accessed by first dialing a code on the cycle dial like you’re opening a combination vault. After that, counting various numbers of clicks on the cycle dial selects what you can do.

  15. Modern appliances are overcomplicated too much fragile electronics to go wrong what was done with a few electromechanical parts that were british made now is do be with overcomplicated imported parts that are impossible to obtain no doubt the obscure chinese manufacturer no longer I business its a throw away age of overcomplicated Malaysian or chinese tat

Leave a Reply to alialialiCancel reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.