Skip to end of metadata
Go to start of metadata

Mit Hilfe von zusätzlicher Software kann ein Android-Tablet oder -Smartphone über UDP vom Miniserver aus ferngesteuert werden. So kann z. B. das Tablet per Bewegungsmelder oder Präsenzmelder eingeschaltet werden, wenn sich niemand mehr in der Nähe befindet wird es automatisch wieder ausgeschaltet. Auch die Displayhelligkeit kann gezielt in der Nacht heruntergedimmt werden. Eine weitere Möglichkeit ist die Steuerung des Ladegeräts in Abhängigkeit der Batterieladung (dann muss das Ladegerät an einen Ausgang des Miniservers angeschlossen werden).

Es existieren 2 Varianten mit unterschiedlicher Software. Aus Erfahrung empfehle ich die Variante über die Software WOLi zu realisieren, diese läuft bei mir wesentlich stabiler als die Variante über Tasker + UDP Test Tool, ist einfacher einzurichten und zudem kostenlos.

Variante 1: Software WOLi

 

Benötigte Software auf dem Android-Gerät

  1. WOLi von C. Prenner, 0.00 €: https://play.google.com/store/apps/details?id=at.asp1.woli&hl=de

Einrichtung des Android-Gerätes

 

Dein Adnroid-Gerät benötigt immer die gleiche IP-Adresse, damit die UDP-Verbindung zwischen Miniserver und Android-Gerät stabil funktioniert. Vergeb also in Deinem Router entweder eine feste IP-Adresse für das Android-Gerät oder konfiguriere den DHCP-Server im Router so, dass er dem Android-Gerät immer die gleiche IP-Adresse zuweist.

 

Zunächst installieren wir WOLi aus dem Playstore. Nach dem ersten Starten muss man dem Tool noch die Berechtigungen zuweisen, dass es auch Android-Systemeinstellungen ändern darf. Dazu ruft WOLi gleich die passende Konfigurstionsseite der Android-Einstellungen auf. Von hand findet man die Einstellungen unter Einstellungen → Anwendungen → Anwendungsmanager → Mehr → Systemeinstellungen ändern. Man aktiviert diese Option für die Software WOLi:

 

  

Um das Display an- und ausschalten zu können aktiviert man zunächst in WOLi die Option "WakeLock". Anschließend muss die Option über den Schraubenschlüssel konfiguriert werden. Wenn man möchte kann man hier noch eine Meldung einblenden lassen, wenn das Display automatisch an- und abgeschaltet wird. Ansonsten lässt man die Felder leer. Zudem kann man noch einen Timeout (Fallback) definieren, nach dessen Ablauf die Regelung des Displays wieder an Android übergeben wird. Ich empfehle hier einen hohen Wert, z. B. 100 Minuten.

 

 

 

Jetzt konfiguriert man die UDP-Funktion. Dazu aktiviert man die Option "Use IP" und konfiguriert wieder über den Schraubenschlüssel. Hier muss "use UDP" aktiviert werden und ein entsprechender Port vergeben werden, auf dem der Service lauscht. Zusätzlich gibt man noch einen Trigger an, dieser signalisiert WOLi, dass es sich um einen UDP-Befehl handelt, der für WOLi bestimmt ist. Man sollte diesen Trigger auf dem Standard "wolido:" belassen.

 

    

 

Für jede Funktion, die man vom Miniserver aus starten will, fügt man nun über "Add command" einen neuen Befehl hinzu. Zum Steuern des Displays fügt man hier die Funktion "WakeLock" hinzu und vergibt einen eindeutigen Erkennungstext, der später per UDP vom Miniserver aus gesendet werden soll (z. B. "wakelock"). Das Gleiche muss man nun noch anlegen, wenn man die Displayhelligkeit steuern will. Hier heisst die entsprechende Funktion "ScreenBrightness".

Nachdem man alle Befehle angelegt hat, geht man mit dem "Zurück"-Button wieder in den Ausgangsbildschirm zurück. Das speichert die Einstellungen. Hier kontrolliert man noch, ob der Service läuft: Oben links muss "WOLi...ON" stehen). Wenn nicht, dann schaltet man einmal den Button "use IP" aus und wieder ein und klickt dann anschlie0end oben rechts auf "Start WOLi".

Loxone Config

Um die einzelnen Aktionen aus der Programmierung des Miniservers zu steuern legen wir zunächst einen Virtuellen UDP-Ausgang mit der IP des Tablets an:

  • Adresse: /dev/udp/IP-ADRESSE/PORT

z. B.: /dev/udp/192.168.3.66/5000

 

 

Die IP-Adresse und den eingerichteten Port kann man aus der Konfiguration von WOLi (siehe oben) auslesen. Beides muss logischerweise identisch sein.

