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

From version 198.4
edited by Xiaoling
on 2022/09/06 14:30
Change comment: There is no comment for this version
To version 215.1
edited by Edwin Chen
on 2022/11/03 23:50
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
... ... @@ -61,9 +61,6 @@
61 61  * Tri-color LED to indicate working status
62 62  * Datalog feature (Max 3328 records)
63 63  
64 -
65 -
66 -
67 67  == 1.3 Specification ==
68 68  
69 69  
... ... @@ -88,9 +88,6 @@
88 88  * ±2°C accuracy from -55°C to +125°C
89 89  * Operating Range: -55 °C ~~ 125 °C
90 90  
91 -
92 -
93 -
94 94  = 2. Connect LHT65N to IoT Server =
95 95  
96 96  
... ... @@ -138,6 +138,7 @@
138 138  (% _msthash="315240" _msttexthash="9205482" _mstvisible="1" class="wikigeneratedid" %)
139 139  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.
140 140  
135 +
141 141  (% _mstvisible="1" class="wikigeneratedid" %)
142 142  [[image:image-20220522232442-1.png||_mstalt="427830" _mstvisible="3" height="387" width="648"]]
143 143  
... ... @@ -201,10 +201,9 @@
201 201  
202 202  
203 203  
199 +== 2.4 Uplink Payload   ( Fport~=2) ==
204 204  
205 -== 2.4 Uplink Payload ==
206 206  
207 -
208 208  (((
209 209  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.
210 210  )))
... ... @@ -213,92 +213,54 @@
213 213  After each uplink, the (% _mstvisible="3" style="color:blue" %)**BLUE LED**(%%) will blink once.
214 214  )))
215 215  
216 -(% _mstvisible="1" border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:426px" %)
217 -(% _mstvisible="3" %)|=(% _mstvisible="4" style="width: 97px;" %)(% _mstvisible="5" %)
218 -(((
219 -(% _mstvisible="6" %)
220 -(% _msthash="1817478" _msttexthash="161122" _mstvisible="8" %)**Size(bytes)**
221 -)))|=(% _mstvisible="4" style="width: 39px;" %)(% _mstvisible="5" %)
222 -(((
223 -(% _mstvisible="6" %)
224 -(% _msthash="1817479" _msttexthash="4550" _mstvisible="8" %)**2**
225 -)))|=(% _mstvisible="4" style="width: 100px;" %)(% _mstvisible="5" %)
226 -(((
227 -(% _mstvisible="6" %)
228 -(% _msthash="1817480" _msttexthash="4550" _mstvisible="8" %)**2**
229 -)))|=(% _mstvisible="4" style="width: 77px;" %)(% _mstvisible="5" %)
230 -(((
231 -(% _mstvisible="6" %)
232 -(% _msthash="1817481" _msttexthash="4550" _mstvisible="8" %)**2**
233 -)))|=(% _mstvisible="4" style="width: 47px;" %)(% _mstvisible="5" %)
234 -(((
235 -(% _mstvisible="6" %)
236 -(% _msthash="1817482" _msttexthash="4459" _mstvisible="8" %)**1**
237 -)))|=(% _mstvisible="4" style="width: 51px;" %)(% _mstvisible="5" %)
238 -(((
239 -(% _mstvisible="6" %)
240 -(% _msthash="1817483" _msttexthash="4732" _mstvisible="8" %)**4**
210 +(% border="1" cellspacing="4" style="background-color:#ffffcc; color:green; width:390px" %)
211 +|=(% style="width: 60px;" %)(((
212 +**Size(bytes)**
213 +)))|=(% style="width: 30px;" %)(((
214 +**2**
215 +)))|=(% style="width: 100px;" %)(((
216 +**2**
217 +)))|=(% style="width: 100px;" %)(((
218 +**2**
219 +)))|=(% style="width: 50px;" %)(((
220 +**1**
221 +)))|=(% style="width: 50px;" %)(((
222 +**4**
241 241  )))
242 -(% _mstvisible="3" %)|(% _mstvisible="4" style="width:97px" %)(% _mstvisible="5" %)
224 +|(% style="width:97px" %)(((
225 +**Value**
226 +)))|(% style="width:39px" %)(((
227 +[[BAT>>||anchor="H2.4.2BAT-BatteryInfo"]]
228 +)))|(% style="width:100px" %)(((
243 243  (((
244 -(% _mstvisible="6" %)
245 -(% _msthash="1817484" _msttexthash="60203" _mstvisible="8" %)**Value**
246 -)))|(% _mstvisible="4" style="width:39px" %)(% _mstvisible="5" %)
247 -(((
248 -(% _mstvisible="6" %)
249 -[[BAT>>||anchor="H2.4.2BAT-BatteryInfo" _msthash="1817485" _msttexthash="22594" _mstvisible="7"]]
250 -)))|(% _mstvisible="4" style="width:100px" %)(% _mstvisible="5" %)
251 -(((
252 -(% _mstvisible="6" %)
253 -(((
254 -(% _mstvisible="7" %)
255 -[[Built-In Temperature>>||anchor="H2.4.3Built-inTemperature" _msthash="2224742" _msttexthash="405769" _mstvisible="8"]]
230 +[[Built-In Temperature>>||anchor="H2.4.3Built-inTemperature"]]
256 256  )))
257 -)))|(% _mstvisible="4" style="width:77px" %)(% _mstvisible="5" %)
232 +)))|(% style="width:77px" %)(((
258 258  (((
259 -(% _mstvisible="6" %)
260 -(((
261 -(% _mstvisible="7" %)
262 -[[Built-in>>||anchor="H2.4.4Built-inHumidity" _msthash="2224743" _msttexthash="105872" _mstvisible="8"]]
234 +[[Built-in Humidity>>||anchor="H2.4.4Built-inHumidity"]]
263 263  )))
264 -
265 -(% _mstvisible="6" %)
266 -(((
267 -(% _mstvisible="7" %)
268 -[[Humidity>>||anchor="H2.4.4Built-inHumidity" _msthash="2224744" _msttexthash="117429" _mstvisible="8"]]
236 +)))|(% style="width:47px" %)(((
237 +[[Ext>>||anchor="H2.4.5Ext23"]] #
238 +)))|(% style="width:51px" %)(((
239 +[[Ext value>>||anchor="H2.4.6Extvalue"]]
269 269  )))
270 -)))|(% _mstvisible="4" style="width:47px" %)(% _mstvisible="5" %)
271 -(((
272 -(% _mstvisible="6" %)
273 -[[Ext>>||anchor="H2.4.5Ext23" _msthash="1817486" _msttexthash="32331" _mstvisible="7"]] #
274 -)))|(% _mstvisible="4" style="width:51px" %)(% _mstvisible="5" %)
275 -(((
276 -(% _mstvisible="6" %)
277 -[[Ext value>>||anchor="H2.4.6Extvalue" _msthash="1817487" _msttexthash="116545" _mstvisible="7"]]
278 -)))
279 279  
280 280  * The First 6 bytes: has fix meanings for every LHT65N.
281 281  * The 7th byte (EXT #): defines the external sensor model.
282 282  * 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.)
283 283  
284 -
285 -
286 286  === 2.4.1 Decoder in TTN V3 ===
287 287  
288 288  
289 289  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.
290 290  
291 -Below is the position to put the decoder and LHT65N decoder can be download from here:
251 +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]]
292 292  
293 293  
294 -[[https:~~/~~/www.dropbox.com/sh/r2i3zlhsyrpavla/AAB1sZw3mdT0K7XjpHCITt13a?dl=0 >>https://www.dropbox.com/sh/r2i3zlhsyrpavla/AAB1sZw3mdT0K7XjpHCITt13a?dl=0||_msthash="315253" _msttexthash="3509064" _mstvisible="2"]]
295 -
296 -
297 297  [[image:image-20220522234118-10.png||_mstalt="451464" _mstvisible="3" height="353" width="729"]]
298 298  
299 299  
300 300  
301 -
302 302  === 2.4.2 BAT-Battery Info ===
303 303  
304 304  
... ... @@ -315,8 +315,6 @@
315 315  * BAT status=(0Xcba4>>14)&0xFF=11(B),very good
316 316  * Battery Voltage =0xCBF6&0x3FFF=0x0BA4=2980mV
317 317  
318 -
319 -
320 320  === 2.4.3 Built-in Temperature ===
321 321  
322 322  
... ... @@ -328,8 +328,6 @@
328 328  
329 329  * Temperature:  (0xF5C6-65536)/100=-26.18℃
330 330  
331 -
332 -
333 333  === 2.4.4 Built-in Humidity ===
334 334  
335 335  
... ... @@ -337,8 +337,6 @@
337 337  
338 338  * Humidity:    0x025C/10=60.4%
339 339  
340 -
341 -
342 342  === 2.4.5 Ext # ===
343 343  
344 344  
... ... @@ -361,6 +361,8 @@
361 361  
362 362  The last 2 bytes of data are meaningless
363 363  
314 +
315 +
364 364  [[image:image-20220522235639-6.png||_mstalt="433212" _mstvisible="3"]]
365 365  
366 366  
... ... @@ -383,122 +383,58 @@
383 383  
384 384  )))
385 385  
386 -(% _mstvisible="1" border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %)
387 -(% _mstvisible="3" %)|=(% _mstvisible="4" style="width: 96px;" %)(% _mstvisible="5" %)
388 -(((
389 -(% _mstvisible="6" %)
390 -(% _msthash="1817488" _msttexthash="161122" _mstvisible="8" %)**Size(bytes)**
391 -)))|=(% _mstvisible="4" style="width: 71px;" %)(% _mstvisible="5" %)
392 -(((
393 -(% _mstvisible="6" %)
394 -(% _msthash="1817489" _msttexthash="4550" _mstvisible="8" %)**2**
395 -)))|=(% _mstvisible="4" style="width: 99px;" %)(% _mstvisible="5" %)
396 -(((
397 -(% _mstvisible="6" %)
398 -(% _msthash="1817490" _msttexthash="4550" _mstvisible="8" %)**2**
399 -)))|=(% _mstvisible="4" style="width: 132px;" %)(% _mstvisible="5" %)
400 -(((
401 -(% _mstvisible="6" %)
402 -(% _msthash="1817491" _msttexthash="4550" _mstvisible="8" %)**2**
403 -)))|=(% _mstvisible="4" style="width: 54px;" %)(% _mstvisible="5" %)
404 -(((
405 -(% _mstvisible="6" %)
406 -(% _msthash="1817492" _msttexthash="4459" _mstvisible="8" %)**1**
407 -)))|=(% _mstvisible="4" style="width: 64px;" %)(% _mstvisible="5" %)
408 -(((
409 -(% _mstvisible="6" %)
410 -(% _msthash="1817493" _msttexthash="4732" _mstvisible="8" %)**4**
338 +(% border="1" cellspacing="4" style="background-color:#ffffcc; color:green; width:480px" %)
339 +|=(% style="width: 50px;" %)(((
340 +**Size(bytes)**
341 +)))|=(% style="width: 70px;" %)(((
342 +**2**
343 +)))|=(% style="width: 120px;" %)(((
344 +**2**
345 +)))|=(% style="width: 120px;" %)(((
346 +**2**
347 +)))|=(% style="width: 50px;" %)(((
348 +**1**
349 +)))|=(% style="width: 70px;" %)(((
350 +**4**
411 411  )))
412 -(% _mstvisible="3" %)|(% _mstvisible="4" style="width:96px" %)(% _mstvisible="5" %)
413 -(((
414 -(% _mstvisible="6" %)
415 -(% _msthash="1817494" _msttexthash="60203" _mstvisible="8" %)**Value**
416 -)))|(% _mstvisible="4" style="width:71px" %)(% _mstvisible="5" %)
417 -(((
418 -(% _mstvisible="6" %)
419 -[[External temperature>>||anchor="H4.2SetExternalSensorMode" _msthash="1817495" _msttexthash="426517" _mstvisible="7"]]
420 -)))|(% _mstvisible="4" style="width:99px" %)(% _mstvisible="5" %)
421 -(((
422 -(% _mstvisible="6" %)
423 -(((
424 -(% _mstvisible="7" %)
425 -[[Built-In>>||anchor="H2.4.3Built-inTemperature" _msthash="2224745" _msttexthash="100464" _mstvisible="8"]]
426 -)))
427 -
428 -(% _mstvisible="6" %)
429 -(((
430 -(% _mstvisible="7" %)
431 -[[Temperature>>||anchor="H2.4.3Built-inTemperature" _msthash="2224746" _msttexthash="184041" _mstvisible="8"]]
432 -)))
433 -)))|(% _mstvisible="4" style="width:132px" %)(% _mstvisible="5" %)
434 -(((
435 -(% _mstvisible="6" %)
436 -(((
437 -(% _msthash="2224747" _msttexthash="136331" _mstvisible="7" %)
438 -BAT Status &
439 -)))
440 -
441 -(% _mstvisible="6" %)
442 -(((
443 -(% _mstvisible="7" %)
444 -[[Built-in Humidity>>||anchor="H2.4.4Built-inHumidity" _msthash="2224748" _msttexthash="311181" _mstvisible="8"]]
445 -)))
446 -)))|(% _mstvisible="4" style="width:54px" %)(% _mstvisible="5" %)
447 -(((
448 -(% _msthash="1817496" _msttexthash="147225" _mstvisible="6" %)
352 +|(% style="width:110px" %)(((
353 +**Value**
354 +)))|(% style="width:71px" %)(((
355 +[[External temperature>>||anchor="H4.2SetExternalSensorMode"]]
356 +)))|(% style="width:99px" %)(((
357 +[[Built-In Temperature>>||anchor="H2.4.3Built-inTemperature"]]
358 +)))|(% style="width:132px" %)(((
359 +BAT Status & [[Built-in Humidity>>||anchor="H2.4.4Built-inHumidity"]]
360 +)))|(% style="width:54px" %)(((
449 449  Status & Ext
450 -)))|(% _mstvisible="4" style="width:64px" %)(% _mstvisible="5" %)
451 -(((
452 -(% _mstvisible="6" %)
453 -(((
454 -(% _mstvisible="7" %)
455 -[[Unix Time Stamp>>||anchor="H2.6.2UnixTimeStamp" _msthash="2224749" _msttexthash="227175" _mstvisible="8"]]
362 +)))|(% style="width:64px" %)(((
363 +[[Unix Time Stamp>>||anchor="H2.6.2UnixTimeStamp"]]
456 456  )))
457 -)))
458 458  
459 -(% _mstvisible="1" %)
460 -* (% _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**
366 +* **Battery status & Built-in Humidity**
461 461  
462 -(% _mstvisible="1" border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:469px" %)
463 -(% _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]
464 -(% _mstvisible="3" %)|(% _msthash="1230921" _msttexthash="60203" _mstvisible="4" style="width:65px" %)Value|(% _mstvisible="4" style="width:267px" %)(% _mstvisible="5" %)
465 -(((
466 -(% _msthash="1817497" _msttexthash="128427" _mstvisible="6" %)
368 +(% _mstvisible="1" border="1" cellspacing="4" style="background-color:#ffffcc; color:green; width:461px" %)
369 +|=(% style="width: 67px;" %)Bit(bit)|=(% style="width: 256px;" %)[15:14]|=(% style="width: 132px;" %)[11:0]
370 +|(% style="width:67px" %)Value|(% style="width:256px" %)(((
467 467  BAT Status
468 -
469 -(% _msthash="1817498" _msttexthash="472784" _mstvisible="6" %)
470 470  00(b): Ultra Low ( BAT <= 2.50v)
471 -
472 -(% _msthash="1817499" _msttexthash="483678" _mstvisible="6" %)
473 473  01(b): Low  (2.50v <=BAT <= 2.55v)
474 -
475 -(% _msthash="1817500" _msttexthash="440791" _mstvisible="6" %)
476 476  10(b): OK   (2.55v <= BAT <=2.65v)
477 -
478 -(% _msthash="1817501" _msttexthash="334191" _mstvisible="6" %)
479 479  11(b): Good   (BAT >= 2.65v)
480 -)))|(% _mstvisible="4" style="width:134px" %)(% _mstvisible="5" %)
481 -(((
482 -(% _mstvisible="6" %)
483 -[[Built-in Humidity>>||anchor="H2.4.4Built-inHumidity" _msthash="1817502" _msttexthash="311181" _mstvisible="7"]]
484 -
485 -(% _mstvisible="6" %)
486 -
376 +)))|(% style="width:132px" %)(((
377 +[[Built-in Humidity>>||anchor="H2.4.4Built-inHumidity"]]
487 487  )))
488 488  
489 -* (% _msthash="504956" _msttexthash="245037" _mstvisible="4" %)**Status & Ext Byte**
380 +* **Status & Ext Byte**
490 490  
491 -(% border="1" cellspacing="8" style="background-color:#ffffcc; color:green; width:520px" %)
492 -|(% 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]**
493 -|(% 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)
382 +(% border="1" cellspacing="4" style="background-color:#ffffcc; color:green; width:500px" %)
383 +|=(% 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]**
384 +|=(% 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)
494 494  
495 495  * (% style="color:blue" %)**Poll Message Flag**:(%%)  1: This message is a poll message reply, 0: means this is a normal uplink.
496 496  * (% 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.
497 497  * (% style="color:blue" %)**Unix Time Request**:(%%)  1: Request server downlink Unix time, 0 : N/A. In this mode, LHT65N will set this bit to 1 every 10 days to request a time SYNC. (AT+SYNCMOD to set this)
498 498  
499 -
500 -
501 -
502 502  ==== 2.4.6.3 Ext~=6, ADC Sensor (use with E2 Cable) ====
503 503  
504 504  
... ... @@ -506,11 +506,11 @@
506 506  
507 507  be used to power the external ADC sensor; user can control the power on time for this
508 508  
509 -sensor by setting:
397 +(% style="color:blue" %)**sensor by setting:**
510 510  
511 -AT+EXT=6,timeout  (% _msthash="506085" _msttexthash="8782189" _mstvisible="3" style="color:red" %)**Time to power this sensor, from 0 ~~ 65535ms**
399 +**AT+EXT=6,timeout**  (% _msthash="506085" _msttexthash="8782189" _mstvisible="3" style="color:red" %)**Time to power this sensor, from 0 ~~ 65535ms**
512 512  
513 -For example:
401 +**For example:**
514 514  
515 515  AT+EXT=6,1000 will power this sensor for 1000ms before sampling the ADC value.
516 516  
... ... @@ -548,11 +548,14 @@
548 548  
549 549  
550 550  
551 -==== 2.4.6.4 Ext~=2 TMP117 Sensor (since v1.3) ====
439 +==== 2.4.6.4 Ext~=2 TMP117 Sensor (Since Firmware v1.3) ====
552 552  
553 553  
554 -**Ext=2,Temperature Sensor(TMP117):**
442 +[[image:image-20220927095645-1.png||height="534" width="460"]]
555 555  
444 +
445 +(% style="color:blue" %)**Ext=2,Temperature Sensor(TMP117):**
446 +
556 556  [[image:image-20220906102307-7.png]]
557 557  
558 558  
... ... @@ -562,16 +562,15 @@
562 562  
563 563  
564 564  
456 +==== 2.4.6.5 Ext~=4 Interrupt Mode (Since Firmware v1.3) ====
565 565  
566 -==== 2.4.6.5 Ext~=4 Interrupt Mode (since v1.3) ====
567 567  
568 -
569 569  (% style="color:red" %)**Note: In this mode, 3.3v output will be always ON. LHT65N will send an uplink when there is a trigger.**
570 570  
571 571  
572 572  (% style="color:blue" %)**Interrupt Mode can be used to connect to external interrupt sensors such as:**
573 573  
574 -**Case 1: Door Sensor.** 3.3v Out for such sensor is just to detect Open/Close.
464 +(% style="color:#037691" %)**Case 1: Door Sensor.** (%%)3.3v Out for such sensor is just to detect Open/Close.
575 575  
576 576   In Open State, the power consumption is the same as if there is no probe
577 577  
... ... @@ -582,20 +582,20 @@
582 582  
583 583  Ext=4,Interrupt Sensor:
584 584  
585 -(% border="2" cellpadding="4" cellspacing="4" style="background-color:#ffffcc; color:green; height:6px; width:512px" %)
586 -|(% style="width:117px" %)(((
475 +(% border="1.5" cellpadding="4" cellspacing="4" style="background-color:#ffffcc; color:green; height:6px; width:478px" %)
476 +|(% style="width:101px" %)(((
587 587  AT+EXT=4,1
588 -)))|(% style="width:371px" %)(((
478 +)))|(% style="width:373px" %)(((
589 589  Sent uplink packet in both rising and falling interrupt
590 590  )))
591 -|(% style="width:117px" %)(((
481 +|(% style="width:101px" %)(((
592 592  AT+EXT=4,2
593 -)))|(% style="width:371px" %)(((
483 +)))|(% style="width:373px" %)(((
594 594  Sent uplink packet only in falling interrupt
595 595  )))
596 -|(% style="width:117px" %)(((
486 +|(% style="width:101px" %)(((
597 597  AT+EXT=4,3
598 -)))|(% style="width:371px" %)(((
488 +)))|(% style="width:373px" %)(((
599 599  Sent uplink packet only in rising interrupt
600 600  )))
601 601  
... ... @@ -610,10 +610,9 @@
610 610  
611 611  
612 612  
503 +==== 2.4.6.6 Ext~=8 Counting Mode(Since Firmware v1.3) ====
613 613  
614 -==== 2.4.6.6 Ext~=8 Counting Mode(since v1.3) ====
615 615  
616 -
617 617  (% style="color:red" %)**Note: In this mode, 3.3v output will be always ON. LHT65N will count for every interrupt and uplink periodically.**
618 618  
619 619  
... ... @@ -626,6 +626,7 @@
626 626  
627 627  [[image:image-20220906101320-5.png||height="353" width="696"]]
628 628  
518 +
629 629  Ext=8, Counting Sensor ( 4 bytes):
630 630  
631 631  (% border="2" cellpadding="4" cellspacing="4" style="background-color:#ffffcc; color:green; height:6px; width:381px" %)
... ... @@ -661,52 +661,7 @@
661 661  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)
662 662  
663 663  
664 -(% style="color:blue" %)**Modified ATWOOD command for external sensor TMP117 or DS18B20 temperature alarm.**
665 665  
666 -
667 -(% style="color:#037691" %)**AT+WMOD=parameter1,parameter2,parameter3,parameter4**
668 -
669 -(% style="color:#037691" %)**Parameter 1**(%%):  Alarm mode:
670 -
671 -0): Cancel
672 -
673 -1): Threshold alarm
674 -
675 -2): Fluctuation alarm
676 -
677 -
678 -(% style="color:#037691" %)** Parameter 2**(%%):  Sampling time. Unit: seconds, up to 255 seconds.
679 -
680 -(% 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.**
681 -
682 -
683 -(% style="color:#037691" %) **Parameter 3 and parameter 4:**
684 -
685 -1):  If Alarm Mode is set to 1: Parameter 3 and parameter 4 are valid, as before, they represent low temperature and high temperature.
686 -
687 -Such as AT+WMOD=1,60,45,105, it means high and low temperature alarm.
688 -
689 -
690 -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.
691 -
692 -Such as AT+WMOD=2,10,2,it means that it is a fluctuation alarm.
693 -
694 -If the difference between the current collected temperature and the last Uplin is ±2 degrees, the alarm will be issued.
695 -
696 -
697 -(% style="color:blue" %)** Downlink:**
698 -
699 -0xA5 00 ~-~- AT+WMOD=0.
700 -
701 -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 )
702 -
703 -0xA5 02 0A 02 ~-~- AT+WMOD=2,10,2  (AT+WMOD = second byte, third byte, fourth byte)
704 -
705 -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.
706 -
707 -
708 -
709 -
710 710  == 2.5 Show data on Datacake ==
711 711  
712 712  
... ... @@ -769,14 +769,24 @@
769 769  
770 770  There are two methods:
771 771  
772 -1. IoT Server sends a downlink LoRaWAN command to [[poll the value>>||anchor="H2.6.4Pollsensorvalue"]] for specifying time range.
773 -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.
617 +(% style="color:blue" %)**Method 1:** (%%)IoT Server sends a downlink LoRaWAN command to [[poll the value>>||anchor="H2.6.4Pollsensorvalue"]] for specified time range.
774 774  
619 +
620 +(% 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.
621 +
622 +
623 +(% style="color:red" %)**Note for method 2:**
624 +
625 +* a) LHT65N will do an ACK check for data records sending to make sure every data arrive server.
626 +* 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.
627 +
775 775  Below is the typical case for the auto-update datalog feature (Set PNACKMD=1)
776 776  
630 +
777 777  [[image:image-20220703111700-2.png||height="381" width="1119"]]
778 778  
779 779  
634 +
780 780  === 2.6.2 Unix TimeStamp ===
781 781  
782 782  
... ... @@ -801,11 +801,11 @@
801 801  
802 802  
803 803  (((
804 -There are two ways to set device's time:
659 +(% style="color:blue" %)**There are two ways to set device's time:**
805 805  )))
806 806  
807 807  (((
808 -**~1. Through LoRaWAN MAC Command (Default settings)**
663 +**1.  Through LoRaWAN MAC Command (Default settings)**
809 809  )))
810 810  
811 811  (((
... ... @@ -855,338 +855,79 @@
855 855  === 2.6.5 Datalog Uplink payload ===
856 856  
857 857  
858 -(% _msthash="315267" _msttexthash="2245087" _mstvisible="1" %)
859 859  The Datalog poll reply uplink will use below payload format.
860 860  
861 -(% _mstvisible="1" %)
862 -(((
863 -(% _mstvisible="2" %)
864 -
715 +**Retrieval data payload:**
865 865  
866 -(% _mstvisible="2" %)
867 -(% _msthash="506080" _msttexthash="451581" _mstvisible="4" %)**Retrieval data payload**
868 -)))
717 +(% border="1" cellspacing="4" style="background-color:#ffffcc; color:green; width:480px" %)
718 +|=(% style="width: 60px;" %)(((
719 +**Size(bytes)**
720 +)))|=(% style="width: 90px;" %)**2**|=(% style="width: 90px;" %)**2**|=(% style="width: 70px;" %)**2**|=(% style="width: 100px;" %)**1**|=(% style="width: 70px;" %)**4**
721 +|(% 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"]]
869 869  
870 -(% _mstvisible="1" border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %)
871 -(% _mstvisible="3" %)|=(% _mstvisible="4" style="width: 93px;" %)(% _mstvisible="5" %)
872 -(((
873 -(% _mstvisible="6" %)
874 -(((
875 -(% _mstvisible="7" %)
876 -(% _msthash="2224750" _msttexthash="161122" _mstvisible="9" %)**Size(bytes)**
877 -)))
878 -)))|=(% _mstvisible="4" style="width: 71px;" %)(% _mstvisible="5" %)
879 -(((
880 -(% _mstvisible="6" %)
881 -(((
882 -(% _mstvisible="7" %)
883 -(% _msthash="2224751" _msttexthash="4550" _mstvisible="9" %)**2**
884 -)))
885 -)))|=(% _mstvisible="4" style="width: 102px;" %)(% _mstvisible="5" %)
886 -(((
887 -(% _mstvisible="6" %)
888 -(((
889 -(% _mstvisible="7" %)
890 -(% _msthash="2224752" _msttexthash="4550" _mstvisible="9" %)**2**
891 -)))
892 -)))|=(% _mstvisible="4" style="width: 86px;" %)(% _mstvisible="5" %)
893 -(((
894 -(% _mstvisible="6" %)
895 -(((
896 -(% _mstvisible="7" %)
897 -(% _msthash="2224753" _msttexthash="4550" _mstvisible="9" %)**2**
898 -)))
899 -)))|=(% _mstvisible="4" style="width: 86px;" %)(% _mstvisible="5" %)
900 -(((
901 -(% _mstvisible="6" %)
902 -(((
903 -(% _mstvisible="7" %)
904 -(% _msthash="2224754" _msttexthash="4459" _mstvisible="9" %)**1**
905 -)))
906 -)))|=(% _mstvisible="4" style="width: 48px;" %)(% _mstvisible="5" %)
907 -(((
908 -(% _mstvisible="6" %)
909 -(((
910 -(% _mstvisible="7" %)
911 -(% _msthash="2224755" _msttexthash="4732" _mstvisible="9" %)**4**
912 -)))
913 -)))
914 -(% _mstvisible="3" %)|(% _mstvisible="4" style="width:93px" %)(% _mstvisible="5" %)
915 -(((
916 -(% _mstvisible="6" %)
917 -(((
918 -(% _mstvisible="7" %)
919 -(% _msthash="2224756" _msttexthash="60203" _mstvisible="9" %)**Value**
920 -)))
921 -)))|(% _mstvisible="4" style="width:71px" %)(% _mstvisible="5" %)
922 -(((
923 -(% _mstvisible="6" %)
924 -(((
925 -(% _mstvisible="7" %)
926 -[[External sensor data>>||anchor="H2.4.6Extvalue" _msthash="2224757" _msttexthash="386672" _mstvisible="8"]]
927 -)))
928 -)))|(% _mstvisible="4" style="width:102px" %)(% _mstvisible="5" %)
929 -(((
930 -(% _mstvisible="6" %)
931 -(((
932 -(% _mstvisible="7" %)
933 -(((
934 -(% _mstvisible="8" %)
935 -[[Built In>>||anchor="H2.4.3Built-inTemperature" _msthash="2671864" _msttexthash="91065" _mstvisible="9"]]
936 -)))
937 -)))
723 +**Poll message flag & Ext:**
938 938  
939 -(% _mstvisible="6" %)
940 -(((
941 -(% _mstvisible="7" %)
942 -(((
943 -(% _mstvisible="8" %)
944 -[[Temperature>>||anchor="H2.4.3Built-inTemperature" _msthash="2671865" _msttexthash="184041" _mstvisible="9"]]
945 -)))
946 -)))
947 -)))|(% _mstvisible="4" style="width:86px" %)(% _mstvisible="5" %)
948 -(((
949 -(% _mstvisible="6" %)
950 -(((
951 -(% _mstvisible="7" %)
952 -(((
953 -(% _mstvisible="8" %)
954 -[[Built-in>>||anchor="H2.4.4Built-inHumidity" _msthash="2671866" _msttexthash="105872" _mstvisible="9"]]
955 -)))
956 -)))
725 +[[image:image-20221006192726-1.png||height="112" width="754"]]
957 957  
958 -(% _mstvisible="6" %)
959 -(((
960 -(% _mstvisible="7" %)
961 -(((
962 -(% _mstvisible="8" %)
963 -[[Humidity>>||anchor="H2.4.4Built-inHumidity" _msthash="2671867" _msttexthash="117429" _mstvisible="9"]]
964 -)))
965 -)))
966 -)))|(% _mstvisible="4" style="width:86px" %)(% _mstvisible="5" %)
967 -(((
968 -(% _mstvisible="6" %)
969 -(((
970 -(% _msthash="2224758" _msttexthash="390390" _mstvisible="7" %)
971 -Poll message flag & Ext
972 -)))
973 -)))|(% _mstvisible="4" style="width:48px" %)(% _mstvisible="5" %)
974 -(((
975 -(% _mstvisible="6" %)
976 -(((
977 -(% _mstvisible="7" %)
978 -(((
979 -(% _mstvisible="8" %)
980 -[[Unix Time Stamp>>||anchor="H2.6.2UnixTimeStamp" _msthash="2671868" _msttexthash="227175" _mstvisible="9"]]
981 -)))
982 -)))
727 +(% 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)
983 983  
984 -(% _mstvisible="6" %)
985 -(((
986 -(% _mstvisible="7" %)
987 -(((
988 -(% _mstvisible="8" %)
989 -
990 -)))
991 -)))
992 -)))
729 +(% style="color:blue" %)**Poll Message Flag**(%%): 1: This message is a poll message reply.
993 993  
994 -(% _mstvisible="1" %)
995 -(% _msthash="315268" _msttexthash="390390" _mstvisible="3" %)**Poll message flag & Ext**
731 +* Poll Message Flag is set to 1.
996 996  
997 -(% _mstvisible="1" %)
998 -[[image:image-20220523152208-14.png||_mstalt="452920" _mstvisible="3"]]
733 +* Each data entry is 11 bytes, to save airtime and battery, devices will send max bytes according to the current DR and Frequency bands.
999 999  
1000 -(% _mstvisible="1" %)
1001 -(((
1002 -(% _mstvisible="2" %)
1003 -(((
1004 -(% _msthash="736723" _msttexthash="2005003" _mstvisible="3" %)
1005 -(((
1006 -Poll Message Flag: 1: This message is a poll message reply.
1007 -)))
1008 -)))
1009 -)))
1010 -
1011 -(% _mstvisible="1" %)
1012 -* (% _mstvisible="3" %)
1013 -(((
1014 -(% _mstvisible="4" %)
1015 -(((
1016 -(% _msthash="1197157" _msttexthash="561548" _mstvisible="5" %)
1017 -(((
1018 -Poll Message Flag is set to 1.
1019 -)))
1020 -)))
1021 -)))
1022 -* (% _mstvisible="3" %)
1023 -(((
1024 -(% _mstvisible="4" %)
1025 -(((
1026 -(% _msthash="1197158" _msttexthash="9284964" _mstvisible="5" %)
1027 -(((
1028 -Each data entry is 11 bytes, to save airtime and battery, devices will send max bytes according to the current DR and Frequency bands.
1029 -)))
1030 -)))
1031 -)))
1032 -
1033 -(% _mstvisible="1" %)
1034 -(((
1035 -(% _mstvisible="2" %)
1036 -(((
1037 -(% _msthash="736724" _msttexthash="2242344" _mstvisible="3" %)
1038 -(((
1039 -
1040 -)))
1041 -
1042 -(% _msthash="736724" _msttexthash="2242344" _mstvisible="3" %)
1043 -(((
1044 1044  For example, in US915 band, the max payload for different DR is:
1045 -)))
1046 -)))
1047 -)))
1048 1048  
1049 -(% _mstvisible="1" %)
1050 -(((
1051 -(% _mstvisible="2" %)
1052 -(((
1053 -(% _msthash="736725" _msttexthash="1065532" _mstvisible="3" %)
1054 -(((
1055 -a) DR0: max is 11 bytes so one entry of data
1056 -)))
1057 -)))
1058 -)))
737 +(% style="color:blue" %)**a) DR0:** (%%)max is 11 bytes so one entry of data
1059 1059  
1060 -(% _mstvisible="1" %)
1061 -(((
1062 -(% _mstvisible="2" %)
1063 -(((
1064 -(% _msthash="736726" _msttexthash="3265665" _mstvisible="3" %)
1065 -(((
1066 -b) DR1: max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
1067 -)))
1068 -)))
1069 -)))
739 +(% style="color:blue" %)**b) DR1:**(%%) max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
1070 1070  
1071 -(% _mstvisible="1" %)
1072 -(((
1073 -(% _mstvisible="2" %)
1074 -(((
1075 -(% _msthash="736727" _msttexthash="1454115" _mstvisible="3" style="text-align: left;" %)
1076 -(((
1077 -c) DR2: total payload includes 11 entries of data
1078 -)))
1079 -)))
1080 -)))
741 +(% style="color:blue" %)**c) DR2:**(%%) total payload includes 11 entries of data
1081 1081  
1082 -(% _mstvisible="1" %)
1083 -(((
1084 -(% _mstvisible="2" %)
1085 -(((
1086 -(% _msthash="736728" _msttexthash="1483924" _mstvisible="3" style="text-align: left;" %)
1087 -(((
1088 -d) DR3: total payload includes 22 entries of data.
1089 -)))
1090 -)))
1091 -)))
743 +(% style="color:blue" %)**d) DR3: **(%%)total payload includes 22 entries of data.
1092 1092  
1093 -(% _mstvisible="1" %)
1094 -(((
1095 -(% _mstvisible="2" %)
1096 -(((
1097 -(% _msthash="736729" _msttexthash="5848349" _mstvisible="3" style="text-align: left;" %)
1098 -(((
1099 -If devise doesn’t have any data in the polling time. Device will uplink 11 bytes of 0   
1100 -)))
1101 -)))
1102 -)))
745 +If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0   
1103 1103  
1104 1104  
1105 -(% _mstvisible="1" style="text-align: left;" %)
1106 -(% _msthash="315269" _msttexthash="104767" _mstvisible="3" %)**Example:**
748 +**Example:**
1107 1107  
1108 -(% _msthash="315270" _msttexthash="913822" _mstvisible="1" style="text-align: left;" %)
1109 1109  If LHT65N has below data inside Flash:
1110 1110  
1111 -(% _mstvisible="1" %)
1112 1112  [[image:image-20220523144455-1.png||_mstalt="430040" _mstvisible="3" height="335" width="735"]]
1113 1113  
1114 -(% _mstvisible="1" %)
1115 -(((
1116 -(% _msthash="506081" _msttexthash="1663961" _mstvisible="2" style="text-align: left;" %)
1117 -If user sends below downlink command: (% _mstvisible="3" style="background-color:yellow" %)3160065F9760066DA705
1118 -)))
1119 1119  
1120 -(% _mstvisible="1" %)
1121 -(((
1122 -(% _msthash="506082" _msttexthash="1092494" _mstvisible="2" style="text-align: left;" %)
1123 - Where : Start time: 60065F97 = time 21/1/19 04:27:03
1124 -)))
755 +If user sends below downlink command: (% style="background-color:yellow" %)3160065F9760066DA705
1125 1125  
1126 -(% _mstvisible="1" %)
1127 -(((
1128 -(% _msthash="506083" _msttexthash="737269" _mstvisible="2" style="text-align: left;" %)
1129 - Stop time 60066DA7= time 21/1/19 05:27:(% _msthash="903005" _msttexthash="9672" _mstvisible="2" %)03
1130 -)))
757 +Where : Start time: 60065F97 = time 21/1/19 04:27:03
1131 1131  
1132 -(% _mstvisible="1" %)
1133 -(((
1134 -(% _mstvisible="2" %)
1135 -
1136 -)))
759 + Stop time: 60066DA7= time 21/1/19 05:27:03
1137 1137  
1138 -(% _mstvisible="1" %)
1139 -(((
1140 -(% _msthash="506084" _msttexthash="751218" _mstvisible="2" style="text-align: left;" %)
1141 -LHT65N will uplink this payload.
1142 -)))
1143 1143  
1144 -(% _mstvisible="1" %)
762 +**LHT65N will uplink this payload.**
763 +
1145 1145  [[image:image-20220523001219-13.png||_mstalt="451204" _mstvisible="3" height="421" style="text-align:left" width="727"]]
1146 1146  
1147 -(% _msthash="315271" _msttexthash="12012546" _mstvisible="1" style="text-align: left;" %)
1148 -(((
1149 -7FFF089801464160065F977FFF088E014B41600660097FFF0885014E41600660667FFF0875015141600662BE7FFF086B015541600665167FFF08660155416006676E7FFF085F015A41600669C67FFF0857015D4160066C1E
1150 -)))
1151 1151  
1152 -(% _msthash="315237" _msttexthash="1385839" %)
1153 -(((
767 +__**7FFF089801464160065F97**__ **__7FFF__ __088E__ __014B__ __41__ __60066009__** 7FFF0885014E41600660667FFF0875015141600662BE7FFF086B015541600665167FFF08660155416006676E7FFF085F015A41600669C67FFF0857015D4160066C1E
768 +
1154 1154  Where the first 11 bytes is for the first entry:
1155 -)))
1156 1156  
1157 -(% _msthash="315238" _msttexthash="274846" %)
1158 -(((
1159 1159  7FFF089801464160065F97
1160 -)))
1161 1161  
1162 -(% _msthash="315239" _msttexthash="617435" %)
1163 -(((
1164 1164  Ext sensor data=0x7FFF/100=327.67
1165 -)))
1166 1166  
1167 -(% _msthash="315240" _msttexthash="270543" %)
1168 -(((
1169 -Temp=0x0898/100=22.00
1170 -)))
775 +Temp=0x088E/100=22.00
1171 1171  
1172 -(% _msthash="315241" _msttexthash="211783" %)
1173 -(((
1174 -Hum=0x0146/10=32.6
1175 -)))
777 +Hum=0x014B/10=32.6
1176 1176  
1177 -(% _msthash="315242" _msttexthash="1569776" %)
1178 -(((
1179 1179  poll message flag & Ext=0x41,means reply data,Ext=1
1180 -)))
1181 1181  
1182 -(% _msthash="315243" _msttexthash="1120509" %)
1183 -(((
1184 -Unix time is 0x60065F97=1611030423s=21/1/19 04:27:03
1185 -)))
781 +Unix time is 0x60066009=1611030423s=21/1/19 04:27:03
1186 1186  
1187 1187  
1188 1188  
1189 -== 2.7 Alarm Mode ==
785 +== 2.7 Alarm Mode & Feature "Multi sampling, one uplink" ==
1190 1190  
1191 1191  
1192 1192  (((
... ... @@ -1196,17 +1196,146 @@
1196 1196  (((
1197 1197  (% style="color:red" %)**Note: alarm mode adds a little power consumption, and we recommend extending the normal read time when this feature is enabled.**
1198 1198  
795 +
796 +
797 +=== 2.7.1 ALARM MODE ( Since v1.3.1 firmware) ===
798 +
799 +
800 +**Internal GXHT30 temperature alarm**
801 +
802 +(((
803 +(% class="box infomessage" %)
804 +(((
805 +**AT+WMOD=3**:  Enable/disable alarm mode. (0: Disabled, 1: Enabled Temperature Alarm for onboard temperature sensor)
806 +
807 +**AT+CITEMP=1**:  The interval between checking the alarm temperature. (In minutes)
808 +
809 +**AT+ARTEMP**:  Gets or sets the alarm range of the internal temperature sensor
810 +
811 +**AT+ARTEMP=? **:  Gets the alarm range of the internal temperature sensor(% _mstvisible="3" style="display:none" %)
812 +
813 +**AT+ARTEMP=45,105**:  Set the internal temperature sensor alarm range from 45 to 105.
814 +
815 +**AT+LEDALARM=1** :       Enable LED visual Alarm.
816 +)))
817 +)))
818 +
819 +(% style="color:#4f81bd" %)**Downlink Command:**
820 +
821 +AT+WMOD=1:  A501  ,  AT+WMOD=0 :  A600
822 +
823 +AT+CITEMP=1 : A60001
824 +
825 +AT+ARTEMP=1,60  :  A70001003C
826 +
827 +AT+ARTEMP=-16,60 :  A7FFF0003C
828 +
829 +AT+LEDALARM=1  :  3601
830 +
831 +
832 +(% style="color:#4f81bd" %)**Downlink Command: AAXXXXXXXXXXXXXX**
833 +
834 +Total bytes: 8 bytes
835 +
836 +**Example: **AA0100010001003C
837 +
838 +WMOD=01
839 +
840 +CITEMP=0001
841 +
842 +TEMPlow=0001
843 +
844 +TEMPhigh=003C
845 +
846 +
847 +**DS18B20 and TMP117 Threshold Alarm**
848 +
849 +**~ AT+WMOD=1,60,-10,20**
850 +
851 +(% style="color:#4f81bd" %)**Downlink Command:**
852 +
853 +**Example: **A5013CFC180014
854 +
855 +MOD=01
856 +
857 +CITEMP=3C(S)
858 +
859 +TEMPlow=FC18
860 +
861 +TEMPhigh=0014
862 +
863 +
864 +**Fluctuation alarm for DS18B20 and TMP117**
865 +
866 +**AT+WMOD=2,60,5** 
867 +
868 +(% style="color:#4f81bd" %)**Downlink Command:**
869 +
870 +**Example: **A5023C05
871 +
872 +MOD=02
873 +
874 +CITEMP=3C(S)
875 +
876 +temperature fluctuation=05
877 +
878 +
879 +==== **Sampling multiple times and uplink together** ====
880 +
881 +**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 -10 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.
882 +
883 +(% style="color:#4f81bd" %)**Downlink Command:**
884 +
885 +**Example: **A50301003C14FFF0002001
886 +
887 +MOD=03
888 +
889 +EXT=01
890 +
891 +CITEMP=003C(S)
892 +
893 +Total number of acquisitions=14
894 +
895 +TEMPlow=FFF0
896 +
897 +TEMPhigh=0020
898 +
899 +ARTEMP=01
900 +
901 +
902 +**Uplink payload( Fport=3)**
903 +
904 +**Example: **CBEA0109920A4109C4
905 +
906 +BatV=CBEA
907 +
908 +EXT=01
909 +
910 +Temp1=0992  ~/~/ 24.50℃
911 +
912 +Temp2=0A41  ~/~/ 26.25℃
913 +
914 +Temp3=09C4  ~/~/ 25.00℃
915 +
916 +
917 +(% style="color:red" %)**Note: This uplink will automatically select the appropriate DR according to the data length**
918 +
919 +(% style="color:red" %)** In this mode, the temperature resolution of ds18b20 is 0.25℃ to save power consumption**
920 +
921 +
1199 1199  
1200 1200  )))
1201 1201  
1202 1202  (((
1203 -**AT COMMAND FOR ALARM MODE:**
926 +=== 2.7.2 ALARM MODE ( Before v1.3.1 firmware) ===
927 +
928 +
1204 1204  )))
1205 1205  
1206 1206  (% _mstvisible="1" class="box infomessage" %)
1207 1207  (((
1208 1208  (((
1209 -**AT+WMOD=1**:  Enable/disable alarm mode. (0: Disabled, 1: Enabled)
934 +**AT+WMOD=1**:  Enable/disable alarm mode. (0: Disabled, 1: Enabled Temperature Alarm for onboard temperature sensor)
1210 1210  )))
1211 1211  
1212 1212  (((
... ... @@ -1256,9 +1256,6 @@
1256 1256  * RED LED when external sensor is not connected
1257 1257  * For each success downlink, the PURPLE LED will blink once
1258 1258  
1259 -
1260 -
1261 -
1262 1262  == 2.9 installation ==
1263 1263  
1264 1264  
... ... @@ -1316,8 +1316,6 @@
1316 1316  * Operating Range: -40 ~~ 125 °C
1317 1317  * Working voltage 2.35v ~~ 5v
1318 1318  
1319 -
1320 -
1321 1321  = 4. Configure LHT65N via AT command or LoRaWAN downlink =
1322 1322  
1323 1323  
... ... @@ -1381,15 +1381,12 @@
1381 1381  
1382 1382  Format: Command Code (0x01) followed by 3 bytes time value.
1383 1383  
1384 -If the downlink payload=0100003C, it means set the END Nodes Transmit Interval to 0x00003C=60(S), while type code is 01.
1104 +If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01.
1385 1385  
1386 -* **Example 1**: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds
1106 +* **Example 1**: Downlink Payload: 0100001E  ~/~/ Set Transmit Interval (TDC) = 30 seconds
1387 1387  
1388 -* **Example 2**: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds
1108 +* **Example 2**: Downlink Payload: 0100003C  ~/~/ Set Transmit Interval (TDC) = 60 seconds
1389 1389  
1390 -
1391 -
1392 -
1393 1393  == 4.2 Set External Sensor Mode ==
1394 1394  
1395 1395  
... ... @@ -1413,9 +1413,6 @@
1413 1413  
1414 1414  * 0xA20702003c: Same as AT+SETCNT=60
1415 1415  
1416 -
1417 -
1418 -
1419 1419  == 4.3 Enable/Disable uplink Temperature probe ID ==
1420 1420  
1421 1421  
... ... @@ -1446,9 +1446,6 @@
1446 1446  * **0xA800**  **~-~->** AT+PID=0
1447 1447  * **0xA801**     **~-~->** AT+PID=1
1448 1448  
1449 -
1450 -
1451 -
1452 1452  == 4.4 Set Password ==
1453 1453  
1454 1454  
... ... @@ -1500,9 +1500,6 @@
1500 1500  
1501 1501  * There is no downlink command to set to Sleep mode.
1502 1502  
1503 -
1504 -
1505 -
1506 1506  == 4.7 Set system time ==
1507 1507  
1508 1508  
... ... @@ -1516,7 +1516,7 @@
1516 1516  
1517 1517  (% _msthash="315254" _msttexthash="298038" style="color:#4f81bd" %)**Downlink Command:**
1518 1518  
1519 -0x306007806000 ~/~/ Set timestamp to 0x(6007806000),Same as AT+TIMESTAMP=1611104352
1227 +0x306007806000  ~/~/  Set timestamp to 0x(6007806000),Same as AT+TIMESTAMP=1611104352
1520 1520  
1521 1521  
1522 1522  
... ... @@ -1540,8 +1540,8 @@
1540 1540  
1541 1541  (% style="color:#4f81bd" %)**Downlink Command:**
1542 1542  
1543 -0x28 01 ~/~/ Same As AT+SYNCMOD=1
1544 -0x28 00 ~/~/ Same As AT+SYNCMOD=0
1251 +0x28 01  ~/~/  Same As AT+SYNCMOD=1
1252 +0x28 00  ~/~/  Same As AT+SYNCMOD=0
1545 1545  
1546 1546  
1547 1547  
... ... @@ -1558,7 +1558,7 @@
1558 1558  
1559 1559  (% _msthash="315257" _msttexthash="298038" style="color:#4f81bd" %)**Downlink Command:**
1560 1560  
1561 -**0x29 0A** ~/~/ Same as AT+SYNCTDC=0x0A
1269 +**0x29 0A**  ~/~/ Same as AT+SYNCTDC=0x0A
1562 1562  
1563 1563  
1564 1564  
... ... @@ -1609,34 +1609,77 @@
1609 1609  
1610 1610  (% style="color:#4f81bd" %)**Downlink Command: 0xA3**
1611 1611  
1612 -* Example: 0xA301 ~/~/Same as AT+CLRDTA
1320 +* Example: 0xA301  ~/~/  Same as AT+CLRDTA
1613 1613  
1614 -
1615 -
1616 -
1617 1617  == 4.13 Auto Send None-ACK messages ==
1618 1618  
1619 1619  
1620 -(% _msthash="315394" _msttexthash="51837149" _mstvisible="1" %)
1621 1621  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.
1622 1622  
1623 1623  
1624 1624  (% style="color:#4f81bd" %)**AT Command: AT+PNACKMD**
1625 1625  
1626 -(% _msthash="315396" _msttexthash="734682" _mstvisible="1" %)
1627 1627  The default factory setting is 0
1628 1628  
1629 -(% _mstvisible="1" border="1" style="background-color:#ffffcc; color:green; width:450px" %)
1630 -(% _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**
1631 -(% _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
1332 +(% border="1" cellspacing="4" style="background-color:#ffffcc; color:green; width:367px" %)
1333 +|=(% style="width: 158px;" %)**Command Example**|=(% style="width: 118px;" %)**Function**|=(% style="width: 87px;" %)**Response**
1334 +|(% style="width:158px" %)AT+PNACKMD=1|(% style="width:118px" %)Poll None-ACK message|(% style="width:87px" %)OK
1632 1632  
1633 1633  (% style="color:#4f81bd" %)**Downlink Command: 0x34**
1634 1634  
1635 -* Example: 0x3401 ~/~/Same as AT+PNACKMD=1
1338 +* Example: 0x3401  ~/~/  Same as AT+PNACKMD=1
1636 1636  
1340 +== 4.14 Modified WMOD command for external sensor TMP117 or DS18B20 temperature alarm ==
1637 1637  
1638 1638  
1343 +Feature: Set internal and external temperature sensor alarms.
1639 1639  
1345 +(% border="1" cellspacing="4" style="background-color:#ffffcc; color:green; width:500px" %)
1346 +|=(% style="width: 250px;" %)**Command Example**|=(% style="width: 200px;" %)**Function**|=(% style="width: 50px;" %)**Response**
1347 +|(% style="width:268px" %)AT+WMOD=parameter1,parameter2,parameter3,parameter4|(% style="width:255px" %)Set internal and external temperature sensor alarms|(% style="width:181px" %)OK
1348 +
1349 +(% style="color:#037691" %)**AT+WMOD=parameter1,parameter2,parameter3,parameter4**
1350 +
1351 +(% style="color:#037691" %)**Parameter 1**(%%):  Alarm mode:
1352 +
1353 +0): Cancel
1354 +
1355 +1): Threshold alarm
1356 +
1357 +2): Fluctuation alarm
1358 +
1359 +
1360 +(% style="color:#037691" %)** Parameter 2**(%%):  Sampling time. Unit: seconds, up to 255 seconds.
1361 +
1362 +(% 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.**
1363 +
1364 +
1365 +(% style="color:#037691" %) **Parameter 3 and parameter 4:**
1366 +
1367 +1):  If Alarm Mode is set to 1: Parameter 3 and parameter 4 are valid, as before, they represent low temperature and high temperature.
1368 +
1369 +Such as AT+WMOD=1,60,45,105, it means high and low temperature alarm.
1370 +
1371 +
1372 +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.
1373 +
1374 +Such as AT+WMOD=2,10,2,it means that it is a fluctuation alarm.
1375 +
1376 +If the difference between the current collected temperature and the last Uplin is ±2 degrees, the alarm will be issued.
1377 +
1378 +
1379 +(% style="color:#4f81bd" %)**Downlink Command: 0xA5**
1380 +
1381 +0xA5 00 ~-~- AT+WMOD=0.
1382 +
1383 +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 )
1384 +
1385 +0xA5 02 0A 02 ~-~- AT+WMOD=2,10,2  (AT+WMOD = second byte, third byte, fourth byte)
1386 +
1387 +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.
1388 +
1389 +
1390 +
1640 1640  = 5. Battery & How to replace =
1641 1641  
1642 1642  
... ... @@ -1672,6 +1672,7 @@
1672 1672  [[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"]]
1673 1673  
1674 1674  
1426 +
1675 1675  == 5.3 Battery Life Analyze ==
1676 1676  
1677 1677  
... ... @@ -1706,7 +1706,6 @@
1706 1706  * (% style="background-color:yellow" %)**USB to TTL GND <~-~->GND**
1707 1707  * (% style="background-color:yellow" %)**USB to TTL RXD <~-~-> D+**
1708 1708  * (% style="background-color:yellow" %)**USB to TTL TXD <~-~-> A11**
1709 -* (% style="background-color:yellow" %)**USB to TTL 3.3V <~-~-> D-**
1710 1710  
1711 1711  (((
1712 1712  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.
... ... @@ -1958,7 +1958,7 @@
1958 1958  == 6.3 How to change the uplink interval? ==
1959 1959  
1960 1960  
1961 -[[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"]]
1712 +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);"]]
1962 1962  
1963 1963  
1964 1964  
... ... @@ -1992,6 +1992,7 @@
1992 1992  [[image:image-20220615170542-5.png]]
1993 1993  
1994 1994  
1746 +
1995 1995  (% style="color:blue" %)**Step2**(%%):wiring method.(% style="display:none" %)
1996 1996  
1997 1997  (% _msthash="506146" _msttexthash="52173160" %)
... ... @@ -2005,6 +2005,7 @@
2005 2005  [[image:image-20220621170938-2.png]]
2006 2006  
2007 2007  
1760 +
2008 2008  (% style="color:blue" %)**Step3:**(%%)Select the device port to be connected, baud rate and bin file to be downloaded.
2009 2009  
2010 2010  [[image:image-20220615171334-6.png]]
... ... @@ -2053,6 +2053,7 @@
2053 2053  [[image:image-20220615170542-5.png]]
2054 2054  
2055 2055  
1809 +
2056 2056  (% style="color:blue" %)**Step2**(%%):wiring method.(% style="display:none" %)
2057 2057  
2058 2058  (% _msthash="506146" _msttexthash="52173160" %)
... ... @@ -2065,6 +2065,7 @@
2065 2065  Press and hold the start key to restart and enter  (% _mstvisible="1" %)bootlaod(%%) mode.
2066 2066  
2067 2067  
1822 +
2068 2068  (% style="color:blue" %)**Step3:**(%%)Select the device port to be connected, baud rate and bin file to be downloaded.
2069 2069  
2070 2070  [[image:image-20220615171334-6.png]]
... ... @@ -2102,9 +2102,6 @@
2102 2102  
2103 2103  * (% style="color:red" %)**E3**(%%): External Temperature Probe
2104 2104  
2105 -
2106 -
2107 -
2108 2108  = 8. Packing Info =
2109 2109  
2110 2110  
... ... @@ -2118,17 +2118,11 @@
2118 2118  * Device Size:  10 x 10 x 3.5 cm
2119 2119  * Device Weight: 120.5g
2120 2120  
2121 -
2122 -
2123 -
2124 2124  = 9. Reference material =
2125 2125  
2126 2126  
2127 2127  * [[Datasheet, photos, decoder, firmware>>https://www.dropbox.com/sh/una19zsni308dme/AACOKp6J2RF5TMlKWT5zU3RTa?dl=0||_msthash="504975" _msttexthash="51420512"]]
2128 2128  
2129 -
2130 -
2131 -
2132 2132  = 10. FCC Warning =
2133 2133  
2134 2134  
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