Revisiting Open Source Washing Machines (in Theory)

A number of years ago I wrote a post about the idea of Free Software washing machines, using it as an allegory to point out how silly it might be to attack people for using products with closed-source firmware, when no alternative is readily available. At the time, the idea of wanting an open source washing machine was fairly ludicrous, despite me pointing out that it would have some interesting side effect with programmability.

Well, in 2020 I would actually suggest that I really wish we had more Open Source washing machines, and actually wish we had, in general, more hackable home appliances (or “white goods” as they are called over here), particularly nowadays that it seems like connected appliances are both trendy and the butt of many jokes.

It’s not just because having access to the firmware of everything is an interesting exercise, but because most appliances are lasting for years — which means they are “left behind” by technology moving on, including user interfaces.

Let’s take for instance washing machines — despite being older than the one in my apartment, my mother’s LG washing machine has a significantly more modern user interface. The Zanussi one we have here in London has one big knob to select the program – which is mostly vestigial from the time it would be spring-loaded and moving to select the various phases – and then a ton of buttons to select things like drying mode (it’s a washer/dryer combo), drying time, and the delay start (awesome feature). You can tell that the buttons were addition to an interface, and that the knob is designed to be as similar to the previous interface as possible. And turns out the buttons are not handy: both drying time and delay have only one button each — which means you can only increase those values: if you miss your target, you need to go back to zero and up again.

On the other hand, my mother’s LG also has a knob — but the knob is just a free-spinning rotary encoder connected to a digital controller. While her model is not a dryer, I’m reasonably sure that the machine has a delay start feature, which is configured by pressing one button and then rotating the wheel. A more flexible interface, with a display a bit more flexible than the two multi-segments that our current machine has, would do wonder to usability, and that’s without going into any of the possible features of a “connected appliance”. Observe-only, that is — I would still love seeing a notification on our phones when the washing machine completed, so that we don’t forget that we have clean clothes that need to be hanged to dry. Yes we actually forget sometimes, particularly before the pandemic if we left them to delay-run from the morning.

Replacing a washing machine just because the user interface is bad is a horrible thing to do for the planet. And in particular when living in rented accommodation, you own the white goods, and even when they are defective, you don’t get to choose them — you end up most of the time with whichever is the cheapest one in the shop, power efficiency be damned, since rarely the landlords are paying for electricity. So having hackable, modular washing machines would be just awesome: I could ask our landlord “Hey can I get a smartmodule installed for the washing machine? I’ll pay the £50 it costs!” (seriously, if it costs more than that, it would be a rip-off — most of the controls you need for this can be hardly more complicated than a Feather M4!)

Oh yeah and even if I just had access to the firmware of this washer/dryer I might be able to fix the bug where the “program finished” beeper does not wait for the door’s lock magnet to disengage before starting. The amount of times I need to set a timer to remind myself to go and take the towels out in five minutes is annoying as heck.

But it’s not just washing machines that would be awesome to be hackable and programmable. We have a smallish microwave and convection oven combo. I got it in Dublin, and I chose this model because it was recommended by an acquaintance for its insistent beeping when the timer completes. If you have ever experience hyperfocus at any degree, you probably understand why such a feature is useful.

But in addition to the useful feature, the oven comes with a bunch of pretty much useless ones. There’s a number of “pre-programmed” options for defrosting, or making pop-corns and other things like that, that we would never use. Not just because we don’t eat them, but also because they are rarely recommended — if you ever watch cooking channels such as How To Cook That, you find that professionals usually suggest specific way to use the microwave — including Ann Reardon’s “signature” «put it in the microwave for 30 seconds, stir, put it back for 30 seconds, stir, …».

And again in term of user interfaces, the way you configure the convection temperature is by clicking the “Convection” button to go from full power (200W) down — and if you got it wrong, oops! And then if you turn the knob (this time a free-spinning one, at least), you’re setting the timer, without pre-heating. If you want to pre-heat you need to cancel it all, and resume the thing, and… you see my point.

This is a very simple appliance, and it works perfectly fine. But if I could just open it and replace the control panel with something nicer, I would love to. I think that I would like to have something I can connect to a computer (or maybe connect an USB thumbdrive to), and configure my own saved parameters, selecting for instance “fish fingers” and “melted butter”, which are the more likely uses of the oven for us at home.

But again, this would require a significant change in the design of appliances, which I don’t think is going to happen any year now. It would be lovely, and I think that there might be a chance for Open Source and Open Hardware amateurs to at least show the possibility for it — but it’s the kind of project that I can only with for, with no hope to get to work on myself, not just for the lack of time but for the lack of space — if you wanted to try hacking on a washing machine, you definitely need a more spacious and populated workshop. My limit is still acrylic lamps.

Free Software and Washing Machines

I think this metaphor, extracted from a discussion between Lefty, me and Carlo Piana, could really make it clear what my status is with respect to Free Software:

Have you got a washing machine? I guess you do; I’ll venture to say it’s a modern washing machine, let’s say.. from around 2005 or later. Good. Do you have the sources of the firmware of the dishwasher? I guess not, uh?

