The XPression Automation Gateway is a Windows application which runs on the same PC as the XPression studio software. It communicates with XPression via the COM SDK, while receiving incoming commands from TCP/IP or serial ports using the Oxtel Imagestore Protocol.
This gives the following significant advantages:
- The XPression system can be controlled remotely, without the pain of Distributed COM
- The Oxtel protocol is more powerful and expressive than Chyron CII
- The Oxtel protocol is widely supported by Broadcast Automation systems.
Installation
XAG is supplied as a standard Windows Installer program, and must be installed directly on the same PC as XPression. Because XAG uses the XPression COM SDK, it requires either XPression Studio or XPression BlueBox.
XAG will work with any Windows-compatible COM ports installed on the system, including virtual COM ports and COM port redirectors.
To install XAG, run the XAG installer application. You will be presented with a familiar series of screens to confirm your acceptance of the EULA, and offering a choice for alternative installation locations.You will have received a license file by email from Ross Video, usually called
customername-XAG.lice
. To install the license, place this file in the same directory as your copy of XAG.
This is typically C:\Program Files\Ross Video\XPression Automation Gateway
. You can tell if your version is correctly licensed from the ‘About Box’, which will display license information. If you have a temporary license installed, the expiry date will be shown.

Moving Licenses to other PCs
XAG licenses may be node-locked to a specific IP address. If you need to move these licenses to another XPression system, you will require a new license file.
Upgrading Software
Configuration
When started, XAG will accept incoming Oxtel format Automation commands on TCP port 5006. Your firewall software will need to be configured to allow XAG to accept sessions on this port. Multiple simultaneous sessions are supported, and tallies are broadcast to all connected sessions that have enabled them.
As well as TCP sessions, XAG will accept serial connections on any number of serial ports. To select which serial ports are to be used, choose items from the Ports menu. This menu will automatically display all installed serial ports, including virtual ports and COM port redirectors. Serial port settings default to 38400 baud, 1 stop, no parity, but can be changed by editing the.INI file in V1.1.1 and later.
Operation
XAG is designed to work without any operator intervention, but includes a few debug tools. The eight DSK buttons correspond to the DSK layers 1 to 8. they can be pressed to turn DSKs on and off, and will tally the current state according to automation controls. The text box next to each DSK button will display the name of the currently loaded scene.
The logging window below shows a variety of logging and error messages. Right-clicking in this window will bring up a log management menu for saving and clearing the log window.
Scenes and Layers vs. Keyers and Logos
Datasource Mapping
Here’s what happens when text is sent to a named ‘datasource’:
- All text objects whose name matches the datasource name have their content changed to the new value
- Any material whose name matches the datasource name have the filename of their first shader changed to the new value
Supported Commands
Code | Command | Notes |
---|---|---|
1 | Fade Keyer Up/Down | |
3 | Cut Keyer Up/Down | |
8 | Load Image By Number | Loads a scene whose name matches the number, e.g. “99” |
A | Erase Store | |
B | Set Transition duration | |
M | Enquire system Status | |
O | Enquire Image Loaded Status | |
j7 | Audio Enquire | |
m0 | Set Global Datasource | Updates named text objects, and also named material shader file. |
m4 | Enquire Global Datasource list | |
m5 | Enquire Global Datasource value | |
R0 | Load image by name | Loads the specified scene |
R3 | Enquire File Info | Returns if scene exists |
R4 | Enquire First Image | |
R5 | Enquire Next image | |
R6 | Enquire Extended File Information | Returns if scene exists |
R7 | Preload Image | |
Ra | Image count | |
RA | Validate Template | Returns true if scene exists |
S0 | Start Animation | |
S1 | Stop Animation | |
S2 | Set Animation Frame | |
S4 | Restart Animation | |
Ua | Enquire Mix Mode | |
W5 | Enquire DVE preset | Dummy response |
X1 | Enquire License Code | Dummy response |
X2 | Insert log Message | |
X3 | Enquire Command Availability | |
X5 | Enquire Input Colour Fields | Dummy response |
X6 | Enquire Voltages | Dummy response |
X9 | GPI Special | Dummy response |
XK | Enquuire Serial Number | Dummy response |
Y6 | Enable Video Tallies | |
Y7 | Request Wakeup Packet | |
Y8 | Enable Audio Tallies | |
YB | Enable Media Tallies | Dummy response |
Ya | Set Passive Mode | Dummy response |
Z0 | Update Text Field | |
Z3 | Render Box | |
Za | Enquire TextBox | |
Zb | Enquire Template | Dummy response |