DDP Schemes for Light (5) and WS2812 (15) with USE_NETWORK_LIGHT_SCHEMES #14017
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 #
This PR adds new Schemes that has the Light or WS2812 strip listen to a DDP stream (UDP on port 4048). This allows the light to be controlled by external sources like xLights, LEDFx, WLED, etc. In my testing (8x8 matrix attached to ESP32C3 12F devkit) this implementation works for, as expected, ~20 FPS effects smoothly. Folks wanting higher frame rates should obviously use a dedicated firmware as has been suggested in prior feature requests related to DMX/E131, but I am able to achieve quite satisfying effects with this on bulbs (which I prefer to keep on Tasmota due to recovery features) as well as addressable panels to add to existing setups.
To prevent the breaking change in scheme numbering and reduce space use in general, the entire change is wrapped in requiring
USE_NETWORK_LIGHT_SCHEMES
which when enabled added 1100 bytes to tasmota.binChecklist:
NOTE: The code change must pass CI tests. Your PR cannot be merged unless tests pass