But I know there are people working on that, will give us a Free Software washing machine.

Sure, and once they’ll advertise washing machines with Free Software in them, hackable Free Software, by the way, I’ll gladly choose one as replacement when needed. Until then, I think I can still wash my clothes in the current, proprietary washing machine. It washes them just as fine, you know.

Now, Lefty goes a bit further questioning the usefulness of having free software on devices such as this one; on the other hand, I think it would still be a positive signal, as there are a few reason why free (hackable) firmware in those situations might be good for the user; on the other hand, it’s more than likely that it’ll hurt the profit margins of the vendors, so it’s not going to happen anytime soon.

For instance (this happened to me before, thus why I know about the situation is realistic), if you were to damage the logic board of your washing machine, it’s no longer just a matter of procuring yourself with the replacement component, like you did with older machinery. Even though there’ll be a number of shops to sell replacement components that are either compatible or even the original ones that left the manufacturer’s stock, they are shipped without firmware in them. So you need the firmware to make use of them.

Not only the firmware is proprietary, so getting a hold of it is illegal, but the firmware loaders themselves don’t store a copy of it any longer! They now switched to a set of flasher and 3G phone that downloads the firmware on-the-spot for a given model, and flash it right away on the board. You won’t have a copy of it, as it is.

With a Free Software (and hackable) firmware in the washing machine, instead, you’ll have the chance to simply take care of the flashing yourself if you ever had to replace the logic board, wouldn’t it be nice? And ecological as well since you wouldn’t replace the whole machine if the warranty ran out (replacement of logic board requires a technician call; it means that you can easily surpass the price of a new washing machine just by asking for the replacement). But it’s not just that; you could configure special washing routines, fine-tuned for the kind of clothes you wash, and the detergent you use.. or you could set it to only work during certain moments of the day.. all in all you’d have a terrific amount of choice in front of you!

But this utopia; manufacturers aren’t likely to give you access to your washing machine’s firmware; they have a business model going on with those replacement parts; they ask for more of your money to provide you with feature on your washing machines, even though these only usually come with sturdier, more capable (in form of its own hardware that is) machines that you might not have need for. Unless, of course, at some point a single manufacturer can find a way to produce low-cost decent-quality washing machines, that can give it more profit by selling the units than by struggling with replacement parts and technicians; at that point, a free, hackable firmware might make sense: take over the market by small, durable, tweakable yet affordable washing machines… and after that, the rest of the industry will have to follow suit as a “paradigm shift” started.

Who knows, it might happen. But until then, do you really think you should preach that Free Software users wash their clothes by hand? Or attack users and developers of proprietary washing machines “enemies of Free Software”? How’s this different from any other gadget? TV sets, dishwashers, phones (not just cellphones, your DECT has firmware as well, you know), you name it. And how are these different from specific software applications, or appliances if you prefer? My answer is “They aren’t”.

As long as I can accept the limitations I’m given, as long as it does not coerce me into something I don’t want to do, I’m happy to use the best tool, whatever that tool is, to complete a task. I have trust that such a tool is going to be, if not now in the future, Free Software. Not because I take that as the only important measurement, but because I know that the model works, and I have good reasons to prefer working with Free tools than not.

Household hardware

I have written before of my bad luck with my external hard drive, but there had been a few more more failures at my house, not related to computer hardware though, mostly related to household appliances: both the dishwasher and the washing machine decided to break up.

On the bright side the washing machine is under a 5-years warranty (I extended it when we bought it, my parents didn’t want to) and the dishwasher was quite cheap at the time. I’m going to replace the latter with a new AAA-class (highly energy efficient) appliance, possibly with programming support so that my mother can make smaller loads (for instance when she’s alone eating at home) or make it run early in the morning while we sleep. Since the problem, at least with the washing machine, is with the hardness of water (it’s full of calcium) I’m also considering adding a filter to the tap the washing machine is connected: the boiler already has one based on polyphosphate “salts” (not sure if they are actual salts, I’m sorry but my chemistry is not really that good), and it seems to work decently well; finding something that would be refilled with the same stuff is better since it’d be less stuff to buy, and keep at home.

Luckily there has been also good news: I finally replaced the light fixture in my room with a 4-way (from a shitty 3-way that always looked like falling down); the new fixture uses GU-10 sockets, and was designed to hold four 50W halogen lamps (which would give it a 200W total energy use, which is definitely too much for my bedroom). I bought instead four GU-10 LED lamps, 78 LEDs each, declared between 2.3 to 3W the lamp. They are bright! They are brighter than the three CFLs that I used to have at the beginning, which, total, consumed around 30W. Sure there is still the problem of cost (€47 of the four lamps, from Germany), and the size (the fixture had some glass container that was quite nice to the eye, but the LED lamp does not fit in it), but it seems like that kind of technology is really flying.

I’ll have to see if I can get more LED lamps around the house, saving money with energy efficiency on lights will probably allow me to hide the money I spend on computers turned on all day long…