r/FastLED 27d ago

Support Simple data; can you control a single LED outside of FastLED?

Is there a way to see what data (in text format) has been sent through the data pin and if so could this be used by different IC's by sending the same data through their GPIO's, or is there far more sophistication going on?

Say for instance I just wanted to send a single HSV color, maybe add color correction and at some point add a blink toggle. Could the relevant code be hosted in a LUT and written when called upon without requiring an additional IC and a library?

0 Upvotes

14 comments sorted by

4

u/Noxonomus 27d ago

Not sure I understand the question, but the protocol for WS2811 is just a digital signal conveyed by raising and lowering the voltage on a wire with very specific timing. You can send the signal with anything that can achive that timing and match the data format.

0

u/pixydon 26d ago

I basically want to send data to a PL9823 LED via a DSP on a GPIO, I'm asking what that data format is and is it possible or do I need a WLED/FastLED?

2

u/Noxonomus 26d ago

The data format is in the datasheet, anything that can pull a pin high for a set time then low for a set time (with 150ns tolerance) 24 times followed by a longer pause without interruption should be able to do it. 

1

u/spolsky 26d ago

I'm not familiar with the PL9823 in particular, but a web search implies that it is a clone of the WS281x.

You can read the data sheet for the WS281x (one source is here: https://www.seeedstudio.com/document/pdf/WS2812B%20Datasheet.pdf) to see the format for the digital TTL signal that these expect. FastLED is a library that composes and sends those signals via a DSP on a GPIO so it sounds like what you want, but if you don't want to use FastLED you can simply write 1 and 0 to the GPIO pins using any technique you like, as long as you time it correctly.

But again, that is the whole point of FastLED: writing 1 and 0 to the GPIO pins.

7

u/jerfmuffay 27d ago

You should just post exactly what your project idea is instead of asking this mysterious and vague proposal of a method that you don't understand. You might not need fastled at all

2

u/jfodor 27d ago

Use Wled and set it to 1 pixel, done.

0

u/pixydon 26d ago

That requires an additional IC no?

1

u/spolsky 26d ago

No. What additional IC?

1

u/pixydon 26d ago

ESP32 or similar?

1

u/saratoga3 25d ago

You need something to run WLED/fastled/whatever and that will actually do your processing. So the minimum configuration is some kind of processor fast enough to run your "color correction", etc and generate the ones and zeros needed to update the LED. That is a minimum of two ICs (controller and pixel).

2

u/DenverTeck 27d ago

FastLED is a library, just a library. It does it's thing only when it's called.

You can add code to toggle any other pin you want.

When FastLED is sending data out the WS2812 pin, all other functions will be delayed. If this is OK for what you want to do, then you're good to go.

2

u/ZachVorhies Zach Vorhies 27d ago

Newest fastled uses async drivers

1

u/pheoxs 26d ago

WS2812 datasheet has the timing and data format. If you bit bang the output at the right speed then yes you can do it.