From 616ec0c9a4501d0656398b838fb276dcd2cbfd36 Mon Sep 17 00:00:00 2001 From: Andy Lindsay Date: Thu, 9 May 2019 15:13:59 -0700 Subject: [PATCH] #191 Establish better ws2812b signal timing (round 1) --- .../Light/libws2812/cmm/libws2812.a | Bin 7480 -> 7480 bytes .../Simple Libraries/Light/libws2812/ws2812.c | 1 + .../Light/libws2812/ws2812b_start.c | 31 +++++++++++++++++- version.txt | 2 +- 4 files changed, 32 insertions(+), 2 deletions(-) diff --git a/Learn/Simple Libraries/Light/libws2812/cmm/libws2812.a b/Learn/Simple Libraries/Light/libws2812/cmm/libws2812.a index 0ec73b056d7765724f3031bc173f90dd78144278..0d186d3d558baeafbc86c58d8cfc363ec16b873d 100644 GIT binary patch delta 266 zcmdmCwZm$HB!{V~xrwp4h2ciUJ&c@Cj)B?a0B-Tke;Lm)!G$b=LSma=v2-#cgf<6o zUt^pc#PtyS<~%V?R1ulwjENGA zNji+li@5ySYG29YrKsD!GMu zIpad3q&P+{=hQgH4+4A~Yzz!MEUfaAKX6Q&EGK?ua+%ZwH3+i1$z1V3JQjBcLQA|w%JMg8zTS~%tK-T diff --git a/Learn/Simple Libraries/Light/libws2812/ws2812.c b/Learn/Simple Libraries/Light/libws2812/ws2812.c index 2fcbdff9..187ddfc2 100644 --- a/Learn/Simple Libraries/Light/libws2812/ws2812.c +++ b/Learn/Simple Libraries/Light/libws2812/ws2812.c @@ -31,6 +31,7 @@ typedef struct { // -- ns1h is 1-bit high timing (ns) // -- ns1l is 1-bit low timing (ns) // -- type is TYPE_GRB for ws2812 or ws2812b +// ws_start(state, 50, 350, 900, 900, 350, TYPE_GRB); // for ws2812b int ws_start(ws2812_t *state, int usreset, int ns0h, int ns0l, int ns1h, int ns1l, int type) { extern uint32_t binary_ws2812_driver_dat_start[]; diff --git a/Learn/Simple Libraries/Light/libws2812/ws2812b_start.c b/Learn/Simple Libraries/Light/libws2812/ws2812b_start.c index 73fd2f2d..5dd1dce3 100644 --- a/Learn/Simple Libraries/Light/libws2812/ws2812b_start.c +++ b/Learn/Simple Libraries/Light/libws2812/ws2812b_start.c @@ -15,7 +15,36 @@ int ws2812b_start(ws2812_t *state) { - return ws_start(state, 50, 350, 900, 900, 350, TYPE_GRB); + + /* + This is a temporary fix until a more suitable CogC + or PASM driver replaces the existing one. Tuning + actual vs. requested stays here until y = mx + b + is either ruled out or implemented. + */ + + // usreset, ns0h, ns0l, ns1h, ns1l, int type) + //return ws_start(state, 50, 350, 900, 900, 350, TYPE_GRB); + //return ws_start(state, 280, 410, 875, 875, 410, TYPE_GRB); + + // 523, 1070, 1040, 563, + //return ws_start(state, 280, 410, 875, 875, 410, TYPE_GRB); + // 461, 1015, 789, 398, + //return ws_start(state, 280, 300, 675, 600, 260, TYPE_GRB); + // 375, 1250, 1160, 414, + //return ws_start(state, 280, 250, 600, 700, 270, TYPE_GRB); + // 406, 1270, 1120, 440, + //return ws_start(state, 280, 275, 600, 700, 270, TYPE_GRB); + // 411, 871, 892, 429, + //return ws_start(state, 280, 300, 670, 725, 275, TYPE_GRB); + // 418, 860, 878, 414, + //return ws_start(state, 280, 300, 670, 715, 265, TYPE_GRB); + // 404, 871, 878, 407, + //return ws_start(state, 280, 295, 675, 715, 265, TYPE_GRB); + + // want 410, 875, 875, 410 + // measured 404, 871, 878, 408, + return ws_start(state, 280, 300, 675, 715, 270, TYPE_GRB); } /** diff --git a/version.txt b/version.txt index 45ebef9e..130cb285 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -v1.4.125 +v1.4.126