Devices such as Video and Audio matrixes can use the same set of inputs and across multiple outputs. Using custom states with an array for the Output, we can create logic within the buttons to indicate which input is currently in use in each location. Follow the process below to add this feature to your User Interface.


  1. Launch Builder
  2. Create Custom States

Using the Custom States within the System device, create a String state with Possible Values for the Inputs of the switcher. With this State we are going to enable the Array option.

If you have not yet created buttons for the Inputs/Outputs, follow this tutorial on adding buttons to your User Interface

Add the Custom State for Input to the Buttons on the User Interface

In the above image, we added a State Key that references the name of the Output. In this example we used Zone B.

Repeat above steps for the remaining buttons

Once the Set states have been added to buttons, we need to create the Events for each button.

In the Key field, enter the name of the key that was used within the Button. In the above example, we are referencing Zone A.

Once the Watch State has been added, we need to use a Conditional to change the image shown within the User Interface.

Within the IF statement, add the Custom State for Input and add the Key and Value within the popup window

Finish your Conditional statement by adding Update Properties that change the Image on the widget. Use the Pressed or Selected state of the image to your IF, and the Default image to the ELSE


By using Arrays, we can reference the Custom States we create across multiple Outputs, Zones or Devices. We can use these Arrays/Keys within Conditional statements to track the state of your Output, Zones and/or Devices.

Revision: 1
Last modified: 9 November 2017


Was this helpful?

Yes No
You indicated this topic was not helpful to you ...
Could you please leave a comment telling us why? Thank you!
Thanks for your feedback.

Post your comment on this topic.

Post Comment