xDOT DK 標準環境でカスタムファームウェアを動作させる。
ここでは、xDOT DK を使って、カスタムファームを作り、作ったファームウェアをxDOTへアップし、動作確認するところまでのメモとなります。尚、xDOTパッケージ単体を自社端末へ組み込んだ場合に於いて、xDOTファームウェアを流し込む環境(作成したファームウェアを流し込む)のヒントとなる部分を DKがハードウェア込みで提供しております事を見逃さないでください。
<アカウント登録(無料)>
mdot.comへ効率良くアクセスするには、mbed.comへの アカウント登録が必要ですので、まずは、アカウント登録を行います。
mdot.comへアクセスする事で、各種のサンプルで自習出来るようになっていますので、時間の許す限り、自習する事が出来ます。
<開発環境概要>
ファームウェアを製作する環境には、
①オンライン開発環境
②オフライン開発環境
の2種類がありますが、オフライン開発環境は、IDE環境を追加でインストールする必要があります。
ここでは、容易にアクセスできるオンライン開発環境で製作する方法に言及します。
<サンプルを使ったカスタムファームウェアの製作>
xDotドライブ上の XDOT.htm ファイルをダブルクリックする事で、mdot.comへアクセスする方法が提供されております。アクセス先は、https://os.mbed.com/platforms/MTS-xDot-L151CC/ となり、WEBドキュメントを確認しながら、製作する事になりますが、いきなり、カスタムファームを作るには、ハードルが高すぎますので、用意されているサンプルを使っての作業となります。
ヒント
オンラインIDEを初めて使う時には、オンラインIDE環境へターゲットデバイスの登録が必要です。
をクリックしてデバイスを登録します。
登録完了のメッセージは次の通りとなります
数あるサンプルの中から、mbed-os バージョン5 最新環境(2018/05/01時点)を使ったファームウェアのサンプルがあります。このサンプルは、xDOT DK 環境が持っている 照度センサー値を読み取り、LoRaWAN通信でConduitAEPへ送信するプログラムのようで、コンパイルしても、オブジェクトが生成されるサンプルとなっています。
- ここへアクセスします。(https://os.mbed.com/users/pferland/code/XDOT-Devicewise)
- 右上にある Import into Compiler をクリックし、オンライン開発環境にサンプルプログラムを取り込みます。
次はプログラムワークスペース領域に取込まれた XDOT-Devicewise です。
main.cppをクリックすると
main.cpp が表示されます。
- main.cpp の 次の3行を編集します。
- 88行目 のチャンネルプランを日本仕様に変更します。
- 88 #define CHANNEL_PLAN CP_US915
から
88 #define CHANNEL_PLAN CP_AS923_JAPAN
プラン名は、後方232行目に記載
- 88 #define CHANNEL_PLAN CP_US915
- 98,99行目 を ConduitAEPに設定済み値を使って設定します。
ConduitAEP -> LoRaNetworkSettings->NetworkID(Name) -> Name の値を xxxxx とします。
ConduitAEP -> NetworkKey(Passphrase) -> Passphrase の値を yyyyy とします。- 98 static std::string config_network_name = "xxxxx";
- 99 static std::string config_network_pass = "yyyyy";
- 98 static std::string config_network_name = "xxxxx";
- 88行目 のチャンネルプランを日本仕様に変更します。
- オンライン開発環境の コンパイルメニューをクリックします。
コンパイルが行われ、ワーニングが表示されるものの、実行バイナリーファイルが作成され、保存場所を聞いてきますので、適切なディレクトリーに保存します。
- 保存したバイナリーファイルを xDOTドライブに ドラッグ&ドロップします。
- このドラッグ&ドロップ操作は、新しいファームウェアをxDOTへ書き込む操作となりますので、書込みが完了するまで、数秒待ちます。
- 転送が終わったことを確認後、xDTO DK に備わっているリセットボタンを押し、リブートさせます。
- 書き込んだファームウェアがブートアップし、動作を始めます。 xDOT DK に備わっている 青LEDが チカチカ点滅し、動作している事が確認できます。
- 内部の動作内容は、デバッグポートが 仮想COMポート(9600bps,8,n,1)経由で接続されていますので、デバッグメッセージを確認する事が出来ます。
- このドラッグ&ドロップ操作は、新しいファームウェアをxDOTへ書き込む操作となりますので、書込みが完了するまで、数秒待ちます。
これで、センサー端末側の環境設定が完了出来たことに事になります。センサー端末側の動作は、変化量が一定以上を超えたらセンサ値を送信するようになっているようです。 定期的送信等のカスタマイズは自由に行う事が出来ますので、これ以上の言及は控えます。
<受信側 ConduitAEP>
- 受信側 ConduitAEP では、Node-red を使って
- "LoRa in"ノード
- ”debug"ノード
を使って、受信している事を確認します。
- "LoRa in"ノード
以上 となります。
Please log in to post comments.