Q-Sys is an Integrated System Platform that provides all the audio routing, processing control and monitoring for a facility. Q-Sys is a centralized DSP, integrated-system audio solution.
This MxM can control Q-Sys cores: core control values monitoring through variables, control values sending through
commands, and redundancy management between two cores.
MxM Installation
In order to be controlled, the controls must have been created as “External Controls” in the Q-Sys Designer when the core project is created.
Open your Q-Sys Designer file.
Make sure the design is in the design mode. (F7)
Click the External Control accordion bar in the left pane of the Q-Sys workspace. The External Control list displays and is empty in new designs.
Double-click the Schematic Element for which you want to make the controls available. The Control Panel displays.
Select one or more controls in the Control Panel that you want to make available for external control and drag them into the External Control list. You can press Ctrl+A to select all the controls. When you press Ctrl+A, all the non-control items are selected as well, but are ignored by Q-Sys when dragged into the list.
As you drag controls into the External Control list, it is populated with a generic control ID, for example, External ID 1. The ID is used by the external system to access this control.
Rename the control if desired.
In order to easily import the control list into the MxM device, you can export the external controls into an xml file and import it into MedialonManager (see the menu Tools in Q-Sys Designer).
Note about core redundancy:
A second or backup Core can be paired with the primary Core in an installation.
There is a configuration option in the Core Properties in Q-Sys Designer to match the hardware installation.
In such a Core-redundant system, the backup Core is responsible for constantly communicating with the primary Core
so as to verify the health of the primary Core, and to synchronize its control settings with the primary Core.
The backup Core also communicates with the peripherals so as to verify its readiness to take over.
If the backup detects a fault with the primary, it establishes full audio streaming and control communications
with peripherals and becomes the “active” Core. If the primary, for whatever reason, does not actually go into
standby during a failover, the backup has priority and remains the active Core.
The MedialonManager MxM monitors the status of the two cores and sends the command to the active one.
Device Setup
Device creation windows:
Enter the IP address of the Q-Sys core.
Enter the IP address of the backup core if you use one, otherwise leave it blank.
Add the controls with the Add button or by importing the controls with the Load XML button.
Important note about XML file: Once you have imported an XML, if you want to change the external name of a control in the Designer, don’t use again the XML file but rename it in MedialonManager.
Otherwise, concerning any other change, you can use the XML exportation several times.
The first column shows the name of the control: the one used for sending the commands.
The second column shows the count of values exposed by the control: most of the time it is only one value, except for controls like meters.
The third column shows the polling group: there are 4 polling groups where the polling period can be adjusted. This polling period is the interval of time between the refresh of monitoring variables.
Polling
The 4 polling periods can be edited by clicking on Edit Polling.
When you will give a control a group number, use the smallest periods for the one where you need accuracy.
Control Editing
In the Control editing dialog, several parameters can be adjusted:
The name of the control is the one used for sending the commands.
Device Commands
Set String
Set a control with a String value.
Control ID: [String] ID of the control to set.
String: [Integer] String value to set.
Set Value
Set a control with a Float (Real) value.
Control ID: [String] ID of the control to set.
Value: [Real] Float value to set. This value is the actual value for the control.
Set Position
Set a control with a Position (Real) value.
Control ID: [String] ID of the control to set.
Position: [Real] Position value to set. This value is in range 0.0 to 1.0 and represent the position of the control within the range.
Trigger
Trig the given control.
Control ID: [String] ID of the control to trig.
Load SnapShot
Load the given snapshot.
Snapshot Bank: [String] Bank name of the Snapshot.
Snapshot Number: [Integer] Number of the Snapshot within the bank.
Rate: [Real] Rate for the Snapshot.
Save SnapShot
Save the given snapshot.
Snapshot Bank: [String] Bank name of the Snapshot.
Snapshot Number: [Integer] Number of the Snapshot within the bank.
Device Variables
Status
[Enum] Current status of the device connection.
“Unconnected”: Not connected
“Connecting”: Connection in progress
“Ready”: Device is connected and ready to work
“Busy”: Device working
Error
[Enum] Current error status of the device.
“No Error”: Device is Ok
“Network Error”: A network or transmission error occurred
“Command Timeout”: The last command has timed out
“Command Error”: The last command has generated an error and cannot be performed
Redundance
[Enum] Status of the redundancy.
“Active”: The current active core is the primary
“Backup”: The current active core is the backup
DesignName
[String] name fo the current design.
PrimaryConnection
[Enum] Status of the primary connection.
“unconnected”: The primary core is not connected
“connected”: The primary core is connected
SecondaryConnection
[Enum] Status of the secondary connection.
“unconnected”: The secondary core is not connected
“connected”: The secondary core is connected
Revisions
V 6.0.0
Modified: Support of Manager V6/Showmaster V2.
V 6.0.1
Fixed: TCP connection causes a crash.
Fixed: Setup dialog doesn’t open on the correct screen on a multi-screen configuration.
V 6.0.2
Fixed: Device variables are not reset after a project load (Requires Manager 6.0.3+).
V 6.1.0
Added: Support for Showmaster LE & Showmaster XS platforms.
V 6.1.1
Fixed: The MXM does not appear as certified under Manager.
V 6.1.2
Fixed: The Setup dialog box is not always fully visible at the device creation time.
V 6.1.3
Fixed: Wizard dialog were not opened in the right location and could be displayed outside the right screen.
V 6.1.4
Fixed: Random crashes when using the SetValue command.
V 6.1.5
Fixed: MXM Commands may sometimes hang Manager/Showmaster while the command being executed.
V 6.1.6
Modified: Log traces have been improved.
Fixed: DesignName variable stays empty when a backup system is defined.
Fixed: An error happens while the backup Core is used.
V 6.1.7
Fixed: the device doesn’t switch from the main Core to the backup Core if the network connection to the main Core is lost.
V 6.2.0
Added: Compatibility for Overture CS.
V 6.2.1
Fixed: Meter variables are not updated.
Fixed: Variables are not updated after the device reconnects (if the QSys project has been modified in the meantime).
V 6.2.2
Added: Debug log traces.
Fixed: When the project is started, the variables are not updated quickly.
Improved: Control and Trigger list are now sorted in the selectors.
Improved: In the Setup, it’s now possible to edit multiple “Monitored Controls” at a time.
V 6.2.3
Fixed: If the QSys is not online when the MXM device is started, the polling is not launched and the redundancy mechanism might not work later when the QSys wil appear on the network.
Added: “PrimaryConnection” and “SecondaryConnection” variables have been added.
Fixed: The Redudance variable is not always properly updated.
Fixed: Some command parameters are not properly displayed in the “Properties” tab.
V 6.7.0
Improved: Support for High DPI displays (require Manager 6.7+ or Showmaster Editor 2.7+)
Changed: Compatibility for Manager 6.7 and Showmaster Editor 2.7
Fixed: Unloading that MXM might freeze the ShowControl software.
Modified: Don’t wait for a command timeout when the polling Get Primary/Secondary core status command cannot be sent.
Fixed: Polling command sent to get the Cores status is not always emitted.
Modified: Current command was terminated when a TCP connection happened. This can terminate prematurely a command.