• Featured User: kurt


    Open-source hardware project hosting is my passion. I spend most of my free time building neat gadgets or planning what I'll build next. I love building things, and I want to make Open Hardware Hub a place that inspires others to build, ...

    Learn More

  • Updates 2013 February 18

    It's been a while, hasn't it? Well, that's ok because we've got a lot of updates to talk about. Most of these have been effective on the site fora couple weeks now. A few may or may not be active when this article gets posted, but they'll certainly be applied in the ...

    Find Out More

Zombie Meerkat

Download this project


By: madworm

This is a 'Halloween-ated' xmas meerkat lawn ornament. That does sound much better than 'RGB LED blinking toy' - methinks. The time-lapse video runs at 24x speed.

Download project description w/o images
Download project description w/ images


Download all project files

Bill of Materials

Qty Part # Description Schematic ID Source
1 Fb37503bb90219b6cb3f4c32db21e7c6dea1f577 22-518 GC ELECTRONICS 22-518 3 3/4" x 8" Perforated Bare Phenolic Prototype Board Ideal for prototypes, breadboards, hobby or science projects. Made of durable phenolic with punched holes. Boards are bare phenolic - no copper clad. Source
1 3e92b3d9e85d4fb06b4b93481f5204166a436cd6 RN55D1002FB14 METAL FILM RESISTOR Source
1 41277926d1ce48fae36d21ae5c893ef42472cd55 167104J100A-F Film Capacitor Source
1 Fd57c39bd3c974c6d475e16ffea1350134d8cf94 RNF18FTD294R RES 1/8W 294 OHM 1% AXIAL Source
1 4b1c1007751e1db842efbf9de951c75fd5551a5b CB10LV471M TRIMMER, TOP ADJUST, 470R Source
1 594fb772a9680ce6a3f8d2fd2ee1ffc5f32641d2 929836-01-36 Pin Strip Header Source
1 331e75233c52a3e08e67bf06659df79280649da2 ATTINY24-20PU AVR MCU, 2K FLASH, 128B RAM, DIP14 Source
1 MBI5168 DIP 8-channel constant current LED driver with SPI interface. Pin compatible with STP08CP05, but cheaper Source
1 40a79fdaca1f3027a1af2e5068feadc2311b52b2 MCDL-5013RGBC-TL-A LED,RGB,WATER CLEAR,T1-3/4,2.0 -3.5VF@20mA,COMMON ANODE,25DE Source
loading total from bomfire.com...

Download BOM w/o images
Download BOM w/ images


1. Schematic

The ATtiny24 side of the project is just the bare minimum to get the chip going. It consists of a 10k pull-up resistor for the RESET line, the ISP header for programming and a 100nF capacitor on the supply lines. Adding some more capacitance with an electrolytic capacitor doesn't hurt. The LED driver chip would benefit from some capacitance on its supply lines as well. It shares some I/O lines on the ATtiny24 with the ISP header. The common anode RGB LED connects directly to 5V and the individual cathodes go into the chip. A 500R potentiometer is used to adjust the current output of the driver. The 294R resistor limits the maximum current. I assume you have blank chip running on the internal RC oscillator, no external quartz needed. The FUSE settings for running at 8MHz can be found in the code zip-file ('flash.sh').


2. Assemble

Get some decent solid core wire for the connections on the perfboard. If you have a choice, make sure the insulation doesn't melt too easily. Take a look at the datasheets of both the ATtiny24 and the MBI5168 chips and try to arrange them on the perfboard optimally. If you have differently colored wire use it. Start with the ATtiny24 side, add the ISP header, 10k resistor and the 2 red LEDs (use long wires, so you can move them to where the eyes are) and power connections. Use an ISP programmer (e.g. usbtiny) to verify the chip is alive. ( avrdude -c usbtiny -p attiny24 -vvvvv ). You shouldn't get any error messages. Once that is verified to work, add the RGB LED and the driver chip + resistor + potentiometer. Take your time. Use hot-glue liberally to attach everything to the sculpture. Ideally you would use 3 AA cells to power the board, it will suck them dry ;-) If you have a 'mintyboost', giving you a nice 5V, use that!

6267534703_2db9487504_z 6268058362_11d831621d 6268062842_7c703458b3

3. Code

The main() part of it is very simple. It turns the 'eyes' on, waits a random amount of time, turns the eyes off again, waits a random amount of time and changes the hue of the RGB LED a tiny bit. Repeat. The supporting code provides the delay() function, PWM control of the LED and simple functions to change colors. Either use the Makefile or if you have 'Code::Blocks', use its project file (.cbp) to compile. Take a look at the 'flash.sh' file for FUSE settings and how to upload the firmware.

4. Enjoy

Place it in a dark spot and let it blink!

6267540395_fae0cdffc1 6268063622_03c486898c 6268063946_77a696ff38

Download steps w/o images
Download steps w/ images


1 - Initial project release
Add revision

blog comments powered by Disqus