Using GitHub Actions To Brew Coffee

It’s getting harder and harder to think of a modern premium-level appliance that doesn’t come with some level of Internet connectivity. These days it seems all but the cheapest refrigerators, air purifiers, and microwaves include wireless capabilities — unfortunately they’re often poorly implemented or behind a proprietary system. [Matt] recently purchased a high-end coffee maker with Bluetooth functionality which turned out to be nearly useless, and set to work reverse-engineering his coffee maker and adapting it to work by sending commands from GitHub.

Since the wireless connectivity and app for this coffee maker was so buggy and unreliable, [Matt] first needed to get deep into the weeds on Bluetooth Low Energy (BTLE). After sniffing traffic and identifying the coffee maker, he set about building an interface for it in Rust. Once he is able to send commands to it, the next step was to integrate it with GitHub, so that filing issues on the GitHub interface sends the commands from a nearby computer over Bluetooth to the coffee maker, with much more reliability than the coffee maker came with originally.

Using [Matt]’s methods, anyone stuck with one of these coffee makers, a Delonghi Dinamica Plus, should be able to reactivate the use of its wireless functionality. While we’d hope that anyone selling a premium product like this would take a tiny amount of time and make sure that the extra features actually work, this low bar seems to be oddly common for companies to surmount. But it’s not required to pick up an expensive machine like this just to remotely brew a cup of coffee. You can do that pretty easily with a non-luxury coffee maker and some basic wireless hardware.

27 thoughts on “Using GitHub Actions To Brew Coffee

    1. See, any chemist or physicist would just know the time it requires to procure 1L of coffee from empiric data. And any value inbetween by observing at what time the marker was reached.

      Whenever you fill the glass container to a marker you would know know the time and since all nerds wear Casio watches set the timer to that minute.

      It’s just amusing to see classic overengineering in 1991.

    1. So fill it in a large thermosflask where it stays warm for hours and bring it to your team? Then it is out of the way and others can brew. But I see your point. I drink straight from the Dewar.

  1. the “premium product like this would take a tiny amount of time and make sure that the extra features actually work” is a bit unfair. i own a delonghi machine with the same bluetooth functionality. the features actually do work. they just are useless. you can start making an espresso or change the settings of the machine from 3 meters away instead of using the buttons on the machine. also remote controlling a machine where i have to manually put an cup under it before i start the process might not be the most useful feature in any case.

    1. “remote controlling a machine where i have to manually put an cup under it before i start the process might not be the most useful feature in any case.”

      This right here is the one and very obvious reason, no one in their right mind should ever think about purchasing a machine like this because of the remote capabilities/features. But people do (I’m not sayin you didi, just that people do). So manufacturers will continue to add this functionality to products, adding to the price, weight to transport it, adding to the price agains, and so on.

      About 6 years ago we were in the market for a new gas stove/oven. Settled for an open box unit that had the right looks and cooking capacity/qualities we were looking for, and it was discounted enough to be worth it.

      You can connect the damn thing to the intenret, download and install an app and…. monitor it from around the globe if you have an internet connection.

      But you have to turn the gas knobs on and off, manually!!!!!

      Needless to say, if you’re no where near your gas stove, you should have no need to monitor it because you should have shut off all the burners before you left the damn house. There is also no reason an app and internet connectin is needed to change the time on the dam thing either. It is possible to change the time on it without any of that, but whoever designed it felt that changing the time with an app via the intenet was a feature this model had to have.

      People need to stop bying this crap at a full price and let it pile up in the wharehouses. Unfortunately people love things with lots of “features”, buttons and lights too much for their own good and will gladly connect it to the internet so Samsung knows what time you cook and what you eat.

      1. i agree with you on those points, but in the case of the delonghi there are a few points:

        at least it is not connected to the internet and will work without the app or anything just fine without any drawbacks.

        and you do not really have a choice there. the higher class delonghi machines are some of the best espesso makers in their price range, but they all come with this useless feature. you could pay more for other machines that do the same and don’t have bluetooth, but where would be the point in that…

        i think that a lot of manufacturers just add it to get some people to choose their product over another and the feature itself costs next to nothing. either the chip they chose already has bluetooth onboard or they use some dirtcheap bluetooth module.

        as long as you don’t have to use some cloud service to use the device i am generally fine with that, but not with stuff like security cameras, doorbells and the like that force you to use their cloud service and stop working it ever gets turned off.

      2. “, if you’re no where near your gas stove, you should have no need to monitor it ”

        How many times after starting a trip, does one spouse ask the other,
        “Honey, did we leave the (stove, iron, coffee maker, etc) turned on?”

      3. I would actually really like a stove that notifies me when the oven is preheated.

        Also I could prepare the coffee machine in the evening and it could make coffee once my alarm rang in the morning.

        And finally I would love that all my devices sync time with NTP so every clock in the house shows the same time.

        These things can augment your experience, but manufacturers usually just put a lot of stuff in the appliances for the sake of IoT that make no sense and make the experience worse than without it.

  2. Awesome bit of hacking and reverse engineering. I used to have a Bluetooth timer that allowed me to also turn it in using an app, so I used it on my kettle; I would set everything up night before and when alarm went off, wake up and hit start from bed. Piping hot water ready to go when i got there. It also had a regular timer too, but I get up at inconsistent hours a lot. Then app went out of date and bricked my device so that was a different lesson learned the hard way.

  3. Hmmm… A coffee maker that will only brew coffee once a programmer successfully completes a task.

    Either a brilliant motivational tool or a sure way to increase workplace… incidents.

Leave a 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.