I have been looking for a way to set the color on multiple Inovelli LED strips using a Global Variable much like the previous discussions around Pixel Effects. I have a dashboard button working for the Pixel Effects and wanted to create a new button where initiating a change in the variable would use the SetColor parameter within the Global Variable to pass a new color to a group of LED strips. I watched how SetColor commands showed up in the logs when using the individual device driver to pass the command. I assumed that the right approach would be to use a variable string to send the information since it appeared to be alpha numeric in the logs. The first screen shot below is the logs generated by making changes in my dashboard button. The bottom highlight at 7:11:26:357 is me changing the dashboard button, 7:11:26:586 is system generated, and 7:14:56 is me using the individual device driver to send the setColor command. I've also included some screen shots of my rule. Any thoughts on where I've gone wrong? I don't have an IT nor coding background, so I'm really just learning all of this as I go. I'm happy to provide screen shots of anything else that might be helpful. Thanks in advance.
I assume the command works fine if run from the device page? If not, you've got an additional problem. But the problem apparent from your rule is that you can't run setColor()
as a custom command from Rule Machine; it takes a parameter type that you can't make from the options that are available (a Map
; often the driver will give a more specific error, but I guess this one doesn't care and fails in another way).
The good news is that you don't need to use a custom command. Rule Machine has a built-in action that can send this command for you. It's under Set Dimmers and Bulbs > Set color and level. Use the "Custom color" action you use your own hue, saturation, and level, which it sounds like you've figured out (the built-in options will just use pre-selected hue/saturation values for you that should approximate that color name on most devices).
Thank you @bertabcd1234. I havenโt played with that area of rule machine yet and was trying to leverage what I had learned from using a Global Variable with PixelEffects. Let me check out that option. Thanks again!
Hmm, the screenshot looks like Rule Machine. Is it Button Controller instead? If so, the same applies (the apps are largely based on the same code).
I have three inovelli red dimmers and one fan controller. I can not update them at the same time or some of the do not get the setting. I send one update at a time separated by half a second.
It is Rule Machine. I just hadn't played with those options before. I used the options you noted along with creating a virtual dimmer device to change the strips back to a set kelvin temperature when they have been in RGB mode. Anytime I change the dimmer slider on my dashboard, it sends the kelvin temp to put them back to white. I used Global Variables if I want to send a different hue or set a different kelvin value. It's nice to be able to address all strips at once from a dashboard button. Thanks for the help!
Thanks for noting this. I have noticed that some of my strips are delayed in taking some commands through my rules and some completely miss them at times (although more rare). I wondered if I might need to put some sort of delay in the rule. I haven't used delays before, so I'm going to study your rule structure and see how I can incorporate this into mine. I'm hoping that helps the process. Thanks!