Remote control color changing pumpkin

Posted on Thursday, October 29th, 2009 in Holiday, Infrared toy, Prototypes by Ian

Halloween is only a few days away. We’re getting into the spirit by building a remote control color changing pumpkin. Channel buttons 0-8 on the remote toggle the colors of the rainbow. Button 9 activates an ‘angry pumpkin’ mode that flashes a scary red strobe for a few seconds.


It uses a minimal PIC 18F2550 circuit that decodes the remote control signals and drives a ShiftBrite color changing LED module. The F2550 is a USB PIC with a USB bootloader, so it’s technically a USB upgradable pumpkin too.


Full sized schematic image [PNG]. A PIC 18F2550 microcontroller decodes RC5 infrared remote control signals, and sends instructions to a ShiftBrite color-changing LED module. We used a PIC development board with SMD parts, but you could also build this on a breadboard or perf-board with through-hole parts.

The IR receiver converts infrared light from the remote control into a signal that the PIC microcontroller can decode. The receiver is connected to PORTB pin 2 (RB2) of the PIC. RB2 has an external interrupt with edge select that we used to trigger the IR decoder. RB2 also has a Schmitt buffer that cleans the incoming signal and helps prevents false triggers. All PORTB pins on the 18F2550 have internal pull-up resistors if your receiver is an old type that doesn’t have it’s own pull-up.


The color changing LED is a ShiftBrite module from It’s driven by three PIC pins and powered by a 5volt supply.

The PIC firmware is a simple timer and interrupt-based RC5 remote control decoder.  It bitbangs ShiftBrite color instructions based on the remote command codes received.

The firmware ignores the RC5 brand code and looks only at the command. It should understand any RC5 remote control. RC5 is a really common protocol, usually available as a Philips TV on universal remotes.

0. Off 1.Red 2.Orange 3.Yellow 4.Green 5.Blue 6.Indigo 7.Violet 8.White (all colors) 9.Angry pumpkin (~10 seconds)

The channel buttons 0-8 control the color. #9 plays a 10 second ‘angry pumpkin’  red strobe effect and returns to a solid color. There’s lots of room for more effects, fades, and other options.

Browse the source SVN, or download the source and compiled HEX [ZIP].


We tried to make the top of the pumpkin shake in angry mode using offset-weight rumble motors from a game control pad. It wasn’t violent enough to look good in a video, though it does make quite a racket. Next year we’ll try it again with a solenoid.


This entry was posted on Thursday, October 29th, 2009 at 10:11 am and is filed under Holiday, Infrared toy, Prototypes. You can follow any responses to this entry through the RSS 2.0 feed. You can skip to the end and leave a response. Pinging is currently not allowed.

2 Responses to “Remote control color changing pumpkin”

  1. Sean Nelson says:

    That’s awesome. Next year you might try motion sensing for the angry mode also.

Leave a Reply

Notify me of followup comments via e-mail. You can also subscribe without commenting.

Recent Comments

  • Craig B: Shouldn't the default be 00xxx010? Note that bit 0 appears out of order in the documentation. In that case I think the initial value is...
  • JJM: From the datasheet extract you are showing, the power up status should be 00xxx010, not 000xxx01. Bit numbering is misleading since 'measurement resolution' is apparently...
  • Jan Ciger (@janoc200): Hmm, that could actually explain why the three sensor IMU breakout I have bought a few years ago had all sorts of issues - I...
  • Travis: Is it preset to the windows 3 fingered salute?
  • Glenn: What a cool idea !