-
-
Notifications
You must be signed in to change notification settings - Fork 3.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix errors in DDP implementation #3193
Conversation
If this is true then it should be fixed upstream. Please contact @forkineye. |
@blazoncek This code is not in the upstream but was added inside the WLED repo ( https://github.com/forkineye/ESPAsyncE131/blob/7ff3c945e6750308db6619814b7e75f585d60aab/ESPAsyncE131.h#L53 there is no reference to DDP in the upstream repo) If i use |
In such case let's see what @Aircoookie has to say. |
Looks like the specs were updated after the change to WLED was made. |
Just to state the obvious, this is the spec http://www.3waylabs.com/ddp/ I've been using. You are right, using waybackmachine https://web.archive.org/web/20200223131548/http://www.3waylabs.com/ddp/ the spec uses a different alignment which tracks. The older spec has a different alignment but even then I'm not sure that the code is valid, the older spec with this aligns to 8 bits per pixel so maybe there was confusion if the spec referred to pixel or channel? |
Allow receiving of RGBW DDP with either old or new bits per channel value
Hi! I'm 99% certain that |
This reverts commit 7d84de6.
I think these values are wrong given the spec.
0x0A
in binary is 0b00001010Spec is:
So in this case,
0x0A
maps to 010 which means 2, 4 bits per pixelbut really what the constant wants to represent is 24 bits, which should be 110 so
0x0D
and 32 bits should be0x1E