AWS IoT Over-the-Air-Bibliothek (OTA) - Kostenlos RTOS

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

AWS IoT Over-the-Air-Bibliothek (OTA)

Anmerkung

Der Inhalt dieser Seite ist möglicherweise nicht vorhanden up-to-date. Das neueste Update finden Sie auf der Seite der RTOS Free.org-Bibliothek.

Einführung

Mit der Update-Bibliothek AWS IoT Over-the-air (OTA) können Sie die Benachrichtigung, den Download und die Überprüfung von Firmware-Updates für kostenlose RTOS Geräte verwalten, die das Protokoll HTTP oder MQTT als Protokoll verwenden. Mithilfe der OTA Agentenbibliothek können Sie Firmware-Updates und die auf Ihren Geräten ausgeführte Anwendung logisch voneinander trennen. Der OTA Agent kann eine Netzwerkverbindung mit der Anwendung gemeinsam nutzen. Durch die gemeinsame Nutzung einer Netzwerkverbindung können Sie potenziell eine beträchtliche Menge an Daten sparenRAM. Darüber hinaus können Sie mit der OTA Agentenbibliothek anwendungsspezifische Logik für das Testen, Festschreiben oder Zurücksetzen eines Firmware-Updates definieren.

Das Internet der Dinge (IoT) erweitert die Internetkonnektivität auf eingebettete Geräte, die traditionell nicht verbunden waren. Diese Geräte können so programmiert werden, dass sie nutzbare Daten über das Internet übertragen, und sie können fernüberwacht und gesteuert werden. Dank technologischer Fortschritte verfügen diese herkömmlichen eingebetteten Geräte in rasantem Tempo über Internetfunktionen für Verbraucher, Industrie und Unternehmen.

IoT-Geräte werden in der Regel in großen Mengen und oft an Orten eingesetzt, die für einen menschlichen Bediener schwer oder unpraktisch zugänglich sind. Stellen Sie sich ein Szenario vor, in dem eine Sicherheitslücke entdeckt wird, durch die Daten offengelegt werden können. In solchen Szenarien ist es wichtig, die betroffenen Geräte schnell und zuverlässig mit Sicherheitsupdates zu aktualisieren. Ohne die Möglichkeit, OTA Updates durchzuführen, kann es auch schwierig sein, Geräte zu aktualisieren, die geografisch verstreut sind. Die Aktualisierung dieser Geräte durch einen Techniker ist kostspielig, zeitaufwändig und oft unpraktisch. Aufgrund der Zeit, die für die Aktualisierung dieser Geräte benötigt wird, sind sie für einen längeren Zeitraum Sicherheitslücken ausgesetzt. Der Rückruf dieser Geräte zur Aktualisierung ist ebenfalls kostspielig und kann aufgrund von Ausfallzeiten zu erheblichen Störungen für die Verbraucher führen.

Over-the-Air-Updates (OTA) ermöglichen die Aktualisierung der Gerätefirmware ohne teuren Rückruf oder Technikerbesuch. Diese Methode bietet die folgenden Vorteile:

  • Sicherheit — Die Fähigkeit, schnell auf Sicherheitslücken und Softwarefehler zu reagieren, die nach dem Einsatz der Geräte vor Ort entdeckt werden.

  • Innovation — Produkte können häufig aktualisiert werden, wenn neue Funktionen entwickelt werden, was den Innovationszyklus vorantreibt. Die Updates können schnell und mit minimalen Ausfallzeiten im Vergleich zu herkömmlichen Aktualisierungsmethoden wirksam werden.

  • Kosten — OTA Updates können die Wartungskosten im Vergleich zu Methoden, die traditionell zur Aktualisierung dieser Geräte verwendet werden, erheblich senken.

