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, 2 removed)
Details
- Page properties
-
- Content
-
... ... @@ -115,6 +115,8 @@ 115 115 * Smart Cities 116 116 * Smart Factory 117 117 118 + 119 + 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**136 +|=(% 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. ... ... @@ -192,7 +192,7 @@ 192 192 193 193 194 194 (% border="1" cellspacing="5" style="width:410px" %) 195 -|=(% 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 Info197 +|=(% style="width: 102px;background-color:#D9E2F3;color:#0070C0" %)Model|=(% style="width: 126px; background-color: rgb(217, 226, 243); color: rgb(0, 112, 192);" %)Photo|=(% style="width: 179px; background-color: rgb(217, 226, 243); color: rgb(0, 112, 192);" %)Probe Info 196 196 |(% style="width:102px" %)((( 197 197 S31-LB 198 198 )))|(% style="width:126px" %)((( ... ... @@ -234,237 +234,418 @@ 234 234 [[image:1692415924540-357.png]] 235 235 236 236 237 -There are two version: (% style="color:blue" %)**-GE**(%%)and(% style="color:blue" %)**-1D**(%%)version of S31-NB.239 +There are two version: **-GE** and **-1D** version of S31-NB. 238 238 239 239 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.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. 241 241 242 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]]. 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]]. 243 243 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 - 246 246 Below shows result of different server as a glance. 247 247 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" %) 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 +| | | 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 262 262 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 + 263 263 == 2.2 Payload Types == 264 264 265 265 266 - To meetdifferent server requirement,S31-NB supportsfferentpayloadtype.268 +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. 267 267 268 - **Includes:**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. 269 269 270 -* [[General JSON format payload>>path:#General_Json]]. (Type=5) 271 271 272 -* [[HEXformatPayload>>path:#HEX_Payload]].(Type=0)273 +(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from S31x-LB. 273 273 274 - *[[ThingSpeakFormat>>path:#ThingSpeak_Payload]].(Type=1)275 +Each S31x-LB is shipped with a sticker with the default device EUI as below: 275 275 276 - *[[ThingsBoard Format>>path:#ThingsBoard_Payload]].(Type=3)277 +[[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]] 277 277 278 -User can specify the payload type when choose the connection protocol. Example: 279 279 280 - (%style="color:#037691"%)**AT+PRO=2,0**(%%)~/~/ UseUDP Connection&hex Payload280 +You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot: 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 Payload283 +(% style="color:blue" %)**Register the device** 285 285 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) === 288 288 288 +(% style="color:blue" %)**Add APP EUI and DEV EUI** 289 289 290 - ThisistheGeneralJsonFormat. Asbelow: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"]] 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}}** 293 293 293 +(% style="color:blue" %)**Add APP EUI in the application** 294 294 295 -(% style="color:red" %)**Notice, from above payload:** 296 296 297 - *Temperature,Humidity, Battery & Signalreue atuplink time.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"]] 298 298 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. 300 300 301 - ===2.2.2 HEX formatPayload(Type~=0)===299 +(% style="color:blue" %)**Add APP KEY** 302 302 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"]] 303 303 304 -This is the HEX Format. As below: 305 305 306 -(% style="color: #4472c4" %)**f86620705346276200640cba16010000000011011801e864d49c2d011a01e364d49925011901eb64d49871011901e564d497bd011a01e664d49709011901e964d49655011a01e864d495a1011a01e864d494ed011801e864d49439**304 +(% style="color:blue" %)**Step 2:**(%%) Activate on S31x-LB 307 307 308 -[[image:1692424009971-458.png]] 309 309 307 +Press the button for 5 seconds to activate the S31x-LB. 310 310 311 -(% style="color:blue" %)** Version:**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 for 5 seconds after joined in network. 312 312 313 - These bytesinclude thehardware andsoftwareversion.311 +After join success, it will start to upload messages to TTN and you can see the messages in the panel. 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:**(%%) Specifythe software version: 0x64=100, meansfirmware version 100314 +== 2.3 Uplink Payload == 318 318 316 +=== 2.3.1 Device Status, FPORT~=5 === 319 319 320 -(% style="color:blue" %)**BAT (Battery Info):** 321 321 322 - Ex1:0x0CBA=3258mV319 +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. 323 323 321 +The Payload format is as below. 324 324 325 -(% style="color:blue" %)**Signal Strength:** 326 326 327 -NB-IoT Network signal Strength. 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 - **Ex1:0x16=22**329 +Example parse in TTNv3 330 330 331 - **0**-113dBmor less331 +[[image:image-20230524144422-1.png||height="174" width="1080"]] 332 332 333 -**1** -111dBm 334 334 335 - **2...30**-109dBm...-53dBm334 +(% style="color:#037691" %)**Sensor Model**(%%): For S31x-LB, this value is 0x0A 336 336 337 - **31**-51dBmor greater336 +(% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version 338 338 339 - **99**Notknownornot detectable338 +(% style="color:#037691" %)**Frequency Band**: 340 340 340 +0x01: EU868 341 341 342 - (% style="color:blue"%)**Temperature: **342 +0x02: US915 343 343 344 +0x03: IN865 345 + 346 +0x04: AU915 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 + 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)428 +(FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative) 349 349 350 350 431 +==== (% 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%434 +Read:0x(0197)=412 Value: 412 / 10=41.2, So 41.2% 355 355 356 356 357 -(% style="color: blue" %)**TimeStamp:**437 +==== (% 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.440 +**Example:** 362 362 442 +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)===444 +If payload & 0x01 = 0x00 **~-~->** This is a normal uplink message, no alarm. 365 365 446 +If payload & 0x80>>7 = 0x01 **~-~->** The PA8 is low level. 366 366 367 - Type3payloadspecialdesignforThingsBoard,itwill alsoconfigure otherdefault server to ThingsBoard.448 +If payload & 0x80>>7 =0x00 **~-~->** The PA8 is high level. 368 368 369 - (%style="color:#4472c4"%)**{"IMEI":866207053462762,"temperature":29.2,"humidity":54.2,"battery":3.27,"signal":24}**450 +If payload >> 2 = 0x00 **~-~->** means MOD=1, This is a sampling uplink message. 370 370 452 +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 -=== 2.2.4 ThingSpeak Payload(Type~=1) === 373 373 455 +== 2.4 Payload Decoder file == 374 374 375 -This payload meets ThingSpeak platform requirement. It includes only four fields. Form 1~~4 are: 376 376 377 -T emperature,Humidity,Battery&Signal.This payload typeonlyvalidfor ThingsSpeak Platform458 +In TTN, use can add a custom payload so it shows friendly reading 378 378 379 -As below:460 +In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from: 380 380 381 - (%style="color:#4472c4" %)**field1=27.9&field2=49.9&field3=3.23&field4=28**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]] 382 382 383 383 384 -== 2. 3TestUplinkand ChangeUpdateInterval==465 +== 2.5 Datalog Feature == 385 385 386 386 387 - Bydefault,Sensorwill senduplinks(%style="color:blue"%)**every2 hours**(%%)&AT+NOUD=8468 +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. 388 388 389 -User can use below commands to change the (% style="color:blue" %)**uplink interval**. 390 390 391 - (% style="color:#037691" %)**AT+TDC=600**(%%)~/~/ SetUpdateIntervalto600s471 +=== 2.5.1 Ways to get datalog via LoRaWAN === 392 392 393 -User can also push the button for more than 1 seconds to activate an uplink. 394 394 474 +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 396 -== 2.4 Multi-Samplings and One uplink == 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 +))) 397 397 483 +Below is the typical case for the auto-update datalog feature (Set PNACKMD=1) 398 398 399 - To savebattery life, S31-NBwillsampletemperature& humiditydataevery 15 minutesd sendoneuplinkevery2hours.So each uplink itwill include 8 stored data +1-time data.Theyare definedby: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"]] 400 400 401 -* (% 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) 402 402 403 - * (% style="color:#037691" %)**AT+NOUD=8**(%%)~/~/ The device uploads 8 sets of recorded data by default. Upto 32 sets of record data can be uploaded.488 +=== 2.5.2 Unix TimeStamp === 404 404 405 -The diagram below explains the relationship between TR, NOUD, and TDC more clearly: 406 406 407 - [[image:1692424376354-959.png]]491 +S31x-LB uses Unix TimeStamp format based on 408 408 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"]] 409 409 410 - ==2.5HumidityandTemperaturealarmfunction==495 +User can get this time from link: [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] : 411 411 497 +Below is the converter example 412 412 413 - On eachsamplingdefineby AT+TR ( default 900sor15 minutes), when thevalueexceedhege,itwilltriggern Alarm andimmediatelysends a uplink.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"]] 414 414 415 415 416 - (%style="color:blue"%)**ATCommands:**502 +So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25 417 417 418 -(% style="color:#037691" %)**AT+ SHHUM=min,max** 419 419 420 - Example: AT+ SHHUM=50,80~/~/ Alarm when humiditylowerthan 50 or higherthan 80.505 +=== 2.5.3 Set Device Time === 421 421 422 422 423 -(% style="color: #037691" %)**AT+SHTEMP=min,max**508 +User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command. 424 424 425 - Example:AT+SHTEMP=20,30~/~/Alarmwhen temperature lower than20orhigher than30510 +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). 426 426 512 +(% 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 -(% style="color:red" %)**Notice:** 429 429 430 - *TodisableAlarm, user can set min and max tosamevalue , such as(% style="color:#037691" %)**AT+SHTEMP=0,0.**515 +=== 2.5.4 Datalog Uplink payload (FPORT~=3) === 431 431 432 -* 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.** 433 433 518 +The Datalog uplinks will use below payload format. 434 434 520 +**Retrieval data payload:** 435 435 436 -== 2.6 Trggier an uplink by external interrupt == 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 +))) 437 437 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 438 438 439 - S31-NBhasn external triggerinterruptfunction.UserscanusethePB15 pin to trigger the uploadofdata packets.542 +**Poll message flag & Alarm Flag & Level of PA8:** 440 440 441 - (% style="color:blue" %)**AT command:**544 +[[image:image-20230524114302-1.png||height="115" width="736"]] 442 442 443 -* (% style="color:#037691" %)**AT+INTMOD **(%%) ~/~/ Set the trigger interrupt mode 444 444 445 -* (%style="color:#037691"%)**AT+INTMOD=0**(%%)~/~/DisableInterrupt547 +**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) 446 446 447 -* (% style="color:#037691"%)**AT+INTMOD=1**(%%)~/~/Triggerby risingandfallingedge549 +**Poll Message Flag**: 1: This message is a poll message reply. 448 448 449 -* (% style="color:#037691"%)**AT+INTMOD=2 **(%%) ~/~/Triggerby falling edge551 +* Poll Message Flag is set to 1. 450 450 451 -* (%style="color:#037691"%)**AT+INTMOD=3**(%%)~/~/Triggerbyrisingedge553 +* Each data entry is 11 bytes, to save airtime and battery, devices will send max bytes according to the current DR and Frequency bands. 452 452 555 +For example, in US915 band, the max payload for different DR is: 453 453 454 - =3.ConfigureS31x-NB=557 +**a) DR0:** max is 11 bytes so one entry of data 455 455 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 + 456 456 == 3.1 Configure Methods == 457 457 458 458 459 -S31x- NB supports below configure method:645 +S31x-LB supports below configure method: 460 460 461 461 * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]]. 462 - 463 463 * 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]]. 464 - 465 465 * LoRaWAN Downlink. Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section. 466 466 467 - 468 468 == 3.2 General Commands == 469 469 470 470 ... ... @@ -733,4 +733,4 @@ 733 733 734 734 * 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]]. 735 735 736 -(% style="display:none" %) 919 +(% style="display:none" %) (%%)
- 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