Bei Digi arbeiten wir ständig an Innovationen und Verbesserungen, um unseren Kunden, Partnern und OEMs die besten drahtlosen Lösungen zu bieten. Unser reichhaltiges Angebot an drahtlosen Modulen, Ressourcen und Tools ermöglicht es Entwicklern, vernetzte Produkte und Anwendungen für eine Vielzahl von Anwendungsfällen in den Bereichen Landwirtschaft, Industrie, Medizin und intelligente Städte zu entwickeln.
In diesem Beitrag stellen wir Ihnen die Verbesserungen der MicroPython-Funktionen in unserer XBee®-Produktreihe sowie die neuen Funktionen vor, die wir eingeführt haben. Wir werden laufend Erweiterungen hinzufügen, um die Edge-Intelligenz in IoT Anwendungen zu unterstützen. "Wir haben gerade erst angefangen!
Mit der neuesten Version der 3Digi XBee MicroPython-Firmware können Kunden nun echte Geschäftslogik auf der XBee selbst über den gesamten Lebenszyklus des Endprodukts entwickeln.
Hier ein kurzer Überblick über einige der neuen Funktionen:
- Wir haben die MicroPython-Fähigkeiten in der gesamten Produktlinie erweitert.
- Wir haben die Unterstützung für benutzerdefinierte MicroPython-Module zu unseren Kurzzeitprodukten hinzugefügt.
- Zusätzlich haben wir die Möglichkeit hinzugefügt, die MicroPython-Anwendung per Fernzugriff über die Luft zu aktualisieren.
Lassen Sie uns mehr über die erweiterte Funktionalität sprechen.
Erweiterte MicroPython-Fähigkeiten
Die neuen MicroPython-Fähigkeiten bedeuten, dass Sie erwarten können, dass die E/A-Schnittstellen in der gesamten XBee 3-Produktlinie gleich aussehen. Egal, ob Sie PWM zum Antrieb eines Motors verwenden, eine Schnittstelle zu einem I2C-Thermostat oder -Sensor herstellen oder einfach nur ein Licht ein- und ausschalten möchten, Sie können Ihr Digi XBee 3-Gerät verwenden, um Intelligenz hinzuzufügen und direkt mit der realen Welt zu interagieren. Wie wir sehen werden, umfassen die möglichen Anwendungsfälle in der realen Welt alles von der Heimautomatisierung bis hin zu industriellen Anwendungen IoT .
Benutzerdefinierte MicroPython-Unterstützung
Bei Digi XBee 3 Produkten mit kurzer Reichweite können Kunden jetzt ihre eigenen MicroPython-Module hinzufügen. Eine Python-Umgebung ohne Module ist sehr einschränkend. Module sind ein wesentlicher Bestandteil der Python-Programmierung und der bewährten Methoden der Softwareentwicklung. Sie machen es einfach, gemeinsamen Code zwischen verschiedenen XBee 3-Modulen und sogar verschiedenen Kundenendprodukten zu teilen.
MicroPython Over-the-Air-Aktualisierungen
Over-the-Air-Updates (OTA) bedeuten, dass Sie, wenn Sie einen Fehler in Ihrem Code finden oder die Fähigkeiten Ihrer Geräte im Feld verbessern wollen, neuen Code auf Ihre XBee's pushen können, ohne dass Sie einen LKW zu jedem einzelnen Gerät rollen müssen.
In vielen Anwendungen, wie z. B. der Straßenbeleuchtung, ist es einfach nicht praktikabel, physisch auf die Geräte zuzugreifen, um einen Fehler zu beheben oder einige neue Funktionen hinzuzufügen. Mit dieser Funktion können Sie Ihre Geräte aktualisieren, ohne sie physisch demontieren zu müssen, was Zeit und Arbeit spart.
Over-the-Air-Updates für Kurzstrecken- und Mobilfunk
Digi XBee 3 Produkte mit kurzer Reichweite, die 802.15.4, DigiMesh und Zigbee umfassen, können nicht direkt mit Digi RM verbunden werden und verfügen auch über eine MicroPython-Update-Funktion über die Luft. Da der Speicherplatz bei diesen Produkten begrenzter ist als bei XBee 3 Mobilfunk, nutzen wir die Firmware-Update-Funktionen, die bereits im Produkt vorhanden sind, um ein einfaches Dateisystem-Image hochzuladen, das die Python-Anwendung und ihre unterstützenden Module enthält.
Für Digi XBee 3 Mobilfunk Produkte können Sie Digi RM verwenden, um direkt mit dem Dateisystem auf Ihrem XBee zu interagieren. Sie können nicht nur Ihren Python-Code hochladen, sondern auch einstellen, dass Aktualisierungen nur erfolgen, wenn schlafende Geräte aufwachen, um die Batterie optimal zu nutzen. Diese Fähigkeit nutzt eine Funktion, die es nur bei Digi-Geräten gibt, die mit Digi RM verbunden sind: Short Message (SM) Query. Sie ermöglicht es Ihnen, die Datennutzung zu minimieren und sogar bei Bedarf eine Verbindung per SMS oder beim nächsten Check-in-Intervall per UDP herzustellen.
Vorteile der Verwendung von MicroPython
MicroPython ermöglicht es Kunden, Endprodukte mit Intelligenz auszustatten, ohne den zusätzlichen Zeitaufwand, die Kosten und die Komplexität der Entwicklung in einem Host-Mikrocontroller. Natürlich ist dies kein Einheitsmodell; die Entscheidung für MicroPython oder einen Host-Prozessor hängt von der Komplexität und den Anforderungen der Anwendung ab.
Ein Host-Mikrocontroller kann angemessen sein, und die beiden schließen sich nicht gegenseitig aus. MicroPython kann dazu dienen, dem Kommunikationsmodul Funktionalität hinzuzufügen, die sonst vielleicht nicht vorhanden wäre (z. B. MQTT), und dadurch die Zeit zu sparen, die für die Implementierung auf der Host-MCU erforderlich ist. eine Abfolge der folgenden Aktionen ausführt:
- Lesen eines Eingangs (I2C, GPIO)
- Verfolgen eines Intervalls
- Senden Sie einige Daten
- Führen Sie eine einfache Berechnung durch
- Prüfen auf eine zu ändernde Bedingung
- Ein Gerät ein- oder ausschalten
- Schlaf
- Aufwachen
Die oben genannten Aktionen lassen sich . Ein typischer XBee 3, auf dem MicroPython läuft, könnte fünf Minuten lang schlafen, dann aufwachen, um zu prüfen, ob sich der Status eines GPIOs von niedrig auf hoch geändert hat, und dann wieder schlafen gehen. Wenn sich der Wert ändert, könnte er eine Textnachricht senden, um einen Alarm auszugeben, dass etwas schief gelaufen ist.
Beispielhafte Anwendungsfälle für Digi XBee 3 MicroPython
Es gibt viele praktische Alltagsanwendungen für diese Funktionalität sowie Feldanwendungen für die Industrie IoT. Die verschiedenen Arten von Anwendungsfällen können die Funktionalität der XBee 3 Mobilfunk Linie (Cat 1, LTE-M, NB-IoT, 3G) oder XBee 3 Kurzstreckenprodukte (Zigbee, DigiMesh, 802.15.4) erfordern, je nach der erforderlichen Topologie und Verteilung der Geräte und der Häufigkeit und Menge der zu sendenden Daten.
Schauen wir uns Beispiele an, die die Bandbreite der Möglichkeiten zeigen.
Wasserstandssensor
In bestimmten Klimazonen kann es bei Häusern aufgrund von übermäßiger Schneeschmelze und Abfluss oder Regenstürmen, die ein hohes Regenvolumen erzeugen, zum Ausfall der Sumpfpumpe kommen. Ein einfacher Hochwassersensor kann den Hausbesitzer auf das Problem aufmerksam machen, bevor es zu einer Kellerüberflutung kommt.
Anwendung zum täglichen Auslesen von Daten
In einem anderen Beispiel für eine typische Digi XBee 3 MicroPython-Anwendung schläft das Modul einen Tag lang, wacht auf, liest einen I2C-Sensor aus, wandelt die Daten mit einer einfachen Berechnung um, formatiert das Ergebnis und überträgt den Datenpunkt dann an die gewünschte IoT Cloud oder an ein lokales Gateway zur Aggregation, je nachdem, ob die XBee 3 Mobilfunk oder eine kurze Reichweite hat.
Industrielle und landwirtschaftliche Anwendungen
Der Einsatz von MicroPython auf Digi XBee 3 findet bei unseren Kunden immer mehr Anklang, um reale Probleme zu lösen.

