BMD-300 BLEモジュール の開発環境を構築して、"blinky"のチェック, 「Arduino IDE」の機能も連携させて "temperature", "pwm_driver" をチェック
BMD-300 技適認定BLEモジュール の開発環境を準備する手順は以下のとおり。ちなみに、RIGADO社 BMD-300 は、NORDIC社 評価ボード nRF52832-DK (10040) と機能互換性があり、NORDIC社で公開しているサンプルプログラム nRF5_SDK_12.2.0_f012efa は、問題なくそのまま動作することを確認できました。
【ご注意】※この記事は、2017-03-21 に大幅変更しました。ご了承ください。
[BMD-300-EVAL の外観: USBケーブル、NFCアンテナ、小冊子が付属]
[ BMD-300 パッケージの外観、(今回は2個購入) ]
環境構築と動作手順のアジェンダは以下のとおり。
[アジェンダ]
1. Keil MDK をダウンロード、インストール
2. NordicSemiconductor.nRF_DeviceFamilyPack.8.11.1 をダウンロード、インストール
3. NORDIC サンプルプログラムセット nRF5_SDK_12.2.0_f012efa.zip をダウンロード
4. SEGGER JLink_Windows_V614a をダウンロード、インストール
5. NORDIC nrfgostudio_win-64_1.21.2_installer をダウンロード、インストール
6. 手順 3.でダウンロードした NORDIC サンプルプログラムセットを作業用フォルダに展開して、コンパイル・ビルド、フラッシュ書き込みの準備
7. BMD-300-EVAL を USB接続し、 5.でインストールした NORDIC "nRFgo Studio" を起動して、 BMD-300 モジュール固有の「SEGGER シリアル番号」が正常に読み出せること、を確認
8. NORDIC "nRFgo Studio" にて、サンプルプログラムセット中に同梱されている ロードモジュール "blinky_pca10040_s132.HEX" を仮書き込みして、とりあえず Blinky が正常に動くことをチェック
9. Keil MDK で "blinky_pca10040_s132" をコンパイル・ビルドして、ロードモジュールをターゲット BMD-300-EVAL の nRF52832 フラッシュへ書き込み、正常動作することをチェック
10. 「Arduino IDE」ツールの機能も連携させて、サンプルプログラムの代表例 "temperature" (nRF52832ボディ温度計の計測値のシリアル通信)と、 "pwm_driver"(押しボタンスイッチで5通りのPWMモードを変化させてLEDをソフトデューティ点滅)、 同時に仮想USBシリアル通信の動作チェックも行う
詳細手順は以下の通り。
[手順詳細]
手順 1. ~ 6.は、各種データの入手、インストール作業のため詳細は省略します。
7. BMD-300-EVAL を USB接続し、 5.でインストールした NORDIC "nRFgo Studio" を起動して、BMD-300 モジュール固有の「SEGGER シリアル番号」が正常に読み出せること、を確認
( 下図、私が動作させている BMD-300-EVAL 固有の「SEGGER シリアル番号」は、塗りつぶしてあります)
[ BMD-300-EVALをUSB接続して、NORDIC "nRFgo Studio" を起動した状態 ]
参考URL :
8. 上図で示した NORDIC "nRFgo Studio" で "Programming of Application on nRF5x device" の "File to program" -- "Browse " にて、NORDIC サンプルプログラムセットを展開した作業用フォルダから、"examples" -- "peripheral" -- "blinky" -- "hex" --"blinky_pca10040_s132.HEX" を選んでセット。
次に、"Erace all" → "Program" でフラッシュ書き込みが正常に終了すれば、Blinky がブート起動する。
9. NORDIC サンプルプログラムセットを展開した作業用フォルダから、"examples" -- "peripheral" -- "blinky" -- "pca10040" -- "blank" -- "arm5_no_packs" とフォルダを進み、 "blinky_pca10040_s132.uvprojx " のプロジェクトを選んで keil uvision5 を起動する。
[コンパイル・ビルドを実行]
[フラッシュ書き込みを実行]
10. サンプルプログラム2種類の動作チェック
(10.1) "temperature" (nRF52832ボディ温度計の計測値のシリアル通信) のフラッシュ書き込みと実行
前述 9. と同様にサンプルプログラムの作業フォルダを開いて、
"examples" -- "peripheral" -- "temperature" -- "pca10040" -- "blank" -- "arm5_no_packs" とフォルダを進み、 "temperature_pca10040.uvprojx " のプロジェクトを選んで keil uvision5 を起動する。コンパイル・ビルド実行して、フラッシュ書き込みを実行する。
・Arduino を起動して、ツール -- シリアルポート(仮想USBポート選択)
・ツール -- シリアルモニタ -- 下部のシリアル通信速度を "115200 bps" 選択
すると、"APP:INFO:Actual temperature: 15" (ボディ温度は 15℃) の温度表示がループする。
なお、Arduino のインストールや詳細設定方法などについては、解説記事が別ページにたくさんありますので、ここでは省略します。ポイントは仮想USBシリアル通信を利用することと、ボーレートを 115200bps にすることです。
[フラッシュ書き込みを実行]
[Arduino で "temperature" サンプルのシリアル通信をチェック]
(10.2) "pwm_driver"(押しボタンスイッチで5通りのPWMモードを変化させてLEDをソフトデューティ点滅)のフラッシュ書き込みと実行
同様にサンプルプログラムの作業フォルダを開いて、
"examples" -- "peripheral" -- "pwm_driver" -- "pca10040" -- "blank" -- "arm5_no_packs" とフォルダを進み、 "pwm_driver_pca10040.uvprojx " のプロジェクトを選んで keil uvision5 を起動する。コンパイル・ビルド実行して、フラッシュ書き込みを実行する。
[実験中の RIGADO BMD-300-EVALの様子, BMD-300x2個 ]
水色流行? 水色の軽トラがあるのを知ってオドロキです。
水色の軽トラを見かけました。ほぼ100%白色と思っていた軽トラに、水色のがあるのを知ってオドロキです。
早春の畑、ちぢみホウレン草収穫、スナップエンドウの様子
早春の畑に出て、鍬で草退治などをした後、ちぢみホウレン草を収穫。それと、先日ネットと竹枝などで誘引を設置したスナップエンドウの様子を見ました。ちぢみホウレン草とスナップエンドウ両方とも秋に種蒔きした野菜です。
ちぢみホウレン草は何度か時期をずらして種まきして冬越ししたもので、少し暖かくなってきたせいか、すでにとう立ちの準備に入っている株もあります。さっそくザルでひとつ収穫しました。アカザ科の特徴である根もとの赤色が鮮やかなちぢみホウレン草は、甘い味を含めて味の密度が濃いのが特徴です。
写真を撮っていたら、偶然オオイヌノフグリの花の近くにナナホシテントウムシが日向ぼっこしているようでした。
枯れ葉を除き水洗いしたちぢみホウレン草。アカザ科の特徴で、根もとが鮮やかな赤色。露地で冬越しのため、葉っぱはみごとにちぢれて、味が濃いことを表しています。
ネットと竹枝などの誘引を支えにして、上へ上へ伸びてゆく。
RIGADO社 BMD-300-A-R は、国内「技適」認定品
RIGADO社 BMD-300-A-R は、NORDIC社からリリースされている nRF52832 (高性能プロセッサ ARM Cortex-M4 プロセッサを内蔵した BLE(Bluetooth Low Enegy)通信デバイス) を内蔵した BLE 通信モジュールです。
BMD-300 は、後述する 総務省の「技適」型番に記載されているとおり、国内の適合認証を得ているので、国内でBLE 2.4GHz帯電波を飛ばしても大丈夫なモジュールです。
超小型かつ省電力動作が可能なプロセッサ内蔵 BLEモジュールである BMD-300 は、小型IoT機器やウェアラブルIoT機器など多方面のアプリケーションへの応用が期待されます。
ちなみに現時点で、BMD-300シリーズ以外の nRF52832-EVAL ボード(NORDIC社オリジナル開発評価ボード)や RedBear社製品など、「技適」未取得の基板やモジュールから電波を出すことは、国内法規に触れますので禁止です。
もし国内で、技適非認定の基板やモジュールから短時間でも電波を出すテストなどを行う際は、電波暗室などの環境が必要となりますので、ご注意ください。また、アプリケーションのファームウェア開発段階での電波の誤送出にも注意が必要です。
[RIGADO社 BMD-300-A-R] Webページ:
https://www.rigado.com/products/modules/bmd-300/
ご参考まで:
[RIGADO BMD-300 外形図]
超小型かつ省電力動作が可能なため、小型IoT機器やウェアラブルIoT機器など多方面のアプリケーションへの応用が期待される。
[ブレークアウト基板への実装例]
DIP接続可能なブレークアウトボードに実装された 「BMD-300-Breakout Board」 については、こちら(準備中)を、ご参照ください。
また、以下を利用した ファームウェア開発環境の導入手順は、
・BMD-300-EVAL 評価ボード
・Keil uVision5 組み込みファーム開発環境、コンパイラ
・NORDIC nRF5_SDK_12.2.0_f012efa ソフトウェアパッケージ
・SEGGER - Embedded Studio 開発ツール
・nRFgo Studio 開発ツール
こちらを参照してください。
ご参考まで、RIGADO社製の「技術基準適合証明等を受けた機器」(いわゆる技適証明)
RIGADO社 BMD-300「技術基準適合証明等を受けた機器」(いわゆる技適証明) については、以下の総務省のホームページを参照ください。
nRF52832 vs nRF52840 比較 , Bluetooth5 対応
nRF52832 vs nRF52840 の Bluetooth5 対応状況については NORDIC社 のページに詳しく記載されているが、概要としては、どちらも Bluetooth5 対応可能と考えられる。
ただし、nRF52840 では パッケージが AQFN73ピンに増加(nRF52832:QFN48ピン)、フラッシュメモリが1Mに倍増されている点と、Bluetooth5 の「Long Range」対応や IEEE 802.15.4 CSMA-CA Protocol ( いわゆるZigBee 系ビーコン通信仕様) サポート追加などいくつかのバージョンアップが見られる。
ただ現時点では、Bluetooth4.2(4.x) 仕様対応機器の普及状況 (身近にあるパソコン、プラットフォーム、各種通信機器、スマートフォン、iOS系端末の動向、アンドロイド系端末の動向などを含む) や、「技適」認定品の供給体制があるデバイスの活用を優先させるのが得策とみられる。
那須おろしが吹くこの地域でも、やっと梅が満開となりました。
那須おろしが吹くこの地域でも、やっと梅が満開となりました。
たんぼの土手で、やっと満開になった梅の花。
我が家のソーラーシェアリング畑で、カキ菜(通称:アブラ菜)の手入れをしました。
真冬の氷点下7度を耐えて、早春のこの季節に今年も忘れずに、しっかりと育っています。私の大好きな、早春野菜です。もう少ししたらどんどん摘んで、まるでポパイのように、もりもり食べます。(ポパイはホウレン草かな?)