Launch and control a drone using only your voice? Yes, now you can with Amazon Echo and Raspberry Pi. Let’s get started. First of all, let’s see a high level diagram:
Speak your verbal commands to Amazon Echo to control your drone using AWS IoT. First, Alexa Skills Kit parses voice commands, then Amazon Lambda runs our NodeJS code, which uses AWS IoT to talk with Raspberry Pi Ground Station over MQTT. Finally, Ground Station will send the specific command to our drone over a radio link.
Disclaimer: Drones or Unmanned Aerial Vehicles (UAVs) are inherently dangerous. People could get hurt and property could be damaged. Follow these instructions AT YOUR OWN RISK. Inform yourself on all the laws and regulations regarding remote control aircraft operation. Comply with all relevant laws. Do not undertake this exercise if you are not already comfortable operating Unmanned Aerial Vehicles. When performing an Autonomous flight, you should always be prepared to take manual control of the vehicle. Be sure you are very familiar and practiced with Return to Launch control and procedure. These instructions and any associated code come with NO GUARANTEE, NO WARRANTY, and by using them you agree to hold the author harmless against anything that could go wrong. OK, enough lawyer talk, let’s do this!
You will need following parts:
Setup AWS IoT
- Log in to AWS Console: https://aws.amazon.com/
- Navigate to AWS IoT
Set up Raspberry Pi Custom Ground Station
- This tutorial assumes you already have a functional Raspberry Pi, loaded with latest Raspbian distribution. There are many tutorials online how to do this.
- Assemble the Raspberry Pi and include the USB wifi dongle.
- Connect the USB radio antenna from IRIS into a free USB port on the Raspberry Pi. You should not need to install any special software.
- Connect (with keyboard and monitor) to Raspberry Pi and enable SSH.
- On Raspberry Pi, Run the following commands:
cd ~ sudo apt-get install avahi-daemon sudo chown pi /usr/local/ -R sudo apt-get install nodejs npm -y sudo apt-get install zip sudo apt-get install screen pip install awscli pip install droneapi pip install paho-mqtt git clone https://[email protected]/veggiebenz/echodronecontrol.git dronecontrol cd dronecontrol mkdir certs
If you have any trouble with any of those commands working (as in, there are errors in the command output), try the following and then pick up where you left off in the first code block above. You would need to retry any command that did not complete successfully.
For more detail: Voice Controlled Drone with RasPi, Amazon Echo and 3DR IRIS+