ESP WEB Serial Library

Bei Projekten, die nicht am seriellen Port hängen können, ist die Fehleranalyse manchmal hartnäckig. Umso schöner, dass es Projekte wie die WEB-Serial Bibliothek gibt, die es ermöglichen, einfach eine Website auf dem ESP zu öffnen, um serielle Ausgaben dort zu zeigen. Ich habe die freie Version der Bibliothek ausprobiert. Es gibt auch noch eine Pro …

Continue reading "ESP WEB Serial Bibliothek" →

ESP8266/32 WiFi Manager.

Hardcodierte SSIDs und WLAN-Passwörter im Arduinocode sind keine schöne Sache. Die WLAN-Credentials auf der Console einzugeben, ist nicht mehr zeitgemäß, schon gar nicht, wenn man keine Consolen-Verbindung hat. Da wäre es doch schön, eine allgemeine Lösung zu haben, die es ermöglicht, IoT-Geräte einfach ins eigene WLAN zu bekommen, ohne im Code schon etwas festlegen zu …

Continue reading "ESP8266/32 WiFi Manager" →

Espressif IDF – GPIOs

Die meisten GPIO Pins des ESP32 sind, bis auf ein paar Ausnahmen, sowohl Eingänge als auch Ausgänge (siehe hierzu auch das entsprechende Datenblatt). Wie diese digital angesteuert werden, zeigen die nächsten Beispiele. Grundsätzliches Sind die Pins als digital konfiguriert, können sie jeweils den Wert 1= true oder 0= false annehmen. Ausgang Hier das Blinkbeispiel mit …

Continue reading "Espressif IDF – GPIOs" →

Espressif IDF – Tasks

A task is a (recurring) job for the processor. Multiple tasks compete for the CPU's attention. How these are created and which data structures are available for data transfer and synchronisation will be briefly outlined in this post. Tasks can become a very complex matter, which is why I can only scratch the surface here. Nevertheless…

Continue reading "Espressif IDF – Tasks" →

Espressif IDF – Menuconfig

Eine der schönen Errungenschaften der IDF ist die menügesteuerte Konfiguration. Noch schöner finde ich, dass eigene Konfigurationspunkte erstellt werden können. Diese werden dann automatisch in das Hauptmenü eingehängt. Vorab: Die Bibliothek „esp_system.h“ wird im Quellcode benötigt, sonst klappt’s nicht Nach Änderungen am Menü ein idf.py clean durchführen Zur Erstellung solch eines Konfigurationspunktes nehme ich das …

Continue reading "Espressif IDF – Menuconfig" →

Espressif IDF – Timer

Ein beliebtes Beispiel in der Arduino Umgebung ist Blink. Hier wird eine LED mit einer kurzen Pause an und aus geschaltet. Zu Gpio Aktionen kommen wir im nächsten Kapitel, um das Blinken kümmern wir uns hier. Auch in der Arduino Umgebung wird immer geraten, Codeunterbrechungen mit Delay zu vermeiden. Dort gibt es einige Konstrukte mit …

Continue reading "Espressif IDF – Timer" →

Espressif IDF – Log Messages

Gerade bei der Entwicklung auf dem Microcontroller ist hier und da mal eine Ausgabe wichtig, um zu erahnen, ob der entwickelte Code auch das Richtige macht. Schade ist es, wenn solche Ausgaben dann immer noch das fertige Produkt belasten. Damit der Debugging Code es nicht oder nur bedingt ins Endprodukt schafft, gibt es in nahezu …

Continue reading "Espressif IDF – Lognachrichten" →

Espressif IDF – Error Handling

Die Fehlerbehandlung ist in der IDF eine der Kernfunktionalitäten. Auf sie stößt man praktisch in jedem Beispiel-Programm. Deshalb möchte ich an dieser Stelle näher auf sie eingehen. Alle wichtigen Funktionen der IDF geben Fehlercodes zurück. Hierauf kann zum einen manuell reagiert werden (if Bedingung + eigenes Handling) oder sie können an ein spezielles Makro (Funktion) …

Continue reading "Espressif IDF – Fehlerbehandlung" →

Espressif IDF – Console Output

Direkte Ausgaben über die Konsole werden in der IDF mit printf erreicht. Hiermit sollte man jedoch sparsam umgehen, da es zum Beispiel zu Debugging Zwecken oder zur Fehlerbehandlung andere Mechanismen gibt. Diese können dann auch über Menuconfig ein- und ausgeschaltet werden und belasten so nicht den CODE. So sieht der Testcode für eine einfache Ausgabe …

Continue reading "Espressif IDF – Konsolenausgabe" →

Espressif IDF – Create Project

Hier beschreibe ich, wie ein neues IDF-Projekt angelegt wird. Wie die IDF, auch in Verbindung mit VS-Code, genutzt und installiert wird, habe ich unter folgenden Links schon beschrieben und ist nicht Gegenstand dieses Beitrags. Espressif IDF für ESP32-S2 Installieren VS-Code Espressif IDF LILYGO EP32 S2 V1.1 (1. Anwendung) Ein guter Start ist es, das IDF-Beispiel …

Continue reading "Espressif IDF – Projekt erstellen" →