Last modified by Xiaoling on 2023/07/18 10:12

From version 210.2
edited by Xiaoling
on 2022/10/18 14:20
Change comment: There is no comment for this version
To version 203.1
edited by Edwin Chen
on 2022/10/06 19:30
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.Xiaoling
1 +XWiki.Edwin
Content
... ... @@ -62,7 +62,6 @@
62 62  * Datalog feature (Max 3328 records)
63 63  
64 64  
65 -
66 66  == 1.3 Specification ==
67 67  
68 68  
... ... @@ -88,7 +88,6 @@
88 88  * Operating Range: -55 °C ~~ 125 °C
89 89  
90 90  
91 -
92 92  = 2. Connect LHT65N to IoT Server =
93 93  
94 94  
... ... @@ -200,9 +200,10 @@
200 200  
201 201  
202 202  
203 -== 2.4 Uplink Payload   ( Fport~=2) ==
204 204  
202 +== 2.4 Uplink Payload ==
205 205  
204 +
206 206  (((
207 207  The uplink payload includes totally 11 bytes. Uplink packets use FPORT=2 and (% _mstvisible="3" style="color:#4f81bd" %)**every 20 minutes**(%%) send one uplink by default.
208 208  )))
... ... @@ -286,13 +286,17 @@
286 286  
287 287  When the uplink payload arrives TTNv3, it shows HEX format and not friendly to read. We can add LHT65N decoder in TTNv3 for friendly reading.
288 288  
289 -Below is the position to put the decoder and LHT65N decoder can be download from here: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]]
288 +Below is the position to put the decoder and LHT65N decoder can be download from here:
290 290  
291 291  
291 +[[https:~~/~~/www.dropbox.com/sh/r2i3zlhsyrpavla/AAB1sZw3mdT0K7XjpHCITt13a?dl=0 >>https://www.dropbox.com/sh/r2i3zlhsyrpavla/AAB1sZw3mdT0K7XjpHCITt13a?dl=0||_msthash="315253" _msttexthash="3509064" _mstvisible="2"]]
292 +
293 +
292 292  [[image:image-20220522234118-10.png||_mstalt="451464" _mstvisible="3" height="353" width="729"]]
293 293  
294 294  
295 295  
298 +
296 296  === 2.4.2 BAT-Battery Info ===
297 297  
298 298  
... ... @@ -499,11 +499,11 @@
499 499  
500 500  be used to power the external ADC sensor; user can control the power on time for this
501 501  
502 -(% style="color:blue" %)**sensor by setting:**
505 +sensor by setting:
503 503  
504 -**AT+EXT=6,timeout**  (% _msthash="506085" _msttexthash="8782189" _mstvisible="3" style="color:red" %)**Time to power this sensor, from 0 ~~ 65535ms**
507 +AT+EXT=6,timeout  (% _msthash="506085" _msttexthash="8782189" _mstvisible="3" style="color:red" %)**Time to power this sensor, from 0 ~~ 65535ms**
505 505  
506 -**For example:**
509 +For example:
507 507  
508 508  AT+EXT=6,1000 will power this sensor for 1000ms before sampling the ADC value.
509 509  
... ... @@ -547,7 +547,7 @@
547 547  [[image:image-20220927095645-1.png||height="534" width="460"]]
548 548  
549 549  
550 -(% style="color:blue" %)**Ext=2,Temperature Sensor(TMP117):**
553 +**Ext=2,Temperature Sensor(TMP117):**
551 551  
552 552  [[image:image-20220906102307-7.png]]
553 553  
... ... @@ -558,6 +558,7 @@
558 558  
559 559  
560 560  
564 +
561 561  ==== 2.4.6.5 Ext~=4 Interrupt Mode (Since Firmware v1.3) ====
562 562  
563 563  
... ... @@ -566,7 +566,7 @@
566 566  
567 567  (% style="color:blue" %)**Interrupt Mode can be used to connect to external interrupt sensors such as:**
568 568  
569 -(% style="color:#037691" %)**Case 1: Door Sensor.** (%%)3.3v Out for such sensor is just to detect Open/Close.
573 +**Case 1: Door Sensor.** 3.3v Out for such sensor is just to detect Open/Close.
570 570  
571 571   In Open State, the power consumption is the same as if there is no probe
572 572  
... ... @@ -577,7 +577,7 @@
577 577  
578 578  Ext=4,Interrupt Sensor:
579 579  
580 -(% border="1.5" cellpadding="4" cellspacing="4" style="background-color:#ffffcc; color:green; height:6px; width:512px" %)
584 +(% border="2" cellpadding="4" cellspacing="4" style="background-color:#ffffcc; color:green; height:6px; width:512px" %)
581 581  |(% style="width:117px" %)(((
582 582  AT+EXT=4,1
583 583  )))|(% style="width:371px" %)(((
... ... @@ -621,7 +621,6 @@
621 621  
622 622  [[image:image-20220906101320-5.png||height="353" width="696"]]
623 623  
624 -
625 625  Ext=8, Counting Sensor ( 4 bytes):
626 626  
627 627  (% border="2" cellpadding="4" cellspacing="4" style="background-color:#ffffcc; color:green; height:6px; width:381px" %)
... ... @@ -657,7 +657,52 @@
657 657  A2 08 02 00 00 00 3C:  Same as AT+ SETCNT=60  (AT+ SETCNT = 4th byte and 5th byte and 6th byte and 7th byte)
658 658  
659 659  
663 +(% style="color:blue" %)**Modified ATWOOD command for external sensor TMP117 or DS18B20 temperature alarm.**
660 660  
665 +
666 +(% style="color:#037691" %)**AT+WMOD=parameter1,parameter2,parameter3,parameter4**
667 +
668 +(% style="color:#037691" %)**Parameter 1**(%%):  Alarm mode:
669 +
670 +0): Cancel
671 +
672 +1): Threshold alarm
673 +
674 +2): Fluctuation alarm
675 +
676 +
677 +(% style="color:#037691" %)** Parameter 2**(%%):  Sampling time. Unit: seconds, up to 255 seconds.
678 +
679 +(% style="color:red" %)**Note: When the collection time is less than 60 seconds and always exceeds the set alarm threshold, the sending interval will not be the collection time, but will be sent every 60 seconds.**
680 +
681 +
682 +(% style="color:#037691" %) **Parameter 3 and parameter 4:**
683 +
684 +1):  If Alarm Mode is set to 1: Parameter 3 and parameter 4 are valid, as before, they represent low temperature and high temperature.
685 +
686 +Such as AT+WMOD=1,60,45,105, it means high and low temperature alarm.
687 +
688 +
689 +2):  If Alarm Mode is set to 2: Parameter 3 is valid, which represents the difference between the currently collected temperature and the last uploaded temperature.
690 +
691 +Such as AT+WMOD=2,10,2,it means that it is a fluctuation alarm.
692 +
693 +If the difference between the current collected temperature and the last Uplin is ±2 degrees, the alarm will be issued.
694 +
695 +
696 +(% style="color:blue" %)** Downlink:**
697 +
698 +0xA5 00 ~-~- AT+WMOD=0.
699 +
700 +0xA5 01 0A 11 94 29 04 ~-~- AT+WMOD=1,10,45,105  (AT+WMOD = second byte, third byte, fourth and fifth bytes divided by 100, sixth and seventh bytes divided by 100 )
701 +
702 +0xA5 02 0A 02 ~-~- AT+WMOD=2,10,2  (AT+WMOD = second byte, third byte, fourth byte)
703 +
704 +0xA5 FF ~-~- After the device receives it, upload the current alarm configuration (FPORT=8). Such as 01 0A 11 94 29 04 or 02 0A 02.
705 +
706 +
707 +
708 +
661 661  == 2.5 Show data on Datacake ==
662 662  
663 663  
... ... @@ -720,16 +720,9 @@
720 720  
721 721  There are two methods:
722 722  
723 -(% style="color:blue" %)**Method 1:** (%%)IoT Server sends a downlink LoRaWAN command to [[poll the value>>||anchor="H2.6.4Pollsensorvalue"]] for specified time range.
771 +1. IoT Server sends a downlink LoRaWAN command to [[poll the value>>||anchor="H2.6.4Pollsensorvalue"]] for specifying time range.
772 +1. Set [[PNACKMD=1>>||anchor="H4.13AutoSendNone-ACKmessages"]], LHT65N will wait for ACK for every uplink, when there is no LoRaWAN network, LHT65N will mark these records with non-ack message and store the sensor data, and it will send all messages (10s interval) after the network recovery. note: a) LHT65N will do ack check for data records sending to make sure every data arrive server. b) LHT65N will send data in CONFIRMED Mode when PNACKMD=1, but it won't re-transmit the same packet , it will just mark it as NONE-ACK and resend after network is detected.
724 724  
725 -
726 -(% style="color:blue" %)**Method 2: **(%%)Set [[PNACKMD=1>>||anchor="H4.13AutoSendNone-ACKmessages"]], LHT65N will wait for ACK for every uplink, when there is no LoRaWAN network, LHT65N 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.
727 -
728 -(% style="color:red" %)**Note for method 2:**
729 -
730 -* a) LHT65N will do an ACK check for data records sending to make sure every data arrive server.
731 -* b) LHT65N will send data in **CONFIRMED Mode** when PNACKMD=1, but LHT65N 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 LHT65N gets a ACK, LHT65N will consider there is a network connection and resend all NONE-ACK Message.
732 -
733 733  Below is the typical case for the auto-update datalog feature (Set PNACKMD=1)
734 734  
735 735  
... ... @@ -760,11 +760,11 @@
760 760  
761 761  
762 762  (((
763 -(% style="color:blue" %)**There are two ways to set device's time:**
804 +There are two ways to set device's time:
764 764  )))
765 765  
766 766  (((
767 -**1.  Through LoRaWAN MAC Command (Default settings)**
808 +**~1. Through LoRaWAN MAC Command (Default settings)**
768 768  )))
769 769  
770 770  (((
... ... @@ -961,9 +961,9 @@
961 961  (((
962 962  [[image:image-20221006192726-1.png||height="112" width="754"]]
963 963  
964 -(% class="mark" %)**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>>||anchor="H4.13AutoSendNone-ACKmessages"]] feature)
1005 +(% class="mark" %)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>>||anchor="H4.13AutoSendNone-ACKmessages"]] feature)
965 965  
966 -(% class="mark" %)**Poll Message Flag**(%%): 1: This message is a poll message reply.
1007 +(% class="mark" %)Poll Message Flag(%%): 1: This message is a poll message reply.
967 967  
968 968  
969 969  )))
... ... @@ -1014,7 +1014,7 @@
1014 1014  (((
1015 1015  (% _msthash="736725" _msttexthash="1065532" _mstvisible="3" %)
1016 1016  (((
1017 -**a) DR0:** max is 11 bytes so one entry of data
1058 +a) DR0: max is 11 bytes so one entry of data
1018 1018  )))
1019 1019  )))
1020 1020  )))
... ... @@ -1025,7 +1025,7 @@
1025 1025  (((
1026 1026  (% _msthash="736726" _msttexthash="3265665" _mstvisible="3" %)
1027 1027  (((
1028 -**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
1069 +b) DR1: max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
1029 1029  )))
1030 1030  )))
1031 1031  )))
... ... @@ -1036,7 +1036,7 @@
1036 1036  (((
1037 1037  (% _msthash="736727" _msttexthash="1454115" _mstvisible="3" style="text-align: left;" %)
1038 1038  (((
1039 -**c) DR2:** total payload includes 11 entries of data
1080 +c) DR2: total payload includes 11 entries of data
1040 1040  )))
1041 1041  )))
1042 1042  )))
... ... @@ -1047,7 +1047,7 @@
1047 1047  (((
1048 1048  (% _msthash="736728" _msttexthash="1483924" _mstvisible="3" style="text-align: left;" %)
1049 1049  (((
1050 -**d) DR3: **total payload includes 22 entries of data.
1091 +d) DR3: total payload includes 22 entries of data.
1051 1051  )))
1052 1052  )))
1053 1053  )))
... ... @@ -1058,7 +1058,7 @@
1058 1058  (((
1059 1059  (% _msthash="736729" _msttexthash="5848349" _mstvisible="3" style="text-align: left;" %)
1060 1060  (((
1061 -If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0   
1102 +If devise doesnt have any data in the polling time. Device will uplink 11 bytes of 0   
1062 1062  )))
1063 1063  )))
1064 1064  )))
... ... @@ -1159,42 +1159,17 @@
1159 1159  (((
1160 1160  (% style="color:red" %)**Note: alarm mode adds a little power consumption, and we recommend extending the normal read time when this feature is enabled.**
1161 1161  
1162 -
1163 -
1164 -=== 2.7.1 ALARM MODE ( Since v1.3.1 firmware) ===
1165 -
1166 -
1167 -(((
1168 -(% class="box infomessage" %)
1169 -(((
1170 -**AT+WMOD=3,**:  Enable/disable alarm mode. (0: Disabled, 1: Enabled Temperature Alarm for onboard temperature sensor)
1171 -
1172 -**AT+CITEMP=1**:  The interval between checking the alarm temperature. (In minutes)
1173 -
1174 -**AT+ARTEMP**:  Gets or sets the alarm range of the internal temperature sensor
1175 -
1176 -**AT+ARTEMP=? **:  Gets the alarm range of the internal temperature sensor(% _mstvisible="3" style="display:none" %)
1177 -
1178 -**AT+ARTEMP=45,105**:  Set the internal temperature sensor alarm range from 45 to 105.
1179 -
1180 -**AT+LEDALARM=1** :       Enable LED visual Alarm.
1181 -)))
1182 -)))
1183 -
1184 -
1185 1185  
1186 1186  )))
1187 1187  
1188 1188  (((
1189 -=== 2.7.2 ALARM MODE ( Before v1.3.1 firmware) ===
1190 -
1191 -
1207 +**AT COMMAND FOR ALARM MODE:**
1192 1192  )))
1193 1193  
1194 1194  (% _mstvisible="1" class="box infomessage" %)
1195 1195  (((
1196 1196  (((
1197 -**AT+WMOD=1**:  Enable/disable alarm mode. (0: Disabled, 1: Enabled Temperature Alarm for onboard temperature sensor)
1213 +**AT+WMOD=1**:  Enable/disable alarm mode. (0: Disabled, 1: Enabled)
1198 1198  )))
1199 1199  
1200 1200  (((
... ... @@ -1368,11 +1368,11 @@
1368 1368  
1369 1369  Format: Command Code (0x01) followed by 3 bytes time value.
1370 1370  
1371 -If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01.
1387 +If the downlink payload=0100003C, it means set the END Nodes Transmit Interval to 0x00003C=60(S), while type code is 01.
1372 1372  
1373 -* **Example 1**: Downlink Payload: 0100001E  ~/~/ Set Transmit Interval (TDC) = 30 seconds
1389 +* **Example 1**: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds
1374 1374  
1375 -* **Example 2**: Downlink Payload: 0100003C  ~/~/ Set Transmit Interval (TDC) = 60 seconds
1391 +* **Example 2**: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds
1376 1376  
1377 1377  
1378 1378  
... ... @@ -1499,7 +1499,7 @@
1499 1499  
1500 1500  (% _msthash="315254" _msttexthash="298038" style="color:#4f81bd" %)**Downlink Command:**
1501 1501  
1502 -0x306007806000  ~/~/  Set timestamp to 0x(6007806000),Same as AT+TIMESTAMP=1611104352
1518 +0x306007806000  ~/~/ Set timestamp to 0x(6007806000),Same as AT+TIMESTAMP=1611104352
1503 1503  
1504 1504  
1505 1505  
... ... @@ -1541,7 +1541,7 @@
1541 1541  
1542 1542  (% _msthash="315257" _msttexthash="298038" style="color:#4f81bd" %)**Downlink Command:**
1543 1543  
1544 -**0x29 0A**  ~/~/ Same as AT+SYNCTDC=0x0A
1560 +**0x29 0A** ~/~/ Same as AT+SYNCTDC=0x0A
1545 1545  
1546 1546  
1547 1547  
... ... @@ -1592,7 +1592,7 @@
1592 1592  
1593 1593  (% style="color:#4f81bd" %)**Downlink Command: 0xA3**
1594 1594  
1595 -* Example: 0xA301  ~/~/  Same as AT+CLRDTA
1611 +* Example: 0xA301 ~/~/Same as AT+CLRDTA
1596 1596  
1597 1597  
1598 1598  
... ... @@ -1614,61 +1614,10 @@
1614 1614  
1615 1615  (% style="color:#4f81bd" %)**Downlink Command: 0x34**
1616 1616  
1617 -* Example: 0x3401  ~/~/  Same as AT+PNACKMD=1
1633 +* Example: 0x3401 ~/~/Same as AT+PNACKMD=1
1618 1618  
1619 1619  
1620 1620  
1621 -== 4.14 Modified ATWOOD command for external sensor TMP117 or DS18B20 temperature alarm ==
1622 -
1623 -
1624 -Feature: Set internal and external temperature sensor alarms.
1625 -
1626 -(% border="1" style="background-color:#ffffcc; color:green; width:450px" %)
1627 -|(%%)(% _msthash="1231737" _msttexthash="251862" _mstvisible="6" %)**Command Example**|(%%)(% _msthash="1231738" _msttexthash="116025" _mstvisible="6" %)**Function**|(%%)(% _msthash="1231739" _msttexthash="116831" _mstvisible="6" %)**Response**
1628 -|(%%)(% style="color:#037691" %)AT+WMOD=parameter1,parameter2,parameter3,parameter4|Set internal and external temperature sensor alarms|OK
1629 -
1630 -(% style="color:#037691" %)**AT+WMOD=parameter1,parameter2,parameter3,parameter4**
1631 -
1632 -(% style="color:#037691" %)**Parameter 1**(%%):  Alarm mode:
1633 -
1634 -0): Cancel
1635 -
1636 -1): Threshold alarm
1637 -
1638 -2): Fluctuation alarm
1639 -
1640 -
1641 -(% style="color:#037691" %)** Parameter 2**(%%):  Sampling time. Unit: seconds, up to 255 seconds.
1642 -
1643 -(% style="color:red" %)**Note: When the collection time is less than 60 seconds and always exceeds the set alarm threshold, the sending interval will not be the collection time, but will be sent every 60 seconds.**
1644 -
1645 -
1646 -(% style="color:#037691" %) **Parameter 3 and parameter 4:**
1647 -
1648 -1):  If Alarm Mode is set to 1: Parameter 3 and parameter 4 are valid, as before, they represent low temperature and high temperature.
1649 -
1650 -Such as AT+WMOD=1,60,45,105, it means high and low temperature alarm.
1651 -
1652 -
1653 -2):  If Alarm Mode is set to 2: Parameter 3 is valid, which represents the difference between the currently collected temperature and the last uploaded temperature.
1654 -
1655 -Such as AT+WMOD=2,10,2,it means that it is a fluctuation alarm.
1656 -
1657 -If the difference between the current collected temperature and the last Uplin is ±2 degrees, the alarm will be issued.
1658 -
1659 -
1660 -(% style="color:#4f81bd" %)**Downlink Command: 0xA5**
1661 -
1662 -0xA5 00 ~-~- AT+WMOD=0.
1663 -
1664 -0xA5 01 0A 11 94 29 04 ~-~- AT+WMOD=1,10,45,105  (AT+WMOD = second byte, third byte, fourth and fifth bytes divided by 100, sixth and seventh bytes divided by 100 )
1665 -
1666 -0xA5 02 0A 02 ~-~- AT+WMOD=2,10,2  (AT+WMOD = second byte, third byte, fourth byte)
1667 -
1668 -0xA5 FF ~-~- After the device receives it, upload the current alarm configuration (FPORT=8). Such as 01 0A 11 94 29 04 or 02 0A 02.
1669 -
1670 -
1671 -
1672 1672  = 5. Battery & How to replace =
1673 1673  
1674 1674  
... ... @@ -1738,6 +1738,7 @@
1738 1738  * (% style="background-color:yellow" %)**USB to TTL GND <~-~->GND**
1739 1739  * (% style="background-color:yellow" %)**USB to TTL RXD <~-~-> D+**
1740 1740  * (% style="background-color:yellow" %)**USB to TTL TXD <~-~-> A11**
1706 +* (% style="background-color:yellow" %)**USB to TTL 3.3V <~-~-> D-**
1741 1741  
1742 1742  (((
1743 1743  In PC, User needs to set serial tool(such as [[**putty**>>https://www.chiark.greenend.org.uk/~~sgtatham/putty/latest.html]], SecureCRT) baud rate to (% style="color:green" %)**9600**(%%) to access to access serial console for LHT65N. The AT commands are disable by default and need to enter password (default:(% style="color:green" %)**123456**) (%%)to active it. Timeout to input AT Command is 5 min, after 5-minute, user need to input password again. User can use AT+DISAT command to disable AT command before timeout.