summaryrefslogtreecommitdiff
path: root/led/ws281x/README
diff options
context:
space:
mode:
Diffstat (limited to 'led/ws281x/README')
-rw-r--r--led/ws281x/README15
1 files changed, 8 insertions, 7 deletions
diff --git a/led/ws281x/README b/led/ws281x/README
index 392acaa..b933a8e 100644
--- a/led/ws281x/README
+++ b/led/ws281x/README
@@ -8,31 +8,31 @@ roughly 100 frames per second.
Details:
- Koen Kooi's evil vendor tree: https://github.com/koenkooi/kernel
- - PRU WS281x firmware: https://github.com/mranostay/ws28xx-lighting-pru
+ - PRU WS28xx firmware: https://github.com/mranostay/ws28xx-lighting-pru
- WS2812B datasheet: http://www.adafruit.com/datasheets/WS2812.pdf
WS2812B protocol overview
-------------------------
-All values have +/- tolerance of 150 nanoseconds so the PRU firmware uses
-slightly different timing value below to sync the high/low transitions.
+All values have a +/- tolerance of 150 nanoseconds so the PRU firmware uses
+the slightly different timing values below to sync the high/low transitions.
Logic low -> high 0.40 uS -> low 0.85 uS (1.25 uS)
Logic high -> high 0.80 uS -> low 0.45 uS (1.25 uS)
Latch -> low 50 uS
-Each LED receives and the stores the first 24-bits of GRB ordered data then
+Each LED receives and then stores the first 24-bits of GRB ordered data then
passes any more out the Data Output pin to the next LED in the chain.
-This functions as a "reverse" shift register and allows the strip length not to
-be defined in the protocol.
+This functions as a "reverse" shift register and allows the strip length not
+to be defined in the protocol.
Logic analyzer setup
--------------------
-The logic analzyer used was a Saleae Logic16 (at 5MHz).
+The logic analyzer used was a Saleae Logic16 (at 5MHz):
Probe WS2812B LED strip
-----------------------------
@@ -51,3 +51,4 @@ The sigrok command line used was:
sigrok-cli --driver saleae-logic16 --samples 10M --config samplerate=5mhz \
-p 0=UNI1,1=UNI2,2=UNI3,3=UNI4 -o ws281x_4ch_5mhz.sr
+