Santa's Shop

This is a techno/art installation to be displayed in the community--similar to old time holiday window displays.

Similar projects worth following
More than 60 servo motors, 10 Arduinos, hundreds of 3d printed parts and dozens of hand made characters fill this moving story telling art installation. Three major elves and Santa each have 8 degrees of freedom and they operate to tell a story. This display will be placed in a window or shop somewhere nearby (Gainesville, Florida) at no cost to the shop owner.
Dozens of pieces have been formed in clay, scanned, 3d printed and decorated. Toys have been created, modified or just discovered.
This could be the "cutting edge" of entertainment, since the characters can act out a script (robot actors).

Santa's Shop 2016 is set up and running in Gainesville, Florida. Here's a local story regarding the display.

Our local public television station included a photo of Santa's Shop 2016 in a story about "Light the Village."


Santa's Shop 2016 will be operating in the window of Brightway Insurance Agency from 5 P.M. to 9 P.M. daily during December. The address is : 9127 SW 52nd Ave, Gainesville, FL 32608.

Below, courtesy of Jesse Reed, is a video of Santa's Shop.

In the beginning, there was Elmer the elf, construction details here.

Here's Elmer's mechanism.

Elsie, Elfis and Santa are somewhat similar.


dog randomly moving head, random time, random left-right, random up-down

ino - 375.00 bytes - 08/05/2016 at 18:55



Santa nodding to beat of music

ino - 3.74 kB - 08/05/2016 at 18:55



Timing change so that Elfis, Elmer and Elsie are in sync on first run after power up

ino - 2.18 kB - 07/28/2016 at 00:31


ino - 2.85 kB - 07/25/2016 at 19:07


ino - 2.73 kB - 07/25/2016 at 19:07


ino - 2.03 kB - 07/25/2016 at 19:07


ino - 2.18 kB - 07/25/2016 at 19:07


ino - 1.13 kB - 07/25/2016 at 19:06


sla - 2.72 MB - 07/22/2016 at 13:19


sla - 135.63 kB - 07/22/2016 at 13:19


