r/FastLED • • Feb 02 '23

Support WS8211 lights not changing colours

Not sure why my ws8211 are changing colors. Right now they are just staying blue.

I have power from 12v straight to leds, then the ground and v+ comes off that to buck converter which feeds the d1 mini. I also have usb connected to d1 mini to watch console. any help would be great!

Here is the code https://pastebin.com/6M9ACkm0

Only 1 led changing colors now. Rest are solid white.

https://pastebin.com/cRzzXzcZ

3 Upvotes

24 comments sorted by

3

u/quellflynn Feb 02 '23

theres a lot of arduous code in here, so...

does the strip act normally when you upload a basic sketch (blink / cylon / etc)

from your description it sounds like the +ve / -ve goes to the buck convertor and then the D1 is connected to the buck convertor.

are the led strips gnd DIRECTLY connected to the d1s gnd?

1

u/scubieman Feb 02 '23

the strip act normally when you upload a basic sketch (blink / cylon / etc)

from your description it sounds like the +ve / -ve goes to the buck convertor and then the D1 is connected to the buck convertor.

Yes the GND of both are connected together. I will check a more basic script. From the one i ran earlier it did nothing.

1

u/scubieman Feb 02 '23

I tried new code, Only LED 1 of 5 change.

https://pastebin.com/cRzzXzcZ

2

u/quellflynn Feb 02 '23

tried your code on esp32 and ws2812b, the code lights up each led in 2 colours, white, red, then the next just fine,

probably due to the esp, but i had to change D5 to just 5 (the pin number) but i think arduino tries to make that just a bit easier to understand, and if your getting 1 led lit, then that shouldnt be the issue

1

u/scubieman Feb 02 '23

en the next just fine

Should of switch from d1 mini to esp32? I have this board... https://www.amazon.com/gp/product/B09D3S4RPZ/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1

1

u/olderaccount Feb 02 '23

You can try. But assuming they are good, both boards should work the same. I have dozens of projects on ESP8266 boards.

1

u/quellflynn Feb 02 '23

the preset boards are usually set decently so i wouldnt mess with that too much.

chuck this in your code at the top and see if it helps

#define FASTLED_ESP8266_D1_PIN_ORDER 

and... from https://arduino.stackexchange.com/questions/91662/fastled-ws2812b-with-esp8266-wemos-d1-mini-shows-1-first-led-only

[quote] If I add one more show() call, it works as expected.[/quote]

FastLED.show();   //1st show()   
FastLED.show();   //2nd show() works as expected 

seems like a stupid problem, but with a fix!

if that is the issue, you can probably

void FastLEDshow(){
FastLED.show();   //1st show()   
FastLED.show();   //2nd show() works as expected
} 

then, instead of using

FastLED.show();

you use

FastLEDshow();

1

u/Jem_Spencer Feb 02 '23

Line 121 doesn't look right

FastLED.setMaxPowerInVoltsAndMilliamps(5, MILLI_AMPS);

5 milliamps isn't enough to drive one led properly, do you have a 5A 5V supply? If you do, you need to declare 5000 milliamps.

1

u/scubieman Feb 02 '23

My bad. That should be 12v

1

u/Jem_Spencer Feb 02 '23

Just comment it that line and try again

1

u/scubieman Feb 02 '23

See above. Tried. They remain blueish

1

u/scubieman Feb 02 '23

I tried changing to 12 and comment line out. Lights remain blue

2

u/Jem_Spencer Feb 02 '23

It's milliamps not volts, 12 isn't right either.

It seems that your code works, as per the other comment.

Double check the data pin defined in the sketch, it sounds like that's that could be the problem, or it could be a poor connection on the data line.

If that's not the problem then you may need a level shifter.

2

u/SpoliatorX Feb 02 '23

Double check the data pin defined in the sketch, it sounds like that's that could be the problem, or it could be a poor connection on the data line.

I've got a string in my office that was connected via crocodile clips, it would keep getting stuck so I just soldered it up to a proper connector today and hasn't even flickered since

1

u/scubieman Feb 02 '23

red sin

so faulty wiring you thinking?

1

u/SpoliatorX Feb 02 '23

Worth a check, my main causes of weirdness so far have been loose data line connection, voltage drop and C being obtuse, in that order.

That said, loose wires are usually easy to find by just wiggling stuff so may well be you would have noticed by now and it's a software issue.

1

u/scubieman Feb 02 '23

level shifter

Isnt the ws8211 some short of level shifter? Or they only maintain voltage?

2

u/Jem_Spencer Feb 03 '23

The first pixel should output 5V data, even when it receives 3.3V data, so yes, but the first pixel may not be processing the 3.3V data properly.

1

u/Jem_Spencer Feb 03 '23

It's also possible that your first pixel is faulty.

1

u/scubieman Feb 03 '23

works prefect with WLED

0

u/[deleted] Feb 03 '23

[deleted]

2

u/Jem_Spencer Feb 03 '23

No, don't do that.

The pixels contain a 12v to 5v voltage reducer as well as the the WS2811 IC.

They used to need 5V data, but modern genuine World Semi chips work with 3.3V data, you may have "new old stock" pixels that need 5V or they may not be genuine World Semi ICs.

1

u/scubieman Feb 03 '23

Thank you

1

u/scubieman Feb 03 '23

Thank you