Such a great coffee-machine for making awesome coffee, but so very manual and simple for this day and age. Of course, I am very happy with my Moccamaster. It just works. A high-quality product, for sure. It makes great tasting coffee if the raw material (the coffee) is good and you clean it from time to time. But its also a bit like the Toyota Corolla was in the 90s; almost depressingly boring. So why not attaching a brain to it? Theres limited chance of it trying to take over the world, and I would really like a smarter coffee-maker! Maybe even so smart that it has the coffee ready when I enter the kitchen first time in the morning!(?)
But I dont want to wrap wires all around it, opening it up and hacking its inside. I want a simple but clever solution, at least for now. Once again the smart power-plugs with the power-consumption monitoring comes in handy. You see, the coffee-maker has a few “effect stages” during the process of brewing a can of coffee. When its off, its … well … off. It doesn’t use any electricity = Zero watts. It has a physical switch, so the power monitor will report 0W. Then, when its switched on to start brewing it will shoot up to its maximum effect, and then stay there (sometimes dropping to >50% of that) for the few minutes its distilling the water. When there is no more water in the container it will switch over to just the “keep-warm” effect of the coffee pot.
After I witnessed these stages in the home automation software log, and the coloured ring on the smart power outlet, I realised that this could be used as triggers for events to create more logics to the process. For now I was happy with letting the software control it, but this could be any programmed micro-controller. In my research I monitored the logs, writing down the values and times, and I didn’t actually need to make actual coffee while researching (of course). That would be a waste, and not very frugal or environmentally responsible. So I brewed many cans of hot water as I took notes and adjusted the program. The coffee-maker was pretty clean after this whole process.
There was quite a few rounds of testing and failing to get the program working correctly. It turns out there is a short time of a few hundred milliseconds where the power-monitor reports zero watts before reporting the keep-warm consumption. I guess that there are some internal switches for the different power circuits or something, and it was so short that it was not possible to detect by eye. But my software noticed, and did what it was programmed to do for this event. In the end I just implemented a very short delay timer, and the problem was finally solved.
Some more tweaks still remain. I want it to be ok with me adjusting the keep-warm setting down to half effect (the other physical flip-button), and in the future I want it to be even more automated. As mentioned, I want it to start making the coffee when I get up in the morning (this will require me to have it prepared with water and coffee the evening before) and I want it to turn itself off if all occupants leave the house and are away for more than 30 minutes. It would also be nice if it could detect how much coffee was left, so that it would adjust its timers accordingly (I dont want it to keep warming the last few millilitres of coffee for too long, as it would quickly evaporate and turn into potentially flammable content). Doing this without any kind of sensor or recognition will be difficult…
I’m looking forward to continue developing this “extra-brain” for my “dumb” Moccamaster, and hope you also enjoyed reading about my tinkering. I will soon make some step-by-step learning-content that will guide you through all the needed steps to make your own coffee-maker smart – with the needed calculations, your own custom values and maybe even for different control-systems too.
Thanks for reading!