-
Notifications
You must be signed in to change notification settings - Fork 13
Feature: Store pre-defined color sequences for easy reference #5
Comments
Oh, when a sequence is running it would be interrupted by the next command received - either a direct POST to /color with a valid command or the exec command for the next pre-programmed sequence. |
Rough ideas for a possible interface: /sequence /sequence/{id} /sequence/{id}/run |
Currently I was planning a different approach for creating scenes/animationSets but haven't got to finalizing the implementation. The idea was, to send an animationSet (a List/array of consecutive steps) including a parameter 'count'.
It will fade from h=100 to h=200 in 5s, stay at h=200 for 10s, fade to h=100 in 5s There are already some skeletons for this implementation: I'd prefer to go this route and keep any information besides the configuration outside of the controller. I find it easier to have a central configuration for a sequence which will be send as command to the controller when needed. (no need for keeping sequences in sync, no need for extra installation, simply put controller into the system and use it) |
Hmmm, I see your point, especially when thinking about multiple controllers in an environment. |
For now the idea was, to use In regards to complex animations: the current idea will be limited to roughly 50-100 steps due to ram limitations for parsing large requests. (But needs to be further tested how large the actual request package can be before the esp is at it's ram limit). For more complex animations (once that require randomization, or more fine grained timing/control) I would also propose to extend the RGBWWLed Library with these animations. But let's see first if this is required? Either way, I happily accept pull requests for the project - so feel free to fork and implement it :-) |
Sounds real good to me. 0 for "run indefinitely" is fine, just wanted to
make sure that the option is/will be there.
50-100 steps should be plenty for animations imo.
If not, one could still implement a more tightly packed format for
transferring the animations (2-dimensional array with fixed position
parameters in the inner array for example) in order to save on RAM.
Regarding forking the code... yeah... I already cloned it, set up an
environment and even managed to compile it after a bit of fiddling
around, but...
I don't really get how it is all glued together. I'm not a real C/C++
guy myself. Arduino sketches are fine (I have some experience with
those), but your code is currently way beyond my skills.
I mean, I understand what portions of it do (mostly), but have trouble
navigating it.
I wouldn't be sure how to go about extending it with new functionality
without messing things up. Badly.
If you ever find the time to give me an introduction, I'd be happy to
try my hand at it though.
Am 08.12.2016 um 07:39 schrieb Patrick Jahns:
…
For now the idea was, to use |"count": 0| as indicator if the loop
should run indefinitely.
Stop the animation should be as simple as sending either a new command
(fade/color) or a new animationSet.
Even turning off is just sending |"v":0| as color/fade - so that
should not be a problem at all.
In regards to complex animations: the current idea will be limited to
roughly 50-100 steps due to ram limitations for parsing large
requests. (But needs to be further tested how large the actual request
package can be before the esp is at it's ram limit).
For more complex animations (once that require randomization, or more
fine grained timing/control) I would also propose to extend the
RGBWWLed Library with these animations. But let's see first if this is
required?
Either way, I happily accept pull requests for the project - so feel
free to fork and implement it :-)
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#5 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AWpXhYVDmcO_7Pf4_gLlRhIF8ZokeBkeks5rF6YfgaJpZM4LGhwo>.
|
I'd love to be able to do the following:
Also, it should be possible to make the controller execute a given sequence a defined number of times or indefinitely (looping).
This would essentially make the controller truly programmable, e.g. store a fire simulation for creating a cosy atmosphere when cuddling on the sofa with your SO or pre-program some wild color sequences for the next party.
The text was updated successfully, but these errors were encountered: