TonUINO Webinterface
Das Webinterface (deutsch Webschnittstelle) ist eine Schnittstelle zum TonUINO, die über das Hypertext Transfer Protocol
(HTTP) angesprochen werden kann. Sie bietet eine grafische Benutzeroberfläche (GUI), über die ein Benutzer mit Hilfe
eines Webbrowsers mit dem TonUINO interagieren kann, oder einen Webservice, durch den der TonUINO Daten oder Funktionen
zur Verfügung stellt.
Das Webinterface als GUI hat den Vorteil der Plattformunabhängigkeit, da für nahezu jedes netzwerkfähige Betriebssystem ein Webbrowser
verfügbar ist und meistens auch bereits mit ausgeliefert wird, so dass für die Nutzung eines Webinterface keine weitere Software installiert
werden muss.
Die Nutzung eines Webdienstes zum Datenaustausch zwischen zwei Systemen kann vorteilhaft sein, da der Datentransport per HTTP unabhängig
von Programmiersprache und plattformübergreifend etabliert ist und meistens auch durch Firewalls hindurch gestattet wird.
Der neue Mikrocontroller Nano ESP32
Der Nano ESP32 hat einen deutlich leistungsstärkeren Prozessor als die bisher verwendeten Mikrokontroller der Arduino Nano Serie.
Damit kann er nicht nur das komplette Leistungsspektrum verarbeiten, das die TonUINO SW inzwischen zu bieten hat,
sondern bringt auch noch neue Fähigkeiten mit:
Er hat ein WLAN-Modul an Bord, womit sich völlig neue Möglichkeiten des Zugriffs und der Bedienung eröffnen.
Weiterer enormer Vorteil ist zudem, dass er im bekannten Arduino Nano Format gehalten und pin-kompatibel zu den bisherigen Mikrocontrollern ist.
So kann er tatsächlich 1:1 in einem bestehenden Aufbau den Arduino Nano (sogar auf der bekannten Classic Platine) ersetzen.
Neue Möglichkeiten mit WLAN und Webinterface
Mit seinem WLAN-Modul kann der Arduino Nano ESP32 ein eigenes WLAN bereit stellen oder sich mit einem bestehenden WLAN verbinden.
Dabei bietet der Server des Nano ESP32 ein Webinteface, das ohne Installation einer App mit jedem Browser aufgerufen und bedient werden kann.
Der Zugriff auf das Webinterface kann gleichermaßen von mobilen Geräten (Handy, Tablet, laptop) und auch von Desktop-PCs erfolgen auf denen ein normaler Internet Browser verfügbar ist.
Über das Webinterface sind folgende Funktionen verfügbar:
- volle Bedienbarkeit des TonUINO über Buttons, die den 5 Tasten entsprechen
- Angabe des Wiedergabemodus mit den notwendigen Parametern (Ordner, Track Nummer), ohne eine Karte auflegen zu müssen
- beschreiben einer Karte mit den angegebenen Daten über den Kartenleser des TonUINO
- ein- und ausschalten aller Modifikationen durch Auswahl im Webinterface
- erzeugen von Modifikationskarten über den Kartenleser des TonUINO
- alle Einstellungen, wie sonst im Admin Menü, können über das Webinterface gemacht werden.
- Angabe der WLAN Parameter und notwendigen Einstellungen zur Verbindung mit einem bestehenden WLAN
- zusätzlich bietet das Webinteface umfassende Information zu Hardware, WLAN und Firmwareversion
- die LOG-Daten sind ohne den Umweg über eine Konsole direkt im Webinterface einsehbar
Dies sind zusätzliche Möglichkeiten. Die gewohnte Bedienung und Einstellung über das bekannte sprachgesteuerte Menü bleiben sebstverständlich erhalten.
Bedienung des TonUINO (Home) / Karten beschreiben
Bedienung:
Die Startseite des Webinterface ermöglicht über die Nachbildung der 5 Tasten die vollständige Bedienung des TonUINO.
Selbst die Doppelbelegung der Tasten bei kurzem und langem Tastendruck ist nachgebildet,
indem die untere Reihe der Tastennachbildung den "langen Tastendruck" der jeweiligen Taste auslöst.
Infobox:
In der grauen Infobox wird der aktuelle Status des TonUINO angezeigt und dynamisch aktualisiert.
Ist eine Modifikation aktiviert, wird das hier in Klartext angezeigt. Bei der Schlummerfunktion wird sogar ein Countdown der noch verbleibenden Zeit eingeblendet.
Karten simulieren / beschreiben:
Im Bereich Karte können alle Parameter einer Karte (Widergabemodus, Ordner, Track) in den entsprechenden Feldern ausgewählt / eingetragen werden.
- mit Klick auf "Start" wird das Auflegen der so definierten Karte simuliert und der TonUINO beginnt mit der angegebenen Wiedergabe.
(Rückmeldung in der Infobox)
- mit Klick auf "Schreibe" kann eine Karte mit den eingegebene Daten beschrieben werden. Wenn sich der TonUINO im Status "Pause" oder "Idle" befindet
erfolgt die Aufforderung "Bitte lege die Karte auf", wie sie schon von der Programmierung von Karten über das Admin Menü bekannt ist.
Den Vorgang durch Auflegen der zu programmierenden Karte abschließen.
Modifikation Ein- / Ausschalten
Modifikationskarte beschreiben:
Im Bereich Modifier kann die gewünschte Modifikation ausgewählt und notwendige Parameter eingetragen werden
- mit Klick auf "Activate" wird die ausgewählte Modifikation mit den angegebenen Parametern aktiviert,
also das Auflegen einer entsprechenden Modifikationskarte simuliert.(Rückmeldung in der Infobox)
- mit Klick auf "Delete" werden alle aktiven Modifikationen beendet
- mit Klick auf "Schreibe" kann eine Modifikationskarte mit den angegebenen Daten beschrieben werden. Wenn sich der TonUINO im Status "Pause" oder "Idle" befindet
erfolgt die Aufforderung "Bitte lege die Karte auf", wie sie schon von der Programmierung von Karten über das Admin Menü bekannt ist.
Den Vorgang durch Auflegen der zu programmierenden Karte abschließen.
Admin Einstellungen
Das Beschreiben / Konfigurieren von Karten kann schon auf der Startseite (Home) erfolgen. Darüber hinaus bietet die
Seite "Einstellungen einen geordneten Überblick aller weiteren Einstellungen, die sonst auch über das Admin Menü gemacht werden,
Über die Eingabefelder der Seite können jetzt alle Parameter, selbst für die Shortcuts, komfortabel eingegeben und mit einem
Klick auf "Save" an den TonUINO übergeben werden.
Verbindung mit WLAN
Kann sich der TonUINO nicht mit einem WLAN verbinden (das ist bei der Erst-Inbetriebnahme immer der Fall), erzeugt der TonUINO
einen eigenen Access Point (AC), also ein eigenes WLAN, mit dem Namen "TonUINO".
Dieses WLAN ist offen und unverschlüsselt und
es kann ein Gerät ohne weitere Angaben mit diesem Netzwerk verbunden werden.
Sobald die Verbindung zum Netzwerk "TonUINO" hergestellt ist, öffnet sich die Startseite des Webinterface.
In Fällen, in denen das Gerät noch zusätzlich (gleichzeitig) mit einem anderen Netzwerk verbunden ist, öffnet sich die Seite nicht automatisch,
sondern muss im Browser über die Adresse "http://192.168.4.1" explizit aufgerufen werden.
Von der Startseite aus kommt man dann (mit dem 3-Striche Menü) über die Seite "System" zu der Seite für die Einstellungen der WLAN Konfiguration.
Zur Verbindung mit einem anderen WLAN, muss dessen SSID (= der Name des WLAN) und das Passwort für den Zugang eingegeben werden.
Zusätzlich kann noch ein individueller Name (Hostname) für den TonUINO eingetragen werden.
Der individuelle Name ist zwar nicht unbedingt erforderlich, erleichtert aber besonders dann die eindeutige Zuordnung, wenn mehr als ein TonUINO mit dem Netzwerk
verbunden ist und gezielt angesprochen werden soll.
Wenn die Verbindung zu dem vorgesehenen WLAN erfolgreich hergestellt wurde, wird das Webinterface mit der Staqrtseite über das
neu verbundene Netzwerk geöffnet. Ist ein individueler Hostname vergeben worden, wird dieser in der Kopfzeile des Webinterface angezeigt.
Der TonUINO kann nun über das Webinterface bedient und verwaltet werden.
Der Hostname wird in der Kopfzeile des Webinterface angezeigt.
LOG Daten
Bisher war die "Konsole" das unverzichtbare Werkzeug zur Diagnose, wenn der TonUINO nicht (ganz) so funktioniert hat, wie er sollte.
Das war zwar recht hilfreich, aber auch etwas umständlich, da immer eine Kabelverbindung zwischen TonUINO und Endgerät hergestellt werden musste, um den Datenstrom für das LOG zu erfassen.
In der Regel konnte eine derartige Verbindung nie ohne Öffnung des TonUINO hergestellt werden.
Mit der Darstellung des Datenstroms auf der LOG - Seite ist eine Diagnose nun viel einfacher und komfortabler, da keine Hardwareverbindung zum TonUINO mehr erforderlich ist.
Bis zu 2000 Zeilen werden im LOG zwischengespeichert, so dass auch umfangreichere Untersuchungen / Diagnosen gemacht werden können.
Damit entfällt auch das bisher notwendige Öffnen des TonUINO für Diagnosezwecke.
OTA - Firmware Upgrade
OTA (Over The Air) ermöglicht, ein Firmware Upgrade ohne Kabelverbindung per WLAN auf den TonUINO zu laden.
Die Firmware muss dazu bereits compiliert sein und als Binärdatei vorliegen. Entsprechende Firmware-Dateien können mit der Arduino IDE erzeugt werden.
Die OTA-Funktion ist über die Registerkarte "System" erreichbar.
Bei der ersten Verbindung wird eine Anmeldung mit folgenden Zugangsdaten verlangt
- Nutzername = admin
- Passwort = admin
Nach erfolgreicher Anmeldung wird die aktuell installierte Firmwareversion angezeigt,
gefolgt von der Aufforderung eine Firmwaredatei auszuwählen.
Zur Auswahl öffnet sich dann das bekannte Auswahlmenü des Betriebssystems.
Nach Auswahl und Bestätigung beginnt der Upload erst, nachdem er mit dem "Upgrade" Button ausgelöst wird und kann über eine Fortschrittsanzeige verfolgt werden.
Nach dem Upload macht der Arduino automatisch einen Reset und startet neu.
Nach dem Neustart wird nun die Version der aktualisierten Firmware angezeigt.
Firmware-Datei mit Arduino IDE erzeugen
Die Arduino IDE ist zugleich Sketch-Editor, Compiler und Uploader. In der Regel werden diese Funktionen genau in dieser Reihenfolge automatisiert verwendet.
Damit besonders das Compilieren problemlos erfolgt, müssen einige Einstellungen gemacht und auch Bibliotheken für die Baugruppen
und Funktionseinheiten in bestimmten, vorgegebenen (auf den Programmcode abgestimmten) Versionen geladen sein.
Dies kann zu einem späteren Zeitpunkt, zu dem die Firmware erneut hochgeladen werden muss, Probleme verursachen, da dann zum Compilieren
möglicherweise schon veraltete Bibliotheken benötigt werden können. Dem ist sehr gut vorzubeugen, indem die bereits compilierte Firmware
für spätere Verwendung archiviert wird, da sie alle notwendigen Bibliotheken enthält bzw. diese, wie benötigt, schon beim Compilieren eingefügt / verarbeitet wurden.
Die Arduino IDE bietet eine Export-Funktion an, mit der die fertig compilierte Firmware komplett als Binärdatei (*.bin) gespeichert wird.
So erzeugte Firmware muss nicht erneut compiliert werden (erlaubt aber auch keine Änderungen mehr) und kann durch
einen geeigneten Uploader oder per OTA auf den Mikrocontroller hochgeladen werden.
Die so erzeugte Datei befindet sich, etwas versteckt,im Ordner:
C:\Users\XXXXX\AppData\Local\Temp\arduino\sketches\XXXXXXXXXXXXXXXXXXXXXXXXXXXX\TonUINO-TNG.ino.bin
Hier steht das "X" für den Benutzernamen und eine kryptische Ordnerbezeichnung, die von der Arduino IDE vergeben wird.
Tipp:
Da sich im Verzeichnis "Sketches" mehrere Ordner mit kryptischen Bezeichnungen befinden können, wird das Finden des richtigen Ordners sehr
erleichtert, wenn diea ngezeigte Liste nach Erstellungsdatum sortiert wird.
LOG mit Konsole / Terminal-Programm
Da beim Nano ESP32 der Mikrocontroller auch die Steuerung der seriellen Schnittstelle übernimmt
(bei den anderen Nanos ist das ein separater Schnittstellen-Chip), verliert er bei einem Reset die Verbindung zum PC.
Damit ist es schwierig, ein LOG vom Bootvorgang zu erhalten, da die Verbindung erst durch Mausklick wieder hergestellt werden muss.
Wenn beim Booten die Down (Prev) Taste gedrückt gehalten wird, verzögert sich die Erste Log Ausgabe um 5 Sekunden,
so dass man die Verbindung herstellen und das Log noch starten kann und den Anfang sieht.
TonUINO Info / Konfiguration
Im Systembereich kann man sich umfangreiche Informationen zum TonUINO anzeigen lassen. Besonders hilfreich sind auf der Seite
"TonUINO Info" die Informatinen im Abschnitt "About" zur Konfiguratin des TonUINO, wie sie für die Firmware in der
"constants.hpp" ausgewählt wurde.
So kann man sehr gut feststellen, ob die geladene Firmware zur aktuellen Hardware passt und auch der Funktionsumfang den Anforderungen / Erwartungen entspricht.
In den folgenden Abschnitten sind noch weitere Informationen, besonders auch zum gewählten WLAN, verfügbar.