Auspacken und Antesten des Azure Sphere Dev Kit

In den letzten Wochen verteilte Microsoft in Zusammenarbeit z.B. mit element14 aus England mehrere zehntausend Gutscheine für ein Azure Sphere Kit von Avnet, einem der weltgrößten Handelsunternehmen für Informations- und Elektrotechnik.
In Zusammenarbeit mit Maker-Communities existieren im Rahmen der Kampagne auch diverse Tutorials und Contests rund um das Azure Sphere Dev Kit.
So können bei Community-Herausforderungen zum Beispiel zu den Themenbereichen „Sensorik“ von element14 oder „Sicherheit“ von Hackster.io hochwertige Sachpreise wie HoloLens 2 Geräte oder Surface Produkte gewonnen werden.
Nichtsdestotrotz soll bei all dem der Spaß an der neuen Welt der IoT im Mittelpunkt stehen.
Inhalt des Kit
Neben etlichen Begleitmaterialen auf Papier, welche auf die oben genannten Aktionen aufmerksamen machen sollen, und ins Auge fallenden Gefahrenhinweisen, dass das Gerät nicht von der FCC genehmigt wurde, sind nur das mit 33x22x3 Millimeter vergleichsweise kleine Board und ein Mirko-USB Kabel im Lieferumfang des Dev Kit enthalten.
Bei dem Herzstück des Boards, dem SoC, handelt es sich um ein MediaTek MT3620AN auf ARM-Basis. Dieser besitzt neben einem 500MHz Kern Cortex A7 mit satten 4 MB SRAM (Wiki) auch zwei 200MHz Cortex M4F Kerne mit jeweils 64KB SRAM.
Als aufgebrachte Sensoren stehen unter anderem ein Beschleunigungsmesser, ein Gyroskop als auch Umgebungslicht-, Temperatur- und Luftrucksensoren zum Experimentieren bereit.
Der vorhandene MikroUSB-Anschluss dient als Stromversorgung sowie zur Verbindung mit einem Computer, über welchen die initiale Konfiguration und die Fehlersuche während der Entwicklung stattfindet.
Mittels einem integrierten Dualband Wifi Chip für 2.4 und 5 GHz Kanäle wird der Zugriff auf das Internet ermöglicht.
Detailliere Informationen in englischer Sprache bietet die Produktseite auf element14.com.
Azure Sphere, Azure Edge, IoT What?
Microsoft ist stets bemüht, das Portfolio des Azure-Ökosystems zu erweitern. Dies geschieht nicht nur auf Seite der Software mit neuen Diensten und Plattformen, sondern auch auf der Seite der Hardware.
Ohne entsprechende Einarbeitung ist hier schnell das Ende im Gelände des Verständnishorizonts erreicht. Aus diesem Grund nun ein Versuch, gewisse Begrifflichkeiten zu erklären.
Hierbei steht Azure Edge IoT (Docs) für die Softwareseite. Dies ist ein auf der Container-Virtualisierung Docker basierender Software-Stack. Mit diesem können nicht nur Daten erhoben werden, sondern zugleich auch durch verschiedene Methoden wie unter anderem durch Künstliche Intelligenz Analysen „am Rande der IoT-Endgeräte Grenze“ direkt auf dem Gerät erstellt werden. Somit vermeidet man unnötigen Datenverkehr in Richtung der Azure Wolke. Dank der Kapselung in einem Container kann Azure Edge IoT auf jeden virtualisierungsfähigen Device ausgeführt werden und ist weder an Prozessorarchitektur als Betriebssystem gebunden.
Azure Sphere (Docs) hingegen ist eine gegen Angriffe stark abgesicherte Hardware- und Anwendungsplattform welche aus der engen Verzahnung von speziell zertifizierten Mikorprozessoren (MPU) und – controllern (MCU) auf ARM-Basis, einem speziell angepassten und minimalistischen Linux-Kernel als auch durch stetige Sicherheitsaktualisierungen über das Internet besteht.
Diese Geräte sollen möglichst preisgünstig in der Anschaffung als auch im Unterhalt sein, um diese in möglichst großen Stückzahlen ausrollen zu können. Diese Devices dienen meist als reine Datensammler und Bindeglied zwischen dem Sensor und Azure (IoT Edge).
Mit Windows 10 IoT (Docs) sind hingegen mehr „gekapselte Geräte“ bestückt, welche eine größere Funktionalität unter anderem auch auf Basis von UWP-Anwendungen bieten. Beispielsweise Pfandrückgabeautomaten, Tankstellen oder auch Thin Clients. Somit ist diese Betriebssystemfamilie defacto der Nachfolger von Windows CE.
All diese Geräte können mittels dem Azure IoT Hub (Docs) im Web verwaltet und kontrolliert werden, welcher wiederum Anbindungen an weitere Azure Dienste wie Data Lakes, Functions und so weiter besitzen kann.
Für etwaige Fragen oder Richtigstellungen hinterlasst bitte ein Kommentar unterhalb dieses Artikels.
Ohne Azure läuft nichts
Wie der Name schon verrät, funktioniert ohne Azure rein gar nichts mit Geräten auf Basis von Azure Sphere. Für die Inbetriebnahme und Verwaltung von diesen Devices ist ein spezielles Azure Active Directoy (AAD, Docs) Benutzerkonto nötig. Dies ist wie auch schon bei dem Beitrag zum Excel-Logger nur mit einem Arbeits- oder Schulkonto möglich. Ein MSA (@outlook.com) aber auch ein Office 365 Home Abonnent sind hierbei nicht ausreichend.
Wer dies nicht besitzt, kann hier zur Evaluation und Entwicklung dem Umweg über ein Microsoft Office Developer Konto gehen. Hierzu ist anzuraten, ein komplett neue Microsoft Konto (MSA) als Grundlage zu verwenden.
Sobald diese Hürde erklommen wurde, ist die folgende Einrichtung relativ geradlinig. Durch das Installieren des Azure Sphere SDK (Docs), steht der Terminalbefehl „azsphere“ zur Verfügung. Mit diesem kann, wenn nötig, die Firmware des Developer Kits aktualisiert als auch das Geräte „geclaimed“ werden. Dies bedeutet, dass das Device nun fest mit dem AAD Tenant verbunden ist und in Azure hinterlegt wird. Das ist Teil des starken Sicherheitskonzeptes des IoT-Ökosystems seitens Microsoft.
Im Anschluss muss, so lange das Device noch mittels USB mit einem Windows 10 Rechner verbunden ist. mittels dem gleichen Kommandozeilenbefehl auch das Wifi des SoC konfiguriert werden.
Ist auch dieser Schritt abgeschlossen, kann das Ausprobieren und Experimentieren mit dem Azure Sphere Dev Kit richtig los gehen!
Erstes eigenes Programm ausführen
Die systemnähere Programmiersprache C ist von Microsoft als Standard für die Entwicklung von Applikationen für Azure Sphere Devices angedacht.
Das im ersten Abschnitt installierte Azure Sphere SDK bringt neben dem bereits verwendenden Kommandozeilenwerkzeug auch Vorlagen für Visual Studio Projekte mit. Eines davon hört auf den Namen „Blink“. Dieses lässt sich sofort ausführen und auf das via USB-angeschlossene Board aufspielen.
Wenn alles ohne Probleme kompiliert, übertragen und ausgeführt wird, blinkt eine LED auf dem Board nicht zu übersehend vor sich hin. Erfolg!
Von hier an steht dem puren Spaß an der Entwicklung nichts mehr im Wege. Das Developer Kit Board bringt bereits etliche weitere Sensoren, LEDs und freie GPIO-Pins zum Experimentieren mit.
Im Repostiory tscholze/c-azure-sphere-blink auf GitHub ist ein geringfügig erweitertes C-Programm zu finden, welches nacheinander jede der drei farbigen LEDs einmalig zum Aufleuchten bringt.
Um dem eigentlichen Einsatzgebiet solcher Devices gerecht zu werden, könnte man beispielsweise den internen Temperatursensor an eine Azure Hub Instanz senden, dort auf Grenzwerte prüfen und bei Überschreitung eines Maximums den Befehl an das Gerät schicken, eine LED anzuzeigen.
Ist es für Maker geeignet?
Aufgrund der zwingenden Verbindung mit Azure und den dortigen kostenpflichtigen Diensten ist zumindest für den Bastler-Maker wohl Windows 10 IoT Core die bessere und auch einfachere Wahl, wenn es um Betriebssysteme aus dem Hause Microsoft geht.
Eine Verbindung aus beispielsweise einem Arduino und Microsoft Web Services sei hier auch noch als gangbare Lösung erwähnt.
Wer hingegen schon immer einmal tief in die aufstrebende und spannende Welt des Enterprise-IoT-Kosmos eintauchen möchte, für den ist das Kit als auch Azure Sphere an sich einer der besten Einstiegspunkte, die es bisher gibt. Die großteils gute und verständliche Dokumentation nimmt viele Verständnishürden.
Danke an die Community
Ohne eine offenherzige Community wären solche Projekte wie dieses hier nicht denkbar! Sei es Martin, der diesen tollen Rahmen bietet, oder auch Raphael (Twitter) welcher als Azure-Experte auch jegliche noch so einfache Anfängerfrage bereitwillig beantwortet. Ohne diese lebhafte Gemeinschaft von hilfsbereiten Menschen wäre der Einstieg nicht nur in Azure sondern auch in C und Co. um etliches schwerer gefallen.
#communityrocks
Thema:
- News
Über den Autor

Tobias Scholze
Bayrischer Open Source- und Community-Enthusiast, Verfechter des neuen Microsoft und Wandler zwischen den Betriebssystemwelten. #communityrocks Von Herzen ein Nerd mit der festen Überzeugung, dass man gemeinsam und durch den Einsatz von moderner IT die Welt für jeden ein Stückchen besser machen kann.