
We describe what Alexa is and give an introduction to the Alexa Ecosystem.
The importance of learning to build Custom Alexa Skills that integrate with the Internet of Things and prototypes based on Raspberry Pi and Arduino is discussed.
We discuss at a high level what are Alexa Custom Skills and how they are different from other Skills in the Alexa Ecosystem.
We discuss some of the major components that make up a Custom Skill. These include:
Intents
Utterances
Slots
Dialog
Skill Handler
I provide a parts list for the course in this lecture. There are links to several online retailers for parts.
We discuss the basics of setting up your Raspberry Pi and installing the latest Raspbian OS.
We walk through the process of installing all the software that we will need on our Raspberry Pi to build Alexa Skills
We discuss how to download the code and resources for the course.
Having an Amazon Developer Account is needed to create Alexa Skills. We talk through the process of setting one up.
In order to test the Custom Alexa Skills that you develop on an actual Alexa device, you will need to set one up.
Setting up an Alexa device is easy using the Alexa app for your mobile device or through the Alexa website alexa.amazon.com.
Please ensure that the Amazon account you setup your Alexa device with is the same account that you created in the Amazon Developer Portal.
In this way, you will be able to test Custom Skills that you develop on your Alexa device.
We introduce the flask-ask library and talk about some online documentation resources that are helpful in understanding how to use the library to create Skill handlers in Python for our Custom Alexa Skills.
We describe the make up of the hello world skill we will be building and how our skill will be invoked
We create and configure our Hello World Alexa Skill in the Amazon Developer Portal
We go through the process of coding our Skill Handler in Python for the HelloWorld Skill.
We run our Python program skill handler and ngrok and setup the https endpoint for our skill in the Amazon Developer Portal
Suggesting a fix for a Crypto Error that might occur.
We test our Hello World Skill using the Test capabilities that are provided by the Alexa Developer Console and we also show how you can use the Echosim tool for testing your skills.
We give an overview of the MyLED Skill so that you will understand the various components that will be created during the skill configuration in the Amazon Developer Portal.
We go through the steps of setting up our circuit.
We go through the process of configuring our MyLED Skill in the Amazon Developer Portal
We review the Python code for our Skill Handler for the MyLED Skill
We execute our Skill Handler Python program and run ngrok to get an https endpoint. We then configure the endpoint for our skill in the Amazon Developer Portal.
In order to test your skill using Echosim or on an actual Alexa device, we need to ensure that the language of the skill is setup correctly. This lecture addresses the setup that is needed.
We test out our project using the Alexa Developer Console and the Echosim testing tool.
We test out our project on an actual Alexa Echo Dot Device.
We discuss the various components of the MyDevice Custom Alexa Skill and how it will be used to achieve home automation.
We go into detail on how relays operate and specifically look at the relay module we will be using to control home devices to understand how it works.
We discuss in detail the circuit diagram and how they circuit will work for our project.
We connect the relay to our Raspberry Pi and also wire up the extension cord that we will be controlling programatically.
We create the Skill Interaction Model in the Amazon Developer Portal.
We run a Python program to verify that our relay circuit was connected correctly and that the relay works.
We fire up the Python program on our Raspberry Pi for our Skill Handler, start ngrok to get an https endpoint for our Handler and complete the Endpoint configuration in the Amazon Developer Portal for our Skill.
We test out our Skill in the Alexa Developer Console
We discuss enabling your Skill in the Alexa app or the alexa.amazon.com website so that it can be tested on an actual Alexa device
A reminder to ensure that the Language setting of your skill matches that of your Echo device.
We test our Skill using an Echo Dot.
We perform a detailed code review of the Skill handler so you will understand how our program works.
I give an introduction to the project we will build to allow you to voice control any tv using an Alexa and a Raspberry Pi!
We discuss in detail all that is involved with the project and the communication that occurs between Alexa, your Raspberry Pi and the circuit we will build to control our TV.
I provide a list of resources that you will need for the project
The following components are needed for our project.
Breadboard
Infrared LED
Infrared Receiver
NPN Transistor
Connecting Wires
Raspberry Pi and its associated peripherals (SD card, Power Adapter, HDMI cable etc.)
For more details and links to specifics and some online retailers where these can be located, check the Course Hardware Parts List that was provided earlier in the course.
Setup your Raspberry Pi with a base install of Raspbian and install prerequisite software.
We review all the connections that made to be made between the Raspberry Pi and our circuit.
We go through the process of wiring the circuit for our project.
LIRC (Linux Infrared Remote Control) is the library we will be using for our Project. We will install the library in this lesson.
We go through the process of configuring LIRC (Linux Infrared Remote Control), the library we will use to send infrared signals from our Raspberry Pi to a TV.
We use a TV IR remote to test if our circuit is working and LIRC was installed successfully.
We go through the process of creating a custom configuration file for LIRC using the IR remote for the TV that we want to control.
With millions of Alexa devices being sold, learning to build Custom Alexa Skills is becoming a highly sought after skill by employers. Electronics hobbyists and do-it-yourselfers can also use Alexa to perform home automation.
There is great power in being able to control any device in your home with an Alexa. But what if you want to perform home automation and have Alexa control your lights, appliances and even any tv in your home and have complete control to customize which devices you control with your voice without spending hundreds or even thousands of dollars on smart home gadgets or devices?
By using a Raspberry Pi, it is easy to interface with home electronics and devices to create custom skills using Alexa to voice control anything in your home and achieve true home automation!
This course will teach you how to build Alexa Skills that will run on any Amazon Echo device to voice control anything in your home.
In this course, you will learn:
What is Alexa and the underlying Alexa ecosystem that uses the Alexa Voice Service
We will discuss Custom Alexa Skills and you will learn the components that make up a Custom Alexa Skill
We then dive into preparing your Raspberry Pi for the projects we will build
We will describe the flask-ask Python library which we will be using to build Custom Alexa Skills
You will learn how to use the Amazon Developer Portal to configure and create your Custom Alexa Skill
We will build a Skill to control an LED connected to the Raspberry Pi with Alexa
We then dive into using relays to safely connect to our Raspberry Pi and AC mains power
We will create a Skill that allows you to control any device in your home to turn it on or off using Alexa
We create an awesome project that will enable you to voice control any tv in your house even it is 20 years old using Alexa
We will build an IR receiver and transmitter circuit that connects to our Raspberry Pi
We will work with the LIRC (Linux Infrared Control) library on our Raspberry Pi
You will be able to adjust volume, navigate channels, go to a specific channel, power on and off your tv using Alexa
This can be completely customized to work with any tv
You can add any functionality to the skill such as play, pause, rewind for DVRs or basically add any feature your remote can perform
The skills that will be created in this course can be run on any Amazon Echo device in your home. You will learn how to test the custom skills that we will build on an Amazon Echo or any Alexa-enabled device.
Along the way you will learn:
Basic Electronics
How to work with relays and safely control high voltage AC devices from a Raspberry Pi
How to use an octocoupler circuit to allow electrical isolation to protect your Raspberry Pi when connecting to high voltage AC power from a relay
How to work with GPIO pins on the Raspberry Pi
Learn about infrared transmitters and receivers
Python programming
Learn to program for Alexa
How to build Custom Alexa Skills from scratch
How to expose your Raspberry Pi to the internet via a publicly available https endpoint using Ngrok
How to build projects for home automation and the internet of things that can be controlled via Alexa
No previous programming knowledge or electronics knowledge required. All principles taught from scratch!
No Amazon Echo device is required to build and test skills.
What are you waiting for? Let's learn to build home automation and internet of things projects that you can control via any Alexa Device now!
Get started today!