Ein Kunde nutzte beispielsweise MicroPython auf XBee 3 Mobilfunk LTE-M, um die Logik in batteriebetriebene Bodensensoren einzubauen, die die Temperatur und Feuchtigkeit von Mulchhaufen überwachen. Diese Anwendung nutzte mehrere MicroPython-Bibliotheken, einschließlich MQTT, um die Daten in der AWS (Amazon Web Services) IoT Cloud zu veröffentlichen.
Ein anderer Kunde nutzte eine FTP-Client-Bibliothek, um Daten im Dateisystem zu protokollieren und sie dann an den eigenen Anwendungsserver zu übertragen.
In einem anderen Anwendungsfall verwendete ein Kunde MicroPython auf XBee 3 Zigbee, um die aktuelle Temperatur zu lesen und an einen entfernten Knoten in einer Dampfmessanwendung zu senden.
MicroPython Code Vereinfachung
Das Tolle an diesen Lösungen ist, dass sie unglaublich einfachen MicroPython-Code beinhalten. Ein erfahrener Entwickler kann eine nützliche Anwendung in 100 Codezeilen oder weniger erstellen.
MicroPython-Lösungen sind nur durch die Vorstellungskraft begrenzt. Zum Beispiel können Sie MicroPython mit Digi XBee 3 Geräten verwenden, um eine der folgenden Aufgaben zu erfüllen und mehr:
- Ansteuerung einer einfachen Anzeige
- Schnittstelle mit BLE
- Hinzufügen eines einfachen Netzwerkprotokolls
- Erweitern Sie den API-Modus um den Benutzerdaten-Relay-Frame
- Bearbeitung von Anfragen aus der Cloud
Wir haben gerade erst damit begonnen, Edge-Intelligence-Lösungen auf Digi XBee 3 bereitzustellen. Digi arbeitet aktiv an der Erweiterung unserer MicroPython-Entwicklungstools, Bibliotheken, Beispielprogramme und Anwendungen, die wir in unserem Github-Repository bereitstellen. Diese Entwicklerressourcen bieten Bausteine, mit denen Sie echte Probleme lösen können, indem Sie Ihre Produkte und Anwendungen auf IoT mit Intelligenz ausstatten.
Nächste Schritte