Roomba Costumes with Synchronized LED Rings

A quick post on our 2012 Halloween costumes – after many late nights, we had an awesome time walking around the neighborhood tonight.  Check below for a video of some sweet synchronized LED action.

Related posts:

Background – my son loves our Roomba vacuum cleaner.  He loves to watch it work, loves to take it apart and clean it, even loves to watch 10 min teardown videos on Youtube.  As such, we knew we had to make him a Roomba costume for Halloween.  But what about my wife and I?  The virtual walls!

A few weeks back, my wife and MIL got to work crafting an awesome costume.  Here they are in action:

And here is the end result (below).  You can see that Halloween started out a bit rough, the key player in theme was non cooperative:

A malfunctioning Roomba with two exasperated virtual walls.

However, all was not lost.  Our backup plan involved mounting his costume to his stroller (along with him):

After dark, we turned on the flair – my friend Matt and I built up 3 LED rings to mount on the top of the costumes.  The LEDs are the 25-pixel strings from Adafruit controlled by an Arduino Pro Micro from Sparkfun, powered by 4 AA batteries and a 9V.

Update: I detailed the LED Ring Design and Construction here.

LED Rings

The best part – we were able to synchronize the 3 LED rings via an IR transceiver board we built.  The rings used IR to share timer values and calibrate to a common understanding of time – allowing them to blink in sync!  Here is a mockup of the ring (with purple PCBs from OSHPark) and a photo of our PCBs (9 of 12):

LED Ring Sketchup Concept

IR Synchronization PCBs

The costumes lit up the night, we heard a ton of oohs & aahs, pictures taken, lots of questions, it was a blast!  I’ll post more on how we did it when I catch up on my sleep.

Here is a video of the 3 rings going through the lighting sequence:

And here we are trick or treating:

Halloween 2012 – Roomba Costumes with Synchronized LED RIngs from Ryan Brown on Vimeo.

Creative Commons License
This work, unless otherwise expressly stated, is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License. Terms and conditions beyond the scope of this license may be available at