Changes for page wiki_test

Last modified by Mengting Qiu on 2024/09/05 17:35

From version 80.2
edited by Xiaoling
on 2023/08/19 11:33
Change comment: There is no comment for this version
To version 80.10
edited by Xiaoling
on 2023/08/19 13:41
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -116,7 +116,6 @@
116 116  * Smart Factory
117 117  
118 118  
119 -
120 120  == 1.5 Sleep mode and working mode ==
121 121  
122 122  
... ... @@ -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); color: rgb(0, 112, 192);" %)Photo|=(% style="width: 179px; background-color: rgb(217, 226, 243); color: rgb(0, 112, 192);" %)Probe Info
196 +|=(% 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,260 @@
236 236  [[image:1692415924540-357.png]]
237 237  
238 238  
239 -There are two version: **-GE** and **-1D** version of S31-NB.
238 +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.
241 +(% 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  
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 +
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 -| | |
250 +(% border="1" cellspacing="4" style="width:515px" %)
251 +|(% style="width:100px;background-color:#4F81BD;color:white" %)**Servers**|(% style="width:300px;background-color:#4F81BD;color:white" %)**Dash Board**|(% style="width:115px;background-color:#4F81BD;color:white" %)**Comments**
252 +|(% 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" %)
253 +|(% 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" %)
254 +|(% 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" %)
255 +|(% 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" %)
256 +|(% 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" %)
257 +|(% 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" %)
258 +|(% 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" %)
259 +|(% style="width:127px" %) |(% style="width:385px" %) |(% style="width:170px" %)
259 259  
260 260  
262 +(% 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 -**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 -
265 265  == 2.2 ​Payload Types ==
266 266  
267 267  
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.
268 +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.
270 +Includes:
271 271  
272 +* [[General JSON format payload>>path:#General_Json]]. (Type=5)
272 272  
273 -(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from S31x-LB.
274 +* [[HEX format Payload>>path:#HEX_Payload]]. (Type=0)
274 274  
275 -Each S31x-LB is shipped with a sticker with the default device EUI as below:
276 +* [[ThingSpeak Format>>path:#ThingSpeak_Payload]]. (Type=1)
276 276  
277 -[[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]]
278 +* [[ThingsBoard Format>>path:#ThingsBoard_Payload]]. (Type=3)
278 278  
280 +User can specify the payload type when choose the connection protocol. Example:
279 279  
280 -You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
282 +(% style="color:#037691" %)**AT+PRO=2,0**  (%%) ~/~/Use UDP Connection & hex Payload
281 281  
284 +(% style="color:#037691" %)**AT+PRO=2,5**   (%%) ~/~/ Use UDP Connection & Json Payload
282 282  
283 -(% style="color:blue" %)**Register the device**
286 +(% 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  
289 +=== 2.2.1 General Json Format (Type ===
287 287  
288 -(% style="color:blue" %)**Add APP EUI and DEV EUI**
291 +5) ===
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"]]
293 +This is the General Json Format. As below:
291 291  
292 292  
293 -(% style="color:blue" %)**Add APP EUI in the application**
296 +(% 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}}**
294 294  
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 297  
300 +(% style="color:red" %)Notice, from above payload:
298 298  
299 -(% style="color:blue" %)**Add APP KEY**
302 +* Temperature , Humidity , Battery & Signal are the value at uplink time.
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"]]
304 +* 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.
302 302  
303 303  
304 -(% style="color:blue" %)**Step 2:**(%%) Activate on S31x-LB
305 305  
308 +=== 2.2.2 HEX format Payload(Type ===
306 306  
307 -Press the button for 5 seconds to activate the S31x-LB.
310 +0) ===
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 for 5 seconds after joined in network.
310 310  
311 -After join success, it will start to upload messages to TTN and you can see the messages in the panel.
313 +This is the HEX Format. As below:
312 312  
315 +(% style="color:#4472c4" %)**f86620705346276200640cba16010000000011011801e864d49c2d011a01e364d49925011901eb64d49871011901e564d497bd011a01e664d49709011901e964d49655011a01e864d495a1011a01e864d494ed011801e864d49439**
313 313  
314 -== 2.3 ​Uplink Payload ==
315 315  
316 -=== 2.3.1 Device Status, FPORT~=5 ===
318 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png]]
317 317  
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.
321 +(% style="color:blue" %)**Version:**
320 320  
321 -The Payload format is as below.
323 +These bytes include the hardware and software version.
322 322  
325 +(% style="color:#037691" %)**Higher byte:**(%%) Specify Sensor Model: 0x00 for S31B-NB & S31-NB
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
327 +(% style="color:#037691" %)**Lower byte:**(%%) Specify the software version: 0x64=100, means firmware version 100
328 328  
329 -Example parse in TTNv3
330 330  
331 -[[image:image-20230524144422-1.png||height="174" width="1080"]]
330 +(% style="color:#037691" %)**BAT (Battery Info):**
332 332  
332 +Ex1: 0x0CBA = 3258mV
333 333  
334 -(% style="color:#037691" %)**Sensor Model**(%%): For S31x-LB, this value is 0x0A
335 335  
336 -(% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
335 +(% style="color:blue" %)**Signal Strength:**
337 337  
338 -(% style="color:#037691" %)**Frequency Band**:
337 +NB-IoT Network signal Strength.
339 339  
340 -0x01: EU868
339 +**Ex1: 0x16 = 22**
341 341  
342 -0x02: US915
341 +**0**  -113dBm or less
343 343  
344 -0x03: IN865
343 +**1**  -111dBm
345 345  
346 -0x04: AU915
345 +**2...30** -109dBm... -53dBm
347 347  
348 -0x05: KZ865
347 +**31**   -51dBm or greater
349 349  
350 -0x06: RU864
349 +**99**    Not known or not detectable
351 351  
352 -0x07: AS923
353 353  
354 -0x08: AS923-1
352 +(% style="color:blue" %)**Temperature: **
355 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
358 +(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**(%%) ====
432 432  
362 +(% style="color:blue" %)**Humidity:   **
433 433  
434 -Read:0x(0197)=412    Value:  412 / 10=41.2, So 41.2%
364 +Read:0295(H)=661(D)    Value:  661 / 10=66.1, So 66.1%
435 435  
436 436  
437 -==== (% style="color:#4472c4" %)**Alarm Flag & MOD & Level of PA8**(%%) ====
367 +(% style="color:blue" %)**TimeStamp:   **
438 438  
369 +Unit TimeStamp Example: 64d49439(H) = 1691653177(D)
439 439  
440 -**Example:**
371 +Put the decimal value into this link(https:~/~/www.epochconverter.com/) to get the time.
441 441  
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.
443 443  
444 -If payload & 0x01 = 0x00  **~-~->** This is a normal uplink message, no alarm.
374 +=== 2.2.3 ThingsBoard Payload(Type ===
445 445  
446 -If payload & 0x80>>7 = 0x01  **~-~->** The PA8 is low level.
376 +3) ===
447 447  
448 -If payload & 0x80>>7 =0x00  **~-~->** The PA8 is high level.
378 +Type3 payload special design for ThingsBoard, it will also configure other default server to ThingsBoard.
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 message for polling, this message contains the alarm settings. see [[this link>>path:#HPolltheAlarmsettings:]] for detail
381 +(% style="color:#4472c4" %)**{"IMEI":866207053462762,"temperature":29.2,"humidity":54.2,"battery":3.27,"signal":24}**
453 453  
454 454  
455 -== 2.4 Payload Decoder file ==
384 +=== 2.2.4 ThingSpeak Payload(Type ===
456 456  
386 +1) ===
457 457  
458 -In TTN, use can add a custom payload so it shows friendly reading
388 +This payload meets ThingSpeak platform requirement. It includes only four fields. Form 1~~4 are:
459 459  
460 -In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from:
390 +Temperature, Humidity, Battery & Signal. This payload type only valid for ThingsSpeak Platform
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  
393 +As below:
464 464  
465 -== 2.5 Datalog Feature ==
395 +(% style="color:#4472c4" %)**field1=27.9&field2=49.9&field3=3.23&field4=28**
466 466  
467 467  
468 -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.
398 +== 2.3 Test Uplink and Change Update Interval ==
469 469  
470 470  
471 -=== 2.5.1 Ways to get datalog via LoRaWAN ===
401 +By default, Sensor will send uplinks (% style="color:blue" %)**every 2 hours**(%%) & AT+NOUD=8
472 472  
473 473  
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.
404 +User can use below commands to change the (% style="color:blue" %)**uplink interval**.
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 -)))
406 +(% style="color:#037691" %)** AT+TDC=600      ** (%%) ~/~/ Set Update Interval to 600s
482 482  
483 -Below is the typical case for the auto-update datalog feature (Set PNACKMD=1)
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"]]
409 +User can also push the button for more than 1 seconds to activate an uplink.
486 486  
487 487  
488 -=== 2.5.2 Unix TimeStamp ===
489 489  
490 490  
491 -S31x-LB uses Unix TimeStamp format based on
414 +== 2.4 Multi-Samplings and One uplink ==
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"]]
494 494  
495 -User can get this time from link [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] :
417 +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:
496 496  
497 -Below is the converter example
419 +* (% 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)
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"]]
421 +* (% 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.
500 500  
423 +The diagram below explains the relationship between TR, NOUD, and TDC more clearly:
501 501  
502 -So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25
425 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png||alt="IMG_256"]]
503 503  
504 504  
505 -=== 2.5.3 Set Device Time ===
428 +== 2.5 Humidity and Temperature alarm function ==
506 506  
507 507  
508 -User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command.
431 +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.
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" %)**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.**
434 +(% style="color:blue" %)**AT Commands:**
513 513  
436 +(% style="color:#037691" %)**AT+ SHHUM=min,max**
514 514  
515 -=== 2.5.4 Datalog Uplink payload (FPORT~=3) ===
438 +Example: AT+ SHHUM=50,80 ~/~/ Alarm when humidity lower than 50 or higher than 80.
516 516  
517 517  
518 -The Datalog uplinks will use below payload format.
441 +(% style="color:#037691" %)**AT+ SHTEMP=min,max**
519 519  
520 -**Retrieval data payload:**
443 +Example: AT+ SHTEMP=20,30 ~/~/ Alarm when temperature lower than 20 or higher than 30
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
446 +(% style="color:red" %)**Notice:**
541 541  
542 -**Poll message flag & Alarm Flag & Level of PA8:**
448 +* To disable Alarm, user can set min and max to same value , such as (% style="color:#037691" %)**AT+SHTEMP=0,0.**
543 543  
544 -[[image:image-20230524114302-1.png||height="115" width="736"]]
450 +* 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.**
545 545  
546 546  
547 -**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)
548 548  
549 -**Poll Message Flag**: 1: This message is a poll message reply.
550 550  
551 -* Poll Message Flag is set to 1.
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.
456 +== 2.6 Trggier an uplink by external interrupt ==
554 554  
555 -For example, in US915 band, the max payload for different DR is:
556 556  
557 -**a) DR0:** max is 11 bytes so one entry of data
459 +S31-NB has an external trigger interrupt function. Users can use the PB15 pin to trigger the upload of data packets.
558 558  
559 -**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
461 +(% style="color:blue" %)**AT command:**
560 560  
561 -**c) DR2:** total payload includes 11 entries of data
463 +* (% style="color:#037691" %)**AT+INTMOD **(%%) ~/~/ Set the trigger interrupt mode
562 562  
563 -**d) DR3: **total payload includes 22 entries of data.
465 +* (% style="color:#037691" %)**AT+INTMOD=0 **(%%) ~/~/Disable Interrupt
564 564  
565 -If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0   
467 +* (% style="color:#037691" %)**AT+INTMOD=1 **(%%) ~/~/Trigger by rising and falling edge
566 566  
567 -**Example:**
469 +* (% style="color:#037691" %)**AT+INTMOD=2 **(%%) ~/~/Trigger by falling edge
568 568  
569 -If S31x-LB has below data inside Flash:
471 +* (% style="color:#037691" %)**AT+INTMOD=3  **(%%) ~/~/Trigger by rising edge
570 570  
571 -[[image:image-20230524114654-2.png]]
572 572  
573 573  
574 -If user sends below downlink command: 31646D84E1646D856C05
575 575  
576 -Where : Start time: 646D84E1 = time 23/5/24 03:30:41
476 += 3. Configure S31x-NB =
577 577  
578 - Stop time: 646D856C= time 23/5/24 03:33:00
478 +== 3.1 Configure Methods ==
579 579  
580 580  
581 -**S31x-LB will uplink this payload.**
481 +S31x-NB supports below configure method:
582 582  
583 -[[image:image-20230524114826-3.png||height="448" width="1244"]]
483 +* AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
584 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 -)))
485 +* 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]].
588 588  
589 -(((
590 -Where the first 11 bytes is for the first entry:
591 -)))
487 +* LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
592 592  
593 -(((
594 -00 00 02 36 01 10 40 64 6D 84 E1
595 -)))
596 596  
597 -(((
598 -**Hum**=0x0236/10=56.6
599 -)))
600 600  
601 -(((
602 -**Temp**=0x0110/10=27.2
603 -)))
604 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 -== 3.1 Configure Methods ==
643 -
644 -
645 -S31x-LB supports below configure method:
646 -
647 -* AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
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]].
649 -* LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
650 -
651 651  == 3.2 General Commands ==
652 652  
653 653  
... ... @@ -916,4 +916,5 @@
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" %) (%%)
760 +
761 +(% style="display:none" %) (%%)