Die Bereitstellung der OTA Funktionalität erfordert die folgenden Entwurfsüberlegungen:

  • Sichere Kommunikation — Updates müssen verschlüsselte Kommunikationskanäle verwenden, um zu verhindern, dass die Downloads während der Übertragung manipuliert werden.

  • Wiederherstellung — Updates können z. B. aufgrund einer unterbrochenen Netzwerkverbindung oder aufgrund des Empfangs eines ungültigen Updates fehlschlagen. In diesen Szenarien muss das Gerät in der Lage sein, in einen stabilen Zustand zurückzukehren und zu verhindern, dass es beschädigt wird.

  • Autorenverifizierung — Es muss verifiziert werden, dass Updates von einer vertrauenswürdigen Quelle stammen, zusammen mit anderen Validierungen wie der Überprüfung von Version und Kompatibilität.

Weitere Informationen zum Einrichten von OTA Updates mit Free finden Sie RTOS unter. Kostenlose RTOS Over-the-Air Updates

AWS IoT Drahtlose Bibliothek (OTA)

Mit der AWS IoT OTA Bibliothek können Sie Benachrichtigungen über neu verfügbare Updates verwalten, diese herunterladen und eine kryptografische Überprüfung von Firmware-Updates durchführen. Mithilfe der Clientbibliothek over-the-air (OTA) können Sie die Firmware-Aktualisierungsmechanismen logisch von der Anwendung trennen, die auf Ihrem Gerät ausgeführt wird. Die Clientbibliothek over-the-air (OTA) kann eine Netzwerkverbindung mit der Anwendung gemeinsam nutzen, wodurch Speicherplatz auf Geräten mit beschränkten Ressourcen gespart wird. Darüber hinaus können Sie mit der over-the-air (OTA) -Clientbibliothek anwendungsspezifische Logik für das Testen, Festschreiben oder Zurücksetzen eines Firmware-Updates definieren. Die Bibliothek unterstützt verschiedene Anwendungsprotokolle wie Message Queuing Telemetry Transport (MQTT) und Hypertext Transfer Protocol (HTTP) und bietet verschiedene Konfigurationsoptionen, die Sie an Ihren Netzwerktyp und Ihre Netzwerkbedingungen anpassen können.

Diese Bibliothek APIs bietet die folgenden Hauptfunktionen:

  • Registrieren Sie sich für Benachrichtigungen oder fragen Sie nach neuen Aktualisierungsanfragen ab, die verfügbar sind.

  • Empfangen, analysieren und validieren Sie die Aktualisierungsanfrage.

  • Laden Sie die Datei herunter und überprüfen Sie sie anhand der Informationen in der Aktualisierungsanfrage.

  • Führen Sie vor der Aktivierung des empfangenen Updates einen Selbsttest durch, um die Funktionsfähigkeit des Updates sicherzustellen.

  • Aktualisieren Sie den Status des Geräts.

Diese Bibliothek verwendet AWS Dienste zur Verwaltung verschiedener Cloud-bezogener Funktionen wie dem Senden von Firmware-Updates, der Überwachung einer großen Anzahl von Geräten in mehreren Regionen, der Reduzierung des Explosionsradius fehlerhafter Bereitstellungen und der Überprüfung der Sicherheit von Updates. Diese Bibliothek kann mit jeder beliebigen MQTT Bibliothek verwendet werden. HTTP

Die Demos für diese Bibliothek zeigen vollständige over-the-air Updates unter Verwendung der MQTT Kernbibliothek und der AWS Kerndienste auf einem kostenlosen RTOS Gerät.

Features

Hier ist die vollständige OTA Agent-Oberfläche:

OTA_Init

Initialisiert die OTA Engine, indem der OTA Agent („OTATask“) im System gestartet wird. Es darf nur ein OTA Agent existieren.

OTA_Shutdown

Signalisieren Sie dem OTA Agenten, dass er herunterfahren soll. Der OTA Agent meldet sich optional von allen Themen zur MQTT Auftragsbenachrichtigung ab, beendet laufende OTA Aufträge, falls vorhanden, und löscht alle Ressourcen.

OTA_GetState

Ruft den aktuellen Status des OTA Agenten ab.

OTA_ActivateNewImage

