Silicon Labs Bluetooth:BT121のアップデート方法について教えてください
BT121には、有線でのアップデート方法が3種用意されています。
ここでは概要についてご紹介します。詳細な手順については、Silicon Labsのコミュニティサイトでご確認ください。
- Method 1 -BGAPI-based DFU over UART
BT121のファームウェア“iWRAP”には、DFU(デバイス・ファームウェア・アップグレード)用のAPIコマンドが用意されています。このAPIコマンドと、UARTとを使用してアップデートを行うことができます。なお、書き換え可能なのはファームウェアのみで、Bootloaderの書き換えは行えません。
BGScriptを使用してファームウェアを設計している場合には、何かしらをトリガにDFUモードに移行するような仕組みの実装が必要になります。SDKの \example\bgdemo にあるサンプルコード(bgdemo.bgs)にDFU機能が実装されていますので、こちらが参考になるかと思います。
- Method 2 -ST-based DFU over UART
UARTとBOOT0ピンを使い、ファームウェアだけでなくBootloaderも丸ごと書き換えてしまう方法です。APIコマンドで簡単に書き換えが行えるMethod 1と違い、書き換えるためのシーケンスの実装が必要になります。サンプルコードは用意しております。
製造工程で書き換えを行う際には、Bootloaderの書き換えが可能なMethod 2を採用するお客様が多いです。
- Method 3 -Re-programing over the ARM Serial Wire Debug interface
UARTではなく、ARMのデバッグ・インタフェースを使用して書き換える方法です。