こんにちは。

マクニカでインテル® FPGA 製品の技術サポートをしている インテル・F・ハナコ です。

 

Mpression Odyssey MAX®10 FPGA Eval Kit の BLE & Sensor ボード(上の基板)には EFM32 と BLE が搭載されています。

これらの Firmware は、不定期に更新されています。先日(2016年2月中旬)、2.0 がリリースされました。

そこで、Mpression Odyssey のファームウェアをアップデートする方法 をご紹介します。
なお、本内容は「Odyssey MAX 10 FPGA and BLE Sensor Kit User Guide」の 5. Firmware Updates を参考に構成しています。

また私は普段インテル® の FPGA をサポートをしているので Silicon Labs(シリコン・ラボ)と Broadcom(ブロードコム)の製品に触れるのは初めてです。至らない点は目をつむってください (笑)

今回は、"インテル FPGA 担当のハナコがやってみた!BLE のファームウェアのアップデート" をご紹介します。

EFM32 のファームウェアをアップデートする方法は、こちらをご覧ください。

今回のアップデート作業は2つ!

  • BLE のファームウェア・アップデート
  • そのファームウェア・バージョンに対応した Bluetooth の MAC アドレス更新


いずれの作業も、ブロードコムの Bluetooth SMART 開発環境になじみのない私は、ファームウェア・アップデート専用のバーチャル COM ポート・スクリプトを使って作業を行います。
ではアップデート作業を行いましょう。

BLE のファームウェア・アップデート

1. 必要なファイルを入手

以下のファームウェアと関連ファイルを Mpression Odyssey の WEB サイト から入手します。
 ・ BLE Firmware Factory Image(Odyssey の BLE 用ファームウェア)
 ・ BLE Firmware Factory Configuration Settings(Bluetooth MAC アドレス更新のための設定ファイル)
 ・ BLE Firmware Update Utility Script(専用のスクリプト・ファイル)

なお、スクリプト・ファイル(*.bat)の保存パスには全角およびスペースは使用できません。スクリプトが正常に動作しなくなります。注意してくださいね。

2. ドライバをインストール

Odyssey の BLE & Sensor ボードに初めて USB シリアル通信をする人は、あらかじめ シリコン・ラボの USB Virtual シリアル・ポート・ドライバ (ダウンロードページの Utilities セクションにあります)をインストールしておいてください。

3. WICID Smart SDK をインストール

ブロードコムの開発環境 WICID Smart SDK を入手し、インストールします。
GUI を立ち上げてどうこうするわけではないのですが、ファームウェアのアップデート専用スクリプト(BLE_Firmware_Update.bat)を実行するには必要なんです。
Cypress の WEB サイト にアカウント登録をして WICED-Smart-SDK-x.x.x-IDE-Installer をダウンロードします。インストーラーを起動してインストールしてください。(当たり前の話ですが、インストールのパスには全角やスペースは NG ですよ。)

4. Odyssey ボードを分離し、ジャンパピンを設置

BLE & Sensor ボードと MAX® 10ボードに分離します。

Article header ble max10  3
Article header ble max10  3

Odyssey に付属しているバッテリーボードの4ピン・ヘッダー(J4)のうち、中2ピン(2と3)をジャンパピンで接続します

5. BLE & Sensor ボードにバッテリーボードを装着し、パソコンに接続

BLE & Sensor ボードに電源が供給されていないことを確認して、BLE & Sensor ボードにバッテリーボードを装着します。(バッテリーボードのリテーナにCR2032 コイン型電池は不要です。)
続いて、BLE & Sensor ボード(with バッテリーボード)とパソコンを USB-microUSB ケーブルで接続します。

6. ファームウェアのアップデート・ユーティリティを起動

BLE_Firmware_Update.bat をダブルクリックで実行すると、コマンド・プロンプト・ウィンドウが起動します。
環境変数名 SDK_INSTALL の変数値が設定されていないパソコンの場合は、WICED Smart SDK のインストール・フォルダを指定するようにメッセージが表示され、”フォルダーの参照” ウィンドウがポップアップされます。”WICID-Smart-SDK” フォルダが下位に存在するフォルダ(例では “WICID-Smart-SDK-2.2.2”)を指定してください。このステップを行っておけば自動的に SDK_INSTALL の環境変数設定が作成されます。次回以降のスクリプト実行ではこのフローはスキップされ、スムーズに作業に進むことができます。

