QSC Q-SYS is an audio & control platform, much like Crestron & AMX. It’s designed around a very open architecture, and has out-of-the-box support for many common AV & IT standards. One of the beautiful features is the extensibility & huge library of ready-made add-ons. This articles explains where to find these Q-SYS plugins, how to use them, and how to edit existing plugins to better suit your needs.

These boxes are great. I’m starting to advocate for and install them in schools & churches. I’ve even seen great potential in the radio industry. The benefits are a topic for another article, so for now, let’s just talk about plugin files.

Where to Find Q-Sys Plugins

There are two main ways you can find ready-made Q-Sys plugins:

  1. The managed plugin library, available within Q-Sys Designer
  2. Community-made plugins, available via various online forums

The managed plugins are produced and approved by QSC themselves, and can be installed from within the Q-Sys Designer software (go to Tools > Show Q-SYS Asset Manager).

Community made plugins can technically be found anywhere, but the most common place is the QSC Q-SYS Programming Super Group on Facebook.

Q-SYS Plugin File Types

Plugins can be provided in three different file formats:

  • *.qsys
  • *.qplug
  • *.quc

.qsys files are a full Q-SYS Design file – containing any quantity of components, configuration, examples, etc. These are the same design files you would create in the Designer, as simply as dragging and dropping components (but optionally embedding LUA scripting).

.quc files are ‘Q-SYS User Components’. These are binary files available for re-use within the Q-SYS Designer itself. When you drag any component into the ‘User Components’ pane on the right sidebar in Q-SYS Designer, a QUC file is created.

.qplug files are LUA scripting files, and openable/editable in a text editor. These are the most ‘proper’ way to create re-usable components within Q-SYS. When you place a .qplug file in the correct directory, it shows up automatically in the ‘Plugins’ pane on the right side of the Q-SYS Designer.

If you get given a .qsys or .quc file, it’s sometimes possible to turn them into .qplug files and vise-versa.

Q-SYS Plugin File Locations

Before we continue, I just want to note where these various file types get stored.

File TypeLocation
.qsysThese files can be stored anywhere on your computer.
.qucC:Users<username>DocumentsQSCQ-Sys DesignerUser Components
.qplugC:Users<username>DocumentsQSCQ-Sys DesignerPlugins

Editing the LUA Scripting in a Q-SYS User Component

Let’s say you’ve got a User Component in Q-SYS, and you want to edit the LUA scripting contained within.

Maybe you downloaded a .qsys file and loaded a component into your ‘User Components’ folder by dragging and dropping, or maybe you were given it in the .quc format in the first place.

Sometimes editing a user component script is easy. In the Q-SYS Designer, drag the component onto your design, click it, and press the little ‘S’ button. This will open up a LUA Scripting window, where you can edit to your hearts content.

However, sometimes you don’t have this option. This is the case whenever the plugin is written as an actual plugin (in pure LUA).

Where you need to do now is locate the .quc file, and open it in a text editor (Notepad++ is a good choice). Doing so will show you a file a bit like this:

This doesn’t look too good, as it starts off as a bit of a binary file with some strings sprinkled in. However, the actual LUA plugin script is sitting here as plain-ol’ ASCII. The LUA part should always start with ‘PluginInfo = ‘, and it ends when things look non-ASCII again. Working this out can take a bit of intuition, but if you’ve ever programmed before you shouldn’t have too much trouble working it out.

The good news is this whole LUA segment from within a LUA-only .quc file can be copied and pasted, and saved as a .qplug file. It should work directly within the Designer, and you can of course edit the LUA within your text editor.

Here is an example of the same script from above, but in .qplug format: