Controlling a LED strip using a Lilypad board

I’m using this example to control my LED strip:
http://bleaklow.com/2012/12/02/driving_the_ws2811_at_800khz_with_a_16mhz_avr.html

Just download the source code from here:
http://sourceforge.net/p/abavr/lib/ci/21a95bf1f6c437cac414e8efb0c80558e5c369db/tree/WS2811/

Compile it using the tips from this site:

$ avr-gcc -g -Wall -Os -fno-inline-small-functions -fno-split-wide-types -mshort-calls -mmcu=atmega328p -DF_CPU=16000000L threepixeldemo.c -o led -std=c99

Generate the Intel HEX file:

$ avr-objcopy -j .text -j .data -O ihex led led.hex

Flash it on your board:

# avrdude -p m328p -c usbasp -e -U flash:w:led.hex

Connect the VCC and GND to your board and to LED strip. Then connect the IN wire from LED strip to Lilypad pin label 8.

UPDATE: This guy implemented a PWM to control this WS2811 LED strip: http://techblog.zenrobotics.com/2013/04/bit-banging-ws2811-led-strips-with-pwm.html

UPDATE2: Nice tutorial to getting started with AVR and GCC: http://www.micahcarrick.com/tutorials/avr-microcontroller-tutorial/getting-started.html

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s