![]() | ![]() | ![]() |
|---|
これは、Wisblockの新しいアプローチです。 I2Cバスとシリアルをスキャンして、Wisblockベースに接続されているWisblockモジュールを検出し、発見されたモジュールのデータを使用してCayenne LPPにロラワンペイロードを作成します。
このファームウェアは、Wisblock API V2を使用しています
このコードは、変更せずに使用できます
| キット/ソリューション | セットアップガイド |
|---|---|
| Wisblockキット1 | セットアップキット1 |
| Wisblockキット2 | セットアップキット2 |
| Wisblock Kit 3 | セットアップキット3 |
| Wisblock Kit 4 | セットアップキット4 |
| RAK開発者キット | セットアップDEVキット2セットアップDEVキット3セットアップDEVキット4 |
| ヘリウムマッパーキット | セットアップヘリウムマッパー |
| ロラワンのWisblock GNSSトラッカー | GNSSトラッカーのセットアップ |
| モジュール | 関数 | キットで使用されます |
|---|---|---|
| RAK4631 | Wisblockコアモジュール | - |
| RAK5005-O | Wisblock Base Board | - |
| Rak19007 | Wisblock Base Board | - |
| Rak19003 | Wisblockミニベースボード | - |
| Rak19001 | Wisblock Fullsize Base Board | - |
| Rak1901 | ウィスブロック温度と湿度センサー | Wisblock Kit 1、Rak Developer Kit 2 |
| Rak1902 | ウィスブロックバロメーター圧力センサー | Wisblock Kit 1、Rak Developer Kit 2 |
| Rak1903 | ウィスブロック周囲光センサー | Wisblock Kit 1、Rak Developer Kit 2 |
| Rak1904 | Wisblock Accelerationセンサー(GNSSソリューションに使用) | Wisblock Kit 2&3、LorawanのWisblockトラッカー、Rak Developer Kit 3 |
| Rak1905 | Wisblock 9 DOFセンサー | - |
| Rak1906 | Wisblock環境センサー | Wisblock Kit 4、Rak Developer Kit 4 |
| Rak1910 | Wisblock GNSSセンサー | Wisblock Kit 2&3、Rak Developer Kit 3 |
| Rak1921 | Wisblock OLEDディスプレイ | (ステータス表示) |
| RAK5814 | Wisblock ACC608暗号化モジュール | - |
| RAK12002 | Wisblock RTCモジュール | - |
| RAK12003 | Wisblock FIRセンサー | - |
| RAK12004 | Wisblock MQ2ガスセンサー | - |
| RAK12008 | Wisblock SCT31 CO2ガスセンサー | - |
| RAK12009 | Wisblock MQ3アルコールガスセンサー | - |
| RAK12010 | ウィスブロック周囲光センサー | - |
| RAK12014 | WisblockレーザーTOFセンサー | - |
| RAK12019 | Wisblock UVライトセンサー | - |
| RAK12025 | Wisblockジャイロスコープセンサー | - |
| RAK12023/RAK12035 | ウィスブロック土壌水分と温度センサー | ウィスブロック土壌センサーソリューション |
| RAK12027 | Wisblock地震センサー | - |
| RAK12032 | ウィスブロックアクセラレーションセンサー | - |
| RAK12034 | Wisblock 9 DOFセンサー | - |
| RAK12037 | Wisblock CO2センサー | - |
| RAK12039 | ウィスブロック粒子物質センサー | - |
| RAK12040 | Wisblock AMG8833温度アレイセンサー | - |
| RAK12047 | Wisblock VOCセンサー | - |
| RAK12052 | Wisblock MLX90640 32x24温度アレイセンサー | - |
| RAK12500 | Wisblock GNSSセンサー | ロラワンのウィスブロックトラッカー |
| RAK14002 | Wisblock 3ボタンタッチパッド | - |
| RAK14003 | Wisblock LEDバーディスプレイ | - |
| RAK14008 | Wisblockジェスチャーセンサー | - |
| RAK15000 | Wisblock Eepromモジュール | - |
| RAK15001 | Wisblock Flashモジュール | - |
| RAK14008 | Wisblockジェスチャーセンサー | - |
| RAK16000 | Wisblock DC電流センサー | - |
MCUとLoraのトランシーバーは、測定サイクルの間にスリープモードになり、電力を節約します。睡眠を可能にするソリューションのために、システム全体の40UAの睡眠電流を測定できます。 GNSSトラッカーやRAK12047 VOCセンサーのようないくつかのソリューションは、より長いウェイク時間以上のウェイクアップを必要とするため、消費電力が高くなります。
さらに、加熱要素を使用しているMQガスセンサーのようなセンサーも、より多くの電力を消費します。
...更新するには、Platformio.iniをチェックしてください。
このプロジェクトは、プラットフォームIOを使用して開発されました。しかし、まだArduino IDEに固執しているユーザーの場合、ソースのArduino IDE互換コピーはArduinoideフォルダーにあります。コードはArduino IDE ATMにコンパイルされていません。
PIOの完全なプロジェクトはPlatformioフォルダーにあります。
Platformioを使用する場合、ライブラリはすべてplatformio.iniにリストされ、プロジェクトがコンパイルされたときに自動的にインストールされます。 Arduino IDEを使用する場合、すべてのライブラリをArduino Library Managerを使用して手動でインストールする必要があります。
ファームウェアをコンパイルし、必要なすべてのモジュールがインストールされた状態でウィスブロックでフラッシュします。
USBを介して接続して、LPWAN資格情報をセットアップします。 rak4631に印刷されたdeveuiを使用し、LPWANサーバーのAppeuiとAppkeyを使用します。まだ自動結合をアクティブにしないでください。気象センサーのレベルはそれほど速く変化していないため、送信周波数を10分ごとに設定するだけで十分かもしれません。送信周波数は数秒で設定されるため、値は10 * 60 ==> 600になります
コマンドの例:
AT+NWM=1
AT+NJM=1
AT+BAND=10
AT+DEVEUI=1000000000000001
AT+APPEUI=AB00AB00AB00AB00
AT+APPKEY=AB00AB00AB00AB00AB00AB00AB00AB00
AT+SENDINT=600
| 指示 | 説明 |
|---|---|
| at+nwm = 1 | ノードをロラワンモードに設定します |
| at+njm = 1 | ネットワーク結合メソッドをOTAAに設定します |
| at+band = 10 | LPWAN地域を設定します(ここでAS923-3)コマンドマニュアルを参照してください |
| at+deveui = 1000000000000001 | デバイスEUIを設定します。Wisblockコアモジュールのラベルに印刷されているDeveuiを使用するのが最善です |
| at+appeui = ab00ab00ab00ab00 | Lorawan Serverで必要なアプリケーションEUIを設定します |
| at+appkey = ab00ab00ab00ab00ab00ab00ab00ab00 | ネットワーク結合中にデータパケットを暗号化するために使用されるアプリケーションキーを設定します |
| at+sendint = 600 | センサーノードがデータパケットを送信する間隔を設定します。 600 == 10 x 60秒== 10分 |
すべてのコマンドのマニュアルはこちらをご覧ください:at-commands.mdAT?
Wisblockツールボックスを使用します
パケットデータは、電子キャット/cayennelppからエンコードする拡張カイエンヌLPPと互換性があります
パケットのコンテンツは、Wisblockベースボードにインストールされているモジュールに依存します。
| データ | チャネル# | チャネルID | 長さ | コメント | 必要なモジュール | デコードされたフィールド名 |
|---|---|---|---|---|---|---|
| バッテリー値 | 1 | 116 | 2バイト | 0.01 V unsigned MSB | RAK4631 | Voltage_1 |
| 湿度 | 2 | 104 | 1バイト | %rh | Rak1901 | humidity_2 |
| 温度 | 3 | 103 | 2バイト | °Cで | Rak1901 | 温度_3 |
| 気圧 | 4 | 115 | 2バイト | HPA(MBAR) | Rak1902 | バロメーター_4 |
| イルミネンス | 5 | 101 | 2バイト | 1署名なし | Rak1903 | Illuminance_5 |
| 湿度2 | 6 | 104 | 1バイト | %rh | Rak1906 | humidity_6 |
| 温度2 | 7 | 103 | 2バイト | °Cで | Rak1906 | 温度_7 |
| 気圧2 | 8 | 115 | 2バイト | HPA(MBAR) | Rak1906 | バロメーター_8 |
| ガス抵抗2 | 9 | 2 | 2バイト | 0.01署名(KOHM) | Rak1906 | analog_9 |
| GNSSスタンド。解決 | 10 | 136 | 9バイト | 3バイトLON/LAT 0.0001°、3バイトALT 0.01メートル | Rak1910、Rak12500 | GPS_10 |
| GNSS強化解像度 | 10 | 137 | 11バイト | 4バイトLON/LAT 0.000001°、3バイトALT 0.01メートル | Rak1910、Rak12500 | GPS_10 |
| 土壌温度 | 11 | 103 | 2バイト | °Cで | RAK12023/RAK12035 | 温度_11 |
| 土壌湿度 | 12 | 104 | 1バイト | %rh | RAK12023/RAK12035 | humidity_12 |
| 土壌湿度生 | 13 | 2 | 2バイト | 0.01署名 | RAK12023/RAK12035 | analog_in_13 |
| 土壌データ有効 | 14 | 102 | 1バイト | ブール | RAK12023/RAK12035 | プレゼンス_14 |
| 照度2 | 15 | 101 | 2バイト | 1署名なし | RAK12010 | Illunance_15 |
| Voc | 16 | 138 | 2バイト | VOCインデックス | RAK12047 | VOC_16 |
| MQ2ガス | 17 | 2 | 2バイト | 0.01署名 | RAK12004 | analog_in_17 |
| MQ2ガス率 | 18 | 120 | 1バイト | 1-100%署名 | RAK12004 | パーセンテージ_18 |
| MG812ガス | 19 | 2 | 2バイト | 0.01署名 | RAK12008 | analog_in_19 |
| MG812ガス率 | 20 | 120 | 1バイト | 1-100%署名 | RAK12008 | パーセンテージ_20 |
| MQ3アルコールガス | 21 | 2 | 2バイト | 0.01署名 | RAK12009 | analog_in_21 |
| MQ3アルコールガスPERC。 | 22 | 120 | 1バイト | 1-100%署名 | RAK12009 | パーセンテージ_22 |
| TOF距離 | 23 | 2 | 2バイト | 0.01署名 | RAK12014 | analog_in_23 |
| 有効なTOFデータ | 24 | 102 | 1バイト | ブール | RAK12014 | プレゼンス_24 |
| ジャイロはトリガーされました | 25 | 134 | 6バイト | 軸ごとに2バイト、0.01°/s | RAK12025 | Gyrometer_25 |
| ジェスチャーが検出されました | 26 | 0 | 1バイト | ジェスチャーのIDを持つ1バイト | RAK14008 | Digital_in_26 |
| LTR390 UVI値 | 27 | 2 | 2バイト | 0.01署名 | RAK12019 | analog_in_27 |
| LTR390 UVS値 | 28 | 101 | 2バイト | 1署名なし | RAK12019 | Illuminance_28 |
| INA219電流 | 29 | 2 | 2バイト | 0.01署名 | RAK16000 | analog_29 |
| INA219電圧 | 30 | 2 | 2バイト | 0.01署名 | RAK16000 | Analog_30 |
| INA219パワー | 31 | 2 | 2バイト | 0.01署名 | RAK16000 | Analog_31 |
| 左のタッチパッド | 32 | 102 | 1バイト | ブール | RAK14002 | プレゼンス_32 |
| タッチパッドミドル | 33 | 102 | 1バイト | ブール | RAK14002 | プレゼンス_33 |
| タッチパッド右 | 34 | 102 | 1バイト | ブール | RAK14002 | プレゼンス_34 |
| SCD30 CO2濃度 | 35 | 125 | 2バイト | 1 ppm unsigned | RAK12037 | 濃度_35 |
| SCD30温度 | 36 | 103 | 2バイト | °Cで | RAK12037 | 温度_36 |
| SCD30湿度 | 37 | 104 | 1バイト | %rh | RAK12037 | humidity_37 |
| MLX90632センサー温度 | 38 | 103 | 2バイト | °Cで | RAK12003 | 温度_38 |
| MLX90632オブジェクト温度 | 39 | 103 | 2バイト | °Cで | RAK12003 | 温度_39 |
| PM 1.0値 | 40 | 103 | 2バイト | ug/m3で | RAK12003 | VOC_40 |
| PM 2.5値 | 41 | 103 | 2バイト | ug/m3で | RAK12003 | VOC_41 |
| PM 10値 | 42 | 103 | 2バイト | ug/m3で | RAK12003 | VOC_42 |
| 地震イベント | 43 | 102 | 1バイト | ブール | RAK12027 | プレゼンス_43 |
| 地震SI値 | 44 | 2 | 2バイト | アナログ10 * m/s | RAK12027 | Analog_44 |
| 地震PGA値 | 45 | 2 | 2バイト | アナログ10 * m/s2 | RAK12027 | Analog_45 |
| 地震シャットオフアラート | 46 | 102 | 1バイト | ブール | RAK12027 | プレゼンス_46 |
| lpp_channel_eq_collapse | 47 | 102 | 1バイト | ブール | RAK12027 | プレゼンス_47 |
| スイッチステータス | 48 | 102 | 1バイト | ブール | RAK13011 | プレゼンス_48 |
| センサーハブ風速 | 49 | 190 | 2バイト | 0.01 m/s | Sensorhub RK900-09 | Wind_Speed_49 |
| センサーハブ風向 | 50 | 191 | 2バイト | 1º | Sensorhub RK900-09 | wind_direction_50 |
| オーディオレベル | 49 |
CursiveのチャネルIDは拡張形式であり、標準のCayenne LPPデータデコーダーによってサポートされていません。
TTN、Chirpstack、Helium、およびDatacakeのデコーダーの例は、フォルダーrakwireless_standardized_payloadリポジトリにあります。
コンパイルされたファイルは、./Generatedフォルダーにあります。成功した各コンパイルされたバージョンの名前はasですWisBlock_SENS_Vx.y.z_YYYY.MM.dd.hh.mm.ss
XYZはバージョン番号です。バージョン番号は、./platformio.iniファイルで設定されています。
yyyy.mm.dd.hh.mm.ssは、コンピレーションのタイムスタンプです。
生成された.zipファイルも使用して、Wisblockツールボックスを使用してデバイスをBLEで更新できます
Platformioを使用する場合、RAK4631のUF2ファイルが生成されます。リセットボタンをダブルプッシュすることにより、RAK4631をブートローダーモードに強制できます。新しいUSBドライブがインストールされます。 UF2ファイルを新しいドライブに引き込み、デバイスをフラッシュします。
デバッグ出力は、 platformio.iniで定義することで制御できます
LIB_DEBUGは、SX126X-Arduino Lorawan Libraryのデバッグ出力を制御します
API_DEBUGは、Wisblock-APIライブラリのデバッグ出力を制御します
my_debugは、アプリケーション自体のデバッグ出力を制御します
CFG_DEBUG NRF52 BSPのデバッグ出力を制御します。それを避けることをお勧めします
[env:wiscore_rak4631]
platform = nordicnrf52
board = wiscore_rak4631
framework = arduino
build_flags =
; -DCFG_DEBUG=2
- DSW_VERSION_1 =1 ; major version increase on API change / not backwards compatible
- DSW_VERSION_2 =0 ; minor version increase on API change / backward compatible
- DSW_VERSION_3 =0 ; patch version increase on bugfix, no affect on API
- DLIB_DEBUG =0 ; 0 Disable LoRaWAN debug output
- DAPI_DEBUG =0 ; 0 Disable WisBlock API debug output
- DMY_DEBUG =0 ; 0 Disable application debug output
- DNO_BLE_LED =1 ; 1 Disable blue LED as BLE notificator
lib_deps =
beegee-tokyo/SX126x-Arduino
beegee-tokyo/WisBlock-API-V2
sparkfun/SparkFun SHTC3 Humidity and Temperature Sensor Library
adafruit/Adafruit LPS2X
closedcube/ClosedCube OPT3001
sabas1080/CayenneLPP
extra_scripts = pre:rename.pyこのガイドは、Wisblock Kit 1およびRak Developer Kit 2に使用できます。
Rakwireless Documentation Centerのクイックスタートガイドに従って、一致するスロットにモジュールをインストールします
ATコマンドインターフェイスまたはBLEアプリケーションを使用してデバイスをセットアップします
このガイドは、Wisblock Kit 2 、 Wisblock Kit 3 、 Wisblock GNSS Tracker for LorawanおよびRak Developer Kit 3に使用できます。
RAK1904モジュールをインストールする必要があります
RAK5005-O、RAK19007、RAK19003、またはRAK19001のスロットC
RAK1910を使用する場合は、インストールする必要があります
RAK5005-OのスロットA
RAK19007またはRAK19001の一致するスロット
RAK12500を使用する場合、ベースボードの一致するスロットにインストールできます。
RAK1906は、ベースボードの任意のマッチングスロットにインストールできます。
インストールガイド用、Rakwireless Documentation Centerのクイックスタートガイドに従ってください
ATコマンドインターフェイスまたはBLEアプリケーションを使用してデバイスをセットアップします
LORAWAN用のRAK11700 GNSSトラッカーは、このセットアップのデフォルトの開始モードです。
ヘリウムマッパーキットを構築する場合、以下のコマンドでモードを変更する必要があります。
ソリューションは、ATコマンドAT+GNSSを使用して3つの異なる作業モードに設定できます。
| 指示 | 入力パラメーター | 返品値 | コードを返します |
|---|---|---|---|
| at+gnss? | - | Get/Set the GNSS precision and format 0 = 4 digit, 1 = 6 digit, 2 = Helium Mapper | OK |
| at+gnss =? | - | 0または1または2 | OK |
at+gnss = <Input Parameter> | 1または2または3 | - | OKまたはAT_PARAM_ERROR |
Cayenne LPP標準形式は、位置の精度に4桁のみを使用します。このデフォルトの位置形式は、ほとんどのLorawanサーバーとMyDevicesなどの視覚化プラットフォームによって自動的にサポートされています。
これはデフォルトであり、ATコマンドAT+GNSS=0で設定されています。
このオプションを設定すると、データは引き続きCayenne LPP形式で送信されますが、カスタムデータ識別子と6桁を使用して、より高い緯度と経度解像度を使用します。この形式をデコードするには、カスタムデータエンコーダーが必要です。 TTN、Chirpstack、およびDataCakeのデータエンコーダは、カスタムデータデコーダーフォルダーにあります。
拡張された位置解像度は、ATコマンドAT+GNSS=1で設定されます。
このオプションは、WisblockでヘリウムマッパーMakeで説明されているように、ヘリウムマッパー形式でデータを送信します。
この形式のパケットデコーダーは、上記の記事に記載されています。
Helium Mapper機能は、ATコマンドAT+GNSS=2で設定されています。
このガイドは、Wisblock Kit 4およびRak Developer Kit 4に使用できます。
Rakwireless Documentation Centerのクイックスタートガイドに従って、一致するスロットにモジュールをインストールします
ATコマンドインターフェイスまたはBLEアプリケーションを使用してデバイスをセットアップします