I2SClocklessLedDriver icon indicating copy to clipboard operation
I2SClocklessLedDriver copied to clipboard

Change signal timings for other protocol

Open ScobbyDoo opened this issue 3 years ago • 6 comments

1:-Right now on ws 2811 works fine, i need to change signal timings th0 tl0 th1 tl1 according other chipset.

2:- Even more ,how to assign DMX signal timings for output instead of ws2811 protocol timings.Screenshot_20211231-190418_WhatsAppBusiness.jpg

ScobbyDoo avatar Dec 31 '21 13:12 ScobbyDoo

I want to understand you want the i2s to output dmx data following the dmx protocol. ?

hpwit avatar Dec 31 '21 17:12 hpwit

Yes

Is their any timer calculation available foe that?

ScobbyDoo avatar Dec 31 '21 18:12 ScobbyDoo

It’s totally feasible but the buffer need to be reversed and the led signal is 3 ´ticks’ for one bit and here one tuck per bit

hpwit avatar Dec 31 '21 20:12 hpwit

Reversing buffer ,may be i can manage, But what about ticks? 2811 needs 24 bit shifting & dmx dont support that

ScobbyDoo avatar Jan 01 '22 12:01 ScobbyDoo

Hello For the leds if you want to send a 0 you need to send 1 for a certain period of time and then 0 for another And the difference between 0 and 1 is the duration of the 0 and the 1. That is the reason TH and TL. For simplicity and efficient the timing of the 2811 and 2812 is split in three ticks. To send a 0 I need to send a 1,0,0 and to send a 1 I need to send 1,1,0. Of course as for the ws2812 the bit timing is 800khz the tick frequency is 2.4mhz. if you want to send dmx like you need to take the code of the apa102. As for these if you want to send 1 you just send 1. I hope I was clear

hpwit avatar Jan 01 '22 12:01 hpwit

https://github.com/FastLED/FastLED/blob/b5874b588ade1d2639925e4e9719fa7d3c9d9e94/src/chipsets.h#L568

Here is timing for fastled Where do i found in clockless library to Change timing?

I will test and add pull request for custom chipset same as fastled

ScobbyDoo avatar Sep 06 '22 11:09 ScobbyDoo