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, 2 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -115,8 +115,6 @@ 115 115 * Smart Cities 116 116 * Smart Factory 117 117 118 - 119 - 120 120 == 1.5 Sleep mode and working mode == 121 121 122 122 ... ... @@ -133,7 +133,7 @@ 133 133 134 134 135 135 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 136 -|=(% style="width: 167px;background-color:# D9E2F3;color:#0070C0" %)**Behavior on ACT**|=(% style="width: 117px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width:D9E2F3;color:#0070C0" %)**Action**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** 137 137 |(% style="width:167px" %)Pressing ACT between 1s < time < 3s|(% style="width:117px" %)Send an uplink|(% style="width:225px" %)((( 138 138 If sensor has already attached to NB-IoT network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once. 139 139 Meanwhile, BLE module will be active and user can connect via BLE to configure device. ... ... @@ -185,6 +185,7 @@ 185 185 186 186 === 1.8.3 Reset Button === 187 187 186 + 188 188 Press to reboot the device. 189 189 190 190 ... ... @@ -193,7 +193,7 @@ 193 193 194 194 195 195 (% border="1" cellspacing="5" style="width:410px" %) 196 -|=(% style="width: 102px;background-color:# D9E2F3;color:#0070C0" %)Model|=(% style="width: 126px; background-color:rgb(217, 226, 243);rgb(0, 112, 192);" %)Photo|=(% style="width: 179px;rgb(217, 226, 243);rgb(0, 112, 192);" %)Probe Info195 +|=(% style="width: 102px;background-color:#4F81BD;color:white" %)Model|=(% style="width: 126px; background-color:#4F81BD;color:white" %)Photo|=(% style="width: 179px;background-color:#4F81BD;color:white" %)Probe Info 197 197 |(% style="width:102px" %)((( 198 198 S31-LB 199 199 )))|(% style="width:126px" %)((( ... ... @@ -221,412 +221,252 @@ 221 221 222 222 223 223 224 -== 1.9 Mechanical == 225 225 226 - 227 -[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143884058-338.png]] 228 - 229 - 230 -[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143899218-599.png]] 231 - 232 - 233 -[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143909447-639.png]] 234 - 235 - 236 236 = 2. Use S31-NB to communicate with IoT Server = 237 237 238 238 == 2.1 Send data to IoT server via NB-IoT network == 239 239 240 240 241 -The S31 x-LB isconfiguredas (% style="color:#037691"%)**LoRaWANOTAAClass A**(%%)mode by default.Itas OTAA keystojoinLoRaWANnetwork.Toconnect alocalLoRaWANnetwork,youneedto inputtheOTAA keysintheLoRaWANIoTserverandpressthebuttontoactivatetheS31x-LB.It will automaticallyjointhenetworkviaOTAAand start to send thesensorvalue.Thedefaultuplinkinterval is 20 minutes.229 +The S31-NB is equipped with a NB-IoT module, the pre-loaded firmware in S31-NB will get environment data from sensors and send the value to local NB-IoT network via the NB-IoT module. The NB-IoT network will forward this value to IoT server via the protocol defined by S31-NB. 242 242 243 243 244 - == 2.2 Quick guidetoconnecttoLoRaWANserver(OTAA) ==232 +Below shows the network structure: 245 245 234 +[[image:1692415924540-357.png]] 246 246 247 -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 -The LPS8V2 isalreadysettoconnected to [[TTN network >>url:https://console.cloud.thethings.network/]],sowhat weneedtonow isnfiguretheTTN server.237 +There are two version: (% style="color:blue" %)**-GE**(%%) and (% style="color:blue" %)**-1D**(%%) version of S31-NB. 250 250 251 251 252 -(% style="color:blue" %)** Step1:**(%%)Createadevice in TTNwiththeOTAAkeys fromS31x-LB.240 +(% style="color:blue" %)**GE Version**(%%): This version doesn’t include SIM card or point to any IoT server. User needs to use AT Commands to configure below two steps to set S31-NB send data to IoT server. 253 253 254 - EachS31x-LBisshippedwithastickerwith thedefaultdevice EUIasbelow: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]]. 255 255 256 -[[i mage:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]]244 +1. Set up sensor to point to IoT Server. See instruction of [[Configure to Connect Different Servers>>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]]. 257 257 246 +Below shows result of different server as a glance. 258 258 259 -You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot: 260 260 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" %) 261 261 262 -(% style="color:blue" %)** Register the device**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]]. 263 263 264 -[[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"]] 265 265 263 +== 2.2 Payload Types == 266 266 267 -(% style="color:blue" %)**Add APP EUI and DEV EUI** 268 268 269 - [[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"]]266 +To meet different server requirement, S31-NB supports different payload type. 270 270 268 +**Includes:** 271 271 272 - (%style="color:blue"%)**AddAPP EUI intheapplication**270 +* [[General JSON format payload>>path:#General_Json]]. (Type=5) 273 273 272 +* [[HEX format Payload>>path:#HEX_Payload]]. (Type=0) 274 274 275 -[[i mage: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"]]274 +* [[ThingSpeak Format>>path:#ThingSpeak_Payload]]. (Type=1) 276 276 276 +* [[ThingsBoard Format>>path:#ThingsBoard_Payload]]. (Type=3) 277 277 278 - (%style="color:blue"%)**AddAPPKEY**278 +User can specify the payload type when choose the connection protocol. Example: 279 279 280 - [[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"]]280 +(% style="color:#037691" %)**AT+PRO=2,0** (%%) ~/~/ Use UDP Connection & hex Payload 281 281 282 +(% style="color:#037691" %)**AT+PRO=2,5** (%%) ~/~/ Use UDP Connection & Json Payload 282 282 283 -(% style="color: blue" %)**Step2:**(%%)ActivateonS31x-LB284 +(% style="color:#037691" %)**AT+PRO=3,5 ** (%%) ~/~/ Use MQTT Connection & Json Payload 284 284 285 285 286 - Pressthebuttonfor5secondstoctivatetheS31x-LB.287 +=== 2.2.1 General Json Format (Type~=5) === 287 287 288 -(% 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. 289 289 290 - After joinsuccess,it willstarttoupload messagestoTTN andyou can seethemessagesin thepanel.290 +This is the General Json Format. As below: 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}}** 292 292 293 -== 2.3 Uplink Payload == 294 294 295 - ===2.3.1 DeviceStatus,FPORT~=5===295 +(% style="color:red" %)**Notice, from above payload:** 296 296 297 +* Temperature , Humidity , Battery & Signal are the value at uplink time. 297 297 298 - Userscanuse thedownlink command(**0x2601**)toaskS31x-LBtosenddeviceconfiguredetail,includedeviceconfigure status.S31x-LB willuplinkaayload viaFPort=5 to server.299 +* Json entry 1 ~~ 8 are the last 1 ~~ 8 sampling data as specify by (% style="color:#037691" %)**AT+NOUD=8 ** (%%)Command. Each entry includes (from left to right): Temperature, Humidity, Sampling time. 299 299 300 -The Payload format is as below. 301 301 302 302 303 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 304 -|(% colspan="6" style="background-color:#d9e2f3; color:#0070c0" %)**Device Status (FPORT=5)** 305 -|(% style="width:103px" %)**Size (bytes)**|(% style="width:72px" %)**1**|**2**|(% style="width:91px" %)**1**|(% style="width:86px" %)**1**|(% style="width:44px" %)**2** 306 -|(% 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 303 +=== 2.2.2 HEX format Payload(Type~=0) === 307 307 308 -Example parse in TTNv3 309 309 310 - [[image:image-20230524144422-1.png||height="174"width="1080"]]306 +This is the HEX Format. As below: 311 311 308 +(% style="color:#4472c4" %)**f86620705346276200640cba16010000000011011801e864d49c2d011a01e364d49925011901eb64d49871011901e564d497bd011a01e664d49709011901e964d49655011a01e864d495a1011a01e864d494ed011801e864d49439** 312 312 313 - (% style="color:#037691" %)**Sensor Model**(%%): For S31x-LB, this value is0x0A310 +[[image:1692424009971-458.png]] 314 314 315 -(% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version 316 316 317 -(% style="color: #037691" %)**Frequency Band**:313 +(% style="color:blue" %)**Version:** 318 318 319 - 0x01:EU868315 +These bytes include the hardware and software version. 320 320 321 -0x0 2:US915317 +(% style="color:#037691" %)**Higher byte:**(%%) Specify Sensor Model: 0x00 for S31B-NB & S31-NB 322 322 323 -0 x03:IN865319 +(% style="color:#037691" %)**Lower byte:**(%%) Specify the software version: 0x64=100, means firmware version 100 324 324 325 -0x04: AU915 326 326 327 - 0x05:KZ865322 +(% style="color:blue" %)**BAT (Battery Info):** 328 328 329 -0x0 6:RU864324 +Ex1: 0x0CBA = 3258mV 330 330 331 -0x07: AS923 332 332 333 - 0x08:AS923-1327 +(% style="color:blue" %)**Signal Strength:** 334 334 335 - 0x09:AS923-2329 +NB-IoT Network signal Strength. 336 336 337 - 0x0a:AS923-3331 +**Ex1: 0x16 = 22** 338 338 339 -0 x0b:CN470333 +**0** -113dBm or less 340 340 341 - 0x0c:EU433335 +**1** -111dBm 342 342 343 -0 x0d:KR920337 +**2...30** -109dBm... -53dBm 344 344 345 - 0x0e:MA869339 +**31** -51dBm or greater 346 346 341 +**99** Not known or not detectable 347 347 348 -(% style="color:#037691" %)**Sub-Band**: 349 349 350 - AU915and US915:value0x00~~ 0x08344 +(% style="color:blue" %)**Temperature: ** 351 351 352 -CN470: value 0x0B ~~ 0x0C 353 - 354 -Other Bands: Always 0x00 355 - 356 - 357 -(% style="color:#037691" %)**Battery Info**: 358 - 359 -Check the battery voltage. 360 - 361 -Ex1: 0x0B45 = 2885mV 362 - 363 -Ex2: 0x0B49 = 2889mV 364 - 365 - 366 -=== 2.3.2 Sensor Data. FPORT~=2 === 367 - 368 - 369 -Sensor Data is uplink via FPORT=2 370 - 371 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %) 372 -|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)((( 373 -**Size(bytes)** 374 -)))|=(% 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 375 -|(% style="width:99px" %)Value|(% style="width:69px" %)((( 376 -Battery 377 -)))|(% style="width:130px" %)((( 378 -Unix TimeStamp 379 -)))|(% style="width:194px" %)((( 380 -Alarm Flag & MOD& Level of PA8 381 -)))|(% style="width:106px" %)((( 382 -Temperature 383 -)))|(% style="width:97px" %)((( 384 -Humidity 385 -))) 386 - 387 -[[image:image-20230524144456-2.png||height="180" width="1142"]] 388 - 389 - 390 -==== (% style="color:#4472c4" %)**Battery**(%%) ==== 391 - 392 -Sensor Battery Level. 393 - 394 -Ex1: 0x0B45 = 2885mV 395 - 396 -Ex2: 0x0B49 = 2889mV 397 - 398 - 399 -==== (% style="color:#4472c4" %)**Temperature**(%%) ==== 400 - 401 -**Example**: 402 - 403 403 If payload is: 0105H: (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree 404 404 405 405 If payload is: FF3FH : (FF3F & 8000 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees. 406 406 407 - (FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative)350 +(FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative) 408 408 409 409 410 - ====(% style="color:#4472c4" %)**Humidity**(%%) ====353 +(% style="color:blue" %)**Humidity: ** 411 411 355 +Read:0295(H)=661(D) Value: 661 / 10=66.1, So 66.1% 412 412 413 -Read:0x(0197)=412 Value: 412 / 10=41.2, So 41.2% 414 414 358 +(% style="color:blue" %)**TimeStamp: ** 415 415 416 - ====(% style="color:#4472c4" %)**AlarmFlag& MOD & Level of PA8**(%%)====360 +Unit TimeStamp Example: 64d49439(H) = 1691653177(D) 417 417 362 +Put the decimal value into this link(https:~/~/www.epochconverter.com/) to get the time. 418 418 419 -**Example:** 420 420 421 - If payload & 0x01=0x01**~-~->**This is anAlarm Message.It meansthat the temperature andhumidity exceed thealarm valueor triggeran interrupt.365 +=== 2.2.3 ThingsBoard Payload(Type~=3) === 422 422 423 -If payload & 0x01 = 0x00 **~-~->** This is a normal uplink message, no alarm. 424 424 425 - Ifpayload&0x80>>7=0x01 **~-~->**ThePA8islowlevel.368 +Type3 payload special design for ThingsBoard, it will also configure other default server to ThingsBoard. 426 426 427 - Ifpayload& 0x80>>7=0x00 **~-~->** ThePA8ishighlevel.370 +(% style="color:#4472c4" %)**{"IMEI":866207053462762,"temperature":29.2,"humidity":54.2,"battery":3.27,"signal":24}** 428 428 429 -If payload >> 2 = 0x00 **~-~->** means MOD=1, This is a sampling uplink message. 430 430 431 - If payload >> 2=0x31 **~-~->** means MOD=31,this message is a reply messagefor polling, this message contains the alarm settings. see [[this link>>path:#HPolltheAlarmsettings:]] fordetail.373 +=== 2.2.4 ThingSpeak Payload(Type~=1) === 432 432 433 433 434 - ==2.4 PayloadDecoder file==376 +This payload meets ThingSpeak platform requirement. It includes only four fields. Form 1~~4 are: 435 435 378 +Temperature, Humidity, Battery & Signal. This payload type only valid for ThingsSpeak Platform 436 436 437 - In TTN, usecan add a custom payload so it shows friendly reading380 +As below: 438 438 439 - In the page(% style="color:#037691" %)**Applications ~-~-> PayloadFormats ~-~-> Custom ~-~-> decoder**(%%) to add theecoder from:382 +(% style="color:#4472c4" %)**field1=27.9&field2=49.9&field3=3.23&field4=28** 440 440 441 -[[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]] 442 442 385 +== 2.3 Test Uplink and Change Update Interval == 443 443 444 -== 2.5 Datalog Feature == 445 445 388 +By default, Sensor will send uplinks (% style="color:blue" %)**every 2 hours**(%%) & AT+NOUD=8 446 446 447 - Datalog Feature istoensureIoT ServercangetallsamplingdatafromSensoreveniftheLoRaWANnetwork is down. Forachsampling,S31x-LB will store the reading for futureetrieving purposes.390 +User can use below commands to change the (% style="color:blue" %)**uplink interval**. 448 448 392 +(% style="color:#037691" %)**AT+TDC=600 ** (%%) ~/~/ Set Update Interval to 600s 449 449 450 - ===2.5.1Ways toget datalogviaLoRaWAN===394 +User can also push the button for more than 1 seconds to activate an uplink. 451 451 452 452 453 - Set [[PNACKMD=1>>||anchor="H2.5.4DatalogUplinkpayload28FPORT3D329"]],S31x-LB will wait for ACK for everyuplink, whenthereis no LoRaWAN network,S31x-LB will mark these records withnon-ack messages andstore the sensor data, and it will sendall messages (10sinterval) after the networkrecovery.397 +== 2.4 Multi-Samplings and One uplink == 454 454 455 -* ((( 456 -a) S31x-LB will do an ACK check for data records sending to make sure every data arrive server. 457 -))) 458 -* ((( 459 -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. 460 -))) 461 461 462 - Belowis the typicalcasefortheauto-update datalogfeature(SetPNACKMD=1)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: 463 463 464 - [[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"]]402 +* (% style="color:#037691" %)**AT+TR=900** (%%) ~/~/ The unit is seconds, and the default is to record data once every 900 seconds (15 minutes, the minimum can be set to 180 seconds) 465 465 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. 466 466 467 - ===2.5.2 UnixTimeStamp===406 +The diagram below explains the relationship between TR, NOUD, and TDC more clearly: 468 468 408 +[[image:1692424376354-959.png]] 469 469 470 -S31x-LB uses Unix TimeStamp format based on 471 471 472 - [[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"]]411 +== 2.5 Humidity and Temperature alarm function == 473 473 474 -User can get this time from link: [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] : 475 475 476 - Belowis theconverter example414 +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. 477 477 478 -[[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"]] 479 479 417 +(% style="color:blue" %)**AT Commands:** 480 480 481 - So,we can useAT+TIMESTAMP=1611889405or downlink 3060137afd00toset the current time 2021 – Jan ~-~- 29 Friday 03:03:25419 +(% style="color:#037691" %)**AT+ SHHUM=min,max** 482 482 421 +Example: AT+ SHHUM=50,80 ~/~/ Alarm when humidity lower than 50 or higher than 80. 483 483 484 -=== 2.5.3 Set Device Time === 485 485 424 +(% style="color:#037691" %)**AT+ SHTEMP=min,max** 486 486 487 - User need to set (% style="color:blue"%)**SYNCMOD=1**(%%)toenablesynctimeviaMACcommand.426 +Example: AT+ SHTEMP=20,30 ~/~/ Alarm when temperature lower than 20 or higher than 30 488 488 489 -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). 490 490 491 -(% style="color:red" %)**Not e: LoRaWAN Server need to support LoRaWAN v1.0.3(MAC v1.0.3) or higher to support this MACcommand 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.**429 +(% style="color:red" %)**Notice:** 492 492 431 +* To disable Alarm, user can set min and max to same value , such as (% style="color:#037691" %)**AT+SHTEMP=0,0.** 493 493 494 - ===2.5.4DatalogUplinkpayload(FPORT~=3)===433 +* If user only want to send only min or max, user can set the alarm to a value that device won’t reach. For example: (% style="color:#037691" %)**AT+SHTEMP=-80,0.** 495 495 496 496 497 -The Datalog uplinks will use below payload format. 498 498 499 - **Retrievaldata payload:**437 +== 2.6 Trggier an uplink by external interrupt == 500 500 501 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %) 502 -|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)((( 503 -**Size(bytes)** 504 -)))|=(% 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** 505 -|(% style="width:103px" %)Value|(% style="width:68px" %)((( 506 -ignore 507 -)))|(% style="width:104px" %)((( 508 -((( 509 -Humidity 510 -))) 511 511 512 -((( 513 - 514 -))) 515 -)))|(% style="width:87px" %)((( 516 -Temperature 517 -)))|(% style="width:178px" %)((( 518 -Poll message flag & Alarm Flag& Level of PA8 519 -)))|(% style="width:137px" %)Unix Time Stamp 440 +S31-NB has an external trigger interrupt function. Users can use the PB15 pin to trigger the upload of data packets. 520 520 521 - **Pollmessageflag & Alarm Flag & Levelof PA8:**442 +(% style="color:blue" %)**AT command:** 522 522 523 - [[image:image-20230524114302-1.png||height="115"width="736"]]444 +* (% style="color:#037691" %)**AT+INTMOD **(%%) ~/~/ Set the trigger interrupt mode 524 524 446 +* (% style="color:#037691" %)**AT+INTMOD=0 **(%%) ~/~/Disable Interrupt 525 525 526 -* *NoACKMessage**::This messagemeansthispayloadisfromn Uplink Messagewhich doesn'tget ACK from the server before ( for **PNACKMD=1** feature)448 +* (% style="color:#037691" %)**AT+INTMOD=1 **(%%) ~/~/Trigger by rising and falling edge 527 527 528 -* *PollMessageFlag**:1:This messageisapollmessagereply.450 +* (% style="color:#037691" %)**AT+INTMOD=2 **(%%) ~/~/Trigger by falling edge 529 529 530 -* PollMessageFlagisset to 1.452 +* (% style="color:#037691" %)**AT+INTMOD=3 **(%%) ~/~/Trigger by rising edge 531 531 532 -* Each data entry is 11 bytes, to save airtime and battery, devices will send max bytes according to the current DR and Frequency bands. 533 533 534 - Forexample,in US915 band, the max payloadfor differentDRis:455 += 3. Configure S31x-NB = 535 535 536 -**a) DR0:** max is 11 bytes so one entry of data 537 - 538 -**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes) 539 - 540 -**c) DR2:** total payload includes 11 entries of data 541 - 542 -**d) DR3: **total payload includes 22 entries of data. 543 - 544 -If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0 545 - 546 -**Example:** 547 - 548 -If S31x-LB has below data inside Flash: 549 - 550 -[[image:image-20230524114654-2.png]] 551 - 552 - 553 -If user sends below downlink command: 31646D84E1646D856C05 554 - 555 -Where : Start time: 646D84E1 = time 23/5/24 03:30:41 556 - 557 - Stop time: 646D856C= time 23/5/24 03:33:00 558 - 559 - 560 -**S31x-LB will uplink this payload.** 561 - 562 -[[image:image-20230524114826-3.png||height="448" width="1244"]] 563 - 564 -((( 565 -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 566 -))) 567 - 568 -((( 569 -Where the first 11 bytes is for the first entry: 570 -))) 571 - 572 -((( 573 -00 00 02 36 01 10 40 64 6D 84 E1 574 -))) 575 - 576 -((( 577 -**Hum**=0x0236/10=56.6 578 -))) 579 - 580 -((( 581 -**Temp**=0x0110/10=27.2 582 -))) 583 - 584 -((( 585 -**poll message flag & Alarm Flag & Level of PA8**=0x40,means reply data,sampling uplink message,the PA8 is low level. 586 -))) 587 - 588 -((( 589 -**Unix time** is 0x646D84E1=1684899041s=23/5/24 03:30:41 590 -))) 591 - 592 - 593 -(% 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="单击并拖动以调整大小" %)的 594 - 595 -== 2.6 Temperature Alarm Feature == 596 - 597 - 598 -S31x-LB work flow with Alarm feature. 599 - 600 - 601 -[[image:image-20230524110125-3.png||height="768" width="1115"]] 602 - 603 - 604 - 605 -== 2.7 Frequency Plans == 606 - 607 - 608 -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. 609 - 610 -[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]] 611 - 612 - 613 -== 2.8 Firmware Change Log == 614 - 615 - 616 -**Firmware download link: **[[https:~~/~~/www.dropbox.com/sh/fis3g6nmhv0eokg/AAC6BcCZaX4BdqZkduUvZ3jIa?dl=0>>https://www.dropbox.com/sh/fis3g6nmhv0eokg/AAC6BcCZaX4BdqZkduUvZ3jIa?dl=0]] 617 - 618 - 619 -= 3. Configure S31x-LB = 620 - 621 621 == 3.1 Configure Methods == 622 622 623 623 624 -S31x- LB supports below configure method:460 +S31x-NB supports below configure method: 625 625 626 626 * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]]. 463 + 627 627 * 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 + 628 628 * LoRaWAN Downlink. Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section. 629 629 468 + 630 630 == 3.2 General Commands == 631 631 632 632 ... ... @@ -895,4 +895,4 @@ 895 895 896 896 * 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]]. 897 897 898 -(% style="display:none" %) (%%) 737 +(% style="display:none" %) (%%)
- 1692424009971-458.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +147.4 KB - Content
- 1692424376354-959.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +146.1 KB - Content