# liveSHOW_RXTX Client

Einstellungen
Verbinden mit einem Server
Externe Geräte
Fernsteuern des Servers
Senden von Nachrichten durch Trigger
Das Speichern und laden der Einstellungen
Die liveSHOW_RXTX Client Software stellt eine Verbindung zwischen einem SPITServer (z.B. liveSHOWsoftware) und externen Geräten (z,B. Arduino) her. Es kann durch die externen Geräte der SPITServer ferngesteuert werden oder auch Nachrichten / Kommandos von dem liveSHOW_RXTX Client an die externen Geräte gesendet werden.
Die externen Geräte können über USB an dem Rechner, auf dem die liveSHOW_RXTX Software läuft, angeschlossen sein (serielle Verbindung) oder sie sind per Netzwerk mit dem Rechner verbunden (LAN Verbindung).
Die Verbindung zwischen dem liveSHOW_RXTX Client und dem SPITServer (z.B. liveSHOWsoftware) wird über das Netzwerk hergestellt.
SPITServer(liveSHOWsoftware) <- LAN -> liveSHOW_RXTX Client <- USB/LAN-> externe Geräte (z.B. Arduinos)
Empfängt die liveSHOW_RXTX Software eine Nachricht von einem externen Gerät, so kann dies zum Fernsteuern des SPITServers (liveSHOWsoftware) verwendet werden.
Spielt der SPITServer ein Triggerobjekt ab, so mit der liveSHOW_RXTX Software eine Nachricht an ein externes Gerät gesendet werden.
Die Nachrichten obliegen hier keinem definierten Protokoll, sie können frei durch die ecternen Geräte festgelegt sein..

## Einstellungen

### Die liveSHOW_RXTX Software mit einem SPITServer (liveSHOWsoftware) verbinden

Wenn die liveSHOWsoftware (SPIT Server) verwendet wird, so findet die liveSHOW_RXTX Client Software alle laufenden liveSHOWsoftware Instanzen automatisch. Hierzu muss eine Netzwerkverbindung zwischen den Rechnern bestehen oder der liveSHOW_RXTX Client auf demselben Rechner wie die liveSHOWsoftware laufen.
Die gefundenen SPIT Server (liveSHOWsoftware) werden in der Auswahlliste links oben angezeigt. Hier können Sie den Server auswählen und mit verbinden.
Hat die Verbindung funktioniert, so wird unterhalb der Auswahlliste der Computername des Servers, die Kennung der Serversoftware und der Name des geladenen Projektes angezeigt.
Wurde der liveSHOW_RXTX Client einmal mit einem Server (Serversoftware) verbunden, so kann er sich später automatisch mit der Serversoftware verbinden, sobald ein Server im Netzwerk gefunden wurde, auf dem die Software läuft und 'automatisch verbinden' ausgewählt wurde..

| Verbindet den liveSHOW_RXTX Client mit dem ausgewählten Server
| Trennt die Verbindung zum Server
| Ist dies aktiviert, so wird automatisch eine Verbindung hergestellt, wenn ein passender Server gefunden wurde. Hierzu muss beim ersten Programmstart einmal eine Verbindung händisch hergestellt werden.
| Ist dies aktiviert, so wird beim Start des liveSHOW_RXTX Clients automatisch die zuletzt geladenen/gespeicherten Einstellungen geöffnet.
LAN Port | Jede Software, die über ein Netzwerk erreichbar sein soll, benötigt einen Port, dies ist eine Zahl zwischen (1024 und 65535). Jede Software muss auf einem Rechner eine andere Zahl verwenden. Hier können Sie eine Zahl eingeben, durch Drücken der Eingabetaste wird die Zahl übernommen. Sollte eine andere Software diese Zahl schon verwenden (den Port schon belegt haben), so wird die Zahl in roter Schrift dargestellt. Diese Angabe ist nur notwendig, wenn externe Geräte die liveSHOW_RXTX Software über Netzwerk ansprechen sollen. Für externe USB Geräte wird kein LAN Port benötigt.
| Alle Einstellungen können in einer Datei gespeichert werden. Die RXTX Einstellungen sind eng mit dem Projekt des Servers verknüpft. Um diesen Zusammenhang erkennbar zu machen, sollten Sie immer den gleichen Dateinamen wie das Projekt des Servers verwenden. 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.
| Die gespeicherten Einstellungen können aus aus einer Datei geladen werden.
| Zeigt die Hilfe für den liveSHOW_RXTX Client an |

### Externe Geräte (z.B. Arduinos) hinzufügen

