Silicon Labs Bluetooth:Bluetooth Smart SDK 2.7.xのサンプルコードをダウンロードしましたが正常動作しません。対処方法を教えてください(BGM1xx, EFR32BG1)
EFx32
SDK 2.7.0以降のサンプルコードにはgecko bootloaderが含まれていませんので、別途ブートローダーをダウンロードして頂く必要があります。
SDK 2.6.x以前と2.7.0以降とで、サンプルプロジェクトに含まれているbootloaderに違いがありますので、まずはその差分を理解する必要があります。
SDK 2.0.0以降のサンプルコードに含まれているブートローダーは以下の通りです。
Bluetooth Smart SDK 2.0.0 ~ 2.6.x
- BGM1xx, EFR32BG1 → legacy OTA bootloaderが含まれています
- EFR32xG12, EFR32xG13 → プロジェクトにbootloaderは含まれません
Bluetooth Smart SDK 2.7.0 ~
- BGM1xx, EFR32BG1, EFR32xG12, EFR32xG13→ プロジェクトにbootloaderは含まれません
SDK 2.7.0 以降のサンプルコードは、最新のgeckobootloaderを前提としており、legacy OTA bootloader上では期待通りに動作しません。そのため、SDK 2.7.0以降でご使用の場合には、最初にブートローダーをダウンロードして頂く必要があります。
gecko bootloaderをダウンロードする方法は幾つかあります。
- GeckoBootloader projectを作ってビルドし、Gecko bootloaderのバイナリを生成する。そしてそのバイナリをデバイスにダウンロードする。(Firstmethod)
- GeckoBootloader projectを作ってビルドし、Gecko bootloaderのバイナリを生成する。そしてそのバイナリとユーザコードのバイナリを結合し、それをダウンロードする。(Second method, Third method)
- SDK 2.7以降に付属したデモアプリ(サンプルコードではなく)にはGecko bootloaderが含まれているので、それを一度ダウンロードする。
デモアプリのダウンロードが、もっとも簡単で、お勧めです。
詳細な手順がSilicon Labsのコミュニティサイトにありますので、こちらを参照ください。