-
Notifications
You must be signed in to change notification settings - Fork 3.1k
Deprecate and remove ws2812 effects (and provide an in-Lua replacement) #3122
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
Comments
The ws2812_effects module consists of two main functionalities which are interwoven and should be separated.
So there should be a player and separate effects which can be passed to the player. Originally I was planning to adapt the module also, but I agree that both should be doable in Lua. Should we sneak in a deprecation warning in the module then before the release? @marcelstoer Do you have statistics of the usage in the cloud builder of this module? |
@HHHartmann Sneaking a deprecation warning seems like a good plan to me. Since we don't have a replacement module ready, point at this issue? FWIW, I've been mocking up a proposal for |
This is more of a suggestion than a viable submission; someone please take this from me. See nodemcu#3122
This probably should not yet land in the tree, since it's sort of rude if anyone's actually using this thing. See nodemcu#3122
This is more of a suggestion than a viable submission; someone please take this from me. See nodemcu#3122
This probably should not yet land in the tree, since it's sort of rude if anyone's actually using this thing. See nodemcu#3122
This is more of a suggestion than a viable submission; someone please take this from me. See nodemcu#3122
This is work in progress towards nodemcu#2916 This includes some untested hackery to keep the deprecated ws2812_effects compiling. We anticipate this module going away soon, however. See nodemcu#3122
This is work in progress towards nodemcu#2916 While here, document the ws2812 UART-based overlapping with mainline execution. Fixes nodemcu#3140 This includes some untested hackery to keep the deprecated ws2812_effects compiling. We anticipate this module going away soon, however. See nodemcu#3122
This is more of a suggestion than a viable submission; someone please take this from me. See nodemcu#3122
This is work in progress towards nodemcu#2916 While here, document the ws2812 UART-based overlapping with mainline execution. Fixes nodemcu#3140 This includes some untested hackery to keep the deprecated ws2812_effects compiling. We anticipate this module going away soon, however. See nodemcu#3122
This is more of a suggestion than a viable submission; someone please take this from me. See nodemcu#3122
I have been thinking about this. It certainly would be good to allow individual effects in Lua but on the other hand executing some effects that change many pixels individually will take around factor 100 longer to execute in Lua than in C. But then, looking at the existing effects at most the flickering effects modify several pixels, but not that many, so that might be neglected. |
If there are bulk editing combinators that would be useful to have in C, we should add them to Failing any of that, I'd still move to merge #3158 if someone can test that |
This is work in progress towards nodemcu#2916 While here, document the ws2812 UART-based overlapping with mainline execution. Fixes nodemcu#3140 This includes some untested hackery to keep the deprecated ws2812_effects compiling. We anticipate this module going away soon, however. See nodemcu#3122
This is work in progress towards nodemcu#2916 While here, document the ws2812 UART-based overlapping with mainline execution. Fixes nodemcu#3140 This includes some untested hackery to keep the deprecated ws2812_effects compiling. We anticipate this module going away soon, however. See nodemcu#3122
This is more of a suggestion than a viable submission; someone please take this from me. See nodemcu#3122
This is work in progress towards nodemcu#2916 While here, document the ws2812 UART-based overlapping with mainline execution. Fixes nodemcu#3140 This includes some untested hackery to keep the deprecated ws2812_effects compiling. We anticipate this module going away soon, however. See nodemcu#3122
This is more of a suggestion than a viable submission; someone please take this from me. See nodemcu#3122
This is work in progress towards nodemcu#2916 While here, document the ws2812 UART-based overlapping with mainline execution. Fixes nodemcu#3140 This includes some untested hackery to keep the deprecated ws2812_effects compiling. We anticipate this module going away soon, however. See nodemcu#3122
This is more of a suggestion than a viable submission; someone please take this from me. See nodemcu#3122
@nwf @HHHartmann Just noticing this topic: I originally implemented the effects library. Unfortunately there is no time to work on it right now, so fine with anything you do to bring the overall led support forward. Reason for the C implementation is that the performance in lua on the 8266 has been unacceptable. I initially implemented this in user code, but the array operations and copying them down to the buffer would not allow smooth animations. This should be considered when changing the implementation. I ran that on 300px strips. If you need someone to test a new implementation, let me know. |
@skycoders Hi! I suspect what we will find is that there are transforms we want to add to I don't happen to have any 300px strips, but that shouldn't stop us from using a 300 pixel buffer for testing. When I or, more likely, @HHHartmann have a concrete proposal, we'll be sure to ask; thanks for offering! :) |
This is work in progress towards nodemcu#2916 While here, document the ws2812 UART-based overlapping with mainline execution. Fixes nodemcu#3140 This includes some untested hackery to keep the deprecated ws2812_effects compiling. We anticipate this module going away soon, however. See nodemcu#3122
This is work in progress towards nodemcu#2916 While here, document the ws2812 UART-based overlapping with mainline execution. Fixes nodemcu#3140 This includes some untested hackery to keep the deprecated ws2812_effects compiling. We anticipate this module going away soon, however. See nodemcu#3122
This is work in progress towards nodemcu#2916 While here, document the ws2812 UART-based overlapping with mainline execution. Fixes nodemcu#3140 This includes some untested hackery to keep the deprecated ws2812_effects compiling. We anticipate this module going away soon, however. See nodemcu#3122
This is work in progress towards nodemcu#2916 While here, document the ws2812 UART-based overlapping with mainline execution. Fixes nodemcu#3140 This includes some untested hackery to keep the deprecated ws2812_effects compiling. We anticipate this module going away soon, however. See nodemcu#3122
The new pixbuf module has more functionality than the ws2812-specific buffer it replaces. This is work in progress towards nodemcu#2916 While here, document the ws2812 UART-based overlapping with mainline execution. Fixes nodemcu#3140 This includes some untested hackery to keep the deprecated ws2812_effects compiling. We anticipate this module going away soon, however. See nodemcu#3122
The new pixbuf module has more functionality than the ws2812-specific buffer it replaces. This is work in progress towards nodemcu#2916 While here, document the ws2812 UART-based overlapping with mainline execution. Fixes nodemcu#3140 This includes some untested hackery to keep the deprecated ws2812_effects compiling. We anticipate this module going away soon, however. See nodemcu#3122
The new pixbuf module has more functionality than the ws2812-specific buffer it replaces. This is work in progress towards nodemcu#2916 While here, document the ws2812 UART-based overlapping with mainline execution. Fixes nodemcu#3140 This includes some untested hackery to keep the deprecated ws2812_effects compiling. We anticipate this module going away soon, however. See nodemcu#3122
The new pixbuf module has more functionality than the ws2812-specific buffer it replaces. This is work in progress towards nodemcu#2916 While here, document the ws2812 UART-based overlapping with mainline execution. Fixes nodemcu#3140 This includes some untested hackery to keep the deprecated ws2812_effects compiling. We anticipate this module going away soon, however. See nodemcu#3122
The new pixbuf module has more functionality than the ws2812-specific buffer it replaces. This is work in progress towards nodemcu#2916 While here, document the ws2812 UART-based overlapping with mainline execution. Fixes nodemcu#3140 This includes some untested hackery to keep the deprecated ws2812_effects compiling. We anticipate this module going away soon, however. See nodemcu#3122
The new pixbuf module has more functionality than the ws2812-specific buffer it replaces. This is work in progress towards nodemcu#2916 While here, document the ws2812 UART-based overlapping with mainline execution. Fixes nodemcu#3140 This includes some untested hackery to keep the deprecated ws2812_effects compiling. We anticipate this module going away soon, however. See nodemcu#3122
The new pixbuf module has more functionality than the ws2812-specific buffer it replaces. This is work in progress towards nodemcu#2916 While here, document the ws2812 UART-based overlapping with mainline execution. Fixes nodemcu#3140 This includes some untested hackery to keep the deprecated ws2812_effects compiling. We anticipate this module going away soon, however. See nodemcu#3122
This is more of a suggestion than a viable submission; someone please take this from me. See nodemcu#3122
The new pixbuf module has more functionality than the ws2812-specific buffer it replaces. This is work in progress towards nodemcu#2916 While here, document the ws2812 UART-based overlapping with mainline execution. Fixes nodemcu#3140 This includes some untested hackery to keep the deprecated ws2812_effects compiling. We anticipate this module going away soon, however. See nodemcu#3122
This is more of a suggestion than a viable submission; someone please take this from me. See nodemcu#3122
The new pixbuf module has more functionality than the ws2812-specific buffer it replaces. This is work in progress towards nodemcu#2916 While here, document the ws2812 UART-based overlapping with mainline execution. Fixes nodemcu#3140 This includes some untested hackery to keep the deprecated ws2812_effects compiling. We anticipate this module going away soon, however. See nodemcu#3122
The new pixbuf module has more functionality than the ws2812-specific buffer it replaces. This is work in progress towards nodemcu#2916 While here, document the ws2812 UART-based overlapping with mainline execution. Fixes nodemcu#3140 This includes some untested hackery to keep the deprecated ws2812_effects compiling. We anticipate this module going away soon, however. See nodemcu#3122
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
I am reopening this as https://nodemcu.readthedocs.io/en/release/modules/ws2812-effects/ points here. |
There is no reason whatsoever that this module should be in C; timers and ws2812 frame buffers are easily managed from Lua. Worse, its existence complicates implementing #2916, which is obviously a good idea for the health of the entire tree.
If it were up to me, I'd just rip it out wholesale right now. But I recognize it's not, so I wonder if someone who cares about the module would like to write Lua equivalents of each of its effects for inclusion in
lua_examples
.If it turns out that there are operations that cannot be easily achieved from Lua, then we should augment the buffer interface until that's not true, and I would gladly add such things to my nascent #2916 implementation.
The text was updated successfully, but these errors were encountered: