diff options
author | Matt Ranostay <mranostay@gmail.com> | 2013-12-26 16:23:00 -0800 |
---|---|---|
committer | Uwe Hermann <uwe@hermann-uwe.de> | 2013-12-27 17:08:41 +0100 |
commit | 8151708077e865a809f64c20fd323f41b0876f76 (patch) | |
tree | 60fd6c542570bfd47620237055ca1c9617f3265a /led/ws281x | |
parent | 3a43022e1d7aff871a069e773b67187ea320464f (diff) | |
download | sigrok-dumps-8151708077e865a809f64c20fd323f41b0876f76.tar.gz sigrok-dumps-8151708077e865a809f64c20fd323f41b0876f76.zip |
ws281x: Add WS2812B protocol dump
Four universe dump of WS2812B LED strips driving using a AM335x PRU firmware.
Signed-off-by: Matt Ranostay <mranostay@gmail.com>
Diffstat (limited to 'led/ws281x')
-rw-r--r-- | led/ws281x/README | 53 | ||||
-rw-r--r-- | led/ws281x/ws281x_4ch_5mhz.sr | bin | 0 -> 110401 bytes |
2 files changed, 53 insertions, 0 deletions
diff --git a/led/ws281x/README b/led/ws281x/README new file mode 100644 index 0000000..392acaa --- /dev/null +++ b/led/ws281x/README @@ -0,0 +1,53 @@ +------------------------------------------------------------------------------- +WS2812B LED strip +------------------------------------------------------------------------------- + +This is a capture of data output to 4 LED universes of 256 RGB LEDs. +Every universe has a frame size of 768 bytes and the dumps are clocked at +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 + - 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. + + 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 +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. + + +Logic analyzer setup +-------------------- + +The logic analzyer used was a Saleae Logic16 (at 5MHz). + + Probe WS2812B LED strip + ----------------------------- + 1 (black) Universe #1 + 2 (brown) Universe #2 + 3 (red) Universe #3 + 4 (orange) Universe #4 + + +Data +---- + +The data contains various RGB values and frames. + +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 diff --git a/led/ws281x/ws281x_4ch_5mhz.sr b/led/ws281x/ws281x_4ch_5mhz.sr Binary files differnew file mode 100644 index 0000000..76f600d --- /dev/null +++ b/led/ws281x/ws281x_4ch_5mhz.sr |