Firmware updates (OTA)
Firmware updates in waves, with gates between them
Imzalı bir paket yükleyin ve cihazlara atayın; her cihaz paketi kendisi indirir, doğrular ve kurar. Güncellemeler dalgalar halinde gönderilir ve kapısını geçemeyen bir dalga, hatalı bir imajın filonun geri kalanına ulaşmasından önce dağıtımı durdurur.
Nasıl çalışır
Sürümden filoya
1
Bir imzalama anahtarı kaydedin
Firmware, kendi sürüm hattınızda imzalanır. Hermetry yalnızca genel anahtarları tutar ve anahtarları yalnızca sahipler kaydedebilir veya iptal edebilir.
2
Paketi yükleyin
Dosya yüklenirken tarayıcınız SHA-256 değerini hesaplar; Hermetry hem bunu hem imzayı kontrol eder. Paket başlığı cihazın modeliyle eşleşmelidir.
3
Atayın
Bir cihaz profiline, sabit bir cihaz grubuna veya tek bir cihaza. En spesifik atama geçerlidir.
4
Dağıtın
Cihaz sayısına veya yüzdeye göre dalgalar halinde, başarı ve hata kapılarıyla ve dalgalar arasında bekleme süresiyle. Dilediğiniz zaman duraklatabilir, sürdürebilir veya iptal edebilirsiniz.
Varsayılan plan
Varsayılan dağıtım
Kendi dalgalarınızı ayarlamadığınızda kullanılır. Bir dağıtımda her biri kendi boyutu, bekleme süresi ve kapılarıyla en fazla 20 dalga olabilir.
| Dalga | Cihazlar | Sonraki dalgadan önce bekleme | Kapı |
|---|---|---|---|
| 1 | Cihazların %1’i, en az 1 ve en fazla 10, önce çevrimiçi cihazlar | 30 dakika | En az %90 güncellendi, en fazla %5 başarısız |
| 2 | 10 % | 30 dakika | En az %90 güncellendi, en fazla %5 başarısız |
| 3 | 50 % | 15 dakika | En az %90 güncellendi, en fazla %5 başarısız |
| 4 | Kalanlar | — | En az %90 güncellendi, en fazla %5 başarısız |
Güvenlik önlemleri
Hatalı bir imajın erken durması için tasarlandı
İmzalar iki kez kontrol edilir
Hermetry yükleme sırasında imzayı doğrular; cihaz ise sağlama toplamı eşleşse bile imzası doğrulanmayan bir imajı reddetmelidir.
Uyumluluk kontrolleri
Bir paket profilini, donanım modellerini ve güncelleneceği en eski sürümü belirtebilir. Uymayan bir cihaz nedeniyle birlikte atlanır.
Asla açık metin olarak değil
Firmware hiçbir zaman düz MQTT üzerinden sunulmaz. İndirme adresi 15 dakika geçerlidir, her teslimat için yeniden üretilir ve kesintiye uğrayan bir indirme kaldığı yerden devam eder.
Ölçümlü bağlantılar beklenir
Varsayılan olarak, mobil veri üzerindeki bir cihaz, ölçümlü indirmelere izin verene kadar bekler. Bir cihaz ayrıca kurulumdan önce kendi yerel onayını da bekleyebilir.
Geri almalar algılandı
Bir cihaz eski sürümüne geri önyüklenirse, güncellemesi güncellendi olarak değil, geri alındı olarak sonlanır ve tekrar deneyebilirsiniz.
Bir paketi iptal edin
Bir paketi veya onu doğrulayan imzalama anahtarını iptal etmek, bunları kullanan dağıtımları sonlandırır. Kullanımdan kaldırılmış bir paket yeni atama almaz.
Cihaz tarafı
Cihazın aldığı ve bildirdiği şeyler
Lisanslı cihazlar bunu hazır olarak yapar. Kendi firmware’iniz için OTA dokümanları her adımı açıklar.
Hermetry, tek bir mesajda fw_title, fw_version, fw_size, fw_checksum, fw_checksum_algorithm, fw_url ve fw_sig değerlerini paylaşılan öznitelikler olarak yazar. Bir ataması kaldırıldığında bunlar silinir.
Cihaz, fw_state (DOWNLOADING, DOWNLOADED, VERIFIED, UPDATING, UPDATED veya FAILED) değerini, indirme sırasında fw_progress değerini ve her bağlantıdan sonra current_fw_title ile current_fw_version değerlerini bildirir. Hedef dışında bir sürüme önyüklenen cihaz, boot_failed ile birlikte FAILED bildirir.
Varsayılanlar ve sınırlar
- Varsayılan olarak 64 MiB’a kadar paketler
- İndirme zaman aşımı 60 dakika, kurulum zaman aşımı 20 dakika, cihaz başına 3 deneme; hepsi OTA ayarlarından değiştirilebilir
- Her cihazın güncelleme zaman çizelgesi 180 gün saklanır
- Webhook’lar: her cihaz için
ota.update.*, tamamlanan dalgalar, duraklatmalar, sürdürmeler, tamamlanma ve iptal içinota.rollout.*
Önceki bir sürüme dönmek
Tüm filoyu tek hamlede geri alan bir düğme yoktur. Bunun yerine önceki paketi atayın: diğer her dağıtım gibi, aynı dalgalar ve kapılarla gönderilir. Bir cihazın eski bir sürümü kabul edip etmeyeceği, firmware’i tarafından belirlenir.
SSS
Firmware güncellemeleriyle ilgili sorular
Hermetry firmware’imizi imzalıyor mu?
Hayır. İmzalama kendi sürüm hattınızda yapılır. Hermetry yalnızca genel anahtarları saklar ve hiçbir zaman özel bir imzalama anahtarı tutmaz.
İndirme sırasında bağlantı koparsa ne olur?
Cihaz yeni bir indirme adresi ister ve HTTP range isteğiyle kaldığı yerden devam eder.
Cihazları mobil veri üzerinden güncelleyebilir miyiz?
Evet, OTA ayarlarında ölçümlü bağlantılarda indirmelere izin verdiğinizde. O zamana kadar ölçümlü bağlantıdaki bir cihaz bekler.
Bir güncellemeyi kim başlatabilir?
Varsayılan olarak yöneticiler paketleri yükler, atar, OTA ayarlarını değiştirir ve başarısız cihazları yeniden dener; sahipler imzalama anahtarlarını yönetir; kullanıcılar paketleri ve güncelleme durumlarını görüntüleyebilir.
Başka sistemler bir dağıtımı takip edebilir mi?
Evet. Webhook’lar her cihazın güncellemesinin başladığını, başarılı olduğunu veya başarısız olduğunu; her dağıtımın dalgalarını, duraklatmalarını ve sonunu bildirir. Bkz. webhook’lar.
Sahada bir filoyu mu güncelliyorsunuz?
Cihazlarınızı ve bunların nasıl bağlandığını bize anlatın. İlk dağıtım için dalgaları ve kapıları planlamanıza yardımcı oluruz.

