SPIT_GPIO

Autor: Hagi Blickle   www.liveshowsoftware.de

SPIT_GPIO ist die Einstellungssoftware für die SPIT_GPIO-Platinen Erweiterung des Raspberry Pi. Die geeigneten Modelle sind der Raspberry Pi 4 B oder der Raspberry Pi 3 B+.

Die SPIT_GPIO Software regelt auch die Ansteuerung der Platine, deshalb muss die SPIT_GPIO-Software auf dem Raspberry Pi dauerhaft laufen.



Die Ausgänge der Platine können über eine externe Steuerungssoftware (z.B. liveSHOWsoftware) und/oder über das Auslösen von eigenständigen Aktionen angesprochen werden.


Auf der SPIT_GPIO-Platine gibt es unterschiedliche Bausteine und Anschlüsse:

Sicherheitshinweis:

Es werden alle Ausgänge auf Nullstellung heruntergefahren (beendet) wenn:
Bitte beachten Sie dies, wenn Sie Requisiten oder etwas anderes am Raspberry Pi anschließen!

Zudem sollten Sie darauf achten, keine gefährlichen Objekte mit dem Raspberry Pi zu steuern und, dass während der Programmierung und Testphase keine gefährlichen Objekte angeschlossen sind.
(Beispiel: sollten Sie Pyrotechnik mit den Relais steuern, so müssen Sie sicherstellen, dass Sie die rechtlichen Bestimmungen einhalten und während der Programmierung und Testphase keinen Effekt scharf gestellt haben.)
Dies gilt auch für jede andere Technik, die Sie mit dieser Software steuern möchten.
Alle Programmierungen müssen vor dem Einsatz in einem sicheren Umfeld getestet werden! 

Disclaimer:

Der Entwickler übernimmt keine Haftung für Schäden, die durch unsachgemäße Bedienung entstehen.
Die Software ist sorgfältig getestet, sollten Fehler enthalten sein, können diese dem Entwickler gemeldet werden.
Schadensersatzansprüche des Kunden sind ausgeschlossen, soweit sich aus den nachfolgenden Gründen nicht etwas anderes ergibt.
Dies gilt auch für den Vertreter und Erfüllungsgehilfen des Anbieters, falls der Kunde gegen diese Ansprüche auf Schadensersatz erhebt.
Ausgenommen sind Schadensersatzansprüche des Kunden wegen Verletzung des Lebens, des Körpers, der Gesundheit oder wesentlicher Vertragspflichten,
welche zur Erreichung des Vertragszieles notwendigerweise erfüllt werden müssen.
Ebenso gilt dies nicht für Schadensersatzansprüche nach grob fahrlässiger oder vorsätzlicher Pflichtverletzung des Anbieters oder
seines gesetzlichen Vertreters oder Erfüllungsgehilfen.

Netzwerkverbindung mit dem Raspberry Pi:

Damit die Platinenausgänge der SPIT_GPIO-Platine von einer ecternen Steuerungssoftware (zB. liveSHOWsoftware) angesprochen werden können, müssen der Raspberry Pi und der Rechner auf dem die ecterne Steuerungssoftware (liveSHOWsoftware) läuft per Netzwerk verbunden sein.
Sind beide in demselben Netzwerk, so findet die SPIT_GPIO-Software die ecterne Steuerungssoftware (liveSHOWsoftware) automatisch und stellt eine Verbindung her.

a) per WLAN

Sowohl der Rechner auf dem  die liveSHOWsoftware läuft und der Raspberry Pi müssen mit demselben WLAN-Accesspoint verbunden sein.
Der Raspberry Pi lässt sich mit einem Accesspoint verbinden, indem mit der linken Maustaste auf das Netzwerksymbol geklickt wird.


Es öffnet sich eine Liste mit allen gerade erkannten Accesspoints. Ein Klick auf einen Accesspoint stellt eine Netzwerkverbindung her. Wurde noch nie eine Verbindung zu dem Accesspoint hergestellt, öffnet sich ein Fenster in dem das WLAN-Passwort (Sicherheitsschlüssel)  des Accesspoint eingetragen werden muss.


ACHTUNG: Verwenden Sie nicht den heimischen Accesspoint, sondern immer den Accesspoint, den Sie auch am Veranstaltungsort verwenden. Der Raspberry Pi verbindet sich nach einem Neustart immer mit dem Accesspoint, mit dem er zuletzt verbunden war.
Hinweis: Am besten legen Sie sich einen Hardware Accesspoint zu, der DHCP eingebaut hat. So ein Acceespoint kann Netzwerk IP Adressen vergeben und am Raspberry Pi müssen keine statischen Netzwerkadressen eingetragen werden.