Die liveSHOW_RXTX Software kann mit seriellen Geräten, die über die USB-Schnittstelle angeschlossen sind, oder mit Netzwerkgeräten, die mitsdemelben Netzwerk verbunden sind, Nachrichten/Kommandos austauschen..
Die liveSHOW_RXTX Software kann Nachrichten an die externen Geräte senden, immer wenn auf dem SPITServer ein Trigger abgespielt wird.

| Fügt ein neues externes serielles (USB) Gerät hinzu, .
| Fügt ein neues externes Netzwerkgerät (LAN) hinzu.
| Löscht ein ausgewähltes Gerät aus der Liste
| Öffnet ein Einstellungs-Fenster für das markierte externe Gerät. Alternativ kann auch in der Tabelle mit der linken Maustaste doppelt auf die Verbindung Parameter geklickt werden. Für jedes externe Gerät müssen die Verbindungsparamter eingestellt werden.

Einstellungen für USB-Geräte

| Die Verbindung zu einem angeschlossenen USB-Geräte erfolgt über einen CommPort. Dieser wird vom Betriebssystem erzeugt und kann hier ausgewählt werden. aktualisert die Liste der CommPorts
Baudrate,DataBits, StopBits, Parity | Wie die Einsrellungen getroffen werden müssen, hängt von dem jeweiligen externen Gerät ab. Dies müsste in der Bedienngsanleitung des externen Gerätes beschrieben sein. In der Regel passen aber die Werte, die die liveSHOW_RXTX Software in diesem Fenster standardmäßig anbietet. Die Baudrate legt die Übertragungsgeschwindigkeit fest, hier kann man eventuell noch etwas herumspielen. In der DropDown Box neben dem Textfeld kann eine der Standarsübertragungsraten ausgewählt werden.
verbinden - trennen | Hier kann die Verbindung hergestellt oder getrennt werden.

Einstellungen für LAN-Geräte

IP Adresse | In einem Netzwerk besitzt jedes Gerät eine IP Adresse. Hier muss die IP Adresse des externen Gerätes eingegeben werden. Das kann der Gerätename im Netzwerk sein oder z.B. eine IP4 Adresse (wie 192.16.0.25)
Adresse prüfen | Es wird geprüft, ob die IP Adresse syntaktisch richtig ist und aufgelöst werden kann.
Port | Auf dem externen Gerät befindet sich eine Software/Firmware, die über einen Port gefunden wird. Der Port ist im Prinzip eine Zahl zwischen (1024 und 65535). Hier muss die Port /Nummer eingegeben werden. Diese Angabe müsste in der Bedienungsanleitung des externen Gerätes zu finden sein.
verbinden - trennen | Hier kann die Verbindung hergestellt oder getrennt werden. Da alle Nachrichten über das einfache UDP Protokoll gesendet werden, ist es leider nicht möglich zu prüfen, ob das externe Gerät auch wirklich erreichbar ist., also ob die IP Adresse und Port Nummer stimmen. Dies muss einfach ausprobiert werden, ob das externe Gerät reagiert..

## Fernsteuern des SPIT Servers (z.B. liveSHOWsoftware)

Das Prinzip: Der SPIT Server (z.B. liveSHPWsoftware) teilt dem liveSHOW_RXTX Client mit, welche Fernsteuerbefehle existieren.
Im liveSHOW_RXTX Client kann jedem Fernsteuerbefehl mehrere Nachrichten zugeordnet werden. Wenn eine Nachricht empfangen wird, wird der der entsprechende Fernsteuerbefehl ausgeführt.
Eine Nachricht kommt von einem externen Gerät (USB oder LAN).
Mit dem Suchfeld können Sie nach Fernsteuerbefehlen suchen.
Wenn Sie auf eine Spaltenüberschrift klicken werden alle Reihen entsprechend sortiert.
Sind Fernsteuerbefehle mit rotem Hintergrund dargestellt, so besteht entweder keine Verbindung zu einem SPIT-Server oder die Fernsteuerbefehle gibt es auf dem SPIT-Server nicht, weil z.B. ein anderes Projekt geladen wurde..
Der SPIT Server (z.B. die liveSHOWsoftware) sendet an die verbundenen RXTX Clients alle möglichen Fernsteuerbefehle. In der Liste dieser Befehle können Sie einen auswählen.
Is ein Fernsteuerbefehl ausgewählt, können auf der rechten Seite Nachrichten für den ausgewählten Fernsteuerbefehl eingetragen werden

