Das in Brünn ansässige ESP32-Team hostete die 2024-Ausgabe der hauseigenen Entwicklerkonferenz, die nun drei Tage dauert und abermals komplett online abgehalten wird. Hier ein Bericht vom ersten Tag, der unter Anderem die Keynote von Theo Swee An und Informationen zu Zephyr lieferte.
Bildquelle, wo nicht angegeben: Espressif, Screenshot durch Autor
Keynote durch Theo Swee An
Im Rahmen der Keynote erfolgte eine Vorstellung der Geschäftszahlen, der Fokus liegt auf dem Buzzword AIoT. Interessant war erstens die Erwähnung, dass der Erfolg explizit auch als Erfolg der Partner dargestellt wurde.
Olimex und Co dürften sich indes nicht über die Meldung freuen, dass die vor einiger Zeit übernommene M5Stack “die besten ESP32-Devboards” produziert – im Rahmen der Vorstellung präsentierte An einige Produkte.
Als Wachstumsbereiche avisiert Espressif einerseits den S3 und den P4, die im Bereich LVGL-basierte HMI zum Einsatz kommen sollen. Die Sicherheit der Chips wurde ebenfalls betont.
Wichtig bleibt auch das Matter-Protokoll. ESP ZeroCode hat mittlerweile mehr als 15000 User, Espressif ist nun außerdem eine Open PAA und ist so bei der Zertifikation von Matter-Produkten hilfreich. RainMaker ist derweil zur Erzeugung von Border Routern befähigt, und wird im Zusammenspiel mit dem P4 auch Kameraapplikationen unterstützen.
Zu guter Letzt erfolgte eine Erwähnung des ESP32-C6 – seine Implementierung von WiFi 6 reduziert Stromverbrauch durch Nutzung spezifischer Attribute des Standards.
Vortrag zu ESP32 USB
Li Bo sprach über die Vorteile der in den unterschiedlichen Chips implementierten USB-Transceiver und ihre jeweiligen Möglichkeiten und Grenzen.
Mit Class Drivers stehen dabei “schlüsselfertige” Treiber zur Verfügung, die häufig verwendete Endgeräte direkt ansteuern. Bo präsentierte dies durch die Erweiterung einer S3-Box, die mit geringem Codieraufwand USB-Headphones eingeschrieben bekam.
Alternativ dazu ist es auch möglich, unter Nutzung der USB Host Library einen eigenen Treiber zu entwickeln. Der rund 30 Minuten lange Vortrag zu diesem Thema ist hörenswert, weil er die verschiedenen Codebeispiele tour a tour durchbespricht.
Die Nutzung von TinyUSB zur Erzeugung von USB-Peripheriegeräten auf Basis eines ESP32 wurde ebenfalls demonstriert – neben einem (wenig nützlichen) USB-Stick zeigte man einen Equalizer.
Lustig war auch die Erwähnung der Nutzung eines ESP32 als Wifi-Accesspoint im Zusammenspiel mit einem LTE-Modul.
Neuigkeiten von Espressif-IDE
Kondal Kolipaka sprach über den “Grund” für die Einführung der Eclipse-basierten IDE – Sinn ist vor allem, Nutzern das Herunterladen der diversen Plug-Ins zu ersparen und den Einstieg zu erleichtern. Eine Neuerung in Version 3 des Produkts ist der Umstieg auf die LSP-Engine im Bereich des Editors – Sinn davon sind verschiedene Komfortsteigerungen.
Mit dem ESP-IDF Manager steht außerdem eine Ansicht zur Verfügung, die die Verwaltung verschiedener IDF-Versionen erleichtert.
Im Rahmen der QA wurde außerdem ein Update für Mitte September angekündigt, das einige Bugs behebt.
Software BOM-Generation mit ESP_IDF
Das Software-Ökosystem hinter ESP_IDF erfreut sich immer höherer Komplexität. Mit esp-idf-sbom steht ein neues Programm zur Verfügung, das eine Projektstrukturdatei “scannt” und danach verschiedenste Berichte zur Zusammensetzung der Software generiert. Problematisch ist an diesem Werkzeug vor Allem, dass es derzeit noch nicht Teil der Distribution ist.
TEE – sichere “Submaschine” am ESP32
Mit TEE steht seit einiger Zeit eine Art Hypervisor zur Verfügung, der die Unterteilung in sichere und unsichere Komponenten erlaubt. Kryptographische Routinen lassen sich so “kompartmentalisieren”.
Der Wechsel zwischen den beiden Partitionen erfolgt prinzipiell durch Interrupts – die Abbildungen liefern mehr Informationen dazu.
Interessant ist, dass Espressif das System unter Nutzung verschiedener spezifischer Aspekte der RISC/V-Architektur realisiert. Ein Nutzer reagiere im Chat nach dem Schema “Will TEE also be supported for ESP32s3 or is it only the RISC-V versions?”. Laukik Hase beantwortete diese Frage folgendermaßen:
Public release of the framework is targeted exclusively for RISC–V architecture. However, if you have any S3 specific requirement, please reach out through our support channels for further evaluation
Zu guter Letzt gab es Informationen darüber, wann die praktische Nutzbarkeit des Produkts beginnt.
Paralell IO im Fokus
Der am RP2040 eingeführte “IO-Beschleuniger” sorgte im Embeddedbereich für Bewegung. Mit dem Paralell IO schickt Espressif nun ein analog aufgebautes Peripheriegerät ins Rennen – zu beachten ist, dass derzeit nur ein Teil der intendierten Beispiele zur Verfügung stehen.
Als Lehrbeispiel zeigte Lao Kaiyao die Realisierung eines Logikanalysators. Die GPIO Mux kam dabei insofern zu neuen Ehren, als sie die “Umleitung” von Signalen im Chip erlaubt.
esp-serial-flasher – oder – wenn MCU A MCB B aktualisiert
Insbesondere in Border Routern und ähnlichen Systemen setzt Espressif gerne mehrere Chips auf eine Platine – das Problem ist in diesem Fall, “wie” die einzelnen Chips mit Updates versorgt werden. Als Lösung dient ein als serial flasher vorgesehener Dienst.
Zephyr am ESP32 ist nicht tot
Ricardo Tafas verkündete im ersten Akt, dass die Arbeiten an Zephyr für ESP32 nicht eingestellt sind – im Gegenteil dürfen Entwickler bald neue Informationen erwarten, wenn sie die in der Abbildung gezeigten (und nicht unbedingt offensichtlichen) Datenquellen auswerten.
Generell scheint man Zephyr als “Alternative” zum hauseigenen Ökosystem zu sehen, und den Port vor Allem in enger Zusammenarbeit mit der Zephyr-Community voranzutreiben. Sinn dürfte nach Ansicht des Autors vor Allem das Verhindern der Ausbreitung eines Konkurrenten sein, der das Ökosystem für sich und seine Mikrocontroller monopolisieren könnte.
Im Hintergrund gab es auch – tentative – Daten, wann weitere ESP32-Typen unterstützt werden.
QEMU-Emulation mit interessanten Kommentaren
Tests auf realer Hardware sind teuer und langsam. Im Hause Espressif setzt man auf zwei Wege – einerseits einen QEMU-basierten Emulator, der – wie in der Abbildung gezeigt – im Bezug auf die Performance teilweise schneller, teilweise aber langsamer ist. QEMU implementiert das efuse-Subsystem dabei vollständig, was das “Schiessen” realer Chips unnötig macht.
Interessant war in diesem Zusammenhang auch eine Frage nach einem in dem ESP32 integrierbaren LAN-Modul.
Alternativ dazu bietet sich die Kompilation von ESP32-Code unter Nutzung einer Mock-Bibliothek an – problematisch ist dabei, dass die Nachbildung der diversen APIs von FreeRTOS nur sehr teilweise gelingt. Wer vor Allem algorithmische Korrektheit prüfen will und ohne Hardwarezugriff auskommt, kann mit dem Werkzeug allerdings Zeit sparen.
Espressif Secure Manufacturing Process
Der letzte Vortrag beschäftigte sich dann mit Espressif’s Pre-Provisioning Service – ein System, das vor Allem die Duplikation von Geräten durch “Geisterschichten” im Rahmen der Fertigung verhindern soll.
Espressif bietet dabei zwei Wege an: neben einem “Challenge-Response-Prozess” erwähnte das Team im Rahmen der QA, das Espressif auf Wunsch auch mit Kundenfirmware beschriebene Module liefern kann.
Mehr erfahren
Damit sind die Neuigkeiten des ersten Tages hinter uns. Unter https://devcon.espressif.com/ sollen bald weitere Informationen erscheinen – da am dritten Tag eine große QA-Session geplant ist, kann es empfehlenswert sein, Fragen an die Projektmanager weiterzuleiten.
Zuerst erschienen bei Mikrocontroller.net News
Quelle: Read More