# liveSHOW_RXTX Client

Settings
Connecting to a server
External Devices
Remote control of the server
Sending messages through triggers
Saving and loading the settings
The liveSHOW_RXTX Client software establishes a connection between a SPITServer (e.g. liveSHOWsoftware) and external devices (e.g. Arduino). The SPITServer can be remotely controlled by the external devices or messages / commands can be sent from the liveSHOW_RXTX Client to the external devices.
The external devices can be connected via USB to the computer on which the liveSHOW_RXTX software is running (serial connection) or they can be connected to the computer via a network (LAN connection).
The connection between the liveSHOW_RXTX client and the SPITServer (e.g. liveSHOWsoftware) is established via the network.
SPITServer(liveSHOWsoftware) <- LAN -> liveSHOW_RXTX Client <- USB/LAN-> external devices (e.g. Arduinos)
If the liveSHOW_RXTX software receives a message from an external device, this can be used to remotely control the SPITServer (liveSHOWsoftware).
If the SPITServer plays a trigger object, the liveSHOW_RXTX software can be used to send a message to an external device.
The messages are not subject to any defined protocol here, they can be freely defined by the external devices.

## Settings

### Connect the liveSHOW_RXTX software to a SPITServer (liveSHOWsoftware)

If the liveSHOWsoftware (SPIT Server) is used, the liveSHOW_RXTX Client software automatically finds all running liveSHOWsoftware instances. To do this, there must be a network connection between the computers or the liveSHOW_RXTX Client must be running on the same computer as the liveSHOWsoftware.
The SPIT servers (liveSHOWsoftware) found are displayed in the selection list at the top left. Here you can select the server and connect with .
If the connection has worked, the computer name of the server, the identifier of the server software and the name of the loaded project are displayed below the selection list.
Once the liveSHOW_RXTX client has been connected to a server (server software), it can automatically connect to the server software later as soon as a server has been found in the network on which the software is running and 'Connect automatically' has been selected.