Jetzt legt man für jede Aktion einen eigenen Virtuellen Ausgang Befehl an. Im Folgenden zeigen wir im Beispiel das Ein- und Ausschalten des Displays. Die Beispiele hier verwenden jeweils nur einen Ausgang Befehl für Tablet an/aus. Somit funktionieren die Befehle in der Config wie ein Schalter (mehr dazu etwas später). Eine andere Alternative wäre für jeden Befehl (Einschalten und Ausschalten) einen eigenen Virtuellen Ausgang anzulegen. Dann würden diese wie ein Taster funktionieren.

Wir legen also einen neuen Virtuellen Ausgang Befehl an und nennen diesen Tablet an/aus oder ähnlich. Folgende Einstellungen werden gemacht:

  • Befehl bei EIN: wolido:wakelock1\n
  • Befehl bei AUS: wolido:wakelock0\n
  • Erste Wiederholung: 0
  • Abstand Wiederholung: 0
  • Als Digitaleingang verwenden: Angehakt

 

  

Wichtig: die Befehle bei Befehl EIN und Befehl AUS müssen exakt mit denen übereinstimmen, die in WOLi angegeben worden sind. Er setzt sich aus dem Trigger + UDP-Befehl zusammen gefolgt von einem Parameter (0=Aus, 1=Ein).

 

Wird dieser Ausgang nun innerhalb der Config auf EIN gestellt, so sendet er wolido:wakelock1 an das Android-Gerät. Wird er wieder auf AUS gestellt, so sendet er wolido:wakelock0.

Für alle weiteren Aktionen geht man exakt gleich vor. zur Steuerung der Displayhelligkeit ist der Parameter, der an den Befehl angehängt werden muss, nicht 0 und 1 sondern 1-255 (1=dunkel, 255=Max. Helligkeit).

 

Variante 2: Software Tasker + UDP Test Tool

 

Benötigte Software auf dem Android-Gerät

  1. Tasker von Crafty Apps EU, 2.99 €: https://play.google.com/store/apps/details?id=net.dinglisch.android.taskerm&hl=de
  2. Secure Settings Plugin von Intangible Object, 0.00 € (Pro-Lizenz nicht notwendig!): https://play.google.com/store/apps/details?id=com.intangibleobject.securesettings.plugin&hl=de
  3. UDP Test Tool von Anthony Paul, 0.81 €: https://play.google.com/store/apps/details?id=net.anthonypaul.udptesttool&hl=de

Einrichtung des Android-Gerätes

UDP Test Tool

Zunächst installieren wir das UDP Test Tool. Die App kann UDP-Pakete senden (benötigen wir nicht) und auch empfangen. Die empfangenen UDP-Pakete kann sie zur weiteren Auswertung an die Software Tasker übergeben.

 

Dein Adnroid-Gerät benötigt immer die gleiche IP-Adresse, damit die UDP-Verbindung zwischen Miniserver und Android-Gerät stabil funktioniert. Vergeb also in Deinem Router entweder eine feste IP-Adresse für das Android-Gerät oder konfiguriere den DHCP-Server im Router so, dass er dem Android-Gerät immer die gleiche IP-Adresse zuweist.

 

Nun richten wir UDP Test Tool ein. Dazu gehen wir auf "Settings" in der rechten oberen Ecke:

  1. Autostart the service when Android boots aktivieren
  2. Send rx'ed messages to Tasker aktivieren
  3. Alle anderen Optionen unter Receiving Messages deaktivieren

 

Nun legen wir im Hauptbildschirm noch den Port fest, auf dem die UDP-Pakete empfangen werden sollen (Standard: 5000) und aktiviere den Dienst mit dem Button "Listen".

 

 

Mit diesen Einstellungen wird UDP Test Tool nun automatisch beim Booten von Android gestartet. Sobald ein UDP-Paket empfangen wird, wird die Aktion "onUDPAction" in Tasker gestartet und dieser Aktion der Inhalt des UDP-Paketes in der Variablen %udpmessage übergeben.

Tasker

Beispielhaft sollen in dieser Anleitung zwei Aktionen auf dem Tablet ferngesteuert werden: Display an- und ausschalten sowie die Bildschirmhelligkeit dimmen und auf 100% schalten (z. B. Tag/Nacht).

 

Nicht auf allen Android-Geräten stehen alle Funktionen zur Verfügung. Teilweise sind Optionen vom hersteller gesperrt worden. Die in diesen Beispielen benötigten Funktionen sollten aber auf den meisten (allen?) Geräten funktionieren.

 

Als erstes müssen wir einen Task anlegen, der beim Empfang eines UDP-Pakets ausgeführt wird. Dazu wechseln wir in den Bereich Tasks und legen über das Plus unten rechts einen neuen Task an. Als Name vergeben wir  onUDPAction (Achtung! Auf exakte Schreibweise und Groß- und Kleinbuchstaben achten!).

 

 

Anschließend befinden wir uns im Einstellungsdialog für den Task. Über das Plus am unteren Bildschirmrand fügen wir jetzt eine Aktion unserem Task hinzu. Die erste Aktion wird "Bildschirm einschalten" sein. Dazu klicken wir auf Plugin und wählen dann Secure Settings aus.

 

 

 

Im nachfolgenden Dialog des Secure Settings Plugin wählen wir als erstes oben über den Bleistift die Funktion Action → Wake Device aus. Hier wählen wir Screen & Keyboard Lights on aus, als Duration geben wir 1 Second ein. Anschließend über Save abspeichern.

 

 

Nun gelangen wir zurück in den Konfigurationsdialog der Aktion. Hier wählen wir nun als Timeout ebenfalls 1 Sekunde aus. Nun geben wir über das Plus in der Zeile If noch eine Bedingung ein, wann diese Aktion ausgeführt werden soll. Hier machen wir uns die Funktion zu nutze, dass UDP Test Tool den Inhalt des UDP-Pakets in der Variablen %udpmessage an Tasker übergibt. So kann man verschiedene einzelne Aktionen auf dem Android Gerät vom Miniserver per UDP starten. Als Variable geben wir also vorne %udpmessage ein. Als Bedingung wählen wir Stimmt überein aus (Abkürzung gl) und als Inhalt für die Variable bzw. das UDP-Paket wählen wir zum Beispiel  displayon aus. Oben links kommen wir zurück und die Aktion wird automatisch so gespeichert.

 

Zurück im Übersichtsdialog gehen wir noch unten rechts auf das Symbol mit den Schiebereglern und wählen bei Kollisionshandling Aktuellen Task abbrechen aus.

 

 

Analog legen wir jetzt weitere Aufgaben:

  1. Bildschirm ausschalten: Zu finden unter DisplaySystemsperre
  2. Bildschirm dimmen: Zu finden unter Display → Display Helligkeit
  3. Bildschirm 100%: Zu finden unter Display → Display Helligkeit
  4. Loxone App starten: Zu finden unter App

 

Wichtig ist, dass man bei jeder Aufgabe unter %udpmessage einen anderen Befehl verwendet, damit die Aufgaben vom Miniserver aus separat gestartet werden können. Möchte man mehrere Aufgaben mit einem UDP-Befehl ausführen, so verwendet man unter %udpmessage den gleichen Befehl bei den jeweiligen Aufgaben (ich starte z. B. bei jedem Befehl displayon auch gleichzeitig zur Sicherheit noch die Loxone App).

Hat man alle gewünschten Aktionen erstellt gelangt man oben links zurück zum Hauptdialog. Wichtig: hier noch den neu erstellten Task mit dem Häkchen oben rechts aktivieren!

 

  

 

Loxone Config

Um die einzelnen Aktionen aus der Programmierung des Miniservers zu steuern legen wir zunächst einen Virtuellen UDP-Ausgang mit der IP des Tablets an:

  • Adresse: /dev/udp/IP-ADRESSE/PORT

z. B.: /dev/udp/192.168.3.66/5000

 

 

Die IP-Adresse und den eingerichteten Port kann man aus der Konfiguration des UDP Test Tool (siehe oben) auslesen. Beides muss logischerweise identisch sein.

Jetzt legt man für jede Aktion einen eigenen Virtuellen Ausgang Befehl an. Im Folgenden zeigen wir im Beispiel das Ein- und Ausschalten des Displays. Die Beispiele hier verwenden jeweils nur einen Ausgang Befehl für Tablet an/aus. Somit funktionieren die Befehle in der Config wie ein Schalter (mehr dazu etwas später). Eine andere Alternative wäre für jeden Befehl (Einschalten und Ausschalten) einen eigenen Virtuellen Ausgang anzulegen. Dann würden diese wie ein Taster funktionieren.

Wir legen also einen neuen Virtuellen Ausgang Befehl an und nennen diesen Tablet an/aus oder ähnlich. Folgende Einstellungen werden gemacht:

  • Befehl bei EIN: displayon
  • Befehl bei AUS: displayoff
  • Erste Wiederholung: 0
  • Abstand Wiederholung: 0
  • Als Digitaleingang verwenden: Angehakt

 

 

Wichtig: die Befehle bei Befehl EIN und Befehl AUS müssen exakt mit denen übereinstimmen, die in Tasker bei der Variablen %udpmessage angegeben worden sind.

 

Wird dieser Ausgang nun innerhalb der Config auf EIN gestellt, so sendet er displayon an das Android-Gerät. Wird er wieder auf AUS gestellt, so sendet er displayoff

Für alle weiteren Aktionen geht man exakt gleich vor.

 

Verwandte Artikel

2 Comments

  1. Danke für den super Artikel! (smile)

    Welches Tablet verwendest du denn und bist du damit zufrieden? So wie ich das verstanden habe, funktioniert das Display aktivieren/deaktivieren nicht mit jedem Tablet einwandfrei.

  2. Moin!

    Auch von mir danke für den Artikel.

    Leider ist das UDP Test-Tool im Playstore nicht mehr erhältlich. Gibt es eine Alternative ?