Last modified by Xiaoling on 2025/04/27 13:40

Show last authors
1
2
3 (% style="text-align:center" %)
4 [[image:image-20221028115319-1.jpeg||height="574" width="574"]]
5
6
7
8
9
10
11
12
13 **Table of Contents:**
14
15 {{toc/}}
16
17
18
19 = 1.  Introduction =
20
21 == 1.1 ​ What is LoRaWAN LiDAR ToF Distance Sensor ==
22
23
24 (((
25 The Dragino LLDS40 is a (% style="color:blue" %)**LoRaWAN LiDAR ToF (Time of Flight) Distance Sensor**(%%) for Internet of Things solution. It is capable of measuring the distance to objects as close as 0m to 40m. The LiDAR probe uses laser induction technology for distance measurement.
26 )))
27
28 (((
29 The LLDS40 can be applied to scenarios such as horizontal distance measurement, parking management system, object proximity and presence detection, intelligent trash can management system, robot obstacle avoidance, automatic control, sewer, etc.
30 )))
31
32 (((
33 It detects the distance between the measured object and the sensor, and uploads the value via wireless to LoRaWAN IoT Server.
34 )))
35
36 (((
37 The LoRa wireless technology used in LLDS40 allows device to send data and reach extremely long ranges at low data-rates. It provides ultra-long range spread spectrum communication and high interference immunity whilst minimizing current consumption.
38 )))
39
40 (((
41 LLDS40 is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long term use up to 5 years.
42 )))
43
44 (((
45 Each LLDS40 is pre-load with a set of unique keys for LoRaWAN registrations, register these keys to local LoRaWAN server and it will auto connect after power on.
46 )))
47
48
49 [[image:image-20221103084955-1.png||height="337" width="738"]]
50
51
52 == ​1.2  Features ==
53
54
55 * LoRaWAN 1.0.3 Class A
56 * Ultra-low power consumption
57 * Laser technology for distance detection
58 * Measure Distance: 0.1m ~~ 40m @ 90% Reflectivity
59 * Monitor Battery Level
60 * Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865
61 * AT Commands to change parameters
62 * Uplink on periodically
63 * Downlink to change configure
64 * 8500mAh Battery for long-term use
65
66 == 1.3  Probe Specification ==
67
68
69 * Storage temperature: -30℃~~80℃
70 * Operating temperature: -20℃~~60℃
71 * Measure Distance:
72 ** 0.1m ~~ 40m @ 90% Reflectivity
73 ** 0.1m ~~ 13.5m @ 10% Reflectivity
74 * Distance resolution: 1cm
75 * Ambient light immunity: 100klux
76 * Enclosure rating : IP65
77 * Light source : VCSEL
78 * Central wavelength : 850nm
79 * FOV : 3°
80 * Material of enclosure : ABS+PC
81 * Wire length : 75cm
82
83 == 1.4  Probe Dimension ==
84
85
86 [[image:1666948963951-832.png]]
87
88
89 == 1.5 ​ Applications ==
90
91
92 * Horizontal distance measurement
93 * Oil Tank
94 * Object proximity and presence detection
95 * Intelligent trash can management system
96 * Robot obstacle avoidance
97 * Automatic control
98 * Sewer
99
100 == 1.6  Pin mapping and power on ==
101
102
103 [[image:1654827332142-133.png]]
104
105
106 = 2.  Configure LLDS40 to connect to LoRaWAN network =
107
108 == 2.1  How it works ==
109
110
111 (((
112 The LLDS40 is configured as LoRaWAN OTAA Class A mode by default. It has OTAA keys to join LoRaWAN network. To connect a local LoRaWAN network, you need to input the OTAA keys in the LoRaWAN IoT server and power on the LLDS40. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 20 minutes.
113 )))
114
115 (((
116 In case you can't set the OTAA keys in the LoRaWAN OTAA server, and you have to use the keys from the server, you can [[use AT Commands >>||anchor="H6.A0UseATCommand"]]to set the keys in the LLDS40.
117 )))
118
119
120 == 2.2  ​Quick guide to connect to LoRaWAN server (OTAA) ==
121
122
123 (((
124 Following is an example for how to join the [[TTN v3 LoRaWAN Network>>url:https://console.cloud.thethings.network/]]. Below is the network structure; we use the [[LG308>>url:http://www.dragino.com/products/lora/item/140-lg308.html]] as a LoRaWAN gateway in this example.
125 )))
126
127 (((
128 [[image:image-20221028172204-2.png||height="335" width="811"]]
129 )))
130
131 (((
132 The LG308 is already set to connect to [[TTN network >>url:https://console.cloud.thethings.network/]], so what we need to now is configure the TTN server.
133 )))
134
135 (((
136
137
138 (% style="color:blue" %)**Step 1**(%%): Create a device in TTN with the OTAA keys from LLDS40.
139 )))
140
141 (((
142 Each LLDS40 is shipped with a sticker with the default device EUI as below:
143 )))
144
145 [[image:image-20230426085425-1.png||height="237" width="510"]]
146
147
148 You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
149
150 **Create the application.**
151
152 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/SAC01L_LoRaWAN_Temperature%26Humidity_Sensor_User_Manual/WebHome/image-20250423093843-1.png?width=756&height=264&rev=1.1||alt="image-20250423093843-1.png"]]
153
154 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LTC2-LB--LoRaWAN_Temperature_Transmitter_User_Manual/WebHome/image-20240907111305-2.png?width=1000&height=572&rev=1.1||alt="image-20240907111305-2.png"]]
155
156
157 **Add devices to the created Application.**
158
159 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LTC2-LB--LoRaWAN_Temperature_Transmitter_User_Manual/WebHome/image-20240907111659-3.png?width=977&height=185&rev=1.1||alt="image-20240907111659-3.png"]]
160
161 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LTC2-LB--LoRaWAN_Temperature_Transmitter_User_Manual/WebHome/image-20240907111820-5.png?width=975&height=377&rev=1.1||alt="image-20240907111820-5.png"]]
162
163
164 **Enter end device specifics manually.**
165
166 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LTC2-LB--LoRaWAN_Temperature_Transmitter_User_Manual/WebHome/image-20240907112136-6.png?width=697&height=687&rev=1.1||alt="image-20240907112136-6.png"]]
167
168
169 **Add DevEUI and AppKey. Customize a platform ID for the device.**
170
171 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LTC2-LB--LoRaWAN_Temperature_Transmitter_User_Manual/WebHome/image-20240907112427-7.png?rev=1.1||alt="image-20240907112427-7.png"]]
172
173
174 (% style="color:blue" %)**Step 2**(%%): Add decoder.
175
176 In TTN, user can add a custom payload so it shows friendly reading.
177
178 Click this link to get the decoder: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder/tree/main/>>url:https://github.com/dragino/dragino-end-node-decoder/tree/main/]]
179
180 Below is TTN screen shot:
181
182 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS25-LBLDS25-LS--LoRaWAN_LiDAR_Distance_Auto-Clean_Sensor_User_Manual/WebHome/image-20241009140556-1.png?width=1184&height=488&rev=1.1||alt="image-20241009140556-1.png" height="488" width="1184"]]
183
184 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS25-LBLDS25-LS--LoRaWAN_LiDAR_Distance_Auto-Clean_Sensor_User_Manual/WebHome/image-20241009140603-2.png?width=1168&height=562&rev=1.1||alt="image-20241009140603-2.png" height="562" width="1168"]]
185
186
187 (% style="color:blue" %)**Step 3**(%%): Power on LLDS40
188
189 Put a Jumper on JP2 to power on the device. ( The Switch must be in FLASH position).
190
191 [[image:image-20220607170442-2.png]]
192
193 The LLDS40 will auto join to the TTN network. After join success, it will start to upload messages to TTN and you can see the messages in the panel.
194
195 (((
196
197 )))
198
199 [[image:1666949054603-397.png]]
200
201
202 == 2.3  ​Uplink Payload ==
203
204
205 (((
206 LLDS40 will uplink payload via LoRaWAN with below payload format: 
207 )))
208
209 (((
210 Uplink payload includes in total 11 bytes.
211 )))
212
213 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
214 |=(% style="width: 62.5px;background-color:#4F81BD;color:white" %)(((
215 **Size(bytes)**
216 )))|=(% style="width: 62.5px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 62.5px;background-color:#4F81BD;color:white" %)2|=(% style="background-color:#4F81BD;color:white" %)**2**|=(% style="background-color:#4F81BD;color:white" %)**2**|=(% style="background-color:#4F81BD;color:white" %)**1**|=(% style="background-color:#4F81BD;color:white" %)**1**|=(% style="background-color:#4F81BD;color:white" %)**1**
217 |(% style="width:62.5px" %)Value|(% style="width:62.5px" %)[[BAT>>||anchor="H2.3.1A0BatteryInfo"]]|(% style="width:62.5px" %)(((
218 [[Temperature DS18B20>>||anchor="H2.3.2A0DS18B20Temperaturesensor"]]
219 )))|[[Distance>>||anchor="H2.3.3A0Distance"]]|[[Distance signal strength>>||anchor="H2.3.4A0Distancesignalstrength"]]|(((
220 [[Interrupt flag>>||anchor="H2.3.5A0InterruptPin"]]
221 )))|[[LiDAR temp>>||anchor="H2.3.6A0LiDARtemp"]]|(((
222 [[Message Type>>||anchor="H2.3.7A0MessageType"]]
223 )))
224
225 [[image:1666949060416-681.png]]
226
227
228 === 2.3.1  Battery Info ===
229
230
231 Check the battery voltage for LLDS40.
232
233 Ex1: 0x0B45 = 2885mV
234
235 Ex2: 0x0B49 = 2889mV
236
237
238 === 2.3.2  DS18B20 Temperature sensor ===
239
240
241 This is optional, user can connect external DS18B20 sensor to the (% style="color:blue" %)**+3.3v, 1-wire and GND**(%%) pin . and this field will report the temperature.
242
243 **Example**:
244
245 If payload is: 0105H:  (0105 & FC00 == 0), temp = 0105H /10 = 26.1 degree
246
247 If payload is: FF3FH :  (FF3F & FC00 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
248
249
250 === 2.3.3  Distance ===
251
252
253 Indicates the distance value measured by the LLDS40. The default unit is cm and the range is 0-4000.
254
255 **Example**:
256
257 If the data you get from the register is 0x0B 0xEA, the distance between the sensor and the measured object is 0BEA(H) = 3050 (D)/10 = 305cm.
258
259
260 === 2.3.4  Distance signal strength ===
261
262
263 Refers to the signal strength, the default output value will be between 0-65535. When the ranging gear is fixed, the farther the ranging, the lower the signal strength.
264
265 In actual use, when the signal strength value Strength≤60, the measured value of Dist is considered unreliable, and the default output is 4500. When the signal strength is greater than 60 and the actual distance is and the actual distance is 45~~60m, the output value of Dist is 4500. When the signal strength is greater than 60 and the actual distance is more than 60m, there will be over-period data appearing as 0 or other abnormal values.
266
267
268 **Example**:
269
270 If payload is: 01D7(H)=471(D), distance signal strength=471, 471>100,471≠65535, the measured value of Dist is considered credible.
271
272 Customers can judge whether they need to adjust the environment based on the signal strength.
273
274
275 **1) When the sensor detects valid data:**
276
277
278 [[image:image-20221028172727-3.png||height="231" width="1178"]]
279
280
281
282 **2) When the sensor detects invalid data:**
283
284
285 [[image:image-20221028172727-4.png||height="232" width="1183"]]
286
287
288
289 **3) When the sensor is not connected:**
290
291
292 [[image:image-20221028172727-5.png||height="220" width="1181"]]
293
294
295 === 2.3.5  Interrupt Pin ===
296
297
298 This data field shows if this packet is generated by interrupt or not. [[Click here>>||anchor="H4.2A0SetInterruptMode"]] for the hardware and software set up.
299
300 (% style="color:red" %)**Note:**(%%) The Internet Pin is a separate pin in the screw terminal. See [[pin mapping>>||anchor="H1.6A0Pinmappingandpoweron"]].
301
302 **Example:**
303
304 0x00: Normal uplink packet.
305
306 0x01: Interrupt Uplink Packet.
307
308
309 === 2.3.6  LiDAR temp ===
310
311
312 Characterize the internal temperature value of the sensor.
313
314 **Example: **
315 If payload is: 1C(H) <<24>>24=28(D),LiDAR temp=28℃.
316 If payload is: F2(H) <<24>>24=-14(D),LiDAR temp=-14℃.
317
318
319 === 2.3.7  Message Type ===
320
321
322 (((
323 For a normal uplink payload, the message type is always 0x01.
324 )))
325
326 (((
327 Valid Message Type:
328 )))
329
330
331 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:499px" %)
332 |=(% style="width: 160px;background-color:#4F81BD;color:white" %)**Message Type Code**|=(% style="width: 164px;background-color:#4F81BD;color:white" %)**Description**|=(% style="width: 174px;background-color:#4F81BD;color:white" %)**Payload**
333 |(% style="width:160px" %)0x01|(% style="width:163px" %)Normal Uplink|(% style="width:173px" %)[[Normal Uplink Payload>>||anchor="H2.3A0200BUplinkPayload"]]
334 |(% style="width:160px" %)0x02|(% style="width:163px" %)Reply configures info|(% style="width:173px" %)[[Configure Info Payload>>||anchor="H4.3A0GetFirmwareVersionInfo"]]
335
336 === 2.3.8  Decode payload in The Things Network ===
337
338
339 While using TTN network, you can add the payload format to decode the payload.
340
341
342 [[image:1654592762713-715.png]]
343
344
345 (((
346 The payload decoder function for TTN is here:
347 )))
348
349 (((
350 LLDS40 TTN Payload Decoder:  [[https:~~/~~/github.com/dragino/dragino-end-node-decoder/tree/main/LLDS40>>https://github.com/dragino/dragino-end-node-decoder/tree/main/LLDS40]]
351 )))
352
353
354 == 2.4  Uplink Interval ==
355
356
357 The LLDS40 by default uplink the sensor data every 20 minutes. User can change this interval by AT Command or LoRaWAN Downlink Command. See this link: [[Change Uplink Interval>>doc:Main.End Device AT Commands and Downlink Command.WebHome||anchor="H4.1ChangeUplinkInterval"]]
358
359
360 == 2.5  ​Show Data in DataCake IoT Server ==
361
362
363 (((
364 [[DATACAKE>>url:https://datacake.co/]] provides a human friendly interface to show the sensor data, once we have data in TTN, we can use [[DATACAKE>>url:https://datacake.co/]] to connect to TTN and see the data in DATACAKE. Below are the steps:
365 )))
366
367 (((
368
369 )))
370
371 (((
372 (% style="color:blue" %)**Step 1**(%%)**: Be sure that your device is programmed and properly connected to the network at this time.**
373 )))
374
375 (((
376 (% style="color:blue" %)**Step 2**(%%)**: To configure the Application to forward data to DATACAKE you will need to add integration. To add the DATACAKE integration, perform the following steps:**
377 )))
378
379
380 [[image:1654592790040-760.png]]
381
382
383 [[image:1654592800389-571.png]]
384
385
386 (% style="color:blue" %)**Step 3**(%%)**: Create an account or log in Datacake.**
387
388 (% style="color:blue" %)**Step 4**(%%)**: Create LLDS40 product.**
389
390 [[image:1654832691989-514.png]]
391
392
393 [[image:1654592833877-762.png]]
394
395
396 [[image:1654832740634-933.png]]
397
398
399
400 (((
401 (% style="color:blue" %)**Step 5**(%%)**: add payload decode**
402 )))
403
404 (((
405
406 )))
407
408 [[image:1654833065139-942.png]]
409
410
411
412 [[image:1654833092678-390.png]]
413
414
415
416 After added, the sensor data arrive TTN, it will also arrive and show in Datacake.
417
418 [[image:1654833163048-332.png]]
419
420
421 == 2.6  Frequency Plans ==
422
423
424 (((
425 The LLDS40 uses OTAA mode and below frequency plans by default. If user want to use it with different frequency plan, please refer the AT command sets.
426 )))
427
428
429 === 2.6.1  EU863-870 (EU868) ===
430
431
432 (((
433 (% style="color:blue" %)**Uplink:**
434 )))
435
436 (((
437 868.1 - SF7BW125 to SF12BW125
438 )))
439
440 (((
441 868.3 - SF7BW125 to SF12BW125 and SF7BW250
442 )))
443
444 (((
445 868.5 - SF7BW125 to SF12BW125
446 )))
447
448 (((
449 867.1 - SF7BW125 to SF12BW125
450 )))
451
452 (((
453 867.3 - SF7BW125 to SF12BW125
454 )))
455
456 (((
457 867.5 - SF7BW125 to SF12BW125
458 )))
459
460 (((
461 867.7 - SF7BW125 to SF12BW125
462 )))
463
464 (((
465 867.9 - SF7BW125 to SF12BW125
466 )))
467
468 (((
469 868.8 - FSK
470 )))
471
472 (((
473
474 )))
475
476 (((
477 (% style="color:blue" %)**Downlink:**
478 )))
479
480 (((
481 Uplink channels 1-9 (RX1)
482 )))
483
484 (((
485 869.525 - SF9BW125 (RX2 downlink only)
486 )))
487
488
489 === 2.6.2  US902-928(US915) ===
490
491
492 (((
493 Used in USA, Canada and South America. Frequency band as per definition in LoRaWAN 1.0.3 Regional document.
494 )))
495
496 (((
497 To make sure the end node supports all sub band by default. In the OTAA Join process, the end node will use frequency 1 from sub-band1, then frequency 1 from sub-band2, then frequency 1 from sub-band3, etc to process the OTAA join.
498 )))
499
500 (((
501 After Join success, the end node will switch to the correct sub band by:
502 )))
503
504 * Check what sub-band the LoRaWAN server ask from the OTAA Join Accept message and switch to that sub-band
505 * Use the Join successful sub-band if the server doesn't include sub-band info in the OTAA Join Accept message ( TTN v2 doesn't include)
506
507 === 2.6.3  CN470-510 (CN470) ===
508
509
510 (((
511 Used in China, Default use CHE=1
512 )))
513
514 (((
515 (% style="color:blue" %)**Uplink:**
516 )))
517
518 (((
519 486.3 - SF7BW125 to SF12BW125
520 )))
521
522 (((
523 486.5 - SF7BW125 to SF12BW125
524 )))
525
526 (((
527 486.7 - SF7BW125 to SF12BW125
528 )))
529
530 (((
531 486.9 - SF7BW125 to SF12BW125
532 )))
533
534 (((
535 487.1 - SF7BW125 to SF12BW125
536 )))
537
538 (((
539 487.3 - SF7BW125 to SF12BW125
540 )))
541
542 (((
543 487.5 - SF7BW125 to SF12BW125
544 )))
545
546 (((
547 487.7 - SF7BW125 to SF12BW125
548 )))
549
550 (((
551
552 )))
553
554 (((
555 (% style="color:blue" %)**Downlink:**
556 )))
557
558 (((
559 506.7 - SF7BW125 to SF12BW125
560 )))
561
562 (((
563 506.9 - SF7BW125 to SF12BW125
564 )))
565
566 (((
567 507.1 - SF7BW125 to SF12BW125
568 )))
569
570 (((
571 507.3 - SF7BW125 to SF12BW125
572 )))
573
574 (((
575 507.5 - SF7BW125 to SF12BW125
576 )))
577
578 (((
579 507.7 - SF7BW125 to SF12BW125
580 )))
581
582 (((
583 507.9 - SF7BW125 to SF12BW125
584 )))
585
586 (((
587 508.1 - SF7BW125 to SF12BW125
588 )))
589
590 (((
591 505.3 - SF12BW125 (RX2 downlink only)
592 )))
593
594
595 === 2.6.4  AU915-928(AU915) ===
596
597
598 (((
599 Frequency band as per definition in LoRaWAN 1.0.3 Regional document.
600 )))
601
602 (((
603 To make sure the end node supports all sub band by default. In the OTAA Join process, the end node will use frequency 1 from sub-band1, then frequency 1 from sub-band2, then frequency 1 from sub-band3, etc to process the OTAA join.
604 )))
605
606 (((
607
608 )))
609
610 (((
611 After Join success, the end node will switch to the correct sub band by:
612 )))
613
614 * Check what sub-band the LoRaWAN server ask from the OTAA Join Accept message and switch to that sub-band
615 * Use the Join successful sub-band if the server doesn't include sub-band info in the OTAA Join Accept message ( TTN v2 doesn't include)
616
617 === 2.6.5  AS920-923 & AS923-925 (AS923) ===
618
619
620 (((
621 (% style="color:blue" %)**Default Uplink channel:**
622 )))
623
624 (((
625 923.2 - SF7BW125 to SF10BW125
626 )))
627
628 (((
629 923.4 - SF7BW125 to SF10BW125
630 )))
631
632 (((
633
634 )))
635
636 (((
637 (% style="color:blue" %)**Additional Uplink Channel**:
638 )))
639
640 (((
641 (OTAA mode, channel added by JoinAccept message)
642 )))
643
644 (((
645
646 )))
647
648 (((
649 (% style="color:blue" %)**AS920~~AS923 for Japan, Malaysia, Singapore**:
650 )))
651
652 (((
653 922.2 - SF7BW125 to SF10BW125
654 )))
655
656 (((
657 922.4 - SF7BW125 to SF10BW125
658 )))
659
660 (((
661 922.6 - SF7BW125 to SF10BW125
662 )))
663
664 (((
665 922.8 - SF7BW125 to SF10BW125
666 )))
667
668 (((
669 923.0 - SF7BW125 to SF10BW125
670 )))
671
672 (((
673 922.0 - SF7BW125 to SF10BW125
674 )))
675
676 (((
677
678 )))
679
680 (((
681 (% style="color:blue" %)**AS923 ~~ AS925 for Brunei, Cambodia, Hong Kong, Indonesia, Laos, Taiwan, Thailand, Vietnam**:
682 )))
683
684 (((
685 923.6 - SF7BW125 to SF10BW125
686 )))
687
688 (((
689 923.8 - SF7BW125 to SF10BW125
690 )))
691
692 (((
693 924.0 - SF7BW125 to SF10BW125
694 )))
695
696 (((
697 924.2 - SF7BW125 to SF10BW125
698 )))
699
700 (((
701 924.4 - SF7BW125 to SF10BW125
702 )))
703
704 (((
705 924.6 - SF7BW125 to SF10BW125
706 )))
707
708 (((
709
710 )))
711
712 (((
713 (% style="color:blue" %)**Downlink:**
714 )))
715
716 (((
717 Uplink channels 1-8 (RX1)
718 )))
719
720 (((
721 923.2 - SF10BW125 (RX2)
722 )))
723
724
725 === 2.6.6  KR920-923 (KR920) ===
726
727
728 (((
729 (% style="color:blue" %)**Default channel:**
730 )))
731
732 (((
733 922.1 - SF7BW125 to SF12BW125
734 )))
735
736 (((
737 922.3 - SF7BW125 to SF12BW125
738 )))
739
740 (((
741 922.5 - SF7BW125 to SF12BW125
742 )))
743
744 (((
745
746 )))
747
748 (((
749 (% style="color:blue" %)**Uplink: (OTAA mode, channel added by JoinAccept message)**
750 )))
751
752 (((
753 922.1 - SF7BW125 to SF12BW125
754 )))
755
756 (((
757 922.3 - SF7BW125 to SF12BW125
758 )))
759
760 (((
761 922.5 - SF7BW125 to SF12BW125
762 )))
763
764 (((
765 922.7 - SF7BW125 to SF12BW125
766 )))
767
768 (((
769 922.9 - SF7BW125 to SF12BW125
770 )))
771
772 (((
773 923.1 - SF7BW125 to SF12BW125
774 )))
775
776 (((
777 923.3 - SF7BW125 to SF12BW125
778 )))
779
780 (((
781
782 )))
783
784 (((
785 (% style="color:blue" %)**Downlink:**
786 )))
787
788 (((
789 Uplink channels 1-7(RX1)
790 )))
791
792 (((
793 921.9 - SF12BW125 (RX2 downlink only; SF12BW125 might be changed to SF9BW125)
794 )))
795
796
797 === 2.6.7  IN865-867 (IN865) ===
798
799
800 (((
801 (% style="color:blue" %)**Uplink:**
802 )))
803
804 (((
805 865.0625 - SF7BW125 to SF12BW125
806 )))
807
808 (((
809 865.4025 - SF7BW125 to SF12BW125
810 )))
811
812 (((
813 865.9850 - SF7BW125 to SF12BW125
814 )))
815
816 (((
817
818 )))
819
820 (((
821 (% style="color:blue" %)**Downlink:**
822 )))
823
824 (((
825 Uplink channels 1-3 (RX1)
826 )))
827
828 (((
829 866.550 - SF10BW125 (RX2)
830 )))
831
832
833 == 2.7  LED Indicator ==
834
835
836 The LLDS40 has an internal LED which is to show the status of different state.
837
838 * The sensor is detected when the device is turned on, and it will flash 4 times quickly when it is detected.
839 * Blink once when device transmits a packet.
840
841 == 2.8  ​Firmware Change Log ==
842
843
844 **Firmware download link:  **[[https:~~/~~/www.dropbox.com/sh/zjrobt4eb6tju89/AADPX7jC7mLN2dlvV-Miz3nFa?dl=0>>https://www.dropbox.com/sh/zjrobt4eb6tju89/AADPX7jC7mLN2dlvV-Miz3nFa?dl=0]]
845
846 **Firmware Upgrade Method: **[[Firmware Upgrade Instruction>>doc:Main.Firmware Upgrade Instruction for STM32 base products.WebHome]]
847
848
849 = 3.  LiDAR ToF Measurement =
850
851 == 3.1 Principle of Distance Measurement ==
852
853
854 The LiDAR probe is based on TOF, namely, Time of Flight principle. To be specific, the product emits modulation wave of near infrared ray on a periodic basis, which will be reflected after contacting object. The product obtains the time of flight by measuring round-trip phase difference and then calculates relative range between the product and the detection object, as shown below.
855
856 [[image:1654831757579-263.png||height="298" width="648"]]
857
858
859 == 3.2 Distance Measurement Characteristics ==
860
861
862 The detection angle of the LLDS40 is 3 degrees, and the size of the light spot at different distances is the side length of the detection range. The size of the light spot at different distances is the side length of the detection range. The side length of the detection range (the shape is square), as shown.
863
864
865 (% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %)
866 |(% style="width:240px" %)**Distance(m)**|(% style="width:26px" %)1|(% style="width:35px" %)2|(% style="width:36px" %)3|(% style="width:32px" %)5|(% style="width:33px" %)7|(% style="width:34px" %)10|(% style="width:43px" %)20|(% style="width:41px" %)30|(% style="width:41px" %)40
867 |(% style="width:240px" %)**Detection range side length (cm)**|(% style="width:26px" %)5|(% style="width:35px" %)10|(% style="width:36px" %)16|(% style="width:32px" %)26|(% style="width:33px" %)37|(% style="width:34px" %)52|(% style="width:43px" %)105|(% style="width:41px" %)156|(% style="width:41px" %)208
868
869 Note that generally, the side length of the detected target object should be greater than the side length of the detection range of the LLDS40; when the detected object is smaller than the detection range side length; when the detected object is smaller than the detection range side length, the effective range of the radar will be reduced.
870
871
872 == 3.3 Notice of usage: ==
873
874
875 Possible invalid /wrong reading for LiDAR ToF tech:
876
877 * Measure high reflectivity object such as: Mirror, Smooth ceramic tile, static milk surface, will have possible wrong readings.
878 * While there is transparent object such as glass, water drop between the measured object and the LiDAR sensor, the reading might be wrong.
879 * The LiDAR probe is cover by dirty things; the reading might be wrong. In this case, need to clean the probe.
880 * The sensor window is made by Acrylic. Don't touch it with alcohol material. This will destroy the sensor window.
881
882 == 3.4  Reflectivity of different objects: ==
883
884
885 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:379px" %)
886 |=(% style="width: 54px;background-color:#4F81BD;color:white" %)Item|=(% style="width: 230px;background-color:#4F81BD;color:white" %)Material|=(% style="width: 94px;background-color:#4F81BD;color:white" %)Relectivity
887 |(% style="width:53px" %)1|(% style="width:229px" %)Black foam rubber|(% style="width:93px" %)2.4%
888 |(% style="width:53px" %)2|(% style="width:229px" %)Black fabric|(% style="width:93px" %)3%
889 |(% style="width:53px" %)3|(% style="width:229px" %)Black rubber|(% style="width:93px" %)4%
890 |(% style="width:53px" %)4|(% style="width:229px" %)Coal (different types of coal)|(% style="width:93px" %)4~~8%
891 |(% style="width:53px" %)5|(% style="width:229px" %)Black car paint|(% style="width:93px" %)5%
892 |(% style="width:53px" %)6|(% style="width:229px" %)Black Jam|(% style="width:93px" %)10%
893 |(% style="width:53px" %)7|(% style="width:229px" %)Opaque black plastic|(% style="width:93px" %)14%
894 |(% style="width:53px" %)8|(% style="width:229px" %)Clean rough board|(% style="width:93px" %)20%
895 |(% style="width:53px" %)9|(% style="width:229px" %)Translucent plastic bottle|(% style="width:93px" %)62%
896 |(% style="width:53px" %)10|(% style="width:229px" %)Carton cardboard|(% style="width:93px" %)68%
897 |(% style="width:53px" %)11|(% style="width:229px" %)Clean pine|(% style="width:93px" %)70%
898 |(% style="width:53px" %)12|(% style="width:229px" %)Opaque white plastic|(% style="width:93px" %)87%
899 |(% style="width:53px" %)13|(% style="width:229px" %)White Jam|(% style="width:93px" %)90%
900 |(% style="width:53px" %)14|(% style="width:229px" %)Kodak Standard Whiteboard|(% style="width:93px" %)100%
901 |(% style="width:53px" %)15|(% style="width:229px" %)(((
902 Unpolished white metal surface
903 )))|(% style="width:93px" %)130%
904 |(% style="width:53px" %)16|(% style="width:229px" %)Glossy light metal surface|(% style="width:93px" %)150%
905 |(% style="width:53px" %)17|(% style="width:229px" %)stainless steel|(% style="width:93px" %)200%
906 |(% style="width:53px" %)18|(% style="width:229px" %)Reflector plate, reflective tape|(% style="width:93px" %)>300%
907
908 = 4.  Configure LLDS40 via AT Command or LoRaWAN Downlink =
909
910
911 Use can configure LLDS40 via AT Command or LoRaWAN Downlink.
912
913 * (((
914 (((
915 AT Command Connection: See [[FAQ>>||anchor="H7.A0FAQ"]].
916 )))
917 )))
918 * (((
919 (((
920 LoRaWAN Downlink instruction for different platforms: [[IoT LoRaWAN Server>>doc:Main.WebHome]]
921 )))
922 )))
923
924 (((
925 (((
926
927 )))
928
929 (((
930 There are two kinds of commands to configure LLDS40, they are:
931 )))
932 )))
933
934 * (((
935 (((
936 (% style="color:#4f81bd" %)** General Commands**.
937 )))
938 )))
939
940 (((
941 (((
942 These commands are to configure:
943 )))
944 )))
945
946 * (((
947 (((
948 General system settings like: uplink interval.
949 )))
950 )))
951 * (((
952 (((
953 LoRaWAN protocol & radio related command.
954 )))
955 )))
956
957 (((
958 (((
959 They are same for all Dragino Device which support DLWS-005 LoRaWAN Stack. These commands can be found on the wiki: [[End Device AT Commands and Downlink Command>>doc:Main.End Device AT Commands and Downlink Command.WebHome]]
960 )))
961 )))
962
963 (((
964 (((
965
966 )))
967 )))
968
969 * (((
970 (((
971 (% style="color:#4f81bd" %)** Commands special design for LLDS40**
972 )))
973 )))
974
975 (((
976 (((
977 These commands only valid for LLDS40, as below:
978 )))
979 )))
980
981
982 == 4.1  Set Transmit Interval Time ==
983
984
985 Feature: Change LoRaWAN End Node Transmit Interval.
986
987 (% style="color:#037691" %)**AT Command: AT+TDC**
988
989 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
990 |=(% style="width: 160px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 140px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 210px;background-color:#4F81BD;color:white" %)**Response**
991 |(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|(((
992 30000
993 OK
994 the interval is 30000ms = 30s
995 )))
996 |(% style="width:156px" %)AT+TDC=60000|(% style="width:137px" %)Set Transmit Interval|(((
997 OK
998 Set transmit interval to 60000ms = 60 seconds
999 )))
1000
1001 (((
1002 (% style="color:#037691" %)**Downlink Command: 0x01**
1003 )))
1004
1005 (((
1006 Format: Command Code (0x01) followed by 3 bytes time value.
1007 )))
1008
1009 (((
1010 If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01.
1011 )))
1012
1013 * (((
1014 Example 1: Downlink Payload: 0100001E  ~/~/ Set Transmit Interval (TDC) = 30 seconds
1015 )))
1016 * (((
1017 Example 2: Downlink Payload: 0100003C  ~/~/ Set Transmit Interval (TDC) = 60 seconds
1018
1019
1020
1021 )))
1022
1023 == 4.2  Set Interrupt Mode ==
1024
1025
1026 Feature, Set Interrupt mode for GPIO_EXIT.
1027
1028 (% style="color:#037691" %)**AT Command: AT+INTMOD**
1029
1030 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
1031 |=(% style="width: 154px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 196px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 160px;background-color:#4F81BD;color:white" %)**Response**
1032 |(% style="width:154px" %)AT+INTMOD=?|(% style="width:196px" %)Show current interrupt mode|(% style="width:157px" %)(((
1033 0
1034 OK
1035 the mode is 0 =No Interruption
1036 )))
1037 |(% style="width:154px" %)AT+INTMOD=2|(% style="width:196px" %)(((
1038 Set Transmit Interval
1039 0. (Disable Interrupt),
1040 ~1. (Trigger by rising and falling edge)
1041 2. (Trigger by falling edge)
1042 3. (Trigger by rising edge)
1043 )))|(% style="width:157px" %)OK
1044
1045 (((
1046 (% style="color:#037691" %)**Downlink Command: 0x06**
1047 )))
1048
1049 (((
1050 Format: Command Code (0x06) followed by 3 bytes.
1051 )))
1052
1053 (((
1054 This means that the interrupt mode of the end node is set to 0x000003=3 (rising edge trigger), and the type code is 06.
1055 )))
1056
1057 * (((
1058 Example 1: Downlink Payload: 06000000  ~/~/ Turn off interrupt mode
1059 )))
1060 * (((
1061 Example 2: Downlink Payload: 06000003  ~/~/ Set the interrupt mode to rising edge trigger
1062
1063
1064
1065 )))
1066
1067 == 4.3  Get Firmware Version Info ==
1068
1069
1070 Feature: use downlink to get firmware version.
1071
1072 (% style="color:#037691" %)**Downlink Command: 0x26**
1073
1074 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:492px" %)
1075 |(% style="background-color:#4f81bd; color:white; width:191px" %)**Downlink Control Type**|(% style="background-color:#4f81bd; color:white; width:57px" %)**FPort**|(% style="background-color:#4f81bd; color:white; width:91px" %)**Type Code**|(% style="background-color:#4f81bd; color:white; width:153px" %)**Downlink payload size(bytes)**
1076 |(% style="width:191px" %)Get Firmware Version Info|(% style="width:57px" %)Any|(% style="width:91px" %)26|(% style="width:151px" %)2
1077
1078 * Reply to the confirmation package: 26 01
1079 * Reply to non-confirmed packet: 26 00
1080
1081 Device will send an uplink after got this downlink command. With below payload:
1082
1083 Configures info payload:
1084
1085 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
1086 |=(% style="background-color:#4F81BD;color:white" %)(((
1087 **Size(bytes)**
1088 )))|=(% style="background-color:#4F81BD;color:white" %)**1**|=(% style="background-color:#4F81BD;color:white" %)**1**|=(% style="background-color:#4F81BD;color:white" %)**1**|=(% style="background-color:#4F81BD;color:white" %)**1**|=(% style="background-color:#4F81BD;color:white" %)**1**|=(% style="background-color:#4F81BD;color:white" %)**5**|=(% style="background-color:#4F81BD;color:white" %)**1**
1089 |Value|Software Type|(((
1090 Frequency
1091 Band
1092 )))|Sub-band|(((
1093 Firmware
1094 Version
1095 )))|Sensor Type|Reserve|(((
1096 [[Message Type>>||anchor="H2.3.7A0MessageType"]]
1097 Always 0x02
1098 )))
1099
1100 (% style="color:#037691" %)**Software Type**(%%): Always 0x03 for LLDS40
1101
1102 (% style="color:#037691" %)**Frequency Band**:
1103
1104 *0x01: EU868
1105
1106 *0x02: US915
1107
1108 *0x03: IN865
1109
1110 *0x04: AU915
1111
1112 *0x05: KZ865
1113
1114 *0x06: RU864
1115
1116 *0x07: AS923
1117
1118 *0x08: AS923-1
1119
1120 *0x09: AS923-2
1121
1122 *0xa0: AS923-3
1123
1124
1125 (% style="color:#037691" %)**Sub-Band**(%%): value 0x00 ~~ 0x08
1126
1127 (% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
1128
1129 (% style="color:#037691" %)**Sensor Type**:
1130
1131 0x01: LSE01
1132
1133 0x02: LDDS75
1134
1135 0x03: LDDS20
1136
1137 0x04: LLMS01
1138
1139 0x05: LSPH01
1140
1141 0x06: LSNPK01
1142
1143 0x07: LLDS40
1144
1145
1146 = 5. Battery & Power Consumption =
1147
1148
1149 LLDS40 uses ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
1150
1151 [[**Battery Info & Power Consumption Analyze**>>url:http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
1152
1153
1154 = 6.  Use AT Command =
1155
1156 == 6.1  Access AT Commands ==
1157
1158
1159 LLDS40 supports AT Command set in the stock firmware. You can use a USB to TTL adapter to connect to LLDS40 for using AT command, as below.
1160
1161
1162 [[image:1654593668970-604.png]]
1163
1164
1165 **Connection:**
1166
1167 (% style="background-color:yellow" %)** USB TTL GND <~-~-~-~-> GND**
1168
1169 (% style="background-color:yellow" %)** USB TTL TXD  <~-~-~-~-> UART_RXD**
1170
1171 (% style="background-color:yellow" %)** USB TTL RXD  <~-~-~-~-> UART_TXD**
1172
1173
1174 (((
1175 (((
1176 In the PC, you need to set the serial baud rate to (% style="color:green" %)**9600**(%%) to access the serial console for LLDS40.
1177 )))
1178
1179 (((
1180 LLDS40 will output system info once power on as below:
1181 )))
1182 )))
1183
1184
1185 [[image:1654593712276-618.png]]
1186
1187 Valid AT Command please check [[Configure Device>>||anchor="H4.A0ConfigureLLDS40viaATCommandorLoRaWANDownlink"]].
1188
1189
1190 = 7.  FAQ =
1191
1192 == 7.1  How to change the LoRa Frequency Bands/Region ==
1193
1194
1195 You can follow the instructions for [[how to upgrade image>>||anchor="H2.8A0200BFirmwareChangeLog"]].
1196 When downloading the images, choose the required image file for download. ​
1197
1198
1199 = 8.  Trouble Shooting =
1200
1201 == 8.1  AT Commands input doesn't work ==
1202
1203
1204 (((
1205 In the case if user can see the console output but can't type input to the device. Please check if you already include the (% style="color:green" %)**ENTER**(%%) while sending out the command. Some serial tool doesn't send (% style="color:green" %)**ENTER**(%%) while press the send key, user need to add ENTER in their string.
1206 )))
1207
1208
1209 == 8.2  Significant error between the output distance value of LiDAR and the actual distance ==
1210
1211
1212 (((
1213 (% style="color:blue" %)**Cause ①**(%%)**:**Due to the physical principles of The LiDAR probe, the above phenomenon is likely to occur if the detection object is the material with high reflectivity (such as mirror, smooth floor tile, etc.) or transparent substance (such as glass and water, etc.)
1214 )))
1215
1216 (((
1217 Troubleshooting: Please avoid use of this product under such circumstance in practice.
1218 )))
1219
1220 (((
1221
1222 )))
1223
1224 (((
1225 (% style="color:blue" %)**Cause ②**(%%)**: **The IR-pass filters are blocked.
1226 )))
1227
1228 (((
1229 Troubleshooting: please use dry dust-free cloth to gently remove the foreign matter.
1230 )))
1231
1232
1233 == 5.3 Possible reasons why the device is unresponsive: ==
1234
1235
1236 ​1. Check whether the battery voltage is lower than 2.8V
1237 2. Check whether the jumper of the device is correctly connected
1238
1239 [[image:image-20240330180031-2.png]]
1240 3. Check whether the switch here of the device is at the ISP(The switch can operate normally only when it is in RUN)
1241
1242
1243 [[image:image-20240330180000-1.png]]
1244
1245 = 9.  Order Info =
1246
1247
1248 Part Number: (% style="color:blue" %)**LLDS40-XX**
1249
1250 (% style="color:blue" %)**XX**(%%): The default frequency band
1251
1252 * (% style="color:red" %)**AS923**(%%):  LoRaWAN AS923 band
1253 * (% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band
1254 * (% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band
1255 * (% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band
1256 * (% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band
1257 * (% style="color:red" %)**US915**(%%): LoRaWAN US915 band
1258 * (% style="color:red" %)**IN865**(%%):  LoRaWAN IN865 band
1259 * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
1260
1261 = 10. ​ Packing Info =
1262
1263
1264 **Package Includes**:
1265
1266 * LLDS40 LoRaWAN LiDAR Distance Sensor x 1
1267
1268 **Dimension and weight**:
1269
1270 * Device Size: cm
1271 * Device Weight: g
1272 * Package Size / pcs : cm
1273 * Weight / pcs : g
1274
1275 = 11.  ​Support =
1276
1277
1278 * Support is provided Monday to Friday, from 09:00 to 18:00 GMT+8. Due to different timezones we cannot offer live support. However, your questions will be answered as soon as possible in the before-mentioned schedule.
1279 * Provide as much information as possible regarding your enquiry (product models, accurately describe your problem and steps to replicate it etc) and send a mail to [[support@dragino.com>>url:http://../../../../../../D:%5C%E5%B8%82%E5%9C%BA%E8%B5%84%E6%96%99%5C%E8%AF%B4%E6%98%8E%E4%B9%A6%5CLoRa%5CLT%E7%B3%BB%E5%88%97%5Csupport@dragino.com]].
1280
1281