Fix interaction of SO92
, VirtualCT
, and RGBWWTable
#18768
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description:
Related issue (if applicable): fixes #15337
Previously, when
SO92
(pwm_ct_mode
) was enabled,VirtualCT
would not work at all, and 5th entry of theRGBWWTable
would affect the color temperature instead of the warm white intensity. With this patch, all options interact as intended. I did extensive testing with various modes to ensure that the code works as intended (cw
,rgb
,rgbw
,rgbww
with and withoutSO92
,SO105
in all applicable modes,RGBWWTable
, all withLEDTable
enabled and disabled).Nothing changes for users who have
SO92
disabled.For those that have
SO92
enabled but do not useVirtualCT
orRGBWWTable
, there are tiny changes to the color temperature whenLEDTable
is enabled, most notable at low brightness andct
values around 240 (25 %) and around 413 (75 %). If needed, I can provide an argument why I believe the new values to be more correct than the old ones.This restructure rendered some variables unnecessary, which I hence removed.
Checklist:
NOTE: The code change must pass CI tests. Your PR cannot be merged unless tests pass