Article header wicid 02  1

BLE & Sensor ボードの接続が確認されます。

Article header wicid 03 1  1
Article header wicid 03 2  1

下記メッセージが表示され BLE & Sensor ボードが検出されないときは、デバイスマネージャーにおいて “ポート(COMとLTP)に “Silicon Labs CDC Serial port” が存在するかを確認してください。これが検出されていないと、バーチャル COM ポート通信が確立できず、ファームウェアのアップデートができません。

####################################################
# ERROR - No Odyssey detected
# Verify kit is connected and virtual COM port established
####################################################

作業2で行った シリコン・ラボの USB Virtual シリアル・ポート・ドライバ がインストールされているかを確認してください。

7. ファームウェア・アップデートファイルのダウンロード

選択項目が表示されます。
(a)Update BLE device firmware (HEX file required) を選択するため、キーボードの [a] をタイプします。その後、表示されるウィンドウからファームウェア・アップデートファイル(*.hex)を選択します。

Article header wicid 04  1

ダウンロードが実行され、数秒後に “Download complete” のメッセージが表示されます。

Article header wicid 07  1
Article header board reset  5

BLE & Sensor ボード上の BLE リセット・ボタン(S1)を押して、キーボードの何かのキーを押して、コマンド・プロンプト・ウィンドウを閉じてください。

MAC アドレスを更新

8. コンフィギュレーション設定ファイルを選択

BLE_Firmware_Update.bat をダブルクリックで実行し、(b)Assign new BT MAC address to existing Odyssey kit (CGS file required) を選択するため、キーボードの [b] をタイプします。その後、表示されるウィンドウからコンフィギュレーション設定ファイル(*.cgs)を選択します。

Article header wicid b 01 1  1

9. 新しい MAC アドレスを入力

新しい12桁の MAC アドレス(16進数)を入力するように要求されます。英数字の間にスペースやコロンなどは使用せずに、12桁の英数字を入力してください。(例: ABCDEF123456)

Article header wicid b 04  1

ダウンロードが実行され、数秒後に “Download complete” のメッセージが表示されます。
キーボードの何かのキーを押して、コマンド・プロンプト・ウィンドウを閉じてください。

Article header wicid b 05  1

アップデート作業完了

10. ボードの取り外し

USB ケーブルを外してから、バッテリーボードを外してください。バッテリーボードの4ピン・ヘッダー(J4)のジャンパピンを元に戻して(外側のピン3と4を接続)おきましょう。


これで、BLE のファームウェア・アップデートは完了です。
ね、私でもできちゃいました♪

Article header board reset  6

BLE & Sensor ボードをファームウェア・アップデート後はじめて使用する際は、BLE & Sensor ボード上の BLE リセット・ボタン(S1)を押してからご利用ください。

また、MAX® 10 ボードと接続後に USB ケーブルでパソコンと接続し、Tera Term を起動して EFM 32 に接続後に MAX® 10 ボード上の「S3」ボタンを押すと、ファームウェアのバージョンが確認できます。

Article header wicid 08  1


なお、Odyssey は EFM32 と BLE 両方のファーム・バージョンを統一して使用することを推奨しています。
Mpression Odyssey の EFM32 のファームをアップデートする方法はこちらをご覧ください。

 

おすすめ記事/資料はこちら

Odyssey MAX 10 FPGA Eval Kit とは

Odysseyティアダウン1

Odysseyティアダウン2

Odyssey EFM32 の Firmware をアップデートしてみよう

みんなのラズパイコンテスト2016にてMpression Odyssey使用作品が準グランプリを受賞!

[概要編] MAX 10 評価キット Odyssey の FPGA に microUSB ポート経由でコンフィギュレーション・データを転送してLチカ!
[操作編] MAX 10 評価キット Odyssey の FPGA に microUSB ポート経由でコンフィギュレーション・データを転送してLチカ!