Configuration Help #41
-
Hi, I have 3 Riing Plus fans hooked up to a standard controller. I would like to replicate the "Aurora" effect found in the original software (which keeps freezing the animation and fan sensors in the stock program). From what I understand I would have to fade between different preset RGB color sets to achieve this, correct? (The effect smoothly flows between colors like the Aurora Borealis). If so, it seems as though it has to be done via a schedule trigger? I cannot seem to figure out a way to program fades between color sets based on time intervals (if this is the best approach). Additionally, it would be nice to fade the brightness of the whole set between two preset system times. I don't see any options for layering modifiers, correct? Can you please provide some direction for this. Thanks in advance! |
Beta Was this translation helpful? Give feedback.
Replies: 18 comments
-
I think the default effect is just a WaveEffect with rainbow colors. So you would have to set the Colors list with rainbow colors for 12 leds. Unless you are talking about something different. The develop build also has a nicer way of specifying colors with a gradient instead of one color per led but that is not documented yet. There is no way to smoothly transition between different effects, its just instant for now. If you add one effect that has dim colors with a ScheduleTrigger, and then add another with normal colors with AlwaysTrigger it will work like you want. If the ScheduleTrigger is not enabled it will fall back to the next effect. "Effects": [
{
"Type": "WaveEffect",
"Config": {
...
"Trigger": {
"Type": "ScheduleTrigger",
"Config": {
...
}
}
}
},
{
"Type": "WaveEffect",
"Config": {
...
"Trigger": {
"Type": "AlwaysTrigger"
}
}
}
] |
Beta Was this translation helpful? Give feedback.
-
Thank you for the advice. The effect I was hoping to re-create is shown here: The other effect I was hoping to re-create was the "party" mode, but I haven't found a good way to do that: Is this the proper way to configure the schedule trigger to work from 8pm to 7am? (Can't test on my computer at the moment.) Thanks again for your work on this, it's a life saver. |
Beta Was this translation helpful? Give feedback.
-
Like I said there is no way to smoothly transition between effects, only instant. You can kinda cheat that effect by specifying more colors that you have leds in WaveEffect and creating a custom device (in Plugins\Devices) and finally setting all ports to use that new device type. More colors will create a smooth gradient and WaveEffect will rotate them (and the fan will only show first 12). Nice that its doable without a separate effect but I will just add AuroraEffect. There is no way to create party mode other than writing a new effect from scratch. There is SoundEffect but that works as a simple audio spectrum visualizer (each led responds to a specific audio frequency). The time schedule cant cross days, but you can specify time from 7am to 8pm and invert it: {
"Type": "ScheduleTrigger",
"Config": {
"Scope": "Day",
"Schedule": [
"07:00 -> 20:00"
],
"Value": false
}
} So it will return false (and the next effect will be enabled) when time is between 07:00 and 20:00, otherwise returns true (and enable current effect). |
Beta Was this translation helpful? Give feedback.
-
Pushed a build with AuroraEffect, you can download it here. Defaults: {
"Type": "AuroraEffect",
"Config": {
"TickInterval": 1,
"Length": 64,
"ColorGenerationMethod": "PerPort",
"Trigger": {
"Type": "AlwaysTrigger"
}
}
}
You can also try changing On the develop branch all effects were updated to {
"Type": "StaticColorEffect",
"Config": {
"Color": {
"Full": [255, 0, 0],
"PerLed": [
[255, 0, 0],
[0, 255, 0],
[0, 0, 255],
...
],
"Gradient": [
[0.0, [255, 0, 0]],
[0.5, [0, 255, 0]],
[1.0, [0, 0, 255]]
]
},
"Trigger": {
"Type": "AlwaysTrigger"
}
}
}, Only one of |
Beta Was this translation helpful? Give feedback.
-
Thank you for the quick reply and development of the Aurora effect! I have tried it and it works very well. The SpanPorts feature is fantastic. Your support is much appreciated on this. I have a couple thoughts on it to make it more accurate to the default effect. For reference, I took a recording of the above effect: Here is the default TT RGB Plus software Aurora: (Hopefully it is visible... it's crazy how easily LEDs blow out the sensor to capture color well) The main difference with the default effect is that it wraps in both directions instead of 1, creating a smoother gradient. There particularly jarring transition is from the purple to red, then yellow. Wrapping in both directions would help alleviate that. That specific color transition is actually jarring in the default software's Aurora effect too, the red and yellow is extremely short lived. (It would be wonderful to pass in custom colors) Also I tried a TickInterval of less than "1" and it crashed the app. Ideally it would be nice to have it a good deal slower, perhaps even the ability to make it 10 times slower.
Thanks again! |
Beta Was this translation helpful? Give feedback.
-
Sure I'll add that.
You can. {
"Type": "AuroraEffect",
"Config": {
"Gradient": [
[0.0, [255, 0, 0]],
[0.5, [0, 255, 0]],
[1.0, [0, 0, 255]]
],
...
}
} I think its jarring because the leds have a problem with red colors, the default generated rainbow is a perfectly smooth loop.
How did it crash? Do you have logs? It should be fine to set it to 0.
You can make it slower by setting edit: also I think I might change how the rotation is calculated to it will have more gradual speed control. |
Beta Was this translation helpful? Give feedback.
-
Pushed some updates. Develop build here. Sample config: {
"Type": "AuroraEffect",
"Config": {
"Step": 0.003,
"Length": 36,
"Mirror": true,
"Brightness": 0.5,
"Saturation": 0.75,
"ColorGenerationMethod": "SpanPorts",
"Trigger": {
"Type": "AlwaysTrigger"
}
}
}
|
Beta Was this translation helpful? Give feedback.
-
Awesome! I've tested it and it works perfectly - absolutely love it. Thanks so much again! This way I'll be able to pass in a huge custom gradient that will let me control brightness and saturation in the animation as well. I'm trying to make one as lively and full of variation as possible.
I've run into an issue where the animation suddenly freezes randomly, sometimes it takes 2 min, sometimes it takes an hour to freeze. I believe this could be an issue with my device connection? Since I was experiencing the same issue with the default program. Then I am unable to stop the service, as it just hangs. Then attempting to uninstall it at this point gives me this error: I then have to wait a good amount of time (several minutes) until the connection seems to get re-established. Then I am able to start the service once again. Does this indicate physical connectivity/ controller issues to you? Should I RMA my controller? |
Beta Was this translation helpful? Give feedback.
-
Oh, well it can only be set to a whole number so I guess the JSON parser did not like that
Can you post log file when that happens? It should be in the Logs folder. |
Beta Was this translation helpful? Give feedback.
-
Seems like it's the same as any other log file I have. Considering that it happened in both apps, I suspect it's something with my controller. I'll RMA it and see how a new one does. Edit: I may watch it closely and try and start the exe immediately after it disconnects. I'll report if I see anything different. |
Beta Was this translation helpful? Give feedback.
-
Try editing But dont keep it running for TOO long because there will be a lot of stuff in the logs. |
Beta Was this translation helpful? Give feedback.
-
I was able to capture it when it froze:
Then when I went to stop it, the log also included:
Restarting the app and app allowed me to select "Start", which generated:
|
Beta Was this translation helpful? Give feedback.
-
Yeah, for some reason it hangs when trying to write or read data. There is a 1000ms timeout so this does not happen but maybe there is a problem with the hidlibrary. I actually just switched to the newer and more performant HidSharp library so you can try this build. |
Beta Was this translation helpful? Give feedback.
-
So far so good on the new library, haven't run into any freezing issues since I got it and have been running all day. Great timing. Thank you! I'm setting up scheduling, and perhaps I misunderstood the way to configure multiple effects with a schedule?
I would like the sensor effect to be active when not in the schedule window, yet it produces an error. Unrelated - is there a way to bind hotkeys to an effect? It would be handy to have a way to turn the lights off with a keystroke. |
Beta Was this translation helpful? Give feedback.
-
I assume it produces an error because you json is not valid. You are missing a comma in SensorEffect config. You can use https://jsoneditoronline.org to check if your json is valid.
No there is no way to do that for now. It was designed to be configure once and forget type of service. |
Beta Was this translation helpful? Give feedback.
-
Thanks for the site, I'll be sure to use that. I got the scheduling working for my use case. Two things I noticed. https://moshimoshi0.github.io/TTController/triggers/scheduletrigger On this page, it has this in the example: "Schedule": [ Yet above it, it has a conflicting syntax of: List of schedule entries in " -> " format. The other thing I noticed, setting a start time had no effect in my config. I would assume that my always trigger SensorEffect is on unless it is within the Aurora scheduled window. However, in my testing, the effect only disables after the end time window, but is on before that (regardless of the start time occurring or not). It doesn't matter for my use case but I wanted to point it out in case it is a bug. My now working config:
|
Beta Was this translation helpful? Give feedback.
-
Thanks fixed.
When a trigger returns a true value, the effect that it is configured on will be enabled. ScheduleTrigger returns true value when the current time is within the specified range/ranges. If you want to invert it (return false when withing range), you have to set the "Value" parameter to false. It is described on the docs. I also described this in one of the first replies here. |
Beta Was this translation helpful? Give feedback.
-
Apologies, I mistook a configuration error in my JSON as an issue with the scheduling setup. I have it all sorted now. Thanks again for your help on everything, and thank you for making this software to begin with. |
Beta Was this translation helpful? Give feedback.
Thanks fixed.
When a trigger returns a true value, the effect that it is configured on will b…