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. ... ... @@ -194,7 +194,7 @@ 194 194 195 195 196 196 (% border="1" cellspacing="5" style="width:410px" %) 197 -|=(% 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 198 198 |(% style="width:102px" %)((( 199 199 S31-LB 200 200 )))|(% style="width:126px" %)((( ... ... @@ -236,418 +236,238 @@ 236 236 [[image:1692415924540-357.png]] 237 237 238 238 239 -There are two version: **-GE** and **-1D** version of S31-NB. 237 +There are two version: (% style="color:blue" %)**-GE**(%%) and (% style="color:blue" %)**-1D**(%%) version of S31-NB. 240 240 241 241 242 -**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. 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. 243 243 244 244 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]]. 245 -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]]. 246 246 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]]. 245 + 247 247 Below shows result of different server as a glance. 248 248 249 249 250 -|**Servers**|**Dash Board**|**Comments** 251 -|[[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]]|[[image:image-20230819113244-8.png]]| 252 -|[[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]]|[[image:image-20230819113244-9.png]]| 253 -|[[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]]| | 254 -|[[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]]|Raw Payload. Need Developer to design Dash Board| 255 -|[[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]]|Raw Payload. Need Developer to design Dash Board| 256 -|[[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]]|[[image:image-20230819113244-10.png]]| 257 -|[[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]]|[[image:image-20230819113244-11.png]]| 258 -| | | 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" %) 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]]. 260 260 261 261 262 -**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 - 264 - 265 265 == 2.2 Payload Types == 266 266 267 267 268 - Followingis an examplefor howtojoin the[[TTN v3 LoRaWAN Network>>url:https://console.cloud.thethings.network/]].Below isthenetworkstructure; weusethe[[LPS8v2>>url:https://www.dragino.com/products/lora-lorawan-gateway/item/228-lps8v2.html]] as a LoRaWANgatewayin this example.266 +To meet different server requirement, S31-NB supports different payload type. 269 269 270 - 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.268 +**Includes:** 271 271 270 +* [[General JSON format payload>>path:#General_Json]]. (Type=5) 272 272 273 - (% style="color:blue" %)**Step1:**(%%)Createaevice in TTN withthe OTAA keys from S31x-LB.272 +* [[HEX format Payload>>path:#HEX_Payload]]. (Type=0) 274 274 275 - EachS31x-LB is shipped withastickerwiththedefaultdeviceEUI as below:274 +* [[ThingSpeak Format>>path:#ThingSpeak_Payload]]. (Type=1) 276 276 277 -[[i mage:image-20230426084152-1.png||alt="图片-20230426084152-1.png"height="233" width="502"]]276 +* [[ThingsBoard Format>>path:#ThingsBoard_Payload]]. (Type=3) 278 278 278 +User can specify the payload type when choose the connection protocol. Example: 279 279 280 - Youcan enterthiskeyintheLoRaWANServerportal.BelowisTTNscreenshot: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" %)**Registerthedevice**284 +(% style="color:#037691" %)**AT+PRO=3,5 ** (%%) ~/~/ Use MQTT Connection & Json Payload 284 284 285 -[[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"]] 286 286 287 +=== 2.2.1 General Json Format (Type~=5) === 287 287 288 -(% style="color:blue" %)**Add APP EUI and DEV EUI** 289 289 290 - [[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"]]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 -(% style="color:blue" %)**Add APP EUI in the application** 294 294 295 +(% style="color:red" %)**Notice, from above payload:** 295 295 296 - [[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"]]297 +* Temperature , Humidity , Battery & Signal are the value at uplink time. 297 297 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. 298 298 299 -(% style="color:blue" %)**Add APP KEY** 300 300 301 -[[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"]] 302 302 303 +=== 2.2.2 HEX format Payload(Type~=0) === 303 303 304 -(% style="color:blue" %)**Step 2:**(%%) Activate on S31x-LB 305 305 306 +This is the HEX Format. As below: 306 306 307 - Pressthebutton for 5seconds toactivatetheS31x-LB.308 +(% style="color:#4472c4" %)**f86620705346276200640cba16010000000011011801e864d49c2d011a01e364d49925011901eb64d49871011901e564d497bd011a01e664d49709011901e964d49655011a01e864d495a1011a01e864d494ed011801e864d49439** 308 308 309 - (% 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 for5seconds after joined in network.310 +[[image:1692424009971-458.png]] 310 310 311 -After join success, it will start to upload messages to TTN and you can see the messages in the panel. 312 312 313 +(% style="color:blue" %)**Version:** 313 313 314 - ==2.3UplinkPayload==315 +These bytes include the hardware and software version. 315 315 316 - ===2.3.1DeviceStatus,FPORT~=5===317 +(% style="color:#037691" %)**Higher byte:**(%%) Specify Sensor Model: 0x00 for S31B-NB & S31-NB 317 317 319 +(% style="color:#037691" %)**Lower byte:**(%%) Specify the software version: 0x64=100, means firmware version 100 318 318 319 -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. 320 320 321 - ThePayload formatisas below.322 +(% style="color:blue" %)**BAT (Battery Info):** 322 322 324 +Ex1: 0x0CBA = 3258mV 323 323 324 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 325 -|(% colspan="6" style="background-color:#d9e2f3; color:#0070c0" %)**Device Status (FPORT=5)** 326 -|(% style="width:103px" %)**Size (bytes)**|(% style="width:72px" %)**1**|**2**|(% style="width:91px" %)**1**|(% style="width:86px" %)**1**|(% style="width:44px" %)**2** 327 -|(% 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 328 328 329 - Exampleparse inTTNv3327 +(% style="color:blue" %)**Signal Strength:** 330 330 331 - [[image:image-20230524144422-1.png||height="174" width="1080"]]329 +NB-IoT Network signal Strength. 332 332 331 +**Ex1: 0x16 = 22** 333 333 334 - (% style="color:#037691" %)**Sensor Model**(%%):ForS31x-LB,thisvalueis0x0A333 +**0** -113dBm or less 335 335 336 - (% style="color:#037691" %)**Firmware Version**(%%):0x0100,Means:v1.0.0version335 +**1** -111dBm 337 337 338 - (% style="color:#037691" %)**FrequencyBand**:337 +**2...30** -109dBm... -53dBm 339 339 340 - 0x01:EU868339 +**31** -51dBm or greater 341 341 342 - 0x02: US915341 +**99** Not known or not detectable 343 343 344 -0x03: IN865 345 345 346 - 0x04:AU915344 +(% style="color:blue" %)**Temperature: ** 347 347 348 -0x05: KZ865 349 - 350 -0x06: RU864 351 - 352 -0x07: AS923 353 - 354 -0x08: AS923-1 355 - 356 -0x09: AS923-2 357 - 358 -0x0a: AS923-3 359 - 360 -0x0b: CN470 361 - 362 -0x0c: EU433 363 - 364 -0x0d: KR920 365 - 366 -0x0e: MA869 367 - 368 - 369 -(% style="color:#037691" %)**Sub-Band**: 370 - 371 -AU915 and US915:value 0x00 ~~ 0x08 372 - 373 -CN470: value 0x0B ~~ 0x0C 374 - 375 -Other Bands: Always 0x00 376 - 377 - 378 -(% style="color:#037691" %)**Battery Info**: 379 - 380 -Check the battery voltage. 381 - 382 -Ex1: 0x0B45 = 2885mV 383 - 384 -Ex2: 0x0B49 = 2889mV 385 - 386 - 387 -=== 2.3.2 Sensor Data. FPORT~=2 === 388 - 389 - 390 -Sensor Data is uplink via FPORT=2 391 - 392 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %) 393 -|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)((( 394 -**Size(bytes)** 395 -)))|=(% 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 396 -|(% style="width:99px" %)Value|(% style="width:69px" %)((( 397 -Battery 398 -)))|(% style="width:130px" %)((( 399 -Unix TimeStamp 400 -)))|(% style="width:194px" %)((( 401 -Alarm Flag & MOD& Level of PA8 402 -)))|(% style="width:106px" %)((( 403 -Temperature 404 -)))|(% style="width:97px" %)((( 405 -Humidity 406 -))) 407 - 408 -[[image:image-20230524144456-2.png||height="180" width="1142"]] 409 - 410 - 411 -==== (% style="color:#4472c4" %)**Battery**(%%) ==== 412 - 413 -Sensor Battery Level. 414 - 415 -Ex1: 0x0B45 = 2885mV 416 - 417 -Ex2: 0x0B49 = 2889mV 418 - 419 - 420 -==== (% style="color:#4472c4" %)**Temperature**(%%) ==== 421 - 422 -**Example**: 423 - 424 424 If payload is: 0105H: (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree 425 425 426 426 If payload is: FF3FH : (FF3F & 8000 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees. 427 427 428 - (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) 429 429 430 430 431 - ====(% style="color:#4472c4" %)**Humidity**(%%) ====353 +(% style="color:blue" %)**Humidity: ** 432 432 355 +Read:0295(H)=661(D) Value: 661 / 10=66.1, So 66.1% 433 433 434 -Read:0x(0197)=412 Value: 412 / 10=41.2, So 41.2% 435 435 358 +(% style="color:blue" %)**TimeStamp: ** 436 436 437 - ====(% style="color:#4472c4" %)**AlarmFlag& MOD & Level of PA8**(%%)====360 +Unit TimeStamp Example: 64d49439(H) = 1691653177(D) 438 438 362 +Put the decimal value into this link(https:~/~/www.epochconverter.com/) to get the time. 439 439 440 -**Example:** 441 441 442 - 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) === 443 443 444 -If payload & 0x01 = 0x00 **~-~->** This is a normal uplink message, no alarm. 445 445 446 - Ifpayload&0x80>>7=0x01 **~-~->**ThePA8islowlevel.368 +Type3 payload special design for ThingsBoard, it will also configure other default server to ThingsBoard. 447 447 448 - Ifpayload& 0x80>>7=0x00 **~-~->** ThePA8ishighlevel.370 +(% style="color:#4472c4" %)**{"IMEI":866207053462762,"temperature":29.2,"humidity":54.2,"battery":3.27,"signal":24}** 449 449 450 -If payload >> 2 = 0x00 **~-~->** means MOD=1, This is a sampling uplink message. 451 451 452 - 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) === 453 453 454 454 455 - ==2.4 PayloadDecoder file==376 +This payload meets ThingSpeak platform requirement. It includes only four fields. Form 1~~4 are: 456 456 378 +Temperature, Humidity, Battery & Signal. This payload type only valid for ThingsSpeak Platform 457 457 458 - In TTN, usecan add a custom payload so it shows friendly reading380 +As below: 459 459 460 - 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** 461 461 462 -[[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]] 463 463 385 +== 2.3 Test Uplink and Change Update Interval == 464 464 465 -== 2.5 Datalog Feature == 466 466 388 +By default, Sensor will send uplinks (% style="color:blue" %)**every 2 hours**(%%) & AT+NOUD=8 467 467 468 - 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**. 469 469 392 +(% style="color:#037691" %)**AT+TDC=600 ** (%%) ~/~/ Set Update Interval to 600s 470 470 471 - ===2.5.1Ways toget datalogviaLoRaWAN===394 +User can also push the button for more than 1 seconds to activate an uplink. 472 472 473 473 474 - 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 == 475 475 476 -* ((( 477 -a) S31x-LB will do an ACK check for data records sending to make sure every data arrive server. 478 -))) 479 -* ((( 480 -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. 481 -))) 482 482 483 - 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: 484 484 485 - [[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) 486 486 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. 487 487 488 - ===2.5.2 UnixTimeStamp===406 +The diagram below explains the relationship between TR, NOUD, and TDC more clearly: 489 489 408 +[[image:1692424376354-959.png]] 490 490 491 -S31x-LB uses Unix TimeStamp format based on 492 492 493 - [[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 == 494 494 495 -User can get this time from link: [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] : 496 496 497 - 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. 498 498 499 -[[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"]] 500 500 417 +(% style="color:blue" %)**AT Commands:** 501 501 502 - 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** 503 503 421 +Example: AT+ SHHUM=50,80 ~/~/ Alarm when humidity lower than 50 or higher than 80. 504 504 505 -=== 2.5.3 Set Device Time === 506 506 424 +(% style="color:#037691" %)**AT+ SHTEMP=min,max** 507 507 508 - 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 509 509 510 -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). 511 511 512 -(% 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:** 513 513 431 +* To disable Alarm, user can set min and max to same value , such as (% style="color:#037691" %)**AT+SHTEMP=0,0.** 514 514 515 - ===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.** 516 516 517 517 518 -The Datalog uplinks will use below payload format. 519 519 520 - **Retrievaldata payload:**437 +== 2.6 Trggier an uplink by external interrupt == 521 521 522 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %) 523 -|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)((( 524 -**Size(bytes)** 525 -)))|=(% 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** 526 -|(% style="width:103px" %)Value|(% style="width:68px" %)((( 527 -ignore 528 -)))|(% style="width:104px" %)((( 529 -((( 530 -Humidity 531 -))) 532 532 533 -((( 534 - 535 -))) 536 -)))|(% style="width:87px" %)((( 537 -Temperature 538 -)))|(% style="width:178px" %)((( 539 -Poll message flag & Alarm Flag& Level of PA8 540 -)))|(% 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. 541 541 542 - **Pollmessageflag & Alarm Flag & Levelof PA8:**442 +(% style="color:blue" %)**AT command:** 543 543 544 - [[image:image-20230524114302-1.png||height="115"width="736"]]444 +* (% style="color:#037691" %)**AT+INTMOD **(%%) ~/~/ Set the trigger interrupt mode 545 545 446 +* (% style="color:#037691" %)**AT+INTMOD=0 **(%%) ~/~/Disable Interrupt 546 546 547 -* *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 548 548 549 -* *PollMessageFlag**:1:This messageisapollmessagereply.450 +* (% style="color:#037691" %)**AT+INTMOD=2 **(%%) ~/~/Trigger by falling edge 550 550 551 -* PollMessageFlagisset to 1.452 +* (% style="color:#037691" %)**AT+INTMOD=3 **(%%) ~/~/Trigger by rising edge 552 552 553 -* Each data entry is 11 bytes, to save airtime and battery, devices will send max bytes according to the current DR and Frequency bands. 554 554 555 - Forexample,in US915 band, the max payloadfor differentDRis:455 += 3. Configure S31x-NB = 556 556 557 -**a) DR0:** max is 11 bytes so one entry of data 558 - 559 -**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes) 560 - 561 -**c) DR2:** total payload includes 11 entries of data 562 - 563 -**d) DR3: **total payload includes 22 entries of data. 564 - 565 -If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0 566 - 567 -**Example:** 568 - 569 -If S31x-LB has below data inside Flash: 570 - 571 -[[image:image-20230524114654-2.png]] 572 - 573 - 574 -If user sends below downlink command: 31646D84E1646D856C05 575 - 576 -Where : Start time: 646D84E1 = time 23/5/24 03:30:41 577 - 578 - Stop time: 646D856C= time 23/5/24 03:33:00 579 - 580 - 581 -**S31x-LB will uplink this payload.** 582 - 583 -[[image:image-20230524114826-3.png||height="448" width="1244"]] 584 - 585 -((( 586 -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 587 -))) 588 - 589 -((( 590 -Where the first 11 bytes is for the first entry: 591 -))) 592 - 593 -((( 594 -00 00 02 36 01 10 40 64 6D 84 E1 595 -))) 596 - 597 -((( 598 -**Hum**=0x0236/10=56.6 599 -))) 600 - 601 -((( 602 -**Temp**=0x0110/10=27.2 603 -))) 604 - 605 -((( 606 -**poll message flag & Alarm Flag & Level of PA8**=0x40,means reply data,sampling uplink message,the PA8 is low level. 607 -))) 608 - 609 -((( 610 -**Unix time** is 0x646D84E1=1684899041s=23/5/24 03:30:41 611 -))) 612 - 613 - 614 -(% 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="单击并拖动以调整大小" %)的 615 - 616 -== 2.6 Temperature Alarm Feature == 617 - 618 - 619 -S31x-LB work flow with Alarm feature. 620 - 621 - 622 -[[image:image-20230524110125-3.png||height="768" width="1115"]] 623 - 624 - 625 - 626 -== 2.7 Frequency Plans == 627 - 628 - 629 -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. 630 - 631 -[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]] 632 - 633 - 634 -== 2.8 Firmware Change Log == 635 - 636 - 637 -**Firmware download link: **[[https:~~/~~/www.dropbox.com/sh/fis3g6nmhv0eokg/AAC6BcCZaX4BdqZkduUvZ3jIa?dl=0>>https://www.dropbox.com/sh/fis3g6nmhv0eokg/AAC6BcCZaX4BdqZkduUvZ3jIa?dl=0]] 638 - 639 - 640 -= 3. Configure S31x-LB = 641 - 642 642 == 3.1 Configure Methods == 643 643 644 644 645 -S31x- LB supports below configure method:460 +S31x-NB supports below configure method: 646 646 647 647 * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]]. 463 + 648 648 * 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 + 649 649 * LoRaWAN Downlink. Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section. 650 650 468 + 651 651 == 3.2 General Commands == 652 652 653 653 ... ... @@ -916,4 +916,4 @@ 916 916 917 917 * 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]]. 918 918 919 -(% 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