Last modified by Mengting Qiu on 2025/07/01 15:58
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -362,6 +362,7 @@ 362 362 363 363 == 2.4 Payload Decoder file == 364 364 365 + 365 365 In TTN, use can add a custom payload so it shows friendly reading 366 366 367 367 In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from: ... ... @@ -378,7 +378,7 @@ 378 378 === 2.5.1 Ways to get datalog via LoRaWAN === 379 379 380 380 381 -Set [[PNACKMD=1>> url:http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/#H4.13AutoSendNone-ACKmessages]], 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.382 +Set [[PNACKMD=1>>||anchor="H2.5.4DatalogUplinkpayloadA028FPORT3D329"]], 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. 382 382 383 383 * a) S31x-LB will do an ACK check for data records sending to make sure every data arrive server. 384 384 * 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. ... ... @@ -406,11 +406,11 @@ 406 406 === 2.5.3 Set Device Time === 407 407 408 408 409 -User need to set **SYNCMOD=1** to enable sync time via MAC command. 410 +User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command. 410 410 411 411 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). 412 412 413 -**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.** 414 +(% 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.** 414 414 415 415 416 416 === 2.5.4 Datalog Uplink payload (FPORT~=3) === ... ... @@ -420,19 +420,19 @@ 420 420 421 421 **Retrieval data payload:** 422 422 423 -(% style="width: 858px" %)424 -|=(% style="width: 103px;" %)((( 424 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %) 425 +|=(% style="width: 103px;background-color:#D9E2F3" %)((( 425 425 **Size(bytes)** 426 -)))|=(% style="width: 129px;" %)**2**|=(% style="width: 114px;" %)**2**|=(% style="width: 217px;" %)**2**|=(% style="width: 153px;" %)**1**|=(% style="width:139px;" %)**4**427 -|(% style="width:103px" %)**Value**|(% style="width: 129px" %)(((427 +)))|=(% style="width: 54px; background-color: rgb(217, 226, 243);" %)**2**|=(% style="width: 51px; background-color: rgb(217, 226, 243);" %)**2**|=(% style="width: 89px; background-color: rgb(217, 226, 243);" %)**2**|=(% style="width: 103px; background-color: rgb(217, 226, 243);" %)**1**|=(% style="width: 54px; background-color: rgb(217, 226, 243);" %)**4** 428 +|(% style="width:103px" %)**Value**|(% style="width:54px" %)((( 428 428 [[Temp_Black>>||anchor="HTemperatureBlack:"]] 429 -)))|(% style="width:1 14px" %)[[Temp_White>>||anchor="HTemperatureWhite:"]]|(% style="width:217px" %)[[Temp_ Red or Temp _White>>||anchor="HTemperatureREDorTemperatureWhite:"]]|(% style="width:153px" %)Poll message flag & Ext|(% style="width:139px" %)[[Unix Time Stamp>>url:http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/#H2.6.2UnixTimeStamp]]430 +)))|(% style="width:51px" %)[[Temp_White>>||anchor="HTemperatureWhite:"]]|(% style="width:89px" %)[[Temp_ Red or Temp _White>>||anchor="HTemperatureREDorTemperatureWhite:"]]|(% style="width:103px" %)Poll message flag & Ext|(% style="width:54px" %)[[Unix Time Stamp>>||anchor="H2.5.2UnixTimeStamp"]] 430 430 431 431 **Poll message flag & Ext:** 432 432 433 433 [[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-20221006192726-1.png?width=754&height=112&rev=1.1||alt="image-20221006192726-1.png" height="112" width="754"]] 434 434 435 -**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>>url:http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/#H4.13AutoSendNone-ACKmessages]]feature)436 +**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) 436 436 437 437 **Poll Message Flag**: 1: This message is a poll message reply. 438 438 ... ... @@ -452,6 +452,7 @@ 452 452 453 453 If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0 454 454 456 + 455 455 **Example:** 456 456 457 457 If D2x-LB has below data inside Flash: ... ... @@ -464,6 +464,7 @@ 464 464 465 465 Stop time: 60066DA7= time 21/1/19 05:27:03 466 466 469 + 467 467 **S31x-LB will uplink this payload.** 468 468 469 469 [[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-13.png?width=727&height=421&rev=1.1||alt="image-20220523001219-13.png" height="421" width="727"]] ... ... @@ -474,15 +474,15 @@ 474 474 475 475 7FFF089801464160065F97 476 476 477 -Ext sensor data=0x7FFF/100=327.67 480 +**Ext sensor data**=0x7FFF/100=327.67 478 478 479 -Temp=0x088E/100=22.00 482 +**Temp**=0x088E/100=22.00 480 480 481 -Hum=0x014B/10=32.6 484 +**Hum**=0x014B/10=32.6 482 482 483 -poll message flag & Ext=0x41,means reply data,Ext=1 486 +**poll message flag & Ext**=0x41,means reply data,Ext=1 484 484 485 -Unix time is 0x60066009=1611030423s=21/1/19 04:27:03 488 +**Unix time** is 0x60066009=1611030423s=21/1/19 04:27:03 486 486 487 487 488 488 (% aria-label="Data URI image image widget" 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==||data-widget="image" draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% aria-label="Data URI image image widget" 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==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% aria-label="Data URI image image widget" 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="Click and drag to resize" %)(% aria-label="Data URI image image widget" 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==||data-widget="image" draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% aria-label="Data URI image image widget" 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==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% aria-label="Data URI image image widget" 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="Click and drag to resize" %) ... ... @@ -496,7 +496,6 @@ 496 496 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-D20-D22-D23%20LoRaWAN%20Temperature%20Sensor%20User%20Manual/WebHome/image-20220623090437-1.png?rev=1.1||alt="image-20220623090437-1.png"]] 497 497 498 498 499 - 500 500 == 2.7 Frequency Plans == 501 501 502 502 ... ... @@ -542,8 +542,8 @@ 542 542 543 543 (% style="color:blue" %)**AT Command: AT+TDC** 544 544 545 -(% border="1" cellspacing="4" style="background-color:# f7faff;color:black;width:510px" %)546 -|=(% style="width: 156px;" %)**Command Example**|=(% style="width: 137px;" %)**Function**|=**Response** 547 +(% border="1" cellspacing="4" style="background-color:#F2F2F2; width:510px" %) 548 +|=(% style="width: 156px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 137px;background-color:#D9E2F3" %)**Function**|=(% style="background-color:#D9E2F3" %)**Response** 547 547 |(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|((( 548 548 30000 549 549 OK ... ... @@ -568,7 +568,7 @@ 568 568 569 569 Send a LoRaWAN downlink to ask device send Alarm settings. 570 570 571 - *(% style="color:#037691" %)**Downlink Payload: **(%%)0x26 01573 +(% style="color:blue" %)***Downlink Payload: **(%%)0x26 01 572 572 573 573 Sensor will upload Device Status via FPORT=5. See payload section for detail. 574 574 ... ... @@ -575,9 +575,9 @@ 575 575 576 576 === 3.3.3 Set Temperature Alarm Threshold: === 577 577 578 -* **AT Command:** 580 +* **(% style="color:blue" %)AT Command:** 579 579 580 -**AT+SHTEMP=min,max** 582 +**(% style="color:#037691" %)AT+SHTEMP=min,max** 581 581 582 582 * When min=0, and max≠0, Alarm higher than max 583 583 * When min≠0, and max=0, Alarm lower than min ... ... @@ -587,18 +587,18 @@ 587 587 588 588 AT+SHTEMP=0,30 ~/~/ Alarm when temperature higher than 30. 589 589 590 -* **Downlink Payload:** 592 +* **(% style="color:blue" %)Downlink Payload:** 591 591 592 -**0x(0C 01 00 1E)** ~/~/Set AT+SHTEMP=0,30 594 +**(% style="color:#037691" %)0x(0C 01 00 1E)** (%%) ~/~/Set AT+SHTEMP=0,30 593 593 594 -**(note: 3^^rd^^ byte= 0x00 for low limit(not set), 4^^th^^ byte = 0x1E for high limit: 30)** 596 +**(% style="color:red" %)(note: 3^^rd^^ byte= 0x00 for low limit(not set), 4^^th^^ byte = 0x1E for high limit: 30)** 595 595 596 596 597 597 === 3.3.4 Set Humidity Alarm Threshold: === 598 598 599 -* **AT Command:** 601 +* **(% style="color:blue" %)AT Command:** 600 600 601 -**AT+SHHUM=min,max** 603 +**(% style="color:#037691" %)AT+SHHUM=min,max** 602 602 603 603 * When min=0, and max≠0, Alarm higher than max 604 604 * When min≠0, and max=0, Alarm lower than min ... ... @@ -608,11 +608,11 @@ 608 608 609 609 AT+SHHUM=70,0 ~/~/ Alarm when humidity lower than 70%. 610 610 611 -* **Downlink Payload:** 613 +* **(% style="color:blue" %)Downlink Payload:** 612 612 613 -**0x(0C 02 46 00)** ~/~/Set AT+SHTHUM=70,0 615 +**(% style="color:#037691" %)0x(0C 02 46 00)**(%%) ~/~/Set AT+SHTHUM=70,0 614 614 615 -**(note: 3^^rd^^ byte= 0x46 for low limit (70%), 4^^th^^ byte = 0x00 for high limit (not set))** 617 +**(% style="color:red" %)(note: 3^^rd^^ byte= 0x46 for low limit (70%), 4^^th^^ byte = 0x00 for high limit (not set))** 616 616 617 617 618 618 === 3.3.5 Set Alarm Interval: === ... ... @@ -619,13 +619,13 @@ 619 619 620 620 The shortest time of two Alarm packet. (unit: min) 621 621 622 -* **AT Command:** 624 +* **(% style="color:blue" %)AT Command:** 623 623 624 -**AT+ATDC=30** ~/~/ The shortest interval of two Alarm packets is 30 minutes, Means is there is an alarm packet uplink, there won't be another one in the next 30 minutes. 626 +**(% style="color:#037691" %)AT+ATDC=30** (%%) ~/~/ The shortest interval of two Alarm packets is 30 minutes, Means is there is an alarm packet uplink, there won't be another one in the next 30 minutes. 625 625 626 -* **Downlink Payload:** 628 +* **(% style="color:blue" %)Downlink Payload:** 627 627 628 -**0x(0D 00 1E)** **~-~--> ** Set AT+ATDC=0x 00 1E = 30 minutes 630 +**(% style="color:#037691" %)0x(0D 00 1E)**(%%) **~-~--> ** Set AT+ATDC=0x 00 1E = 30 minutes 629 629 630 630 631 631 === 3.3.6 Get Alarm settings (什么FPORT?) ===