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

From version 213.1
edited by Bei Jinggeng
on 2022/11/02 11:17
Change comment: There is no comment for this version
To version 203.1
edited by Edwin Chen
on 2022/10/06 19:30
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.Bei
1 +XWiki.Edwin
Content
... ... @@ -61,6 +61,7 @@
61 61  * Tri-color LED to indicate working status
62 62  * Datalog feature (Max 3328 records)
63 63  
64 +
64 64  == 1.3 Specification ==
65 65  
66 66  
... ... @@ -85,6 +85,7 @@
85 85  * ±2°C accuracy from -55°C to +125°C
86 86  * Operating Range: -55 °C ~~ 125 °C
87 87  
89 +
88 88  = 2. Connect LHT65N to IoT Server =
89 89  
90 90  
... ... @@ -196,9 +196,10 @@
196 196  
197 197  
198 198  
199 -== 2.4 Uplink Payload   ( Fport~=2) ==
200 200  
202 +== 2.4 Uplink Payload ==
201 201  
204 +
202 202  (((
203 203  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.
204 204  )))
... ... @@ -207,54 +207,92 @@
207 207  After each uplink, the (% _mstvisible="3" style="color:blue" %)**BLUE LED**(%%) will blink once.
208 208  )))
209 209  
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**
213 +(% _mstvisible="1" border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:426px" %)
214 +(% _mstvisible="3" %)|=(% _mstvisible="4" style="width: 97px;" %)(% _mstvisible="5" %)
215 +(((
216 +(% _mstvisible="6" %)
217 +(% _msthash="1817478" _msttexthash="161122" _mstvisible="8" %)**Size(bytes)**
218 +)))|=(% _mstvisible="4" style="width: 39px;" %)(% _mstvisible="5" %)
219 +(((
220 +(% _mstvisible="6" %)
221 +(% _msthash="1817479" _msttexthash="4550" _mstvisible="8" %)**2**
222 +)))|=(% _mstvisible="4" style="width: 100px;" %)(% _mstvisible="5" %)
223 +(((
224 +(% _mstvisible="6" %)
225 +(% _msthash="1817480" _msttexthash="4550" _mstvisible="8" %)**2**
226 +)))|=(% _mstvisible="4" style="width: 77px;" %)(% _mstvisible="5" %)
227 +(((
228 +(% _mstvisible="6" %)
229 +(% _msthash="1817481" _msttexthash="4550" _mstvisible="8" %)**2**
230 +)))|=(% _mstvisible="4" style="width: 47px;" %)(% _mstvisible="5" %)
231 +(((
232 +(% _mstvisible="6" %)
233 +(% _msthash="1817482" _msttexthash="4459" _mstvisible="8" %)**1**
234 +)))|=(% _mstvisible="4" style="width: 51px;" %)(% _mstvisible="5" %)
235 +(((
236 +(% _mstvisible="6" %)
237 +(% _msthash="1817483" _msttexthash="4732" _mstvisible="8" %)**4**
223 223  )))
224 -|(% style="width:97px" %)(((
225 -**Value**
226 -)))|(% style="width:39px" %)(((
227 -[[BAT>>||anchor="H2.4.2BAT-BatteryInfo"]]
228 -)))|(% style="width:100px" %)(((
239 +(% _mstvisible="3" %)|(% _mstvisible="4" style="width:97px" %)(% _mstvisible="5" %)
229 229  (((
230 -[[Built-In Temperature>>||anchor="H2.4.3Built-inTemperature"]]
241 +(% _mstvisible="6" %)
242 +(% _msthash="1817484" _msttexthash="60203" _mstvisible="8" %)**Value**
243 +)))|(% _mstvisible="4" style="width:39px" %)(% _mstvisible="5" %)
244 +(((
245 +(% _mstvisible="6" %)
246 +[[BAT>>||anchor="H2.4.2BAT-BatteryInfo" _msthash="1817485" _msttexthash="22594" _mstvisible="7"]]
247 +)))|(% _mstvisible="4" style="width:100px" %)(% _mstvisible="5" %)
248 +(((
249 +(% _mstvisible="6" %)
250 +(((
251 +(% _mstvisible="7" %)
252 +[[Built-In Temperature>>||anchor="H2.4.3Built-inTemperature" _msthash="2224742" _msttexthash="405769" _mstvisible="8"]]
231 231  )))
232 -)))|(% style="width:77px" %)(((
254 +)))|(% _mstvisible="4" style="width:77px" %)(% _mstvisible="5" %)
233 233  (((
234 -[[Built-in Humidity>>||anchor="H2.4.4Built-inHumidity"]]
256 +(% _mstvisible="6" %)
257 +(((
258 +(% _mstvisible="7" %)
259 +[[Built-in>>||anchor="H2.4.4Built-inHumidity" _msthash="2224743" _msttexthash="105872" _mstvisible="8"]]
235 235  )))
236 -)))|(% style="width:47px" %)(((
237 -[[Ext>>||anchor="H2.4.5Ext23"]] #
238 -)))|(% style="width:51px" %)(((
239 -[[Ext value>>||anchor="H2.4.6Extvalue"]]
261 +
262 +(% _mstvisible="6" %)
263 +(((
264 +(% _mstvisible="7" %)
265 +[[Humidity>>||anchor="H2.4.4Built-inHumidity" _msthash="2224744" _msttexthash="117429" _mstvisible="8"]]
240 240  )))
267 +)))|(% _mstvisible="4" style="width:47px" %)(% _mstvisible="5" %)
268 +(((
269 +(% _mstvisible="6" %)
270 +[[Ext>>||anchor="H2.4.5Ext23" _msthash="1817486" _msttexthash="32331" _mstvisible="7"]] #
271 +)))|(% _mstvisible="4" style="width:51px" %)(% _mstvisible="5" %)
272 +(((
273 +(% _mstvisible="6" %)
274 +[[Ext value>>||anchor="H2.4.6Extvalue" _msthash="1817487" _msttexthash="116545" _mstvisible="7"]]
275 +)))
241 241  
242 242  * The First 6 bytes: has fix meanings for every LHT65N.
243 243  * The 7th byte (EXT #): defines the external sensor model.
244 244  * 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.)
245 245  
281 +
282 +
246 246  === 2.4.1 Decoder in TTN V3 ===
247 247  
248 248  
249 249  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.
250 250  
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]]
288 +Below is the position to put the decoder and LHT65N decoder can be download from here:
252 252  
253 253  
291 +[[https:~~/~~/www.dropbox.com/sh/r2i3zlhsyrpavla/AAB1sZw3mdT0K7XjpHCITt13a?dl=0 >>https://www.dropbox.com/sh/r2i3zlhsyrpavla/AAB1sZw3mdT0K7XjpHCITt13a?dl=0||_msthash="315253" _msttexthash="3509064" _mstvisible="2"]]
292 +
293 +
254 254  [[image:image-20220522234118-10.png||_mstalt="451464" _mstvisible="3" height="353" width="729"]]
255 255  
256 256  
257 257  
298 +
258 258  === 2.4.2 BAT-Battery Info ===
259 259  
260 260  
... ... @@ -271,6 +271,8 @@
271 271  * BAT status=(0Xcba4>>14)&0xFF=11(B),very good
272 272  * Battery Voltage =0xCBF6&0x3FFF=0x0BA4=2980mV
273 273  
315 +
316 +
274 274  === 2.4.3 Built-in Temperature ===
275 275  
276 276  
... ... @@ -282,6 +282,8 @@
282 282  
283 283  * Temperature:  (0xF5C6-65536)/100=-26.18℃
284 284  
328 +
329 +
285 285  === 2.4.4 Built-in Humidity ===
286 286  
287 287  
... ... @@ -289,6 +289,8 @@
289 289  
290 290  * Humidity:    0x025C/10=60.4%
291 291  
337 +
338 +
292 292  === 2.4.5 Ext # ===
293 293  
294 294  
... ... @@ -311,8 +311,6 @@
311 311  
312 312  The last 2 bytes of data are meaningless
313 313  
314 -
315 -
316 316  [[image:image-20220522235639-6.png||_mstalt="433212" _mstvisible="3"]]
317 317  
318 318  
... ... @@ -335,58 +335,121 @@
335 335  
336 336  )))
337 337  
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**
383 +(% _mstvisible="1" border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %)
384 +(% _mstvisible="3" %)|=(% _mstvisible="4" style="width: 96px;" %)(% _mstvisible="5" %)
385 +(((
386 +(% _mstvisible="6" %)
387 +(% _msthash="1817488" _msttexthash="161122" _mstvisible="8" %)**Size(bytes)**
388 +)))|=(% _mstvisible="4" style="width: 71px;" %)(% _mstvisible="5" %)
389 +(((
390 +(% _mstvisible="6" %)
391 +(% _msthash="1817489" _msttexthash="4550" _mstvisible="8" %)**2**
392 +)))|=(% _mstvisible="4" style="width: 99px;" %)(% _mstvisible="5" %)
393 +(((
394 +(% _mstvisible="6" %)
395 +(% _msthash="1817490" _msttexthash="4550" _mstvisible="8" %)**2**
396 +)))|=(% _mstvisible="4" style="width: 132px;" %)(% _mstvisible="5" %)
397 +(((
398 +(% _mstvisible="6" %)
399 +(% _msthash="1817491" _msttexthash="4550" _mstvisible="8" %)**2**
400 +)))|=(% _mstvisible="4" style="width: 54px;" %)(% _mstvisible="5" %)
401 +(((
402 +(% _mstvisible="6" %)
403 +(% _msthash="1817492" _msttexthash="4459" _mstvisible="8" %)**1**
404 +)))|=(% _mstvisible="4" style="width: 64px;" %)(% _mstvisible="5" %)
405 +(((
406 +(% _mstvisible="6" %)
407 +(% _msthash="1817493" _msttexthash="4732" _mstvisible="8" %)**4**
351 351  )))
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" %)(((
409 +(% _mstvisible="3" %)|(% _mstvisible="4" style="width:96px" %)(% _mstvisible="5" %)
410 +(((
411 +(% _mstvisible="6" %)
412 +(% _msthash="1817494" _msttexthash="60203" _mstvisible="8" %)**Value**
413 +)))|(% _mstvisible="4" style="width:71px" %)(% _mstvisible="5" %)
414 +(((
415 +(% _mstvisible="6" %)
416 +[[External temperature>>||anchor="H4.2SetExternalSensorMode" _msthash="1817495" _msttexthash="426517" _mstvisible="7"]]
417 +)))|(% _mstvisible="4" style="width:99px" %)(% _mstvisible="5" %)
418 +(((
419 +(% _mstvisible="6" %)
420 +(((
421 +(% _mstvisible="7" %)
422 +[[Built-In>>||anchor="H2.4.3Built-inTemperature" _msthash="2224745" _msttexthash="100464" _mstvisible="8"]]
423 +)))
424 +
425 +(% _mstvisible="6" %)
426 +(((
427 +(% _mstvisible="7" %)
428 +[[Temperature>>||anchor="H2.4.3Built-inTemperature" _msthash="2224746" _msttexthash="184041" _mstvisible="8"]]
429 +)))
430 +)))|(% _mstvisible="4" style="width:132px" %)(% _mstvisible="5" %)
431 +(((
432 +(% _mstvisible="6" %)
433 +(((
434 +(% _msthash="2224747" _msttexthash="136331" _mstvisible="7" %)
435 +BAT Status &
436 +)))
437 +
438 +(% _mstvisible="6" %)
439 +(((
440 +(% _mstvisible="7" %)
441 +[[Built-in Humidity>>||anchor="H2.4.4Built-inHumidity" _msthash="2224748" _msttexthash="311181" _mstvisible="8"]]
442 +)))
443 +)))|(% _mstvisible="4" style="width:54px" %)(% _mstvisible="5" %)
444 +(((
445 +(% _msthash="1817496" _msttexthash="147225" _mstvisible="6" %)
361 361  Status & Ext
362 -)))|(% style="width:64px" %)(((
363 -[[Unix Time Stamp>>||anchor="H2.6.2UnixTimeStamp"]]
447 +)))|(% _mstvisible="4" style="width:64px" %)(% _mstvisible="5" %)
448 +(((
449 +(% _mstvisible="6" %)
450 +(((
451 +(% _mstvisible="7" %)
452 +[[Unix Time Stamp>>||anchor="H2.6.2UnixTimeStamp" _msthash="2224749" _msttexthash="227175" _mstvisible="8"]]
364 364  )))
454 +)))
365 365  
366 -* **Battery status & Built-in Humidity**
456 +(% _mstvisible="1" %)
457 +* (% _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**
367 367  
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" %)(((
459 +(% _mstvisible="1" border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:469px" %)
460 +(% _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]
461 +(% _mstvisible="3" %)|(% _msthash="1230921" _msttexthash="60203" _mstvisible="4" style="width:65px" %)Value|(% _mstvisible="4" style="width:267px" %)(% _mstvisible="5" %)
462 +(((
463 +(% _msthash="1817497" _msttexthash="128427" _mstvisible="6" %)
371 371  BAT Status
465 +
466 +(% _msthash="1817498" _msttexthash="472784" _mstvisible="6" %)
372 372  00(b): Ultra Low ( BAT <= 2.50v)
468 +
469 +(% _msthash="1817499" _msttexthash="483678" _mstvisible="6" %)
373 373  01(b): Low  (2.50v <=BAT <= 2.55v)
471 +
472 +(% _msthash="1817500" _msttexthash="440791" _mstvisible="6" %)
374 374  10(b): OK   (2.55v <= BAT <=2.65v)
474 +
475 +(% _msthash="1817501" _msttexthash="334191" _mstvisible="6" %)
375 375  11(b): Good   (BAT >= 2.65v)
376 -)))|(% style="width:132px" %)(((
377 -[[Built-in Humidity>>||anchor="H2.4.4Built-inHumidity"]]
477 +)))|(% _mstvisible="4" style="width:134px" %)(% _mstvisible="5" %)
478 +(((
479 +(% _mstvisible="6" %)
480 +[[Built-in Humidity>>||anchor="H2.4.4Built-inHumidity" _msthash="1817502" _msttexthash="311181" _mstvisible="7"]]
481 +
482 +(% _mstvisible="6" %)
483 +
378 378  )))
379 379  
380 -* **Status & Ext Byte**
486 +* (% _msthash="504956" _msttexthash="245037" _mstvisible="4" %)**Status & Ext Byte**
381 381  
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)
488 +(% border="1" cellspacing="8" style="background-color:#ffffcc; color:green; width:520px" %)
489 +|(% 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]**
490 +|(% 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)
385 385  
386 386  * (% style="color:blue" %)**Poll Message Flag**:(%%)  1: This message is a poll message reply, 0: means this is a normal uplink.
387 387  * (% 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.
388 388  * (% 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)
389 389  
496 +
497 +
390 390  ==== 2.4.6.3 Ext~=6, ADC Sensor (use with E2 Cable) ====
391 391  
392 392  
... ... @@ -394,11 +394,11 @@
394 394  
395 395  be used to power the external ADC sensor; user can control the power on time for this
396 396  
397 -(% style="color:blue" %)**sensor by setting:**
505 +sensor by setting:
398 398  
399 -**AT+EXT=6,timeout**  (% _msthash="506085" _msttexthash="8782189" _mstvisible="3" style="color:red" %)**Time to power this sensor, from 0 ~~ 65535ms**
507 +AT+EXT=6,timeout  (% _msthash="506085" _msttexthash="8782189" _mstvisible="3" style="color:red" %)**Time to power this sensor, from 0 ~~ 65535ms**
400 400  
401 -**For example:**
509 +For example:
402 402  
403 403  AT+EXT=6,1000 will power this sensor for 1000ms before sampling the ADC value.
404 404  
... ... @@ -442,7 +442,7 @@
442 442  [[image:image-20220927095645-1.png||height="534" width="460"]]
443 443  
444 444  
445 -(% style="color:blue" %)**Ext=2,Temperature Sensor(TMP117):**
553 +**Ext=2,Temperature Sensor(TMP117):**
446 446  
447 447  [[image:image-20220906102307-7.png]]
448 448  
... ... @@ -453,6 +453,7 @@
453 453  
454 454  
455 455  
564 +
456 456  ==== 2.4.6.5 Ext~=4 Interrupt Mode (Since Firmware v1.3) ====
457 457  
458 458  
... ... @@ -461,7 +461,7 @@
461 461  
462 462  (% style="color:blue" %)**Interrupt Mode can be used to connect to external interrupt sensors such as:**
463 463  
464 -(% style="color:#037691" %)**Case 1: Door Sensor.** (%%)3.3v Out for such sensor is just to detect Open/Close.
573 +**Case 1: Door Sensor.** 3.3v Out for such sensor is just to detect Open/Close.
465 465  
466 466   In Open State, the power consumption is the same as if there is no probe
467 467  
... ... @@ -472,20 +472,20 @@
472 472  
473 473  Ext=4,Interrupt Sensor:
474 474  
475 -(% border="1.5" cellpadding="4" cellspacing="4" style="background-color:#ffffcc; color:green; height:6px; width:478px" %)
476 -|(% style="width:101px" %)(((
584 +(% border="2" cellpadding="4" cellspacing="4" style="background-color:#ffffcc; color:green; height:6px; width:512px" %)
585 +|(% style="width:117px" %)(((
477 477  AT+EXT=4,1
478 -)))|(% style="width:373px" %)(((
587 +)))|(% style="width:371px" %)(((
479 479  Sent uplink packet in both rising and falling interrupt
480 480  )))
481 -|(% style="width:101px" %)(((
590 +|(% style="width:117px" %)(((
482 482  AT+EXT=4,2
483 -)))|(% style="width:373px" %)(((
592 +)))|(% style="width:371px" %)(((
484 484  Sent uplink packet only in falling interrupt
485 485  )))
486 -|(% style="width:101px" %)(((
595 +|(% style="width:117px" %)(((
487 487  AT+EXT=4,3
488 -)))|(% style="width:373px" %)(((
597 +)))|(% style="width:371px" %)(((
489 489  Sent uplink packet only in rising interrupt
490 490  )))
491 491  
... ... @@ -516,7 +516,6 @@
516 516  
517 517  [[image:image-20220906101320-5.png||height="353" width="696"]]
518 518  
519 -
520 520  Ext=8, Counting Sensor ( 4 bytes):
521 521  
522 522  (% border="2" cellpadding="4" cellspacing="4" style="background-color:#ffffcc; color:green; height:6px; width:381px" %)
... ... @@ -552,7 +552,52 @@
552 552  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)
553 553  
554 554  
663 +(% style="color:blue" %)**Modified ATWOOD command for external sensor TMP117 or DS18B20 temperature alarm.**
555 555  
665 +
666 +(% style="color:#037691" %)**AT+WMOD=parameter1,parameter2,parameter3,parameter4**
667 +
668 +(% style="color:#037691" %)**Parameter 1**(%%):  Alarm mode:
669 +
670 +0): Cancel
671 +
672 +1): Threshold alarm
673 +
674 +2): Fluctuation alarm
675 +
676 +
677 +(% style="color:#037691" %)** Parameter 2**(%%):  Sampling time. Unit: seconds, up to 255 seconds.
678 +
679 +(% style="color:red" %)**Note: When the collection time is less than 60 seconds and always exceeds the set alarm threshold, the sending interval will not be the collection time, but will be sent every 60 seconds.**
680 +
681 +
682 +(% style="color:#037691" %) **Parameter 3 and parameter 4:**
683 +
684 +1):  If Alarm Mode is set to 1: Parameter 3 and parameter 4 are valid, as before, they represent low temperature and high temperature.
685 +
686 +Such as AT+WMOD=1,60,45,105, it means high and low temperature alarm.
687 +
688 +
689 +2):  If Alarm Mode is set to 2: Parameter 3 is valid, which represents the difference between the currently collected temperature and the last uploaded temperature.
690 +
691 +Such as AT+WMOD=2,10,2,it means that it is a fluctuation alarm.
692 +
693 +If the difference between the current collected temperature and the last Uplin is ±2 degrees, the alarm will be issued.
694 +
695 +
696 +(% style="color:blue" %)** Downlink:**
697 +
698 +0xA5 00 ~-~- AT+WMOD=0.
699 +
700 +0xA5 01 0A 11 94 29 04 ~-~- AT+WMOD=1,10,45,105  (AT+WMOD = second byte, third byte, fourth and fifth bytes divided by 100, sixth and seventh bytes divided by 100 )
701 +
702 +0xA5 02 0A 02 ~-~- AT+WMOD=2,10,2  (AT+WMOD = second byte, third byte, fourth byte)
703 +
704 +0xA5 FF ~-~- After the device receives it, upload the current alarm configuration (FPORT=8). Such as 01 0A 11 94 29 04 or 02 0A 02.
705 +
706 +
707 +
708 +
556 556  == 2.5 Show data on Datacake ==
557 557  
558 558  
... ... @@ -615,16 +615,9 @@
615 615  
616 616  There are two methods:
617 617  
618 -(% style="color:blue" %)**Method 1:** (%%)IoT Server sends a downlink LoRaWAN command to [[poll the value>>||anchor="H2.6.4Pollsensorvalue"]] for specified time range.
771 +1. IoT Server sends a downlink LoRaWAN command to [[poll the value>>||anchor="H2.6.4Pollsensorvalue"]] for specifying time range.
772 +1. Set [[PNACKMD=1>>||anchor="H4.13AutoSendNone-ACKmessages"]], LHT65N will wait for ACK for every uplink, when there is no LoRaWAN network, LHT65N will mark these records with non-ack message and store the sensor data, and it will send all messages (10s interval) after the network recovery. note: a) LHT65N will do ack check for data records sending to make sure every data arrive server. b) LHT65N will send data in CONFIRMED Mode when PNACKMD=1, but it won't re-transmit the same packet , it will just mark it as NONE-ACK and resend after network is detected.
619 619  
620 -
621 -(% 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.
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 -
628 628  Below is the typical case for the auto-update datalog feature (Set PNACKMD=1)
629 629  
630 630  
... ... @@ -631,7 +631,6 @@
631 631  [[image:image-20220703111700-2.png||height="381" width="1119"]]
632 632  
633 633  
634 -
635 635  === 2.6.2 Unix TimeStamp ===
636 636  
637 637  
... ... @@ -656,11 +656,11 @@
656 656  
657 657  
658 658  (((
659 -(% style="color:blue" %)**There are two ways to set device's time:**
804 +There are two ways to set device's time:
660 660  )))
661 661  
662 662  (((
663 -**1.  Through LoRaWAN MAC Command (Default settings)**
808 +**~1. Through LoRaWAN MAC Command (Default settings)**
664 664  )))
665 665  
666 666  (((
... ... @@ -710,75 +710,338 @@
710 710  === 2.6.5 Datalog Uplink payload ===
711 711  
712 712  
858 +(% _msthash="315267" _msttexthash="2245087" _mstvisible="1" %)
713 713  The Datalog poll reply uplink will use below payload format.
714 714  
715 -**Retrieval data payload:**
861 +(% _mstvisible="1" %)
862 +(((
863 +(% _mstvisible="2" %)
864 +
716 716  
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"]]
866 +(% _mstvisible="2" %)
867 +(% _msthash="506080" _msttexthash="451581" _mstvisible="4" %)**Retrieval data payload**
868 +)))
722 722  
723 -**Poll message flag & Ext:**
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 +)))
724 724  
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 +)))
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 +)))
983 +
984 +(% _mstvisible="6" %)
985 +(((
986 +(% _mstvisible="7" %)
987 +(((
988 +(% _mstvisible="8" %)
989 +
990 +)))
991 +)))
992 +)))
993 +
994 +(% _mstvisible="1" %)
995 +(% _msthash="315268" _msttexthash="390390" _mstvisible="3" %)**Poll message flag & Ext**
996 +
997 +(% _mstvisible="1" %)
998 +(((
999 +(% _mstvisible="2" %)
1000 +(((
1001 +(% _msthash="736723" _msttexthash="2005003" _mstvisible="3" %)
1002 +(((
725 725  [[image:image-20221006192726-1.png||height="112" width="754"]]
726 726  
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)
1005 +(% class="mark" %)No ACK Message(%%): 1: This message means this payload is fromn Uplink Message which doesn't get ACK from the server before ( for [[PNACKMD=1>>||anchor="H4.13AutoSendNone-ACKmessages"]] feature)
728 728  
729 -(% style="color:blue" %)**Poll Message Flag**(%%): 1: This message is a poll message reply.
1007 +(% class="mark" %)Poll Message Flag(%%): 1: This message is a poll message reply.
730 730  
731 -* Poll Message Flag is set to 1.
1009 +
1010 +)))
1011 +)))
1012 +)))
732 732  
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.
1014 +(% _mstvisible="1" %)
1015 +* (% _mstvisible="3" %)
1016 +(((
1017 +(% _mstvisible="4" %)
1018 +(((
1019 +(% _msthash="1197157" _msttexthash="561548" _mstvisible="5" %)
1020 +(((
1021 +Poll Message Flag is set to 1.
1022 +)))
1023 +)))
1024 +)))
1025 +* (% _mstvisible="3" %)
1026 +(((
1027 +(% _mstvisible="4" %)
1028 +(((
1029 +(% _msthash="1197158" _msttexthash="9284964" _mstvisible="5" %)
1030 +(((
1031 +Each data entry is 11 bytes, to save airtime and battery, devices will send max bytes according to the current DR and Frequency bands.
1032 +)))
1033 +)))
1034 +)))
734 734  
1036 +(% _mstvisible="1" %)
1037 +(((
1038 +(% _mstvisible="2" %)
1039 +(((
1040 +(% _msthash="736724" _msttexthash="2242344" _mstvisible="3" %)
1041 +(((
1042 +
1043 +)))
1044 +
1045 +(% _msthash="736724" _msttexthash="2242344" _mstvisible="3" %)
1046 +(((
735 735  For example, in US915 band, the max payload for different DR is:
1048 +)))
1049 +)))
1050 +)))
736 736  
737 -(% style="color:blue" %)**a) DR0:** (%%)max is 11 bytes so one entry of data
1052 +(% _mstvisible="1" %)
1053 +(((
1054 +(% _mstvisible="2" %)
1055 +(((
1056 +(% _msthash="736725" _msttexthash="1065532" _mstvisible="3" %)
1057 +(((
1058 +a) DR0: max is 11 bytes so one entry of data
1059 +)))
1060 +)))
1061 +)))
738 738  
739 -(% style="color:blue" %)**b) DR1:**(%%) max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
1063 +(% _mstvisible="1" %)
1064 +(((
1065 +(% _mstvisible="2" %)
1066 +(((
1067 +(% _msthash="736726" _msttexthash="3265665" _mstvisible="3" %)
1068 +(((
1069 +b) DR1: max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
1070 +)))
1071 +)))
1072 +)))
740 740  
741 -(% style="color:blue" %)**c) DR2:**(%%) total payload includes 11 entries of data
1074 +(% _mstvisible="1" %)
1075 +(((
1076 +(% _mstvisible="2" %)
1077 +(((
1078 +(% _msthash="736727" _msttexthash="1454115" _mstvisible="3" style="text-align: left;" %)
1079 +(((
1080 +c) DR2: total payload includes 11 entries of data
1081 +)))
1082 +)))
1083 +)))
742 742  
743 -(% style="color:blue" %)**d) DR3: **(%%)total payload includes 22 entries of data.
1085 +(% _mstvisible="1" %)
1086 +(((
1087 +(% _mstvisible="2" %)
1088 +(((
1089 +(% _msthash="736728" _msttexthash="1483924" _mstvisible="3" style="text-align: left;" %)
1090 +(((
1091 +d) DR3: total payload includes 22 entries of data.
1092 +)))
1093 +)))
1094 +)))
744 744  
745 -If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0   
1096 +(% _mstvisible="1" %)
1097 +(((
1098 +(% _mstvisible="2" %)
1099 +(((
1100 +(% _msthash="736729" _msttexthash="5848349" _mstvisible="3" style="text-align: left;" %)
1101 +(((
1102 +If devise doesn’t have any data in the polling time. Device will uplink 11 bytes of 0   
1103 +)))
1104 +)))
1105 +)))
746 746  
747 747  
748 -**Example:**
1108 +(% _mstvisible="1" style="text-align: left;" %)
1109 +(% _msthash="315269" _msttexthash="104767" _mstvisible="3" %)**Example:**
749 749  
1111 +(% _msthash="315270" _msttexthash="913822" _mstvisible="1" style="text-align: left;" %)
750 750  If LHT65N has below data inside Flash:
751 751  
1114 +(% _mstvisible="1" %)
752 752  [[image:image-20220523144455-1.png||_mstalt="430040" _mstvisible="3" height="335" width="735"]]
753 753  
1117 +(% _mstvisible="1" %)
1118 +(((
1119 +(% _msthash="506081" _msttexthash="1663961" _mstvisible="2" style="text-align: left;" %)
1120 +If user sends below downlink command: (% _mstvisible="3" style="background-color:yellow" %)3160065F9760066DA705
1121 +)))
754 754  
755 -If user sends below downlink command: (% style="background-color:yellow" %)3160065F9760066DA705
1123 +(% _mstvisible="1" %)
1124 +(((
1125 +(% _msthash="506082" _msttexthash="1092494" _mstvisible="2" style="text-align: left;" %)
1126 + Where : Start time: 60065F97 = time 21/1/19 04:27:03
1127 +)))
756 756  
757 -Where : Start time: 60065F97 = time 21/1/19 04:27:03
1129 +(% _mstvisible="1" %)
1130 +(((
1131 +(% _msthash="506083" _msttexthash="737269" _mstvisible="2" style="text-align: left;" %)
1132 + Stop time 60066DA7= time 21/1/19 05:27:(% _msthash="903005" _msttexthash="9672" _mstvisible="2" %)03
1133 +)))
758 758  
759 - Stop time: 60066DA7= time 21/1/19 05:27:03
1135 +(% _mstvisible="1" %)
1136 +(((
1137 +(% _mstvisible="2" %)
1138 +
1139 +)))
760 760  
1141 +(% _mstvisible="1" %)
1142 +(((
1143 +(% _msthash="506084" _msttexthash="751218" _mstvisible="2" style="text-align: left;" %)
1144 +LHT65N will uplink this payload.
1145 +)))
761 761  
762 -**LHT65N will uplink this payload.**
763 -
1147 +(% _mstvisible="1" %)
764 764  [[image:image-20220523001219-13.png||_mstalt="451204" _mstvisible="3" height="421" style="text-align:left" width="727"]]
765 765  
766 766  
767 -__**7FFF089801464160065F97**__ **__7FFF__ __088E__ __014B__ __41__ __60066009__** 7FFF0885014E41600660667FFF0875015141600662BE7FFF086B015541600665167FFF08660155416006676E7FFF085F015A41600669C67FFF0857015D4160066C1E
1151 +(% _msthash="315271" _msttexthash="12012546" _mstvisible="1" style="text-align: left;" %)
1152 +(((
1153 +7FFF089801464160065F977FFF088E014B41600660097FFF0885014E41600660667FFF0875015141600662BE7FFF086B015541600665167FFF08660155416006676E7FFF085F015A41600669C67FFF0857015D4160066C1E
1154 +)))
768 768  
1156 +(% _msthash="315237" _msttexthash="1385839" %)
1157 +(((
769 769  Where the first 11 bytes is for the first entry:
1159 +)))
770 770  
1161 +(% _msthash="315238" _msttexthash="274846" %)
1162 +(((
771 771  7FFF089801464160065F97
1164 +)))
772 772  
1166 +(% _msthash="315239" _msttexthash="617435" %)
1167 +(((
773 773  Ext sensor data=0x7FFF/100=327.67
1169 +)))
774 774  
775 -Temp=0x088E/100=22.00
1171 +(% _msthash="315240" _msttexthash="270543" %)
1172 +(((
1173 +Temp=0x0898/100=22.00
1174 +)))
776 776  
777 -Hum=0x014B/10=32.6
1176 +(% _msthash="315241" _msttexthash="211783" %)
1177 +(((
1178 +Hum=0x0146/10=32.6
1179 +)))
778 778  
1181 +(% _msthash="315242" _msttexthash="1569776" %)
1182 +(((
779 779  poll message flag & Ext=0x41,means reply data,Ext=1
1184 +)))
780 780  
781 -Unix time is 0x60066009=1611030423s=21/1/19 04:27:03
1186 +(% _msthash="315243" _msttexthash="1120509" %)
1187 +(((
1188 +Unix time is 0x60065F97=1611030423s=21/1/19 04:27:03
1189 +)))
782 782  
783 783  
784 784  
... ... @@ -792,142 +792,17 @@
792 792  (((
793 793  (% style="color:red" %)**Note: alarm mode adds a little power consumption, and we recommend extending the normal read time when this feature is enabled.**
794 794  
795 -
796 -
797 -=== 2.7.1 ALARM MODE ( Since v1.3.1 firmware) ===
798 -
799 -**Internal GXHT30 temperature alarm**
800 -
801 -(((
802 -(% class="box infomessage" %)
803 -(((
804 -**AT+WMOD=3**:  Enable/disable alarm mode. (0: Disabled, 1: Enabled Temperature Alarm for onboard temperature sensor)
805 -
806 -**AT+CITEMP=1**:  The interval between checking the alarm temperature. (In minutes)
807 -
808 -**AT+ARTEMP**:  Gets or sets the alarm range of the internal temperature sensor
809 -
810 -**AT+ARTEMP=? **:  Gets the alarm range of the internal temperature sensor(% _mstvisible="3" style="display:none" %)
811 -
812 -**AT+ARTEMP=45,105**:  Set the internal temperature sensor alarm range from 45 to 105.
813 -
814 -**AT+LEDALARM=1** :       Enable LED visual Alarm.
815 -)))
816 -)))
817 -
818 -(% style="color:#4f81bd" %)**Downlink Command:**
819 -
820 -AT+WMOD=1:  A501  ,  AT+WMOD=0 :  A600
821 -
822 -AT+CITEMP=1 : A60001
823 -
824 -AT+ARTEMP=1,60  :  A70001003C
825 -
826 -AT+ARTEMP=-16,60 :  A7FFF0003C
827 -
828 -AT+LEDALARM=1  :  3601
829 -
830 -(% style="color:#4f81bd" %)**Downlink Command: AAXXXXXXXXXXXXXX**
831 -
832 -Total bytes: 8 bytes
833 -
834 -**Example:**AA0100010001003C
835 -
836 -WMOD=01
837 -
838 -CITEMP=0001
839 -
840 -TEMPlow=0001
841 -
842 -TEMPhigh=003C
843 -
844 -
845 -**DS18B20 and TMP117 Threshold Alarm**
846 -
847 - AT+WMOD=1,60,-10,20
848 -
849 -(% style="color:#4f81bd" %)**Downlink Command:**
850 -
851 -**Example:**A5013CFC180014
852 -
853 -MOD=01
854 -
855 -CITEMP=3C(S)
856 -
857 -TEMPlow=FC18
858 -
859 -TEMPhigh=0014
860 -
861 -
862 -**Fluctuation alarm for DS18B20 and TMP117**
863 -
864 -AT+WMOD=2,60,5 
865 -
866 -(% style="color:#4f81bd" %)**Downlink Command:**
867 -
868 -**Example:**A5023C05
869 -
870 -MOD=02
871 -
872 -CITEMP=3C(S)
873 -
874 -temperature fluctuation=05
875 -
876 -
877 -**Collect multiple times and send once**
878 -
879 -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.
880 -
881 -(% style="color:#4f81bd" %)**Downlink Command:**
882 -
883 -**Example:**A50301003C14FFF0002001
884 -
885 -MOD=03
886 -
887 -EXT=01
888 -
889 -CITEMP=003C(S)
890 -
891 -Total number of acquisitions=14
892 -
893 -TEMPlow=FFF0
894 -
895 -TEMPhigh=0020
896 -
897 -ARTEMP=01
898 -
899 -
900 -**Uplink payload( Fport=3)**
901 -
902 -**Example:**CBEA0109920A4109C4
903 -
904 -BatV=CBEA
905 -
906 -EXT=01
907 -
908 -Temp1=0992 ~/~/24.50℃
909 -
910 -Temp2=0A41 ~/~/26.25℃
911 -
912 -Temp3=09C4 ~/~/25.00℃
913 -
914 -(% style="color:red" %)**Note: This uplink will automatically select the appropriate DR according to the data length**
915 -
916 -(% style="color:red" %)** In this mode, the temperature resolution of ds18b20 is 0.25℃ to save power consumption**
917 -
918 918  
919 919  )))
920 920  
921 921  (((
922 -=== 2.7.2 ALARM MODE ( Before v1.3.1 firmware) ===
923 -
924 -
1207 +**AT COMMAND FOR ALARM MODE:**
925 925  )))
926 926  
927 927  (% _mstvisible="1" class="box infomessage" %)
928 928  (((
929 929  (((
930 -**AT+WMOD=1**:  Enable/disable alarm mode. (0: Disabled, 1: Enabled Temperature Alarm for onboard temperature sensor)
1213 +**AT+WMOD=1**:  Enable/disable alarm mode. (0: Disabled, 1: Enabled)
931 931  )))
932 932  
933 933  (((
... ... @@ -962,9 +962,7 @@
962 962  TEMPhigh=003C
963 963  
964 964  
965 -=== ===
966 966  
967 -
968 968  == 2.8 LED Indicator ==
969 969  
970 970  
... ... @@ -979,6 +979,8 @@
979 979  * RED LED when external sensor is not connected
980 980  * For each success downlink, the PURPLE LED will blink once
981 981  
1263 +
1264 +
982 982  == 2.9 installation ==
983 983  
984 984  
... ... @@ -1036,6 +1036,8 @@
1036 1036  * Operating Range: -40 ~~ 125 °C
1037 1037  * Working voltage 2.35v ~~ 5v
1038 1038  
1322 +
1323 +
1039 1039  = 4. Configure LHT65N via AT command or LoRaWAN downlink =
1040 1040  
1041 1041  
... ... @@ -1099,12 +1099,14 @@
1099 1099  
1100 1100  Format: Command Code (0x01) followed by 3 bytes time value.
1101 1101  
1102 -If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01.
1387 +If the downlink payload=0100003C, it means set the END Nodes Transmit Interval to 0x00003C=60(S), while type code is 01.
1103 1103  
1104 -* **Example 1**: Downlink Payload: 0100001E  ~/~/ Set Transmit Interval (TDC) = 30 seconds
1389 +* **Example 1**: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds
1105 1105  
1106 -* **Example 2**: Downlink Payload: 0100003C  ~/~/ Set Transmit Interval (TDC) = 60 seconds
1391 +* **Example 2**: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds
1107 1107  
1393 +
1394 +
1108 1108  == 4.2 Set External Sensor Mode ==
1109 1109  
1110 1110  
... ... @@ -1128,6 +1128,8 @@
1128 1128  
1129 1129  * 0xA20702003c: Same as AT+SETCNT=60
1130 1130  
1418 +
1419 +
1131 1131  == 4.3 Enable/Disable uplink Temperature probe ID ==
1132 1132  
1133 1133  
... ... @@ -1158,6 +1158,8 @@
1158 1158  * **0xA800**  **~-~->** AT+PID=0
1159 1159  * **0xA801**     **~-~->** AT+PID=1
1160 1160  
1450 +
1451 +
1161 1161  == 4.4 Set Password ==
1162 1162  
1163 1163  
... ... @@ -1209,6 +1209,8 @@
1209 1209  
1210 1210  * There is no downlink command to set to Sleep mode.
1211 1211  
1503 +
1504 +
1212 1212  == 4.7 Set system time ==
1213 1213  
1214 1214  
... ... @@ -1222,7 +1222,7 @@
1222 1222  
1223 1223  (% _msthash="315254" _msttexthash="298038" style="color:#4f81bd" %)**Downlink Command:**
1224 1224  
1225 -0x306007806000  ~/~/  Set timestamp to 0x(6007806000),Same as AT+TIMESTAMP=1611104352
1518 +0x306007806000  ~/~/ Set timestamp to 0x(6007806000),Same as AT+TIMESTAMP=1611104352
1226 1226  
1227 1227  
1228 1228  
... ... @@ -1264,7 +1264,7 @@
1264 1264  
1265 1265  (% _msthash="315257" _msttexthash="298038" style="color:#4f81bd" %)**Downlink Command:**
1266 1266  
1267 -**0x29 0A**  ~/~/ Same as AT+SYNCTDC=0x0A
1560 +**0x29 0A** ~/~/ Same as AT+SYNCTDC=0x0A
1268 1268  
1269 1269  
1270 1270  
... ... @@ -1315,77 +1315,32 @@
1315 1315  
1316 1316  (% style="color:#4f81bd" %)**Downlink Command: 0xA3**
1317 1317  
1318 -* Example: 0xA301  ~/~/  Same as AT+CLRDTA
1611 +* Example: 0xA301 ~/~/Same as AT+CLRDTA
1319 1319  
1613 +
1614 +
1320 1320  == 4.13 Auto Send None-ACK messages ==
1321 1321  
1322 1322  
1618 +(% _msthash="315394" _msttexthash="51837149" _mstvisible="1" %)
1323 1323  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.
1324 1324  
1325 1325  
1326 1326  (% style="color:#4f81bd" %)**AT Command: AT+PNACKMD**
1327 1327  
1624 +(% _msthash="315396" _msttexthash="734682" _mstvisible="1" %)
1328 1328  The default factory setting is 0
1329 1329  
1330 -(% border="1" cellspacing="4" style="background-color:#ffffcc; color:green; width:367px" %)
1331 -|=(% style="width: 158px;" %)**Command Example**|=(% style="width: 118px;" %)**Function**|=(% style="width: 87px;" %)**Response**
1332 -|(% style="width:158px" %)AT+PNACKMD=1|(% style="width:118px" %)Poll None-ACK message|(% style="width:87px" %)OK
1627 +(% _mstvisible="1" border="1" style="background-color:#ffffcc; color:green; width:450px" %)
1628 +(% _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**
1629 +(% _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
1333 1333  
1334 1334  (% style="color:#4f81bd" %)**Downlink Command: 0x34**
1335 1335  
1336 -* Example: 0x3401  ~/~/  Same as AT+PNACKMD=1
1633 +* Example: 0x3401 ~/~/Same as AT+PNACKMD=1
1337 1337  
1338 -== 4.14 Modified ATWOOD command for external sensor TMP117 or DS18B20 temperature alarm ==
1339 1339  
1340 1340  
1341 -Feature: Set internal and external temperature sensor alarms.
1342 -
1343 -(% border="1" cellspacing="4" style="background-color:#ffffcc; color:green; width:500px" %)
1344 -|=(% style="width: 250px;" %)**Command Example**|=(% style="width: 200px;" %)**Function**|=(% style="width: 50px;" %)**Response**
1345 -|(% style="width:268px" %)AT+WMOD=parameter1,parameter2,parameter3,parameter4|(% style="width:255px" %)Set internal and external temperature sensor alarms|(% style="width:181px" %)OK
1346 -
1347 -(% style="color:#037691" %)**AT+WMOD=parameter1,parameter2,parameter3,parameter4**
1348 -
1349 -(% style="color:#037691" %)**Parameter 1**(%%):  Alarm mode:
1350 -
1351 -0): Cancel
1352 -
1353 -1): Threshold alarm
1354 -
1355 -2): Fluctuation alarm
1356 -
1357 -
1358 -(% style="color:#037691" %)** Parameter 2**(%%):  Sampling time. Unit: seconds, up to 255 seconds.
1359 -
1360 -(% 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.**
1361 -
1362 -
1363 -(% style="color:#037691" %) **Parameter 3 and parameter 4:**
1364 -
1365 -1):  If Alarm Mode is set to 1: Parameter 3 and parameter 4 are valid, as before, they represent low temperature and high temperature.
1366 -
1367 -Such as AT+WMOD=1,60,45,105, it means high and low temperature alarm.
1368 -
1369 -
1370 -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.
1371 -
1372 -Such as AT+WMOD=2,10,2,it means that it is a fluctuation alarm.
1373 -
1374 -If the difference between the current collected temperature and the last Uplin is ±2 degrees, the alarm will be issued.
1375 -
1376 -
1377 -(% style="color:#4f81bd" %)**Downlink Command: 0xA5**
1378 -
1379 -0xA5 00 ~-~- AT+WMOD=0.
1380 -
1381 -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 )
1382 -
1383 -0xA5 02 0A 02 ~-~- AT+WMOD=2,10,2  (AT+WMOD = second byte, third byte, fourth byte)
1384 -
1385 -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.
1386 -
1387 -
1388 -
1389 1389  = 5. Battery & How to replace =
1390 1390  
1391 1391  
... ... @@ -1421,7 +1421,6 @@
1421 1421  [[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"]]
1422 1422  
1423 1423  
1424 -
1425 1425  == 5.3 Battery Life Analyze ==
1426 1426  
1427 1427  
... ... @@ -1456,6 +1456,7 @@
1456 1456  * (% style="background-color:yellow" %)**USB to TTL GND <~-~->GND**
1457 1457  * (% style="background-color:yellow" %)**USB to TTL RXD <~-~-> D+**
1458 1458  * (% style="background-color:yellow" %)**USB to TTL TXD <~-~-> A11**
1706 +* (% style="background-color:yellow" %)**USB to TTL 3.3V <~-~-> D-**
1459 1459  
1460 1460  (((
1461 1461  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.
... ... @@ -1855,6 +1855,8 @@
1855 1855  
1856 1856  * (% style="color:red" %)**E3**(%%): External Temperature Probe
1857 1857  
2106 +
2107 +
1858 1858  = 8. Packing Info =
1859 1859  
1860 1860  
... ... @@ -1868,11 +1868,15 @@
1868 1868  * Device Size:  10 x 10 x 3.5 cm
1869 1869  * Device Weight: 120.5g
1870 1870  
2121 +
2122 +
1871 1871  = 9. Reference material =
1872 1872  
1873 1873  
1874 1874  * [[Datasheet, photos, decoder, firmware>>https://www.dropbox.com/sh/una19zsni308dme/AACOKp6J2RF5TMlKWT5zU3RTa?dl=0||_msthash="504975" _msttexthash="51420512"]]
1875 1875  
2128 +
2129 +
1876 1876  = 10. FCC Warning =
1877 1877  
1878 1878