Your cart is empty

Arduino-compatible RGB LED Shield PCB v1.4

$6.50

RGB LED Shield

a Ben Combee/HTINK project


This Arduino-compatible shield uses three TI TLC5940 PWM LED driver ships to drive a 4x4 array of RGB LEDs. Each color is controlled by a different chip so you can adjust the reference resistors for the appropriate current. This also includes mounting positions for for three general-purpose buttons that are connected to ground, and a reset button. The TLC5940 chips are not directly connected to any Arduino pins, but a header is provided for you to make a manual connection depending on the needs of your sketch.

This board is a version of the circuit used at the first HTINK workshop on March 14th, 2009 at Bug Labs in New York City.

The best library I've seen for interfacing with the TLC5940 chips used in this shield is the tlc5940arduino library. We used it in the HTINK class and it performed very well.

On the shield, the four LEDs at the corners are labeled with their X,Y coordinates: "1,1", "1,4", "4,1", and "4,4". The formula to turn a coordinate into a LED number is (X - 1 + (Y - 1) * 4).


Version 1.4

This version has some major changes from the original 1.1 board.

  • Fixed the DCPRG signal. In the 1.1 shield, this was tied to GND instead of VCC. This prevents you from loading dot correction information into the TLC chips.
  • Added a 10K resistor between BLANK and VCC. This pulls up the BLANK line when the Arduino isn't asserting it, keeping the LEDs from lighting when there's no control signals (like during reset).
  • Added a default header parallel to the TLC signal header so you can just use jumper wires to give the shield a default wiring hookup. You also can populate this with a 2x8 header and then use plastic jumpers for this.
  • Disconnected the power net for the LEDs from the board VCC and provide a two pin connector to connect them together. This would allow running the LEDs at a different voltage if desired.
  • The GSCLK, BLANK, and XLAT signals are now all hard-wired to Arduino pins D3, D10, and D9 respectively. This is because the TLC5940 library uses those pins for their special timer properties, so they can't be reassigned.
  • Added an 2x4 output header that allows chaining a second board to the first one, with all the TLC5940 control pins, power, and ground provided.
  • Eliminated the extra holes that were provided to wire up signals and replaces them with silkscreen labels for the Arduino signals.
  • All of the resistors are moved to the edge of the board, making it easy to hook up potentiometers to figure out the brightness settings for each channel
  • All ICs and resistors are labeled with the color channel they control.
  • ERRATA: Vled and Vcc are labeled backwards on JP11. Since you usually just connect these together, there's no real problem, but if you want to power the LEDs using a separate voltage source, connect to the proper pin.
  • ERRATA: The GSCLK and BLANK labels are reversed on the Arduino shield connector. The labels on the piggyback connector, JP21, are correct.

RGB_LED_Shield_1.4.zip - includes schematic, board image, and design files for Eagle CAD

PC board layout

Populated v1.4 board

Parts List

  • 16 common-anode RGB LEDs (LED11-LED44)
  • 3 TI TLC5940N LED driver ICs (IC1, IC2, IC3)
  • 3 28-pin DIP IC sockets
  • 3 2K ohm resistors (R1, R2, R3)
  • 1 10K ohm resistor (R4)
  • 2 1x8 female wirewrap headers
  • 2 1x6 female wirewrap headers
  • 1 2x5 male header
  • 1 2x4 male header
  • 1 1x2 male header
  • 6 jumpers for connecting adjacent pins
  • 4 Omrom-style SPST momentary switches
  • 3 0.1uF ceramic capacitors

Creative
Commons License
HTINK RGB Shield 1.4 by Ben Combee is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License.


Version 1.3

This is the same as version 1.4, but with a bug that reversed two of the headers. This bug actually was in boards going back to 1.0, but it didn't matter before because the control signals were routed externally. The 1.3 boards can be used with alternative form-factor Arduino boards where you wire on a breadboard, but they can't plug into an Arduino board as a shield.

To wire this to an Arduino board, here's the wiring pattern you need:

  • D3 on Arduino goes to D11/SOUT on shield.
  • D9 on Arduino goes to D1/TX on shield.
  • D10 on Arduino goes to D2/SW1 on shield
  • D11 on Arduino goes to D3/GSCLK on shield
  • D13 on Arduino goes to D5 on shield
  • GND on Arduino goes to GND pin on shield (the one next to +5V)
  • +5V on Arduino goes to +5V on shield

Version 1.2

This is a revised version of the 1.1 board with several changes we discovered while assembling and using that version. It never went into production.


Version 1.1

This board was produced in a limited run by Seeed Studio as part of their Propaganda program. I documented the build-out process with several YouTube videos and some posts on The Life Unwired.

RGB_LED_Shield_1.1.zip - includes schematic, board image, and design files for Eagle CAD

PC board layout

Creative
Commons License
HTINK RGB Shield 1.1 by Ben Combee is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License.


Sold Out
  • Model: PCB115A3O
  • Shipping Weight: 10Gram
  • 0 Units in Stock:


Current Reviews: 2

This product was added to our catalog on Monday 04 May, 2009.