無線でファームウェアを更新する準備ができているクラウドサービスまたはフレームワークはありますか?


9

リソース制約のあるデバイス(OSファームウェアのない8ビットMCU)のプロトタイプがあり、Webサーバーと対話しています。Webからデバイスファームウェアを更新するためのソリューション、フレームワーク、またはクラウドサービスはあるのでしょうか。私の研究によると、Microsoft IoT Hubがありますが、そのようなリソースに制約のあるデバイスには適していないと思います。私が見つけたもう1つの解決策があります。mbedクラウドポータルですが、それがどのように機能するかわかりません。誰かがアドバイスを介して私を助けることができますか、おそらく安全で堅牢な方法で組み込みデバイス用の無線によるファームウェアのアップグレードを実装するためのいくつかのベストプラクティスがありますか?


現在、少なくともそのようなサービスはありません。一般に1つを実装するのは非常に退屈な作業であり、特定のデバイスタイプを対象とするサービスを実装できます。
bravokeyl 2017

mender.ioがあり、これはほぼ必要なものです。しかし、私は、「ハイエンド」の組み込みデバイスと8ビットノードをターゲットにしていると思います。
2017

回答:


4

未知のファームウェアの「すぐに使える」システムは知らないので、この部分だけに答えます。

安全で堅牢な方法で組み込みデバイスの無線によるファームウェアアップグレードを実装するためのいくつかのベストプラクティスはありますか?

練習の面で、私がすることは次のとおりです:

1)最小限のブートローダーを使用します。これは、次の制約を備えたファームウェアのロードにのみ責任がある、可能な限り馬鹿なものです。

  • 前回のブートの成功/失敗を記録する機能(失敗した場合に、作業バージョンにロールバックするため)
  • 壊滅的な障害が発生した場合に新しいファームウェアを受け入れる何らかの緊急プロセス(オプション、「ブリック」デバイスが許可されている場合は回避できます)

2)ストレージを適切なサイズの2つの「ブートバンク」に設定して、将来の進化とファームウェアの成長に対応します。

3)書き込み前にファームウェアイメージが正しいことを確認するためにダウンロード後にファームウェアイメージをチェックサムします。書き込み後に宛先のバンクをチェックサムして、どこかで欠落しているビットで起動に失敗しないことを確認します。

見落とされがちなポイントは、通常、書き込みの前後にダウンロードされたイメージのチェックサムであり、その結果、デバイスに書き込まれたシステムが破損します。通常、2つのバンクを使用し、交互に使用すると、更新プロセスが簡単になります。


5

mbedクラウドは完全なファームウェア更新機能を提供しますが、OSなしで実行している場合、プラットフォームへの移植に問題があると思います。今日はソースが公開されているとは思わないので、参照用に使用することもできません。また、現時点でアクセス権を取得するための基準がわからない。

必要な機能について考える必要があります。これは、段階的なファームウェアのロールアウトを実行できる必要がある大規模な導入ですか、ファームウェアへの署名を気にしますか、それとも物理的にアクセスできる人なら誰でもプラットフォームを完全に利用できますか?JTAGなしでブリックされたデバイスを回復できることをどのくらい気にしますか?

現実的には、OTA更新などの機能はおそらく、開発コストを考慮した上で、OSとデバイスの選択を促進するものです。


5

Over The Airの略であるOTAをチェックしてください。Arduinoにはその特性があります

Arduino IDE、Webブラウザ、またはHTTPサーバーで更新できます。

Arduino IDEオプションは、主にソフトウェア開発フェーズを対象としています。他の2つのオプションは、Webブラウザを使用して手動で、またはhttpサーバーを使用して自動的にアプリケーションの更新をモジュールに提供するために、配備後にさらに役立ちます。


そのライブラリとArduino全体の最も不愉快な点の1つは、セキュリティの欠如です。このソリューションはDIYまたは学校のプロジェクトに適していますが、商用デバイスには適していません。特に私が気に入らないのは、認証がないことです。これは、正しいMD5ダイジェストを使用して、ファームウェアを悪意のあるものに置き換えることから保護されていません。
Vadimchik 2017


3

私が発見したもう1つの興味深いプラットフォームは、DeviceDriveです。これがどのように機能するかを説明するビデオです。彼らのOTAシステムはかなり柔軟なようです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.