The holidays mean different things to different people. To kids, it means gifts. To teens, it means time off. To the professional, its a time to be away from the stress of daily life. To the mother, it means a display of culinary skill; and to the elderly, it means a time when lots of people visit. Whatever it may mean, the end result is a fun time and sharing of happiness.
My project for the Internet of Holiday lights was based around our living room which was not very livable. It was a mess, and, with the upcoming holidays, I wanted to set the living room in such a way that it would be suitable for entertaining guests. Additionally, I wanted to accomplish the aforementioned in such a way that the holiday lighting becomes part of the living room and I don't need to remove it after the holidays. Hence, the concept of dynamic living room lighting.
The original concept of the project came from the fact that we have a very disorganized living room. Element14, Infineon and MCM Electronics sponsored some parts and I wanted to make them the hero of this project. Additionally iot.Eclipse.org provided some pretty nifty tools to work from. I started by drafting an idea around the Infineon RGB LED Shield and the fact that the YUN has the capability to connect to a Wi-Fi Network. Being an Electrical Engineer I am not an expert on software development and GUIs and hence I took to something that I understand which is OpenHAB. The design was drafted and the first few blogs were published around a focused plan. The target was not only to build the electronics but to demonstrate how practically the things fit into real life. And thus I began one module at a time.
With the Lights functional, I moved on to create the tree which used up another Arduino and the communication was established over a wire. I used RGB LEDs that can be chained together and 120 LEDs on the tree make for some pretty bright lights. I wrote the code for the Tree which I explained in my last blog and the whole thing lit up like... Christmas! The tree can light up according to music or a fixed color by software or in predefined patterns.
The lights and sound needed some dance. My wife and I made minions (pun intended) and I used some element14 boxes to make a crank-piston arrangement and added a motor. This made the minions dance; and I wrote a blog post about it so that anyone can make it at home. Moving on, I added a Raspberry Pi to the mix since my YUN was busy behind the curtains (literally). A Python script later, I was able to read tweets mentions and hashtags and I used it to trigger a minion dance whenever someone mentioned @ip_v1 on twitter with #happynewyear or #HappyChristmas. It is so much fun and there is a blog post about that, as well. I also added a little MQTT to it so that I could control the minions using OpenHAB and now they sing and dance on queue.
The final build was completed, cleaned and documented. A fireplace was fabricated out of styrofoam and a wooden shelf was converted into a snowy scene for the minions to stand. The shelf lights are controlled via IR Control and added ambiance to the shelf. The completed system is demonstrated in a 10-minute video below.
For more images about the build, please visit FULL LIST OF BUILD LOGS for more details.
I made the video with the help of my wife and it was the first time I actually edited a video which made it a long learning process. The end result is given below.
It was fun. I had planned on finishing the project before the holidays, but I ended up doing a lot more tweaking, and the final system is something that will stay in the living room as a permanent resident. The tree will also be a permanent resident, and every time someone asks why, we can demonstrate the system and Christmas will never actually be over. I have tried to put up as much detail as possible and hope that next year someone will take a piece of this project to their living room and sends me a tweet and makes the minions sing and dance.