| Connects the liveSHOW_RXTX client to the selected server
| Disconnects the connection to the server
| If this is selected, a connection is automatically established when a suitable server is found. A connection must be established manually once when the program is started for the first time.
| If this is activated, the last loaded/saved settings are automatically opened when the liveSHOW_RXTX client is started.
Lan Port | All software that is to be accessible via a network requires a port, which is a number between (1024 and 65535). Each software must use a different number on a computer. You can enter a number here; the number is accepted by pressing the Enter key. If another software is already using this number (has already occupied the port), the number is displayed in red. This entry is only necessary if external devices are to access the liveSHOW_RXTX software via the network. No LAN port is required for external USB devices.
| All settings can be saved in a file. The RXTX settings are closely linked to the server project. To make this connection recognizable, you should always use the same file name as the server project. ACHTUNG: Wenn Sie ein Server Projekt auf einen anderen Rechner portieren (z.B. vom Bürorechner auf den Showrechner, so müssen Sie daran denken auch die entsprechenden RXTX Einstellungs Datei auf den anderen Rechner zu kopieren.
| The saved settings can be loaded from a file.
| Displays the help for the liveSHOW_RXTX client |

### Add external devices (e.g. Arduinos)

The liveSHOW_RXTX software can exchange messages/commands with serial devices that are connected via the USB interface or with network devices that are connected to the same network.
The liveSHOW_RXTX software can send messages to the external devices whenever a trigger is played on the SPITServer.

| Adds a new external serial (USB) device,
| Adds a new external network device (LAN).
| Deletes a selected device from the list
| Opens a settings window for the selected external device. Alternatively, you can also double-click on the connection parameters in the table with the left mouse button. The connection parameters must be set for each external device.

Settings for USB devices

| The connection to a connected USB device is established via a CommPort. This is generated by the operating system and can be selected here. updates the list of CommPorts
Baudrate,DataBits, StopBits, Parity | How the settings must be made depends on the respective external device. This should be described in the operating instructions for the external device. As a rule, the values that the liveSHOW_RXTX software displays in this window by default should be suitable. The baudrate determines the transmission speed; you may be able to play around a little here. One of the standard transmission rates can be selected in the drop-down box next to the text field.
connect - disconnect | The connection can be established or disconnected here.

Settings for LAN devices

IP Address | Each device in a network has an IP address. This can be the device name in the network or, for example, an IP4 address (such as 192.16.0.25). The IP address of the external device must be entered here.
Proof Address | The system checks whether the IP address is syntactically correct and can be resolved.
Port | There is software/firmware on the external device that can be found via a port. The port/number must be entered here. This information should be found in the operating instructions for the external device.
connect - disconnect | The connection can be established or disconnected here. Since all messages are sent via the simple UDP protocol, it is unfortunately not possible to check whether the external device is actually reachable, i.e. whether the IP address and port number are correct. This simply has to be tried out to see if the external device responds.

## Remote control of the SPIT server (e.g. liveSHOWsoftware)

The principle: The SPIT server (e.g. liveSHPWsoftware) informs the liveSHOW_RXTX Client which remote control commands exist.
Several messages can be assigned to each remote control command in the liveSHOW_RXTX Client. When a message is received, the corresponding remote control command is executed.
A message comes from an external device (USB or LAN).
You can use the search field to search for remote control commands.
If you click on a column heading, all rows are sorted accordingly.
If remote control commands are displayed with a red background, there is either no connection to a SPIT server or the remote control commands do not exist on the SPIT server, e.g. because another project has been loaded.
The SPIT server (e.g. the liveSHOWsoftware) sends all possible remote control commands to the connected RXTX clients. You can select one of these commands from the list.
If a remote control command is selected, messages for the selected remote control command can be entered on the right-hand side

| The display of the messages can be changed here: Text: The message is displayed in text form. Not all messages can be displayed in text form; if the external device sends a byte code, the textual display may look cryptic. Bytes: The message is displayed as bytes, two characters per byte and a space between two bytes (e.g. 01 0F 0A 00 10)
| A new message is added to the list. Double-click on a message with the left mouse button to change it in the table. Press the Enter key to accept the change.
| Deletes the selected message.
| Switches the learning mode on or off. If the learning mode is switched on, the table has a green frame. If one of the external devices (USB / LAN) sends a message, this is automatically added. The learning mode must be switched off again in order to use the remote control function!

If an external device sends one of the added messages, the remote control command is executed on the SPIT server (liveSHOW).
Note: Some devices send two messages, e.g. one for pressing a button and one for releasing a button.

## Sending messages through triggers

The principle: Triggers can be created in the SPIT server software, and messages can be assigned to a trigger in the liveSHOW_RXTX client software, which are sent when the trigger is played by the server software.
You can also decide to which devices the messages of a trigger are sent.
A distinction is made here between trigger types and trigger objects. In the liveSHOW software, trigger types can be created that describe a desired action by name.
In the liveSHOW_RXTX Client, trigger messages can be assigned to a trigger type.
If a trigger type is dragged into the timeline (or into the jingle window) in the liveSHOWsoftware, a trigger object is created that refers to the trigger type. Whenever a trigger object is played by the liveSHOWsoftware, this is communicated to the liveSHOW_RXTX client and it sends the messages to the selected external devices.

- A trigger type is the basis (source) for a trigger object. A specific trigger type exists exactly once. Trigger types cannot be played, they are only the basis for a trigger object.
- A trigger object has exactly one trigger type. Trigger objects can exist more than once. Trigger objects can be played.

A distinction is made between three situations; messages can be assigned to each situation:

1. The object is started (Start)
   In the liveSHOWsoftware, the play cursor is currently moving into the object or the cursor is placed in the object.
   The assigned messages are sent once.
2. The object is played (continuously)
   In the liveSHOWsoftware, the play cursor is located within the object.
   The assigned messages are sent repeatedly during playback. (The timeline in the liveSHOWsoftware sends the messages approx. every 40ms.
3. The object is closed (end)
   In the liveSHOWsoftware, the play cursor exits the object.
   The assigned messages are sent once.

The liveSHOW_RXTX client lists all trigger types that were created in the respective SPIT server software (e.g. liveSHOWsoftware).
You can use the search field to search for triggers..
If you click on a column heading, all rows are sorted accordingly.
If triggers are displayed with a red background, there is either no connection to a SPIT server or the triggers do not exist on the SPIT server, e.g. because another project has been loaded.
If you select a trigger type, you can assign messages to this trigger type. These messages are sent when a trigger object is played that has this trigger type as its source.
As described above, there are three events when a trigger object is played, to each of which messages can be assigned:

1. at start : The trigger object is started or the play cursor jumps into the object
2. at the end: The play cursor leaves the trigger object
3. Continuous: The play cursor is located within the object, trigger events are sent at regular intervals

| The display of the messages can be changed here: Text: The message is displayed in text form. Not all messages can be displayed in text form; if the external device sends a byte code, the textual display may look cryptic. Bytes: The message is displayed as bytes, two characters per byte and a space between two bytes (e.g. 01 0F 0A 00 10)
| A new message is added to the list. Double-click on a message with the left mouse button to change it in the table. Press the Enter key to accept the change. Value: You can also specify whether the current value from the trigger object should be appended to a message. Trigger objects can be faded in and out and the maximum value can be specified. These values are always sent when a trigger object is played. If the check mark is set after a message, the values are appended to the message. The values are always appended as text (string) in ppm (parts per million) in 7 characters. Example: If 25% of a trigger object is faded in, the string “0250000” is appended. If the trigger object is 100% faded in, “1000000” is appended. In the above image, the message “Message_10250000” would then be sent at 25% and the message “Message_11000000” at 100%.
| Deletes the selected message.
| Switches the learning mode on or off. If the learning mode is switched on, the table has a green frame. This can be used if an external device not only reacts to messages, but can also send them. If one of the external devices (USB / LAN) sends a message, it is automatically added. The learning mode must be switched off again!
List of devices | Assignment of the devices The connected devices are listed below and you can select the devices to which the messages are to be sent.

All trigger objects are listed below and it is displayed when a trigger object is played. This table is for information only.

## Loading and saving the settings

RXTX settings depend on the project loaded on the SPIT server (e.g. liveSHOWsoftware). Therefore, the file name under which the settings are saved should correspond to the file name of the server project.
If you get into the habit of always saving the RXTX settings in the project folder of the server, you will quickly find the file that matches the server project.
ATTENTION: If you port a server project to another computer (e.g. from the office computer to the show computer), you must also remember to copy the corresponding RXTX settings file to the other computer.

| All settings can be saved in a file. The RXTX settings are closely linked to the server project. To make this connection recognizable, you should always use the same file name as the server project.
| The saved settings can be loaded from a file.
| If this is activated, the last loaded/saved settings are automatically opened when the liveSHOW_RXTX client is started. |

Note: All trigger types, trigger objects or remote control commands that are listed in the liveSHOW_RXTX client and do not match those of the server project are displayed with a red background.