Changes for page LHT65N -- Manual do sensor de temperatura e umidade LoRaWAN
Last modified by Xiaoling on 2023/07/18 10:12
From version 222.1
edited by Edwin Chen
on 2022/11/19 11:48
on 2022/11/19 11:48
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Edwin1 +XWiki.Xiaoling - 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 ... ... @@ -184,6 +184,7 @@ 184 184 185 185 186 186 189 + 187 187 === 2.3.2 Step 2: Activate LHT65N by pressing the ACT button for more than 5 seconds. === 188 188 189 189 ... ... @@ -206,35 +206,48 @@ 206 206 After each uplink, the (% _mstvisible="3" style="color:blue" %)**BLUE LED**(%%) will blink once. 207 207 ))) 208 208 209 -(% border="1" cellspacing="4" style="background-color:#ffffcc; color:green; width:390px" %) 210 -|=(% style="width: 60px;" %)((( 212 +(% border="1" cellspacing="4" style="background-color:#ffffcc; color:green; width:390px" %) 213 +|=(% style="width: 60px;" %) 214 +((( 211 211 **Size(bytes)** 212 -)))|=(% style="width: 30px;" %)((( 216 +)))|=(% style="width: 30px;" %) 217 +((( 213 213 **2** 214 -)))|=(% style="width: 100px;" %)((( 219 +)))|=(% style="width: 100px;" %) 220 +((( 215 215 **2** 216 -)))|=(% style="width: 100px;" %)((( 222 +)))|=(% style="width: 100px;" %) 223 +((( 217 217 **2** 218 -)))|=(% style="width: 50px;" %)((( 225 +)))|=(% style="width: 50px;" %) 226 +((( 219 219 **1** 220 -)))|=(% style="width: 50px;" %)((( 228 +)))|=(% style="width: 50px;" %) 229 +((( 221 221 **4** 222 222 ))) 223 -|(% style="width:97px" %)((( 232 +|(% style="width:97px" %) 233 +((( 224 224 **Value** 225 -)))|(% style="width:39px" %)((( 226 -[[BAT>>||anchor="H2.4.2BAT-BatteryInfo"]] 227 -)))|(% style="width:100px" %)((( 235 +)))|(% style="width:39px" %) 228 228 ((( 237 +[[BAT>>||anchor="H2.4.2BAT-BatteryInfo" ]] 238 +)))|(% style="width:100px" %) 239 +((( 240 +((( 229 229 [[Built-In Temperature>>||anchor="H2.4.3Built-inTemperature"]] 230 230 ))) 231 -)))|(% style="width:77px" %) (((243 +)))|(% style="width:77px" %) 232 232 ((( 245 +((( 233 233 [[Built-in Humidity>>||anchor="H2.4.4Built-inHumidity"]] 234 234 ))) 235 -)))|(% style="width:47px" %)((( 236 -[[Ext>>||anchor="H2.4.5Ext23"]] # 237 -)))|(% style="width:51px" %)((( 248 + 249 +)))|(% style="width:47px" %) 250 +((( 251 +[[Ext>>||anchor="H2.4.5Ext23" ]] # 252 +)))|(% style="width:51px" %) 253 +((( 238 238 [[Ext value>>||anchor="H2.4.6Extvalue"]] 239 239 ))) 240 240 ... ... @@ -242,6 +242,7 @@ 242 242 * The 7th byte (EXT #): defines the external sensor model. 243 243 * 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.) 244 244 261 + 245 245 === 2.4.1 Decoder in TTN V3 === 246 246 247 247 ... ... @@ -270,6 +270,7 @@ 270 270 * BAT status=(0Xcba4>>14)&0xFF=11(B),very good 271 271 * Battery Voltage =0xCBF6&0x3FFF=0x0BA4=2980mV 272 272 290 + 273 273 === 2.4.3 Built-in Temperature === 274 274 275 275 ... ... @@ -281,6 +281,7 @@ 281 281 282 282 * Temperature: (0xF5C6-65536)/100=-26.18℃ 283 283 302 + 284 284 === 2.4.4 Built-in Humidity === 285 285 286 286 ... ... @@ -288,6 +288,7 @@ 288 288 289 289 * Humidity: 0x025C/10=60.4% 290 290 310 + 291 291 === 2.4.5 Ext # === 292 292 293 293 ... ... @@ -310,8 +310,6 @@ 310 310 311 311 The last 2 bytes of data are meaningless 312 312 313 - 314 - 315 315 [[image:image-20220522235639-6.png||_mstalt="433212" _mstvisible="3"]] 316 316 317 317 ... ... @@ -334,58 +334,118 @@ 334 334 335 335 ))) 336 336 337 -(% border="1" cellspacing="4" style="background-color:#ffffcc; color:green; width:480px" %) 338 -|=(% style="width: 50px;" %)((( 339 -**Size(bytes)** 340 -)))|=(% style="width: 70px;" %)((( 341 -**2** 342 -)))|=(% style="width: 120px;" %)((( 343 -**2** 344 -)))|=(% style="width: 120px;" %)((( 345 -**2** 346 -)))|=(% style="width: 50px;" %)((( 347 -**1** 348 -)))|=(% style="width: 70px;" %)((( 349 -**4** 355 +(% _mstvisible="1" border="1" cellspacing="4" style="background-color:#ffffcc; color:green; width:510px" %) 356 +|=(% style="width: 50px;" %) 357 +(((**Size(bytes)** 358 +)))|=(% _mstvisible="4" style="width: 71px;" %) 359 +((( 360 +(% _mstvisible="6" %) 361 +(% _msthash="1817489" _msttexthash="4550" _mstvisible="8" %)**2** 362 +)))|=(% _mstvisible="4" style="width: 99px;" %)(% _mstvisible="5" %) 363 +((( 364 +(% _mstvisible="6" %) 365 +(% _msthash="1817490" _msttexthash="4550" _mstvisible="8" %)**2** 366 +)))|=(% _mstvisible="4" style="width: 132px;" %)(% _mstvisible="5" %) 367 +((( 368 +(% _mstvisible="6" %) 369 +(% _msthash="1817491" _msttexthash="4550" _mstvisible="8" %)**2** 370 +)))|=(% _mstvisible="4" style="width: 54px;" %)(% _mstvisible="5" %) 371 +((( 372 +(% _mstvisible="6" %) 373 +(% _msthash="1817492" _msttexthash="4459" _mstvisible="8" %)**1** 374 +)))|=(% _mstvisible="4" style="width: 64px;" %)(% _mstvisible="5" %) 375 +((( 376 +(% _mstvisible="6" %) 377 +(% _msthash="1817493" _msttexthash="4732" _mstvisible="8" %)**4** 350 350 ))) 351 -|(% style="width:110px" %)((( 352 -**Value** 353 -)))|(% style="width:71px" %)((( 354 -[[External temperature>>||anchor="H4.2SetExternalSensorMode"]] 355 -)))|(% style="width:99px" %)((( 356 -[[Built-In Temperature>>||anchor="H2.4.3Built-inTemperature"]] 357 -)))|(% style="width:132px" %)((( 358 -BAT Status & [[Built-in Humidity>>||anchor="H2.4.4Built-inHumidity"]] 359 -)))|(% style="width:54px" %)((( 379 +(% _mstvisible="3" %)|(% _mstvisible="4" style="width:96px" %)(% _mstvisible="5" %) 380 +((( 381 +(% _mstvisible="6" %) 382 +(% _msthash="1817494" _msttexthash="60203" _mstvisible="8" %)**Value** 383 +)))|(% _mstvisible="4" style="width:71px" %)(% _mstvisible="5" %) 384 +((( 385 +(% _mstvisible="6" %) 386 +[[External temperature>>||anchor="H4.2SetExternalSensorMode" _msthash="1817495" _msttexthash="426517" _mstvisible="7"]] 387 +)))|(% _mstvisible="4" style="width:99px" %)(% _mstvisible="5" %) 388 +((( 389 +(% _mstvisible="6" %) 390 +((( 391 +(% _mstvisible="7" %) 392 +[[Built-In>>||anchor="H2.4.3Built-inTemperature" _msthash="2224745" _msttexthash="100464" _mstvisible="8"]] 393 +))) 394 + 395 +(% _mstvisible="6" %) 396 +((( 397 +(% _mstvisible="7" %) 398 +[[Temperature>>||anchor="H2.4.3Built-inTemperature" _msthash="2224746" _msttexthash="184041" _mstvisible="8"]] 399 +))) 400 +)))|(% _mstvisible="4" style="width:132px" %)(% _mstvisible="5" %) 401 +((( 402 +(% _mstvisible="6" %) 403 +((( 404 +(% _msthash="2224747" _msttexthash="136331" _mstvisible="7" %) 405 +BAT Status & 406 +))) 407 + 408 +(% _mstvisible="6" %) 409 +((( 410 +(% _mstvisible="7" %) 411 +[[Built-in Humidity>>||anchor="H2.4.4Built-inHumidity" _msthash="2224748" _msttexthash="311181" _mstvisible="8"]] 412 +))) 413 +)))|(% _mstvisible="4" style="width:54px" %)(% _mstvisible="5" %) 414 +((( 415 +(% _msthash="1817496" _msttexthash="147225" _mstvisible="6" %) 360 360 Status & Ext 361 -)))|(% style="width:64px" %)((( 362 -[[Unix Time Stamp>>||anchor="H2.6.2UnixTimeStamp"]] 417 +)))|(% _mstvisible="4" style="width:64px" %)(% _mstvisible="5" %) 418 +((( 419 +(% _mstvisible="6" %) 420 +((( 421 +(% _mstvisible="7" %) 422 +[[Unix Time Stamp>>||anchor="H2.6.2UnixTimeStamp" _msthash="2224749" _msttexthash="227175" _mstvisible="8"]] 363 363 ))) 424 +))) 364 364 365 -* **Battery status & Built-in Humidity** 426 +(% _mstvisible="1" %) 427 +* (% _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 366 367 -(% _mstvisible="1" border="1" cellspacing="4" style="background-color:#ffffcc; color:green; width:461px" %) 368 -|=(% style="width: 67px;" %)Bit(bit)|=(% style="width: 256px;" %)[15:14]|=(% style="width: 132px;" %)[11:0] 369 -|(% style="width:67px" %)Value|(% style="width:256px" %)((( 429 +(% _mstvisible="1" border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:469px" %) 430 +(% _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] 431 +(% _mstvisible="3" %)|(% _msthash="1230921" _msttexthash="60203" _mstvisible="4" style="width:65px" %)Value|(% _mstvisible="4" style="width:267px" %)(% _mstvisible="5" %) 432 +((( 433 +(% _msthash="1817497" _msttexthash="128427" _mstvisible="6" %) 370 370 BAT Status 435 + 436 +(% _msthash="1817498" _msttexthash="472784" _mstvisible="6" %) 371 371 00(b): Ultra Low ( BAT <= 2.50v) 438 + 439 +(% _msthash="1817499" _msttexthash="483678" _mstvisible="6" %) 372 372 01(b): Low (2.50v <=BAT <= 2.55v) 441 + 442 +(% _msthash="1817500" _msttexthash="440791" _mstvisible="6" %) 373 373 10(b): OK (2.55v <= BAT <=2.65v) 444 + 445 +(% _msthash="1817501" _msttexthash="334191" _mstvisible="6" %) 374 374 11(b): Good (BAT >= 2.65v) 375 -)))|(% style="width:132px" %)((( 376 -[[Built-in Humidity>>||anchor="H2.4.4Built-inHumidity"]] 447 +)))|(% _mstvisible="4" style="width:134px" %)(% _mstvisible="5" %) 448 +((( 449 +(% _mstvisible="6" %) 450 +[[Built-in Humidity>>||anchor="H2.4.4Built-inHumidity" _msthash="1817502" _msttexthash="311181" _mstvisible="7"]] 451 + 452 +(% _mstvisible="6" %) 453 + 377 377 ))) 378 378 379 -* **Status & Ext Byte** 456 +* (% _msthash="504956" _msttexthash="245037" _mstvisible="4" %)**Status & Ext Byte** 380 380 381 -(% border="1" cellspacing="4" style="background-color:#ffffcc; color:green; width:50 0px" %)382 -| =(% scope="row" style="width:;" %)**Bits**|(% style="width:90px" %)**7**|(% style="width:100px" %)**6**|(% style="width:90px" %)**5**|(% style="width:100px" %)**4**|(% style="width:60px" %)**[3:0]**383 -| =(% style="width:;" %)**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)458 +(% border="1" cellspacing="4" style="background-color:#ffffcc; color:green; width:520px" %) 459 +|(% 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]** 460 +|(% 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) 384 384 385 385 * (% style="color:blue" %)**Poll Message Flag**:(%%) 1: This message is a poll message reply, 0: means this is a normal uplink. 386 386 * (% 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. 387 387 * (% 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) 388 388 466 + 389 389 ==== 2.4.6.3 Ext~=6, ADC Sensor (use with E2 Cable) ==== 390 390 391 391 ... ... @@ -471,20 +471,20 @@ 471 471 472 472 Ext=4,Interrupt Sensor: 473 473 474 -(% border="1.5" cellpadding="4" cellspacing="4" style="background-color:#ffffcc; color:green; height:6px; width: 478px" %)475 -|(% style="width:1 01px" %)(((552 +(% border="1.5" cellpadding="4" cellspacing="4" style="background-color:#ffffcc; color:green; height:6px; width:512px" %) 553 +|(% style="width:117px" %)((( 476 476 AT+EXT=4,1 477 -)))|(% style="width:37 3px" %)(((555 +)))|(% style="width:371px" %)((( 478 478 Sent uplink packet in both rising and falling interrupt 479 479 ))) 480 -|(% style="width:1 01px" %)(((558 +|(% style="width:117px" %)((( 481 481 AT+EXT=4,2 482 -)))|(% style="width:37 3px" %)(((560 +)))|(% style="width:371px" %)((( 483 483 Sent uplink packet only in falling interrupt 484 484 ))) 485 -|(% style="width:1 01px" %)(((563 +|(% style="width:117px" %)((( 486 486 AT+EXT=4,3 487 -)))|(% style="width:37 3px" %)(((565 +)))|(% style="width:371px" %)((( 488 488 Sent uplink packet only in rising interrupt 489 489 ))) 490 490 ... ... @@ -499,6 +499,7 @@ 499 499 500 500 501 501 580 + 502 502 ==== 2.4.6.6 Ext~=8 Counting Mode(Since Firmware v1.3) ==== 503 503 504 504 ... ... @@ -618,7 +618,6 @@ 618 618 619 619 (% 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. 620 620 621 - 622 622 (% style="color:red" %)**Note for method 2:** 623 623 624 624 * a) LHT65N will do an ACK check for data records sending to make sure every data arrive server. ... ... @@ -630,7 +630,6 @@ 630 630 [[image:image-20220703111700-2.png||height="381" width="1119"]] 631 631 632 632 633 - 634 634 === 2.6.2 Unix TimeStamp === 635 635 636 636 ... ... @@ -674,8 +674,10 @@ 674 674 (% style="color:red" %)**Note: LoRaWAN Server need to support LoRaWAN v1.0.3(MAC v1.0.3) or higher to support this MAC command feature, Chirpstack,TTN V3 v3 and loriot support but TTN V3 v2 doesn't support. If server doesn't support this command, it will through away uplink packet with this command, so user will lose the packet with time request for TTN V3 v2 if SYNCMOD=1.** 675 675 ))) 676 676 754 +((( 755 + 756 +))) 677 677 678 - 679 679 ((( 680 680 **2. Manually Set Time** 681 681 ))) ... ... @@ -707,79 +707,342 @@ 707 707 === 2.6.5 Datalog Uplink payload === 708 708 709 709 789 +(% _msthash="315267" _msttexthash="2245087" _mstvisible="1" %) 710 710 The Datalog poll reply uplink will use below payload format. 711 711 712 -**Retrieval data payload:** 792 +(% _mstvisible="1" %) 793 +((( 794 +(% _mstvisible="2" %) 795 + 713 713 714 -(% border="1" cellspacing="4" style="background-color:#ffffcc; color:green; width:480px" %) 715 -|=(% style="width: 60px;" %)((( 716 -**Size(bytes)** 717 -)))|=(% style="width: 90px;" %)**2**|=(% style="width: 90px;" %)**2**|=(% style="width: 70px;" %)**2**|=(% style="width: 100px;" %)**1**|=(% style="width: 70px;" %)**4** 718 -|(% 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"]] 797 +(% _mstvisible="2" %) 798 +(% _msthash="506080" _msttexthash="451581" _mstvisible="4" %)**Retrieval data payload** 799 +))) 719 719 720 -**Poll message flag & Ext:** 801 +(% _mstvisible="1" border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %) 802 +(% _mstvisible="3" %)|=(% _mstvisible="4" style="width: 93px;" %)(% _mstvisible="5" %) 803 +((( 804 +(% _mstvisible="6" %) 805 +((( 806 +(% _mstvisible="7" %) 807 +(% _msthash="2224750" _msttexthash="161122" _mstvisible="9" %)**Size(bytes)** 808 +))) 809 +)))|=(% _mstvisible="4" style="width: 71px;" %)(% _mstvisible="5" %) 810 +((( 811 +(% _mstvisible="6" %) 812 +((( 813 +(% _mstvisible="7" %) 814 +(% _msthash="2224751" _msttexthash="4550" _mstvisible="9" %)**2** 815 +))) 816 +)))|=(% _mstvisible="4" style="width: 102px;" %)(% _mstvisible="5" %) 817 +((( 818 +(% _mstvisible="6" %) 819 +((( 820 +(% _mstvisible="7" %) 821 +(% _msthash="2224752" _msttexthash="4550" _mstvisible="9" %)**2** 822 +))) 823 +)))|=(% _mstvisible="4" style="width: 86px;" %)(% _mstvisible="5" %) 824 +((( 825 +(% _mstvisible="6" %) 826 +((( 827 +(% _mstvisible="7" %) 828 +(% _msthash="2224753" _msttexthash="4550" _mstvisible="9" %)**2** 829 +))) 830 +)))|=(% _mstvisible="4" style="width: 86px;" %)(% _mstvisible="5" %) 831 +((( 832 +(% _mstvisible="6" %) 833 +((( 834 +(% _mstvisible="7" %) 835 +(% _msthash="2224754" _msttexthash="4459" _mstvisible="9" %)**1** 836 +))) 837 +)))|=(% _mstvisible="4" style="width: 48px;" %)(% _mstvisible="5" %) 838 +((( 839 +(% _mstvisible="6" %) 840 +((( 841 +(% _mstvisible="7" %) 842 +(% _msthash="2224755" _msttexthash="4732" _mstvisible="9" %)**4** 843 +))) 844 +))) 845 +(% _mstvisible="3" %)|(% _mstvisible="4" style="width:93px" %)(% _mstvisible="5" %) 846 +((( 847 +(% _mstvisible="6" %) 848 +((( 849 +(% _mstvisible="7" %) 850 +(% _msthash="2224756" _msttexthash="60203" _mstvisible="9" %)**Value** 851 +))) 852 +)))|(% _mstvisible="4" style="width:71px" %)(% _mstvisible="5" %) 853 +((( 854 +(% _mstvisible="6" %) 855 +((( 856 +(% _mstvisible="7" %) 857 +[[External sensor data>>||anchor="H2.4.6Extvalue" _msthash="2224757" _msttexthash="386672" _mstvisible="8"]] 858 +))) 859 +)))|(% _mstvisible="4" style="width:102px" %)(% _mstvisible="5" %) 860 +((( 861 +(% _mstvisible="6" %) 862 +((( 863 +(% _mstvisible="7" %) 864 +((( 865 +(% _mstvisible="8" %) 866 +[[Built In>>||anchor="H2.4.3Built-inTemperature" _msthash="2671864" _msttexthash="91065" _mstvisible="9"]] 867 +))) 868 +))) 721 721 870 +(% _mstvisible="6" %) 871 +((( 872 +(% _mstvisible="7" %) 873 +((( 874 +(% _mstvisible="8" %) 875 +[[Temperature>>||anchor="H2.4.3Built-inTemperature" _msthash="2671865" _msttexthash="184041" _mstvisible="9"]] 876 +))) 877 +))) 878 +)))|(% _mstvisible="4" style="width:86px" %)(% _mstvisible="5" %) 879 +((( 880 +(% _mstvisible="6" %) 881 +((( 882 +(% _mstvisible="7" %) 883 +((( 884 +(% _mstvisible="8" %) 885 +[[Built-in>>||anchor="H2.4.4Built-inHumidity" _msthash="2671866" _msttexthash="105872" _mstvisible="9"]] 886 +))) 887 +))) 888 + 889 +(% _mstvisible="6" %) 890 +((( 891 +(% _mstvisible="7" %) 892 +((( 893 +(% _mstvisible="8" %) 894 +[[Humidity>>||anchor="H2.4.4Built-inHumidity" _msthash="2671867" _msttexthash="117429" _mstvisible="9"]] 895 +))) 896 +))) 897 +)))|(% _mstvisible="4" style="width:86px" %)(% _mstvisible="5" %) 898 +((( 899 +(% _mstvisible="6" %) 900 +((( 901 +(% _msthash="2224758" _msttexthash="390390" _mstvisible="7" %) 902 +Poll message flag & Ext 903 +))) 904 +)))|(% _mstvisible="4" style="width:48px" %)(% _mstvisible="5" %) 905 +((( 906 +(% _mstvisible="6" %) 907 +((( 908 +(% _mstvisible="7" %) 909 +((( 910 +(% _mstvisible="8" %) 911 +[[Unix Time Stamp>>||anchor="H2.6.2UnixTimeStamp" _msthash="2671868" _msttexthash="227175" _mstvisible="9"]] 912 +))) 913 +))) 914 + 915 +(% _mstvisible="6" %) 916 +((( 917 +(% _mstvisible="7" %) 918 +((( 919 +(% _mstvisible="8" %) 920 + 921 +))) 922 +))) 923 +))) 924 + 925 +(% _mstvisible="1" %) 926 +(% _msthash="315268" _msttexthash="390390" _mstvisible="3" %)**Poll message flag & Ext** 927 + 928 +(% _mstvisible="1" %) 929 +((( 930 +(% _mstvisible="2" %) 931 +((( 932 +(% _msthash="736723" _msttexthash="2005003" _mstvisible="3" %) 933 +((( 722 722 [[image:image-20221006192726-1.png||height="112" width="754"]] 723 723 724 -(% style="color:blue" %)**No ACK Message**(%%):936 +(% 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) 725 725 726 -(% style="color:blue" %)**Poll Message Flag**(%%): 1: This message is a poll message reply.938 +(% class="mark" %)**Poll Message Flag**(%%): 1: This message is a poll message reply. 727 727 728 -* Poll Message Flag is set to 1. 940 + 941 +))) 942 +))) 943 +))) 729 729 730 -* Each data entry is 11 bytes, to save airtime and battery, devices will send max bytes according to the current DR and Frequency bands. 945 +(% _mstvisible="1" %) 946 +* (% _mstvisible="3" %) 947 +((( 948 +(% _mstvisible="4" %) 949 +((( 950 +(% _msthash="1197157" _msttexthash="561548" _mstvisible="5" %) 951 +((( 952 +Poll Message Flag is set to 1. 953 +))) 954 +))) 955 +))) 956 +* (% _mstvisible="3" %) 957 +((( 958 +(% _mstvisible="4" %) 959 +((( 960 +(% _msthash="1197158" _msttexthash="9284964" _mstvisible="5" %) 961 +((( 962 +Each data entry is 11 bytes, to save airtime and battery, devices will send max bytes according to the current DR and Frequency bands. 963 +))) 964 +))) 965 +))) 731 731 967 +(% _mstvisible="1" %) 968 +((( 969 +(% _mstvisible="2" %) 970 +((( 971 +(% _msthash="736724" _msttexthash="2242344" _mstvisible="3" %) 972 +((( 973 + 974 +))) 975 + 976 +(% _msthash="736724" _msttexthash="2242344" _mstvisible="3" %) 977 +((( 732 732 For example, in US915 band, the max payload for different DR is: 979 +))) 980 +))) 981 +))) 733 733 734 -(% style="color:blue" %)**a) DR0:** (%%)max is 11 bytes so one entry of data 983 +(% _mstvisible="1" %) 984 +((( 985 +(% _mstvisible="2" %) 986 +((( 987 +(% _msthash="736725" _msttexthash="1065532" _mstvisible="3" %) 988 +((( 989 +**a) DR0:** max is 11 bytes so one entry of data 990 +))) 991 +))) 992 +))) 735 735 736 -(% style="color:blue" %)**b) DR1:**(%%) max is 53 bytes so devices will upload 4 entries of data (total 44 bytes) 994 +(% _mstvisible="1" %) 995 +((( 996 +(% _mstvisible="2" %) 997 +((( 998 +(% _msthash="736726" _msttexthash="3265665" _mstvisible="3" %) 999 +((( 1000 +**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes) 1001 +))) 1002 +))) 1003 +))) 737 737 738 -(% style="color:blue" %)**c) DR2:**(%%) total payload includes 11 entries of data 1005 +(% _mstvisible="1" %) 1006 +((( 1007 +(% _mstvisible="2" %) 1008 +((( 1009 +(% _msthash="736727" _msttexthash="1454115" _mstvisible="3" style="text-align: left;" %) 1010 +((( 1011 +**c) DR2:** total payload includes 11 entries of data 1012 +))) 1013 +))) 1014 +))) 739 739 740 -(% style="color:blue" %)**d) DR3: **(%%)total payload includes 22 entries of data. 1016 +(% _mstvisible="1" %) 1017 +((( 1018 +(% _mstvisible="2" %) 1019 +((( 1020 +(% _msthash="736728" _msttexthash="1483924" _mstvisible="3" style="text-align: left;" %) 1021 +((( 1022 +**d) DR3: **total payload includes 22 entries of data. 1023 +))) 1024 +))) 1025 +))) 741 741 1027 +(% _mstvisible="1" %) 1028 +((( 1029 +(% _mstvisible="2" %) 1030 +((( 1031 +(% _msthash="736729" _msttexthash="5848349" _mstvisible="3" style="text-align: left;" %) 1032 +((( 742 742 If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0 1034 +))) 1035 +))) 1036 +))) 743 743 744 744 745 -**Example:** 1039 +(% _mstvisible="1" style="text-align: left;" %) 1040 +(% _msthash="315269" _msttexthash="104767" _mstvisible="3" %)**Example:** 746 746 1042 +(% _msthash="315270" _msttexthash="913822" _mstvisible="1" style="text-align: left;" %) 747 747 If LHT65N has below data inside Flash: 748 748 1045 +(% _mstvisible="1" %) 749 749 [[image:image-20220523144455-1.png||_mstalt="430040" _mstvisible="3" height="335" width="735"]] 750 750 1048 +(% _mstvisible="1" %) 1049 +((( 1050 +(% _msthash="506081" _msttexthash="1663961" _mstvisible="2" style="text-align: left;" %) 1051 +If user sends below downlink command: (% _mstvisible="3" style="background-color:yellow" %)3160065F9760066DA705 1052 +))) 751 751 752 -If user sends below downlink command: (% style="background-color:yellow" %)3160065F9760066DA705 1054 +(% _mstvisible="1" %) 1055 +((( 1056 +(% _msthash="506082" _msttexthash="1092494" _mstvisible="2" style="text-align: left;" %) 1057 + Where : Start time: 60065F97 = time 21/1/19 04:27:03 1058 +))) 753 753 754 -Where : Start time: 60065F97 = time 21/1/19 04:27:03 1060 +(% _mstvisible="1" %) 1061 +((( 1062 +(% _msthash="506083" _msttexthash="737269" _mstvisible="2" style="text-align: left;" %) 1063 + Stop time 60066DA7= time 21/1/19 05:27:(% _msthash="903005" _msttexthash="9672" _mstvisible="2" %)03 1064 +))) 755 755 756 - Stop time: 60066DA7= time 21/1/19 05:27:03 1066 +(% _mstvisible="1" %) 1067 +((( 1068 +(% _mstvisible="2" %) 1069 + 1070 +))) 757 757 1072 +(% _mstvisible="1" %) 1073 +((( 1074 +(% _msthash="506084" _msttexthash="751218" _mstvisible="2" style="text-align: left;" %) 1075 +LHT65N will uplink this payload. 1076 +))) 758 758 759 -**LHT65N will uplink this payload.** 760 - 1078 +(% _mstvisible="1" %) 761 761 [[image:image-20220523001219-13.png||_mstalt="451204" _mstvisible="3" height="421" style="text-align:left" width="727"]] 762 762 763 763 764 -__**7FFF089801464160065F97**__ **__7FFF__ __088E__ __014B__ __41__ __60066009__** 7FFF0885014E41600660667FFF0875015141600662BE7FFF086B015541600665167FFF08660155416006676E7FFF085F015A41600669C67FFF0857015D4160066C1E 1082 +(% _msthash="315271" _msttexthash="12012546" _mstvisible="1" style="text-align: left;" %) 1083 +((( 1084 +7FFF089801464160065F977FFF088E014B41600660097FFF0885014E41600660667FFF0875015141600662BE7FFF086B015541600665167FFF08660155416006676E7FFF085F015A41600669C67FFF0857015D4160066C1E 1085 +))) 765 765 1087 +(% _msthash="315237" _msttexthash="1385839" %) 1088 +((( 766 766 Where the first 11 bytes is for the first entry: 1090 +))) 767 767 1092 +(% _msthash="315238" _msttexthash="274846" %) 1093 +((( 768 768 7FFF089801464160065F97 1095 +))) 769 769 1097 +(% _msthash="315239" _msttexthash="617435" %) 1098 +((( 770 770 Ext sensor data=0x7FFF/100=327.67 1100 +))) 771 771 772 -Temp=0x088E/100=22.00 1102 +(% _msthash="315240" _msttexthash="270543" %) 1103 +((( 1104 +Temp=0x0898/100=22.00 1105 +))) 773 773 774 -Hum=0x014B/10=32.6 1107 +(% _msthash="315241" _msttexthash="211783" %) 1108 +((( 1109 +Hum=0x0146/10=32.6 1110 +))) 775 775 1112 +(% _msthash="315242" _msttexthash="1569776" %) 1113 +((( 776 776 poll message flag & Ext=0x41,means reply data,Ext=1 1115 +))) 777 777 778 -Unix time is 0x60066009=1611030423s=21/1/19 04:27:03 1117 +(% _msthash="315243" _msttexthash="1120509" %) 1118 +((( 1119 +Unix time is 0x60065F97=1611030423s=21/1/19 04:27:03 1120 +))) 779 779 780 780 781 781 782 -== 2.7 Alarm Mode & Feature "Multi sampling, one uplink"==1124 +== 2.7 Alarm Mode == 783 783 784 784 785 785 ((( ... ... @@ -794,12 +794,10 @@ 794 794 === 2.7.1 ALARM MODE ( Since v1.3.1 firmware) === 795 795 796 796 797 -**Internal GXHT30 temperature alarm** 798 - 799 799 ((( 800 800 (% class="box infomessage" %) 801 801 ((( 802 -**AT+WMOD=3**: Enable/disable alarm mode. (0: Disabled, 1: Enabled Temperature Alarm for onboard temperature sensor) 1142 +**AT+WMOD=3,**: Enable/disable alarm mode. (0: Disabled, 1: Enabled Temperature Alarm for onboard temperature sensor) 803 803 804 804 **AT+CITEMP=1**: The interval between checking the alarm temperature. (In minutes) 805 805 ... ... @@ -813,121 +813,15 @@ 813 813 ))) 814 814 ))) 815 815 816 -(% style="color:#4f81bd" %)**Downlink Command:** 817 817 818 -AT+WMOD=1: A501 , AT+WMOD=0 : A600 819 - 820 -AT+CITEMP=1 : A60001 821 - 822 -AT+ARTEMP=1,60 : A70001003C 823 - 824 -AT+ARTEMP=-16,60 : A7FFF0003C 825 - 826 -AT+LEDALARM=1 : 3601 827 - 828 - 829 -(% style="color:#4f81bd" %)**Downlink Command: AAXXXXXXXXXXXXXX** 830 - 831 -Total bytes: 8 bytes 832 - 833 -**Example: **AA0100010001003C 834 - 835 -WMOD=01 836 - 837 -CITEMP=0001 838 - 839 -TEMPlow=0001 840 - 841 -TEMPhigh=003C 842 - 843 - 844 -**DS18B20 and TMP117 Threshold Alarm** 845 - 846 -**~ AT+WMOD=1,60,-10,20** 847 - 848 -(% style="color:#4f81bd" %)**Downlink Command:** 849 - 850 -**Example: **A5013CFC180014 851 - 852 -MOD=01 853 - 854 -CITEMP=3C(S) 855 - 856 -TEMPlow=FC18 857 - 858 -TEMPhigh=0014 859 - 860 - 861 -**Fluctuation alarm for DS18B20 and TMP117** 862 - 863 -**AT+WMOD=2,60,5** 864 - 865 -(% style="color:#4f81bd" %)**Downlink Command:** 866 - 867 -**Example: **A5023C05 868 - 869 -MOD=02 870 - 871 -CITEMP=3C(S) 872 - 873 -temperature fluctuation=05 874 - 875 - 876 -==== **Sampling multiple times and uplink together** ==== 877 - 878 -**AT+WMOD=3,1,60,20,-16,32,1** 879 - 880 -Explain: 881 - 882 -* Set Working Mode to **Mode 3** 883 -* Sampling Interval is **60**s. 884 -* When there is **20** sampling dats, Device will send these data via one uplink. (max value is 60, means max 60 sampling in one uplink) 885 -* Temperature alarm range is **-16** to **32**°C, 886 -* **1** to enable temperature alarm, **0** to disable the temperature alarm. If alarm is enabled, a data will be sent immediately if temperate exceeds the Alarm range. 887 - 888 - 889 -(% style="color:#4f81bd" %)**Downlink Command:** 890 - 891 -**Example: **A50301003C14FFF0002001 892 - 893 -MOD=03 894 - 895 -EXT=01 896 - 897 -CITEMP=003C(S) 898 - 899 -Total number of acquisitions=14 900 - 901 -TEMPlow=FFF0 902 - 903 -TEMPhigh=0020 904 - 905 -ARTEMP=01 906 - 907 - 908 -**Uplink payload( Fport=3)** 909 - 910 -**Example: CBEA**01**0992**//0A41//**09C4** 911 - 912 -BatV=CBEA 913 - 914 -EXT=01 915 - 916 -Temp1=0992 ~/~/ 24.50℃ 917 - 918 -Temp2=0A41 ~/~/ 26.25℃ 919 - 920 -Temp3=09C4 ~/~/ 25.00℃ 921 - 922 - 923 -(% style="color:red" %)**Note: This uplink will automatically select the appropriate DR according to the data length** 924 - 925 -(% style="color:red" %)** In this mode, the temperature resolution of ds18b20 is 0.25℃ to save power consumption** 1157 + 926 926 ))) 927 927 928 - 1160 +((( 929 929 === 2.7.2 ALARM MODE ( Before v1.3.1 firmware) === 930 930 1163 + 1164 +))) 931 931 932 932 (% _mstvisible="1" class="box infomessage" %) 933 933 ((( ... ... @@ -982,6 +982,7 @@ 982 982 * RED LED when external sensor is not connected 983 983 * For each success downlink, the PURPLE LED will blink once 984 984 1219 + 985 985 == 2.9 installation == 986 986 987 987 ... ... @@ -1039,6 +1039,7 @@ 1039 1039 * Operating Range: -40 ~~ 125 °C 1040 1040 * Working voltage 2.35v ~~ 5v 1041 1041 1277 + 1042 1042 = 4. Configure LHT65N via AT command or LoRaWAN downlink = 1043 1043 1044 1044 ... ... @@ -1108,6 +1108,7 @@ 1108 1108 1109 1109 * **Example 2**: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 1110 1110 1347 + 1111 1111 == 4.2 Set External Sensor Mode == 1112 1112 1113 1113 ... ... @@ -1131,6 +1131,7 @@ 1131 1131 1132 1132 * 0xA20702003c: Same as AT+SETCNT=60 1133 1133 1371 + 1134 1134 == 4.3 Enable/Disable uplink Temperature probe ID == 1135 1135 1136 1136 ... ... @@ -1161,6 +1161,7 @@ 1161 1161 * **0xA800** **~-~->** AT+PID=0 1162 1162 * **0xA801** **~-~->** AT+PID=1 1163 1163 1402 + 1164 1164 == 4.4 Set Password == 1165 1165 1166 1166 ... ... @@ -1212,6 +1212,7 @@ 1212 1212 1213 1213 * There is no downlink command to set to Sleep mode. 1214 1214 1454 + 1215 1215 == 4.7 Set system time == 1216 1216 1217 1217 ... ... @@ -1320,32 +1320,36 @@ 1320 1320 1321 1321 * Example: 0xA301 ~/~/ Same as AT+CLRDTA 1322 1322 1563 + 1323 1323 == 4.13 Auto Send None-ACK messages == 1324 1324 1325 1325 1567 +(% _msthash="315394" _msttexthash="51837149" _mstvisible="1" %) 1326 1326 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. 1327 1327 1328 1328 1329 1329 (% style="color:#4f81bd" %)**AT Command: AT+PNACKMD** 1330 1330 1573 +(% _msthash="315396" _msttexthash="734682" _mstvisible="1" %) 1331 1331 The default factory setting is 0 1332 1332 1333 -(% b order="1"cellspacing="4" style="background-color:#ffffcc; color:green; width:367px" %)1334 -|=(% style="width: 1 58px;" %)**Command Example**|=(% style="width: 118px;" %)**Function**|=(% style="width:87px;" %)**Response**1335 -|(% style="width:1 58px" %)AT+PNACKMD=1|(% style="width:118px" %)Poll None-ACK message|(% style="width:87px" %)OK1576 +(% _mstvisible="1" border="1" style="background-color:#ffffcc; color:green; width:450px" %) 1577 +(% _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** 1578 +(% _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 1336 1336 1337 1337 (% style="color:#4f81bd" %)**Downlink Command: 0x34** 1338 1338 1339 1339 * Example: 0x3401 ~/~/ Same as AT+PNACKMD=1 1340 1340 1341 -== 4.14 Modified WMOD command for external sensor TMP117 or DS18B20 temperature alarm(Since firmware 1.3.0) == 1342 1342 1585 +== 4.14 Modified ATWOOD command for external sensor TMP117 or DS18B20 temperature alarm == 1343 1343 1587 + 1344 1344 Feature: Set internal and external temperature sensor alarms. 1345 1345 1346 -(% border="1" cellspacing="4" style="background-color:#ffffcc; color:green; width:500px" %)1347 -| =(% style="width:250px;" %)**Command Example**|=(% style="width: 200px;" %)**Function**|=(% style="width:50px;" %)**Response**1348 -|(% style=" width:268px" %)AT+WMOD=parameter1,parameter2,parameter3,parameter4|(% style="width:255px" %)Set internal and external temperature sensor alarms|(% style="width:181px" %)OK1590 +(% border="1" style="background-color:#ffffcc; color:green; width:450px" %) 1591 +|(%%)(% _msthash="1231737" _msttexthash="251862" _mstvisible="6" %)**Command Example**|(%%)(% _msthash="1231738" _msttexthash="116025" _mstvisible="6" %)**Function**|(%%)(% _msthash="1231739" _msttexthash="116831" _mstvisible="6" %)**Response** 1592 +|(%%)(% style="color:#037691" %)AT+WMOD=parameter1,parameter2,parameter3,parameter4|Set internal and external temperature sensor alarms|OK 1349 1349 1350 1350 (% style="color:#037691" %)**AT+WMOD=parameter1,parameter2,parameter3,parameter4** 1351 1351 ... ... @@ -1383,8 +1383,6 @@ 1383 1383 1384 1384 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 ) 1385 1385 1386 -0XA5 01 0A F9 C0 29 04 ~-~-AT+WMOD=1,10,-16,105(Need to convert -16 to -1600 for calculation,-1600(DEC)=FFFFFFFFFFFFF9C0(HEX) FFFFFFFFFFFFF9C0(HEX) +10000(HEX)=F9C0(HEX)) 1387 - 1388 1388 0xA5 02 0A 02 ~-~- AT+WMOD=2,10,2 (AT+WMOD = second byte, third byte, fourth byte) 1389 1389 1390 1390 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. ... ... @@ -1397,17 +1397,22 @@ 1397 1397 == 5.1 Battery Type == 1398 1398 1399 1399 1400 - 1401 1401 ((( 1643 +((( 1402 1402 LHT65N is equipped with a 2400mAH Li-MnO2 (CR17505) battery . The battery is an un-rechargeable battery with low discharge rate targeting for up to 8~~10 years use. This type of battery is commonly used in IoT devices for long-term running, such as water meters. 1403 1403 ))) 1646 +))) 1404 1404 1648 +((( 1649 + 1650 +))) 1405 1405 1406 - 1407 1407 ((( 1653 +((( 1408 1408 The discharge curve is not linear so can't simply use percentage to show the battery level. Below is the battery performance. 1409 1409 [[image:image-20220515075034-1.png||_mstalt="428961" _mstvisible="4" height="208" width="644"]] 1410 1410 ))) 1657 +))) 1411 1411 1412 1412 The minimum Working Voltage for the LHT65N is ~~ 2.5v. When battery is lower than 2.6v, it is time to change the battery. 1413 1413 ... ... @@ -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 ... ... @@ -1430,6 +1430,9 @@ 1430 1430 [[https:~~/~~/www.dragino.com/downloads/downloads/LoRa_End_Node/Battery_Analyze/DRAGINO_Battery_Life_Guide.pdf>>https://www.dragino.com/downloads/downloads/LoRa_End_Node/Battery_Analyze/DRAGINO_Battery_Life_Guide.pdf]] 1431 1431 ))) 1432 1432 1679 +((( 1680 + 1681 +))) 1433 1433 1434 1434 ((( 1435 1435 A full detail test report for LHT65N on different frequency can be found at : [[https:~~/~~/www.dropbox.com/sh/r2i3zlhsyrpavla/AAB1sZw3mdT0K7XjpHCITt13a?dl=0>>https://www.dropbox.com/sh/r2i3zlhsyrpavla/AAB1sZw3mdT0K7XjpHCITt13a?dl=0]] ... ... @@ -1811,7 +1811,7 @@ 1811 1811 [[image:image-20220623113959-5.png||height="528" width="397"]] 1812 1812 1813 1813 (% _msthash="506146" _msttexthash="52173160" %) 1814 - ConnectA8andGNDwithDupontwireforawhileandthenseparate,enterreset mode2063 +Press and hold the start key to restart and enter (% _mstvisible="1" %)bootlaod(%%) mode. 1815 1815 1816 1816 1817 1817 ... ... @@ -1828,7 +1828,7 @@ 1828 1828 [[image:image-20220620160723-8.png]] 1829 1829 1830 1830 1831 -Finally, Disconnect 3.3v,Connect A8 and GND with Dupont wirefor a while and thenseparate,exitresetmode2080 +Finally,restart reset device again 1832 1832 1833 1833 1834 1834 ... ... @@ -1852,6 +1852,7 @@ 1852 1852 1853 1853 * (% style="color:red" %)**E3**(%%): External Temperature Probe 1854 1854 2104 + 1855 1855 = 8. Packing Info = 1856 1856 1857 1857 ... ... @@ -1862,14 +1862,16 @@ 1862 1862 1863 1863 **Dimension and weight**: 1864 1864 1865 -* Device Size: 10 x 10 x 3.5 m m2115 +* Device Size: 10 x 10 x 3.5 cm 1866 1866 * Device Weight: 120.5g 1867 1867 2118 + 1868 1868 = 9. Reference material = 1869 1869 1870 1870 1871 1871 * [[Datasheet, photos, decoder, firmware>>https://www.dropbox.com/sh/una19zsni308dme/AACOKp6J2RF5TMlKWT5zU3RTa?dl=0||_msthash="504975" _msttexthash="51420512"]] 1872 1872 2124 + 1873 1873 = 10. FCC Warning = 1874 1874 1875 1875