Alexa is a Amazon's cloud voice service that allow developers to voice-control connected Amazon services. An example application is Amazon Echo, which is a voice-control assistant. When users speak to Amazon Echo, it analyzes the received voice and make appropriate response. In this example, we will show how to connect Amazon services (including Amazon Alexa, AWS Lambda, AWS IAM, AWS IoT) and use Alexa to control LED on Ameba Arduino board.

As shown in the above diagram, we can summarize the AWS framework scenario in this example.

  1. When a user says "Turn on the light" to the test device (which supports Amazon Alexa), Alexa analyzes the voice command according to the schema and sample utterances file (provided by user beforehand), and generates intent JSON (JavaScript Object Notation).
  2. Alexa submit the intent JSON to AWS Lambda. According to the intent, Lambda service then sends update message to AWS IoT Shadow service.
  3. AWS IoT Shadow service updates shadow state according to the update message from Lambda service.
    • If Ameba is online and has subscribed to the shadow service, Ameba turns on the LED.
    • Then Lambda generates the text and voice response message and send back to Alexa.
  4. Finally, the user can hear the voice message to indicate the LED has been successfully turned on.

Step 1: Devices

The needed devices are:

  • Ameba Arduino board - This Arduino compatible board is based on Realtek's RTL8195AM chipset which contains built-in wifi so we don't need an extra wifi shield for this project. You can find the Ameba Arduino baord in Amzon: https://www.amazon.com/dp/B01KWXJOGU
  • LED: Any simple two leads through hole LED will do.

We will start to show you how to register to Amazon Alexa, Lambda, and IoT services in the following steps and connect them together to deliver the purpose of this Instructables: Use voice to control IoT device through cloud. The process could be tedious, but you will be satisfied when you experience the final result.

<p>can you post the code link here</p>
<p>Hi, I think I have posted all the code. Which part of the code you need?</p>
Hey...Thanks for replay back, I need Arduino code that you used in your project. Thank you.
<p>You can download from Dropbox link below:</p><p><a href="https://www.dropbox.com/s/k9rjnbz9qzqzytc/amazon_awsiot_with_ack.zip?dl=0" rel="nofollow">https://www.dropbox.com/s/k9rjnbz9qzqzytc/amazon_a...</a></p><p>But the code is pretty much depends on Ameba Arduino library!</p>

About This Instructable




More by joeyzh:Using Amazon Alexa to control Ameba Arduino Ameba Arduino Getting Information From Internet Ameba Arduino Calendar With Humidity and Temperature 
Add instructable to: