なぜワイヤレスアップデートが重要なのか 3mm QFNを脱はんだ付けしてタイポを修正するのは誰にとっても楽しいことではありません。オーバー・ザ・エア(OTA)機能を搭載したBluetoothモジュールは、無線機自体をプログラミングケーブルに変え、ジャンパー線一本も使わずにファームウェアをスマートフォンからフラッシュメモリに転送します。その結果、ダウンタイムが短縮され、顧客満足度が向上し、工場を出荷した後も長期間進化し続ける製品になります。 OTAトランザクションの構造 典型的なアップデートは、BLE経由で署名付きファームウェアファイルをストリーミングするモバイルアプリから始まります。モジュールは20バイトのデータチャンクごとに確認応答を返し、内部のDFUバッファに書き込み、最後にSHA-256ハッシュを検証します。署名が正しければ、ブートローダーが古いイメージを新しいイメージに置き換えて再起動します。合計時間:256kBのイメージで2分未満です。 ブートローダーのバレエ:デュアルバンクとスワップのトリック 最新のモジュールはフラッシュメモリを2つのバンクに分割します。バンクAはアプリケーションを実行し、バンクBはアップデートを受信します。新しいイメージが検証されると、ブートローダーは単一のレジスタを切り替えて再起動します。スワップ中に電源が切断された場合、CRCチェックに失敗し、ブートローダーはバンクAにロールバックします—デバイスが故障することも、怒った顧客からのメールもありません。 BLE速度の現実:パケットあたり20バイト BLE 5.2 Long Rangeはパケットあたり最大251バイトを達成しますが、ほとんどのブートローダーはデフォルトのMTU内に収めるため20バイトに留まっています。これは256kBのイメージで12,800パケットを意味します。1Mbps PHYと100msの接続間隔では、転送に21分かかります—一度限りのアップデートでは許容できますが、毎晩のパッチ適用では苦痛です。そのためエンジニアはLZ4やデルタディフスクリプトでバイナリを圧縮し、サイズを40%削減して時間を12分に短縮します。 セキュリティ:署名、封印、配信 楕円曲線ECDSA署名は、バイトが書き込まれる前にファームウェアを検証します。256ビットの公開鍵は生産時にチップに融合され、対応する秘密鍵は工場のハードウェアセキュリティモジュールに保管されます。ハッカーがイメージを改ざんした場合、署名チェックに失敗し、ブートローダーはスワップを拒否します—JTAGエクスプロイトは不要です。 電力予算の現実:待機中40µA nRF52840モジュールはアイドルDFUモード中に40µAを消費します—電源駆動のゲートウェイでは無視できますが、コイン電池駆動のトラッカーでは顕著です。そのためエンジニアは、太陽光発電ストリップがバッテリを充電できる昼間にアップデートをスケジュールするか、デバイスが充電器に置かれるまで延期します。OTAは製品の宣伝された5年間の寿命を決して短縮してはなりません。 実世界の事例1:フィットネスバンドのリフィット 深センの工場が5万台のフィットネスバンドをファームウェアv1.0で出荷しました。6か月後、バグが心拍数データを歪めました。ベンダーはコンパニオンアプリ経由でv1.1をプッシュし、ユーザーは次のワークアウト中にアップデートを受け入れました。デバイスの返品も、小売在庫のリコールもなく、ブランドの評判は48時間で救われました。 実世界の事例2:スマートロックのリトロフィット ヨーロッパのスマートロックがv2.0暗号で出荷されました。TLS 1.3が義務付けられたとき、ベンダーはBLE経由でv3.0をストリーミングしました。ロックは90秒でデルタをダウンロードし、ECDSA署名を検証して再起動します。住宅所有者は最新の暗号を使用するロックで目覚めます—鍵屋も、ドライバーも、問題もありません。 未来への道:デルタアップデートとメッシュフラッディング Bluetooth 6.0はデルタディフ圧縮とメッシュフラッディングを導入し、数千台のデバイスが同時にアップデートしても電波を渋滞させることなく更新できるようにします。かつて20分かかった同じ無線機が、10kBのパッチを30秒未満でプッシュし、「ファームウェア」をスマートフォンと同じ速さで進化する生きた機能に変えます。
Post navigation
Previous Post
Bluetooth モジュール: ラジオ内のシリアル ハイウェイNext Post
様々なプロジェクトにおけるBluetoothモジュールの選定 
