Das Plugin unterstützt nur die Windows-Version von X-Plane.
Durch das X-Plane Plugin SDK2 und X-Plane SDK3 wird Zugriff auf Kommandos und Daten-Referenzen zur Verfügung gestellt. Durch Plugins ist es möglich, mit externer Hardware Kommandos an den Flugsimulator X-Plane zu senden und Variablen zu setzen.
Das X-Plane Plugin kommuniziert direkt mit der Arduino-Hardware über das Netzwerkprotokoll UDP.
Für die Verwendung der X-Plane Plugins ist eine X-Plane-Version höher 10.0 notwendig. Voraussetzung ist ein konfiguriertes Netzwerk mit automatischer Adressvergabe (DHCP), damit dem Arduino eine gültige IP-Adresse zugewiesen wird. Dies erfolgt z.B. über den Router, der die Internetverbindung realisiert.
Speicherort der X-Plane Plugins:
Die Plugins *.xpl
müssen manuell aus dem Installationsordner in den Plugin-Ordner des X-Plane kopiert werden, dieses Verzeichnis \Ressources\plugins
liegt unterhalb des X-Plane-Installationsorders.
Der Speicherort der Konfigurations-Dateien der X-Plane Plugins ist:
Win7 ff: C:\Users\Benutzername\AppData\Roaming\Sim&IT\X-Plane-Plugins
Diese Ordner sind standardmäßig versteckt.
Die Konfigurationsdatei kann z.B. mit dem Editor (Programme → Zubehör) angezeigt und bearbeitet werden. Ein entsprechender Link zur Konfigurationsdatei wird bei der Installation im Programmordner erzeugt.
Nach dem Start des Setup können Sie den Zielordner der Installation und den Menü-Ordner der Programm-Gruppe ändern. Mit „Fertigstellen“ ist die Client-Installation abgeschlossen.
Nach der Installation finden Sie in der bei der Installation vorzugsweise angegebenen Programmgruppe Sim&IT X-Plane-Plugins
die Links zum Installationsordner der Plugins und zur Konfigurationsdatei für das Ändern der Konfigurationsvariablen der Plugins.
Nach dem Starten des X-Plane finden Sie im Menü Plugins jeweils einen Menüpunkt mit zwei Unterpunkten für Infos und für die Eingabe von Lizenzinformationen. Das Pugin funktioniert ohne Lizenz für ca. 10 Minuten.
Im Info-Bereich wird entweder die Verbindung zum Arduino-Panel und die Lizenzinformation angezeigt.
Wenn mehr als ein Netzwerkadapter gefunden wurde, dann werden diese mit dem Index angezeigt, der vom Betriebssystem vergeben wurde. Der Index des Netzwerkadapters, an dem die Arduino-Hardware angeschlossen ist, muss in der Konfigurationsdatei
.\AppData\Roaming\Sim&IT\X-Plane-Plugins\Encoder-Control.cfg
mit der Konfigurationsvariablen INTERFACE_INDEX
definiert werden, um eine Verbindung aufzubauen.
Zum Feststellen des Index kann auch das mitinstallierte Programm Show NetIndex
genutzt werden, dieses zeigt ebenfalls die installierten Netzwerk-Adapter und deren Index im Betriebssystem an.
Mit Windowsmitteln kann dies wie folgt ermittelt werden:
wmic path win32_networkadapter get name, index, interfaceindex
Den Konfigurationsvariablen folgt ein =
und dann der zu setztende Wert.
Für alle Module gibt es den Abschnitt [NET]
mit der Konfigurationsvariablen
INTERFACE_INDEX
zur Definition des Netzwerkadapters bei mehreren im System
Für den Encoder Controller gibt es den Abschnitt [ENC1]
ARDU_PORT
zur Definition des Ports des empangenden Gerätes, wenn Standardport nicht nutzbar istRECV_PORT
zur Definition des Ports auf dem PC, wenn Standardport nicht nutzbar istDie geänderten Ports müssen ebenfalls im Arduino-Sketch definiert sein.
Für jeden Encoder (1 bis 6) gibt es Konfigurationseinstellungen, um andere als die vorgegebenen Variablen bzw. Kommandos entsprechend der Dateien Commands.txt
bzw. DataRefs.txt
zu definieren (exemplarisch für Encoder1):
ROTARY1_CMD_OR_VALUE
0 bedeutet, dass Kommandos definiert werden, 1 bedeutet, dass eine zu definierende Variable erhöht oder verringert wird.ROTARY1_VALUE
definiert eine zu verändernde Variable, Voraussetzung ist die Definition von ROTARY1_CMD_OR_VALUE=1
ROTARY1_INVERSE
ändert die Drehrichtung bei der VariablenänderungROTARY1_CMD_RIGHT
Kommando für Drehrichtung im UhrzeigersinnROTARY1_CMD_LEFT
Kommando für Drehrichtung entgegen UhrzeigersinnROTARY1_CMD_PB
Kommando beim Drücken auf die Drehgeberachse (Push Button)ROTARY1_CMD_PB_HOLD
Kommando bei längerem Drücken auf die DrehgeberachseFür den Encoder6 gibt es noch eine zusätzliche Funktion. Wenn die Option
ROTARY6_PUSH_TO_ACTIVATE
auf 1
gesetzt ist, dann wird der Encoder erst nach dem einmaligen Drücken aktiviert.
Es gibt noch zwei Einzeltasten 7 und 8 mit den Konfigurationsvariablen (exemplarisch für Taste7).
KEY7_CMD
Kommando beim Drücken der TasteKEY7_CMD_HOLD
Kommando bei längerem Drücken der TasteBei den Tests wurde festgestellt, dass das mehrfache Aufrufen eines Kommandos während eines Loop-Durchlaufes keine Auswirkungen hat, das Kommando scheint nur einmal ausgeführt zu werden, im Gegensatz zum Inkrementieren und Dekrementieren. Falls sich im Übertragungs-Puffer mehrere gleiche Drehgeber-Ereignisse befinden, funktioniert das Ändern einer Variable besser als die Kommando-Ausführung.
Die Konfiguration der Schalter ist bei den Erweiterungen beschrieben.