b) per LAN Kabel

Am Rasbperry Pi muss ein LAN-Kabel angeschlossen werden, die andere Seite des LAN-Kabel kann mit dem Rechner auf dem die liveSHOWsoftware läuft oder einem Netzwerk-HUB/Switch verbunden werden.
Das Netzwerksymbol ändert sich  




Die Statusleiste

In der oberen Zeile wird der Verbindungsstatus angezeigt

Besteht eine Verbindung zu einem SPIT-Server (externe Steuerungssoftware, z.B. liveSHOWsoftware), so wird das Quadrat in Grün dargestellt und es wird der Computername und der aktuelle Projektname des SPIT-Servers angezeigt.


Besteht keine Verbindung, so so wird das Quadrat in Rot dargestellt und es wird kein Computername und kein Projektname angezeigt.


öffnet ein Hilfe-Fenster.

Die Einstellungen

Hinweis: Änderungen müssen erst gespeichert werden, sonst haben sie keine Wirkung!

Mit werden die Änderungen gespeichert.
Mit werden die Änderungen verworfen. Eine Ausnahme ist die Einstellung der Elemente einer eigenständigen Aktion, diese können nicht verworfen werden - siehe weiter unten.

Hinweis: Die Einstellungen werden auf dem RaspberryPi im Ordner /home/pi/.SPIT_GPIO gespeichert. Die Grundeinstellungen werden in der Datei settings(x).ini gespeichert (x) steht hierbei für die HardwareNummer der Aufsteckplatine.
Alle Projektabhänigen Einstellungen werden in Dateien gespeichert, deren  Namen dem Namen des geladenen Projektes der externen Steuerungssoftware (z.B. liveSHOWsoftware) entspricht - siehe weiter unten: Das Einstellen der Hardware ... -  Input (Eingang).


Mit  können die Einstellungsdateien in einen anderen Ordner, z.B. auf einen USB Stick, exportiert werden.
Mit  können die Einstellungsdateien aus einem  (Export)-Ordner importiert werden.

Prefix

Oben im Einstellungsfenster kann ein kurzer Text eingegeben werden, der allen anderen Namen vorangestellt wird, so dass in der externen Steuerungssoftware die Namen unterschieden werden können, wenn mehrere Raspberry Pi zum Einsatz kommen.



Kurze Erläuterung: Sie können mehrere Raspberry Pi mit SPIT_GPIO-Platinen verwenden.
Beim ersten Start der SPIT_GPIO-Software auf einem Raspberry Pi, wird für jeden Baustein (mögliche Trigger) einmalig eine interne eindeutige ID vergeben.

Somit unterscheiden sich die Trigger von zwei Raspberry Pi, auch wenn sie den gleichen Namen haben.
Nicht durch den Name werden die Trigger unterschieden, sondern durch die interne ID.
In der externen Steuerung-Software (liveSHOWsoftware) tauchen dann mehrere Trigger auf, die eventuell den gleichen Namen aber unterschiedliche IDs haben.
Um diese in der externen Steuersoftware (liveSHOWsoftware) besser unterscheiden zu können müssen Sie in der SPIT_GPIO-Software entweder das Prefix oder die Namen der einzelnen Trigger ändern (siehe auch Beispiel liveSHOWsoftware am Ende des Textes).


Durch einen Export der Einstellungen werden auch die internen ID's mit exportiert. So können Sie die Einstellungen auf einen neuen Raspberry Pi oder auf eine neue SD-Karte sichern, indem Sie die exportierten Einstellungen importieren. Verwenden Sie mehrere Raspberry Pi so müssen Sie von jedem einen extra Export als Sicherung machen. Sie sollten darauf achten, dass Sie nicht zwei Raspberry Pi mit denselben Einstellungen (importierten Sicherungen) betreiben, da sonst die internen IDs mehrmals vorhanden sind.




Das Einstellen Hardware Ein-/Ausgänge der Platine:

Alle Änderungen können mit 'Save' gespeichert werden. Mit 'Cancel' werden die Änderungen verworfen.

 Input (Eingang)


An den Eingängen (Input) können z.B. Taster angeschlossen werden. Werden die Kontakte eines Eingangs verbunden oder getrennt kann ein Fernsteuer-Befehl an die externe Steuerungssoftware (liveSHOWsoftware) gesendet werden und/oder eine eigenständige Aktion ausgelöst werden
Dies ermöglicht das Fernsteuern der externen Steuerungssoftware oder das Abspielen von eigenständigen Aktionen ohne eine externe Steuerungssoftware.



'---' bedeutet, dass nichts ausgelöst wird.

