I hate looking where is the remote controller or grab my phone to control my TV or other IR devices. Alexa and hacking saved my day!
As a lot of lazy folks, Alexa is saving my day. I don’t want to spend time looking for my remote controller to turn on TV or switch sources. I would like to be able to ask Alexa to do it for me!
I spent some time building that and this article explains how.
Before discussing the technical aspects, this is a short demo video that shows how it works.
There is a long road between the lazy guy’s voice and the actuation on the TV. The figure below illustrate the journey of the command from the voice command to the action on the TV.
Amazon proposes a well define interaction model for the smart home skill. As this project is about building a controller for TV, everything i need is available on the smart home skill for entertainment devices.
Ideally, using AWS IoT is recommended as it offer a more secure way to interact with the devices. However, smaller devices do not support the authentication and security mechanism offered by AWS IoT. I decided to use an other solution.
I had to use a small device that connects simply to the Lambda. As this is not a critical application, lower security is acceptable.
My choice was then for Adafruit Feather HUZZAH ESP8266 as it still a smaller device that i have available, it support WiFi, MQTT, and IR libraries. There is code examples available that illustrates how to use MQTT on this device.
Depending on the TV make and model, specific codes needs to be used. For now, i added only codes for Samsung TV. Other makes and models are available on databases like this one. I am planning to retrieve directly the codes from those databases on the runtime to support a marge number of TVs.
Read more: Universal Remote Control with Alexa and IR