How To | Create a Simple Loading Bar for a UCI in Q-SYS Designer (Without Script)

Learn how to create a loading bar for a UCI in Q-SYS Designer without the need for scripting.

Updated at June 8th, 2023


Sometimes a situation might arise where you need a loading bar on a UCI. For example, if you are turning a projector on or off with Q-SYS and the projector needs time to cool down, it might be useful for the user to have a visual on how much time they need to wait before they try controlling it. Another example might be if you have a script that takes a few seconds to initialize or do something, and you need the user to wait a certain amount of time before doing anything else. In any case, the use of a loading bar may be a useful tool and there is a simple way to make one without the need to script it.

First, add a custom controls block to your schematic. Change the type of control in its properties to Percent knob.

Then, in the properties of the percent knob (drag the percent knob out onto the schematic page and click on it to see the properties of the knob itself), change the Presentation from Knob to Meter.

You can then drag the corner of the the percent "meter" out to the left or right to make its layout horizontal if you want a horizontal loading bar as opposed to a vertical one.

Next, create a new snapshot bank and drag your percent knob to it. Drag your snapshot component to your schematic, then go into Emulation mode (File -> Emulate OR F6) and save one of the snapshots while the percent knob is set for 100%. Also change the ramp time on the snapshot component to whatever amount of time you want the loading bar to go from 0 to 100%.


You may need some additional logic to make the loading bar go back to 0%. In the above screenshot, Load 1 is set for 0% for this reason. However, it will go back to 0% with a ramp time of 5 seconds, so you may wish to create an alternate way to make it go back to 0%, like another snapshot bank or logic blocks. 


And that's it! You now have a trigger that will ramp the percent meter up to 100% over a set amount of time which you can add in with some logic.