a) connect 
In diesem Fall wird der eingestellte Fernsteuer-Befehl gesendet und/oder die eingestellte Aktion ausgelöst,
wenn die Kontakte verbunden werden (z.B. der angeschlossene Taster wird gedrückt)
b) disconnet
In diesem Fall wird der eingestellte Fernsteuer-Befehl gesendet und/oder die eingestellte Aktion ausgelöstr,
wenn die Kontakte getrennt werden (z.B. der angeschlossene Taster wird losgelassen)

Die Standalone Actions (eigenständige Aktionen) werden weiter unten erläutert.

Ein Fernsteuer-Befehl kann eine Aktion auf der Steuerungssoftware auslösen (z.B. Sprung zur nächsten Szene) oder Werte verändern (z:B. Sound Volume - Lautstärke).

In dem Fall, dass Werte verändert werden, kann noch eingestellt werden, ob der Wert um 5% erhöht (+ 5%) oder um 5% erniedrigt (-5%) werden soll.

Eine direkte Werteingabe ist nicht möglich, nur das Erhöhen oder Erniedrigen eines Wertes kann ausgelöst werden.

Hinweis: Damit die Fernsteuer-Befehle aufgelistet werden, muss eine Verbindung zur externen Steuerungssoftware (liveSHOWsoftware) bestehen.

Beim Speichern 
werden die Fernsteuer-Befehle immer in einer Datei gespeichert, die denselben Namen besitzt, wie der Projektname der externen Steuerungssoftware (z.B. liveSHOWsoftware).
Somit ist der Name der  
Projektname der externen Steuerungssoftware ausschlaggebend dafür in welche Datei die Fernsteuer-Befehle gespeichert und wieder geladen werden!!!
Sie sollten den Projektnamen der externen Steuerungssoftware mit Bedacht wählen.

Der Speicherort im Raspberry Pi  ist
/home/pi/.SPIT_GPIO/

Beispiel: Hat die externe Steuerungssoftware den Projektnamen "Projekt1", so wrid beim Speichern eine Datei /home/pi/.SPIT_GPIO/Projekt1 erzeugt oder überschrieben, wenn sie schon vorhanden ist.

Wenn Sie sehr häufig neue Projekte erstellen, so können Sie auf dem Raspberry unter dem Ordner (/home/pi/.SPIT_GPIO) die nicht mehr benötigten Dateien (z.B. /home/pi/.SPIT_GPIO/Projekt1.ini) löschen.

Wird in der externen Steuerungssoftware ein Projekt geladen, so versucht die SPIT_GPIO Software auf dem Raspberry Pi eine Datei zu finden, die dem Projektnamen entspricht.
Wird eine entsprechende Datei gefunden, so werden die Fernsteuer-Befehle aus dieser Datei geladen.
Wird keine entsprechende Datei gefunden, weil z.B. für dieses Projekt noch keine Einstellungen gespeichert wurden, so bleiben nur die projektunabhängigen Fernsteuer-Befehle erhalten.

Es gibt zwei Arten von  Fernsteuer-Befehlen:
  1. Projektunabhängige Fernsteuer-Befehle
    Dies sind Befehle, die immer  vorhanden sind, unabhängig davon welches Projekt von der externen Steuerungssoftware  (liveSHOWsoftware) geladen wurde.
    Im Fall der liveSHOWsoftware ist dies zum Beispiel der Befehl 'nächste Szene' oder die 'Sound Lautstärke'.
  2. Projektabhängige Fernsteuer-Befehle:
    Dies sind Befehle, die nur existieren, wenn ein bestimmtes Projekt von der externen Steuerungssoftware geladen wurde.
    Im Fall der liveSHOWsoftware ist dies zum Beispiel der Befehl eine 'bestimmte Szenenbrücke starten' oder ein 'bestimmtes Jingle starten'. Wenn die liveSHOWsoftware ein anderes Projekt lädt, so existiert die Szenenbrücke oder das Jingle nicht mehr.
    Projektabhängige Befehle werden mit einem '*' vor dem Namen dargestellt.



Mit den Test-Knöpfen können Sie die Einstellungen der einzelnen Eingänge testen.

Der Test-Knopf  bei 'connect' reagiert auf das Drücken der Maustaste und startet die Aktonen für das Verbinden der Kontakte des Eingangs.
Der Test-Knopf  bei 'disconnect' reagiert auf das Loslassen der Maustaste und startet die Aktonen für das Trennen der Kontakte des Eingangs.

Hinweis: Die Test Knöpfe funktionieren auch ohne, dass die Einstellungen vorher gespeichert wurden.
Damit die Einstellungen übernommen werden und der Hardware-Input funktioniert, müssen die Einstellungen erst gespeichert werden.







Servo-Motor-Ausgang



