IoT Coffee Button

“How Did the Hipster Burn His Tongue? He drank his coffee before it was cool.” – Anonymous

Mhmmm, I love the smell of a fresh coffee. But that does not make me special as researches show that most of the people love that specific scent. Coffee has a very complex scent with so far identified 800 compounds, many of those are powerfully tied to scent. Coffee is rich with heterocyclic compounds and humans tend to love these smells as they hit many scent receptors, which makes the smell of coffee pleasant experience for most of us.

IMG_8364

We in Hotovo are no different as we love coffee. Not only for its smell or taste or for its caffeine which brings us the feeling of wakefulness, but also for its socializing features. When I make an espresso or a brew I would like others to know about it and join me, so we can enjoy our coffee together, talk about our day, our kids, our current project or share weekend’s experiences.

We use HipChat in company as the communication channel, so we used to make an announcements there. ‘I am having a coffee, anyone wants to join?’, ‘I just made a fresh brew, enjoy’ or similar messages let us know that it is time for coffee break. But we are a technological company that loves to experiment with new technologies, so when we first heard about the Amazon’s IoT Button, which can be programmed to automate some processes with the help of Amazon Web Services, we knew that this is the kind of a thing that could help us with our ‘coffee party’ announcements 🙂

IMG_8379

We have two use cases for the button – first when a fresh brew is made and the second when people join up for a delicious espresso shots. AWS IoT Button gives us single click and double click events, which we have utilized for these use cases.

IMG_8359

IMG_8374

The configuration of the button is pretty simple and can be summarized by the following steps (full detailed step-by-step configuration tutorial of how to setup AWS IoT Button can be found here) :

  1. After signing into AWS IoT Console we registered our ‘thing’ and created Device Certificate with Policy for our device.
  2. We then started our button in Wi-Fi access point mode, connected to the button’s interface via browser and filled out all the information needed and uploaded our certificate and private key.
  3. HipChat admin provided us with Room notification token, so we can send the announcements.
  4. We created a new Lambda Function with the code that sends a ‘coffee message’ into our HipChat.
  5. Back in AWS IoT Console we created a rule for the device that triggers our Lambda Function.

That’s it 🙂 After such configuration the button connects to our Wi-Fi and sends the event (single/double click) to AWS IoT service, which then triggers Lambda Function, which sends a notification based on the click count to desired HipChat room.

And the result is either message saying that fresh brew coffee has been made or that someone wants to join up for the espresso party 🙂

Snímka obrazovky 2017-04-06 o 15.34.48

Summary

Amazon’s IoT Button gave us possibility to use it as a simplest assistant that performs repetitive simple tasks as making an announcement in our HipChat room, but can you imagine how many other potential use cases of this little magical piece of technology are waiting out there? 😉

The button itself is easy to setup and even easier to use. The only drawback of the current version of the button is irreplaceable battery (actually officially irreplaceable, you can make it with some MacGyver skills :)), which means that each button has around 1000 clicks before the battery is depleted. But we will see what the next generations of the button will bring us, and it is possible that the battery will be either rechargeable or replaceable. But one way or another we are having much fun using the button and enjoying our coffee even more (wink)

about author

hotovo

READ MORE

newsletter

Color formats in CSS, news in Angular v13 and a whole lot more

Hello readers!  Just as we do every month, we’ve pulled …

programming principles cover

Programming Principles – My Way of Being a 10x Developer

If I can name one thing that opened my eyes …

programming principles cover

Learn with HOTOVO (video)

“Learning and improving not only yourself, but also helping others …