Der Codegenerator von STMicroelectronics bietet Entwicklern seit jeher die Möglichkeit, FreeRTOS in Projektskelette einzubinden. Auf einem Webinar demonstrierte STM nun die Azure RTOS-Integration, und sprach unter Anwesenheit eines Microsoft-Mitarbeiters über die zukünftige Echtzeitbetriebssystemstrategie.
Am Wichtigsten ist X-CUBE-AZRTOS-H7: das Erweiterungspaket für CubeIDE 1.6 bzw. CubeMX 6.2 ermöglicht die grafische Konfiguration von Azure RTOS für den STM32H7 – die von CUBE generierten Projektskelette nehmen so auf Wunsch die verschiedenen Module des ehemals als ThreadX bekannten Betriebssystems auf. CubeIDE 1.7, erwartet bit Mitte Juni, erweitert dann die Threading-Analysemöglichkeiten des Debuggers.
In nicht allzu ferner Zeit bekommen auch andere Controller Unterstützung für ThreadX – die Abbildung zeigt die offizielle Timeline.
Angemerkt sei, dass der Lizenzvertrag zwischen Microsoft und STMicroelectronics explizit für alle Controllertypen gilt. Wer Azure RTOS von Hand auf einen F1 oder F0 portieren will (explizite Aussage im Webinar), kann und soll dies tun. Explizit erwähnt wurde auch der WB, dessen zweiter Kern als “normally blackboxed” bezeichnet wurde: am M4-Kern darf man ThreadX einsetzen.
Vom Umstieg
STMicroelectronics bietet Entwicklern, die bisher mit anderen Echtzeitbetriebssystemen gearbeitet haben, Unterstützung beim Wechsel an. Neben der universell bekannten Compatibility Layer – denken Sie an eine Art Reimplementierung der API – für FreeRTOS gibt es, exklusiv für den STM32, auch ein solches Produkt für CMSIS OS. FreeRTOS erreicht damit bei STMicroelectronics “end of line”. Während das System für alle schon am Markt befindlichen Microcontroller weiter Unterstützung findet, steht es bei neuen Controllern (ab incl. Dem U5) nur noch zur manuellen Integration aus den GitHub-Quellen heraus zur Verfügung.
Vom Flurfunk
Wie immer gilt, dass das wirklich Interessante zwischen den Zeilen gesagt wird. STMicroelectronics plant – so es ob der pandemischen Situation möglich ist – in der gesamtem EMEA-Region 30 Workshops zum Thema abhalten. Im Bereich des GUI-Stacks standardisiert man sich nicht auf GuiX: die hauseigene TouchGFX-Lösung bleibt der bevorzugte Weg zur Realisierung von GUIs im Hause STM. Der Lizenzvertrag mit Microsoft gibt dem Entwickler aber auch hier Auswahlmöglichkeit – wer GuiX von Hand in sein Projekt integrieren will, muss keine Extrakosten bezahlen. Dieser paradiesische Zustand der Kostenlosigkeit endet, wenn man die “safety critical certification”-Aspekte von Azure RTOS in Anspruch nehmen möchte. Microsoft lässt sich die Herausgabe der notwendigen Dokumente laut STM entlohnen – erste Anlaufstelle ist hier der Field Application Engineer von STM. Über die diesbezüglichen Kosten hüllte man sich während des Webinars übrigens in Schweigen.
Fazit
Wer – im Moment – ein auf FreeRTOS basierendes Design mit STM-Mikrocontrollern umsetzt, muss sich keine Gedanken machen – die Plattform wird überall, wo sie schon vorhanden ist, weiter unterstützt. Bei neuen CPUs (ab incl. dem U5) sollte man die Situation allerdings reevaluieren: wer von CUBE abhängig ist, muss umdenken.