Über den Motorausgang der Platine kann ein Servo-Motor  angesteuert werden. Die Stellung (Auslenkung) des Motors kann über die Steuerungssoftware oder über ein Element einer eigenständigen Aktion bestimmt werden.

Sie können einen eigenen Namen für den Ausgang vergeben (Motor_1).

Die maximale Auslenkung des Motors kann bei eingegeben werden. Somit ist es möglich eine Beschränkung der maximalen Auslenkung festzulegen.
0.0 = Nullstellung
0.5 = der Motor wird maximal zu 50% ausgelenkt
1.0 = normal volle Auslenkung
> 1.0 = der Motor wird übersteuert, dies wird von manchen Motoren erlaubt. Wird dieser Wert zu hoch eingestellt, so reagiert der Motor eventuell nicht oder er zittert!

Gründe für eine Übersteuerung:
Normalerweise liegt der maximale Wert zwischen 0.0 und 1.0. Der Motor müsste von der Nullstellung bis zur vollen Auslenkung fahren. Nicht alle Motoren erreichen die vom Hersteller angegebene mavimale Auslenkung.
Manche Motoren haben eine Steuerungselektonik, die nicht der eigentlichen Norm entspricht und erreichen nicht die volle Auslenkung bei einem Wert von 1.0. In diesem Fall kann versucht werden, ob der Motor reagiert, wenn man einen höheren Wert als 1.0 einsetzt.
Wird jedoch ein zu hoher Wert eingesetzt, so reagiert der Motor bei diesem Wert nicht. Der maximal höchste Wert kann nur durch Ausprobieren festgelegt werden, es sollte der Wert genommen werden, bei dem der Motor noch reagiert..

Das Verhalten von Motoren kann ganz unterschiedlich sein, durch die billige Herstellungsweise mancher Motoren, können sogar Motoren aus der gleichen Charge unterschiedlich reagieren.

Im Einstellungsfenster kann ein Name ('Motor_1') vergeben werden, der dann auch in der Steuerungssofware mit vorangestelltem Prefix angezeigt wird.

Interna: Es wird die Pin-Nummer des verwendeten Pin auf dem Raspberry Pi angezeigt, dies ist die WiringPi-Nummerierung und nicht die GPIO-Nummerierung.
Wird die SPIT_GPIO Software mit Adminrechten gestarted, so wird der Ausgang mittels der Hardware-PWM gesteuert, sonst wird der Motor mit der Software-PWM gesteuert und kann zittern.

Bitte beachten Sie, dass ein Servo-Motor unter Umständen sehr viel Strom(A) benötigt. Bei der Auswahl eines Servo Motors sollten Sie darauf achten einen Motor mit möglichst wenig Strombedarf zu verwenden. Die aktuellen Powerbänke liefern meist 5V mit maximal 2.5 A.
Sollte Ihr Servomotor eine ander Spannung benötigen oder einen hohen Stromverbrauch besitzt, muss der Servomotor über eine externe Stromquelle versorgt werden. Hierzu müssen der Minus-Anschluss der Platine, der Minus-Anschluss des Motors und der Minuspol der externen Stromquelle verbunden werden. Der Plus-Anschluss des Motors wird mit dem Pluspol der externen Stromquelle verbunden. Die Datenleitung wird mit dem Daten-Anschluss der Platine verbunden.







  Relais-Ausgang



Ein Relais funktioniert wie ein Schalter, es kann eingeschalten  oder ausgeschalten werden. Im eingeschalteten Zustand werden die Kontakte des Relais verbunden.
So kann mit einem Relais ein anderer Stromkreis geschalten werden.
Welche Spannung (V) und Stromstärke (A) erlaubt sind, hängt von der Hardware-Platine ab. Bitte beachten Sie die Beschreibung der Hardware-Platine.
Im Einstellungsfenster kann für jedes Relais ein Name eingegeben werden. Dieser Name wird in der Steuerungssofware mit vorangestelltem Prefix angezeigt,

Interna: Für jedes Relais wird die Pin-Nummer des verwendeten Pin auf dem Raspberry Pi angezeigt, dies ist die WiringPi Nummerierung.







 LED-Ausgang



An einen LED Ausgang der Platine kann eine LED (kurze LED-Stripes) angeschlossen werden. LED's können gedimmt werden (PulsWeitenModulation PWM). Die Helligkeit einer LED (eines LED-Stripe) kann über die Steuersoftware geregelt werden.
Im Einstellungsfenster kann für jeden LED Ausgang ein Name angegeben werden. Dieser Name wird in der Steuerungssofware mit vorangestelltem Prefix angezeigt.
Wieviele LEDs über einen LED_Ausgang gesteuert werden können, hängt von der Hardware-Platine und deren Stromversorgung ab.Wenn einzelne LEDs angeschlossen werden, so muss jeweils ein Vorwiderstand vorgeschalten werden.
Bitte lesen Sie hierzu die Beschreibung der Hardware-Platine!

