GPIO (Core 510i, 1100, 3100, I/O Frame)
This topic describes how to configure and control the General Purpose Input Output (GPIO) hardware interfaces in Q-SYS Designer.
The General Purpose Input Output (GPIO) interface is used to integrate Q-SYS with custom or third-party controls. The GPIO allows you to control external hardware and certain aspects of Q-SYS using external hardware. In addition, you can use the GPIO to supply an external word clock to Q-SYS for synchronization. Refer to the Core Status topic for details. The GPIO selections require an external TTL level word clock: pin 3 is signal, pin 8 is ground. When you select GPIO A-1 or GPIO B-1 as the clock source, the respective GPIO 1 Property changes to "Input used as clock source". The clock source should be connected to pin 3 of the respective GPIO connector - either GPIO A or GPIO B.
Note: Typically, Internal is used as the clock source. Only if there is a need to synchronize the Q-SYS system to an external clock would you use GPIO or AES3. You would use GPIO if the external clock signal is a word clock. You would use AES3 if the external clock signal is an AES3 signal. Often an AES3 signal without audio is used to reduce the clock jitter. This signal is called AES3 black.
Some examples of hardware to which you can connect are: Potentiometers, buttons, switches, LED/lights, motors (including fans) relays, and temperature and humidity sensors.
The GPIO interface is physical hardware, and is represented in Q-SYS Designer by the GPIO component. There are two GPIO interfaces available in a Core, and one in an I/O Frame. The external connection to the GPIO interface is supplied via a standard DA-15 connector. A GPIO component is configured in Q-SYS Designer (GPIO component Properties) where there are eight configurable pins that represent and configure GPIO-1 through GPIO-8 in the DA-15 connector. You can configure these pins to be Inputs, Outputs, Digital, Analog, Clocks, and so on.
The GPIO is protected by self-resetting fuses.
DB-15 Pin # |
Signal Name |
Signal Type |
Description |
---|---|---|---|
1 |
RNO |
Relay Contact |
Relay Normally Open 1 |
2 |
RNC |
Relay Contact |
Relay Normally Closed 1 |
3 |
GPIO-1 |
Normal Current |
Configurable 2 |
4 |
GPIO-3 |
Normal Current |
Configurable |
5 |
Power |
Power |
+12 VDC |
6 |
GPIO-5 |
High Current |
Configurable |
7 |
GPIO-7 |
High Current |
Configurable |
8 |
GND |
Ground |
Ground |
9 |
RC |
Relay Common |
Relay Common 1 |
10 |
GND |
Ground |
Ground |
11 |
GPIO-2 |
Normal Current |
Configurable |
12 |
GPIO-4 |
Normal Current |
Configurable |
13 |
Power |
Power |
+12 VDC |
14 |
GPIO-6 |
High Current |
Configurable |
15 |
GPIO-8 |
High Current |
Configurable |
1. The GPIO Relay is controlled in a Q-SYS Design.2. When Using a Word Clock. The GPIO input impedance is much higher than what would normally be required to terminate a word clock signal. QSC recommends using a termination resistor between pin 3 and ground (pin 8 or 10). The resistor value should match the cable impedance. If the cable impedance is unknown, use 75 Ohm. Refer to the GPIO component for more information about external clocks. |
Name | Normal Current Pins | High Current Pins |
---|---|---|
Maximum Input Range |
0 V to 32 V |
0 V to 32 V |
Analog Input Range |
0 V to 24 V |
0 V to 24 V |
Digital Input, Low |
0.8 V maximum |
0.8 V maximum |
Digital Input, High |
2.0 V minimum |
2.0 V minimum |
Digital Output, Low |
0.4 V maximum |
0.4 V maximum |
Digital Output, High |
2.4 V minimum, 3.3 V maximum |
2.4 V minimum, 3.3 V maximum |
Digital Output Impedance |
1 k ohm |
1 k ohm |
High Current Output, Low |
N / A |
0.4 V maximum |
High Current Output, High |
N / A |
11 V minimum, 13 V maximum |
High Current Output sink |
280 mA |
280 mA |
High Current Output source |
N / A |
280 mA |
Specifications | ||
---|---|---|
Relay Pins |
Maximum Voltage, relative to Ground |
30 V |
Maximum Current through Relay |
1 Amp |
|
Power Pins |
Output Voltage |
11 V min 13 V max |
Maximum Output Current |
400 mA |
|
All Power and High Current pins combined |
Maximum Source Current |
400 mA |
All GPIO Pins 1 through 8 combined |
Maximum Sink Current |
1 A using 1 GND pin 2 A using 2 GND pins |
GPIO Core Properties
Name
The Name may contain ASCII letters 'a' through 'z' (case-insensitive), the digits '0' through '9', and the hyphen. Names cannot begin or end with a hyphen. No other symbols, punctuation characters, or blank spaces are permitted.
Note: This name must match the Hostname for the device as defined in Core Manager or Peripheral Manager.
Location
User-defined name that groups the component with other components in the same physical location – for example, "Rack 1" – or in the same organizational scheme.
Is Network Redundant
Indicates if the amplifier is connected to redundant networks.
Slot A-H
Card Type
Identifies the type of I/O card installed in the physical Core. After you make your selection, the I/O card displays under the Core in the Inventory list. The number of I/O Slots varies depending on the Core Model. Choices of I/O card installed are:
- Blank
- Line Out
- Mic/Line in H.P.
- DataPort Out
- AES3 In/Out
- Mic/Line In Std.
- CobraNet
- Dante
- AVB
- 16-Channel AES3 In
- POTS
Maximum DSP
When this is set to the default (Yes) the Core operates normally (same in earlier releases of Q-SYS).
When this is set to No, the Core has the following changes:
- ½ DSP Power
- Category 1 Signal Processing only
- No Category 2 Signal Processing
- No AEC/NFC
- 2x non-audio system processing
- 2x Media Stream Receivers. See the Media Stream Receiver topic to see the maximum allowed for your Core model.
- More overhead (unmeasured) for audio file players, etc.
Network Receive Buffer
Adds extra buffer time to the default maximum of 1 ms.
Additional Network Receive Buffer time is useful in (rare) cases where the network latency through the network exceeds the default maximum. Additional network latency my be introduced by sub-optimal QoS functionality, some layer-3 routing implementations, long distances or large networks.
Because the specified additional latency is added both to transfers from IO Frames to the Core and from the Core to IO Frames, the additional system latency is twice the amount of additional receive buffer selected. Total system latency based on this setting is calculated and displayed immediately below the Network Receive Buffer property.
Clocking
Sample Rate
Selects the sample rate. Typically, 48kHz is used as the Sample Rate. In scenarios where Q-SYS is externally synchronized to a (video) house sync signal you would use 48kHz Pull Down as the Sample Rate.
Clock Source
The GPIO selection requires an external TTL level word clock or a GPS connection: pin 1 is signal, ground in is indicated by the ground symbol on either end of the connector. When you select GPIO In Pin 1 as the clock source, GPIO Pin 1 is no longer displayed. The clock source should be connected to pin 1 of the GPIO connector.
Graphic Properties
Label
Use the Label property to change the name of the component in the schematic. The Label property defaults to the component name. To learn more about renaming schematic elements, see Organizing Your Design.
Position
The coordinates reference a specific place in the schematic - for example,"100,100" (horizontal, vertical). 0,0 is the upper left corner of the schematic.
Fill
Sets the fill color of the component in the schematic.
Script Access Properties
Code Name
Displays the currently assign name for control access. You can use the auto-assigned name or customize it. Q-SYS will automatically check all Code Names in the design to ensure name is unique.
Script Access
Defines whether the component will be accessible by script and/or externally, or not at all. Choices include All, External, None (default), and Script.
- None (default) - Not accessible by any script, plugin, or by Q-SYS Remote Control Protocol (QRC).
- Script - Can be accessed by scripts, such as Text Controller, Block Controllers, and plugins only.
- External - Can only be accessed by 3rd party controls systems using component commands from the Q-SYS Remote Control Protocol (QRC).
- All - No restrictions, can be accessed by 3rd party control systems via Q-SYS Remote Control Protocol (QRC), or script objects or plugin objects.
Tip: Use Script Programmer Mode to quickly view the Script Access setting directly on the component in the design schematic without the need to disconnect from the Q-SYS Core processor.
GPIO 1-8 (DA-15 Pins)
There are four possible "Directions" you can select for the GPIO pins.
Unused
The default position, and anytime the GPIO Pin is not in use
Input
Devices or signals connected to a configurable pin provide an input to the Q-SYS system.
Output
The Q-SYS hardware will be providing signals to devices connected to configurable pins.
Raw
The Raw mode is for advanced capabilities. If there is something you cannot do in the standard choices, contact QSC Support for detailed information.
Property |
GPIO Pins |
Value |
---|---|---|
3 |
When the Core Clock Source Property is set to GPIO A-1 or GPIO B-1, this GPIO is used only for the clock source. The GPIO selections require an external TTL level word clock: pin 3 is signal, pin 8 is ground. When you select GPIO A-1 or GPIO B-1 as the clock source, the respective GPIO 1 Property changes to "Input used as clock source". The clock source should be connected to pin 3 of the respective GPIO connector - either GPIO A or GPIO B. Note: Typically, Internal is used as the clock source. Only if there is a need to synchronize the Q-SYS system to an external clock would you use GPIO or AES3. You would use GPIO if the external clock signal is a word clock. You would use AES3 if the external clock signal is an AES3 signal. Often an AES3 signal without audio is used to reduce the clock jitter. This signal is called AES3 black. |
|
Digital |
1 to 8 |
Digital zero = 0 Digital one = 3.3 |
Potentiometer |
1 to 8 |
Allows a potentiometer to be connected to the GPIO pin, the position of which is represented by the control in the GPIO Control Panel. The value or range is 0 to 1. |
Analog |
1 to 8 |
Input 0 to 24 V, Low Z 12-bit Resolution |
Contact Closure |
1 to 8 |
Allows a button, switch, or other binary device to be connected to the GPIO Relay contact. |
WCP-1 |
1 to 8 |
Interfaces with QSC's Wall Control Plate, version 1. For more information, see the Self Help Portal. |
WCP-2 (3 pins) |
1-3 and/or 5-7 |
Selectable on GPIO pins 1 and 5 only. Interfaces with QSC's Wall Control Plate, version 2. Requires three configurable pins. For more information, see the Self Help Portal. |
Optical Rotary Encoder |
1-2, 3-4, 5-6, or 7-8 |
Allows an Optical Rotary Encoder to be connected to two configurable pins. |
Mechanical Rotary Encoder |
1-2, 3-4, 5-6, or 7-8 |
Allows a Mechanical Rotary Encoder to be connected to two configurable pins. |
Property |
GPIO Pins |
Value |
---|---|---|
Digital Output |
1 to 8 |
Digital zero = 0 Digital one = 1 |
Pulse Width Modulated (PWM) Output Good for operating a Fan or a DC motor that will likely require 12 V High Drive, High Current. |
1 to 8 |
Pulse Width is set in the Control Panel 0 - 100% Pulse Frequency is set in the Control Panel 50 to 50,000 Hz |
Inverted Pulse Width Modulated (PWM) Output If this pin is used in conjunction with the non-inverted PWM, linking the PWM Duty Control Pins together will produce opposite but equal signals since they must use the same frequency. |
1 to 8 |
Pulse Width is set in the Control Panel 0 - 100% Pulse Frequency is set in the Control Panel 50 to 50,000 Hz |
No Clock output available on these pins |
1 and 5 |
N / A |
Sample Clock |
2 and 6 |
System Frequency 48 kHz |
Vector Clock |
3 and 7 |
3 kHz 6 kHz |
Frame Clock Mainly intended for software debug. |
4 and 8 |
Programmable - 30 Hz to 120 Hz |
Property |
Value |
---|---|
GPIO Pins 1 - 4 |
3.3 V TTL Open Collector High Current |
GPIO Pins 5 - 8 |
3.3 V TTL 12 V Push-Pull High Current 12 V High-Drive High Current Open Collector High Current |
The Raw mode is for advanced capabilities. If there is something you cannot do in the standard choices, contact QSC Support for detailed information. Note that when you select Raw as the direction, there are two instances of that pin on the GPIO component; one input, and one output.
The Controls are displayed in GPIO Pin number order, 1 through 8, from left to right in the Control Panel with the related DA-15 pin number listed. The DA-15 pin / GPIO pin number relationship can change based on the controls assigned to the GPIO pins.
General
Relay
The function of the Relay button is to open and close the contacts of the relay on the GPIO Interface.
- RNO 1 (Relay Normally Open on DA-15 Pin 1)
- RNC 2 (Relay Normally Closed on DA-15 Pin 2)
- RC 9 (Relay Common on DA-15 Pin 9)
Digital In (Indicator)
This LED lights when there is a Digital input of 1 (3.3 V TTL) present.
Analog In (VDC)
This is a read-only knob that displays the DC voltage applied to the GPIO pin.
Digital Out
This toggle button supplies a 0 in the Off position and a 1 in the On position.
PWM Duty (Percentage)
Sets the percentage of a period when the pulse is positive.
PWM Frequency (Hz)
Sets the period time. (1 / frequency). Affects all PWM outputs.
The GPIO pins display as control pins on the GPIO component and are always present except when "Unused" is selected for a pin's Direction. The GPIO pins are not used to change controls in the Control Panel. Some of the Direction/Type combinations provide Control Pins you can use to change the Controls within the Control Panel.
The Relay Out Control Pin is always available.
Pin Name |
Value |
String |
Position |
Pins Available |
---|---|---|---|---|
Relay Out |
0 1.00 |
false (normal) true (activated) |
0 1.00 |
Input / Output |
The Pin Name reflects the Input Type you select for a given GPIO pin. Indented below each GPIO Type are any Control Pins that may be available for that Type.
Pin Name |
Value |
String |
Position |
Pins Available |
---|---|---|---|---|
Digital Input |
0 1 |
false true |
0 1 |
Output |
Contact Closure |
0 1 |
false true |
0 1 |
Output |
Potentiometer (10k Ohm, 12 V) and Potentiometer (2-wire) |
0 to 1 |
N / A |
0 to 1.00 |
Output |
Calibrate Maximum |
|
|
|
|
Calibrate Minimum |
|
|
|
|
Maximum Position |
|
|
|
|
Minimum Position |
|
|
|
|
Analog Input |
0 to 24.00 |
0.00 V to 24.0 V |
0 to 1.00 |
Output |
WCP-1 |
0.00 1.00 2.00 3.00 4.00 5.00 6.00 7.00 8.00 9.00 10.00 |
0 1 2 3 4 5 6 7 8 9 10 |
0 .100 .200 .300 .400 .500 .600 .700 .800 .900 1.00 |
Output |
WCP-2 |
1.00 2.00 3.00 4.00 5.00 6.00 |
1 2 3 4 5 6 |
0 .200 .400 .600 .800 1.00 |
Output |
Rotary Encoder (Mechanical or Optical) |
0 to 1.00 |
N / A |
0 to 1.00 |
Input / Output |
Rotary Encoder Resolution |
4 to 4096 |
4 to 4096 |
0 to 1.00 |
Input / Output |
Rotary Encoder Reverse |
0 1.00 |
normal invert |
0 to 1.00 |
Input / Output |
The Pin Name reflects the Output Type that must be selected for a particular Control Pin to be available.
Pin Name |
Value |
String |
Position |
Pins Available |
---|---|---|---|---|
Digital Output 1 |
0 1 |
false true |
0 1 |
Input / Output |
PWM Output |
0 to 100 |
— |
0 to 1.00 |
Input / Output |
PWM Duty |
0 to 100 |
0% to 100% |
0 to 1.00 |
Input/Output |
PWM Invert |
0 1.00 |
normal inverted |
0 to 1.00 |
Input / Output |
PWM Frequency |
5 to 50,000 |
5.00Hz to 50.0kHz |
0 to 1.00 |
Input / Output |
Inverted PWM Output |
0 to 100 |
— |
0 to 1.00 |
Input / Output |
PWM Duty |
0 to 100 |
0% to 100% |
0 to 1.00 |
Input/Output |
PWM Invert |
0 1.00 |
normal inverted |
0 to 1.00 |
Input / Output |
1. When Digital Output is selected, the Control Pin for the "Digital Out" button in the Control Panel displays as an input to the selected GPIO pin. It is not shown in the Control Pins list as other "Control Pins". |
Button or Potentiometer
LED - Light - Motor
Directional Motor
Rotary Encoder
Rotary Switch
All resistors should have the same value. The total resistance should be about 10K Ohms. The individual resistor value should be 10,000 divided by the number of resistors. The schematic is an example only, and could easily be modified to have more switch positions or use multiple momentary buttons instead of a rotary switch.
Q-SYS device GPIO output states are undefined during boot-up and design redeploy. In the following table, "While On" and "While Off" indicate the button setting as defined in the running design file. During a reboot or redeploy, the setting may toggle depending on the GPIO type before returning to the defined setting after the design starts running.
Bold text indicates a temporary GPIO setting during boot-up and redeploy.
GPIO Type |
While On |
While Off |
---|---|---|
Digital Output |
Toggles to Off |
Stays Off |
Open Collector |
Toggles to Off |
Stays Off |
Raw |
Stays On |
Toggles to On |
GPIO Type |
While On |
While Off |
---|---|---|
Digital Output |
Stays On |
Toggles to On |
Open Collector |
Toggles to Off |
Stays Off |
Raw |
Stays On |
Toggles to On |
GPIO Type |
While On |
While Off |
---|---|---|
Digital Output |
Toggles to Off |
Stays Off |
Open Collector |
Toggles to Off |
Stays Off |
Raw |
Stays On |
Toggles to On |
GPIO Type |
While On |
While Off |
---|---|---|
Digital Output |
Toggles to Off |
Stays Off |
Open Collector |
Stays On |
Toggles to On |
Raw |
Stays On |
Toggles to On |