Quite a lot of coffee is consumed at work but real statistics are missing. For the coffee machines with a can it can be interesting to have a visualization with coffee left in can, water in machine, time left until machine is finished, estimated time until can is empty. This would probably require a modified coffee can so is not very straightforward (pressure pad on the bottom of the can, fluid meter,…). For the other coffee machines statistics like number of cups made might be of interest (for cleaning, stocking, …).
Perhaps make a game out of it: get bonus points to get that last coffee that makes the next one needing to refill the water reservoir or empty the tray
For my hacking project, I assumed a coffee machine for individual cups..
- know whether there is a cup or not: using a light sensor (if a cup is on top of it ~ less light) Why? The rfid reader reads the ID when a cup (with rfid tag) moves over the sensor. Hence when you take away the cup, we are not informed about that.
(Why? The rfid reader reads the ID when a cup (with rfid tag) moves over the sensor. Hence when you take away the cup, we are not informed about that.)
- know which cup is at the machine: read out rfid identification
- keep statistics: should be done in the back-end
- push a button to try to get coffee, and let the server then decide whether you get some coffee, with our without warnings
- access statistics with a mobile app or web app
I could only work for an hour or so, hence I didn't manage to reach all goals with the code supplied below (it needs some debugging too, sorry).
How far did I get?
- detect cups with the light sensor
- get the id of the cup
- have a routing to detect if there is a cup and if so: what is the id; if not: remove the id
- send this information to a server (smartliving.io server)