A Tribute to Clark Griswold
At this time of year, I hit replay on The National Lampoon's Christmas Vacation and I'm fascinated by the sheer effort one man will invest to ensure Christmas is unforgettable. Well, here's my tribute to you, Clark Griswold. Strap in for the most elaborate Christmas display, perhaps ever!
This is by far the biggest robotic challenge I've undertaken. Last year I made my debut with a rudimentary lolly rocket. It was a hit, but it was missing a storyline and a reason for a lolly rocket to be hanging out in my front garden. This year, I gave myself a little more time to craft a story and build a bunch of high-octane IoT toys and let them rip at Christmas.
Let's set the scene
At the front of the house is an illuminated red button. When pushed, Santa calls out to have a toy car moved from the garage to the sleigh.
A stogie-smoking elf drives out and crashes into a stocking. On impact, lollies are shot from a cannon above and into the hands of some lucky visitors.
Simple right?... well, kinda. Checkout the video below for the end result. If you have an appetite for more, read on...
Self driving car
The hero of the show will be the toy car. I settled on a bright red Audi R8 Spyder.
Off the shelf, these cars are pretty simple, there's a motor connected to a physical switch that changes the polarity, and a switch for the accelerator pedal.
For our display to work, we need complete autonomous driving. To achieve this, all existing electronic parts were stripped and custom components were programmed and fitted. In the true spirit of automation, we also need the car to reset its position and reverse back into the garage. To achieve this, we'll use a 3A DC motor driver to control the polarity.
The software running in the car connects wirelessly to an MQTT broker and waits for the signal. When triggered, the car driving functions activate. To make it more realistic, we'll also add smoke for the car exhaust and turn on the car's lights when driving.
The track
Every race car needs a track. To add some festive cheer, I used WS2812B addressable LEDs to light up the path the car drives on.
Lolly cannon
Learning from last year's cannon build, I came back bigger and better, with version 2. This model has a linear design and is equipped with pressure piping to launch the lollies higher and faster. To add character, it was embossed with branding, painted, and mounted in a custom hardwood stand.
I promised an auto-refill system this year; a deceptively simple task that was easier said than done, primarily because the lollies are not identical in size, resulting in inconsistent extractions from the hopper. In most cases the lollies would jam and drop different quantities, or none at all.
After making several failed prototypes for extraction mechanisms, I found success building a linear hopper with a stepper motor that moves an internal plate in equal increments to push the lollies vertically into the cannon.
Each time the stepper motor moves, the position is stored on the micro-controller, meaning the device can accomodate nightly shutdowns and remember it's position on initialisation. When the hopper is empty, the software sends the internal plate to the bottom of the hopper and triggers a push notification via the Telegram API to request a refill.
Giant red button
At the front of the house sits a giant red sign with a note to 'press when lit'. When the button is pressed, the magic unfolds.
Soundtrack
The scene is supported by an audio soundtrack. The dialogue between Santa and the elf is split between the left and right channels, making for a more realistic experience.
Neon sign
To drive home the point of being inside Santa's workshop, I had a workshop neon sign manufactured from Sculpt Neon Signs.
Mobile app
Are IoT toys truely complete without a mobile app? Adding to the laundry list of things to build was a web-based mobile app that can control each element in the display. This came in useful when testing individual components.
Garage
The garage was constructed from pallet wood to house the car and smoke machine.
3D printing
A collection of CAD drawings designed and printed for this project.
Snaps
A few days later, a new feature was added. Checkout the video below and let it snow.