kitesurfer1404 / WS2812FX

WS2812 FX Library for Arduino and ESP8266

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

WS2811 not working with ESP32 RMT example

silardg opened this issue · comments

Hi!
I've been testing the WS2811 with the esp32 rmt example, but I'm getting random colors.
When I set it to red it will show sometimes blue, cyan, orange ect.

Does this mean that I have to tweak the timing? Can you show me how to, because it doesn't include the 0h,0l,1h,1l parameters, but something combined.

Thanks

As you may have seen, the RMT driver hardcodes the pulse timing in this snippet:

// timing parameters for WS2812B LEDs. you may need to
// tweek these if you're using a different kind of LED
#define T1_TICKS      250 / RMT_TICK // 250ns
#define T2_TICKS      625 / RMT_TICK // 625ns
#define T3_TICKS      375 / RMT_TICK // 375ns
#define RESET_TICKS 50000 / RMT_TICK // 50us

Each clock "tick" is 25ns, so that's the timing resolution you have to work with. The sum of T1, T2 and T3 should be 1.25us, the bit stream pulse width.

The T1, T2 and T3 parameters correspond to the values in this diagram:
timing diagram

Good luck.

Will try and get back to you. The funny thing is that other ws2811 work fine, but mine not. It's like they are fake ones.

I don't have any WS2811s. They are 12V parts, right? Are you using a level shifter to drive the 12V Din pin? The Adafruit Uberguide has some good tips about driving and decoupling the LED strips, which can fix flakey behavior.

Hmm, it works now, it's interesting, because I have unscrewed everything and screwed back on. Probably the placement of the LEDs from the powersupply is very important too. Now it works well!

Will close this!

Thanks!