Alexa Home Automation

Use Alexa’s Voice Control to do much more than it originally could do! Turn on/off LED lights, ask for the room temperature/humidity, and be able to control an RGB neopixel light.

Engineer

Timmy D.

Area of Interest

Software Engineering

School

Lowell High School

Grade

Incoming Junior

Showcase Night

Reflection

BlueStamp was overall something that I never experienced before. It was a hands on program where I could learn something without long lectures or Powerpoints. Despite the frustration and discouragement I felt when my project was not working, I enjoyed my time here. I learned a lot about software, firmware, and hardware during this program than I did with a year long class at school. It really opened my eyes and helped me realize the difficulty of engineering, but also the joy and satisfaction of seeing your own creation work. Additionally, BlueStamp has motivated and encouraged me to start building my own projects at home. I plan to create more projects after this program ends in hope to gain the same satisfaction as I did with my Alexa home automation. As for my future, I plan to major in computer science. I am not completely sure if this route is exactly the route for me, but throughout this program the part I enjoyed the most was the software and coding. Hopefully with more projects and experience I can decide what is next for me.

First Modification

For my first modification,  I decided to add a RGB neopixel. With Alexa, I was able to turn it on/off, change the color to green, blue, red, or white, and also set the brightness from 0-255. The software part of it is similar to my base project, I created a skill, connected it to AWS Lambda, and coded the Photon to control the neopixel. However, the hardware is a little different than before. The neopixels need 5V to function properly, yet the Phonton only supplies 3.3V. I had to use a logic level shifter to shift the 3.3V to 5V for the lights to work. To do so, you connect the 3.3V to the level shifter as well as the VIN pin of the Photon. You also connect the ground pin to the shifter, as well as the data pin. A problem I encountered while doing this was that I did not realize that the neopixels required 5V, so I used 3.3V to supply the light and it did not work properly. I spent hours looking over my code because I thought it was a software issue, but then after coming across a website that talked about neopixels, I finally realized that it was a hardware issue. I also had an issue with the turning the neopixels off. Whenever I would tell the lights to turn off, Alexa would reply with “there was a problem with the requested skill response.” I looked through my code numerous times but I still could not figure it out. Instead I decide to use a web-based service called IFTTT. It basically allows my Alexa to communicate with my Photon. When I say “trigger blackout,” Alexa will send that to my Photon and it will know to turn off. Overall, I learned a lot from this experience. For one, I learned how level shifting works. I also learned to always check how much voltage is required for something to work, or else you might waste many hours trying to fix something that did not need fixing.
Alexa Home Automation

Documents for Modification

Final Milestone

For my final milestone, I made Alexa tell me the readings from a temperature sensor. Using the wake word “particle,” Alexa will tell me what the temperature and humidity is. I went through the same process as I did with my previous milestone to do so. I used Alexa Skills Kit, AWS Lambda, and inserted code into my Photon. As for the circuitry, one of the pins of the sensor is connected to the 3.3V power source provided by the Photon. The other sensor pin is connected to the ground pin of the Photon and the last pin is connected to the digital Photon pin 4, which ensures that the code works. A problem I encountered while doing this was that the temperature sensor would not connect with the Photon. When I asked what the temperature or humidity was, it would reply with “undefined degrees/percent.” I realized that there was an issue with the software, so I had to look over it and fix it. The problem was that I had created multiple skills with the same wake word, so when I tried to ask for the temperature/humidity, Alexa would not know which skill I was trying to use and it would be really confused. I had to delete all of my duplicates in order for it to finally work.
Alexa Home Automation

Documents

First Milestone

For my first milestone, I made Alexa turn on/off a green and red LED light using a particle photon. The LED lights and the Photon are attached to a breadboard, as well as a resistor to make sure that the lights don’t short circuit. Alexa basically has a wake word where when you say that word, Alexa will access the skill that you created through Alexa Skills Kit. In my case, my wake word is “particle.” When I say that word, Alexa processes it and will wait for a command, such as “turn on red light.” It then interacts with the code in the Lambda function, which connects to the Particle cloud. Finally, the cloud will tell the photon on my breadboard to execute code, and in this case, it turns on/off the LED lights. A problem I encountered during my first milestone was that the Lambda function was not connecting with the Particle cloud. Every time I said Alexa’s wake word and then a command, Alexa would say “Okay, [red/green] light turned on.” However, the lights wouldn’t actually turn on. I had to constantly fix my code and I even had a discussion with another student in New York until it finally worked. The issue was that I had forgot to put my Photon’s device ID and access token into my code, hence the Photon was not connecting with Alexa.
Alexa Home Automation

Starter Project

For my project, I decided to make the Simon Says. I had to solder many different parts onto a printed circuit board for it to work. One of the most important parts of this game is the microcontroller, which is basically the brain of the game. It is programmed to create a game sequence and light up the LED lights that I also soldered in. Additionally, another important part is the 10K resistor. The resistor helped regulate the electricity flow and without it, my game would short circuit and not work. Another part of my project includes two 0.1uF capacitors. These capacitor store charge and help stabilize the power supply. Other things that I soldered into my project were a buzzer that made sounds during the game, slide switches to turn on and off the game and the sound, battery clips to hold the batteries necessary for this game, and a button pad in order for you to play the game. A problem that I ran into while creating this project was that the blue light would start to flicker at random times. After a few adjustments and thorough examination of the circuit board, I concluded that it was a glitch in the program of the microcontroller.
Simon Says Soldering Kit
Comments
  • Jenn (:
    Reply

    GOOD JOB TIMMY!!

Leave a Comment

Start typing and press Enter to search