During a visit to the U.S. over Christmas to see a friend, we embarked on a delightful project to bring joy to his daughter. We automated a life-sized Santa Claus in his living room, complete with facial recognition, creating a magical and unforgettable experience.
During a conversation about potential business ideas, Sandy, a Salesforce architect, and I, an embedded Linux enthusiast, decided to exchange insights from our respective fields. To illustrate the capabilities of IoT and automation, I developed a small application on his Linux laptop.
This reminded me of a project from a few months back when my friend Manas in Germany experimented with image and face detection programs. It also took me back to 2008-2009, when I worked with OpenCV in C++ to build applications detecting fruits and human faces using Haar cascades. The programming landscape has evolved dramatically since then, with Python libraries and vibrant community contributions enabling rapid realization of innovative ideas.
For the Santa robot project, which had a button at its base that needed to be pressed to activate, I opted for a creative solution to avoid tinkering with electronics. The holiday spirit was in full swing, with everyone busy packing and arranging gifts. As a guest, I didn’t want to impose. Instead, we used two heavy scented candle jars to press the button, making it possible for Santa to spring to life and sing as soon as the power was switched on.
With the advent of IoT smart plugs controlled via mobile apps and APIs, such automation can be achieved even more seamlessly. This small yet joyful project showcased the magic of combining technology with creativity to spread happiness.
The project on Github can be found here.
In the U.S., I noticed that Roko and Tapo (TP-Link) smart plugs are quite popular. A quick trip to Best Buy and just $15 secured us a Tapo Smart Plug for the project. We also opted not to use a Raspberry Pi due to delivery delays that would extend past Christmas.
After returning to Australia, the application was ported to a Raspberry Pi.
In Australia, smart plugs like Arlec, and Tapo are readily available at Bunnings. In my experience, Shelly is the most reliable and widely used, though none of their models are available in a smart plug format. Only Tapo and Arlec offer smart plug options. However, Arlec can be challenging to integrate into custom software, as it requires registering with a third-party service called Tuya to obtain an API key – a process I found unnecessarily complex.
Ultimately, Tapo proved to be the most practical choice for this small but delightful project.