Difference between revisions of "LED Matrix Failure"

From eLinux.org
Jump to: navigation, search
(Layout)
(Layout)
Line 13: Line 13:
 
= Layout =
 
= Layout =
  
* Left->Right Left->Right
+
== Left->Right Left->Right ==
The Dotstar LEDs are arranged in a chained sequence. the intention was to cut the strips and align them with on the fabric in a left to right sequence similar to tradition LCD panels. this sequence is typically something like this for an 5x5 pixel example:
+
The Dotstar LEDs are arranged in a chained sequence. the intention was to cut the strips and align them with on the fabric in a "left to right - left to right" sequence similar to tradition LCD panels. this sequence is typically something like this for an 5x5 pixel example:
 
<pre>
 
<pre>
 
01 02 03 04 05
 
01 02 03 04 05
Line 24: Line 24:
  
 
the issue with this that to implement this with the LED strips, two wires need to connect the end of one LED strip to the beginning of the next, in the 5x5 pixel example above, the SPI clock and data need to connect from the end at 05 to the beginning of the next line at 06. this creates a wiring nightmare on the back side of the design:
 
the issue with this that to implement this with the LED strips, two wires need to connect the end of one LED strip to the beginning of the next, in the 5x5 pixel example above, the SPI clock and data need to connect from the end at 05 to the beginning of the next line at 06. this creates a wiring nightmare on the back side of the design:
 +
<br>
 
[[File:Backside-wiring-led.jpg|300px]]  
 
[[File:Backside-wiring-led.jpg|300px]]  
 
[[File:Backside-closeup-led.jpg|300px]]
 
[[File:Backside-closeup-led.jpg|300px]]
  
* Left->Right Right->Left
+
the thought was by design it this way, and working similar to existing display devices, software support would be easy and require little or no effort to implement. while this was true the long wires created both signaling and logistical problems during implementation.
 +
 
 +
== Left->Right Right->Left ==
 +
To remove the need for the long wires it makes more sense hardware wise to implement the strips using the "left to right - right to left" sequence. this is represented again in a 5x5 pixel example:
 +
<pre>
 +
01 02 03 04 05
 +
10 09 08 07 06
 +
11 12 13 14 15
 +
20 19 18 17 16
 +
21 22 23 24 25
 +
</pre>
 +
 
 +
as you can see the encoding is a little more difficult, but it can be easily handled in software to sequence this. the trade off here between a little more difficult in software, and a LOT easier in hardware, really is the only choice.
  
 
= Connections =
 
= Connections =

Revision as of 12:15, 2 September 2015

Goal

Document the failure and redesign of a LED Matrix display consisting of 30 strips of Adafruit Dotstar LEDs.
LED-matric.jpg

Components

Layout

Left->Right Left->Right

The Dotstar LEDs are arranged in a chained sequence. the intention was to cut the strips and align them with on the fabric in a "left to right - left to right" sequence similar to tradition LCD panels. this sequence is typically something like this for an 5x5 pixel example:

01 02 03 04 05
06 07 08 09 10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25

the issue with this that to implement this with the LED strips, two wires need to connect the end of one LED strip to the beginning of the next, in the 5x5 pixel example above, the SPI clock and data need to connect from the end at 05 to the beginning of the next line at 06. this creates a wiring nightmare on the back side of the design:
Backside-wiring-led.jpg Backside-closeup-led.jpg

the thought was by design it this way, and working similar to existing display devices, software support would be easy and require little or no effort to implement. while this was true the long wires created both signaling and logistical problems during implementation.

Left->Right Right->Left

To remove the need for the long wires it makes more sense hardware wise to implement the strips using the "left to right - right to left" sequence. this is represented again in a 5x5 pixel example:

01 02 03 04 05
10 09 08 07 06
11 12 13 14 15
20 19 18 17 16
21 22 23 24 25

as you can see the encoding is a little more difficult, but it can be easily handled in software to sequence this. the trade off here between a little more difficult in software, and a LOT easier in hardware, really is the only choice.

Connections

  • power connections
  • long wires
  • broken flex pads

Signal Issues

  • long SPI signals
  • quick fix

PCB Design

  • signals
  • layout
  • features
  • eagle files
  • soldering