Google Assistant + IFTTT + Bolt IoT Platform to make your own voice-controlled lighting system.
Things used in this project
- Bolt IoT Bolt WiFi Module
- LED (generic)
Software apps and online services
- Bolt IoT Bolt Cloud
- IFTTT WebHooks
- IFTTT Google Assistant
Ever since I have got Google Assistant working on my phone, I have wanted to control my house appliances with it. I have spent quite some time trying to figure this out, but when I saw PPV's blog, something just clicked.
This blog is kind of a replica of the earlier blog, the only difference being that I have used Google Assistant in the place of Amazon Alexa. This gives me the freedom to control home appliances from anywhere in the world, using my voice. The only things that I need is my phone and a good internet connection.
Step 1: Hardware Setup
Plug the longer end of the LED in the Pin 0 of Bolt WiFi module shorter end to the ground pin (GND), and power on the Bolt WiFi module.
Login to cloud.boltiot.com and note the ID of your Bolt WiFi Module.
Now click on the API Tab and under the section for Generate Key, click on Enable.
Next click on the copy button to copy your API key. Your API key will may look something like this: f1f918e9-d9c2-4e5b-aed0-b7cb743f74cf
Step 3: Writing the GPIO Control Command
Since LED is a digital output device, we will need to get a Digital Write command that can be sent to Bolt over the Internet to switch on the LED.
In Bolt Cloud go to Docs Tab -> API Documentation -> GPIO Commands API -> Write Digital OutputThe command to turn the light on is:
Make sure that you change the API Key to your own API Key and device ID which you got in the previous step.If you have connected the LED to any other pin other then Pin 0 then make a suitable change in the pin no in your code.
Step 4: IFTTT integration via Google Assistant and Webhooks
Go to IFTTT to create a new applet by clicking here
Click on '+This'
Choose Google Assistant -> Say Specific Phrase
Type the phrase you want to trigger the action. Make sure to specify the trigger command in different ways for example I used
a) Turn the office lights on
b) Turn on the office lights
c) Turn on the lights in office
Click on 'Create Trigger'
Click on '+That'
Select Webhooks and then Make a web requestEnter the API URL you got in the previous Step.
Make sure that you change the API Key and device name.
Method will be GET
Content type will be Application/json
Here is how your screen will look like
Click on 'Create Action' and then Click on 'Finish'
Now do the same process for a command to switch of the LED. Here you will change the state to LOW i.e. state=LOW in your code. Here is a sample of the code. Also, add a suitable phrase to switch off the LED.
That's it. You are done.
Now wake your Android phone by saying "OK Google" and say the words to see the magic happen.
Have a go at this project and in case you like our Cloud Connected Display, check us out on Indiegogo, back us, and spread the word! We have exclusive discounts for developers and the first batch of Bolts ships out in February 2018.You can check out some other projects from Bolt IoT here.
Full Disclosure: I am an Embedded systems developer of the Bolt IoT Platform. So I will praise it quite frequently during this blog, not only because I have to sell it but also because I sincerely believe that one of the best IoT platform ever. I have used many other IoT Platforms in the past and Bolt makes IoT development seamless like none other.