Embedded Open Source Summit – Tage 1 und 2

Die Linux Foundation ist mehr als Linux: mit Zephyr pflegt man seit neun Jahren ein Echtzeitbetriebssystem, das man mit einem Ökosystem-Play zu unterstützen sucht. Arduino gab sich ein inoffizielles Stelldichein. Ausserdem erobert Linux den Weltraum – was es an den ersten Tagen zu sehen gab, verraten wir hier.

Zephyr abseits des Echtzeitbetriebssystems…

Anas Nashif sprach in der Keynote des zweiten Tages davon, dass Zephyr nicht auf das Bereitstellen klassischer RTOS-Funktionalität beschränkt sein soll. Stattdessen sollen Contributoren – siehe auch die Folie – auf höheren Schichten lebende Funktionen committen.
Sinn davon ist ein Ökosystem-Play, um die von Amazon FreeRTOS bzw. Azure RTOS angebotenen Value Added Features zu kompensieren. Echtzeitbetriebssysteme beschränken sich in der heutigen Zeit nicht mehr auf das Verwalten von Threads, sondern versuchen, Entwicklern immer mehr eine “Komplettlösung aus einer Hand” zu präsentieren.

(Bildquelle alle: Tamoggemon Holding k.s.)

Im Hintergrund erfährt Zephyr in verschiedenen Bereichen Erweiterungen. Im Bereich Eventsysteme bzw IPC stellte ein Entwickler von Meta Experimente zur Nutzung des hauseigenen Protokolls Thrift vor. Lustig war die Folie, die (neben realistischeren Systemen) die Verwendung eines Dual Port-SRAM als Kommunikationsschnittstelle avisierte.
Als primäres Problem für die breitere Nutzung erweist sich übrigens die fehlende C++-Unterstützung in Zephyr, weshalb Meta von der produktiven Nutzung Thrifts unter Zephyr abrät.

Interessantes Produkt Zwei ist der ZBus: ein klassischer Message-Bus, der analog zum in QtCore enthaltenen Signal-Slot-System die Entkoppelung innerhalb einer Applikation erlaubt. Lobenswert ist, dass laut der unter https://eoss2023.sched.com/event/1LcMe/zbus-the-lightweight-and-flexible-zephyr-message-bus-rodrigo-peixoto-edge-ufalcitrinio? bereitstehenden Ankündigung geplant ist, ZBus bald auch in ISRs arbeiten zu lassen.

Visual Studio Code hat sich als Quasistandard für die Zephyrentwicklung etabliert. Noch gibt es allerdings kein einheitliches Plugin-Komplement – in einem Vortrag des Beratungsunternehmens Golioth (siehe https://eoss2023.sched.com/event/1LcO9/zephyr-visual-studio-code-how-to-develop-zephyr-apps-with-a-modern-visual-ide-jonathan-beri-golioth?) stellte der Sprecher eine empfehlenswerte Sammlung vor. Besonders interessant ist nach Ansicht des Autors die von Microsoft zur Verfügung gestellte Terminalerweiterung, die ein universelles und cross-plattform-verfügbares serielles Terminal realisiert.

Unter https://eoss2023.sched.com/event/1LcMP/practical-tips-to-boost-your-productivity-when-using-zephyr-benjamin-cabe-the-linux-foundation findet sich derweil eine ebenfalls sehenswerte Präsentation, die diverse wenig beachtete Aspekte der Zephyr-Toolchain zum Fokus hat.
Zu guter Letzt kündigte man an, den Bug im Bereich der Dynamic Kernel Thread Stacks behoben zu haben – ein gravierendes Hindernis für die C++-Unterstützung weniger.

…und im Hause STMicroelectronics

STs Entscheidung, Atollic zu erwerben, sollte zu einer “Bereinigung” des Ökosystems führen. Die unter Beitrag “STMicroelectronics: Azure RTOS im Fokus” im Detail beschriebene Vorstellung des U5 ging mit der Ankündigung einher, fortan Azure RTOS als “Standardbetriebssystem” verwenden zu wollen – die großartige Integration in Cube erleichtert das Deployment.
Auf dem Kongress zeigte ST, dass man auch an Zephyr Interesse hat. Der eigentliche Entwicklungsprozess erfolgt dabei ohne grafische Unterstützung; bis der Code lauffähig ist, ist manuelle Anpassung erforderlich.

Langfristig evaluiert ST auf Nachfrage, Zephyr-Unterstützung in den Cube-Codegenerator zu integrieren – hierfür gibt es aber noch keine ETA.

Mender – OTA-Updates fuer Zephyr

Das quelloffene OTA-Aktualisierungssystem Mender ist im Bereich des klassischen Embedded Linux seit längerer Zeit nicht wegzudenken – dank eines Contributors aus der Community erweitert sich die Reichweite des Produkts in Richtung ESP32 und Co.

Das im gezeigten Repositorium zur Verfügung stehende Softwaremodul ist dabei plattformagnostisch: wer es auf einem neuen Mikrocontrollertyp zur Ausführung bringen möchte, muss lediglich die fehlenden plattformspezifischen Komponenten ergänzen.
Außerdem – auch dies eine Livevorstellung am OSS Summit – ist es ab Sofort möglich, über Mender auf die Terminalkonsole von Zephyr zuzugreifen.

Mit Linux in den Weltraum

Im Rahmen einer Keynote channelte der Sprecher – wohl unwollend – den vor kurzem verstorbenen CEO eines Nautikunternehmens: den Begriff des “New Space” wollen wir hier unkommentiert für sich sprechen lassen.

Mit Projekten wie Linux4Space stehen allerdings verschiedene auf die Nutzung im Weltraum optimierte Varianten von Linux zur Verfügung. Diese sind praktisch erprobt: der CubeSat ist eine Art “Clustersatellit”, der von kommerziellen Satellitenstartanbietern in die Umlaufbahn gebracht wird – einige davon basieren bereits auf Linux.

Arduino R4 WiFi “in leibhaftiger Form”

Während Seeed mit einem eigenen Stand (Fokus auf verschiedene Evaluationsboards im Zusammenspiel mit Zephyr) vertreten waren, suchte man Arduino vergeblich.

Im Meetingbereich kämpfte ein Entwickler der Italiener mit Bugs am Arduino R4 WiFi (und seiner sehr attraktiv aussehenden LED-Matrix); interessant empfand der Autor auch die Beobachtung eines Meetings des Arduinisten mit verschiedenen Zephyrentwicklern.

Es geht weiter…

Der Kongress geht noch zwei Tage weiter; wir berichten live. Wer vor Ort ist – der Newsautor freut sich über einen Raucherkollegen!

Zuerst erschienen bei Mikrocontroller.net News

Quelle: Read More