View all 27 files

  • Moving Days

    Mike Rigsby11/27/2016 at 01:27 0 comments

    Santa's Shop had to be moved--from upstairs above my garage to a store window. The doors from my workshop are 32 inches wide while the platforms with elves and Santa are 36 inches wide. O.K. I had to remove all the bits and pieces, go down 15 steps and around the corner, turn the platforms sideways are reassemble the thing in the garage.

    Fortunately, the doors at the store are 36 inches wide (double doors, open to give me 72 inches). Unfortunately, my Prius accepts 37 inches wide and 26 inches tall (the elves and Santa are taller than that assembled). So, sticking out the back of the car, with the hatch open, we made the trip (two blocks) traveling at 7 mph.

    We made this trip about 15 times.

  • Santa Gets Into Music, Dog Moves, Noise Fix

    Mike Rigsby08/05/2016 at 19:04 0 comments

    First, Santa is now bobbing to the guitar playing of Elfis (instead of shaking his head in disapproval).

    Arduino files have been added (on this site) to reflect this change. The dog now moves his head--left, right, up, down at random time intervals and random positions.

    A vexing problem that took a few days of troubleshooting to fix started when the ferris wheel was converted from manually switched battery power to wired "wall wart" power. Electrical noise caused the monkey to vibrate (noise on the servo motor) whenever the ferris wheel was switched on (by relay). I tried a "junk box" capacitor across the ferris wheel motor, but the problem continued. Somehow, the three feet of twisted wire supply was radiating noise. I tied a resistor to the servo signal pin; I pulled the pin low during ferris operation--nothing helped. Finally, I ordered a .1 microfarad capacitor and soldered it across the ferris wheel motor leads--problem solved. Who knows what value my "junk box" capacitor was, but it didn't work.

  • Elmer and Elsie Got No Rhythm

    Mike Rigsby07/28/2016 at 00:36 0 comments

    On the first run after power up, Elsie and Elmer were out of sync with Elfis. I changed the timing on Elfis (Arduino sketch available on this site). Elfis and Santa had exactly the same "delay" statements during setup, so Elfis got slightly behind on the first run through. I decreased the delay on Elfis so that he would respond to the sync pulse just like Elmer and Elsie on power up.

  • Automating Santa's Shop--Working Together

    Mike Rigsby07/25/2016 at 23:50 0 comments

    Six Arduino units are connected together to operate a three minute story sequence in Santa's Shop.

    What happens is as follows:

    Santa points to isobot robot and isobot moves arms and legs

    Santa points to monkey--monkey claps; airplane floats

    Santa points to drum--drum sticks play

    Santa looks at elf workers

    Clock shifts to play mode (eyes wake up and blink)

    Elsie notices clock and taps her two co-workers, who also see clock

    Elsie switches her table from work tools to party goods

    Elsie makes robot move left and right

    Elmer switches his table to play mode

    Elmer makes toy bear light up

    Elfis switches his table to play mode

    Elfis plays guitar while Elsie and Elmer bob heads in time

    Clock shifts to work mode, but Elfis keeps playing

    Santa turns and points to clock

    Elmer turns and sees Santa, then taps Elsie

    Elsie turns to Santa and taps Elfis

    Elfis continues to play

    Elsie turns to look at Elfis, but Elfis keeps playing

    Elsie turns to look at Elfis again, and taps him twice

    Elfis turns to see Santa, then puts down his guitar

    All three put tables back to work mode

    Santa returns to original position

    This is accomplished using a sync pulse (or start pulse in the drum's case) as indicated below.

    Arduino sketches for all the above devices are available on this site.

    Since the display could be turned off at any point during the cycle, it is important that the animated figures do not harm themselves or the display on restart. For example, if Elfis moved his guitar from a playing position to the start position in the fastest way, he would crash it into the table and something would break or jam.

    Santa waits a few seconds on startup before sending out a sync pulse so that all creatures can get into position.

    I'm sure that serious Arduino programmers know this (but I didn't), so I'll share. In setup, when a servo motor is attached, it immediately gets a signal to start moving--whether you have written a position or not. To control servo sequencing on startup (Elfis needs to move his arm out, then rotate his shoulder down if he was shut down in the guitar playing mode--if he's in the rest mode, this will result in no movement), attach the arm servo, write the setup position, write a delay (.5 second for example), then attach the shoulder, write the shoulder setup position, then write a delay.

  • Bear on Stool and Floating Airplane

    Mike Rigsby07/22/2016 at 13:46 0 comments

    Elmer needed to control something, so I created a bear and a stool (toy Elmer is making). The 3d printed bear and stool (files available on this site) were painted and a hole was drilled in the bear to accept a LED.

    I was using a BB-8 (Sphero) to operate near the clapping monkey, but the charge/run time ratio was not sufficient to keep the device operable (even though it was operating on its charging cradle). It was replaced by a magnetic levitating disk--on which is a 3d printed/painted reindeer flying an airplane.

  • First View in Action (Except for Elfis)

    Mike Rigsby07/21/2016 at 23:40 0 comments

    Here's a first view of Santa and two of the elves operating--Elfis still needs a little work.

    The Arduino files for Santa, Elmer, Elsie and the clock are available on this site. BB-8 had power problems and was replaced by a "magnetic floating airplane." The lighted bear, his chair and 3d print files will be posted in the next week or so--also the details on how all the animated creatures are made to work together are coming soon.

  • Work--Play Clock

    Mike Rigsby07/17/2016 at 21:43 0 comments

    The eye blinking work/play clock is now active.

    The Arduino sketch for the servo motors is available on this site. This is somewhat fashioned around "Grandfather Clock" on the "Captain Kangaroo" tv show from ages ago. We start with the eyes open in "Play" mode.

    When we shift to "Work" mode, they eyes start to droop.

    On the next blink cycle, the eyes droop more.

    The eyes open, right eye blinks twice and we are back to "Play."

  • Getting Wheelo Unstuck

    Mike Rigsby07/13/2016 at 21:13 0 comments

    While performing some test runs, I noticed two or three times that the Wheelo got "stuck" in the up position. I changed the Arduino sketch so that:

    When the arm is up, it will come down a) when the wheel is close or b) after eight seconds

    The revised sketch is included in the files on this site.

  • Window Behind Santa

    Mike Rigsby07/04/2016 at 20:33 0 comments

    Annelle made another simulated window--this one semi-transparent with snowflakes behind the glass.

    This goes behind Santa on the back wall.

  • Garland Around the Top

    Mike Rigsby06/30/2016 at 23:27 0 comments

    It may not seem like much, but the roof had to be removed and hooks installed to place a string of garland around the top.

View all 32 project logs

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates