© Stmool/Shutterstock.com
Azure Sphere - Teil 1

Sicher mit dem M


Mit Azure Sphere hält Microsoft einen hauseigenen Linux-Port für den Embedded-Bereich vor. Trotz einiger Microsoft-interner Konkurrenzprodukte wird das Produkt weiter aktiv gepflegt. Diese Artikelserie erläutert, welche Vorteile das System gegenüber seinen Mitbewerbern für Entwickler bringt. In diesem Teil widmen wir uns der Einrichtung unseres Azure-Sphere-Systems am Beispiel des MT3620-Entwicklungskits.

Seit dem Niedergang von Windows CE hat Microsoft im Embedded-Sektor eigentlich nicht viel zu lachen. Die Versuche mit dem Gadgeteer und Netduino scheiterten an kommerziellen Ursachen. Seit einiger Zeit geht es allerdings besser: Mit Meadow F7 hat Bryan Costanich von Wilderness Labs .NET im kleinen Bereich wieder neue Lebensenergie eingehaucht. Gleichzeitig steht durch die Übernahme von ThreadX ein hauseigenes Real-Time-Operating-System bereit, um gegen Amazons FreeRTOS in den Ring zu steigen. Windows 10 für IoT wildert hingegen im Bereich der full-featured Clients, wo es nicht auf Echtzeitfähigkeit ankommt. Offen bleibt die Frage, was dann eigentlich die Lebensberechtigung des Azure-Sphere-Systems ist.

Sicherheit durch physikalische Trennung

Das wichtigste Ziel des Betriebssystems Azure Sphere ist nicht die Erfüllung harter Echtzeitkriterien, sondern die Realisierung eines komplett sicheren Workflows, der neben der Authentifikation und Absicherung der Geräte auch die Auslieferung von Softwareupdates und ähnlichen Features umfasst. Wie viele andere Anbieter setzt auch Microsoft im Bereich der hauseigenen Hochsicherheitssysteme ausschließlich auf eigene Prozessoren. Spezifisch handelt sich es dabei um den MT3620, den Microsoft aus dem Hause MediaTek zukauft. Das System besteht aus einem A7-Prozessor und zwei M4-Prozessoren (Abb. 1).

hanna_azuresphere_teil1_1.tif_fmt1.jpgAbb. 1: Die big.LITTLE-Architektur von ARM dürfte Vorbild gewesen sein [1]

Wie im Fall vieler anderer Embedded-ARM-Prozessoren hoher Leistungsfähigkeit kann es vorkommen, dass ein ungeübter Entwickler zumindest einige Stunden mit dem Versuch verbrennt, den MT3620 in ein hauseigenes Board einzubinden. Der von SGS-Thomson forcierte STM32MP1 ist mahnendes und furchteinflößendes Beispiel. Wenn Sie trotzdem weitere Informationen zur Verifikation eines Hardwaredesigns suchen, werden Sie auf der Microsoft-Webseite zu Azure Sphere fündig [2]. Für erste Gehversuche wollen wir uns allerdings darauf beschränken, ein vorgefertigtes Modul zu verwenden. Der Autor arbeitet in den folgenden Schritten mit dem in Abbildung 2 gezeigten Evaluationsboard aus dem Hause Seeed, das bei diversen Distributoren für vergleichsweise wenig Geld erhältlich ist.

hanna_azuresphere_teil1_2.tif_fmt1.jpgAbb. 2: Das MT3620 Development Kit ermöglicht den niedrigschwelligen Einstieg in die Welt der Azure Sphere

Wer eine enge Beziehung zum Hardwaredistributor Avnet hat, kann dort ein Entwicklungskit beziehen. Der Vorteil dieser Platine ist, dass sie sich direkt mit MikroElektronika Click Boards verbinden lässt. Andererseits exponiert sie weniger Pins als das vom Autor bevorzugte Board. So wird der Entwickler bei praktischen Anwendungen im Bereich der Hardwareschnittstellen eingeschränkt. Für die Auslieferung in Kleinserien gibt es auch noch eine Gruppe von Modulen – ein Vertreter ist das in Abbildung 3 gezeigte AES-MS-MT3620-M-G). Diese Boards lassen sich analog zu einem ESP32 direkt auf eine Applikationsplatine löten, was in der Praxis viel Aufwand beim Hardwaredesign spart.

hanna_azuresphere_teil1_3.tif_fmt1.jpgAbb. 3: Diese Platine lässt sich wie ein (großer) IC per Reflow-Ofen verlöten

Einrichtung der Arbeitsumgebung

So unterschiedlich die Darreichungsformen des Azure-Sphere-Bausteins auch sein mögen, so identisch sind sie im Bereich ihrer Anforderungen an den Computer des Sphere-Entwicklers. Im Allgemeinen arbeitet er mit einer brandaktuellen Version von Visual Studio 2019. Deshalb sollte man vorher das Produkt mindestens auf Version 16.4 aktualisieren. Wer partout keine Installation von Visual Studio 2019 auf seinem Gerät haben möchte, kann alternativ auch mit Visual Studio Code oder sogar einem Linux-SDK arbeiten: Beides sind allerdings Prozeduren, die wenig geläufig sind, weshalb man bei Problemen eher wenig Unterstützung finden kann.

Nach der Installation der diversen Updates benötigen Sie noch ein Azure Sphere SDK [3]. Die diesbezüglichen Module lassen sich leider noch nicht aus dem Visual Studio Installer beziehen. Nach dem Download führen Sie die .exe-Datei aus, um die Arbeitsumgebung zu installieren. Lohn der Mühen ist unter anderem, dass das Startmenü fortan eine neue als Azure Sphere Developer Command Prompt bezeichnete Konsol...

Neugierig geworden? Wir haben diese Angebote für dich:

Angebote für Gewinner-Teams

Wir bieten Lizenz-Lösungen für Teams jeder Größe: Finden Sie heraus, welche Lösung am besten zu Ihnen passt.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang