Okay Google, make coffee
All good assistants should be able to make coffee...
Overview
The premise is simple, turn trigger the functions of a cheap percolation coffee brewer with commands from the google assistant. These commands can, for example, be voice commands on a google home or events triggered by an alarm.
The flow diagram shows the general idea of the implemented solution.
Hardware
Microcontroller
The microcontroller can be connected to a perfboard with pinouts for power, relays, sensors and SPI for the screen. A button is connected for manual triggering of the coffee machine.
Programming NodeMCU
The MCU can be programmed through the Arduino IDE. Using ESP2866 libraries the board can be programmed to connect to a network, host a webserver and handle requests.
Types of requests to handle:
Get status
Start a brew cycle
Stop
A similar code example in Blind improvements.
Setting up IFTTT
This simple IFTTT applet sends a get request to the provided URL when the google assistant hears the specified keywords. The key and URL are provided by AutoRemote.
Setting up tasker
Tasker tasks are triggered by a web request to Autoremote
Tasker event triggered by by the AutoRemote request.
Tasker task which makes a local network request to the coffee machine and then continually updates a notification with the current status.
Task to stop the brewing. Notification will also disappear.