Hey Google, Make Breakfast!

Today, Google made breakfast. Breakfast consisted of coffee and a bagel and both were prepared using a somewhat elaborate combination of Google Assistant, IFTTT, and Stringify. You don’t have to be a developer to set this up, but it can definitely get somewhat technical.

The Coffee

Smarter Coffee Machine

Coffee was made using a Smarter Coffee 2.0 machine. This machine has an actual IFTTT integration, but is somewhat expensive (currently $249 on Amazon). Automating your coffee machine can also be accomplished using any coffee machine that can be left in the “on” position when combined with a smart plug (as long as the smart plug is IFTTT compatible).

Once the machine is configured you can then add it as a device in the Google Assistant application under “Home Control”. At this point, we have:

 

 

 


“Hey Google, turn on coffee”


A bit awkward. Wouldn’t we rather say “Hey Google, make coffee”? To do this you will have to create an IFTTT routine. Don’t be afraid of the long acronym. Here is the one I created:

IFTTT Make Coffee


“Hey Google, make coffee”


The Bagel

Many of us would also like to eat something in the morning. Don’t worry, your robot friends are also grudgingly prepared to help you with this. As of this writing, there is no device similar to a “smart toaster oven” on the market. There are a couple products coming in the near future, but nothing yet. Here is what you’ll need:

A toaster oven that is always on when the power is switched on. I was only able to find a few models but the one that I went with was the Oster TSSTTVDFL2. This toaster is available at both Warlmart and Amazon for about $40.

Toaster Oven

Unfortunately, this toaster is unwilling to speak with our robot friends out of the box. In order to facilitate IFTTT integration, we’ll be needing a smart plug.

I went with the Wemo Mini Smart plug for about $35. It’s available at both Walmart and Amazon. It offered a relatively painless integration and I haven’t had any issues with it so far. You’ll want to make sure that you buy a smart plug capable of handling the electrical load of your toaster oven. Don’t cheap out and burn your house down.

After setting up the plug, you could name the plug “toaster oven”, add it to Google Assistant and have “Hey Google, turn on toaster oven”, but then you’ll also have to turn it off by voice each time. Don’t be lazy. Let’s do this right.

Baked Goods Storage

Stainless Containers
One thing that I think is absolutely critical to meal automation is food storage. What’s the point of having a remote robot make a meal for you if you also had to put your food into that robot immediately beforehand? My solution to this is to use these small stainless steel containers that can be found on Amazon for $19 each. They are expensive for what they are, but very high quality. They do a good job of keeping the bread/bagels fresh, but are tough to open while hot. What worked for me is to use a pair of silicon oven mitts that only cover your fingers. The reason for this is they are the only ones that have allowed the dexterity to open a container with no handles. A pair of silicon individual fingered gloves might work even better, but I have not yet tried this.

The Dreaded Stringify routines

Now that our coffee machine and smart plug are set up, and hopefully connected to IFTTT, let’s start casting full-on magic spells with our voice. Firstly, lets set up the ability to just toast a bagel. Some initial testing has shown me that an acceptable amount of time to toast a bagel with this oven is 10 minutes. More on this later. What we want to do is say “Hey Google, make a bagel” and have it turn on the smart plug for the toaster oven, then turn it off 10 minutes later. Keep in mind that IFTTT activates through the internet. If your internet connection goes down at the precise moment that the signal to turn off your toaster oven comes in, you could eventually be lit on fire. This is why I would only recommend doing this for breakfast where you’ll (hopefully) get up and immediately notice if the toaster oven failed to turn off.

This is where things get a bit convoluted. We want to create an IFTTT routine that activates when you say “Hey Google, make a bagel” and then runs a stringify routine for the rest. In order to do this, we must first create the strigify routine because IFTTT requires it to exist prior to creating the associated IFTTT routines.

Create a Stringify account, link it to IFTTT, and then create the following flow. For brevity I will have to ask you to RTFM.

Stringify make toast

There are 3 IFTTT nodes and a timer. We have to create an IFTTT routine (in IFTTT) for each IFTTT node. Click each IFTTT node and save the default settings taking a note of the 4 digit code given for each one. Set the Timer to 10 minutes.

In Stringify, the first IFTTT node is contextually aware (due to its position) that it’s a trigger. After taking note of the 4 digit code, go into IFTTT and create the following routine:

Toast

This routine launches the Stringify flow. We still have 2 more IFTTT routines to create. In IFTTT you will choose “Stringify” as part of your “this”. One routine will turn on our Wemo smart plug, and the other will turn it off. You will be asked for your 4 digit Stringify code when creating each of these so be sure you wrote them down. Here are those two routines:

Wemo On
Wemo Off

This involved multiple bouts of swearing for me. Hopefully it wasn’t too painful for you. Now we have:


“Hey Google, make a bagel”


Now, for those who are truly lazy, the main attraction! If you don’t want to wake up in the morning and carefully time your coffee and bagel to be finished at the same time, we can create one Stringify flow to rule them all.

Stringify Make Breakfast

I won’t hold your hand through each step, but the process is exactly the same as the first stringify flow. You won’t be reusing any of your previously created IFTTT routines because it just doesn’t let you, so you’ll have to create new ones for each IFTTT node within your Stringify flow. Here is what each step of my flow is doing:

  1. IFTTT - Google Assistant: When someone says “make breakfast” run a stringify flow.
  2. IFTTT - Wemo: Turn on the smart plug for your toaster oven
  3. Timer - Wait 5 minutes
  4. IFTTT - Smarter Coffee: Turn on the Coffee Maker
  5. Timer - Wait 5 minutes
  6. IFTTT - Wemo: Turn off the smart plug for your toaster oven
  7. IFTTT - Hue: Flicker the lights in the bedroom

“Hey Google, make breakfast”


Congratulations, you no longer have to prepare breakfast ever again.

If you’d like to participate in further discussion, or have questions then please refer to the original reddit post that started this project.