Interna: Für jeden LED Ausgang wird die Pin-Nummer des verwendeten Pin auf dem Raspberry Pi angezeigt, dies ist die WiringPi Nummerierung.







 RC (Radio Control)



Es können über den 433 MHz RC-Sender der Platine Funkkommandos gesendet werden. Diese Funkkommandos können über den eingebauten 433MHz Empfänger angelernt werden.
So können z.B. Funksteckdosen oder Gadgets (Zaubergeräte, LED Poi, etc) über die Steuersoftware geschalten werden.

Hinweis: Nicht alle 433 MHz Sender/Empfänger verwenden ein standardisiertes Protokoll, es gibt auch sehr individuell gebaute Sender/Empfänger. Deshalb wird man nicht alle Funkkommandos erkennen können.

Mit  kann ein neues RC Kommando erzeugt werden.

Jedem RC Kommando kann ein Name gegeben werden, der  in der Steuerungssofware mit vorangestelltem Prefix angezeigt wird.

Grundsätzlich gibt es drei Typen von RC Komandos

In den Textfeldern werden ein paar Informationen zu dem angelernten Funkkommando angezeigt - siehe auch weiter unten.

 

Im Textfeld  kann angegeben werden wie oft das Funkkommando gesendet werden soll.
Manche Empfänger reagieren erst bei wiederholtem Senden des Funkkommandos, dies muss einfach ausprobiert werden. Da das Senden eines Funkkommandos etwas Zeit benötigt und in dieser Zeit der RC Sender keine weiteren Funkkommandos senden kann kann, sollte eine möglichst kleine Wiederholung eingetragen werden, sie muss aber so hoch sein, dass der Empfänger auch sicher reagiert.
.
Das Anlernen kann mit einem Klick auf  (für Lernen) gestartet werden - siehe weiter unten.
Mit  kann das angelernte Signal zu Testzwecken gesendet werden.
Mit einem Klick auf  wird das jeweilige RC Kommando gelöscht.

Hinweis: Wenn Sie mehrere Handsender für unterschiedliche Geräte besitzen und alle auf der 433 MHz Frequenz funken, ist es unmöglich zwei Handsender gleichzeitig zu drücken. Die Funksignale mischen sich und es kommt Quatsch heraus.
Die SPIT_GPIO Software sendet die Funksignale nicht gleichzeitig, sondern schnell hintereinander. So ist es möglich mehrere Funksignale pseudo-gleichzeitig zu senden, wenn jedoch ein Funksignal längere Zeit benötigt, kann es zu Aussetzern bei den anderen Empfängern kommen. 

Eigenheiten von Funksteckdosen

Manche Funksteckdosenempfänger besitzen einen DIP-Schalter, mit dem die Codierung des Empfängers eingestellt werden kann.
Manche Funksteckdosenempfänger müssen einmal mit dem Handsender angelernt werden. Je nach Bauart behalten die Empfänger diese Information, auch wenn sie vom Strom getrennt werden. Es gibt aber auch Funksteckdosenempfänger, die diese Information nach einiger Zeit verlieren und wieder erneut angelernt werden müssen. Deshalb sollten Sie den Handsender immer mitzuführen.

Das Anlernen eines Funkkommandos (SPIT_GPIO_Sniffer):

Sie benötigen hierfür den Handsender Ihres Funkempfängers.
Mit einem Klick auf  öffnet sich das SPIT_GPIO_Sniffer Fenster. Hier ist der Empfang von 433MHz Signalen aktiviert.



Halten Sie ihren Handsender sehr nahe an die Platine und drücken Sie die anzulernende Taste Ihres Handsenders.

Werden Daten empfangen, so ändert sich der Hintergrund des Hinweistextes auf grün:

Werden verrauschte Daten empfangen, weil z.B. zuviele Störungen vorhanden sind, ändert sich der Hintergrund auf gelb:
   

Wird der Hintergrund nie grün und Sie empfangen keine Werte oder der Hintergund wechselt oft, ohne dass Sie den Handsender gedrückt haben, so gibt es viele Störungen in der Umgebung.
Wenn es geht gehen Sie an einen anderen Ort.


Bleiben Sie solange auf der Handsendertaste bis eine stabile Zifferfolge oder eine Liste von Ziffernfolgen angezeigt wird.



Manche Funkgeräte verwenden einen rollierenden Code, dann werden mehrere Zifferfolgen angezeigt.




