Version 466.1 by Dilisi S on 2024/12/06 18:25

Show last authors
1 (% style="text-align:center" %)
2 [[image:image-20241204094648-1.jpeg||height="544" width="544"]]
3
4
5
6
7
8
9
10 **Table of Contents:**
11
12 {{toc/}}
13
14
15
16
17
18 = 1. Introduction =
19
20 == 1.1 What is the LHT65N-VIB LoRaWAN Vibration Sensor? ==
21
22
23 The Dragino LHT65N-VIB (% style="color:blue" %)**LoRaWAN Vibration Sensor**(%%) is designed to (% style="color:blue" %)**detect and measure vibrations, shocks, and accelerations of an object**(%%). By analyzing the object's motion, the LHT65N-VIB can send meaningful data such as alarms, device runtime, vibration counts, and vibration strength to an IoT platform for further analysis.
24
25 It can be used in professional wireless sensor network applications, including (% style="color:blue" %)**equipment status monitoring, water leakage alarms, usage statistics, vibration intensity detection**(%%), and more.
26
27 The LHT65N-VIB (% style="color:blue" %)**supports a datalogging feature**(%%), allowing it to record data when there is no network coverage. Users can retrieve the sensor readings later, ensuring no data is missed.
28
29 The LHT65N-VIB enables users to send data over extremely long distances. It offers ultra-long-range spread spectrum communication and high interference immunity while minimizing current consumption.
30
31 The LHT65N-VIB has a(% style="color:blue" %)** built-in 2400mAh non-rechargeable battery**(%%), which can last up to 3 years*.
32
33 The LHT65N-VIB is fully compatible with the LoRaWAN v1.0.3, Class A mode and can work with a standard LoRaWAN gateway.
34
35 *The actual battery life depends on how frequently data is transmitted. Please refer to the battery analyzer chapter for more details.
36
37
38 == 1.2 Features ==
39
40
41 * LoRaWAN v1.0.3, Class A mode
42 * Frequency Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915
43 * Detecting object vibration status
44 * Detect vibration alarm
45 * 3-axis accelerator for x,y,z
46 * Calcula device runtime
47 * Built-in 2400mAh battery for long time use
48 * Built-in Temperature & Humidity sensor
49 * Tri-color LED to indicate working status
50 * Datalog feature (Max 3328 records)
51 * AT Commands to change parameters
52 * Remote configure parameters via LoRaWAN Downlink
53 * Firmware upgradeable via program port
54
55 == 1.3 Specification ==
56
57
58 (% style="color:#037691" %)**Built-in Temperature Sensor:**
59
60 * Resolution: 0.01 °C
61 * Accuracy Tolerance : Typ ±0.3 °C
62 * Long Term Drift: < 0.02 °C/yr
63 * Operating Range: -40 ~~ 85 °C
64
65 (% style="color:#037691" %)**Built-in Humidity Sensor:**
66
67 * Resolution: 0.04 %RH
68 * Accuracy Tolerance : Typ ±3 %RH
69 * Long Term Drift: < 0.25 RH/yr
70 * Operating Range: 0 ~~ 96 %RH
71
72 (% style="color:#037691" %)**External Vibration Sensor:**
73
74 * Detecting object vibration status
75 * accelerator for x,y,z
76 * Small size for easy installation
77 * Acceleration: ±2g,±4g,±8g;±16g
78 * Frequency: 25Hz,50Hz,100Hz,200Hz,400Hz
79
80 = 2. Registering LHT65N-VIB with a LoRaWAN Network Server =
81
82
83 **The LHT65N-VIB can be registered with any LoRaWAN network server. In this documentation, we use The Things Stack as an example, but similar settings may apply to other LoRaWAN network servers.**
84
85
86 == 2.1 How does the LHT65N-VIB work? ==
87
88
89 (((
90 The LHT65N-VIB is configured in LoRaWAN Class A mode by default. Each LHT65N-VIB is shipped with a unique global registration key that supports OTAA (Over-The-Air-Activation). To use the LHT65N-VIB with a LoRaWAN network, you first need to register the device with the network using the provided registration keys for OTAA support.
91
92 The LHT65N-VIB's registration information can be found inside the device package.
93
94 [[image:image-20230426083319-1.png||_mstalt="431106" height="258" width="556"]]
95
96 The registration information includes the following:
97
98 * DevEUI
99 * AppEUI
100 * AppKey
101
102 Once registered, if the LHT65N-VIB is within the coverage area of the LoRaWAN network, it can automatically join the network. After successfully joining, the LHT65N-VIB will begin measuring environmental temperature and humidity and will start transmitting sensor data to the LoRaWAN network server. The default uplink transmission interval is 20 minutes.
103
104
105 )))
106
107 == 2.2 How to Activate LHT65N-VIB? ==
108
109
110 (((
111 (((
112 The LHT65N-VIB has two working modes:
113 )))
114
115 * (((
116 (% style="color:blue" %)**Deep sleep mode**(%%): In this mode, the LHT65N-VIB doesn't perform any LoRaWAN activation. It is used for storage and shipping to conserve battery life.
117 )))
118
119 (((
120 * (% style="color:blue" %)**Working mode**(%%): In this mode, the LHT65N-VIB works as a LoRaWAN sensor, joining the LoRaWAN network and sending sensor data to the server. Between each sampling/TX/RX cycle, the LHT65N-VIB enters STOP mode (IDLE mode), where it consumes the same power as in deep sleep mode.
121 )))
122
123 The LHT65N-VIB is set in deep sleep mode by default. The **ACT** button on the front can be used to switch between different modes. See the image below:
124 )))
125
126 [[image:image-20230717144740-2.png||_mstalt="430794" height="391" width="267"]]
127
128 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
129 |=(% style="width: 167px;background-color:#4F81BD;color:white" %)**Usage of the ACT button**|=(% style="width: 117px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 226px;background-color:#4F81BD;color:white" %)**Action**
130 |(% style="background-color:#f2f2f2; width:167px" %)Pressing ACT between 1 - 3s|(% style="background-color:#f2f2f2; width:117px" %)Test uplink status|(% style="background-color:#f2f2f2; width:225px" %)(((
131 If LHT65N-VIB is already joined to the LoRaWAN network, it will send an uplink packet. If an external sensor is connected, the (% style="color:blue" %)**Blue LED** (%%)will blink once. If there is no external sensor, the (% style="color:red" %)**Red LED**(%%) will blink once.
132 )))
133 |(% style="background-color:#f2f2f2; width:167px" %)Pressing ACT for more than 3s|(% style="background-color:#f2f2f2; width:117px" %)Activate Device|(% style="background-color:#f2f2f2; width:225px" %)(((
134 (% style="background-color:#f2f2f2; color:green" %)**The Green LED**(%%) will blink quickly 5 times, indicating that the LHT65N-VIB is entering working mode and starting to join the LoRaWAN network. The (% style="background-color:#f2f2f2; color:green" %)**Green LED**(%%) will solid for 5 seconds after successfully joining the network.
135 )))
136 |(% style="background-color:#f2f2f2; width:167px" %)Fast press ACT 5 times.|(% style="background-color:#f2f2f2; width:117px" %)Deactivate Device|(% style="background-color:#f2f2f2; width:225px" %)(% style="color:red" %)**The Red LED**(%%) will remain solid for 5 seconds, indicating that the LHT65N-VIB is in Deep Sleep Mode.
137
138 {{info}}
139 We recommend that you activate the device using the ACT button after adding its registration information to the LoRaWAN network server. Otherwise, the device will continuously send join-request messages in an attempt to join a LoRaWAN network but will fail.
140 {{/info}}
141
142
143 == 2.3 Registering with The Things Stack ==
144
145
146 (% class="wikigeneratedid" %)
147 In this section we will guide you through on how to register the LHT65N-VIB with The Things Stack. If your area has **The Things Stack** community network coverage, you can use it without setting up your own network. If not, you can set up your own LoRaWAN network coverage by using our [[**LPS8N**>>https://www.dragino.com/products/lora-lorawan-gateway/item/200-lps8n.html]] LoRaWAN gateway.
148
149 (% class="wikigeneratedid" %)
150 The typical end-to-end network setup with LHT65N-VIB and LPS8v2 is shown below:
151
152 (% class="wikigeneratedid" %)
153 [[image:lht65n-vib-nw-diagram.jpg]]
154
155
156
157 === 2.3.1 Add LHT65N-VIB to The Things Stack ===
158
159
160 * From the LoRaWAN device repository
161 * Manually
162
163 ==== 3.2.2.1 Creating an application ====
164
165
166 Sign up for a free account with [[The Things Stack Sandbox>>url:https://eu1.cloud.thethings.network]] if you do not have one yet. Then, create an application as shown in the screenshots below.
167
168
169 ==== 3.2.2.2 Adding using the LoRaWAN device repository ====
170
171 You can refer to the screenshots below to register your LHT65N-VIB using The Things Stack's LoRaWAN device repository.
172
173 On The Things Stack console:
174
175 ~1. Click **Applications**.
176
177 2. Click <**your application**>. E.g. dragino-docs
178
179 3 Click **End devices**.
180
181 4. Click **+ Register end devic**e button.
182
183
184 [[image:lht65n-vib-1.png]]
185
186
187 On the Register end device page:
188
189 ~1. Click **Select the end device in the LoRaWAN Device Repository** option.
190
191 2. Select the following parameters:
192
193 * **End device brand**: Dragon Technology Co., Limited
194 * **Model**: LHT65 - Temperature and Humidity Sensor. //**The LHT65N-VIB Vibration Sensor uses the same template as the LHT65 - Temperature and Humidity Sensor.**//
195 * **Hardware Ver**: Unknown Ver.
196 * **Firmware Ver**: 1.9.1
197 * **Profile (Region)**: Select the region that matches your device. E.g.: EU_863_870
198
199 3. **Frequency plan**: Select the frequency plan that matches your device. E.g.: Europe 863-870 MHz (SF9 for RX2 - recommended).
200
201 [[image:lht65n-vib-9.png]]
202
203
204 4. **JoinEUI**: Enter the AppEUI of the device (see the registration information sticker) and Click the **Confirm** button.
205
206 5. **DevEUI**: Enter the DevEUI of the device (see the registration information sticker).
207
208 6. **AppKey**: Enter the AppKey of the device (see the registration information sticker).
209
210 7. **End device ID**: Enter a name for your end device to uniquely identify it within this application.
211
212 8. Click **View registered end device** option.
213
214 9. Click **Register end device** button.
215
216
217 [[image:lht65n-vib-2.png]]
218
219
220 You will be navigated to the **Device overview **page.
221
222
223 ==== 3.2.2.3 Adding manually ====
224
225 You can refer to the screenshots below to register your LHT65N-VIB using The Things Stack's manual option.
226
227
228 1-4: Same as in the section 3.2.2.2.
229
230 5. Select **Enter end device specifies manually** option.
231
232 6. **Frequency plan**: Select the frequency plan that matches your device. E.g.: Europe 863-870 MHz (SF9 for RX2 - recommended).
233
234 7. **LoRaWAN version**: LoRaWAN Specification 1.0.3
235
236 8. Regional Parameters version: You can't change it and it will select automatically.
237
238
239 [[image:lht65n-vib-3.png]]
240
241
242 9. Click on the **Show advanced activation, LoRaWAN class and cluster settings **to expand the section.
243
244 10. Select **Over the air activation (OTAA**) option.
245
246 ~11. Select **None (class A only)**.
247
248 12. **JoinEUI**: Enter the **AppEUI** of the device (see the registration information sticker) and Click the **Confirm** button.
249
250
251
252 [[image:lht65n-vib-4.png]]
253
254
255 13. **DevEUI**: Enter the DevEUI of the device (see the registration information sticker).
256
257 14. **AppKey**: Enter the AppKey of the device (see the registration information sticker).
258
259 15. **End device ID**: Enter a name for your end device to uniquely identify it within this application.
260
261 16. Click **View registered end device** option.
262
263 17. Click **Register end device** button.
264
265 [[image:lht65n-vib-5.png]]
266
267
268 You will be navigated to the **Device overview **page.
269
270
271
272 === 2.3.2 Activate the LHT65N-VIB by pressing and holding the ACT button for more than 5 seconds. ===
273
274 (((
275 Press and hold the ACT button for more than 5 seconds to activate the LHT65N-VIB. It will then join The Things Stack. Once successfully connected, the device will begin uplinking sensor data to The Things Stack, which can be viewed on the Live data panel.
276 )))
277
278 [[image:image-20241011171332-1.png||height="238" width="816"]]
279
280
281 === 2.3.3 Uplink Decoder in The Things Stack ===
282
283 When the uplink payload arrives in The Things Stack, it is displayed in HEX format, which is not easy to read. You can add the LHT65N-VIB decoder in The Things Stack for easier readability of each sensor readings.
284
285 The uplink decoder can be added to the** Payload Formatters** of your device in The Things Stack. Refer to the screenshot below.
286
287 ~1. Click **Uplink** tab.
288
289 2. **Formatter type:** Select Custom Javascript formatter.
290
291 3. **Formatter code**: Copy the uplink payload formatter code from [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder/blob/main/LHT65N-VIB/LHT65N-VIB_TTN_Decoder.txt]] and paste it here.
292
293 4. Finally, click on the **Save changes** button.
294
295 [[image:Screenshot 2024-12-03 at 17.34.15.png]]
296
297
298
299 == 2.4 Uplink Payload (FPort~=2) ==
300
301 (((
302 The uplink payload is a total of 11 bytes. Uplink packets use **FPort=2 **and, by default, are sent (% style="color:#4f81bd" %)**every 20 minutes.**
303 )))
304
305 (((
306 After each uplink, the (% style="color:blue" %)**BLUE LED**(%%) blinks once.
307
308 There are four different working modes:
309
310 * VIBMOD=1 vibration count, work_min
311 * VIBMOD=2 TempC_SHT, Hum_SHT, vib_count
312 * VIBMOD=3 TempC_SHT, Hum_SHT, vib_min
313 * VIBMOD=4 X, Y, Z
314
315
316 )))
317
318 === 2.4.1 VIBMOD~=1 ===
319
320 VIBMOD=1 represent the battery voltage, working mode, alarm status, TDC, vibration count, and work_min.
321
322 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:360px" %)
323 |=(% style="width: 80px;background-color:#4F81BD;color:white" %)(((
324 **Size(bytes)**
325 )))|=(% style="width: 40px;background-color:#4F81BD;color:white" %)(((
326 **2**
327 )))|=(% style="width: 80px;background-color:#4F81BD;color:white" %)(((
328 1
329 )))|=(% style="width: 80px;background-color:#4F81BD;color:white" %)(((
330 **4**
331 )))|=(% style="width: 80px;background-color:#4F81BD;color:white" %)(((
332 4
333 )))
334 |(% style="width:110px" %)(((
335 Value
336 )))|(% style="width:71px" %)(((
337 BAT
338 )))|(% style="width:99px" %)MOD
339 Alarm
340 TDC|(% style="width:132px" %)vib_count|(% style="width:54px" %)work_min
341
342 [[image:image-20241011175741-3.png||height="187" width="1023"]]
343
344
345 The following subsections describe each field:
346
347
348 ==== 2.4.1.1 BAT (Battery Voltage) ====
349
350
351 These two bytes represent the battery voltage. See the image below.
352
353 [[image:image-20241012091339-4.png||height="92" width="787"]]
354
355 Calculate the battery voltage for the LHT65N-VIB, if the BAT=0B F2.
356
357 Convert 0x0BF2 to decimal (3058) and then divide by 1000 to get the voltage.
358
359 * (% style="color:#ff0000; font-family:Arial,sans-serif; font-size:10.5pt; font-style:normal; font-variant-alternates:normal; font-variant-east-asian:normal; font-variant-ligatures:normal; font-variant-numeric:normal; font-variant-position:normal; font-weight:400; text-decoration:none; white-space:pre-wrap" %)0x0BF2 (hex) = 3058 (dec)
360 * (% style="color:#ff0000; font-family:Arial,sans-serif; font-size:10.5pt; font-style:normal; font-variant-alternates:normal; font-variant-east-asian:normal; font-variant-ligatures:normal; font-variant-numeric:normal; font-variant-position:normal; font-weight:400; text-decoration:none; white-space:pre-wrap" %)3058/1000 = 3.058 V
361
362 ==== 2.4.1.2 MOD, Alarm, and TDC ====
363
364
365 This byte represent working mode, alarm status, and TCD. See the image below.
366
367 [[image:image-20241012092023-5.png||height="89" width="792"]]
368
369 bytes[2]=0x06=0000 0110
370
371 **Current working mode:**
372
373 * (bytes[2]>>2)&0x07
374 * Shift two bits to right (0000 0110 -> 0000 0001)
375 * Then bitwise AND with 0x07 (0000 0001 & 0000 0111 = 0000 0001 = **1**)
376
377 **Current alarm status:**
378
379 * (bytes[2] & 0x01)? "TRUE":"FALSE"
380 * 0000 0110 & 0000 0001 = 0000 0000 = 0 = **FALSE**
381
382 **Is the current data triggered by TDC (data uploaded due to alarm)?**
383
384 * (bytes[2] & 0x02)? "YES":"NO"
385 * 0000 0110 & 0000 0010 = 0000 0010 = 2 (NON-ZERO VALUE) = **YES**
386
387 ==== 2.4.1.3 vib_count ====
388
389
390 These 4 bytes (vib_count) represent the number of vibration events that has been recorded. See the image below.
391
392 [[image:image-20241012092938-6.png||height="102" width="770"]]
393
394 * 0x00000007=7
395
396 ==== 2.4.1.4 work_min ====
397
398
399 These 4 bytes (work_min) indicate the duration the current vibration sensor has been active since the latest trigger. See the image below.
400
401 [[image:image-20241012093112-7.png||height="68" width="775"]]
402
403 * 0x00000000=0
404
405 0 means that the current vibration sensor is not triggered.
406
407
408 === 2.4.2 VIBMOD~=2 ===
409
410
411 VIBMOD=2 represent the battery voltage, working mode, alarm status, TDC, vibration count, TempC_SHT, and Hum_SHT.
412
413
414 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:380px" %)
415 |=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
416 **Size(bytes)**
417 )))|=(% style="width: 40px;background-color:#4F81BD;color:white" %)(((
418 **2**
419 )))|=(% style="width: 70px;background-color:#4F81BD;color:white" %)(((
420 1
421 )))|=(% style="width: 70px;background-color:#4F81BD;color:white" %)(((
422 **4**
423 )))|=(% style="width: 70px;background-color:#4F81BD;color:white" %)(((
424 2
425 )))|=(% style="width: 70px;background-color:#4F81BD;color:white" %)(((
426 2
427 )))
428 |(% style="width:110px" %)(((
429 Value
430 )))|(% style="width:71px" %)(((
431 BAT
432 )))|(% style="width:99px" %)MOD
433 Alarm
434 TDC|(% style="width:132px" %)vib_count|(% style="width:54px" %)TempC_SHT|(% style="width:54px" %)Hum_SHT
435
436 [[image:image-20241012093705-8.png||height="106" width="879"]]
437
438
439 ==== 2.4.2.1 BAT (Battery Voltage) ====
440
441
442 These two bytes represent the battery voltage. See the image below.
443
444 [[image:image-20241012094035-9.png||height="71" width="946"]]
445
446
447 Calculate the battery voltage for LHT65N-VIB.
448
449 * 0x0BC6/1000=3.014V
450
451 ==== 2.4.2.2 VIBMOD, Alarm and TDC ====
452
453
454 This byte represent working mode, alarm status, and TCD. See the image below.
455
456 [[image:image-20241012094131-10.png||height="126" width="934"]]
457
458 bytes[2]=0x0A=0000 0101
459
460 Current working mode=(bytes[2]>>2)&0x07=2
461
462 Current alarm situation= (bytes[2] & 0x01)? "TRUE":"FALSE";=0=FALSE
463
464 Whether the current data occurs is TDC (the data will be uploaded by the alarm)= (bytes[2] & 0x02)? "YES":"NO";=00000010 (non -zero value)=YES
465
466
467 ==== 2.4.2.3 vib_count ====
468
469
470 These 4 bytes represent the number of vibration events that has been recorded. See the image below.
471
472 [[image:image-20241012094340-11.png||height="92" width="954"]]
473
474 * 0x00000000=0
475
476 ==== 2.4.2.4 TempC_SHT ====
477
478
479 These 2 bytes represent the temperature measured by the built-in temperature & humidity sensor, SHT31.
480
481 [[image:image-20241012094549-12.png||height="64" width="941"]]
482
483 * 0x0B22/100=28.5 C
484
485 ==== 2.4.2.5 Hum_SHT ====
486
487
488 These 2 bytes represent the humidity measured by the built-in temperature & humidity sensor, SHT31.
489
490 [[image:image-20241012094803-13.png||height="76" width="950"]]
491
492 * 0x0212/10=53
493
494 === 2.4.3 VIBMOD~=3 ===
495
496
497 VIBMOD=3 represents the battery voltage, working mode, alarm status, TDC, TempC_SHT, Hum_SHT, and work_min.
498
499 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:380px" %)
500 |=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
501 **Size(bytes)**
502 )))|=(% style="width: 40px;background-color:#4F81BD;color:white" %)(((
503 **2**
504 )))|=(% style="width: 70px;background-color:#4F81BD;color:white" %)(((
505 1
506 )))|=(% style="width: 70px;background-color:#4F81BD;color:white" %)(((
507 **2**
508 )))|=(% style="width: 70px;background-color:#4F81BD;color:white" %)(((
509 2
510 )))|=(% style="width: 70px;background-color:#4F81BD;color:white" %)(((
511 4
512 )))
513 |(% style="width:110px" %)(((
514 Value
515 )))|(% style="width:71px" %)(((
516 BAT
517 )))|(% style="width:99px" %)MOD
518 Alarm
519 TDC|(% style="width:132px" %)TempC_SHT|(% style="width:54px" %)Hum_SHT|(% style="width:54px" %)work_min
520
521 [[image:image-20241012094926-14.png||height="91" width="984"]]
522
523
524 ==== 2.4.3.1 BAT (Battery Voltage) ====
525
526
527 These 2 bytes represent the battery voltage.
528
529 [[image:image-20241012095155-15.png]]
530
531 * 0x0BC2/1000=3.01V
532
533 ==== 2.4.3.2 VIBMOD and Alarm and TDC ====
534
535
536 This byte represents the working mode, alarm status, and TDC.
537
538 [[image:image-20241012095322-16.png||height="101" width="1094"]]
539
540 bytes[2]=0x0A=0000 1110
541
542 Current working mode=(bytes[2]>>2)&0x07=3
543
544 Current alarm situation= (bytes[2] & 0x01)? "TRUE":"FALSE";=0=FALSE
545
546 Whether the current data occurs is TDC (the data will be uploaded by the alarm)= (bytes[2] & 0x02)? "YES":"NO";=00000010 (non -zero value)=YES
547
548
549 ==== 2.4.3.3 TempC_SHT ====
550
551
552 These 2 bytes represent the temperature measured by the built-in temperature & humidity sensor, SHT31.
553
554 [[image:image-20241012095445-17.png]]
555
556 * 0x0B21/100=28.49 C
557
558 ==== 2.4.3.4 Hum_SHT ====
559
560
561 These 2 bytes represent the humidity measured by the built-in temperature & humidity sensor, SHT31.
562
563 [[image:image-20241012095509-18.png]]
564
565 * 0x0213/10=53.1
566
567 ==== 2.4.3.5 work_min ====
568
569
570 These 4 bytes (work_min) indicate the duration the current vibration sensor has been active since the latest trigger. See the image below.
571
572
573 [[image:image-20241012095558-19.png||height="83" width="1029"]]
574
575 * 0x00000000=0
576
577 0 means that the current vibration sensor is not triggered.
578
579
580 === 2.4.4 VIBMOD~=4 (FPort~=7) ===
581
582
583 VIBMOD=4 represents the battery voltage and the accelerometer data.
584
585 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:310px" %)
586 |=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
587 **Size(bytes)**
588 )))|=(% style="width: 50px; background-color: rgb(79, 129, 189); color: white;" %)(((
589 **2**
590 )))|=(% style="width: 50px; background-color: rgb(79, 129, 189); color: white;" %)(((
591 2
592 )))|=(% style="width: 50px; background-color: rgb(79, 129, 189); color: white;" %)(((
593 **2**
594 )))|=(% style="width: 50px; background-color: rgb(79, 129, 189); color: white;" %)(((
595 2
596 )))|=(% style="width: 50px; background-color: rgb(79, 129, 189); color: white;" %)(((
597 2
598 )))
599 |(% style="width:110px" %)(((
600 Value
601 )))|(% style="width:40px" %)(((
602 BAT
603 )))|(% style="width:50px" %)X|(% style="width:44px" %)Y|(% style="width:43px" %)Z|(% style="width:133px" %)......
604
605 [[image:image-20241014171434-4.png]]
606
607
608 The first two bytes represent the battery voltage, for example 0A F3.
609
610 The reset of the bytes represents the accelerometer data on axis X, Y, and Z. Each axis represent in 2 bytes.
611
612 **X = 0xFC50. In binary, it is represented as 1111110001010000. The highest bit is 1, indicating a negative number in two's complement notation, and its value is -944.**
613
614 Y=0x0014=20
615
616 Z=0x00F6=246
617
618
619 == 2.5 Integrating with IoT platforms ==
620
621
622 The LHT65N-VIB sensor data can be integrated with other IoT platforms for better visualizing and analyzing the data. In this section, we will show you how to integrate sensor data from The Things Stack with some popular IoT platforms.
623
624
625 === 2.5.1 Integrate and show data on ThingsEye ===
626
627
628 The Things Stack application supports integration with ThingsEye.io. Once integrated, ThingsEye.io acts as an MQTT client for The Things Stack MQTT broker, allowing it to subscribe to upstream traffic and publish downlink traffic.
629
630
631 ==== 2.5.1.1 Configuring The Things Stack ====
632
633 We use The Things Stack Sandbox in this example:
634
635 * In **The Things Stack Sandbox**, go to the **Application **for the LHT65N-VIB you added.
636 * Select **MQTT** under **Integrations** in the left menu.
637 * In the **Connection information **section, under **Connection credentials**, The Things Stack displays an auto-generated **username**. You can use it or provide a new one.
638 * Click the **Generate new API key** button to generate a password. You can view it by clicking on the **visibility toggle/eye** icon. The API key works as the password.
639
640 {{info}}
641 The username and  password (API key) you created here are required in the next section.
642 {{/info}}
643
644
645 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/tts-mqtt-integration.png?rev=1.1||alt="tts-mqtt-integration.png"]]
646
647
648 ==== 2.5.1.2 Configuring ThingsEye.io ====
649
650 The ThingsEye.io IoT platform is not open for self-registration at the moment. If you are interested in testing the platform, please send your project information to admin@thingseye.io, and we will create an account for you.
651
652 * Login to your [[ThingsEye.io >>url:https://thingseye.io]]account.
653 * Under the **Integrations center**, click **Integrations**.
654 * Click the **Add integration** button (the button with the **+** symbol).
655
656 (% class="wikigeneratedid" %)
657 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye-io-step-1.png?rev=1.2||alt="thingseye-io-step-1.png"]]
658
659
660 On the **Add integration** window, configure the following:
661
662 **Basic settings:**
663
664 * Select **The Things Stack Community** from the **Integration type** list.
665 * Enter a suitable name for your integration in the **Name **text** **box or keep the default name.
666 * Ensure the following options are turned on.
667 ** Enable integration
668 ** Debug mode
669 ** Allow create devices or assets
670 * Click the **Next** button. you will be navigated to the **Uplink data converter** tab.
671
672 (% class="wikigeneratedid" %)
673 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye-io-step-2.png?rev=1.1||alt="thingseye-io-step-2.png"]]
674
675
676 **Uplink data converter:**
677
678 * Click the **Create new** button if it is not selected by default.
679 * Enter a suitable name for the uplink data converter in the **Name **text** **box or keep the default name.
680 * Click the **JavaScript** button.
681 * Paste the uplink decoder function into the text area (first, delete the default code). The demo uplink decoder function can be found [[here>>url:https://raw.githubusercontent.com/ThingsEye-io/te-platform/refs/heads/main/Data%20Converters/The_Things_Network_MQTT_Uplink_Converter.js]].
682 * Click the **Next** button. You will be navigated to the **Downlink data converter **tab.
683
684 (% class="wikigeneratedid" %)
685 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye-io-step-3.png?rev=1.1||alt="thingseye-io-step-3.png"]]
686
687
688 **Downlink data converter (this is an optional step):**
689
690 * Click the **Create new** button if it is not selected by default.
691 * Enter a suitable name for the downlink data converter in the **Name **text** **box or keep the default name.
692 * Click the **JavaScript** button.
693 * Paste the downlink decoder function into the text area (first, delete the default code). The demo downlink decoder function can be found [[here>>url:https://raw.githubusercontent.com/ThingsEye-io/te-platform/refs/heads/main/Data%20Converters/The_Things_Network_MQTT_Downlink_Converter.js]].
694 * Click the **Next** button. You will be navigated to the **Connection** tab.
695
696 (% class="wikigeneratedid" %)
697 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye-io-step-4.png?rev=1.1||alt="thingseye-io-step-4.png"]]
698
699
700 **Connection:**
701
702 * Choose **Region** from the **Host type**.
703 * Enter the **cluster** of your **The Things Stack** in the **Region** textbox. You can find the cluster in the url (e.g., https:~/~/**eu1**.cloud.thethings.network/...).
704 * Enter the **Username** and **Password** of the MQTT integration in the **Credentials** section. The **username **and **password **can be found on the MQTT integration page of your The Things Stack account (see **2.5.1.1 Configuring The Things Stack**).
705 * Click the **Check connection** button to test the connection. If the connection is successful, you will see the message saying **Connected**.
706
707 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/message-1.png?rev=1.1||alt="message-1.png"]]
708
709
710 * Click the **Add** button.
711
712 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye-io-step-5.png?rev=1.1||alt="thingseye-io-step-5.png"]]
713
714
715 Your integration has been added to the** Integrations** list and will be displayed on the **Integrations** page. Check whether the status is shown as **Active**. If not, review your configuration settings and correct any errors.
716
717 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye.io_integrationsCenter_integrations.png?rev=1.2||alt="thingseye.io_integrationsCenter_integrations.png"]]
718
719
720
721
722 ==== 2.5.1.3 Viewing integration details ====
723
724 Click on your integration from the list. The **Integration details** window will appear with the **Details **tab selected. The **Details **tab shows all the settings you have provided for this integration.
725
726
727 (% class="wikigeneratedid" %)
728 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/integration-details.png?rev=1.1||alt="integration-details.png"]]
729
730
731 If you want to edit the settings you have provided, click on the **Toggle edit mode** button. Once you have done click on the **Apply changes **button.
732
733 {{info}}
734 See also [[ThingsEye documentation>>url:https://wiki.thingseye.io/xwiki/bin/view/Main/]].
735 {{/info}}
736
737 * To view the **JSON payload** of a message, click on the **three dots (...)** in the Message column of the desired message.
738
739 [add JSON payload screen capture here]
740
741
742
743
744 ==== 2.5.1.4 Viewing events ====
745
746 The **Events **tab displays all the uplink messages from the LHT65N-VIB.
747
748 * Select **Debug **from the **Event type** dropdown.
749 * Select the** time frame** from the **time window**.
750
751 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye-events.png?rev=1.1||alt="thingseye-events.png"]]
752
753
754 ==== 2.5.1.5 Deleting an integration ====
755
756 If you want to delete an integration, click the **Delete integration** button on the Integrations page.
757
758 === 2.5.2 Integrate and show data on Datacake ===
759
760
761 (((
762 The **Datacake **IoT platform provides a user-friendly interface to display sensor data. With this integration, once you receive the sensor data in **The Things Stack** application, you can send it to **Datacake** for further processing.
763
764 * Ensure that LHT65N-VIB is properly connected to The Things Stack.
765
766 Now configure your The Things Stack application to forward data to Datacake by adding an integration with webhooks.
767
768 * In The Things Stack console, navigate to **Applications → <your application> → Integrations → Webhooks → + Add webhook.**
769
770 [[image:/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N-VIB_LoRaWAN_Vibration_Sensor_Manual/WebHome/eu1.cloud.thethings.network_console_applications_dragino-docs_integrations_webhooks%28Laptop%20with%20HiDPI%20screen%29.png?rev=1.1||alt="eu1.cloud.thethings.network_console_applications_dragino-docs_integrations_webhooks(Laptop with HiDPI screen).png"]][[image:/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N-VIB_LoRaWAN_Vibration_Sensor_Manual/WebHome/eu1.cloud.thethings.network_console_applications_dragino-docs_integrations_webhooks%28Laptop%20with%20HiDPI%20screen%29.png?rev=1.1||alt="eu1.cloud.thethings.network_console_applications_dragino-docs_integrations_webhooks(Laptop with HiDPI screen).png"]]**[[image:eu1.cloud.thethings.network_console_applications_dragino-docs_integrations_webhooks(Laptop with HiDPI screen).png]]**
771
772 * In the **Choose webhook template** page, select **Datacake**.
773 )))
774
775
776 [[image:eu1.cloud.thethings.network_console_applications_dragino-docs_integrations_webhooks_add_template(Laptop with HiDPI screen).png]]
777
778 (((
779
780
781 In Datacake, go to **Account Settings**, then navigate to the **API Token** tab. Click the **Copy** button to copy the **API token**.
782
783 [[image:datacake-1.png]]
784
785
786 On the **Setup webhook for Datacake** page, enter the **Webhook ID** and paste the **Datacake API Token**. Then select the **Create Datacake webhook** button.
787
788 [[image:eu1.cloud.thethings.network_console_applications_dragino-docs_integrations_webhooks_add_template(Laptop with HiDPI screen) (2).png]]
789
790
791 )))
792
793
794 In the Datacake console ([[https:~~/~~/datacake.co/>>url:https://datacake.co/]]) , add LHT65N-VIB as follows.
795
796 ~1. On the left navigation, select **Devices**.
797
798 2. Click **+ Add Device** button.
799
800 [[image:datacake-7.png]]
801
802
803
804 ~1. On the **Add Device** window, select the connectivity type of your device, in this case select **LoRaWAN**.
805
806 2. Click **Next** button.
807
808 [[image:datacake-2.png]]
809
810
811 On the **Add LoRaWAN Device** window, under **Product**,
812
813 ~1. Select **New Product from template**.
814
815 2. Search for **lht65**
816
817 3. Select, **Dragino LHT65, LHT65N+ Temp & Hum **from the filtered list.
818
819 Click **Next** button.
820
821 [[image:datacake-3.png]]
822
823
824 On the **Add LoRaWAN Device** window, under **Network Server,**
825
826 ~1. Select **The Things Stack V3**.
827
828 Click **Next** button.
829
830 [[image:datacake-5.png]]
831
832
833 On the **Add LoRaWAN Device** window, under **Devices**,
834
835 ~1. Enter your LHT65N-VIB's **DevEUI** in the **DevEUI** field.
836
837 2. Assign a **name** for your device in the **Name** field.
838
839 Click **Next** button.
840
841 [[image:datacake-6.png]]
842
843
844 [will be continued... add more screenshots here]
845
846 [[image:image-20220523000825-10.png||_mstalt="450619"]]
847
848
849 == 2.8 LED Indicator ==
850
851
852 The LHT65 has a **tri-color LED** for easily indicating different stages.
853
854 When the user presses the ACT button, the LED will function according to the LED status linked to the ACT button.
855
856 In a normal working state:
857
858 * For each uplink, the **BLUE** or **RED** LED will blink once:
859 ** **BLUE LED**: Indicates an external sensor is connected.
860 ** **RED LED**: Indicates no external sensor is connected.
861 * For each successful downlink, the **PURPLE** **LED** will blink once.
862
863 == 2.9 Installation ==
864
865
866 The LHT65N should be installed vertically on objects, with the sensor parallel to the object's surface.
867
868 [[image:image-20220516231650-1.png||_mstalt="428597" height="436" width="428"]]
869
870
871 = 3. Configure the LHT65N-VIB via AT commands or LoRaWAN downlinks =
872
873
874 (((
875 You can configure the LHT65N-VIB via AT commands or LoRaWAN Downlinks.
876 )))
877
878 * (((
879 Configure via AT Commands: See the [[FAQ>>||anchor="H6.FAQ"]] for instructions on **How to connect to the LHT65N-VIB's UART interface**
880 )))
881
882 * (((
883 LoRaWAN downlink instructions for different platforms: Refer to the [[IoT LoRaWAN Server>>doc:Main.WebHome]]
884 )))
885
886 (((
887
888
889 There are two kinds of commands to configure the LHT65N-VIB:
890 )))
891
892 (((
893 (% style="color:#4f81bd" %)**1. General Commands**.
894 )))
895
896 (((
897 These commands are the same for all Dragino devices that support the DLWS-005 LoRaWAN Stack (Note~*~*). You can find these commands on the wiki: [[End Device Downlink Command>>doc:Main.End Device AT Commands and Downlink Command.WebHome]].
898
899 These commands can be used to configure:
900 )))
901
902 (((
903 * General system settings, such as uplink interval.
904 )))
905
906 (((
907 * LoRaWAN protocol and radio-related settings.
908 )))
909
910 (((
911
912
913 (% style="color:#4f81bd" %)**2. Commands design specially for the LHT65N**(%%)-VIB
914 )))
915
916 (((
917 These commands are only valid for the LHT65N-VIB and are listed below:
918 )))
919
920
921 == 3.1 Set Transmit Interval Time ==
922
923
924 **Feature**: Change the LHT65N-VIB's uplink transmission Interval.
925
926 (% style="color:#4f81bd" %)**AT Command: AT+TDC**
927
928 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:501px" %)
929 |(% style="background-color:#4f81bd; color:white; width:155px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:166px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:180px" %)**Response**
930 |(% style="width:155px" %)AT+TDC=?|(% style="width:162px" %)Show the current uplink transmission Interval|(% style="width:177px" %)(((
931 30000 OK
932
933 The interval is 30000ms = 30s
934 )))
935 |(% style="width:155px" %)AT+TDC=60000|(% style="width:162px" %)Set the transmission interval|(% style="width:177px" %)(((
936 OK
937
938 Set transmission interval to 60000ms = 60 seconds
939 )))
940
941 (% style="color:#4f81bd" %)**Downlink Command: 0x01**
942
943 **Format**: Prefix (0x01) followed by a 3 byte time value.
944
945 If the downlink payload is 0100003C, it means set the end node's transmit interval is set to 0x00003C=60(s), where the type code is 01.
946
947 * **Example 1**: Downlink Payload: 0100001E  ~/~/ Set Transmit Interval (TDC) to = 30 seconds
948
949 * **Example 2**: Downlink Payload: 0100003C  ~/~/ Set Transmit Interval (TDC) to = 60 seconds
950
951 == 3.2 Set Vibration Sensor Mode ==
952
953
954 **Feature**: Sets the Vibration Sensor Mode.
955
956
957 (% style="color:#4f81bd" %)**AT Command: AT+VIBMOD**
958
959 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
960 |(% style="background-color:#4f81bd; color:white; width:175px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:247px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:88px" %)**Response**
961 |(% style="width:155px" %)AT+VIBMOD=MOD, AlarmTime, StopDurationTime|(% style="width:151px" %)(((
962 **MOD**: 1, 2, 3
963
964 **AlarmTime**: Sets the duration of continuous operation required to trigger the alarm (unit: seconds). (//Set AlarmTimeout to 0 to disable alarm//)
965
966 **StopDurationTime**: Specifies the interval time after which the event is counted as a trigger.
967 )))|(% style="width:158px" %)OK
968 |(% style="width:155px" %)AT+VIBMOD=4,CollectionInterval,Groups|(% style="width:151px" %)(((
969 **4**: MOD=4
970
971 **CollectionInterval**: Collection Interval (unit: seconds)
972
973 **Groups**: Number of collection groups
974 )))|(% style="width:158px" %)OK
975
976 **Example 1: AT+VIBMOD=1,60,10**
977
978 **MOD1** will display **vib_count** and **work_min** without temperature and humidity. If vibration stops for more than 60 seconds, an alarm message is generated.
979
980 If vibration stops for more than 10 seconds, **vib_count** increases by one, and **work_min** resets to zero.
981
982
983 (% id="cke_bm_1480706S" style="display:none" %)** **(%%)**Example 2: AT+VIBMOD=4,1,10**
984
985 MOD4 sets the collection interval to 10 seconds and collects 1 sets of data in total.
986
987 [[image:image-20241014171308-3.png||height="65" width="709"]]
988
989
990 (% style="color:#4f81bd" %)**Downlink Command: 0x0A**
991
992 **Format**: Prefix (0x0A) followed by a 5 bytes.
993
994 **Example 1:**
995
996 * AT+VIBMOD=1,60,10 = 0x0A01003C000A
997
998 **Example 2:**
999
1000 * AT+VIBMOD=4,1,10 = 0x0A0400010A
1001
1002 == 3.3 Vibration sensitivity setting ==
1003
1004
1005 **Feature**: Allows adjustment of sensitivity settings for different usage scenarios.
1006
1007
1008 (% style="color:#4f81bd" %)**AT Command:**
1009
1010 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
1011 |(% style="background-color:#4f81bd; color:white; width:230px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:209px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:71px" %)**Response**
1012 |(% style="width:260px" %)AT+VIBSET=Acceleration,Frequency,Threshold, Duration|(% style="width:273px" %)(((
1013 **Acceleration**:
1014
1015 * 0: ±2g
1016 * 1: ±4g
1017 * 2: ±8g
1018 * 3: ±16g
1019
1020 **Frequency**:
1021
1022 * 0:25Hz
1023 * 1:50Hz
1024 * 2:100Hz
1025 * 3:200Hz
1026 * 4:400Hz
1027
1028 **Threshold**: interrupt threshold
1029
1030
1031 **Duration**: Interrupt detection duration (unit ms)
1032 )))|(% style="width:71px" %)OK
1033
1034 **Example: AT+VIBSET=0,4,10,12**
1035
1036 The acceleration is set to ±2g, and the frequency is 400 Hz. The threshold is set to 10 × 16 mg, meaning a change between 158 and 162 mg can be detected.
1037
1038 If you want to detect an event lasting at least 30 milliseconds, set the register to 30/2.5 = 12 counts. When the time difference between consecutive readings exceeds 12 duration LSBs, an interrupt will be triggered. See the figure below for specific values.
1039
1040 [[image:image-20241014154353-1.png||height="307" width="727"]]
1041
1042 [[image:image-20241014154413-2.png||height="509" width="715"]]
1043
1044
1045 (% style="color:#4f81bd" %)**Downlink Command:**
1046
1047 The format of the downlink command is as follows:
1048
1049 * Prefix: 0x09
1050 * Acceleration: 2 bytes in hex
1051 * Frequency: 2 bytes in hex
1052 * Threshold: 2 bytes in hex
1053 * Duration: 2 bytes in hex
1054
1055 The equivalent downlink command for the AT+VIBSET=0,4,10,12 is shown below:
1056
1057 **0x0900040A0C**
1058
1059
1060 == 3.4 Set Password ==
1061
1062
1063 **Feature**: Set device password, up to 9 digits
1064
1065 (% style="color:#4f81bd" %)**AT Command: AT+PWORD**
1066
1067 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:372px" %)
1068 |(% style="background-color:#4f81bd; color:white; width:155px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:128px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:89px" %)**Response**
1069 |(% style="width:155px" %)AT+PWORD=?|(% style="width:124px" %)Show password|(% style="width:86px" %)(((
1070 123456
1071
1072 OK
1073 )))
1074 |(% style="width:155px" %)AT+PWORD=999999|(% style="width:124px" %)Set password|(% style="width:86px" %)OK
1075
1076 (% style="color:#4f81bd" %)**Downlink Command:**
1077
1078 There is no downlink command available for this feature.
1079
1080
1081 == 3.5 Quit AT Command ==
1082
1083
1084 **Feature**: Quit AT Command mode, so you need to input the password again before using AT Commands.
1085
1086 (% style="color:#4f81bd" %)**AT Command: AT+DISAT**
1087
1088 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:433px" %)
1089 |(% style="background-color:#4f81bd; color:white; width:155px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:191px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:87px" %)**Response**
1090 |(% style="width:155px" %)AT+DISAT|(% style="width:191px" %)Quit AT Command mode|(% style="width:86px" %)OK
1091
1092 (% style="color:#4f81bd" %)**Downlink Command:**
1093
1094 There is no downlink command available for this feature.
1095
1096
1097 == 3.6 Set to sleep mode ==
1098
1099
1100 **Feature**: Set device to sleep mode
1101
1102 * **AT+SLEEP=0**  : Normal working mode. The device will sleep and use lower power when there is no LoRa message.
1103 * **AT+SLEEP=1** :  Device is in deep sleep mode. No LoRa activation occurs, and it is used for storage or shipping.
1104
1105 (% style="color:#4f81bd" %)**AT Command: AT+SLEEP**
1106
1107 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:513px" %)
1108 |(% style="background-color:#4f81bd; color:white; width:155px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:140px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:218px" %)**Response**
1109 |(% style="width:155px" %)AT+SLEEP|(% style="width:139px" %)Set to sleep mode|(% style="width:213px" %)(((
1110 Clear all stored sensor data…
1111
1112 OK
1113 )))
1114
1115 (% style="color:#4f81bd" %)**Downlink Command:**
1116
1117 * There is no downlink command available for this feature.
1118
1119 == 3.7 Set system time ==
1120
1121 **Feature**: Set the system time in UNIX format. [[See here for format detail.>>||anchor="H2.6.2UnixTimeStamp"]]
1122
1123 (% style="color:#4f81bd" %)**AT Command:**
1124
1125 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:506px" %)
1126 |(% style="background-color:#4f81bd; color:white; width:188px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:318px" %)**Function**
1127 |(% style="width:154px" %)AT+TIMESTAMP=1611104352|(% style="width:285px" %)(((
1128 OK
1129
1130 Set System time to 2021-01-20 00:59:12
1131 )))
1132
1133 (% style="color:#4f81bd" %)**Downlink Command:**
1134
1135 Prefix : 0x30
1136
1137 Time : 5 bytes in hexadecimal
1138
1139
1140 **Example**:
1141
1142 0x306007806000  ~/~/  Set timestamp to 0x(6007806000),Same as AT+TIMESTAMP=1611104352
1143
1144
1145 == 3.8 Set Time Sync Mode ==
1146
1147 (((
1148 **Feature**: Enable/Disable system time synchronization via the LoRaWAN MAC Command (DeviceTimeReq). The LoRaWAN server must support the v1.0.3 protocol to respond to this command.
1149
1150
1151 (% style="color:#4f81bd" %)**AT Command**
1152
1153 (% border="2" style="width:500px" %)
1154 |(% style="width:157px" %)**Command**|(% style="width:341px" %)AT+SYNCMOD
1155 |(% style="width:157px" %)**Parameters**|(% style="width:341px" %)(((
1156 **time_sync_mode** : Enable Sync system time via LoRaWAN MAC Command (DeviceTimeReq) - 1 byte in hexadecimal
1157
1158 **1** : enable (default)
1159
1160 **0** : disable
1161 )))
1162 |(% style="width:157px" %)**Set**|(% style="width:341px" %)AT+SYNCMOD=<time_sync_mode>
1163 |(% style="width:157px" %)**Example**|(% style="width:341px" %)(((
1164 AT+SYNCMOD=0
1165
1166 Disable the time sync mode
1167 )))
1168 |(% style="width:157px" %)**Note**|(% style="width:341px" %)If you want to set a different time than the LoRaWAN server, you need to set this to 0.
1169
1170
1171 )))
1172
1173 (% style="color:#4f81bd" %)**Downlink Command**
1174
1175 (% border="2" style="width:500px" %)
1176 |(% style="width:162px" %)**Prefix**|(% style="width:336px" %)0x28
1177 |(% style="width:162px" %)**Parameters**|(% style="width:336px" %)(((
1178 **time_sync_mode** : Enable Sync system time via LoRaWAN MAC Command (DeviceTimeReq) - 1 byte in hexadecimal
1179
1180 **1** : enable (default)
1181
1182 **0** : disable
1183 )))
1184 |(% style="width:162px" %)**Command**|(% style="width:336px" %)(((
1185 * 28** 01**  ~/~/ Enable the time sync mode
1186 * 28 **00**  ~/~/ Disable the time sync mode
1187 )))
1188
1189
1190 == 3.9 Set Time Sync Interval ==
1191
1192
1193 **Feature**: Define system time synchronization interval. The** **default value is 10 days.
1194
1195 (% style="color:#4f81bd" %)**AT Command**
1196
1197 (% border="2" style="width:500px" %)
1198 |(% style="width:158px" %)**Command**|(% style="width:340px" %)AT+SYNCTDC
1199 |(% style="width:158px" %)**Parameters**|(% style="width:340px" %)**sync_interval** : synchronization interval
1200 |(% style="width:158px" %)**Set**|(% style="width:340px" %)AT+SYNCTDC=<sync_interval>
1201 |(% style="width:158px" %)Response|(% style="width:340px" %)
1202 |(% style="width:158px" %)**Example**|(% style="width:340px" %)(((
1203 AT+SYNCTDC=10
1204
1205 Set synchronization interval to 10
1206 )))
1207
1208 (% style="color:#4f81bd" %)**Downlink Command**
1209
1210 (% border="2" style="width:500px" %)
1211 |(% style="width:155px" %)**Prefix**|(% style="width:343px" %)0x29
1212 |(% style="width:155px" %)**Parameters**|(% style="width:343px" %)**sync_interval** : synchronization interval - 1 byte in hexadecimal
1213 |(% style="width:155px" %)**Example**|(% style="width:343px" %)(((
1214 * 29**0A**  ~/~/ Set synchronization interval to 10
1215 )))
1216
1217 == 3.10 Get data ==
1218
1219
1220 **Feature**: Get the current sensor data.
1221
1222 (% border="2" style="width:500px" %)
1223 |(% style="width:157px" %)**Command**|(% style="width:341px" %)GETSENSORVALUE
1224 |(% style="width:157px" %)**Parameters**|(% style="width:341px" %)(((
1225 **mode** : defines data retrieve and upload behavior
1226
1227 **0** : The serial port retrieves the current sensor reading.
1228
1229 **1** : The serial port retrieves the current sensor reading and uploads it.
1230 )))
1231 |(% style="width:157px" %)**Set**|(% style="width:341px" %)AT+GETSENSORVALUE=<mode>
1232 |(% style="width:157px" %)**Response**|(% style="width:341px" %)
1233 |(% style="width:157px" %)**Example**|(% style="width:341px" %)(((
1234 * **AT+GETSENSORVALUE=0**      ~/~/ The serial port retrieves the current sensor reading.
1235 * **AT+GETSENSORVALUE=1**      ~/~/ The serial port retrieves the current sensor reading and uploads it.
1236 )))
1237
1238 (% style="color:#4f81bd" %)**Downlink Command:**
1239
1240 There is no downlink command for this feature.
1241
1242
1243 == 3.11 Print data entries base on page ==
1244
1245
1246 **Feature**: Print sector data from start page to stop page (max is 416 pages).
1247
1248 (% style="color:#4f81bd" %)**AT Command: AT+PDTA**
1249
1250 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
1251 |(% style="background-color:#4f81bd; color:white; width:158px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:352px" %)**Function**
1252 |(% style="width:156px" %)(((
1253 AT+PDTA=1,3
1254 Print page 1 to 3
1255 )))|(% style="width:311px" %)(((
1256 Stop Tx events when read sensor data
1257
1258 8031000 2024/10/12 08:26:16 1 2807 tdc:yes alarm:false event_count:0 work_min:0
1259
1260 8031010 2024/10/12 08:26:40 1 2804 tdc:no alarm:false event_count:0 work_min:0
1261
1262 8031020 1970/1/1 00:00:10 1 2806 tdc:yes alarm:false event_count:0 work_min:0
1263
1264 8031030 2024/10/12 08:28:18 1 2805 tdc:yes alarm:false event_count:0 work_min:0
1265
1266 8031040 2024/10/12 08:29:18 1 2804 tdc:yes alarm:false event_count:0 work_min:0
1267
1268 8031050 2024/10/12 08:30:18 1 2806 tdc:yes alarm:false event_count:1 work_min:0
1269
1270 8031060 2024/10/12 08:30:27 1 2806 tdc:no alarm:true event_count:2 work_min:0
1271
1272 8031070 2024/10/12 08:31:18 1 2806 tdc:yes alarm:false event_count:3 work_min:1
1273
1274 [Rx][16:33:25.888] 8031080 2024/10/12 08:32:18 1 2806 tdc:yes alarm:false event_count:3 work_min:1
1275
1276 8031090 2024/10/12 08:33:18 1 2807 tdc:yes alarm:false event_count:3 work_min:1
1277
1278 80310A0
1279
1280 80310B0
1281
1282 80310C0
1283
1284 80310D0
1285
1286 80310E0
1287
1288 80310F0
1289
1290 8031100
1291
1292 8031110
1293
1294 8031120
1295
1296 8031130
1297
1298 8031140
1299
1300 8031150
1301
1302 8031160
1303
1304 8031170
1305
1306 Start Tx events
1307
1308 OK
1309 )))
1310
1311 (% style="color:#4f81bd" %)**Downlink Command:**
1312
1313 There is no downlink command for this feature.
1314
1315
1316 == 3.12 Print last few data entries ==
1317
1318
1319 **Feature**: Print the last few data entries
1320
1321 (% style="color:#4f81bd" %)**AT Command: AT+PLDTA**
1322
1323 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
1324 |(% style="background-color:#4f81bd; color:white; width:158px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:352px" %)**Function**
1325 |(% style="width:156px" %)(((
1326 AT+PLDTA=5
1327 Print last 5 entries
1328 )))|(% style="width:311px" %)(((
1329 Stop Tx events when read sensor data
1330
1331 0001 2024/10/12 08:33:18 1 2807 tdc:yes alarm:false event_count:3 work_min:1
1332
1333 0002 2024/10/12 08:34:50 1 2808 tdc:yes alarm:false event_count:3 work_min:1
1334
1335 0003 2024/10/12 08:35:50 1 2808 tdc:yes alarm:false event_count:3 work_min:1
1336
1337 0004 2024/10/12 08:36:50 1 2809 tdc:yes alarm:false event_count:3 work_min:1
1338
1339 0005 2024/10/12 08:37:50 1 2810 tdc:yes alarm:false event_count:3 work_min:1
1340 Start Tx and RTP events
1341 OK
1342 )))
1343
1344 (% style="color:#4f81bd" %)**Downlink Command:**
1345
1346 There is no downlink command for this feature.
1347
1348
1349 == 3.13 Clear Flash Record ==
1350
1351
1352 **Feature**: Clear the flash storage used by the data log feature.
1353
1354 (% style="color:#4f81bd" %)**AT Command: AT+CLRDTA**
1355
1356 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:503px" %)
1357 |(% style="background-color:#4f81bd; color:white; width:157px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:137px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:209px" %)**Response**
1358 |(% style="width:155px" %)AT+CLRDTA |(% style="width:134px" %)Clear date record|(% style="width:209px" %)(((
1359 Clear all stored sensor data…
1360
1361 OK
1362 )))
1363
1364 (% style="color:#4f81bd" %)**Downlink Command:**
1365
1366 Prefix: 0xA3
1367
1368
1369 **Example**:
1370
1371 0xA301  ~/~/  Same as AT+CLRDTA
1372
1373
1374 == 3.14 Auto Send None-ACK messages ==
1375
1376
1377 **Feature**: LHT65N-VIB will wait for an ACK for each uplink. If LHT65N-VIB doesn't receive an ACK from the network server, it will assume the message didn't reach the server and store it. LHT65N-VIB continues sending messages periodically as usual. Once LHT65N-VIB receives an ACK from the network server, it will assume the network is functioning properly and start sending the messages that haven't arrived.
1378
1379 (% style="color:#4f81bd" %)**AT Command: AT+PNACKMD**
1380
1381 The default factory setting is 0
1382
1383 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:367px" %)
1384 |=(% style="width: 158px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 121px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 88px;background-color:#4F81BD;color:white" %)**Response**
1385 |(% style="width:158px" %)AT+PNACKMD=1|(% style="width:118px" %)Poll None-ACK message|(% style="width:87px" %)OK
1386
1387 (% style="color:#4f81bd" %)**Downlink Command: 0x34**
1388
1389 Prefix: 0x34
1390
1391
1392 **Example**:
1393
1394 0x3401  ~/~/  Same as AT+PNACKMD=1
1395
1396
1397 = 4. Batteries =
1398
1399 == 4.1 Battery Type ==
1400
1401
1402 (((
1403 **The LHT65N-VIB is equipped with a 2400mAh Li-MnO2 (CR17505) battery.** The battery is non-rechargeable with a low discharge rate, designed for up to 8–10 years of use. This type of battery is commonly used in IoT devices for long-term operation, such as in water meters.
1404
1405 **The discharge curve is nonlinear, so the battery level cannot be simply represented as a percentage.** Below is the battery performance:
1406 )))
1407
1408 (((
1409 [[image:image-20220515075034-1.png||_mstalt="428961" height="208" width="644"]]
1410 )))
1411
1412 The minimum working voltage for the LHT65N-VIB is approximately 2.5V. When the battery voltage drops below 2.6V, it's time to replace the battery.
1413
1414
1415 == 4.2 Replacing Batteries ==
1416
1417
1418 The LHT65N-VIB has two screws on the back. Unscrew them to remove the battery cover and replace the battery inside. The sensor uses a standard CR17450 battery, and any brand should be suitable.
1419
1420 [[image:image-20220515075440-2.png||_mstalt="429546" height="338" width="272"]][[image:image-20220515075625-3.png||_mstalt="431574" height="193" width="257"]]
1421
1422
1423 == 4.3 Battery Life Analysis ==
1424
1425
1426 (((
1427 Dragino battery-powered products all operate in Low Power mode. You can refer to the guidelines from this link to calculate the estimated battery life: [[https:~~/~~/www.dropbox.com/scl/fo/kpnidyj98435yc2kzcuol/AGMEYy8T-ToxrjBxVKiBJMw?rlkey=clgoex1idnfka8845d6e9ajue&st=m513k45l&dl=0>>https://www.dropbox.com/scl/fo/kpnidyj98435yc2kzcuol/AGMEYy8T-ToxrjBxVKiBJMw?rlkey=clgoex1idnfka8845d6e9ajue&st=m513k45l&dl=0]]
1428 )))
1429
1430 (((
1431 A detailed test report for the LHT65N-VIB on different frequencies can be found here: [[https:~~/~~/www.dropbox.com/scl/fo/wnqaiyoq21kyzrmre6kzn/ABAgXYDr03OGSrM2ODFjUJA?rlkey=jed5yinvpdd0fiqww7x7cw201&st=rdtlz5ik&dl=0>>https://www.dropbox.com/scl/fo/wnqaiyoq21kyzrmre6kzn/ABAgXYDr03OGSrM2ODFjUJA?rlkey=jed5yinvpdd0fiqww7x7cw201&st=rdtlz5ik&dl=0]]
1432 )))
1433
1434
1435 = 5. FAQ =
1436
1437 == 5.1 How to connect to LHT65N-VIB via UART interface? ==
1438
1439
1440 The LHT65N-VIB has the UART interface in its Type-C. The UART Interface can be used for
1441
1442 * Send AT Commands, and get output from LHT65N-VIB
1443 * Upgrade firmwre of LHT65N-VIB.
1444
1445 The hardware connection is: **PC <~-~-> USB to TTL Adapter <~-~-> Jump wires <~-~-> Type-C Adapter <~-~-> LHT65N-VIB**
1446
1447
1448 === 5.1.1 Options for USB to TTL adapter ===
1449
1450
1451 * CP2101 USB TTL Adapter
1452 * CH340 USB TTL Adapter
1453 * FT232 USB TTL Adapter
1454
1455 === 5.1.2 Options for Type-C adapter ===
1456
1457
1458 [[image:image-20240122103221-3.png||_mstalt="425594" height="694" width="1039"]]
1459
1460
1461 **Connection:**
1462
1463 * (% style="background-color:yellow" %)**USB to TTL GND <~-~-> LHT65N GND**
1464 * (% style="background-color:yellow" %)**USB to TTL RXD <~-~-> LHT65N TXD**
1465 * (% style="background-color:yellow" %)**USB to TTL TXD <~-~-> LHT65N RXD**
1466
1467 (((
1468
1469
1470 === 5.1.3 Connection Example ===
1471
1472 [[image:1655802313617-381.png||_mstalt="293917"]]
1473
1474
1475 [[image:image-20240122092100-1.jpeg||_mstalt="467389" height="466" width="643"]]
1476
1477
1478 == 5.2 How to use AT commands? ==
1479
1480
1481 First, connect the PC and LHT65N-VIB via USB TTL adapter as described in **FAQ 6.1.**
1482
1483 On the PC, you need to set serial tool (such as **[[PuTTY>>https://www.putty.org]] **or** [[SecureCRT>>https://www.vandyke.com/products/securecrt/]]**) baud rate to **9600** to access the serial console for LHT65N-VIB. The AT commands are disabled by default, and the user needs to enter the password (default: 123456) to activate them. The timeout for inputting AT commands is 5 minutes; after 5 minutes, the user will need to input the password again. The user can use the AT+DISAT command to disable AT commands before the timeout.
1484
1485 Input the password and ATZ to activate the LHT65N-VIB, as shown below:
1486 )))
1487
1488 [[image:image-20220530095701-4.png||_mstalt="430014"]]
1489
1490
1491 === 5.2.1 AT commands ===
1492
1493
1494 The AT command list is as below:
1495
1496 **AT+<CMD>?** : Help on <CMD>
1497
1498 **AT+<CMD>** : Run <CMD>
1499
1500 **AT+<CMD>=<value>** : Set the value
1501
1502 **AT+<CMD>=?** : Get the value
1503
1504 **AT+DEBUG :** Set more info output
1505
1506 **ATZ :** Triggers a reset of the MCU
1507
1508 **AT+FDR :** Reset Parameters to Factory Default, Keys Reserve
1509
1510 **AT+DEUI** : Get or Set the Device EUI
1511
1512 **AT+DADDR** : Get or Set the Device Address
1513
1514 **AT+APPKEY** : Get or Set the Application Key
1515
1516 **AT+NWKSKEY** : Get or Set the Network Session Key
1517
1518 **AT+APPSKEY** : Get or Set the Application Session Key
1519
1520 **AT+APPEUI** : Get or Set the Application EUI
1521
1522 **AT+ADR** : Get or Set the Adaptive Data Rate setting. (0: off, 1: on)
1523
1524 **AT+TXP** : Get or Set the Transmit Power (0-5, MAX:0, MIN:5, according to LoRaWAN Spec)
1525
1526 **AT+DR **: Get or Set the Data Rate. (0-7 corresponding to DR_X)
1527
1528 **AT+DCS** : Get or Set the ETSI Duty Cycle setting - 0=disable, 1=enable - Only for testing
1529
1530 **AT+PNM** : Get or Set the public network mode. (0: off, 1: on)
1531
1532 **AT+RX2FQ** : Get or Set the Rx2 window frequency
1533
1534 **AT+RX2DR** : Get or Set the Rx2 window data rate (0-7 corresponding to DR_X)
1535
1536 **AT+RX1DL** : Get or Set the delay between the end of the Tx and the Rx Window 1 in ms
1537
1538 **AT+RX2DL** : Get or Set the delay between the end of the Tx and the Rx Window 2 in ms
1539
1540 **AT+JN1DL** : Get or Set the Join Accept Delay between the end of the Tx and the Join Rx Window 1 in ms
1541
1542 **AT+JN2DL** : Get or Set the Join Accept Delay between the end of the Tx and the Join Rx Window 2 in ms
1543
1544 **AT+NJM** : Get or Set the Network Join Mode. (0: ABP, 1: OTAA)
1545
1546 **AT+NWKID** : Get or Set the Network ID
1547
1548 **AT+FCU** : Get or Set the Frame Counter Uplink
1549
1550 **AT+FCD** : Get or Set the Frame Counter Downlink
1551
1552 **AT+CLASS **: Get or Set the Device Class
1553
1554 **AT+JOIN **: Join network
1555
1556 **AT+NJS** : Get the join status
1557
1558 **AT+SENDB** : Send hexadecimal data along with the application port
1559
1560 **AT+SEND** : Send text data along with the application port
1561
1562 **AT+RECVB** : Print last received data in binary format (with hexadecimal values)
1563
1564 **AT+RECV** : Print last received data in raw format
1565
1566 **AT+VER** : Get current image version and Frequency Band
1567
1568 **AT+CFM** : Get or Set the confirmation mode (0-1)
1569
1570 **AT+SNR** : Get the SNR of the last received packet
1571
1572 **AT+RSSI** : Get the RSSI of the last received packet
1573
1574 **AT+TDC** : Get or set the application data transmission interval in ms
1575
1576 **AT+PORT** : Get or set the application port
1577
1578 **AT+DISAT** : Disable AT commands
1579
1580 **AT+PWORD** : Set password, max 9 digits
1581
1582 **AT+CHS** : Get or Set Frequency (Unit: Hz) for Single Channel Mode
1583
1584 **AT+CHE** : Get or Set eight channels mode,Only for US915,AU915,CN470
1585
1586 **AT+PDTA** : Print the sector data from start page to stop page
1587
1588 **AT+PLDTA **: Print the last few sets of data
1589
1590 **AT+CLRDTA **: Clear the storage, record position back to 1st
1591
1592 **AT+SLEEP** : Set sleep mode
1593
1594 **AT+BAT **: Get the current battery voltage in mV
1595
1596 **AT+CFG** : Print all configurations
1597
1598 **AT+WMOD** : Get or Set Work Mode
1599
1600 **AT+ARTEMP** : Get or set the internal Temperature sensor alarm range
1601
1602 **AT+CITEMP** : Get or set the internal Temperature sensor collection interval in min
1603
1604 **AT+SETCNT** : Set the count at present
1605
1606 **AT+RJTDC** : Get or set the ReJoin data transmission interval in min
1607
1608 **AT+RPL** : Get or set response level
1609
1610 **AT+TIMESTAMP** : Get or Set UNIX timestamp in second
1611
1612 **AT+LEAPSEC** : Get or Set Leap Second
1613
1614 **AT+SYNCMOD** : Get or Set time synchronization method
1615
1616 **AT+SYNCTDC** : Get or set time synchronization interval in day
1617
1618 **AT+PID** : Get or set the PID
1619
1620
1621 == 5.3 How to use Downlink commands? ==
1622
1623 The following sections shows how to send downlinks to LHT65N-VIB from various LoRaWAN network servers.
1624
1625 === (% style="color:blue" %)**5.3.1 The Things Stack**(%%) ===
1626
1627 The following image shows how to send downlink commands (the payloads) from The Things Stack.
1628
1629
1630 [[image:eu1.cloud.thethings.network_console_applications_dragino-docs_devices_lt-22222-l_messaging_downlink(Laptop with HiDPI screen).png]]
1631
1632
1633
1634 === (% style="color:blue" %)**5.3.2 Helium**(%%) ===
1635
1636 The following image shows how to send downlink commands (the payloads) from Helium.
1637
1638 [[image:image-20220615092551-3.png||_mstalt="430794" height="423" width="835"]]
1639
1640
1641 === (% style="color:blue" %)**5.3.3 ChirpStack**(%%) ===
1642
1643
1644 The following image shows how to send downlink commands (the payloads) from ChripStack. (% style="color:blue" %)**The downlink window will not be displayed until the network is accessed.**
1645
1646 [[image:image-20220615094850-6.png||_mstalt="433082"]]
1647
1648
1649 [[image:image-20220615094904-7.png||_mstalt="433485" height="281" width="911"]]
1650
1651
1652 The following image shows how to send downlink commands (the payloads) from AWS-IOT.
1653
1654
1655 === (% style="color:blue" %)**5.3.4 AWS-IoT**(%%) ===
1656
1657 [[image:image-20220615092939-4.png||_mstalt="434460" height="448" width="894"]]
1658
1659
1660 == 5.4 How to change the uplink interval? ==
1661
1662
1663 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/||_mstmutation="1" style="background-color: rgb(255, 255, 255);"]]
1664
1665
1666 == 5.5 How to upgrade the firmware? ==
1667
1668
1669 You can change firmware LHT65N-VIB to:
1670
1671 * Change the frequency band/region.
1672 * Add new features.
1673 * Fix bugs.
1674
1675 The firmware and changelog can be downloaded from : **[[Firmware download link>>https://www.dropbox.com/scl/fo/tum0pwu0jltemrfs1mg9g/AF6mK9z-hdz31LhOrOYhLHI?rlkey=32mewxux5ribeefjigkibvbrq&st=s6o6b77w&dl=0]]**
1676
1677 **Methods to Update Firmware:**
1678
1679 * Recommanded method: OTA (Over-the-Air) firmware update via wireless. For instructions, visit: [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/]]
1680 * Alternative Method: Update via UART TTL interface. For instructions, see: **[[Update Instruction>>url:http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H1.LoRaSTv4baseHardware]]**.
1681
1682 == 5.6 Why can't I see the datalog information ==
1683
1684
1685 ~1. The time is not aligned, and the correct query command was not used.
1686
1687 2. Decoder error: the datalog data was not parsed, and the data was filtered out.
1688
1689
1690 == 5.7 How can I read sensor data without LoRaWAN? (For Calibration Purpose) ==
1691
1692
1693 Some clients need to calibrate the sensor values in a calibration lab. In such cases, reading the data without a LoRaWAN network is more convenient. To achieve this, you can use a USB Type-C breakout board to expose the UART pins while still keeping the probe connected. See below for details. For the pinout, please refer to the FAQ on H[[ow to connect LHT65-N via UART interface>>||anchor="H6.1HowtoconnecttoLHT65NUARTinterface3F"]].
1694
1695 [[image:image-20240122092100-1.jpeg||_mstalt="467389" height="346" width="476"]]
1696
1697
1698 After the UART connection is established, run the commands below:
1699
1700 1.** AT+NJM=0**   ~/~/ Set Device to ABP mode , so can works without join to LoRaWAN server.
1701
1702 2.** AT+GETSENSORVALUE=0**  ~/~/ The serial port gets the reading of the current sensor.
1703
1704 Example output:
1705
1706 [[image:image-20240128093852-1.png||_mstalt="431912" height="235" width="552"]]
1707
1708
1709 = 6. Ordering Information =
1710
1711 Part Number: (% style="color:#4f81bd" %)** LHT65N-VIB-XX**
1712
1713 (% style="color:#4f81bd" %)**XX **(%%): The default frequency band
1714
1715 * (% style="color:#4f81bd" %)** **(% _mstmutation="1" style="color:red" %)**AS923**(%%): LoRaWAN AS923 band
1716 * (% style="color:#4f81bd" %)** **(% _mstmutation="1" style="color:red" %)**AU915**(%%): LoRaWAN AU915 band
1717 * (% style="color:#4f81bd" %)** **(% _mstmutation="1" style="color:red" %)**EU433**(%%): LoRaWAN EU433 band
1718 * (% style="color:#4f81bd" %)** **(% _mstmutation="1" style="color:red" %)**EU868**(%%): LoRaWAN EU868 band
1719 * (% style="color:#4f81bd" %)** **(% _mstmutation="1" style="color:red" %)**KR920**(%%): LoRaWAN KR920 band
1720 * (% style="color:#4f81bd" %)** **(% _mstmutation="1" style="color:red" %)**US915**(%%): LoRaWAN US915 band
1721 * (% style="color:#4f81bd" %)** **(% _mstmutation="1" style="color:red" %)**IN865**(%%): LoRaWAN IN865 band
1722 * (% style="color:#4f81bd" %)** **(% _mstmutation="1" style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
1723
1724 = 7. Packing Information =
1725
1726
1727 The Package Includes:
1728
1729 * LHT65N-VIB LoRaWAN Vibration Sensor x 1
1730
1731 = 8. Reference Materials =
1732
1733 * [[Datasheet, photos, decoder, firmware>>https://www.dropbox.com/sh/una19zsni308dme/AACOKp6J2RF5TMlKWT5zU3RTa?dl=0]]
1734
1735 = 9. FCC Warning =
1736
1737
1738 This device complies with Part 15 of the FCC Rules. Operation is subject to the following two conditions:
1739
1740 1. This device may not cause harmful interference.
1741 1. This device must accept any interference received, including interference that may cause undesired operation.
1742
1743 = 10. Use Cases =
1744
1745
1746 Examples of Practical Applications for LHT65N-VIB.
1747
1748
1749 == 10.1 Install LHT65N-VIB to detect the number of uses of handwashing stations ==
1750
1751
1752 Device settings vis AT command: AT+VIBMOD=1,120,5
1753
1754 This means that when the water faucet remains on, a vibration lasting more than 120 seconds will trigger an alarm. When the vibration stops for more than 5 seconds, the vibration count will increase by 1.
1755
1756 * The data begins to rise after 8 o'clock, indicating that the wash basin sensor is working normally.
1757 * During lunch time, from 12 noon to 1:30 PM, the data temporarily levels off but returns to normal operation after.
1758 * At 6 PM, after work hours, the data flattens out, with only a small amount recorded, caused by employees working overtime and using the wash basin.
1759
1760 [[image:image-20241101174220-2.png||height="349" width="560"]]
1761
1762
1763 * Number of wash basin alarms: 14 times
1764 * The rest period is concentrated around 12 o'clock, as people wash their hands during the lunch break.
1765 * The longer duration at 6 o'clock is due to someone needing to turn on the water to clean the toilet.
1766
1767 [[image:image-20241101175954-3.png||height="210" width="601"]]
1768
1769
1770 **Sink installation example:**
1771 Fix the probe to the water inlet pipe of the sink using a cable tie. Since the vibration in the middle is not as noticeable, and the water outlet on the right is larger than the one on the left, resulting in a larger vibration amplitude, the probe should be installed at the middle of the left water inlet pipe. This way, vibrations can be detected on both sides of the water pipe.
1772
1773 [[image:image-20241202160241-2.png]]
1774
1775
1776 == 10.2 Install LHT65N-VIB to detect the number of times the toilet is used ==
1777
1778
1779 Device settings vis AT command: AT+VIBMOD=1,120,5
1780
1781 This means that if the vibration exceeds 120 seconds, an alarm message will be issued. When the vibration stops for more than 5 seconds, the number of vibrations will increase by 1.
1782 When the toilet vibrates for only 100 seconds each time it is flushed, any vibration exceeding 120 seconds would indicate an abnormal situation.
1783
1784 * The data starts to rise after 8 o'clock, indicating that the toilet sensor is working normally.
1785 * The data remains flat with no abnormalities during the lunch break from 12:00 PM to 1:30 PM.
1786 * The data stops rising at 6:00 PM when work is over.
1787
1788 [[image:image-20241101181711-4.png||height="330" width="562"]]
1789
1790
1791 A manual alarm test is performed once at noon.
1792
1793 [[image:image-20241101182128-5.png||height="257" width="574"]]
1794
1795
1796 **Toilet installation example:**
1797 Fix the probe to the water inlet pipe of the toilet with a wire tie. When the toilet is used, it will pump water, and the LHT65N-VIB will start detecting vibrations in the water pipe. **Note:** LHT65N-VIB should not be immersed in water. If necessary, ensure it is waterproofed.
1798
1799 [[image:image-20241202160143-1.png]]
1800
1801
1802 == 10.3 VIBMOD4 detect vibration intensity ==
1803
1804
1805 Set AT+VIBMOD=4,1,10 to collect a set of XYZ vibration data every ten seconds.
1806
1807 By analyzing the data collected in the graph, we can observe that the vibration amplitude of the machine varies significantly under different working conditions. This monitoring method not only helps to determine in real time whether the machine is operating normally but also allows for the early detection of any abnormal changes in vibration frequency. This, in turn, helps to effectively prevent potential failures and ensures the safe and stable operation of the equipment.
1808
1809 [[image:image-20241104105122-1.png||height="559" width="695"]]
1810
1811