![]() | ![]() | ![]() |
|---|
這是Wisblock的新方法。它掃描了I2C總線和串行,以檢測哪些Wisblock模塊附在Wisblock基座上,並在Cayenne LPP中創建了Lorawan有效載荷,並使用發現的模塊的數據。
該固件使用Wisblock API V2
可以使用此代碼而無需更改
| 套件/解決方案 | 設置指南 |
|---|---|
| Wisblock套件1 | 設置套件1 |
| Wisblock套件2 | 設置套件2 |
| Wisblock套件3 | 設置套件3 |
| Wisblock套件4 | 設置套件4 |
| RAK開發人員套件 | 設置開發套件2設置開發套件3設置開發套件4 |
| 氦映射器套件 | 設置氦映射器 |
| Wisblock GNSS跟踪器洛拉瓦恩 | 設置GNSS跟踪器 |
| 模塊 | 功能 | 用於套件 |
|---|---|---|
| RAK4631 | Wisblock核心模塊 | - |
| RAK5005-O | Wisblock基板 | - |
| RAK19007 | Wisblock基板 | - |
| RAK19003 | Wisblock迷你基板 | - |
| RAK19001 | Wisblock全尺寸基板 | - |
| RAK1901 | Wisblock溫度和濕傳感器 | Wisblock套件1,RAK開發人員套件2 |
| RAK1902 | Wisblock晴雨表壓力傳感器 | Wisblock套件1,RAK開發人員套件2 |
| RAK1903 | Wisblock環境光傳感器 | Wisblock套件1,RAK開發人員套件2 |
| RAK1904 | Wisblock加速傳感器(用於GNSS解決方案) | Wisblock套件2和3,Rak Developer Kit 3 |
| RAK1905 | Wisblock 9 DOF傳感器 | - |
| RAK1906 | Wisblock環境傳感器 | Wisblock套件4,RAK開發人員套件4 |
| RAK1910 | Wisblock GNSS傳感器 | Wisblock套件2和3,RAK開發人員套件3 |
| RAK1921 | Wisblock OLED展示 | (狀態顯示) |
| RAK5814 | Wisblock ACC608加密模塊 | - |
| RAK12002 | Wisblock RTC模塊 | - |
| RAK12003 | Wisblock Fir傳感器 | - |
| RAK12004 | Wisblock MQ2氣體傳感器 | - |
| RAK12008 | Wisblock SCT31 CO2氣體傳感器 | - |
| RAK12009 | Wisblock MQ3酒精燃氣傳感器 | - |
| RAK12010 | Wisblock環境光傳感器 | - |
| RAK12014 | Wisblock激光TOF傳感器 | - |
| RAK12019 | Wisblock UV燈光傳感器 | - |
| RAK12025 | Wisblock陀螺儀傳感器 | - |
| RAK12023/RAK12035 | Wisblock土壤水分和溫度傳感器 | Wisblock土壤傳感器解決方案 |
| RAK12027 | Wisblock地震傳感器 | - |
| RAK12032 | Wisblock加速傳感器 | - |
| RAK12034 | Wisblock 9 DOF傳感器 | - |
| RAK12037 | Wisblock CO2傳感器 | - |
| RAK12039 | Wisblock粒子物質傳感器 | - |
| RAK12040 | Wisblock AMG8833溫度陣列傳感器 | - |
| RAK12047 | Wisblock VOC傳感器 | - |
| RAK12052 | Wisblock MLX90640 32x24溫度陣列傳感器 | - |
| RAK12500 | Wisblock GNSS傳感器 | Wisblock Tracker for Lorawan |
| RAK14002 | Wisblock 3按鈕觸摸墊 | - |
| RAK14003 | Wisblock LED欄顯示 | - |
| RAK14008 | Wisblock手勢傳感器 | - |
| RAK15000 | Wisblock Eeprom模塊 | - |
| RAK15001 | Wisblock閃存模塊 | - |
| RAK14008 | Wisblock手勢傳感器 | - |
| RAK16000 | Wisblock DC電流傳感器 | - |
MCU和LORA收發器進入測量週期之間的睡眠模式,以節省功率。我可以測量整個系統40UA的睡眠電流,以使能夠使睡眠的解決方案。某些解決方案(例如GNSS跟踪器或RAK12047 VOC傳感器)需要更長的喚醒時間或更頻繁的喚醒,它們具有更高的功耗。
此外,使用加熱元件的MQ氣體傳感器之類的傳感器也將消耗更多的功率。
...要更新,請檢查Platform.ini以獲取所有使用
該項目是使用平台IO開發的。但是,對於仍然堅持Arduino IDE的用戶來說,Arduino IDE兼容來源的副本是在Arduinoide文件夾中。該代碼沒有在Arduino IDE ATM上編譯。
PIO的完整項目在Platformio文件夾中。
使用PlatformIO時,庫都列在platformio.ini中,並在編譯項目時自動安裝。使用Arduino IDE時,所有庫都需要使用Arduino Library Manager手動安裝。
編譯固件並在安裝所有必需模塊的Wisblock上刷新固件。
連接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 | 將節點設置為Lorawan模式 |
| AT+NJM = 1 | 將網絡連接方法設置為OTAA |
| at+band = 10 | 設置LPWAN區域(此處為923-3)請參閱命令手冊 |
| AT+DEVEUI = 1000000000000001 | 設置設備EUI,最好使用在Wisblock Core模塊標籤上打印的DEVEUI |
| at+appeui = ab00ab00ab00ab00 | 設置Lorawan服務器上所需的應用程序EUI |
| AT+AppKey = AB00AB00AB00AB00AB00AB00AB00AB00 | 設置應用程序密鑰,用於加密網絡加入期間數據包 |
| at+sendint = 600 | 設置間隔傳感器節點將發送數據包。 600 == 10 x 60秒== 10分鐘 |
可以在此處找到所有命令的手冊:at-commands.mdAT?
使用Wisblock工具箱
數據包數據與從電子貓/cayennelpp編碼的擴展的Cayenne LPP兼容
數據包的內容取決於Wisblock Base Board上安裝的模塊:
| 數據 | 渠道 # | 通道ID | 長度 | 評論 | 所需的模塊 | 解碼字段名稱 |
|---|---|---|---|---|---|---|
| 電池價值 | 1 | 116 | 2個字節 | 0.01 V未簽名的MSB | RAK4631 | 電壓_1 |
| 濕度 | 2 | 104 | 1字節 | 在%rh中 | RAK1901 | 濕度_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 | 濕度_6 |
| 溫度2 | 7 | 103 | 2個字節 | 在°C | RAK1906 | 溫度_7 |
| 氣壓2 | 8 | 115 | 2個字節 | 在HPA(MBAR)中 | RAK1906 | 氣壓表_8 |
| 氣電2 | 9 | 2 | 2個字節 | 0.01簽名(KOHM) | RAK1906 | 模擬_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 | 濕度_12 |
| 土壤濕度生 | 13 | 2 | 2個字節 | 0.01簽名 | RAK12023/RAK12035 | 模擬_in_13 |
| 土壤數據有效 | 14 | 102 | 1字節 | 布爾 | RAK12023/RAK12035 | 存在_14 |
| 照明2 | 15 | 101 | 2個字節 | 1個未簽名 | RAK12010 | Illuminance_15 |
| VOC | 16 | 138 | 2個字節 | VOC索引 | RAK12047 | VOC_16 |
| MQ2氣體 | 17 | 2 | 2個字節 | 0.01簽名 | RAK12004 | 模擬_in_17 |
| MQ2氣體百分比 | 18 | 120 | 1字節 | 1-100%未簽名 | RAK12004 | 百分比_18 |
| MG812氣體 | 19 | 2 | 2個字節 | 0.01簽名 | RAK12008 | 模擬_in_19 |
| MG812氣體百分比 | 20 | 120 | 1字節 | 1-100%未簽名 | RAK12008 | 百分比_20 |
| MQ3酒精氣 | 21 | 2 | 2個字節 | 0.01簽名 | RAK12009 | 模擬_in_21 |
| MQ3酒精氣perc。 | 22 | 120 | 1字節 | 1-100%未簽名 | RAK12009 | 百分比_22 |
| TOF距離 | 23 | 2 | 2個字節 | 0.01簽名 | RAK12014 | 模擬_in_23 |
| TOF數據有效 | 24 | 102 | 1字節 | 布爾 | RAK12014 | 存在_24 |
| 陀螺儀觸發 | 25 | 134 | 6個字節 | 每個軸2個字節,0.01°/s | RAK12025 | Gyrometer_25 |
| 檢測到手勢 | 26 | 0 | 1字節 | 1個字節帶有手勢的身份證 | RAK14008 | Digital_in_26 |
| LTR390 UVI值 | 27 | 2 | 2個字節 | 0.01簽名 | RAK12019 | 模擬_in_27 |
| ltr390紫外線值 | 28 | 101 | 2個字節 | 1個未簽名 | RAK12019 | Illuminance_28 |
| ina219電流 | 29 | 2 | 2個字節 | 0.01簽名 | RAK16000 | 模擬_29 |
| ina219電壓 | 30 | 2 | 2個字節 | 0.01簽名 | RAK16000 | 模擬_30 |
| ina219電源 | 31 | 2 | 2個字節 | 0.01簽名 | RAK16000 | 模擬_31 |
| 觸摸板左 | 32 | 102 | 1字節 | 布爾 | RAK14002 | 存在_32 |
| 觸摸板中間 | 33 | 102 | 1字節 | 布爾 | RAK14002 | 存在_33 |
| 觸摸板右 | 34 | 102 | 1字節 | 布爾 | RAK14002 | 存在_34 |
| SCD30 CO2濃度 | 35 | 125 | 2個字節 | 1 ppm未簽名 | RAK12037 | 濃度_35 |
| SCD30溫度 | 36 | 103 | 2個字節 | 在°C | RAK12037 | 溫度_36 |
| SCD30濕度 | 37 | 104 | 1字節 | 在%rh中 | RAK12037 | 濕度_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 | 模擬_44 |
| 地震PGA值 | 45 | 2 | 2個字節 | 模擬10 * m/s2 | RAK12027 | 模擬_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 |
草書中的通道ID是擴展格式,並且不受標準Cayenne LPP數據解碼器的支持。
可以在文件夾rakwireless_standardized_payload repo中找到TTN,Chirpstack,氦氣和數據蛋糕的示例解碼器
編譯的文件位於./generated文件夾中。每個成功的編譯版本都被稱為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進入Boot Loader模式。將安裝新的USB驅動器。將UF2文件拉到新驅動器中以閃爍設備。
調試輸出可以通過platformio.ini中的定義來控制
lib_debug控制SX126X-Arduino Lorawan庫的調試輸出
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套件1和RAK開發人員套件2
在Rakwireless文檔中心的快速啟動指南之後,將模塊安裝在任何匹配的插槽中
使用AT命令接口或BLE應用程序設置設備
本指南可用於Wisblock套件2 , Wisblock Kit 3 , Wisblock GNSS Tracker for Lorawan和Rak開發人員套件3
RAK1904模塊必須安裝在
RAK5005-O的插槽C,RAK19007,RAK19003或RAK19001
如果使用RAK1910,則必須安裝在
RAK5005-O的插槽A
RAK19007或RAK19001的任何匹配插槽
如果使用RAK12500,則可以將其安裝在基板的任何匹配插槽中。
RAK1906可以安裝在基板的任何匹配插槽中。
對於安裝指南,遵循Rakwireless文檔中心的快速啟動指南
使用AT命令接口或BLE應用程序設置設備
lorawan的RAK11700 GNSS跟踪器是此設置的默認啟動模式。
如果構建氦映射器套件,則必須使用以下命令更改模式:
可以使用AT命令AT+GNSS將解決方案設置為3種不同的工作模式:
| 命令 | 輸入參數 | 返回值 | 返回代碼 |
|---|---|---|---|
| 在+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+GNSS=0設置為AT命令。
設置此選項,數據仍以Cayenne LPP格式發送,但使用自定義數據標識符和6位數字來獲得更高的緯度和經度分辨率。要解碼此格式,需要定制數據編碼器。可以在自定義數據解碼器文件夾中找到TTN,Chirpstack和DataCake的數據編碼器。
增強的位置分辨率設置為AT命令AT+GNSS=1 。
該選項以氦映射器格式發送數據,如用Wisblock製作氦映射器所述。
上述文章提供了此格式的數據包解碼器。
氦映射器功能設置為AT命令AT+GNSS=2 。
本指南可用於Wisblock套件4和RAK開發人員套件4
在Rakwireless文檔中心的快速啟動指南之後,將模塊安裝在任何匹配的插槽中
使用AT命令接口或BLE應用程序設置設備