Difference between revisions of "RGB clock"

From BitWizard Wiki
Jump to navigation Jump to search
Line 145: Line 145:
== Jumper settings ==
== Jumper settings ==


JP1: Power supply selection.
JP1: Power supply selection.<br>
Open: LED driver board and microcontroller board have individual powersupplies
Open: LED driver board and microcontroller board have individual power supplies<br>
Closed: VCC from LED driver board and microcontroller board are connected.
Closed: VCC from LED driver board and microcontroller board are connected.<br>
==== alternative use ====
If the complete device is powered from the microcontroller board, the jumper can be replaced with a toggle switch. This allows you to turn the LEDs on and off, without affecting timekeeping.


== The software ==
== The software ==

Revision as of 15:00, 11 January 2012

RGB clock

This is the documentation page for the RGB clock kit.

Overview

Driver PCB for up to 64 common-anode RGB LEDs, or 192 normal LEDs.
The PCB is designed for 1:3 multiplexing of the LEDs, and is equipped with 8 74HC595 shift registers (configured as 4 16-bit deep registers), 64 current-limiting resistors (220 Ohm by default) and 3 FETs to switch the cathode groups on-and-off.
The PCB is equipped with a bitwizard-standard 20-pin IO connector, designed to work together with our USB-multio PCB, but it is also possible to connect our FTDI-ATmega, USB-bigmultio or Cyclone dev board, or one of your own boards.

SV1-SV8 are the connectors for the RGB LEDs. SV1-SV8 are connected to IC1-IC8.
IC1 and IC5 are configured as one 16-bit deep shift register. Qa-Qh are connected to IC1, and Qi-Qp are connected to IC5.
IC2 and IC6 are configured as one 16-bit deep shift register. Qa-Qh are connected to IC2, and Qi-Qp are connected to IC6.
IC3 and IC7 are configured as one 16-bit deep shift register. Qa-Qh are connected to IC3, and Qi-Qp are connected to IC7.
IC4 and IC8 are configured as one 16-bit deep shift register. Qa-Qh are connected to IC4, and Qi-Qp are connected to IC8.
The control pins (!OE, LATCH, !RESET, CLK) of all shift registers are connected in parallel.
SER0 is connected to IC1.
SER1 is connected to IC2.
SER2 is connected to IC3.
SER3 is connected to IC4.
It is therefore required to update all shift registers at the same time.

Assembling the kit

LED Driver PCB

  • First, decide if you want to use 4 pushbutton switches (for the default firmware), 4 LEDs, or a mix (for custom firmware).
    • SW1 and R65 or D7 and R71
    • SW2 and R66 or D6 and R72
    • SW3 and R67 or D5 and R73
    • SW4 and R68 or D4 and R74
  • Mount all necessary SMD components. Which component should go where, can be found in the table below.
  • cut the header strips to the right length. Our suggestion:
    • cut the first strip in one 10-pin long strip, and 5 6-pin long strips.
    • cut the second header in 3 6-pin strips, and one 4-pin strip.
  • solder all headers in place
  • solder the desired switches in place
Component   Value
IC1-IC8     74HC595
R1-R64      220R
R65-R68     10K
R69-R74     1K
C1-C8       100nF
C9          10uF
T1-T3       N-channel FET
D1          Double Diode (BAT54S for example)
D2-D7       LED
SW1-SW4     Pushbutton

LED chains

Counting clockwise, starting at the LED to the right of the topmost LED:

Output  Pin#  Connector
Qp      8     SV6
Qo      7     SV6
Qn      6     SV6
Qm      5     SV6
Ql      4     SV6
Qk      3     SV6
Qj      2     SV6
Qi      1     SV6
Qg      7     SV2
Qf      6     SV2
Qe      5     SV2
Qd      4     SV2
Qc      3     SV2
Qb      2     SV2
Qa      1     SV2

All R, G and B pins should be connected in parrallel.

This is the same for each quadrant, only the connector numbers differ.

Putting it all together

External resources

http://www.fairchildsemi.com/ds/MM/MM74HC595.pdf

Pinout

SV10 is connected as follows

1GND
2GND
3SER0
4SER1
5SER2
6SER3
7!OE
8LATCH
9!RESET
10CLOCK
11R
12G
13B
14external clock source
15IO1
16IO0
17IO3
18IO2
19VCC
20VCC


SV1 through SV8 are connected as follows:

1A0
2A1
3A2
4A3
5A4
6A5
7A6
8A7
9R
10G
11B
12GND


SV9 can be used to connect an external clock source, or a servo motor, or...

1GND
2VCC
3connected to pin14 form SV10

Pin 3 has two clamping diodes attached, to limit the voltage range to GND-0.6V and VCC+0.6V.

  • D2 is connected to VCC from SV10
  • D3 is connected to USB power
  • D4 is connected to pin17 from SV10
  • D5 is connected to pin18 from SV10
  • D6 is connected to pin15 from SV10
  • D7 is connected to pin16 from SV10


  • Switch1 (next to R71) is connected to pin16 from SV10
  • Switch2 (next to R72) is connected to pin15 from SV10
  • Switch3 (next to R73) is connected to pin18 from SV10
  • Switch4 (next to R74) is connected to pin17 from SV10

Jumper settings

JP1: Power supply selection.
Open: LED driver board and microcontroller board have individual power supplies
Closed: VCC from LED driver board and microcontroller board are connected.

alternative use

If the complete device is powered from the microcontroller board, the jumper can be replaced with a toggle switch. This allows you to turn the LEDs on and off, without affecting timekeeping.

The software

The software supplied by BitWizard, is designed to run on the BitWizard Multio board, but it should be possible to port it to other boards. A link to the sources will be posted within a few days (It's Jan 9th 2012 at the moment).

Future hardware enhancements

  • Replace 2 12-pin connectors by 1 20-pin connector
  • Add numbers to the pushbutton switches

Changelog

1.0

  • Initial public release