Aktiviert das neueste Mikrocontroller-Firmware-Image, das über OTA empfangen wurde. (Der detaillierte Jobstatus sollte dann "Selbsttest" sein.)

OTA_SetImageState

Legt den Validierungsstatus des aktuell laufenden Mikrocontroller-Firmware-Images fest (Test, Akzeptiert oder Abgelehnt).

OTA_GetImageState

Ruft den Status des aktuell laufenden Mikrocontroller-Firmware-Images ab (Test, Akzeptiert oder Abgelehnt).

OTA_CheckForUpdate

Fordert das nächste verfügbare OTA OTA Update vom Aktualisierungsdienst an.

OTA_Suspend

Unterbrechen Sie alle OTA Agentenoperationen.

OTA_Resume

Nehmen Sie den Betrieb OTA des Agenten wieder auf.

OTA_SignalEvent

Signalisieren Sie der OTA Agentenaufgabe ein Ereignis.

OTA_EventProcessingTask

OTAVerarbeitungsschleife für Agentenereignisse.

OTA_GetStatistics

Rufen Sie die Statistik der OTA Nachrichtenpakete ab, einschließlich der Anzahl der empfangenen, in die Warteschlange gestellten, verarbeiteten und verworfenen Pakete.

OTA_Err_strerror

Konvertierung von Fehlercode in Zeichenfolge bei OTA Fehlern.

OTA_JobParse_strerror

Konvertiert einen OTA Job Parsing-Fehlercode in eine Zeichenfolge.

OTA_PalStatus_strerror

Konvertierung von Statuscode in Zeichenfolge für OTA PAL den Status.

OTA_OsStatus_strerror

Konvertierung von Statuscode in Zeichenfolge für den OTA Betriebssystemstatus.

APIReferenz

Weitere Informationen finden Sie im AWS IoT Over-the-air Update: Funktionen.

Beispielverwendung

Eine typische OTA -fähige Geräteanwendung, die das MQTT Protokoll verwendet, steuert den OTA Agenten mithilfe der folgenden Reihenfolge von API Aufrufen.

  1. Connect zum AWS IoT MQTT Core-Agenten her. Weitere Informationen finden Sie unter zentrale MQTT Agentenbibliothek.

  2. Initialisieren Sie den OTA Agenten, indem Sie ihn aufrufenOTA_Init, einschließlich der Puffer, der erforderlichen OTA-Schnittstellen, des Dingnamens und des Anwendungs-Callbacks. Der Callback implementiert anwendungsspezifische Logik, die nach Abschluss eines Aktualisierungsauftrags ausgeführt wird. OTA

  3. Wenn das OTA Update abgeschlossen ist, RTOS ruft Free den Callback zum Abschluss des Jobs mit einem der folgenden Ereignisse auf:, oder. accepted rejected self test

  4. Wenn das neue Firmware-Image abgelehnt wurde (z. B. aufgrund eines Validierungsfehlers), kann die Anwendung die Benachrichtigung in der Regel ignorieren und auf das nächste Update warten.

  5. Wenn das Update gültig ist und als akzeptiert markiert wurde, rufen Sie OTA_ActivateNewImage auf, um das Gerät zurückzusetzen und das neue Firmware-Image zu starten.

Portierung

Informationen zur Portierung von OTA Funktionen auf Ihre Plattform finden Sie unter Portierung der OTA Bibliothek im Leitfaden zur kostenlosen RTOS Portierung.

Speichernutzung

Codegröße von AWS IoT OTA (Beispiel generiert mit GCC für ARM Cortex-M)
Datei Mit -O1-Optimierung Mit -Os-Optimierung
ota.c 8,3 K 7,5 K
ota_interface.c 0,1 K 0,1 K
ota_base64.c 0,6 K 0,6 K
ota_mqtt.c 2,4 K 2,2 K
ota_cbor.c 0,8 K 0,6 K
ota_http.c 0,3 K 0,3 K
Schätzungen insgesamt 12,5 K 11,3 K