Hermetry stellt Firmware over the air bereit. Sie laden ein Paket hoch, weisen es zu, und jedes Gerät lädt es selbstständig herunter, prüft es und installiert es, während es seinen Fortschritt meldet. Hermetry signiert niemals Firmware: Die Signatur erfolgt in Ihrer Release-Pipeline, und Hermetry speichert nur Ihre öffentlichen Schlüssel.
Öffnen Sie Firmware im IoT-Menü („Firmware-Images hochladen, Geräten zuweisen und jedes Update verfolgen.“).
Berechtigungen
| Aktion | Standardrolle |
|---|---|
| Pakete, Zuweisungen und Update-Status der Geräte anzeigen | Benutzer |
| Pakete hochladen, zurückziehen, widerrufen und löschen | Admin |
| Firmware zuweisen, OTA-Einstellungen ändern, Updates wiederholen | Admin |
| Öffentliche Signaturschlüssel registrieren und widerrufen | Owner |
1. Updates für das Profil aktivieren
Für ein neues Profil sind Updates deaktiviert. Aktivieren Sie sie, wenn die zugehörigen Geräte ihren Update-Fortschritt melden. Öffnen Sie den Reiter Firmware des Profils (Firmware-Updates):
| Einstellung | Standard | Bereich |
|---|---|---|
| Firmware-Updates für dieses Profil erlauben | Aus | — |
| Unsignierte Images erlauben | Aus | „Nur für Testgeräte.“ |
| Updates über LTE (Mobilfunkdaten) erlauben | Aus | Ein Gerät kann eine eigene Einstellung haben. |
| Download kann dauern (Minuten) | 60 | 5 bis 1.440 |
| Installation kann dauern (Minuten) | 20 | 2 bis 240 |
| Versuche pro Update | 3 | 1 bis 10 |
Der Reiter zeigt außerdem, was diesem Profil zugewiesen ist, und eine Schaltfläche Firmware zuweisen.
2. Signaturschlüssel registrieren
- Öffnen Sie unter Firmware die Signaturschlüssel („Die öffentlichen Schlüssel, mit denen Ihre Firmware signiert ist. Hochgeladene Images werden gegen sie geprüft. Private Schlüssel gelangen nie hierher.“).
- Wählen Sie Schlüssel hinzufügen, vergeben Sie einen Namen, wählen Sie die Art und fügen Sie den öffentlichen Schlüssel ein.
Zwei Signaturarten werden unterstützt: eine separate Ed25519-Signaturdatei (.sig) für das Image, bei der Sie die vollständige Datei des öffentlichen Schlüssels einfügen; und eine Signatur im Image, erzeugt durch das Secure-Boot-Verfahren des Geräts, bei der Sie den 64-stelligen Schlüssel-Digest einfügen. Nur Owner können Schlüssel hinzufügen oder widerrufen.
Warnung
Widerrufen bei einem Schlüssel widerruft alle damit signierten Pakete und stoppt Updates mit ihnen, die noch nicht mit der Installation begonnen haben.
3. Paket hochladen
Wählen Sie Firmware hochladen und füllen Sie aus:
| Feld | Regeln |
|---|---|
| Typ | Firmware oder Software. |
| Name | Nur Buchstaben, Ziffern sowie . _ + -. Er muss zu dem passen, was das Gerät erwartet (sein Firmware-Titel). |
| Version | 1 bis 64 Buchstaben, Ziffern oder . _ + ~ -, zum Beispiel 24.10.0-r1234. Ein Paar aus Name und Version wird nur einmal verwendet; das Formular zeigt die bisher neueste Version an. |
| Firmware-Image | Die .bin– oder .img-Datei, die Sie auf dem Gerät installieren. |
| Signiert mit | Die Schlüsselart oder Nicht signiert (nur Profile, die unsignierte Images erlauben, können dies nutzen). |
| Signaturdatei (.sig) | Für getrennte Signaturen. Bei Secure-Boot-Images steckt die Signatur im Image. |
| Hardwaremodelle | Optional, durch Kommas getrennt: Nur Geräte, die eines dieser Modelle melden, erhalten das Image. |
| Niedrigste Version, von der aus aktualisiert werden kann | Optional: Geräte mit einer älteren Version werden ausgeschlossen. |
| Nur für Geräte dieses Profils | Belassen Sie es bei Beliebiges Profil, wenn das Image zu allen Profilen passt. |
| Versionshinweise | Optional. |
Ihr Browser berechnet während des Hochladens die SHA-256 der Datei („Vergleichen Sie sie mit der, die Ihr Build ausgegeben hat.“). Der Server prüft die SHA-256 erneut, verifiziert die Signatur gegen Ihre registrierten Schlüssel und scannt die Datei auf Viren. Das Paket ist In Prüfung, bis der Scan sauber ist, danach Bereit; eine Datei, die scheitert, wird Abgelehnt und gelöscht.
4. Zuweisen
Wählen Sie auf der Seite des Pakets Zuweisen oder nutzen Sie den Reiter Firmware eines Profils oder Geräts. Wählen Sie unter Senden an:
| Auswahl | Umfasst |
|---|---|
| Alle Geräte eines Profils | „Später zum Profil hinzugefügte Geräte erhalten es ebenfalls.“ |
| Einige Geräte | „Eine feste Liste: Später hinzugefügte Geräte sind nicht enthalten.“ |
| Ein Gerät | Dieses Gerät. |
Die spezifischste Zuweisung gewinnt: eine Gerätezuweisung vor einer Geräteliste, eine Liste vor einem Profil. Wählen Sie Prüfen, um Was passiert zu sehen: wie viele Geräte erfasst sind, wie viele diese Version bereits laufen haben, wie viele offline sind (sie aktualisieren, sobald sie online gehen) und welche es nicht erhalten, mit Grund (anderes Hardwaremodell, Updates für ihr Profil deaktiviert, für ein anderes Profil bestimmt, unsigniert nicht erlaubt, aktuelle Version zu alt oder noch nicht bekannt). Wählen Sie dann Zuweisen und bestätigen Sie.
Für ein Profil oder eine Geräteliste können Sie In Wellen senden aktivieren. Siehe Firmware in Wellen ausrollen.
Was das Gerät erhält
Hermetry schreibt diese gemeinsamen Attribute in einer Nachricht:
| Schlüssel | Beispiel |
|---|---|
fw_title | boiler-fw |
fw_version | 26.11.0 |
fw_size | 14680064 |
fw_checksum | Hex in Kleinbuchstaben |
fw_checksum_algorithm | SHA256 |
fw_url | eine kurzlebige HTTPS-Download-Adresse |
fw_sig | die getrennte Signatur, falls vorhanden |
fw_allow_metered | ob das Gerät über eine volumenbasierte Verbindung herunterladen darf |
fw_urlist 15 Minuten gültig und wird für jede Zustellung und jede Attributabfrage neu erzeugt. Ist sie abgelaufen, fordert das Gerätfw_urlerneut an und setzt mit einer HTTP-Range-Anfrage fort.- Firmware wird niemals über unverschlüsseltes MQTT angeboten.
- Das Entfernen einer Zuweisung löscht die Schlüssel.
Was das Gerät meldet
| Client-Attribut | Werte |
|---|---|
fw_state | DOWNLOADING, DOWNLOADED, VERIFIED, UPDATING, UPDATED, FAILED |
fw_error | ein Fehlercode, nur bei FAILED |
fw_progress | 0 bis 100, während DOWNLOADING |
fw_wait | metered, quota_exhausted oder approval, solange das Gerät das Update zurückhält |
current_fw_title, current_fw_version | was jetzt läuft; nach jeder Verbindung senden |
Das Gerät muss ein Image ablehnen, dessen Signatur nicht verifiziert werden kann, auch wenn die Prüfsumme passt. Nach dem Neustart meldet es current_fw_version; UPDATED ohne die neue laufende Version wird allein nicht akzeptiert. Kehrt die alte Version zurück, markiert Hermetry das Update als zurückgerollt.
Update-Status
| Status | Bedeutung |
|---|---|
| Eingereiht | Zugewiesen; wird gesendet, sobald das Gerät online ist. |
| An das Gerät gesendet | Das Gerät wurde informiert und sollte mit dem Download beginnen. |
| Download läuft, Heruntergeladen, Geprüft, Installation läuft | Fortschritt, den das Gerät meldet. |
| Aktualisiert | Das Gerät läuft mit der neuen Version. |
| Wartet | Das Gerät hält das Update zurück: über eine volumenbasierte Verbindung, ohne Mobilfunkdaten oder weil es selbst auf Freigabe wartet. Kein Fehler. |
| Fehlgeschlagen | Das Gerät konnte nicht abschließen. |
| Keine Antwort rechtzeitig | Das Gerät hat innerhalb der Download- oder Installationszeit nicht mehr geantwortet. |
| Auf alte Version zurückgerollt | Die neue Version wurde nicht richtig gestartet. |
| Nicht für dieses Gerät | Das Paket passt nicht zu ihm. |
| Abgebrochen | Vor der Installation gestoppt. |
Updates verfolgen
- Die Seite des Pakets zeigt Wo es zugewiesen ist, seine Geräte mit Status, Fortschritt, Versuche und Problem sowie Erneut versuchen für fehlgeschlagene, zeitüberschrittene oder zurückgerollte Geräte.
- Der Reiter Firmware eines Geräts zeigt, was es Läuft, sein Update, seine Historie und Updates über LTE für dieses Gerät (Wie sein Profil, Für dieses Gerät erlaubt, Für dieses Gerät nicht erlaubt).
- Webhook-Ereignisse:
ota.update.initiated,ota.update.succeeded,ota.update.failed, und für Rolloutsota.rollout.*.
Zurückziehen, widerrufen, löschen
| Aktion | Wirkung |
|---|---|
| Zurückziehen | „Sie bleibt im Verlauf erhalten und aktuelle Updates laufen weiter, aber sie wird nicht mehr für neue Zuweisungen angeboten.“ |
| Widerrufen | „Verwenden Sie dies, wenn das Image nicht installiert werden darf. Updates, die noch nicht mit der Installation begonnen haben, werden gestoppt. Geräte, die es bereits installiert haben, behalten es.“ |
| Löschen | Entfernt die Datei und ihre Details. Wird abgelehnt, solange sie zugewiesen ist oder einen Update-Verlauf hat: Ziehen Sie sie stattdessen zurück. |

