User Tools

Site Tools


digispark:tutorials:rgb

This is an old revision of the document!


RGB Shield Kit Tutorial

Product Description:

rgb1.jpgrgb3.jpgrgb2.jpg

The RGB Shield Kit allows you to build a Digispark shield that connects a Red-Green-Blue tri-colored LED to the Digispark development board. Using the PWM (Pulse Width Modulation) features of the Digispark you can mix the three colors to achieve millions of different shades. Use it as a status indicator, a light show, or even connect it to your computer and change the color remotely.

This is an unassembled kit and requires basic soldering. This is designed for use with the Digispark development board, which is not included.

Parts:

Part Quantity Identification
RGB Shield PCB1
100 (100R) Ohm 1/4W resistor 1% or 5%2 Brown - Black - Brown
180 (180R) Ohm 1/4W resistor 1% or 5%1 Brown - Grey - Brown
RGB Common Cathode LED1
1x40pin male 0.1“ pitch header 9 pins worth

Resistor Values: For more information on how to identify the value of the resistors we recommend these sites: A nice simple resistor calculator: http://www.ealnet.com/m-eal/resistor/resistor.htm A comprehensive article on identification: http://www.diyaudioandvideo.com/Electronics/Color/

Soldering: If you are new to soldering we recommend the following tutorials: Soldering Basics (http://www.sparkfun.com/tutorials/106) and Soldering Crash Course from the folks at Sparkfun (http://www.sparkfun.com/tutorials/354). How to solder from the Curious Inventor: http://store.curiousinventor.com/guides/How_to_Solder

Adafruit has this excellent guide that starts with the tools needed and then shows detailed pictures, including some of the common problems that beginners experience (http://learn.adafruit.com/adafruit-guide-excellent-soldering)

We assume for these assembly instructions that you know the basics of thru-hole soldering. If you don't check out the links above, these boards are very easy to solder - we promise!

Assembly:

Empty kit bag (or if using a raw PCB, aquire parts) and verify contents. Note for Kickstarter Backers and Pre-orders: Headers are not included in each kit bag, but the entire order came with more than enough headers for all kits.

rgb1.jpg

Solder resistors one at a time. Match the value of resistor with the number written within the resistor outline on the board. Solder the leads and clip off the excess. Repeat for all resistors.

rgb5.jpg

When inserting the LED into the board ensure the longest lead of the LED goes through the hole marked ground - this ensure you ahve the LED oriented properly. Solder the LED leads and clip off the excess.

rgb4.jpg

Cut a length of male headers 6 pins long and one 3 pins long. Insert into corresponding positions (on the bottom of the board) and solder each pin.

Tip: Inseting the headers into a breadboard and then placing the board on top can make this process easier.

Note: If you are using stackable headers, use them here instead of the standard male headers.

rgb3.jpg

Your RGB shield is complete!

Programming:

Note: The programming sections assumes you've installed the Arduino IDE and the Digispark Add-ons: Connecting and Programming Your Digispark

The RGB shield uses the following pins to control the LEDS: Pin 0 → Red Pin 1 → Green Pin 2 → Blue

Turning a color on or off is as simple as this:

void setup() {                
  // initialize the LED pins as outputs
  pinMode(0, OUTPUT);     
  pinMode(1, OUTPUT);     
  pinMode(2, OUTPUT);     
}
 
void loop() {
  digitalWrite(0, HIGH);   	// turn the Red LED On
  delay(1000);              // wait for a second
  digitalWrite(1, HIGH);   	// turn the Green LED On
  delay(1000);              // wait for a second
  digitalWrite(2, HIGH);   	// turn the Blue LED On
  delay(1000);              // wait for a second
  digitalWrite(0, LOW);    	// turn the Red LED off
  digitalWrite(1, LOW);     // turn the Green LED off
  digitalWrite(2, LOW);     // turn the Blue LED off
  delay(1000);              // wait for a second
}

PWM Note: While Red and green are connected to pins that support PWM, Blue is not - this is because the 3rd PWM pin is used by the USB communications and we figure most will want to use the RGB shield with USB communication. See Examples→DigisparkRGB→DigisparkRGB or Examples→DigisparkUSB→DigiBlink for examples of using software PWM for pin 2 (Blue).

If you are not planning to use USB communication: If you want to connect blue to P4 instead of P2 - flip the shield over and you'll see two solder jumpers, one has a little trace connecting its two pads, the other does't - cut the one with the trace and bridge the other with solder this will disconnect blue from P2 and connect it to P4.

Take a look at the Examples→DigisparkRGB→DigisparkRGB example for more advanced usage. When using that example you must set your board type as Digispark (Tiny Core) for it to work.

digispark/tutorials/rgb.1360476922.txt.gz · Last modified: 2013/02/09 22:15 by mcb1