Wifi Telnet Server auf dem ESP8266

Mit dem Over The Air Update kann man einen neuen Sketch über eine WLAN-Verbindung auf ein ESP8266 Modul wie z. B. dem Wemos D1 hochladen. Ein kleiner Nachteil, der Serial Monitor funktioniert leider nicht ohne direkte USB-Verbindung. Probiert man es dennoch den Serial Monitor zu starten, erscheint die Fehlermeldung „Serial monitor is not supported on network ports such as X.X.X.X for the null in this release“ und es passiert nichts. Ein Wifi Telnet Server kann Abhilfe schaffen und erlaubt ein Debugging über das Telnet Protokoll im gesamten Netzwerk. Es wird dafür keine Arduino IDE benötigt, ein einfacher Telnet Client wie PuTTY reicht aus.
Wifi Telnet Server auf dem ESP8266 - Telnet Client
Der Wifi Telnet Server ist so aufgebaut, dass er mehrere Telnet Verbindungen annehmen kann. Das ist gerade in komplexen Projekten sehr praktisch, denn so können auch mehrere Personen gleichzeitig die Meldungen lesen. Wurde die im Sketch definierte maximale Anzahl von Verbindungen (MAX_TELNET_CLIENTS) erreicht, werden weitere Verbindung abgelehnt. Wird eine Verbindung geschlossen, kann die Sitzung wieder für eine neue Verbindung verwendet werden. Wenn ihr noch mit dem ESP8266 verbunden seid, seht ihr die einzelnen Telnet Verbindungen im Serial Monitor.
Wifi Telnet Server auf dem ESP8266 - Serial Monitor
Als Telnet Client auf einem Windows Endgerät kann ich PuTTY empfehlen oder ihr installiert den Windows Telnet Client. Für Android oder iOS gibt es genügend (freie) Apps. Das Telnet nicht gerade das sicherste Protokoll ist muss ich hier hoffentlich nicht erwähnen?!

Telnet Nachricht senden

Um eine Nachricht an jeden verbundenen Telnet Client zu senden, habe ich eine kleine Funktion (TelnetMsg) erstellt. Ihr könnt diese anstelle oder zusätzlich zu Serial.print in den Sketch einbauen.

Mit dem folgenden Beispiel kann z. B. ein Text (ledStateMsg) mit einem Status (ledState) an die Funktion übergeben werden.

Ihr könnt natürlich auch die einfache Variante wählen und die Funktion direkt aufrufen.

Sketch

Ihr müsst im Sketch mindestens die folgenden Zeilen anpassen damit auch eine WLAN Verbindung aufgebaut wird! Die IP Adresse findet ihr dann im Serial Monitor oder auf dem DHCP Server / Router.

Im Sketch ist das bereits bekannte Over The Air Update und der Wifi Telnet Server mit allem was dazugehört enthalten. Zum Test habe ich noch eine LED Blink Funktion mit Telnet Ausgabe eingebaut. Der Wifi Telnet Server funktioniert natürlich auch ohne die Over The Air Update Funktion! Der Sketch ist so aber eine gute Grundlage für ein Projekt mit einem ESP8266 Modul.

In diesem Sketch geht es nur um die Ausgabe auf dem Telnet Client. Eingaben imTelnet Client werden aktuell nur auf der seriellen Konsole ausgegeben und nicht weiter verarbeitet.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

*

code