| Hier kann die Darstellung der Nachrichten umgestellt werden: Text: Die Nachricht wird in Textform dargestellt. Nicht alle Nachrichten lassen sich textuell darstellen, sendet das externe Gerät einen Bytecode, so kann die textuelle Darstellung kryptisch aussehen. Bytes: Die nachricht wird als Bytes angezeigt, pro Byte zwei Zeichen und zwischen zwei Bytes ein Leerzeichen (z.B. 01 0F 0A 00 10)
| Eine neue Nachricht wird zur Liste hinzugefügt. Durch einen Doppelklick m it der linken Maustaste auf eine Nachricht kann diese in der Tabelle geändert werden. Durch Drücken der Eingabe-Taste wird die Änderung übernommen.
| Löscht die ausgewählte Nachricht.
| Schaltet den Lernmodus ein oder aus. Ist der Lernmodus eingeschalten, bekommt die Tabelle einen grünen Rahmen. Sendet eines der externen Geräte (USB / LAN) eine Nachricht wird diese automatisch hinzugefügt. Der Lernmodus muss wieder ausgeschalten werden, um die Fernsteuerfunktion zu nutzen!.

Sendet ein externes Gerät eine der hinzugefügten Nachrichten, wird der Fernsteuerbefehl auf dem SPIT-Server (liveSHOW) ausgeführt.
Hinweis: Manche Geräte senden zwei Nachrichten z.B. einen für das Drücken einer Taste und einen für das Loslassen einer Taste.

## Das Senden von Nachrichten durch Trigger

Das Prinzip: In der SPIT Server Software können Trigger angelegt werden, in der liveSHOW_RXTX Client Software können einem Trigger Nachrichten zugeordnet werden, die gesendet wird, wenn der Trigger von der Server Software gespielt wird.
Dabei kann noch entschieden werden, an welche Geräte die Nachrichten eines Triggers gesendet werden.
Hierbei wird zwischen Trigger-Typen und Trigger-Objekten unterschieden. In der liveSHOWsoftware können Trigger-Typen angelegt werden, die namentlich eine gewünschte Aktion beschreiben.
Im liveSHOW_RXTX Client können einem Trigger-Nachrichten zugeordnet werden.
Wird in der liveSHOWsoftware ein Trigger-Typ in die Timeline (oder in das Jinglefenster) gezogen, so entsteht ein Trigger-Objekt, das auf den Trigger-Typ verweist. Immer wenn ein Trigger-Objekt von der liveSHOWsoftware abgespielt wird, wird dies dem liveSHOW_RXTX Client mitgeteilt und dieser sendet die Nachrichten an die ausgewählten externen Geräte..

- Ein Trigger Typ ist die Grundlage (Quelle) für ein Trigger Objekt. Ein bestimmter Trigger Typ existiert genau einmal. Trigger Typen können nicht abgespielt werden, sie sind nur die Grundlage für ein Trigger Objekt.
- Ein Trigger Objekt besitzt genau einen Trigger Typ. Trigger Objekte können mehrfach vorhanden sein. Trigger Objekte können abgespielt werden.

Es werden drei Situationen unterschieden, für jede Situation können Nachrichten zugeordnet werden:

1. Das Objekt wird gestartet (Start)
   In der liveSHOWsoftware läuft der Playcursor gerade in das Objekt oder der Cursor wird in das Objekt gesetzt.
   Die zugewiesenen Nachrichten werden einmal gesendet.