Hinweis: Wenn Sie die Taste des Handsenders loslassen und 2 Sekunden warten, können Sie einen erneuten Anlernversuch starten.

Die empfangenen Daten und Parameter des Funk-Protokolls können mit in das Einstellungsfenster übernommen werden.
Dort kann mit einem Klick auf   ausprobiert werden, ob der Empfänger auf das angelernte Kommando reagiert. Wenn nicht, wiederholen Sie das Anlernen oder erhöhen den Repeat Wert.

Hinweis: Manche Funksender/-empfänger können nicht sinnig ausgelesen werden, da das Funkprotokoll in der Software nicht aufgelistet ist oder ein speziell verschlüsseltes Kommando verwendet wird.
Zum Beispiel haben Autoschlüssel ein spezielles Verschlüsselungssystem, so ein System kann nicht angelernt werden!
Es gibt neben dem
433 MHz Funksystem auch noch Funksysteme, die in einer anderen Funkfrquenz senden, diese können hier auch nicht verwendet werden.
In der Regel wird aber ein sehr hoher Prozentsatz der auf dem Markt befindlichen 433 MHz Funksysteme erkannt.

Mit  werden die Werte in das Einstellungsfenster übernommen, mit  werden die erkannten Werte verworfen, das Anlernfenster wird geschlossen.

Was kann man tun, wenn das Anlernen eines Gerätes nicht funktioniert - keine Ziffernfolge angezeigt wird?

Es gibt unterschiedliche Ursachen, wenn das Anlernen nicht funktioniert:
  1. Sie sind mit dem Handsender zu weit von der Platine entfernt!
    Dann sind für den eingebauten Empfänger die Signale zu schwach. Gehen Sie sehr nahe an die Platine und drücken Sie den  Knopf auf dem Handsender erneut.
  2. In der Umgebung gibt es viele Störsender!
    Das erkennt man meist daran, dass 'Press Button on your RC sender' ohne gedrücktem Handsender zappelt.
    Suchen Sie eine ruhigere Umgebung auf - ohne viele Funkquellen.
  3. Der Handsender sendet nicht auf 433 MHz!
    Dies erkennt man daran, dass sich bei 'Press Button on your RC sender' trotz gedrücktem Handsender gar nichts tut. Vielleicht gibt es eine Beschreibung ihres Funkgerätes, in der die Sendefrequenz steht
  4. Das Funk-Protokoll ist der Software nicht bekannt!
    Dann können Sie versuchen über die Experten-Einstellungen das Protokoll selbst zu erstellen - siehe Experteneinstellungen.

Was kann man tun, wenn das Anlernen eines Gerätes zwar funktioniert hat, aber der Empfänger nicht reagiert?

  1. Eventuell ist der Empfänger zu weit weg!
    Verkürzen Sie den Abstand zwischen Empfänger und Platine /  Raspberry Pi. 
  2. Eventuell ist die automatisch erkannte Pulslänge nicht richtig!
    Probieren Sie die Pulslänge etwas zu verändern (ca. +/- 10%).
  3. Eventuelll ist das erkannte Protokoll nicht richtig!
    Wenn der Sender ein Protokoll sendet das einem bekannten Protokoll sehr ähnlich ist, kann es sein, dass eine Ziffernfolge angezeigt wird, aber das Protokoll dennoch nicht stimmt.
    Beim Erkennen / Sniffern eines Funksignales muss mit Toleranzen gearbeitet werden, dies kann dazu führen, dass scheinbar ein Protokoll erkannt wird.
    In diesem Fall können Sie versuchen über die Experten-Einstellungen das Protokoll zu kontrollieren und ein eigenes Protokoll zu erstellen - siehe Experteneinstellungen.







Standalone Actions

Standalone Actions sind eigenständige Aktionen / Abläufe, die ohne eine externe Steuerungssoftware (z.B. liveSHOWsoftware) gestartet werden können.

Eine Aktion / Ablauf kann über folgende Arten gestartet werden:



Mit einem Klick auf   wird eine neue eigenständige Aktion / Ablauf erzeugt.
Mit einem Klick auf wird die Aktion gelöscht.

Um zuzuweisen, was durch die Aktion ausgelöst wird, klicken Sie auf .
Es öffnet sich ein neues Fenster:



Mit einem Klick auf wird der Aktion ein neues Element (eine neue Tabellenzeile)  hinzugefügt.
Es dürfen einer Aktion mehrere Elemente hinzugefügt werden, die beim Starten der Aktion gleichzeitig ausgeführt werden.
Das Verhalten eines Elementes kann in der Tabellenzeile festgelegt werden, indem Sie auf eine Zelle der Tabelle doppelt klicken.

