Changes for page wiki_test
Last modified by Mengting Qiu on 2024/09/05 17:35
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 8 removed)
Details
- Page properties
-
- Content
-
... ... @@ -21,7 +21,7 @@ 21 21 22 22 The temperature & humidity sensor used in S31-NB is SHT31, which is fully calibrated, linearized, and temperature compensated digital output from Sensirion, it provides a strong reliability and long-term stability. The SHT31 is fixed in a (% style="color:blue" %)**waterproof anti-condensation casing**(%%) for long term use. 23 23 24 -S31-NB supports different uplink methods include (% style="color:blue" %)**TCP, MQTT, UDP** 24 +S31-NB supports different uplink methods include (% style="color:blue" %)**TCP, MQTT, UDP** for different application requirement. and Support Uplinks to various IoT Servers. 25 25 26 26 S31-NB is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), It is designed for long term use up to several years. (Real-world battery life depends on the use environment, update period and uplink method. Please check related Power Analyze report). 27 27 ... ... @@ -46,6 +46,7 @@ 46 46 * 8500mAh Battery for long term use 47 47 * Nano SIM card slot for NB-IoT SIM 48 48 49 + 49 49 == 1.3 Specification == 50 50 51 51 ... ... @@ -105,6 +105,7 @@ 105 105 * STOP Mode: 10uA @ 3.3v 106 106 * Max transmit power: 350mA@3.3v 107 107 109 + 108 108 == 1.4 Applications == 109 109 110 110 ... ... @@ -115,6 +115,9 @@ 115 115 * Smart Cities 116 116 * Smart Factory 117 117 120 + 121 + 122 + 118 118 == 1.5 Sleep mode and working mode == 119 119 120 120 ... ... @@ -131,7 +131,7 @@ 131 131 132 132 133 133 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 134 -|=(% style="width: 167px;background-color:# 4F81BD;color:white" %)**Behavior on ACT**|=(% style="width: 117px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width:225px;background-color:#4F81BD;color:white" %)**Action**139 +|=(% style="width: 167px;background-color:#D9E2F3;color:#0070C0" %)**Behavior on ACT**|=(% style="width: 117px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 225px;background-color:#D9E2F3;color:#0070C0" %)**Action** 135 135 |(% style="width:167px" %)Pressing ACT between 1s < time < 3s|(% style="width:117px" %)Send an uplink|(% style="width:225px" %)((( 136 136 If sensor has already attached to NB-IoT network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once. 137 137 Meanwhile, BLE module will be active and user can connect via BLE to configure device. ... ... @@ -143,6 +143,7 @@ 143 143 ))) 144 144 |(% style="width:167px" %)Fast press ACT 5 times.|(% style="width:117px" %)Deactivate Device|(% style="width:225px" %)(% style="color:red" %)**Red led**(%%) will solid on for 5 seconds. Means device is in Deep Sleep Mode. 145 145 151 + 146 146 == 1.7 BLE connection == 147 147 148 148 ... ... @@ -183,7 +183,6 @@ 183 183 184 184 === 1.8.3 Reset Button === 185 185 186 - 187 187 Press to reboot the device. 188 188 189 189 ... ... @@ -191,26 +191,20 @@ 191 191 == 1.9 Hardware Variant == 192 192 193 193 194 -(% border="1" cellspacing="5" style="width:4 10px" %)195 -|=(% style="width: 102px;background-color:# 4F81BD;color:white" %)Model|=(% style="width: 126px;4F81BD;color:white" %)Photo|=(% style="width: 179px;background-color:#4F81BD;color:white" %)Probe Info199 +(% border="1" cellspacing="5" style="width:472px" %) 200 +|=(% style="width: 102px;background-color:#D9E2F3;color:#0070C0" %)Model|=(% style="width: 190px;background-color:#D9E2F3;color:#0070C0" %)Photo|=(% style="width: 187px; background-color:#D9E2F3;color:#0070C0" %)Probe Info 196 196 |(% style="width:102px" %)((( 197 197 S31-LB 198 -)))|(% style="width:126px" %)((( 199 -(% style="text-align:center" %) 200 -[[image:image-20230819110632-6.png||height="130" width="104"]] 201 -)))|(% style="width:179px" %)((( 203 +)))|(% style="width:190px" %)[[image:image-20230527093214-2.jpeg]]|(% style="width:187px" %)((( 202 202 1 x SHT31 Probe 203 203 204 -Cable Length : 3meters206 +Cable Length : 2 meters 205 205 206 206 207 207 ))) 208 208 |(% style="width:102px" %)((( 209 209 S31B-LB 210 -)))|(% style="width:126px" %)((( 211 -(% style="text-align:center" %) 212 -[[image:image-20230819110702-7.png||height="164" width="90"]] 213 -)))|(% style="width:179px" %)((( 212 +)))|(% style="width:190px" %)[[image:image-20230527093155-1.jpeg]]|(% style="width:187px" %)((( 214 214 1 x SHT31 Probe 215 215 216 216 Installed in device. ... ... @@ -220,249 +220,410 @@ 220 220 221 221 222 222 222 +== 1.9 Mechanical == 223 223 224 -= 2. Use S31-NB to communicate with IoT Server = 225 225 226 - == 2.1 SenddatatoIoT servervia NB-IoTnetwork ==225 +[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143884058-338.png]] 227 227 228 228 229 - The S31-NBis equipped with a NB-IoTmodule, the pre-loaded firmwareinS31-NB will get environment data fromsensorsand send the valuetolocalNB-IoTnetworkvia theNB-IoT module.The NB-IoTnetwork will forwardthis valuetoIoTserver viathe protocoldefinedby S31-NB.228 +[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143899218-599.png]] 230 230 231 231 232 - Belowshowsthenetworkstructure:231 +[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143909447-639.png]] 233 233 234 -[[image:1692415924540-357.png]] 235 235 234 += 2. Configure S31x-LB to connect to LoRaWAN network = 236 236 237 - Therearetwoversion: (% style="color:blue"%)**-GE**(%%) and (% style="color:blue" %)**-1D**(%%) versionof S31-NB.236 +== 2.1 How it works == 238 238 239 239 240 -(% style="color: blue" %)**GEVersion**(%%):Thisversiondoesn’tincludeSIMcardorpointtoany IoT server.Userneeds to useAT Commandsto configurebelowtwostepsto setS31-NBsenddatatoIoTserver.239 +The S31x-LB is configured as (% style="color:#037691" %)**LoRaWAN OTAA Class A**(%%) mode by default. It has OTAA keys to join LoRaWAN network. To connect a local LoRaWAN network, you need to input the OTAA keys in the LoRaWAN IoT server and press the button to activate the S31x-LB. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 20 minutes. 241 241 242 -1. Install NB-IoT SIM card and configure APN. See instruction of [[Attach Network>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H2.AttachNetwork]]. 243 243 244 - 1.Set up sensor to point to IoT Server.See instructionof [[Configure toConnectDifferentServers>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.Configuretoconnecttodifferentservers]].242 +== 2.2 Quick guide to connect to LoRaWAN server (OTAA) == 245 245 246 -Below shows result of different server as a glance. 247 247 245 +Following is an example for how to join the [[TTN v3 LoRaWAN Network>>url:https://console.cloud.thethings.network/]]. Below is the network structure; we use the [[LPS8v2>>url:https://www.dragino.com/products/lora-lorawan-gateway/item/228-lps8v2.html]] as a LoRaWAN gateway in this example. 248 248 249 -(% border="1" cellspacing="4" style="width:515px" %) 250 -|(% style="background-color:#4f81bd; color:white; width:100px" %)**Servers**|(% style="background-color:#4f81bd; color:white; width:300px" %)**Dash Board**|(% style="background-color:#4f81bd; color:white; width:115px" %)**Comments** 251 -|(% style="width:127px" %)[[Node-Red>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.5A0Node-RedA028viaA0MQTT29]]|(% style="width:385px" %)[[image:image-20230819113244-8.png||height="183" width="367"]]|(% style="width:170px" %) 252 -|(% style="width:127px" %)[[DataCake>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.4Datacake]]|(% style="width:385px" %)[[image:image-20230819113244-9.png||height="120" width="369"]]|(% style="width:170px" %) 253 -|(% style="width:127px" %)[[Tago.IO>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.7A0Tago.ioA028viaA0MQTT29]]|(% style="width:385px" %) |(% style="width:170px" %) 254 -|(% style="width:127px" %)[[General UDP>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.1GeneralA0UDPA0Connection]]|(% style="width:385px" %)Raw Payload. Need Developer to design Dash Board|(% style="width:170px" %) 255 -|(% style="width:127px" %)[[General MQTT>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.2GeneralA0MQTTA0Connection]]|(% style="width:385px" %)Raw Payload. Need Developer to design Dash Board|(% style="width:170px" %) 256 -|(% style="width:127px" %)[[ThingSpeak>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.3A0ThingSpeakA028viaA0MQTT29]]|(% style="width:385px" %)[[image:image-20230819113244-10.png||height="82" width="291"]]|(% style="width:170px" %) 257 -|(% style="width:127px" %)[[ThingsBoard>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.6A0ThingsBoard.CloudA028viaA0MQTT29]]|(% style="width:385px" %)[[image:image-20230819113244-11.png||height="113" width="293"]]|(% style="width:170px" %) 258 -|(% style="width:127px" %) |(% style="width:385px" %) |(% style="width:170px" %) 247 +The LPS8V2 is already set to connected to [[TTN network >>url:https://console.cloud.thethings.network/]], so what we need to now is configure the TTN server. 259 259 260 -(% style="color:blue" %)**1D Version**(%%): This version has 1NCE SIM card pre-installed and configure to send value to DataCake. User Just need to select the sensor type in DataCake and Activate S31-NB and user will be able to see data in DataCake. See here for [[DataCake Config Instruction>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.4Datacake]]. 261 261 250 +(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from S31x-LB. 262 262 263 - ==2.2PayloadTypes==252 +Each S31x-LB is shipped with a sticker with the default device EUI as below: 264 264 254 +[[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]] 265 265 266 -To meet different server requirement, S31-NB supports different payload type. 267 267 268 - **Includes:**257 +You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot: 269 269 270 -* [[General JSON format payload>>path:#General_Json]]. (Type=5) 271 271 272 - *[[HEX formatPayload>>path:#HEX_Payload]]. (Type=0)260 +(% style="color:blue" %)**Register the device** 273 273 274 - *[[ThingSpeakFormat>>path:#ThingSpeak_Payload]]. (Type=1)262 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/1654935135620-998.png?rev=1.1||alt="1654935135620-998.png"]] 275 275 276 -* [[ThingsBoard Format>>path:#ThingsBoard_Payload]]. (Type=3) 277 277 278 - Usercanspecifythe payload typewhenchoosetheconnectionprotocol.Example:265 +(% style="color:blue" %)**Add APP EUI and DEV EUI** 279 279 280 - (% style="color:#037691"%)**AT+PRO=2,0** (%%) ~/~/UseUDP Connectionx Payload267 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-4.png?width=753&height=551&rev=1.1||alt="图片-20220611161308-4.png"]] 281 281 282 -(% style="color:#037691" %)**AT+PRO=2,5** (%%) ~/~/ Use UDP Connection & Json Payload 283 283 284 -(% style="color: #037691" %)**AT+PRO=3,5** (%%) ~/~/UseMQTT Connection&Json Payload270 +(% style="color:blue" %)**Add APP EUI in the application** 285 285 286 286 287 - === 2.2.1 GeneralJsonFormat(Type~=5)===273 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-5.png?width=742&height=601&rev=1.1||alt="图片-20220611161308-5.png"]] 288 288 289 289 290 - ThisisheGeneralJson Format.Asbelow:276 +(% style="color:blue" %)**Add APP KEY** 291 291 292 - (% style="color:#4472c4"%)**{"IMEI":866207053462762,"temperature":29.2,"humidity":54.2,"battery":3.27,"signal":24,"Model":S31x-NB, "1":{28.2,48.3,2023/08/10 08:00:37},"2":{28.1,49.1,2023/08/10 07:57:37},"3":{28.1,48.5,2023/08/10 07:54:37},"4":{28.2,48.6,2023/08/10 07:51:37},"5":{28.1,48.9,2023/08/10 07:48:37},"6":{28.2,48.8,2023/08/10 07:45:37},"7":{28.2,48.8,2023/08/10 07:42:37},"8":{28.0,48.8,2023/08/10 07:39:37}}**278 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-6.png?width=744&height=485&rev=1.1||alt="图片-20220611161308-6.png"]] 293 293 294 294 295 -(% style="color: red" %)**Notice,fromabovepayload:**281 +(% style="color:blue" %)**Step 2:**(%%) Activate on S31x-LB 296 296 297 -* Temperature , Humidity , Battery & Signal are the value at uplink time. 298 298 299 - * Json entry 1 ~~ 8 are thelast1 ~~ 8 samplingdata as specifyby(%style="color:#037691" %)**AT+NOUD=8 ** (%%)Command. Each entry includes(from lefttoright): Temperature,Humidity,Sampling time.284 +Press the button for 5 seconds to activate the S31x-LB. 300 300 301 -= ==2.2.2HEXformatPayload(Type~=0)===286 +(% style="color:green" %)**Green led**(%%) will fast blink 5 times, device will enter (% style="color:blue" %)**OTA mode**(%%) for 3 seconds. And then start to JOIN LoRaWAN network. (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network. 302 302 288 +After join success, it will start to upload messages to TTN and you can see the messages in the panel. 303 303 304 -This is the HEX Format. As below: 305 305 306 - (% style="color:#4472c4"%)**f86620705346276200640cba16010000000011011801e864d49c2d011a01e364d49925011901eb64d49871011901e564d497bd011a01e664d49709011901e964d49655011a01e864d495a1011a01e864d494ed011801e864d49439**291 +== 2.3 Uplink Payload == 307 307 308 - [[image:1692424009971-458.png]]293 +=== 2.3.1 Device Status, FPORT~=5 === 309 309 310 310 311 - (%style="color:blue"%)**Version:**296 +Users can use the downlink command(**0x26 01**) to ask S31x-LB to send device configure detail, include device configure status. S31x-LB will uplink a payload via FPort=5 to server. 312 312 313 -The sebytes includethe hardwareandsoftwareversion.298 +The Payload format is as below. 314 314 315 -(% style="color:#037691" %)**Higher byte:**(%%) Specify Sensor Model: 0x00 for S31B-NB & S31-NB 316 316 317 -(% style="color:#037691" %)**Lower byte:**(%%) Specify the software version: 0x64=100, means firmware version 100 301 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 302 +|(% colspan="6" style="background-color:#d9e2f3; color:#0070c0" %)**Device Status (FPORT=5)** 303 +|(% style="width:103px" %)**Size (bytes)**|(% style="width:72px" %)**1**|**2**|(% style="width:91px" %)**1**|(% style="width:86px" %)**1**|(% style="width:44px" %)**2** 304 +|(% style="width:103px" %)**Value**|(% style="width:72px" %)Sensor Model|Firmware Version|(% style="width:91px" %)Frequency Band|(% style="width:86px" %)Sub-band|(% style="width:44px" %)BAT 318 318 306 +Example parse in TTNv3 319 319 320 - (% style="color:blue"%)**BAT (Battery Info):**308 +[[image:image-20230524144422-1.png||height="174" width="1080"]] 321 321 322 -Ex1: 0x0CBA = 3258mV 323 323 311 +(% style="color:#037691" %)**Sensor Model**(%%): For S31x-LB, this value is 0x0A 324 324 325 -(% style="color: blue" %)**Signal Strength:**313 +(% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version 326 326 327 - NB-IoTNetworksignal Strength.315 +(% style="color:#037691" %)**Frequency Band**: 328 328 329 - **Ex1:0x16= 22**317 +0x01: EU868 330 330 331 - **0**-113dBm or less319 +0x02: US915 332 332 333 - **1**-111dBm321 +0x03: IN865 334 334 335 - **2...30** -109dBm...-53dBm323 +0x04: AU915 336 336 337 - **31** -51dBmor greater325 +0x05: KZ865 338 338 339 - **99**Not known or not detectable327 +0x06: RU864 340 340 329 +0x07: AS923 341 341 342 - (% style="color:blue"%)**Temperature: **331 +0x08: AS923-1 343 343 333 +0x09: AS923-2 334 + 335 +0x0a: AS923-3 336 + 337 +0x0b: CN470 338 + 339 +0x0c: EU433 340 + 341 +0x0d: KR920 342 + 343 +0x0e: MA869 344 + 345 + 346 +(% style="color:#037691" %)**Sub-Band**: 347 + 348 +AU915 and US915:value 0x00 ~~ 0x08 349 + 350 +CN470: value 0x0B ~~ 0x0C 351 + 352 +Other Bands: Always 0x00 353 + 354 + 355 +(% style="color:#037691" %)**Battery Info**: 356 + 357 +Check the battery voltage. 358 + 359 +Ex1: 0x0B45 = 2885mV 360 + 361 +Ex2: 0x0B49 = 2889mV 362 + 363 + 364 +=== 2.3.2 Sensor Data. FPORT~=2 === 365 + 366 + 367 +Sensor Data is uplink via FPORT=2 368 + 369 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %) 370 +|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)((( 371 +**Size(bytes)** 372 +)))|=(% style="width: 40px;background-color:#D9E2F3;color:#0070C0" %)2|=(% style="width: 90px;background-color:#D9E2F3;color:#0070C0" %)4|=(% style="width: 150px; background-color: #D9E2F3;color:#0070C0" %)1|=(% style="width: 80px; background-color: #D9E2F3;color:#0070C0" %)**2**|=(% style="width: 80px; background-color: #D9E2F3;color:#0070C0" %)2 373 +|(% style="width:99px" %)Value|(% style="width:69px" %)((( 374 +Battery 375 +)))|(% style="width:130px" %)((( 376 +Unix TimeStamp 377 +)))|(% style="width:194px" %)((( 378 +Alarm Flag & MOD& Level of PA8 379 +)))|(% style="width:106px" %)((( 380 +Temperature 381 +)))|(% style="width:97px" %)((( 382 +Humidity 383 +))) 384 + 385 +[[image:image-20230524144456-2.png||height="180" width="1142"]] 386 + 387 + 388 +==== (% style="color:#4472c4" %)**Battery**(%%) ==== 389 + 390 +Sensor Battery Level. 391 + 392 +Ex1: 0x0B45 = 2885mV 393 + 394 +Ex2: 0x0B49 = 2889mV 395 + 396 + 397 +==== (% style="color:#4472c4" %)**Temperature**(%%) ==== 398 + 399 +**Example**: 400 + 344 344 If payload is: 0105H: (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree 345 345 346 346 If payload is: FF3FH : (FF3F & 8000 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees. 347 347 348 - (FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative)405 +(FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative) 349 349 350 350 408 +==== (% style="color:#4472c4" %)**Humidity**(%%) ==== 351 351 352 -(% style="color:blue" %)**Humidity: ** 353 353 354 -Read:0 295(H)=661(D)Value:661 / 10=66.1, So66.1%411 +Read:0x(0197)=412 Value: 412 / 10=41.2, So 41.2% 355 355 356 356 357 -(% style="color: blue" %)**TimeStamp:**414 +==== (% style="color:#4472c4" %)**Alarm Flag & MOD & Level of PA8**(%%) ==== 358 358 359 -Unit TimeStamp Example: 64d49439(H) = 1691653177(D) 360 360 361 - Put the decimalvalueinto this link(https:~/~/www.epochconverter.com/) to get the time.417 +**Example:** 362 362 419 +If payload & 0x01 = 0x01 **~-~->** This is an Alarm Message.It means that the temperature and humidity exceed the alarm value or trigger an interrupt. 363 363 364 -= ==2.2.3ThingsBoardPayload(Type~=3)===421 +If payload & 0x01 = 0x00 **~-~->** This is a normal uplink message, no alarm. 365 365 423 +If payload & 0x80>>7 = 0x01 **~-~->** The PA8 is low level. 366 366 367 - Type3payloadspecialdesignforThingsBoard,itwill alsoconfigure otherdefault server to ThingsBoard.425 +If payload & 0x80>>7 =0x00 **~-~->** The PA8 is high level. 368 368 427 +If payload >> 2 = 0x00 **~-~->** means MOD=1, This is a sampling uplink message. 369 369 370 - (%style="color:#4472c4"%)**{"IMEI":866207053462762,"temperature":29.2,"humidity":54.2,"battery":3.27,"signal":24}**429 +If payload >> 2 = 0x31 **~-~->** means MOD=31, this message is a reply message for polling, this message contains the alarm settings. see [[this link>>path:#HPolltheAlarmsettings:]] for detail. 371 371 372 372 373 -== =2.2.4ThingSpeakPayload(Type~=1)===432 +== 2.4 Payload Decoder file == 374 374 375 375 376 -T hispayloadmeetsThingSpeak platformrequirement.It includesnlyfourfields.Form 1~~4 are:435 +In TTN, use can add a custom payload so it shows friendly reading 377 377 378 - Temperature,Humidity,Battery& Signal. Thispayload typeonlyvalidforThingsSpeakPlatform437 +In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from: 379 379 380 - Aslow:439 +[[https:~~/~~/github.com/dragino/dragino-end-node-decoder/tree/main/S31-LB%26S31B-LB>>https://github.com/dragino/dragino-end-node-decoder/tree/main/S31-LB%26S31B-LB]] 381 381 382 -(% style="color:#4472c4" %)**field1=27.9&field2=49.9&field3=3.23&field4=28** 383 383 442 +== 2.5 Datalog Feature == 384 384 385 -== 2.3 Test Uplink and Change Update Interval == 386 386 445 +Datalog Feature is to ensure IoT Server can get all sampling data from Sensor even if the LoRaWAN network is down. For each sampling, S31x-LB will store the reading for future retrieving purposes. 387 387 388 -By default, Sensor will send uplinks (% style="color:blue" %)**every 2 hours**(%%) & AT+NOUD=8 389 389 390 - Usercanuse below commands tochangehe(% style="color:blue"%)**uplinkinterval**.448 +=== 2.5.1 Ways to get datalog via LoRaWAN === 391 391 392 -(% style="color:#037691" %)**AT+TDC=600 ** (%%) ~/~/ Set Update Interval to 600s 393 393 394 - Usercansopushthebuttonformore than 1 seconds toactivate anuplink.451 +Set [[PNACKMD=1>>||anchor="H2.5.4DatalogUplinkpayload28FPORT3D329"]], S31x-LB will wait for ACK for every uplink, when there is no LoRaWAN network,S31x-LB will mark these records with non-ack messages and store the sensor data, and it will send all messages (10s interval) after the network recovery. 395 395 453 +* ((( 454 +a) S31x-LB will do an ACK check for data records sending to make sure every data arrive server. 455 +))) 456 +* ((( 457 +b) S31x-LB will send data in **CONFIRMED Mode** when PNACKMD=1, but S31x-LB won't re-transmit the packet if it doesn't get ACK, it will just mark it as a NONE-ACK message. In a future uplink if S31x-LB gets a ACK, S31x-LB will consider there is a network connection and resend all NONE-ACK messages. 458 +))) 396 396 397 - ==2.4Multi-SamplingsandOne uplink==460 +Below is the typical case for the auto-update datalog feature (Set PNACKMD=1) 398 398 462 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20220703111700-2.png?width=1119&height=381&rev=1.1||alt="图片-20220703111700-2.png" height="381" width="1119"]] 399 399 400 -To save battery life, S31-NB will sample temperature & humidity data every 15 minutes and send one uplink every 2 hours. So each uplink it will include 8 stored data + 1 real-time data. They are defined by: 401 401 402 - * (% style="color:#037691" %)**AT+TR=900**(%%)~/~/ The unitis seconds, andthe default is to record data once every 900 seconds (15minutes,the minimum can be set to 180 seconds)465 +=== 2.5.2 Unix TimeStamp === 403 403 404 -* (% style="color:#037691" %)**AT+NOUD=8** (%%)~/~/ The device uploads 8 sets of recorded data by default. Up to 32 sets of record data can be uploaded. 405 405 406 - Thediagrambelow explainstherelationshipbetween TR, NOUD,andTDC more clearly:468 +S31x-LB uses Unix TimeStamp format based on 407 407 408 -[[image: 1692424376354-959.png]]470 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20220523001219-11.png?width=627&height=97&rev=1.1||alt="图片-20220523001219-11.png" height="97" width="627"]] 409 409 472 +User can get this time from link: [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] : 410 410 411 - ==2.5 Humidityand Temperature alarmfunction ==474 +Below is the converter example 412 412 476 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20220523001219-12.png?width=720&height=298&rev=1.1||alt="图片-20220523001219-12.png" height="298" width="720"]] 413 413 414 -On each sampling define by AT+TR ( default 900s or 15 minutes), when the value exceed the range, it will trigger an Alarm and immediately sends a uplink. 415 415 479 +So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25 416 416 417 -(% style="color:blue" %)**AT Commands:** 418 418 419 - (%style="color:#037691"%)**AT+ SHHUM=min,max**482 +=== 2.5.3 Set Device Time === 420 420 421 -Example: AT+ SHHUM=50,80 ~/~/ Alarm when humidity lower than 50 or higher than 80. 422 422 485 +User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command. 423 423 424 - (%style="color:#037691"%)**AT+HTEMP=min,max**487 +Once S31x-LB Joined LoRaWAN network, it will send the MAC command (DeviceTimeReq) and the server will reply with (DeviceTimeAns) to send the current time to S31x-LB. If S31x-LB fails to get the time from the server, S31x-LB will use the internal time and wait for next time request (AT+SYNCTDC to set the time request period, default is 10 days). 425 425 426 - Example: AT+SHTEMP=20,30~/~/Alarmwhen temperaturelower than20orhigherthan 30489 +(% style="color:red" %)**Note: LoRaWAN Server need to support LoRaWAN v1.0.3(MAC v1.0.3) or higher to support this MAC command feature, Chirpstack,TTN V3 v3 and loriot support but TTN V3 v2 doesn't support. If server doesn't support this command, it will through away uplink packet with this command, so user will lose the packet with time request for TTN V3 v2 if SYNCMOD=1.** 427 427 428 428 429 - (%style="color:red"%)**Notice:**492 +=== 2.5.4 Datalog Uplink payload (FPORT~=3) === 430 430 431 -* To disable Alarm, user can set min and max to same value , such as (% style="color:#037691" %)**AT+SHTEMP=0,0.** 432 432 433 - * If useronly wanttosend only minormax,usercan set the alarm to avalue thatdevicewon’treach. For example: (% style="color:#037691" %)**AT+SHTEMP=-80,0.**495 +The Datalog uplinks will use below payload format. 434 434 497 +**Retrieval data payload:** 435 435 499 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %) 500 +|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)((( 501 +**Size(bytes)** 502 +)))|=(% style="width: 40px; background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 55px; background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 65px; background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 180px; background-color:#D9E2F3;color:#0070C0" %)**1**|=(% style="width: 100px; background-color:#D9E2F3;color:#0070C0" %)**4** 503 +|(% style="width:103px" %)Value|(% style="width:68px" %)((( 504 +ignore 505 +)))|(% style="width:104px" %)((( 506 +((( 507 +Humidity 508 +))) 436 436 437 -== 2.6 Trggier an uplink by external interrupt == 510 +((( 511 + 512 +))) 513 +)))|(% style="width:87px" %)((( 514 +Temperature 515 +)))|(% style="width:178px" %)((( 516 +Poll message flag & Alarm Flag& Level of PA8 517 +)))|(% style="width:137px" %)Unix Time Stamp 438 438 519 +**Poll message flag & Alarm Flag & Level of PA8:** 439 439 440 - S31-NB has an external triggerinterrupt function. Users can usethe PB15into trigger theuploadof data packets.521 +[[image:image-20230524114302-1.png||height="115" width="736"]] 441 441 442 -(% style="color:blue" %)**AT command:** 443 443 444 -* (%style="color:#037691"%)**AT+INTMOD**(%%)~/~/ Setthetriggerinterrupt mode524 +**No ACK Message**: 1: This message means this payload is fromn Uplink Message which doesn't get ACK from the server before ( for **PNACKMD=1** feature) 445 445 446 -* (% style="color:#037691"%)**AT+INTMOD=0**(%%)~/~/DisableInterrupt526 +**Poll Message Flag**: 1: This message is a poll message reply. 447 447 448 -* (% style="color:#037691"%)**AT+INTMOD=1 **(%%) ~/~/Trigger by rising andfallingedge528 +* Poll Message Flag is set to 1. 449 449 450 -* (%style="color:#037691"%)**AT+INTMOD=2**(%%)~/~/Triggerbyfalling edge530 +* Each data entry is 11 bytes, to save airtime and battery, devices will send max bytes according to the current DR and Frequency bands. 451 451 452 - *(% style="color:#037691"%)**AT+INTMOD=3**(%%)~/~/Triggerbyrising edge532 +For example, in US915 band, the max payload for different DR is: 453 453 534 +**a) DR0:** max is 11 bytes so one entry of data 454 454 455 - =3.ConfigureS31x-NB=536 +**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes) 456 456 538 +**c) DR2:** total payload includes 11 entries of data 539 + 540 +**d) DR3: **total payload includes 22 entries of data. 541 + 542 +If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0 543 + 544 +**Example:** 545 + 546 +If S31x-LB has below data inside Flash: 547 + 548 +[[image:image-20230524114654-2.png]] 549 + 550 + 551 +If user sends below downlink command: 31646D84E1646D856C05 552 + 553 +Where : Start time: 646D84E1 = time 23/5/24 03:30:41 554 + 555 + Stop time: 646D856C= time 23/5/24 03:33:00 556 + 557 + 558 +**S31x-LB will uplink this payload.** 559 + 560 +[[image:image-20230524114826-3.png||height="448" width="1244"]] 561 + 562 +((( 563 +00 00 02 36 01 10 40 64 6D 84 E1 00 00 02 37 01 10 40 64 6D 84 F8 00 00 02 37 01 0F 40 64 6D 85 04 00 00 02 3A 01 0F 40 64 6D 85 18 00 00 02 3C 01 0F 40 64 6D 85 36 00 00 02 3D 01 0E 40 64 6D 85 3F 00 00 02 3F 01 0E 40 64 6D 85 60 00 00 02 40 01 0E 40 64 6D 85 6A 564 +))) 565 + 566 +((( 567 +Where the first 11 bytes is for the first entry: 568 +))) 569 + 570 +((( 571 +00 00 02 36 01 10 40 64 6D 84 E1 572 +))) 573 + 574 +((( 575 +**Hum**=0x0236/10=56.6 576 +))) 577 + 578 +((( 579 +**Temp**=0x0110/10=27.2 580 +))) 581 + 582 +((( 583 +**poll message flag & Alarm Flag & Level of PA8**=0x40,means reply data,sampling uplink message,the PA8 is low level. 584 +))) 585 + 586 +((( 587 +**Unix time** is 0x646D84E1=1684899041s=23/5/24 03:30:41 588 +))) 589 + 590 + 591 +(% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||alt="数据 URI 图片" data-widget="image" draggable="true" height="15" role="presentation" title="单击并拖动以移动" width="15"]](% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220, 220, 220, 0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||alt="数据 URI 图片" draggable="true" height="15" role="presentation" title="单击并拖动以移动" width="15"]](% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" title="单击并拖动以调整大小" %)的(% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||alt="数据 URI 图片" data-widget="image" draggable="true" height="15" role="presentation" title="单击并拖动以移动" width="15"]](% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220, 220, 220, 0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||alt="数据 URI 图片" draggable="true" height="15" role="presentation" title="单击并拖动以移动" width="15"]](% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" title="单击并拖动以调整大小" %)的 592 + 593 +== 2.6 Temperature Alarm Feature == 594 + 595 + 596 +S31x-LB work flow with Alarm feature. 597 + 598 + 599 +[[image:image-20230524110125-3.png||height="768" width="1115"]] 600 + 601 + 602 + 603 +== 2.7 Frequency Plans == 604 + 605 + 606 +The S31x-LB uses OTAA mode and below frequency plans by default. If user want to use it with different frequency plan, please refer the AT command sets. 607 + 608 +[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]] 609 + 610 + 611 +== 2.8 Firmware Change Log == 612 + 613 + 614 +**Firmware download link: **[[https:~~/~~/www.dropbox.com/sh/fis3g6nmhv0eokg/AAC6BcCZaX4BdqZkduUvZ3jIa?dl=0>>https://www.dropbox.com/sh/fis3g6nmhv0eokg/AAC6BcCZaX4BdqZkduUvZ3jIa?dl=0]] 615 + 616 + 617 += 3. Configure S31x-LB = 618 + 457 457 == 3.1 Configure Methods == 458 458 459 459 460 -S31x- NB supports below configure method:622 +S31x-LB supports below configure method: 461 461 462 462 * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]]. 463 - 464 464 * AT Command via UART Connection : See [[UART Connection>>http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H2.3UARTConnectionforSN50v3basemotherboard]]. 465 - 466 466 * LoRaWAN Downlink. Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section. 467 467 468 468 ... ... @@ -513,6 +513,7 @@ 513 513 * Example 1: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds 514 514 * Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 515 515 676 + 516 516 === 3.3.2 Get Device Status === 517 517 518 518 ... ... @@ -596,6 +596,7 @@ 596 596 597 597 * Alarm & MOD bit is 0x7C, 0x7C >> 2 = 0x31: Means this message is the Alarm settings message. 598 598 760 + 599 599 === 3.3.7 Set Interrupt Mode === 600 600 601 601 ... ... @@ -629,6 +629,7 @@ 629 629 * Example 1: Downlink Payload: 06000000 ~/~/ Turn off interrupt mode 630 630 * Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger 631 631 794 + 632 632 === 3.3.8 Set Power Output Duration === 633 633 634 634 ... ... @@ -657,6 +657,7 @@ 657 657 * Example 1: Downlink Payload: 070000 **~-~-->** AT+5VT=0 658 658 * Example 2: Downlink Payload: 0701F4 **~-~-->** AT+5VT=500 659 659 823 + 660 660 = 4. Battery & Power Consumption = 661 661 662 662 ... ... @@ -683,6 +683,7 @@ 683 683 * (Recommanded way) OTA firmware update via wireless : **[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/]]** 684 684 * Update through UART TTL interface : **[[Instruction>>url:http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H1.LoRaSTv4baseHardware]]**. 685 685 850 + 686 686 = 6. FAQ = 687 687 688 688 ... ... @@ -710,6 +710,7 @@ 710 710 711 711 * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band 712 712 878 + 713 713 = 8. Packing Info = 714 714 715 715 ... ... @@ -727,6 +727,7 @@ 727 727 728 728 * Weight / pcs : g 729 729 896 + 730 730 = 9. Support = 731 731 732 732 ... ... @@ -733,5 +733,3 @@ 733 733 * Support is provided Monday to Friday, from 09:00 to 18:00 GMT+8. Due to different timezones we cannot offer live support. However, your questions will be answered as soon as possible in the before-mentioned schedule. 734 734 735 735 * Provide as much information as possible regarding your enquiry (product models, accurately describe your problem and steps to replicate it etc) and send a mail to [[Support@dragino.cc>>mailto:Support@dragino.cc]]. 736 - 737 -(% style="display:none" %) (%%)
- 1692415924540-357.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -94.4 KB - Content
- 1692424009971-458.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -147.4 KB - Content
- 1692424376354-959.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -146.1 KB - Content
- image-20230819110702-7.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -53.2 KB - Content
- image-20230819113244-10.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -12.0 KB - Content
- image-20230819113244-11.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -57.5 KB - Content
- image-20230819113244-8.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -13.0 KB - Content
- image-20230819113244-9.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -35.5 KB - Content