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

From version 197.1
edited by Bei Jinggeng
on 2022/09/06 10:23
Change comment: Uploaded new attachment "image-20220906102307-7.png", version {1}
To version 217.2
edited by Xiaoling
on 2022/11/12 17:20
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.Bei
1 +XWiki.Xiaoling
Content
... ... @@ -16,6 +16,7 @@
16 16  
17 17  = 1. Introduction =
18 18  
19 +
19 19  == 1.1 What is LHT65N Temperature & Humidity Sensor ==
20 20  
21 21  
... ... @@ -44,6 +44,7 @@
44 44  )))
45 45  
46 46  
48 +
47 47  == 1.2 Features ==
48 48  
49 49  
... ... @@ -61,10 +61,11 @@
61 61  
62 62  
63 63  
66 +
64 64  == 1.3 Specification ==
65 65  
66 66  
67 -**Built-in Temperature Sensor:**
70 +(% style="color:#037691" %)**Built-in Temperature Sensor:**
68 68  
69 69  * Resolution: 0.01 °C
70 70  * Accuracy Tolerance : Typ ±0.3 °C
... ... @@ -71,7 +71,7 @@
71 71  * Long Term Drift: < 0.02 °C/yr
72 72  * Operating Range: -40 ~~ 85 °C
73 73  
74 -**Built-in Humidity Sensor:**
77 +(% style="color:#037691" %)**Built-in Humidity Sensor:**
75 75  
76 76  * Resolution: 0.04 %RH
77 77  * Accuracy Tolerance : Typ ±3 %RH
... ... @@ -78,7 +78,7 @@
78 78  * Long Term Drift: < 0.02 °C/yr
79 79  * Operating Range: 0 ~~ 96 %RH
80 80  
81 -**External Temperature Sensor:**
84 +(% style="color:#037691" %)**External Temperature Sensor:**
82 82  
83 83  * Resolution: 0.0625 °C
84 84  * ±0.5°C accuracy from -10°C to +85°C
... ... @@ -87,8 +87,10 @@
87 87  
88 88  
89 89  
93 +
90 90  = 2. Connect LHT65N to IoT Server =
91 91  
96 +
92 92  == 2.1 How does LHT65N work? ==
93 93  
94 94  
... ... @@ -133,6 +133,7 @@
133 133  (% _msthash="315240" _msttexthash="9205482" _mstvisible="1" class="wikigeneratedid" %)
134 134  This section shows an example of how to join the TTN V3 LoRaWAN IoT server. Use with other LoRaWAN IoT servers is of a similar procedure.
135 135  
141 +
136 136  (% _mstvisible="1" class="wikigeneratedid" %)
137 137  [[image:image-20220522232442-1.png||_mstalt="427830" _mstvisible="3" height="387" width="648"]]
138 138  
... ... @@ -196,10 +196,9 @@
196 196  
197 197  
198 198  
205 +== 2.4 Uplink Payload   ( Fport~=2) ==
199 199  
200 -== 2.4 Uplink Payload ==
201 201  
202 -
203 203  (((
204 204  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.
205 205  )))
... ... @@ -208,69 +208,37 @@
208 208  After each uplink, the (% _mstvisible="3" style="color:blue" %)**BLUE LED**(%%) will blink once.
209 209  )))
210 210  
211 -(% _mstvisible="1" border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:426px" %)
212 -(% _mstvisible="3" %)|=(% _mstvisible="4" style="width: 97px;" %)(% _mstvisible="5" %)
213 -(((
214 -(% _mstvisible="6" %)
215 -(% _msthash="1817478" _msttexthash="161122" _mstvisible="8" %)**Size(bytes)**
216 -)))|=(% _mstvisible="4" style="width: 39px;" %)(% _mstvisible="5" %)
217 -(((
218 -(% _mstvisible="6" %)
219 -(% _msthash="1817479" _msttexthash="4550" _mstvisible="8" %)**2**
220 -)))|=(% _mstvisible="4" style="width: 100px;" %)(% _mstvisible="5" %)
221 -(((
222 -(% _mstvisible="6" %)
223 -(% _msthash="1817480" _msttexthash="4550" _mstvisible="8" %)**2**
224 -)))|=(% _mstvisible="4" style="width: 77px;" %)(% _mstvisible="5" %)
225 -(((
226 -(% _mstvisible="6" %)
227 -(% _msthash="1817481" _msttexthash="4550" _mstvisible="8" %)**2**
228 -)))|=(% _mstvisible="4" style="width: 47px;" %)(% _mstvisible="5" %)
229 -(((
230 -(% _mstvisible="6" %)
231 -(% _msthash="1817482" _msttexthash="4459" _mstvisible="8" %)**1**
232 -)))|=(% _mstvisible="4" style="width: 51px;" %)(% _mstvisible="5" %)
233 -(((
234 -(% _mstvisible="6" %)
235 -(% _msthash="1817483" _msttexthash="4732" _mstvisible="8" %)**4**
216 +(% border="1" cellspacing="4" style="background-color:#ffffcc; color:green; width:390px" %)
217 +|=(% style="width: 60px;" %)(((
218 +**Size(bytes)**
219 +)))|=(% style="width: 30px;" %)(((
220 +**2**
221 +)))|=(% style="width: 100px;" %)(((
222 +**2**
223 +)))|=(% style="width: 100px;" %)(((
224 +**2**
225 +)))|=(% style="width: 50px;" %)(((
226 +**1**
227 +)))|=(% style="width: 50px;" %)(((
228 +**4**
236 236  )))
237 -(% _mstvisible="3" %)|(% _mstvisible="4" style="width:97px" %)(% _mstvisible="5" %)
230 +|(% style="width:97px" %)(((
231 +**Value**
232 +)))|(% style="width:39px" %)(((
233 +[[BAT>>||anchor="H2.4.2BAT-BatteryInfo"]]
234 +)))|(% style="width:100px" %)(((
238 238  (((
239 -(% _mstvisible="6" %)
240 -(% _msthash="1817484" _msttexthash="60203" _mstvisible="8" %)**Value**
241 -)))|(% _mstvisible="4" style="width:39px" %)(% _mstvisible="5" %)
242 -(((
243 -(% _mstvisible="6" %)
244 -[[BAT>>||anchor="H2.4.2BAT-BatteryInfo" _msthash="1817485" _msttexthash="22594" _mstvisible="7"]]
245 -)))|(% _mstvisible="4" style="width:100px" %)(% _mstvisible="5" %)
246 -(((
247 -(% _mstvisible="6" %)
248 -(((
249 -(% _mstvisible="7" %)
250 -[[Built-In Temperature>>||anchor="H2.4.3Built-inTemperature" _msthash="2224742" _msttexthash="405769" _mstvisible="8"]]
236 +[[Built-In Temperature>>||anchor="H2.4.3Built-inTemperature"]]
251 251  )))
252 -)))|(% _mstvisible="4" style="width:77px" %)(% _mstvisible="5" %)
238 +)))|(% style="width:77px" %)(((
253 253  (((
254 -(% _mstvisible="6" %)
255 -(((
256 -(% _mstvisible="7" %)
257 -[[Built-in>>||anchor="H2.4.4Built-inHumidity" _msthash="2224743" _msttexthash="105872" _mstvisible="8"]]
240 +[[Built-in Humidity>>||anchor="H2.4.4Built-inHumidity"]]
258 258  )))
259 -
260 -(% _mstvisible="6" %)
261 -(((
262 -(% _mstvisible="7" %)
263 -[[Humidity>>||anchor="H2.4.4Built-inHumidity" _msthash="2224744" _msttexthash="117429" _mstvisible="8"]]
242 +)))|(% style="width:47px" %)(((
243 +[[Ext>>||anchor="H2.4.5Ext23"]] #
244 +)))|(% style="width:51px" %)(((
245 +[[Ext value>>||anchor="H2.4.6Extvalue"]]
264 264  )))
265 -)))|(% _mstvisible="4" style="width:47px" %)(% _mstvisible="5" %)
266 -(((
267 -(% _mstvisible="6" %)
268 -[[Ext>>||anchor="H2.4.5Ext23" _msthash="1817486" _msttexthash="32331" _mstvisible="7"]] #
269 -)))|(% _mstvisible="4" style="width:51px" %)(% _mstvisible="5" %)
270 -(((
271 -(% _mstvisible="6" %)
272 -[[Ext value>>||anchor="H2.4.6Extvalue" _msthash="1817487" _msttexthash="116545" _mstvisible="7"]]
273 -)))
274 274  
275 275  * The First 6 bytes: has fix meanings for every LHT65N.
276 276  * The 7th byte (EXT #): defines the external sensor model.
... ... @@ -277,23 +277,18 @@
277 277  * The 8(% _msthash="734578" _msttexthash="21372" _mstvisible="4" %)^^th^^(%%) ~~ 11(% _msthash="734579" _msttexthash="21372" _mstvisible="4" %)^^th^^(%%) byte: the value for external sensor value. The definition is based on external sensor type. (If EXT=0, there won't be these four bytes.)
278 278  
279 279  
280 -
281 281  === 2.4.1 Decoder in TTN V3 ===
282 282  
283 283  
284 284  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.
285 285  
286 -Below is the position to put the decoder and LHT65N decoder can be download from here:
258 +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]]
287 287  
288 288  
289 -[[https:~~/~~/www.dropbox.com/sh/r2i3zlhsyrpavla/AAB1sZw3mdT0K7XjpHCITt13a?dl=0 >>https://www.dropbox.com/sh/r2i3zlhsyrpavla/AAB1sZw3mdT0K7XjpHCITt13a?dl=0||_msthash="315253" _msttexthash="3509064" _mstvisible="2"]]
290 -
291 -
292 292  [[image:image-20220522234118-10.png||_mstalt="451464" _mstvisible="3" height="353" width="729"]]
293 293  
294 294  
295 295  
296 -
297 297  === 2.4.2 BAT-Battery Info ===
298 298  
299 299  
... ... @@ -312,6 +312,7 @@
312 312  
313 313  
314 314  
283 +
315 315  === 2.4.3 Built-in Temperature ===
316 316  
317 317  
... ... @@ -325,6 +325,7 @@
325 325  
326 326  
327 327  
297 +
328 328  === 2.4.4 Built-in Humidity ===
329 329  
330 330  
... ... @@ -334,6 +334,7 @@
334 334  
335 335  
336 336  
307 +
337 337  === 2.4.5 Ext # ===
338 338  
339 339  
... ... @@ -356,6 +356,8 @@
356 356  
357 357  The last 2 bytes of data are meaningless
358 358  
330 +
331 +
359 359  [[image:image-20220522235639-6.png||_mstalt="433212" _mstvisible="3"]]
360 360  
361 361  
... ... @@ -378,114 +378,53 @@
378 378  
379 379  )))
380 380  
381 -(% _mstvisible="1" border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %)
382 -(% _mstvisible="3" %)|=(% _mstvisible="4" style="width: 96px;" %)(% _mstvisible="5" %)
383 -(((
384 -(% _mstvisible="6" %)
385 -(% _msthash="1817488" _msttexthash="161122" _mstvisible="8" %)**Size(bytes)**
386 -)))|=(% _mstvisible="4" style="width: 71px;" %)(% _mstvisible="5" %)
387 -(((
388 -(% _mstvisible="6" %)
389 -(% _msthash="1817489" _msttexthash="4550" _mstvisible="8" %)**2**
390 -)))|=(% _mstvisible="4" style="width: 99px;" %)(% _mstvisible="5" %)
391 -(((
392 -(% _mstvisible="6" %)
393 -(% _msthash="1817490" _msttexthash="4550" _mstvisible="8" %)**2**
394 -)))|=(% _mstvisible="4" style="width: 132px;" %)(% _mstvisible="5" %)
395 -(((
396 -(% _mstvisible="6" %)
397 -(% _msthash="1817491" _msttexthash="4550" _mstvisible="8" %)**2**
398 -)))|=(% _mstvisible="4" style="width: 54px;" %)(% _mstvisible="5" %)
399 -(((
400 -(% _mstvisible="6" %)
401 -(% _msthash="1817492" _msttexthash="4459" _mstvisible="8" %)**1**
402 -)))|=(% _mstvisible="4" style="width: 64px;" %)(% _mstvisible="5" %)
403 -(((
404 -(% _mstvisible="6" %)
405 -(% _msthash="1817493" _msttexthash="4732" _mstvisible="8" %)**4**
354 +(% border="1" cellspacing="4" style="background-color:#ffffcc; color:green; width:480px" %)
355 +|=(% style="width: 50px;" %)(((
356 +**Size(bytes)**
357 +)))|=(% style="width: 70px;" %)(((
358 +**2**
359 +)))|=(% style="width: 120px;" %)(((
360 +**2**
361 +)))|=(% style="width: 120px;" %)(((
362 +**2**
363 +)))|=(% style="width: 50px;" %)(((
364 +**1**
365 +)))|=(% style="width: 70px;" %)(((
366 +**4**
406 406  )))
407 -(% _mstvisible="3" %)|(% _mstvisible="4" style="width:96px" %)(% _mstvisible="5" %)
408 -(((
409 -(% _mstvisible="6" %)
410 -(% _msthash="1817494" _msttexthash="60203" _mstvisible="8" %)**Value**
411 -)))|(% _mstvisible="4" style="width:71px" %)(% _mstvisible="5" %)
412 -(((
413 -(% _mstvisible="6" %)
414 -[[External temperature>>||anchor="H4.2SetExternalSensorMode" _msthash="1817495" _msttexthash="426517" _mstvisible="7"]]
415 -)))|(% _mstvisible="4" style="width:99px" %)(% _mstvisible="5" %)
416 -(((
417 -(% _mstvisible="6" %)
418 -(((
419 -(% _mstvisible="7" %)
420 -[[Built-In>>||anchor="H2.4.3Built-inTemperature" _msthash="2224745" _msttexthash="100464" _mstvisible="8"]]
421 -)))
422 -
423 -(% _mstvisible="6" %)
424 -(((
425 -(% _mstvisible="7" %)
426 -[[Temperature>>||anchor="H2.4.3Built-inTemperature" _msthash="2224746" _msttexthash="184041" _mstvisible="8"]]
427 -)))
428 -)))|(% _mstvisible="4" style="width:132px" %)(% _mstvisible="5" %)
429 -(((
430 -(% _mstvisible="6" %)
431 -(((
432 -(% _msthash="2224747" _msttexthash="136331" _mstvisible="7" %)
433 -BAT Status &
434 -)))
435 -
436 -(% _mstvisible="6" %)
437 -(((
438 -(% _mstvisible="7" %)
439 -[[Built-in Humidity>>||anchor="H2.4.4Built-inHumidity" _msthash="2224748" _msttexthash="311181" _mstvisible="8"]]
440 -)))
441 -)))|(% _mstvisible="4" style="width:54px" %)(% _mstvisible="5" %)
442 -(((
443 -(% _msthash="1817496" _msttexthash="147225" _mstvisible="6" %)
368 +|(% style="width:110px" %)(((
369 +**Value**
370 +)))|(% style="width:71px" %)(((
371 +[[External temperature>>||anchor="H4.2SetExternalSensorMode"]]
372 +)))|(% style="width:99px" %)(((
373 +[[Built-In Temperature>>||anchor="H2.4.3Built-inTemperature"]]
374 +)))|(% style="width:132px" %)(((
375 +BAT Status & [[Built-in Humidity>>||anchor="H2.4.4Built-inHumidity"]]
376 +)))|(% style="width:54px" %)(((
444 444  Status & Ext
445 -)))|(% _mstvisible="4" style="width:64px" %)(% _mstvisible="5" %)
446 -(((
447 -(% _mstvisible="6" %)
448 -(((
449 -(% _mstvisible="7" %)
450 -[[Unix Time Stamp>>||anchor="H2.6.2UnixTimeStamp" _msthash="2224749" _msttexthash="227175" _mstvisible="8"]]
378 +)))|(% style="width:64px" %)(((
379 +[[Unix Time Stamp>>||anchor="H2.6.2UnixTimeStamp"]]
451 451  )))
452 -)))
453 453  
454 -(% _mstvisible="1" %)
455 -* (% _msthash="2539669" _msttexthash="857922" _mstvisible="3" %)**Battery status & **(% class="wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink wikiinternallink" %)**Built-in Humidity**
382 +* **Battery status & Built-in Humidity**
456 456  
457 -(% _mstvisible="1" border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:469px" %)
458 -(% _mstvisible="3" %)|=(% _msthash="1230918" _msttexthash="93158" _mstvisible="4" style="width: 65px;" %)Bit(bit)|=(% _msthash="1230919" _msttexthash="57954" _mstvisible="4" style="width: 267px;" %)[15:14]|=(% _msthash="1230920" _msttexthash="48022" _mstvisible="4" style="width: 134px;" %)[11:0]
459 -(% _mstvisible="3" %)|(% _msthash="1230921" _msttexthash="60203" _mstvisible="4" style="width:65px" %)Value|(% _mstvisible="4" style="width:267px" %)(% _mstvisible="5" %)
460 -(((
461 -(% _msthash="1817497" _msttexthash="128427" _mstvisible="6" %)
384 +(% _mstvisible="1" border="1" cellspacing="4" style="background-color:#ffffcc; color:green; width:461px" %)
385 +|=(% style="width: 67px;" %)Bit(bit)|=(% style="width: 256px;" %)[15:14]|=(% style="width: 132px;" %)[11:0]
386 +|(% style="width:67px" %)Value|(% style="width:256px" %)(((
462 462  BAT Status
463 -
464 -(% _msthash="1817498" _msttexthash="472784" _mstvisible="6" %)
465 465  00(b): Ultra Low ( BAT <= 2.50v)
466 -
467 -(% _msthash="1817499" _msttexthash="483678" _mstvisible="6" %)
468 468  01(b): Low  (2.50v <=BAT <= 2.55v)
469 -
470 -(% _msthash="1817500" _msttexthash="440791" _mstvisible="6" %)
471 471  10(b): OK   (2.55v <= BAT <=2.65v)
472 -
473 -(% _msthash="1817501" _msttexthash="334191" _mstvisible="6" %)
474 474  11(b): Good   (BAT >= 2.65v)
475 -)))|(% _mstvisible="4" style="width:134px" %)(% _mstvisible="5" %)
476 -(((
477 -(% _mstvisible="6" %)
478 -[[Built-in Humidity>>||anchor="H2.4.4Built-inHumidity" _msthash="1817502" _msttexthash="311181" _mstvisible="7"]]
479 -
480 -(% _mstvisible="6" %)
481 -
392 +)))|(% style="width:132px" %)(((
393 +[[Built-in Humidity>>||anchor="H2.4.4Built-inHumidity"]]
482 482  )))
483 483  
484 -* (% _msthash="504956" _msttexthash="245037" _mstvisible="4" %)**Status & Ext Byte**
396 +* **Status & Ext Byte**
485 485  
486 -(% border="1" cellspacing="8" style="background-color:#ffffcc; color:green; width:520px" %)
487 -|(% style="width:60px" %)**Bits**|(% style="width:90px" %)**7**|(% style="width:100px" %)**6**|(% style="width:90px" %)**5**|(% style="width:100px" %)**4**|(% style="width:60px" %)**[3:0]**
488 -|(% style="width:96px" %)**Status&Ext**|(% style="width:124px" %)None-ACK Flag|(% style="width:146px" %)Poll Message FLAG|(% style="width:109px" %)Sync time OK|(% style="width:143px" %)Unix Time Request|(% style="width:106px" %)Ext: 0b(1001)
398 +(% border="1" cellspacing="4" style="background-color:#ffffcc; color:green; width:500px" %)
399 +|=(% scope="row" style="width: 60px;" %)**Bits**|(% style="width:90px" %)**7**|(% style="width:100px" %)**6**|(% style="width:90px" %)**5**|(% style="width:100px" %)**4**|(% style="width:60px" %)**[3:0]**
400 +|=(% style="width: 96px;" %)**Status&Ext**|(% style="width:124px" %)None-ACK Flag|(% style="width:146px" %)Poll Message FLAG|(% style="width:109px" %)Sync time OK|(% style="width:143px" %)Unix Time Request|(% style="width:106px" %)Ext: 0b(1001)
489 489  
490 490  * (% style="color:blue" %)**Poll Message Flag**:(%%)  1: This message is a poll message reply, 0: means this is a normal uplink.
491 491  * (% style="color:blue" %)**Sync time OK**: (%%) 1: Set time ok,0: N/A. After time SYNC request is sent, LHT65N will set this bit to 0 until got the time stamp from the application server.
... ... @@ -493,6 +493,7 @@
493 493  
494 494  
495 495  
408 +
496 496  ==== 2.4.6.3 Ext~=6, ADC Sensor (use with E2 Cable) ====
497 497  
498 498  
... ... @@ -500,11 +500,11 @@
500 500  
501 501  be used to power the external ADC sensor; user can control the power on time for this
502 502  
503 -sensor by setting:
416 +(% style="color:blue" %)**sensor by setting:**
504 504  
505 -AT+EXT=6,timeout  (% _msthash="506085" _msttexthash="8782189" _mstvisible="3" style="color:red" %)Time to power this sensor, from 0 ~~ 65535ms
418 +**AT+EXT=6,timeout**  (% _msthash="506085" _msttexthash="8782189" _mstvisible="3" style="color:red" %)**Time to power this sensor, from 0 ~~ 65535ms**
506 506  
507 -For example:
420 +**For example:**
508 508  
509 509  AT+EXT=6,1000 will power this sensor for 1000ms before sampling the ADC value.
510 510  
... ... @@ -525,6 +525,7 @@
525 525  
526 526  When the voltage collected by ADC_IN1 is less than the minimum range, the minimum range will be used as the output; Similarly, when the collected voltage is greater than the maximum range, the maximum range will be used as the output.
527 527  
441 +
528 528  1) The minimum range is about 0.1V. Each chip has internal calibration, so this value is close to 0.1V
529 529  
530 530  [[image:image-20220628151005-5.png]]
... ... @@ -541,6 +541,122 @@
541 541  
542 542  
543 543  
458 +==== 2.4.6.4 Ext~=2 TMP117 Sensor (Since Firmware v1.3) ====
459 +
460 +
461 +[[image:image-20220927095645-1.png||height="534" width="460"]]
462 +
463 +
464 +(% style="color:blue" %)**Ext=2,Temperature Sensor(TMP117):**
465 +
466 +[[image:image-20220906102307-7.png]]
467 +
468 +
469 +(% style="color:blue" %)**Interrupt Mode and Counting Mode:**
470 +
471 +The external cable NE2 can be use for MOD4 and MOD8
472 +
473 +
474 +
475 +==== 2.4.6.5 Ext~=4 Interrupt Mode (Since Firmware v1.3) ====
476 +
477 +
478 +(% style="color:red" %)**Note: In this mode, 3.3v output will be always ON. LHT65N will send an uplink when there is a trigger.**
479 +
480 +
481 +(% style="color:blue" %)**Interrupt Mode can be used to connect to external interrupt sensors such as:**
482 +
483 +(% style="color:#037691" %)**Case 1: Door Sensor.** (%%)3.3v Out for such sensor is just to detect Open/Close.
484 +
485 + In Open State, the power consumption is the same as if there is no probe
486 +
487 + In Close state, the power consumption will be 3uA higher than normal.
488 +
489 +[[image:image-20220906100852-1.png||height="205" width="377"]]
490 +
491 +
492 +Ext=4,Interrupt Sensor:
493 +
494 +(% border="1.5" cellpadding="4" cellspacing="4" style="background-color:#ffffcc; color:green; height:6px; width:478px" %)
495 +|(% style="width:101px" %)(((
496 +AT+EXT=4,1
497 +)))|(% style="width:373px" %)(((
498 +Sent uplink packet in both rising and falling interrupt
499 +)))
500 +|(% style="width:101px" %)(((
501 +AT+EXT=4,2
502 +)))|(% style="width:373px" %)(((
503 +Sent uplink packet only in falling interrupt
504 +)))
505 +|(% style="width:101px" %)(((
506 +AT+EXT=4,3
507 +)))|(% style="width:373px" %)(((
508 +Sent uplink packet only in rising interrupt
509 +)))
510 +
511 +Trigger by falling edge:
512 +
513 +[[image:image-20220906101145-2.png]]
514 +
515 +
516 +Trigger by raising edge:
517 +
518 +[[image:image-20220906101145-3.png]]
519 +
520 +
521 +
522 +==== 2.4.6.6 Ext~=8 Counting Mode(Since Firmware v1.3) ====
523 +
524 +
525 +(% style="color:red" %)**Note: In this mode, 3.3v output will be always ON. LHT65N will count for every interrupt and uplink periodically.**
526 +
527 +
528 +(% style="color:blue" %)**Case 1**(%%):  Low power consumption Flow Sensor, such flow sensor has pulse output and the power consumption in uA level and can be powered by LHT65N.
529 +
530 +[[image:image-20220906101320-4.png||height="366" width="698"]]
531 +
532 +
533 +(% style="color:blue" %)**Case 2**(%%):  Normal Flow Sensor: Such flow sensor has higher power consumption and is not suitable to be powered by LHT65N. It is powered by external power and output <3.3v pulse
534 +
535 +[[image:image-20220906101320-5.png||height="353" width="696"]]
536 +
537 +
538 +Ext=8, Counting Sensor ( 4 bytes):
539 +
540 +(% border="2" cellpadding="4" cellspacing="4" style="background-color:#ffffcc; color:green; height:6px; width:381px" %)
541 +|(% style="width:138px" %)(((
542 +AT+EXT=8,0
543 +)))|(% style="width:240px" %)(((
544 +Count at falling interrupt
545 +)))
546 +|(% style="width:138px" %)(((
547 +AT+EXT=8,1
548 +)))|(% style="width:240px" %)(((
549 +Count at rising interrupt
550 +)))
551 +|(% style="width:138px" %)(((
552 +AT+SETCNT=60
553 +)))|(% style="width:240px" %)(((
554 +Sent current count to 60
555 +)))
556 +
557 +[[image:image-20220906101320-6.png]]
558 +
559 +
560 +(% style="color:blue" %)**A2 downlink Command:**
561 +
562 +A2 02:  Same as AT+EXT=2 (AT+EXT= second byte)
563 +
564 +A2 06 01 F4:  Same as AT+EXT=6,500 (AT+EXT= second byte, third and fourth bytes)
565 +
566 +A2 04 02:  Same as AT+EXT=4,2 (AT+EXT= second byte, third byte)
567 +
568 +A2 08 01 00:  Same as AT+EXT=8,0 (AT+EXT= second byte, fourth byte)
569 +
570 +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)
571 +
572 +
573 +
544 544  == 2.5 Show data on Datacake ==
545 545  
546 546  
... ... @@ -603,14 +603,24 @@
603 603  
604 604  There are two methods:
605 605  
606 -1. IoT Server sends a downlink LoRaWAN command to [[poll the value>>||anchor="H2.6.4Pollsensorvalue"]] for specifying time range.
607 -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.
636 +(% style="color:blue" %)**Method 1:** (%%)IoT Server sends a downlink LoRaWAN command to [[poll the value>>||anchor="H2.6.4Pollsensorvalue"]] for specified time range.
608 608  
638 +
639 +(% 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.
640 +
641 +
642 +(% style="color:red" %)**Note for method 2:**
643 +
644 +* a) LHT65N will do an ACK check for data records sending to make sure every data arrive server.
645 +* 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.
646 +
609 609  Below is the typical case for the auto-update datalog feature (Set PNACKMD=1)
610 610  
649 +
611 611  [[image:image-20220703111700-2.png||height="381" width="1119"]]
612 612  
613 613  
653 +
614 614  === 2.6.2 Unix TimeStamp ===
615 615  
616 616  
... ... @@ -635,11 +635,11 @@
635 635  
636 636  
637 637  (((
638 -There are two ways to set device's time:
678 +(% style="color:blue" %)**There are two ways to set device's time:**
639 639  )))
640 640  
641 641  (((
642 -**~1. Through LoRaWAN MAC Command (Default settings)**
682 +**1.  Through LoRaWAN MAC Command (Default settings)**
643 643  )))
644 644  
645 645  (((
... ... @@ -654,10 +654,8 @@
654 654  (% 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.**
655 655  )))
656 656  
657 -(((
658 -
659 -)))
660 660  
698 +
661 661  (((
662 662  **2. Manually Set Time**
663 663  )))
... ... @@ -689,338 +689,79 @@
689 689  === 2.6.5 Datalog Uplink payload ===
690 690  
691 691  
692 -(% _msthash="315267" _msttexthash="2245087" _mstvisible="1" %)
693 693  The Datalog poll reply uplink will use below payload format.
694 694  
695 -(% _mstvisible="1" %)
696 -(((
697 -(% _mstvisible="2" %)
698 -
732 +**Retrieval data payload:**
699 699  
700 -(% _mstvisible="2" %)
701 -(% _msthash="506080" _msttexthash="451581" _mstvisible="4" %)**Retrieval data payload**
702 -)))
734 +(% border="1" cellspacing="4" style="background-color:#ffffcc; color:green; width:480px" %)
735 +|=(% style="width: 60px;" %)(((
736 +**Size(bytes)**
737 +)))|=(% style="width: 90px;" %)**2**|=(% style="width: 90px;" %)**2**|=(% style="width: 70px;" %)**2**|=(% style="width: 100px;" %)**1**|=(% style="width: 70px;" %)**4**
738 +|(% style="width:97px" %)**Value**|(% style="width:123px" %)[[External sensor data>>||anchor="H2.4.6Extvalue"]]|(% style="width:108px" %)[[Built In Temperature>>||anchor="H2.4.3Built-inTemperature"]]|(% style="width:133px" %)[[Built-in Humidity>>||anchor="H2.4.4Built-inHumidity"]]|(% style="width:159px" %)Poll message flag & Ext|(% style="width:80px" %)[[Unix Time Stamp>>||anchor="H2.6.2UnixTimeStamp"]]
703 703  
704 -(% _mstvisible="1" border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %)
705 -(% _mstvisible="3" %)|=(% _mstvisible="4" style="width: 93px;" %)(% _mstvisible="5" %)
706 -(((
707 -(% _mstvisible="6" %)
708 -(((
709 -(% _mstvisible="7" %)
710 -(% _msthash="2224750" _msttexthash="161122" _mstvisible="9" %)**Size(bytes)**
711 -)))
712 -)))|=(% _mstvisible="4" style="width: 71px;" %)(% _mstvisible="5" %)
713 -(((
714 -(% _mstvisible="6" %)
715 -(((
716 -(% _mstvisible="7" %)
717 -(% _msthash="2224751" _msttexthash="4550" _mstvisible="9" %)**2**
718 -)))
719 -)))|=(% _mstvisible="4" style="width: 102px;" %)(% _mstvisible="5" %)
720 -(((
721 -(% _mstvisible="6" %)
722 -(((
723 -(% _mstvisible="7" %)
724 -(% _msthash="2224752" _msttexthash="4550" _mstvisible="9" %)**2**
725 -)))
726 -)))|=(% _mstvisible="4" style="width: 86px;" %)(% _mstvisible="5" %)
727 -(((
728 -(% _mstvisible="6" %)
729 -(((
730 -(% _mstvisible="7" %)
731 -(% _msthash="2224753" _msttexthash="4550" _mstvisible="9" %)**2**
732 -)))
733 -)))|=(% _mstvisible="4" style="width: 86px;" %)(% _mstvisible="5" %)
734 -(((
735 -(% _mstvisible="6" %)
736 -(((
737 -(% _mstvisible="7" %)
738 -(% _msthash="2224754" _msttexthash="4459" _mstvisible="9" %)**1**
739 -)))
740 -)))|=(% _mstvisible="4" style="width: 48px;" %)(% _mstvisible="5" %)
741 -(((
742 -(% _mstvisible="6" %)
743 -(((
744 -(% _mstvisible="7" %)
745 -(% _msthash="2224755" _msttexthash="4732" _mstvisible="9" %)**4**
746 -)))
747 -)))
748 -(% _mstvisible="3" %)|(% _mstvisible="4" style="width:93px" %)(% _mstvisible="5" %)
749 -(((
750 -(% _mstvisible="6" %)
751 -(((
752 -(% _mstvisible="7" %)
753 -(% _msthash="2224756" _msttexthash="60203" _mstvisible="9" %)**Value**
754 -)))
755 -)))|(% _mstvisible="4" style="width:71px" %)(% _mstvisible="5" %)
756 -(((
757 -(% _mstvisible="6" %)
758 -(((
759 -(% _mstvisible="7" %)
760 -[[External sensor data>>||anchor="H2.4.6Extvalue" _msthash="2224757" _msttexthash="386672" _mstvisible="8"]]
761 -)))
762 -)))|(% _mstvisible="4" style="width:102px" %)(% _mstvisible="5" %)
763 -(((
764 -(% _mstvisible="6" %)
765 -(((
766 -(% _mstvisible="7" %)
767 -(((
768 -(% _mstvisible="8" %)
769 -[[Built In>>||anchor="H2.4.3Built-inTemperature" _msthash="2671864" _msttexthash="91065" _mstvisible="9"]]
770 -)))
771 -)))
740 +**Poll message flag & Ext:**
772 772  
773 -(% _mstvisible="6" %)
774 -(((
775 -(% _mstvisible="7" %)
776 -(((
777 -(% _mstvisible="8" %)
778 -[[Temperature>>||anchor="H2.4.3Built-inTemperature" _msthash="2671865" _msttexthash="184041" _mstvisible="9"]]
779 -)))
780 -)))
781 -)))|(% _mstvisible="4" style="width:86px" %)(% _mstvisible="5" %)
782 -(((
783 -(% _mstvisible="6" %)
784 -(((
785 -(% _mstvisible="7" %)
786 -(((
787 -(% _mstvisible="8" %)
788 -[[Built-in>>||anchor="H2.4.4Built-inHumidity" _msthash="2671866" _msttexthash="105872" _mstvisible="9"]]
789 -)))
790 -)))
742 +[[image:image-20221006192726-1.png||height="112" width="754"]]
791 791  
792 -(% _mstvisible="6" %)
793 -(((
794 -(% _mstvisible="7" %)
795 -(((
796 -(% _mstvisible="8" %)
797 -[[Humidity>>||anchor="H2.4.4Built-inHumidity" _msthash="2671867" _msttexthash="117429" _mstvisible="9"]]
798 -)))
799 -)))
800 -)))|(% _mstvisible="4" style="width:86px" %)(% _mstvisible="5" %)
801 -(((
802 -(% _mstvisible="6" %)
803 -(((
804 -(% _msthash="2224758" _msttexthash="390390" _mstvisible="7" %)
805 -Poll message flag & Ext
806 -)))
807 -)))|(% _mstvisible="4" style="width:48px" %)(% _mstvisible="5" %)
808 -(((
809 -(% _mstvisible="6" %)
810 -(((
811 -(% _mstvisible="7" %)
812 -(((
813 -(% _mstvisible="8" %)
814 -[[Unix Time Stamp>>||anchor="H2.6.2UnixTimeStamp" _msthash="2671868" _msttexthash="227175" _mstvisible="9"]]
815 -)))
816 -)))
744 +(% style="color:blue" %)**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)
817 817  
818 -(% _mstvisible="6" %)
819 -(((
820 -(% _mstvisible="7" %)
821 -(((
822 -(% _mstvisible="8" %)
823 -
824 -)))
825 -)))
826 -)))
746 +(% style="color:blue" %)**Poll Message Flag**(%%): 1: This message is a poll message reply.
827 827  
828 -(% _mstvisible="1" %)
829 -(% _msthash="315268" _msttexthash="390390" _mstvisible="3" %)**Poll message flag & Ext**
748 +* Poll Message Flag is set to 1.
830 830  
831 -(% _mstvisible="1" %)
832 -[[image:image-20220523152208-14.png||_mstalt="452920" _mstvisible="3"]]
750 +* Each data entry is 11 bytes, to save airtime and battery, devices will send max bytes according to the current DR and Frequency bands.
833 833  
834 -(% _mstvisible="1" %)
835 -(((
836 -(% _mstvisible="2" %)
837 -(((
838 -(% _msthash="736723" _msttexthash="2005003" _mstvisible="3" %)
839 -(((
840 -Poll Message Flag: 1: This message is a poll message reply.
841 -)))
842 -)))
843 -)))
844 -
845 -(% _mstvisible="1" %)
846 -* (% _mstvisible="3" %)
847 -(((
848 -(% _mstvisible="4" %)
849 -(((
850 -(% _msthash="1197157" _msttexthash="561548" _mstvisible="5" %)
851 -(((
852 -Poll Message Flag is set to 1.
853 -)))
854 -)))
855 -)))
856 -* (% _mstvisible="3" %)
857 -(((
858 -(% _mstvisible="4" %)
859 -(((
860 -(% _msthash="1197158" _msttexthash="9284964" _mstvisible="5" %)
861 -(((
862 -Each data entry is 11 bytes, to save airtime and battery, devices will send max bytes according to the current DR and Frequency bands.
863 -)))
864 -)))
865 -)))
866 -
867 -(% _mstvisible="1" %)
868 -(((
869 -(% _mstvisible="2" %)
870 -(((
871 -(% _msthash="736724" _msttexthash="2242344" _mstvisible="3" %)
872 -(((
873 -
874 -)))
875 -
876 -(% _msthash="736724" _msttexthash="2242344" _mstvisible="3" %)
877 -(((
878 878  For example, in US915 band, the max payload for different DR is:
879 -)))
880 -)))
881 -)))
882 882  
883 -(% _mstvisible="1" %)
884 -(((
885 -(% _mstvisible="2" %)
886 -(((
887 -(% _msthash="736725" _msttexthash="1065532" _mstvisible="3" %)
888 -(((
889 -a) DR0: max is 11 bytes so one entry of data
890 -)))
891 -)))
892 -)))
754 +(% style="color:blue" %)**a) DR0:** (%%)max is 11 bytes so one entry of data
893 893  
894 -(% _mstvisible="1" %)
895 -(((
896 -(% _mstvisible="2" %)
897 -(((
898 -(% _msthash="736726" _msttexthash="3265665" _mstvisible="3" %)
899 -(((
900 -b) DR1: max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
901 -)))
902 -)))
903 -)))
756 +(% style="color:blue" %)**b) DR1:**(%%) max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
904 904  
905 -(% _mstvisible="1" %)
906 -(((
907 -(% _mstvisible="2" %)
908 -(((
909 -(% _msthash="736727" _msttexthash="1454115" _mstvisible="3" style="text-align: left;" %)
910 -(((
911 -c) DR2: total payload includes 11 entries of data
912 -)))
913 -)))
914 -)))
758 +(% style="color:blue" %)**c) DR2:**(%%) total payload includes 11 entries of data
915 915  
916 -(% _mstvisible="1" %)
917 -(((
918 -(% _mstvisible="2" %)
919 -(((
920 -(% _msthash="736728" _msttexthash="1483924" _mstvisible="3" style="text-align: left;" %)
921 -(((
922 -d) DR3: total payload includes 22 entries of data.
923 -)))
924 -)))
925 -)))
760 +(% style="color:blue" %)**d) DR3: **(%%)total payload includes 22 entries of data.
926 926  
927 -(% _mstvisible="1" %)
928 -(((
929 -(% _mstvisible="2" %)
930 -(((
931 -(% _msthash="736729" _msttexthash="5848349" _mstvisible="3" style="text-align: left;" %)
932 -(((
933 -If devise doesn’t have any data in the polling time. Device will uplink 11 bytes of 0   
934 -)))
935 -)))
936 -)))
762 +If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0   
937 937  
938 938  
939 -(% _mstvisible="1" style="text-align: left;" %)
940 -(% _msthash="315269" _msttexthash="104767" _mstvisible="3" %)**Example:**
765 +**Example:**
941 941  
942 -(% _msthash="315270" _msttexthash="913822" _mstvisible="1" style="text-align: left;" %)
943 943  If LHT65N has below data inside Flash:
944 944  
945 -(% _mstvisible="1" %)
946 946  [[image:image-20220523144455-1.png||_mstalt="430040" _mstvisible="3" height="335" width="735"]]
947 947  
948 -(% _mstvisible="1" %)
949 -(((
950 -(% _msthash="506081" _msttexthash="1663961" _mstvisible="2" style="text-align: left;" %)
951 -If user sends below downlink command: (% _mstvisible="3" style="background-color:yellow" %)3160065F9760066DA705
952 -)))
953 953  
954 -(% _mstvisible="1" %)
955 -(((
956 -(% _msthash="506082" _msttexthash="1092494" _mstvisible="2" style="text-align: left;" %)
957 - Where : Start time: 60065F97 = time 21/1/19 04:27:03
958 -)))
772 +If user sends below downlink command: (% style="background-color:yellow" %)3160065F9760066DA705
959 959  
960 -(% _mstvisible="1" %)
961 -(((
962 -(% _msthash="506083" _msttexthash="737269" _mstvisible="2" style="text-align: left;" %)
963 - Stop time 60066DA7= time 21/1/19 05:27:(% _msthash="903005" _msttexthash="9672" _mstvisible="2" %)03
964 -)))
774 +Where : Start time: 60065F97 = time 21/1/19 04:27:03
965 965  
966 -(% _mstvisible="1" %)
967 -(((
968 -(% _mstvisible="2" %)
969 -
970 -)))
776 + Stop time: 60066DA7= time 21/1/19 05:27:03
971 971  
972 -(% _mstvisible="1" %)
973 -(((
974 -(% _msthash="506084" _msttexthash="751218" _mstvisible="2" style="text-align: left;" %)
975 -LHT65N will uplink this payload.
976 -)))
977 977  
978 -(% _mstvisible="1" %)
779 +**LHT65N will uplink this payload.**
780 +
979 979  [[image:image-20220523001219-13.png||_mstalt="451204" _mstvisible="3" height="421" style="text-align:left" width="727"]]
980 980  
981 -(% _msthash="315271" _msttexthash="12012546" _mstvisible="1" style="text-align: left;" %)
982 -(((
983 -7FFF089801464160065F977FFF088E014B41600660097FFF0885014E41600660667FFF0875015141600662BE7FFF086B015541600665167FFF08660155416006676E7FFF085F015A41600669C67FFF0857015D4160066C1E
984 -)))
985 985  
986 -(% _msthash="315237" _msttexthash="1385839" %)
987 -(((
784 +__**7FFF089801464160065F97**__ **__7FFF__ __088E__ __014B__ __41__ __60066009__** 7FFF0885014E41600660667FFF0875015141600662BE7FFF086B015541600665167FFF08660155416006676E7FFF085F015A41600669C67FFF0857015D4160066C1E
785 +
988 988  Where the first 11 bytes is for the first entry:
989 -)))
990 990  
991 -(% _msthash="315238" _msttexthash="274846" %)
992 -(((
993 993  7FFF089801464160065F97
994 -)))
995 995  
996 -(% _msthash="315239" _msttexthash="617435" %)
997 -(((
998 998  Ext sensor data=0x7FFF/100=327.67
999 -)))
1000 1000  
1001 -(% _msthash="315240" _msttexthash="270543" %)
1002 -(((
1003 -Temp=0x0898/100=22.00
1004 -)))
792 +Temp=0x088E/100=22.00
1005 1005  
1006 -(% _msthash="315241" _msttexthash="211783" %)
1007 -(((
1008 -Hum=0x0146/10=32.6
1009 -)))
794 +Hum=0x014B/10=32.6
1010 1010  
1011 -(% _msthash="315242" _msttexthash="1569776" %)
1012 -(((
1013 1013  poll message flag & Ext=0x41,means reply data,Ext=1
1014 -)))
1015 1015  
1016 -(% _msthash="315243" _msttexthash="1120509" %)
1017 -(((
1018 -Unix time is 0x60065F97=1611030423s=21/1/19 04:27:03
1019 -)))
798 +Unix time is 0x60066009=1611030423s=21/1/19 04:27:03
1020 1020  
1021 1021  
1022 1022  
1023 -== 2.7 Alarm Mode ==
802 +== 2.7 Alarm Mode & Feature "Multi sampling, one uplink" ==
1024 1024  
1025 1025  
1026 1026  (((
... ... @@ -1030,17 +1030,142 @@
1030 1030  (((
1031 1031  (% style="color:red" %)**Note: alarm mode adds a little power consumption, and we recommend extending the normal read time when this feature is enabled.**
1032 1032  
1033 -
1034 -)))
1035 1035  
813 +
814 +=== 2.7.1 ALARM MODE ( Since v1.3.1 firmware) ===
815 +
816 +
817 +**Internal GXHT30 temperature alarm**
818 +
1036 1036  (((
1037 -**AT COMMAND FOR ALARM MODE:**
820 +(% class="box infomessage" %)
821 +(((
822 +**AT+WMOD=3**:  Enable/disable alarm mode. (0: Disabled, 1: Enabled Temperature Alarm for onboard temperature sensor)
823 +
824 +**AT+CITEMP=1**:  The interval between checking the alarm temperature. (In minutes)
825 +
826 +**AT+ARTEMP**:  Gets or sets the alarm range of the internal temperature sensor
827 +
828 +**AT+ARTEMP=? **:  Gets the alarm range of the internal temperature sensor(% _mstvisible="3" style="display:none" %)
829 +
830 +**AT+ARTEMP=45,105**:  Set the internal temperature sensor alarm range from 45 to 105.
831 +
832 +**AT+LEDALARM=1** :       Enable LED visual Alarm.
1038 1038  )))
834 +)))
1039 1039  
836 +(% style="color:#4f81bd" %)**Downlink Command:**
837 +
838 +AT+WMOD=1:  A501  ,  AT+WMOD=0 :  A600
839 +
840 +AT+CITEMP=1 : A60001
841 +
842 +AT+ARTEMP=1,60  :  A70001003C
843 +
844 +AT+ARTEMP=-16,60 :  A7FFF0003C
845 +
846 +AT+LEDALARM=1  :  3601
847 +
848 +
849 +(% style="color:#4f81bd" %)**Downlink Command: AAXXXXXXXXXXXXXX**
850 +
851 +Total bytes: 8 bytes
852 +
853 +**Example: **AA0100010001003C
854 +
855 +WMOD=01
856 +
857 +CITEMP=0001
858 +
859 +TEMPlow=0001
860 +
861 +TEMPhigh=003C
862 +
863 +
864 +**DS18B20 and TMP117 Threshold Alarm**
865 +
866 +**~ AT+WMOD=1,60,-10,20**
867 +
868 +(% style="color:#4f81bd" %)**Downlink Command:**
869 +
870 +**Example: **A5013CFC180014
871 +
872 +MOD=01
873 +
874 +CITEMP=3C(S)
875 +
876 +TEMPlow=FC18
877 +
878 +TEMPhigh=0014
879 +
880 +
881 +**Fluctuation alarm for DS18B20 and TMP117**
882 +
883 +**AT+WMOD=2,60,5** 
884 +
885 +(% style="color:#4f81bd" %)**Downlink Command:**
886 +
887 +**Example: **A5023C05
888 +
889 +MOD=02
890 +
891 +CITEMP=3C(S)
892 +
893 +temperature fluctuation=05
894 +
895 +
896 +==== **Sampling multiple times and uplink together** ====
897 +
898 +**AT+WMOD=3,1,60,20,-16,32,1**  ~/~/ Mode 3, the collection interval is 60s, the total number of collection is 20 times, and the data of these 20 times will be sent to the 20th time, with a maximum of 60 groups, the normal working temperature range is -16 to 32°C, 1 is to open the temperature alarm, 0 is to close the temperature alarm, and the temperature is turned on. After the alarm, if the temperature collected at the current time exceeds the normal working temperature, a data will be sent immediately.
899 +
900 +(% style="color:#4f81bd" %)**Downlink Command:**
901 +
902 +**Example: **A50301003C14FFF0002001
903 +
904 +MOD=03
905 +
906 +EXT=01
907 +
908 +CITEMP=003C(S)
909 +
910 +Total number of acquisitions=14
911 +
912 +TEMPlow=FFF0
913 +
914 +TEMPhigh=0020
915 +
916 +ARTEMP=01
917 +
918 +
919 +**Uplink payload( Fport=3)**
920 +
921 +**Example: **CBEA0109920A4109C4
922 +
923 +BatV=CBEA
924 +
925 +EXT=01
926 +
927 +Temp1=0992  ~/~/ 24.50℃
928 +
929 +Temp2=0A41  ~/~/ 26.25℃
930 +
931 +Temp3=09C4  ~/~/ 25.00℃
932 +
933 +
934 +(% style="color:red" %)**Note: This uplink will automatically select the appropriate DR according to the data length**
935 +
936 +(% style="color:red" %)** In this mode, the temperature resolution of ds18b20 is 0.25℃ to save power consumption**
937 +
938 +)))
939 +
940 +
941 +=== 2.7.2 ALARM MODE ( Before v1.3.1 firmware) ===
942 +
943 +
1040 1040  (% _mstvisible="1" class="box infomessage" %)
1041 1041  (((
1042 1042  (((
1043 -**AT+WMOD=1**:  Enable/disable alarm mode. (0: Disabled, 1: Enabled)
947 +**AT+WMOD=1**:  Enable/disable alarm mode. (0: Disabled, 1: Enabled Temperature Alarm for onboard temperature sensor)
1044 1044  )))
1045 1045  
1046 1046  (((
... ... @@ -1092,6 +1092,7 @@
1092 1092  
1093 1093  
1094 1094  
999 +
1095 1095  == 2.9 installation ==
1096 1096  
1097 1097  
... ... @@ -1102,6 +1102,7 @@
1102 1102  
1103 1103  = 3. Sensors and Accessories =
1104 1104  
1010 +
1105 1105  == 3.1 E2 Extension Cable ==
1106 1106  
1107 1107  
... ... @@ -1150,6 +1150,7 @@
1150 1150  
1151 1151  
1152 1152  
1059 +
1153 1153  = 4. Configure LHT65N via AT command or LoRaWAN downlink =
1154 1154  
1155 1155  
... ... @@ -1213,14 +1213,15 @@
1213 1213  
1214 1214  Format: Command Code (0x01) followed by 3 bytes time value.
1215 1215  
1216 -If the downlink payload=0100003C, it means set the END Nodes Transmit Interval to 0x00003C=60(S), while type code is 01.
1123 +If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01.
1217 1217  
1218 -* **Example 1**: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds
1125 +* **Example 1**: Downlink Payload: 0100001E  ~/~/ Set Transmit Interval (TDC) = 30 seconds
1219 1219  
1220 -* **Example 2**: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds
1127 +* **Example 2**: Downlink Payload: 0100003C  ~/~/ Set Transmit Interval (TDC) = 60 seconds
1221 1221  
1222 1222  
1223 1223  
1131 +
1224 1224  == 4.2 Set External Sensor Mode ==
1225 1225  
1226 1226  
... ... @@ -1246,6 +1246,7 @@
1246 1246  
1247 1247  
1248 1248  
1157 +
1249 1249  == 4.3 Enable/Disable uplink Temperature probe ID ==
1250 1250  
1251 1251  
... ... @@ -1278,6 +1278,7 @@
1278 1278  
1279 1279  
1280 1280  
1190 +
1281 1281  == 4.4 Set Password ==
1282 1282  
1283 1283  
... ... @@ -1331,6 +1331,7 @@
1331 1331  
1332 1332  
1333 1333  
1244 +
1334 1334  == 4.7 Set system time ==
1335 1335  
1336 1336  
... ... @@ -1344,7 +1344,7 @@
1344 1344  
1345 1345  (% _msthash="315254" _msttexthash="298038" style="color:#4f81bd" %)**Downlink Command:**
1346 1346  
1347 -0x306007806000 ~/~/ Set timestamp to 0x(6007806000),Same as AT+TIMESTAMP=1611104352
1258 +0x306007806000  ~/~/  Set timestamp to 0x(6007806000),Same as AT+TIMESTAMP=1611104352
1348 1348  
1349 1349  
1350 1350  
... ... @@ -1368,8 +1368,8 @@
1368 1368  
1369 1369  (% style="color:#4f81bd" %)**Downlink Command:**
1370 1370  
1371 -0x28 01 ~/~/ Same As AT+SYNCMOD=1
1372 -0x28 00 ~/~/ Same As AT+SYNCMOD=0
1282 +0x28 01  ~/~/  Same As AT+SYNCMOD=1
1283 +0x28 00  ~/~/  Same As AT+SYNCMOD=0
1373 1373  
1374 1374  
1375 1375  
... ... @@ -1386,7 +1386,7 @@
1386 1386  
1387 1387  (% _msthash="315257" _msttexthash="298038" style="color:#4f81bd" %)**Downlink Command:**
1388 1388  
1389 -**0x29 0A** ~/~/ Same as AT+SYNCTDC=0x0A
1300 +**0x29 0A**  ~/~/ Same as AT+SYNCTDC=0x0A
1390 1390  
1391 1391  
1392 1392  
... ... @@ -1437,53 +1437,102 @@
1437 1437  
1438 1438  (% style="color:#4f81bd" %)**Downlink Command: 0xA3**
1439 1439  
1440 -* Example: 0xA301 ~/~/Same as AT+CLRDTA
1351 +* Example: 0xA301  ~/~/  Same as AT+CLRDTA
1441 1441  
1442 1442  
1443 1443  
1355 +
1444 1444  == 4.13 Auto Send None-ACK messages ==
1445 1445  
1446 1446  
1447 -(% _msthash="315394" _msttexthash="51837149" _mstvisible="1" %)
1448 1448  Feature: LHT65N will wait for ACK for each uplink, If LHT65N doesn't get ACK from the IoT server, it will consider the message doesn't arrive server and store it. LHT65N keeps sending messages in normal periodically. Once LHT65N gets ACK from a server, it will consider the network is ok and start to send the not-arrive message.
1449 1449  
1450 1450  
1451 1451  (% style="color:#4f81bd" %)**AT Command: AT+PNACKMD**
1452 1452  
1453 -(% _msthash="315396" _msttexthash="734682" _mstvisible="1" %)
1454 1454  The default factory setting is 0
1455 1455  
1456 -(% _mstvisible="1" border="1" style="background-color:#ffffcc; color:green; width:450px" %)
1457 -(% _mstvisible="3" %)|=(% _mstvisible="4" style="width: 171px;" %)(% _msthash="1231737" _msttexthash="251862" _mstvisible="6" %)**Command Example**|=(% _mstvisible="4" style="width: 219px;" %)(% _msthash="1231738" _msttexthash="116025" _mstvisible="6" %)**Function**|=(% _mstvisible="4" style="width: 119px;" %)(% _msthash="1231739" _msttexthash="116831" _mstvisible="6" %)**Response**
1458 -(% _mstvisible="3" %)|(% _msthash="1231321" _msttexthash="130455" _mstvisible="4" style="width:171px" %)AT+PNACKMD=1|(% _msthash="1231322" _msttexthash="377026" _mstvisible="4" style="width:219px" %)Poll None-ACK message|(% _msthash="1231323" _msttexthash="14989" _mstvisible="4" style="width:119px" %)OK
1366 +(% border="1" cellspacing="4" style="background-color:#ffffcc; color:green; width:367px" %)
1367 +|=(% style="width: 158px;" %)**Command Example**|=(% style="width: 118px;" %)**Function**|=(% style="width: 87px;" %)**Response**
1368 +|(% style="width:158px" %)AT+PNACKMD=1|(% style="width:118px" %)Poll None-ACK message|(% style="width:87px" %)OK
1459 1459  
1460 1460  (% style="color:#4f81bd" %)**Downlink Command: 0x34**
1461 1461  
1462 -* Example: 0x3401 ~/~/Same as AT+PNACKMD=1
1372 +* Example: 0x3401  ~/~/  Same as AT+PNACKMD=1
1463 1463  
1464 1464  
1465 1465  
1376 +
1377 +== 4.14 Modified WMOD command for external sensor TMP117 or DS18B20 temperature alarm(Since firmware 1.3.0) ==
1378 +
1379 +
1380 +Feature: Set internal and external temperature sensor alarms.
1381 +
1382 +(% border="1" cellspacing="4" style="background-color:#ffffcc; color:green; width:500px" %)
1383 +|=(% style="width: 250px;" %)**Command Example**|=(% style="width: 200px;" %)**Function**|=(% style="width: 50px;" %)**Response**
1384 +|(% style="width:268px" %)AT+WMOD=parameter1,parameter2,parameter3,parameter4|(% style="width:255px" %)Set internal and external temperature sensor alarms|(% style="width:181px" %)OK
1385 +
1386 +(% style="color:#037691" %)**AT+WMOD=parameter1,parameter2,parameter3,parameter4**
1387 +
1388 +(% style="color:#037691" %)**Parameter 1**(%%):  Alarm mode:
1389 +
1390 +0): Cancel
1391 +
1392 +1): Threshold alarm
1393 +
1394 +2): Fluctuation alarm
1395 +
1396 +
1397 +(% style="color:#037691" %)** Parameter 2**(%%):  Sampling time. Unit: seconds, up to 255 seconds.
1398 +
1399 +(% 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.**
1400 +
1401 +
1402 +(% style="color:#037691" %) **Parameter 3 and parameter 4:**
1403 +
1404 +1):  If Alarm Mode is set to 1: Parameter 3 and parameter 4 are valid, as before, they represent low temperature and high temperature.
1405 +
1406 +Such as AT+WMOD=1,60,45,105, it means high and low temperature alarm.
1407 +
1408 +
1409 +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.
1410 +
1411 +Such as AT+WMOD=2,10,2,it means that it is a fluctuation alarm.
1412 +
1413 +If the difference between the current collected temperature and the last Uplin is ±2 degrees, the alarm will be issued.
1414 +
1415 +
1416 +(% style="color:#4f81bd" %)**Downlink Command: 0xA5**
1417 +
1418 +0xA5 00 ~-~- AT+WMOD=0.
1419 +
1420 +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 )
1421 +
1422 +0XA5 01 0A F9 C0 29 04 ~-~-AT+WMOD=1,10,-16,105(Need to convert -16 to -1600 for calculation,-1600(DEC)=FFFFFFFFFFFFF9C0(HEX)  FFFFFFFFFFFFF9C0(HEX) +10000(HEX)=F9C0(HEX))
1423 +
1424 +0xA5 02 0A 02 ~-~- AT+WMOD=2,10,2  (AT+WMOD = second byte, third byte, fourth byte)
1425 +
1426 +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.
1427 +
1428 +
1429 +
1466 1466  = 5. Battery & How to replace =
1467 1467  
1432 +
1468 1468  == 5.1 Battery Type ==
1469 1469  
1470 1470  
1436 +
1471 1471  (((
1472 -(((
1473 1473  LHT65N is equipped with a 2400mAH Li-MnO2 (CR17505) battery . The battery is an un-rechargeable battery with low discharge rate targeting for up to 8~~10 years use. This type of battery is commonly used in IoT devices for long-term running, such as water meters.
1474 1474  )))
1475 -)))
1476 1476  
1477 -(((
1478 -
1479 -)))
1480 1480  
1442 +
1481 1481  (((
1482 -(((
1483 1483  The discharge curve is not linear so can't simply use percentage to show the battery level. Below is the battery performance.
1484 1484  [[image:image-20220515075034-1.png||_mstalt="428961" _mstvisible="4" height="208" width="644"]]
1485 1485  )))
1486 -)))
1487 1487  
1488 1488  The minimum Working Voltage for the LHT65N is ~~ 2.5v. When battery is lower than 2.6v, it is time to change the battery.
1489 1489  
... ... @@ -1497,6 +1497,7 @@
1497 1497  [[image:image-20220515075440-2.png||_mstalt="429546" _mstvisible="3" height="338" width="272"]][[image:image-20220515075625-3.png||_mstalt="431574" _mstvisible="3" height="193" width="257"]]
1498 1498  
1499 1499  
1460 +
1500 1500  == 5.3 Battery Life Analyze ==
1501 1501  
1502 1502  
... ... @@ -1505,9 +1505,6 @@
1505 1505  [[https:~~/~~/www.dragino.com/downloads/downloads/LoRa_End_Node/Battery_Analyze/DRAGINO_Battery_Life_Guide.pdf>>https://www.dragino.com/downloads/downloads/LoRa_End_Node/Battery_Analyze/DRAGINO_Battery_Life_Guide.pdf]]
1506 1506  )))
1507 1507  
1508 -(((
1509 -
1510 -)))
1511 1511  
1512 1512  (((
1513 1513  A full detail test report for LHT65N on different frequency can be found at : [[https:~~/~~/www.dropbox.com/sh/r2i3zlhsyrpavla/AAB1sZw3mdT0K7XjpHCITt13a?dl=0>>https://www.dropbox.com/sh/r2i3zlhsyrpavla/AAB1sZw3mdT0K7XjpHCITt13a?dl=0]]
... ... @@ -1531,7 +1531,6 @@
1531 1531  * (% style="background-color:yellow" %)**USB to TTL GND <~-~->GND**
1532 1532  * (% style="background-color:yellow" %)**USB to TTL RXD <~-~-> D+**
1533 1533  * (% style="background-color:yellow" %)**USB to TTL TXD <~-~-> A11**
1534 -* (% style="background-color:yellow" %)**USB to TTL 3.3V <~-~-> D-**
1535 1535  
1536 1536  (((
1537 1537  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.
... ... @@ -1783,7 +1783,7 @@
1783 1783  == 6.3 How to change the uplink interval? ==
1784 1784  
1785 1785  
1786 -[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/How%20to%20set%20the%20transmit%20time%20interval/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20set%20the%20transmit%20time%20interval/||_msthash="506137" _msttexthash="5712018"]]
1743 +Please see this link: [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/How%20to%20set%20the%20transmit%20time%20interval/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20set%20the%20transmit%20time%20interval/||_msthash="506137" _msttexthash="5712018" style="background-color: rgb(255, 255, 255);"]]
1787 1787  
1788 1788  
1789 1789  
... ... @@ -1817,6 +1817,7 @@
1817 1817  [[image:image-20220615170542-5.png]]
1818 1818  
1819 1819  
1777 +
1820 1820  (% style="color:blue" %)**Step2**(%%):wiring method.(% style="display:none" %)
1821 1821  
1822 1822  (% _msthash="506146" _msttexthash="52173160" %)
... ... @@ -1830,6 +1830,7 @@
1830 1830  [[image:image-20220621170938-2.png]]
1831 1831  
1832 1832  
1791 +
1833 1833  (% style="color:blue" %)**Step3:**(%%)Select the device port to be connected, baud rate and bin file to be downloaded.
1834 1834  
1835 1835  [[image:image-20220615171334-6.png]]
... ... @@ -1878,6 +1878,7 @@
1878 1878  [[image:image-20220615170542-5.png]]
1879 1879  
1880 1880  
1840 +
1881 1881  (% style="color:blue" %)**Step2**(%%):wiring method.(% style="display:none" %)
1882 1882  
1883 1883  (% _msthash="506146" _msttexthash="52173160" %)
... ... @@ -1890,6 +1890,7 @@
1890 1890  Press and hold the start key to restart and enter  (% _mstvisible="1" %)bootlaod(%%) mode.
1891 1891  
1892 1892  
1853 +
1893 1893  (% style="color:blue" %)**Step3:**(%%)Select the device port to be connected, baud rate and bin file to be downloaded.
1894 1894  
1895 1895  [[image:image-20220615171334-6.png]]
... ... @@ -1914,20 +1914,13 @@
1914 1914  
1915 1915  (% style="color:#4f81bd" %)**XX **(%%): The default frequency band
1916 1916  
1917 -(% style="color:#4f81bd" %)** **(% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band
1918 -
1878 +* (% style="color:#4f81bd" %)** **(% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band
1919 1919  * (% style="color:#4f81bd" %)** **(% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band
1920 -
1921 1921  * (% style="color:#4f81bd" %)** **(% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band
1922 -
1923 1923  * (% style="color:#4f81bd" %)** **(% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band
1924 -
1925 1925  * (% style="color:#4f81bd" %)** **(% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band
1926 -
1927 1927  * (% style="color:#4f81bd" %)** **(% style="color:red" %)**US915**(%%): LoRaWAN US915 band
1928 -
1929 1929  * (% style="color:#4f81bd" %)** **(% style="color:red" %)**IN865**(%%): LoRaWAN IN865 band
1930 -
1931 1931  * (% style="color:#4f81bd" %)** **(% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
1932 1932  
1933 1933  (% style="color:#4f81bd" %)**YY**(%%): Sensor Accessories
... ... @@ -1935,6 +1935,8 @@
1935 1935  * (% style="color:red" %)**E3**(%%): External Temperature Probe
1936 1936  
1937 1937  
1892 +
1893 +
1938 1938  = 8. Packing Info =
1939 1939  
1940 1940  
... ... @@ -1949,6 +1949,8 @@
1949 1949  * Device Weight: 120.5g
1950 1950  
1951 1951  
1908 +
1909 +
1952 1952  = 9. Reference material =
1953 1953  
1954 1954  
... ... @@ -1955,6 +1955,8 @@
1955 1955  * [[Datasheet, photos, decoder, firmware>>https://www.dropbox.com/sh/una19zsni308dme/AACOKp6J2RF5TMlKWT5zU3RTa?dl=0||_msthash="504975" _msttexthash="51420512"]]
1956 1956  
1957 1957  
1916 +
1917 +
1958 1958  = 10. FCC Warning =
1959 1959  
1960 1960  
... ... @@ -1963,3 +1963,6 @@
1963 1963  (1) This device may not cause harmful interference;
1964 1964  
1965 1965  (2) this device must accept any interference received, including interference that may cause undesired operation.
1926 +
1927 +
1928 +
image-20220927095645-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Bei
Size
... ... @@ -1,0 +1,1 @@
1 +174.1 KB
Content
image-20221006192726-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Edwin
Size
... ... @@ -1,0 +1,1 @@
1 +17.3 KB
Content