Zeitangaben können einfach in Millisekunden oder im Format hh:mm:ss:Millisekunden eingegeben werden. Dargestellt wird die Zeit immer im Stunden:Minuten:Sekunden:Millisekunden-Format.

Hinweis: die Änderungen an den Parametern eines Elementes werden sofort übernommen. Damit die Änderungen dauerhaft gespeichert werden muss nach dem Schließen dieses Fensters auf   geklickt werden.

Action Hier können Sie festlegen welcher Ausgang (Motor, LED, RC ..) mit dem Element gesteuert wird.
Wenn Sie auf eine 'Action' Zelle doppelt klicken, so können Sie aus einer Liste der verfügbaren Ausgängen einen auswählen.
'---' bedeutet, dass kein Ausgang angesprochen wird.
Hinweis: In der aktuellen Version der Software ist die Liste der Ausgänge nicht sortiert dargestellt.
Start Hier können Sie eine Startzeit /Verzögerung angeben, wann das Element startet,
Sie können einfach Millisekunden eingeben oder einen Text im Format hh:mm:ss:Millisekunden.
max Value % Wenn der Ausgang Werte akzeptiert (Motor, LED) können Sie hier den maximalen Wert in Prozent angeben.
Für Ausgänge wie RC oder Relais wird der Wert nicht berücksichtigt.
Fade In Wenn der Ausgang Werte akzeptiert (Motor, LED) können Sie hier die Zeit einstellen bis der maximale Wert erreicht wird.
Ausgänge wie RC oder Relais schalten sofort nach der Startzeit (es wird nicht eingefadet).
Faded in gibt die Zeit nach dem Einfaden an (Start + Fade In)
Length Hier können Sie die Zeit eingeben, wie lange das Element mit maximalem Wert läuft..
Fade Out Wenn der Ausgang Werte akzeptiert (Motor, LED) können Sie hier die Zeit einstellen bis von dem maximalen Wert die 0 (Nullstellung) erreicht ist.
Ausgänge wie RC oder Relais schalten nach der Fade Out Zeit ab (es wird nicht ausgefadet).
Total Gibt die Gesamtdauer des Elementes an. (Fade In + Length + Fade Out)
End Gibt an, wann das Element komplett abgespielt ist. (Start + Fade In + Length + Fade Out)
Ein Doppelklick auf den Papierkorb löscht die Zeile / das Element.

Mit den Elementen und deren Parameter können komplexe Abläufe für eine Aktion realisiert werden.

Es gibt gibt zwei Möglichkeiten solch einen Ablauf abzuspielen:
  1. play/stop
    Hier werden die Elemente einfach abgespielt, bis das letzte Element beendet ist.
    Wird vor dem Ende das Ablaufs 'play/stop' nochmals betätigt, so wird der Ablauf abgebrochen und alle beteiligten Ausgänge werden auf  0 (Nullstellung) gestellt.
  2. fade in/out
    Hier hält der Ablauf bei der längsten Faded-In-Zeit an. Dies ist der Fall, wenn das letzte Element eingefadet wurde (Start + Fade In).
    Ein erneutes Betätigen des 'fade in/out' nachdem der Ablauf angehalten wurde, startet diesen wieder. Der Ablauf ist beendet, wenn das letzte Element beendet wurde (längste End-Zeit).
    Wird vor dem Anhalten (längste Faded-In-Zeit) des Ablaufs 'fade in/out' nochmals betätigt, so wird der Ablauf abgebrochen und alle beteilgten Ausgänge werden auf  0 (Nullstellung) gestellt.
Beispiele zu 2.:  oder oder

Der Ablauf stoppt bei 'fade in/out' jeweils an der roten Linie, der längste Faded-In-Zeit (Start + Fade In).

.
Um die Einstellungen direkt Testen zu können, gibt es die Knöpfe   und .
Wenn Sie einen der Test Knöpfe anklicken startet der Ablauf.

Ein erneutes Anklicken des Test-Knopfes (oder Betätigen eines  Eingangs) bewirkt folgendes Verhalten:
Hinweis zu den RC Ausgängen:
RC Permanent: solange eine Element gespielt wird wird das Funkkommando gesendet.
RC Once: wenn ein Element gestartet wird, so wird einmal das Funkkommando gesendet.
RC On/Off: Beim Starten eines Elementes wird das On-Funkkommando gesendet, beim Beenden eines Elementes wird das OFF-Funkkommando gesendet.

Hinweis zu Relais
Relais können nicht ein- oder ausgefadet werden.
Sobald ein Element gespielt wird, wird das Relais geschlossen.
Wennein ELement beendet wird, wird das Relais geöffnet.
 