2. Das Objekt wird gespielt (dauernd)
   In der liveSHOWsoftware befindet sich der Playcursor innerhalb des Objektes.
   Die zugewiesenen Nachrichten werden immer wieder während des Abspielens gesendet. (Die Timeline in der liveSHOWsoftware sendet ca. alle 40ms die Nachrichten.
3. Das Objekt wird beendet (Ende)
   In der liveSHOWsoftware verlässt der Playcursor das Objekt.
   Die zugewiesenen Nachrichten werden einmal gesendet.

Der liveSHOW_RXTX Client listet alle Trigger Typen auf, die in der jeweilgen SPIT Serversoftware (z.B. liveSHOWsoftware) erzeugt wurden.
Mit dem Suchfeld können Sie die Liste einschränken.
Wenn Sie auf eine Spaltenüberschrift klicken, werden alle Reihen entsprechend sortiert.
Sind Trigger mit rotem Hintergrund dargestellt, so besteht entweder keine Verbindung zu einem SPIT-Server oder die Trigger gibt es auf dem SPIT-Server nicht, weil z.B. ein anderes Projekt geladen wurde.
Wenn Sie einen Trigger Typ auswählen, können Sie diesem Trigger Typ Nachrichten zuordnen. Diese Nachrichten werden gesendet, wenn ein Trigger Objekt abgespielt wird, das diesen Trigger Typ als Quelle hat.
Wie oben schon beschrieben gibt es drei Ereignisse beim Abspielen eines Trigger Objektes, denen jeweils Nachrichten zugeordnet werden können:

1. beim Start : Das Trigger Objekt wird gestartet oder der Play Cursor springt in das Objekt
2. am Ende: Der Play Cursor verlässt das Trigger Objekt
3. Dauernd: Der Play Cursor befindet sich innerhalb des Objektes, es werden in regelmässigen Abständen Triggerereignisse gesendet

| Hier kann die Darstellung der Nachrichten umgestellt werden: Text: Die Nachricht wird in Textform dargestellt. Nicht alle Nachrichten lassen sich textuell darstellen, sendet das externe Gerät einen Bytecode, so kann die textuelle Darstellung kryptisch aussehen. Bytes: Die nachricht wird als Bytes angezeigt, pro Byte zwei Zeichen und zwischen zwei Bytes ein Leerzeichen (z.B. 01 0F 0A 00 10)
| Eine neue Nachricht wird zur Liste hinzugefügt. Durch einen Doppelklick m it der linken Maustaste auf eine Nachricht kann diese in der Tabelle geändert werden. Durch Drücken der Eingabe-Taste wird die Änderung übernommen. Wert: Zusätzlich kann noch angegeben werden, ob der aktuelle Wert aus dem Trigger-Objekt einer Nachricht angehängt werden soll. Trigger-Objekte können eingefadet und ausgefadet werden und es kann der Maximal Wert angegeben werden. Diese Werte werden beim Abspielen eines Trigger-Objektes immer mitgesendet. Wird der Haken hinter einer Nachricht gesetzt, so werden die Werte an die Nachricht angehängt. Die Werte werden immer als Text (String) in ppm (parts per million) in 7 Zeichen angehängt. Beispiel: Ist ein Trigger-Objekt zu 25% eingefadet so wird die Zeuchenfolge "0250000" angehängt. Ist das Triggerobjekt zu 100% eingefadet so wird "1000000" angehängt. Im obigen Bild würde dann bei 25% die Nachricht "Message_10250000" und bei 100% die Nachricht "Message_11000000" gesendet werden.
| Löscht die ausgewählte Nachricht.
| Schaltet den Lernmodus ein oder aus. Ist der Lernmodus eingeschalten, bekommt die Tabelle einen grünen Rahmen. Dies kann verwendet werden, wenn ein externes Gerät nicht nur auf Nachrichten reagiert, sondern diese auch senden kann. Sendet eines der externen Geräte (USB / LAN) eine Nachricht wird diese automatisch hinzugefügt. Der Lernmodus muss wieder ausgeschalten werden!
Liste der Geräte | Zuordnung der Geräte Unterhalb werden die verbundenen Geräte aufgelistet und es kann ausgewählt werden, an welche Geräte die Nachrichten gesendet werden sollen.

Unten werden alle Trigger-Objekte aufgelistet und es wird angezeigt, wenn en Trigger-Objekt abgesopielt wird. Diese Tabelle ist nur zur Information.

## Das Laden und Speichern der Einstellungen

RXTX Einstellungen sind abhängig von dem geladenen Projekt des SPIT Servers (z.B. liveSHOWsoftware). Daher sollte der Dateiname unter dem die Einstellungen gespeichert werden, dem Dateinamen des Server Projektes entsprechen.
Wenn Sie sich angewöhnen die RXTX Einstellungen immer im Projektordner des Servers zu speichern, so finden Sie recht schnell die zum Server Projekt passende Datei.
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.

| Alle Einstellungen können in einer Datei gespeichert werden. Die RXTX Einstellungen sind eng mit dem Projekt des Servers verknüpft. Um diesen Zusammenhang erkennbar zu machen, sollten Sie immer den gleichen Dateinamen wie das Projekt des Servers verwenden. 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.
| Die gespeicherten Einstellungen können aus aus einer Datei geladen werden.
| Ist dies aktiviert, so wird beim Start des liveSHOW_RXTX Clients automatisch die zuletzt geladenen/gespeicherten Einstellungen geöffnet. |

Anmerkung: Alle Trigger Typen, Trigger Objekte oder Fernsteuerbefehle, die im liveSHOW_RXTX Client gelistet sind und nicht mit denen des Server Projektes übereinstimmen, werden mit einem roten Hintergrund dargestellt.