Im Feld wird der Abspielstatus angezeigt. Die Farbe ändert sich je nach Status:
Schwarz = nichts wird abgespielt
Grau = Das Abspielen wurde gestartet, aber es wurde noch kein Element gestartet (Abspielzeit < Startzeit)
Hellgrün = es wird mindestens ein Element abgespielt
Besonderheit bei fade in/out
Rot = Der Ablauf hat nach der längsten Faded-In-Zeit (rote Linie) angehalten
Dunkelgrün = Der Ablauf wurde wieder gestartet (fade out)


Das Starten einer Aktion über einen Tasten- oder Mausklick

Unter jeder Aktion befindet sich eine Zeile, in der jeweils für play/stop und/oder fade in/out  eine Taste oder eine Mausklick zugewiesen werden kann.



Zuweisen einer Taste oder eines Mausklicks:
Ein Klick auf löscht die zugewiesenen Tasten.
Abrufen einer Aktion:
Oberhalb der Aktionen befindet sich ein Remote-Feld


Wenn Sie die Maus über das Remote-Feld bewegen, bekommt dieses einen grünen Hintergrund.
Jetzt können Sie eine Taste / Maustaste drücken um die entsprechende Aktion auszulösen.

Hinweise für das Auslösen der Aktionen über die Tastatur oder Maus:
Sie müssen daruf achten, dass sich der Mauszeiger über dem Remote-Feld befindet.
Beim Start der Software (nach dem Hochfahren des RaspberryPi) wird der Mauszeiger automatisch auf das Remote-Feld bewegt.




Die Steuerung am Beispiel der liveSHOWsoftware

Wenn Sie im Menü der liveSHOWsoftware auf 'Medien' und dann auf 'Trigger' klicken,
öffnet sich ein Fenster in dem alle Triggertypen aller verbundenen SPIT-Clients aufgelistet werden.
Im Fall des Raspberry Pi sehen die oben beschriebenen Bausteine und Kommandos aufgelistet - sofern der Raspberry Pi und der Rechner mit der liveSHOWsoftware eine Netzwerkverbindung haben.



Wenn Sie auf einen der aufgelisteten Triggertypen klicken und diesen mit gedrückter linker Maustaste in die Medienspuren der Timeline ziehen, so entsteht dort ein Trigger-Objekt.




Wenn immer sich der Abspielcursor in dem Objekt befindet, wird der Trigger ausgelöst. Wenn sich der Abspielcursor aus dem Objekt bewegt, wird der Trigger beendet.



Bei Motor-Trigger-Objekten kann über den mittleren Anfasser die maximale Auslenkung des Servo-Motors eingestellt werden. Eine Einstellung über der Mittelinie (>1.0) hat keine weitere Auswirkung. Eine Einstellung unterhalb der Mittelinie (<1.0) verringert die maximale Auslenkung des Motors. Ein Ein-Ausfaden des Objektes bewegt den Servo-Motor entsprechend.

Bei Relais-Trigger-Objekten wird das Relais geschlossen, wenn sich der Cursor in dem Objekt befindet und geöffnet, wenn sich der Cursor aus dem Objekt bewegt.

Bei LED-Trigger-Objekten  kann über den mittleren Anfasser die maximale Helligkeit der LED eingestellt werden. Ein Ein-Ausfaden des Objektes dimmt die LED entsprechend.

Bei RC-Trigger-Objekten wird das Funkkommando gesendet, wie es in der SPIT_GPIO Software eingestellt wurde:
Eingänge sind nicht aufgelistet, da bei Änderung eines Eingängs der Raspberry Pi  Fernsteuer-Trigger-Objekte an die liveSHOWsoftware sendet - der Weg funktioniert hier in die andere Richtung.

Sie können auch einen Triggertyp in ein Medienjingle ziehen, und somit später den Trigger über das Abspielen des Jingle auslösen.



Ein Trigger-Objekt in der liveSHOWsoftware wird mit einem roten Rahmen dargestellt, wenn die Verbindung zu dem Client (SPIT_GPIO-Software) abbricht oder der Trigger beim Client (SPIT_GPIO-Software) nicht mehr existiert.


Hinweis:
Wenn Sie denselben Trigger (z.B. R1_LED_1 im obigen Bild) in die Timeline ziehen und in das Jingle-Fenster ziehen und dann beide Triggerobjekte gleichzeitig abspielen, so wird der Ausgang (hier z.B. LED_1) zappeln.
Sie müssen vermeiden denselben Ausgang (Trigger) gleichzeitig aus der Timeline und aus einem Jingle anzusprechen.
Wenn Sie unterschiedliche Ausgänge (Trigger) in der Timeline (z.B. LED_1) und in einem Jingle (z.B. Motor_1)  abspielen, so ist dies kein Problem.

.