Show last authors
1 (% style="text-align:center" %)
2 [[image:image-20221028115319-1.jpeg||height="574" width="574"]]
3
4
5
6
7
8
9 **Table of Contents:**
10
11 {{toc/}}
12
13
14
15 = 1.  Introduction =
16
17
18 == 1.1 ​ What is LoRaWAN LiDAR ToF Distance Sensor ==
19
20
21 (((
22 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.
23 )))
24
25 (((
26 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.
27 )))
28
29 (((
30 It detects the distance between the measured object and the sensor, and uploads the value via wireless to LoRaWAN IoT Server.
31 )))
32
33 (((
34 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.
35 )))
36
37 (((
38 LLDS40 is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long term use up to 5 years.
39 )))
40
41 (((
42 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.
43 )))
44
45
46 [[image:image-20221028172142-1.png]]
47
48
49
50 == ​1.2  Features ==
51
52
53 * LoRaWAN 1.0.3 Class A
54 * Ultra-low power consumption
55 * Laser technology for distance detection
56 * Measure Distance: 0.1m ~~ 40m @ 90% Reflectivity
57 * Monitor Battery Level
58 * Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865
59 * AT Commands to change parameters
60 * Uplink on periodically
61 * Downlink to change configure
62 * 8500mAh Battery for long-term use
63
64
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
84
85 == 1.4  Probe Dimension ==
86
87
88 [[image:1666948963951-832.png]]
89
90
91
92 == 1.5 ​ Applications ==
93
94
95 * Horizontal distance measurement
96 * Oil Tank
97 * Object proximity and presence detection
98 * Intelligent trash can management system
99 * Robot obstacle avoidance
100 * Automatic control
101 * Sewer
102
103
104
105 == 1.6  Pin mapping and power on ==
106
107
108 [[image:1654827332142-133.png]]
109
110
111
112 = 2.  Configure LLDS40 to connect to LoRaWAN network =
113
114
115 == 2.1  How it works ==
116
117
118 (((
119 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.
120 )))
121
122 (((
123 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.
124 )))
125
126
127
128 == 2.2  ​Quick guide to connect to LoRaWAN server (OTAA) ==
129
130
131 (((
132 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.
133 )))
134
135 (((
136 [[image:image-20221028172204-2.png]]
137 )))
138
139 (((
140 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.
141 )))
142
143 (((
144
145
146 (% style="color:blue" %)**Step 1**(%%): Create a device in TTN with the OTAA keys from LLDS40.
147 )))
148
149 (((
150 Each LLDS40 is shipped with a sticker with the default device EUI as below:
151 )))
152
153 [[image:image-20220607170145-1.jpeg]]
154
155
156
157 You can enter this key in the LoRaWAN Server portal. Below is TTN screenshot:
158
159
160 **Register the device**
161
162
163 [[image:1654592600093-601.png]]
164
165
166
167 **Add APP EUI and DEV EUI**
168
169 [[image:1654592619856-881.png]]
170
171
172
173 **Add APP EUI in the application**
174
175 [[image:1654592632656-512.png]]
176
177
178
179 **Add APP KEY**
180
181 [[image:1654592653453-934.png]]
182
183
184 (% style="color:blue" %)**Step 2**(%%): Power on LLDS40
185
186
187 Put a Jumper on JP2 to power on the device. ( The Switch must be in FLASH position).
188
189
190 [[image:image-20220607170442-2.png]]
191
192
193 (((
194 (% style="color:blue" %)**Step 3**(%%)**:** 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.
195
196
197 )))
198
199 [[image:1666949054603-397.png]]
200
201
202
203 == 2.3  ​Uplink Payload ==
204
205
206 (((
207 LLDS40 will uplink payload via LoRaWAN with below payload format: 
208 )))
209
210 (((
211 Uplink payload includes in total 11 bytes.
212 )))
213
214 (((
215
216 )))
217
218 (% border="1" cellspacing="10" style="background-color:#ffffcc; width:510px" %)
219 |=(% style="width: 62.5px;" %)(((
220 **Size(bytes)**
221 )))|=(% style="width: 62.5px;" %)**2**|=(% style="width: 62.5px;" %)**2**|=**2**|=**2**|=**1**|=**1**|=**1**
222 |(% style="width:62.5px" %)**Value**|(% style="width:62.5px" %)[[BAT>>||anchor="H2.3.1A0BatteryInfo"]]|(% style="width:62.5px" %)(((
223 [[Temperature DS18B20>>||anchor="H2.3.2A0DS18B20Temperaturesensor"]]
224 )))|[[Distance>>||anchor="H2.3.3A0Distance"]]|[[Distance signal strength>>||anchor="H2.3.4A0Distancesignalstrength"]]|(((
225 [[Interrupt flag>>||anchor="H2.3.5A0InterruptPin"]]
226 )))|[[LiDAR temp>>||anchor="H2.3.6A0LiDARtemp"]]|(((
227 [[Message Type>>||anchor="H2.3.7A0MessageType"]]
228 )))
229
230 [[image:1666949060416-681.png]]
231
232
233
234 === 2.3.1  Battery Info ===
235
236
237 Check the battery voltage for LLDS40.
238
239 Ex1: 0x0B45 = 2885mV
240
241 Ex2: 0x0B49 = 2889mV
242
243
244
245 === 2.3.2  DS18B20 Temperature sensor ===
246
247
248 This is optional, user can connect external DS18B20 sensor to the **+3.3v, 1-wire and GND** pin . and this field will report the temperature.
249
250
251 **Example**:
252
253 If payload is: 0105H:  (0105 & FC00 == 0), temp = 0105H /10 = 26.1 degree
254
255 If payload is: FF3FH :  (FF3F & FC00 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
256
257
258
259 === 2.3.3  Distance ===
260
261
262 Indicates the distance value measured by the LLDS40. The default unit is cm and the range is 0-4000.
263
264
265 **Example**:
266
267 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.
268
269
270
271 === 2.3.4  Distance signal strength ===
272
273
274 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.
275
276 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.
277
278
279 **Example**:
280
281 If payload is: 01D7(H)=471(D), distance signal strength=471, 471>100,471≠65535, the measured value of Dist is considered credible.
282
283 Customers can judge whether they need to adjust the environment based on the signal strength.
284
285
286 **1) When the sensor detects valid data:**
287
288
289 [[image:image-20221028172727-3.png||height="231" width="1178"]]
290
291
292
293 **2) When the sensor detects invalid data:**
294
295
296 [[image:image-20221028172727-4.png||height="232" width="1183"]]
297
298
299
300 **3) When the sensor is not connected:**
301
302
303 [[image:image-20221028172727-5.png||height="220" width="1181"]]
304
305
306
307 === 2.3.5  Interrupt Pin ===
308
309
310 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.
311
312 (% style="color:red" %)**Note:**(%%) The Internet Pin is a separate pin in the screw terminal. See [[pin mapping>>||anchor="H1.6A0Pinmappingandpoweron"]].
313
314 **Example:**
315
316 0x00: Normal uplink packet.
317
318 0x01: Interrupt Uplink Packet.
319
320
321
322 === 2.3.6  LiDAR temp ===
323
324
325 Characterize the internal temperature value of the sensor.
326
327 **Example: **
328 If payload is: 1C(H) <<24>>24=28(D),LiDAR temp=28℃.
329 If payload is: F2(H) <<24>>24=-14(D),LiDAR temp=-14℃.
330
331
332
333 === 2.3.7  Message Type ===
334
335
336 (((
337 For a normal uplink payload, the message type is always 0x01.
338 )))
339
340 (((
341 Valid Message Type:
342 )))
343
344
345 (% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:499px" %)
346 |=(% style="width: 160px;" %)**Message Type Code**|=(% style="width: 163px;" %)**Description**|=(% style="width: 173px;" %)**Payload**
347 |(% style="width:160px" %)0x01|(% style="width:163px" %)Normal Uplink|(% style="width:173px" %)[[Normal Uplink Payload>>||anchor="H2.3A0200BUplinkPayload"]]
348 |(% style="width:160px" %)0x02|(% style="width:163px" %)Reply configures info|(% style="width:173px" %)[[Configure Info Payload>>||anchor="H4.3A0GetFirmwareVersionInfo"]]
349
350
351
352 === 2.3.8  Decode payload in The Things Network ===
353
354
355 While using TTN network, you can add the payload format to decode the payload.
356
357
358 [[image:1654592762713-715.png]]
359
360
361 (((
362 The payload decoder function for TTN is here:
363 )))
364
365 (((
366 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]]
367 )))
368
369
370
371 == 2.4  Uplink Interval ==
372
373
374 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"]]
375
376
377
378 == 2.5  ​Show Data in DataCake IoT Server ==
379
380
381 (((
382 [[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:
383 )))
384
385 (((
386
387 )))
388
389 (((
390 (% style="color:blue" %)**Step 1**(%%)**: Be sure that your device is programmed and properly connected to the network at this time.**
391 )))
392
393 (((
394 (% 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:**
395 )))
396
397
398 [[image:1654592790040-760.png]]
399
400
401 [[image:1654592800389-571.png]]
402
403
404 (% style="color:blue" %)**Step 3**(%%)**: Create an account or log in Datacake.**
405
406 (% style="color:blue" %)**Step 4**(%%)**: Create LLDS40 product.**
407
408 [[image:1654832691989-514.png]]
409
410
411 [[image:1654592833877-762.png]]
412
413
414 [[image:1654832740634-933.png]]
415
416
417
418 (((
419 (% style="color:blue" %)**Step 5**(%%)**: add payload decode**
420 )))
421
422 (((
423
424 )))
425
426 [[image:1654833065139-942.png]]
427
428
429
430 [[image:1654833092678-390.png]]
431
432
433
434 After added, the sensor data arrive TTN, it will also arrive and show in Datacake.
435
436 [[image:1654833163048-332.png]]
437
438
439
440 == 2.6  Frequency Plans ==
441
442
443 (((
444 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.
445 )))
446
447
448
449 === 2.6.1  EU863-870 (EU868) ===
450
451
452 (((
453 (% style="color:blue" %)**Uplink:**
454 )))
455
456 (((
457 868.1 - SF7BW125 to SF12BW125
458 )))
459
460 (((
461 868.3 - SF7BW125 to SF12BW125 and SF7BW250
462 )))
463
464 (((
465 868.5 - SF7BW125 to SF12BW125
466 )))
467
468 (((
469 867.1 - SF7BW125 to SF12BW125
470 )))
471
472 (((
473 867.3 - SF7BW125 to SF12BW125
474 )))
475
476 (((
477 867.5 - SF7BW125 to SF12BW125
478 )))
479
480 (((
481 867.7 - SF7BW125 to SF12BW125
482 )))
483
484 (((
485 867.9 - SF7BW125 to SF12BW125
486 )))
487
488 (((
489 868.8 - FSK
490 )))
491
492 (((
493
494 )))
495
496 (((
497 (% style="color:blue" %)**Downlink:**
498 )))
499
500 (((
501 Uplink channels 1-9 (RX1)
502 )))
503
504 (((
505 869.525 - SF9BW125 (RX2 downlink only)
506 )))
507
508
509
510 === 2.6.2  US902-928(US915) ===
511
512
513 (((
514 Used in USA, Canada and South America. Frequency band as per definition in LoRaWAN 1.0.3 Regional document.
515 )))
516
517 (((
518 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.
519 )))
520
521 (((
522 After Join success, the end node will switch to the correct sub band by:
523 )))
524
525 * Check what sub-band the LoRaWAN server ask from the OTAA Join Accept message and switch to that sub-band
526 * 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)
527
528
529
530 === 2.6.3  CN470-510 (CN470) ===
531
532
533 (((
534 Used in China, Default use CHE=1
535 )))
536
537 (((
538 (% style="color:blue" %)**Uplink:**
539 )))
540
541 (((
542 486.3 - SF7BW125 to SF12BW125
543 )))
544
545 (((
546 486.5 - SF7BW125 to SF12BW125
547 )))
548
549 (((
550 486.7 - SF7BW125 to SF12BW125
551 )))
552
553 (((
554 486.9 - SF7BW125 to SF12BW125
555 )))
556
557 (((
558 487.1 - SF7BW125 to SF12BW125
559 )))
560
561 (((
562 487.3 - SF7BW125 to SF12BW125
563 )))
564
565 (((
566 487.5 - SF7BW125 to SF12BW125
567 )))
568
569 (((
570 487.7 - SF7BW125 to SF12BW125
571 )))
572
573 (((
574
575 )))
576
577 (((
578 (% style="color:blue" %)**Downlink:**
579 )))
580
581 (((
582 506.7 - SF7BW125 to SF12BW125
583 )))
584
585 (((
586 506.9 - SF7BW125 to SF12BW125
587 )))
588
589 (((
590 507.1 - SF7BW125 to SF12BW125
591 )))
592
593 (((
594 507.3 - SF7BW125 to SF12BW125
595 )))
596
597 (((
598 507.5 - SF7BW125 to SF12BW125
599 )))
600
601 (((
602 507.7 - SF7BW125 to SF12BW125
603 )))
604
605 (((
606 507.9 - SF7BW125 to SF12BW125
607 )))
608
609 (((
610 508.1 - SF7BW125 to SF12BW125
611 )))
612
613 (((
614 505.3 - SF12BW125 (RX2 downlink only)
615 )))
616
617
618
619 === 2.6.4  AU915-928(AU915) ===
620
621
622 (((
623 Frequency band as per definition in LoRaWAN 1.0.3 Regional document.
624 )))
625
626 (((
627 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.
628 )))
629
630 (((
631
632 )))
633
634 (((
635 After Join success, the end node will switch to the correct sub band by:
636 )))
637
638 * Check what sub-band the LoRaWAN server ask from the OTAA Join Accept message and switch to that sub-band
639 * 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)
640
641
642
643 === 2.6.5  AS920-923 & AS923-925 (AS923) ===
644
645
646 (((
647 (% style="color:blue" %)**Default Uplink channel:**
648 )))
649
650 (((
651 923.2 - SF7BW125 to SF10BW125
652 )))
653
654 (((
655 923.4 - SF7BW125 to SF10BW125
656 )))
657
658 (((
659
660 )))
661
662 (((
663 (% style="color:blue" %)**Additional Uplink Channel**:
664 )))
665
666 (((
667 (OTAA mode, channel added by JoinAccept message)
668 )))
669
670 (((
671
672 )))
673
674 (((
675 (% style="color:blue" %)**AS920~~AS923 for Japan, Malaysia, Singapore**:
676 )))
677
678 (((
679 922.2 - SF7BW125 to SF10BW125
680 )))
681
682 (((
683 922.4 - SF7BW125 to SF10BW125
684 )))
685
686 (((
687 922.6 - SF7BW125 to SF10BW125
688 )))
689
690 (((
691 922.8 - SF7BW125 to SF10BW125
692 )))
693
694 (((
695 923.0 - SF7BW125 to SF10BW125
696 )))
697
698 (((
699 922.0 - SF7BW125 to SF10BW125
700 )))
701
702 (((
703
704 )))
705
706 (((
707 (% style="color:blue" %)**AS923 ~~ AS925 for Brunei, Cambodia, Hong Kong, Indonesia, Laos, Taiwan, Thailand, Vietnam**:
708 )))
709
710 (((
711 923.6 - SF7BW125 to SF10BW125
712 )))
713
714 (((
715 923.8 - SF7BW125 to SF10BW125
716 )))
717
718 (((
719 924.0 - SF7BW125 to SF10BW125
720 )))
721
722 (((
723 924.2 - SF7BW125 to SF10BW125
724 )))
725
726 (((
727 924.4 - SF7BW125 to SF10BW125
728 )))
729
730 (((
731 924.6 - SF7BW125 to SF10BW125
732 )))
733
734 (((
735
736 )))
737
738 (((
739 (% style="color:blue" %)**Downlink:**
740 )))
741
742 (((
743 Uplink channels 1-8 (RX1)
744 )))
745
746 (((
747 923.2 - SF10BW125 (RX2)
748 )))
749
750
751
752 === 2.6.6  KR920-923 (KR920) ===
753
754
755 (((
756 (% style="color:blue" %)**Default channel:**
757 )))
758
759 (((
760 922.1 - SF7BW125 to SF12BW125
761 )))
762
763 (((
764 922.3 - SF7BW125 to SF12BW125
765 )))
766
767 (((
768 922.5 - SF7BW125 to SF12BW125
769 )))
770
771 (((
772
773 )))
774
775 (((
776 (% style="color:blue" %)**Uplink: (OTAA mode, channel added by JoinAccept message)**
777 )))
778
779 (((
780 922.1 - SF7BW125 to SF12BW125
781 )))
782
783 (((
784 922.3 - SF7BW125 to SF12BW125
785 )))
786
787 (((
788 922.5 - SF7BW125 to SF12BW125
789 )))
790
791 (((
792 922.7 - SF7BW125 to SF12BW125
793 )))
794
795 (((
796 922.9 - SF7BW125 to SF12BW125
797 )))
798
799 (((
800 923.1 - SF7BW125 to SF12BW125
801 )))
802
803 (((
804 923.3 - SF7BW125 to SF12BW125
805 )))
806
807 (((
808
809 )))
810
811 (((
812 (% style="color:blue" %)**Downlink:**
813 )))
814
815 (((
816 Uplink channels 1-7(RX1)
817 )))
818
819 (((
820 921.9 - SF12BW125 (RX2 downlink only; SF12BW125 might be changed to SF9BW125)
821 )))
822
823
824
825 === 2.6.7  IN865-867 (IN865) ===
826
827
828 (((
829 (% style="color:blue" %)**Uplink:**
830 )))
831
832 (((
833 865.0625 - SF7BW125 to SF12BW125
834 )))
835
836 (((
837 865.4025 - SF7BW125 to SF12BW125
838 )))
839
840 (((
841 865.9850 - SF7BW125 to SF12BW125
842 )))
843
844 (((
845
846 )))
847
848 (((
849 (% style="color:blue" %)**Downlink:**
850 )))
851
852 (((
853 Uplink channels 1-3 (RX1)
854 )))
855
856 (((
857 866.550 - SF10BW125 (RX2)
858 )))
859
860
861
862 == 2.7  LED Indicator ==
863
864
865 The LLDS40 has an internal LED which is to show the status of different state.
866
867 * The sensor is detected when the device is turned on, and it will flash 4 times quickly when it is detected.
868 * Blink once when device transmits a packet.
869
870
871
872 == 2.8  ​Firmware Change Log ==
873
874
875 **Firmware download link:  **[[https:~~/~~/www.dropbox.com/sh/zjrobt4eb6tju89/AADPX7jC7mLN2dlvV-Miz3nFa?dl=0>>https://www.dropbox.com/sh/zjrobt4eb6tju89/AADPX7jC7mLN2dlvV-Miz3nFa?dl=0]]
876
877 **Firmware Upgrade Method: **[[Firmware Upgrade Instruction>>doc:Main.Firmware Upgrade Instruction for STM32 base products.WebHome]]
878
879
880
881 = 3.  LiDAR ToF Measurement =
882
883
884 == 3.1 Principle of Distance Measurement ==
885
886
887 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.
888
889
890 [[image:1654831757579-263.png]]
891
892
893
894 == 3.2 Distance Measurement Characteristics ==
895
896
897 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.
898
899
900 (% border="1" cellspacing="5" style="background-color:#ffffcc; color:green; width:510px" %)
901 |=(% scope="row" 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
902 |=(% 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
903
904 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.
905
906
907
908 == 3.3 Notice of usage: ==
909
910
911 Possible invalid /wrong reading for LiDAR ToF tech:
912
913 * Measure high reflectivity object such as: Mirror, Smooth ceramic tile, static milk surface, will have possible wrong readings.
914 * While there is transparent object such as glass, water drop between the measured object and the LiDAR sensor, the reading might be wrong.
915 * The LiDAR probe is cover by dirty things; the reading might be wrong. In this case, need to clean the probe.
916 * The sensor window is made by Acrylic. Don't touch it with alcohol material. This will destroy the sensor window.
917
918
919
920 == 3.4  Reflectivity of different objects: ==
921
922
923 (% border="1" cellspacing="4" style="background-color:#ffffcc; color:green; width:379px" %)
924 |=(% style="width: 53px;" %)Item|=(% style="width: 229px;" %)Material|=(% style="width: 93px;" %)Relectivity
925 |(% style="width:53px" %)1|(% style="width:229px" %)Black foam rubber|(% style="width:93px" %)2.4%
926 |(% style="width:53px" %)2|(% style="width:229px" %)Black fabric|(% style="width:93px" %)3%
927 |(% style="width:53px" %)3|(% style="width:229px" %)Black rubber|(% style="width:93px" %)4%
928 |(% style="width:53px" %)4|(% style="width:229px" %)Coal (different types of coal)|(% style="width:93px" %)4~~8%
929 |(% style="width:53px" %)5|(% style="width:229px" %)Black car paint|(% style="width:93px" %)5%
930 |(% style="width:53px" %)6|(% style="width:229px" %)Black Jam|(% style="width:93px" %)10%
931 |(% style="width:53px" %)7|(% style="width:229px" %)Opaque black plastic|(% style="width:93px" %)14%
932 |(% style="width:53px" %)8|(% style="width:229px" %)Clean rough board|(% style="width:93px" %)20%
933 |(% style="width:53px" %)9|(% style="width:229px" %)Translucent plastic bottle|(% style="width:93px" %)62%
934 |(% style="width:53px" %)10|(% style="width:229px" %)Carton cardboard|(% style="width:93px" %)68%
935 |(% style="width:53px" %)11|(% style="width:229px" %)Clean pine|(% style="width:93px" %)70%
936 |(% style="width:53px" %)12|(% style="width:229px" %)Opaque white plastic|(% style="width:93px" %)87%
937 |(% style="width:53px" %)13|(% style="width:229px" %)White Jam|(% style="width:93px" %)90%
938 |(% style="width:53px" %)14|(% style="width:229px" %)Kodak Standard Whiteboard|(% style="width:93px" %)100%
939 |(% style="width:53px" %)15|(% style="width:229px" %)(((
940 Unpolished white metal surface
941 )))|(% style="width:93px" %)130%
942 |(% style="width:53px" %)16|(% style="width:229px" %)Glossy light metal surface|(% style="width:93px" %)150%
943 |(% style="width:53px" %)17|(% style="width:229px" %)stainless steel|(% style="width:93px" %)200%
944 |(% style="width:53px" %)18|(% style="width:229px" %)Reflector plate, reflective tape|(% style="width:93px" %)>300%
945
946
947
948 = 4.  Configure LLDS40 via AT Command or LoRaWAN Downlink =
949
950
951 Use can configure LLDS40 via AT Command or LoRaWAN Downlink.
952
953 * (((
954 (((
955 AT Command Connection: See [[FAQ>>||anchor="H7.A0FAQ"]].
956 )))
957 )))
958 * (((
959 (((
960 LoRaWAN Downlink instruction for different platforms: [[IoT LoRaWAN Server>>doc:Main.WebHome]]
961 )))
962 )))
963
964 (((
965 (((
966
967 )))
968
969 (((
970 There are two kinds of commands to configure LLDS40, they are:
971 )))
972 )))
973
974 * (((
975 (((
976 (% style="color:#4f81bd" %)** General Commands**.
977 )))
978 )))
979
980 (((
981 (((
982 These commands are to configure:
983 )))
984 )))
985
986 * (((
987 (((
988 General system settings like: uplink interval.
989 )))
990 )))
991 * (((
992 (((
993 LoRaWAN protocol & radio related command.
994 )))
995 )))
996
997 (((
998 (((
999 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]]
1000 )))
1001 )))
1002
1003 (((
1004 (((
1005
1006 )))
1007 )))
1008
1009 * (((
1010 (((
1011 (% style="color:#4f81bd" %)** Commands special design for LLDS40**
1012 )))
1013 )))
1014
1015 (((
1016 (((
1017 These commands only valid for LLDS40, as below:
1018 )))
1019 )))
1020
1021
1022
1023 == 4.1  Set Transmit Interval Time ==
1024
1025
1026 Feature: Change LoRaWAN End Node Transmit Interval.
1027
1028 (% style="color:#037691" %)**AT Command: AT+TDC**
1029
1030 [[image:image-20220607171554-8.png]]
1031
1032
1033 (((
1034 (% style="color:#037691" %)**Downlink Command: 0x01**
1035 )))
1036
1037 (((
1038 Format: Command Code (0x01) followed by 3 bytes time value.
1039 )))
1040
1041 (((
1042 If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01.
1043 )))
1044
1045 * (((
1046 Example 1: Downlink Payload: 0100001E  ~/~/ Set Transmit Interval (TDC) = 30 seconds
1047 )))
1048 * (((
1049 Example 2: Downlink Payload: 0100003C  ~/~/ Set Transmit Interval (TDC) = 60 seconds
1050
1051
1052
1053
1054 )))
1055
1056 == 4.2  Set Interrupt Mode ==
1057
1058
1059 Feature, Set Interrupt mode for GPIO_EXIT.
1060
1061 (% style="color:#037691" %)**AT Command: AT+INTMOD**
1062
1063 [[image:image-20220610105806-2.png]]
1064
1065
1066 (((
1067 (% style="color:#037691" %)**Downlink Command: 0x06**
1068 )))
1069
1070 (((
1071 Format: Command Code (0x06) followed by 3 bytes.
1072 )))
1073
1074 (((
1075 This means that the interrupt mode of the end node is set to 0x000003=3 (rising edge trigger), and the type code is 06.
1076 )))
1077
1078 * (((
1079 Example 1: Downlink Payload: 06000000  ~/~/ Turn off interrupt mode
1080 )))
1081 * (((
1082 Example 2: Downlink Payload: 06000003  ~/~/ Set the interrupt mode to rising edge trigger
1083
1084
1085
1086
1087 )))
1088
1089 == 4.3  Get Firmware Version Info ==
1090
1091
1092 Feature: use downlink to get firmware version.
1093
1094 (% style="color:#037691" %)**Downlink Command: 0x26**
1095
1096 [[image:image-20220607171917-10.png]]
1097
1098 * Reply to the confirmation package: 26 01
1099 * Reply to non-confirmed packet: 26 00
1100
1101 Device will send an uplink after got this downlink command. With below payload:
1102
1103 Configures info payload:
1104
1105 (% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %)
1106 |=(((
1107 **Size(bytes)**
1108 )))|=**1**|=**1**|=**1**|=**1**|=**1**|=**5**|=**1**
1109 |**Value**|Software Type|(((
1110 Frequency
1111 Band
1112 )))|Sub-band|(((
1113 Firmware
1114 Version
1115 )))|Sensor Type|Reserve|(((
1116 [[Message Type>>||anchor="H2.3.7A0MessageType"]]
1117 Always 0x02
1118 )))
1119
1120 (% style="color:#037691" %)**Software Type**(%%): Always 0x03 for LLDS40
1121
1122
1123 (% style="color:#037691" %)**Frequency Band**:
1124
1125 *0x01: EU868
1126
1127 *0x02: US915
1128
1129 *0x03: IN865
1130
1131 *0x04: AU915
1132
1133 *0x05: KZ865
1134
1135 *0x06: RU864
1136
1137 *0x07: AS923
1138
1139 *0x08: AS923-1
1140
1141 *0x09: AS923-2
1142
1143 *0xa0: AS923-3
1144
1145
1146 (% style="color:#037691" %)**Sub-Band**(%%): value 0x00 ~~ 0x08
1147
1148
1149 (% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
1150
1151
1152 (% style="color:#037691" %)**Sensor Type**:
1153
1154 0x01: LSE01
1155
1156 0x02: LDDS75
1157
1158 0x03: LDDS20
1159
1160 0x04: LLMS01
1161
1162 0x05: LSPH01
1163
1164 0x06: LSNPK01
1165
1166 0x07: LLDS40
1167
1168
1169
1170 = 5.  Battery & How to replace =
1171
1172
1173 == 5.1  Battery Type ==
1174
1175
1176 (((
1177 LLDS40 is equipped with a [[8500mAH ER26500 Li-SOCI2 battery>>url:https://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]. The battery is un-rechargeable battery with low discharge rate targeting for 8~~10 years use. This type of battery is commonly used in IoT target for long-term running, such as water meter.
1178 )))
1179
1180 (((
1181 The discharge curve is not linear so can't simply use percentage to show the battery level. Below is the battery performance.
1182
1183
1184 )))
1185
1186 [[image:1654593587246-335.png]]
1187
1188
1189 Minimum Working Voltage for the LLDS40:
1190
1191 LLDS40:  2.45v ~~ 3.6v
1192
1193
1194
1195 == 5.2  Replace Battery ==
1196
1197
1198 (((
1199 Any battery with range 2.45 ~~ 3.6v can be a replacement. We recommend to use Li-SOCl2 Battery.
1200 )))
1201
1202 (((
1203 And make sure the positive and negative pins match.
1204 )))
1205
1206
1207
1208 == 5.3  Power Consumption Analyze ==
1209
1210
1211 (((
1212 Dragino Battery powered product are all runs in Low Power mode. We have an update battery calculator which base on the measurement of the real device. User can use this calculator to check the battery life and calculate the battery life if want to use different transmit interval.
1213 )))
1214
1215 (((
1216 Instruction to use as below:
1217 )))
1218
1219
1220 (% style="color:blue" %)**Step 1**(%%): Downlink the up-to-date DRAGINO_Battery_Life_Prediction_Table.xlsx from:
1221
1222 [[https:~~/~~/www.dragino.com/downloads/index.pHp?dir=LoRa_End_Node/Battery_Analyze/>>url:https://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/Battery_Analyze/]]
1223
1224
1225 (% style="color:blue" %)**Step 2**(%%): Open it and choose
1226
1227 * Product Model
1228 * Uplink Interval
1229 * Working Mode
1230
1231 And the Life expectation in difference case will be shown on the right.
1232
1233 [[image:1654593605679-189.png]]
1234
1235
1236 The battery related documents as below:
1237
1238 * (((
1239 [[Battery Dimension>>https://www.dragino.com/downloads/index.php?dir=datasheet/Battery/]],
1240 )))
1241 * (((
1242 [[Lithium-Thionyl Chloride Battery  datasheet>>url:https://www.dragino.com/downloads/downloads/datasheet/Battery/ER26500/ER26500_Datasheet-EN.pdf]],
1243 )))
1244 * (((
1245 [[Lithium-ion Battery-Capacitor datasheet>>https://www.dragino.com/downloads/index.php?dir=datasheet/Battery/]], [[Tech Spec>>https://www.dragino.com/downloads/index.php?dir=datasheet/Battery/]]
1246 )))
1247
1248 [[image:image-20220607172042-11.png]]
1249
1250
1251
1252 === 5.3.1  ​Battery Note ===
1253
1254
1255 (((
1256 The Li-SICO battery is designed for small current / long period application. It is not good to use a high current, short period transmit method. The recommended minimum period for use of this battery is 5 minutes. If you use a shorter period time to transmit LoRa, then the battery life may be decreased.
1257 )))
1258
1259
1260
1261 === ​5.3.2  Replace the battery ===
1262
1263
1264 (((
1265 You can change the battery in the LLDS40.The type of battery is not limited as long as the output is between 3v to 3.6v. On the main board, there is a diode (D1) between the battery and the main circuit. If you need to use a battery with less than 3.3v, please remove the D1 and shortcut the two pads of it so there won't be voltage drop between battery and main board.
1266 )))
1267
1268 (((
1269 The default battery pack of LLDS40 includes a ER26500 plus super capacitor. If user can't find this pack locally, they can find ER26500 or equivalence, which will also work in most case. The SPC can enlarge the battery life for high frequency use (update period below 5 minutes)
1270 )))
1271
1272
1273
1274 = 6.  Use AT Command =
1275
1276
1277 == 6.1  Access AT Commands ==
1278
1279
1280 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.
1281
1282
1283 [[image:1654593668970-604.png]]
1284
1285
1286 **Connection:**
1287
1288 (% style="background-color:yellow" %)** USB TTL GND <~-~-~-~-> GND**
1289
1290 (% style="background-color:yellow" %)** USB TTL TXD  <~-~-~-~-> UART_RXD**
1291
1292 (% style="background-color:yellow" %)** USB TTL RXD  <~-~-~-~-> UART_TXD**
1293
1294
1295 (((
1296 (((
1297 In the PC, you need to set the serial baud rate to (% style="color:green" %)**9600**(%%) to access the serial console for LLDS40.
1298 )))
1299
1300 (((
1301 LLDS40 will output system info once power on as below:
1302 )))
1303 )))
1304
1305
1306 [[image:1654593712276-618.png]]
1307
1308 Valid AT Command please check [[Configure Device>>||anchor="H4.A0ConfigureLLDS40viaATCommandorLoRaWANDownlink"]].
1309
1310
1311
1312 = 7.  FAQ =
1313
1314
1315 == 7.1  How to change the LoRa Frequency Bands/Region ==
1316
1317
1318 You can follow the instructions for [[how to upgrade image>>||anchor="H2.8A0200BFirmwareChangeLog"]].
1319 When downloading the images, choose the required image file for download. ​
1320
1321
1322
1323 = 8.  Trouble Shooting =
1324
1325
1326 == 8.1  AT Commands input doesn't work ==
1327
1328
1329
1330 (((
1331 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.
1332 )))
1333
1334
1335
1336 == 8.2  Significant error between the output distance value of LiDAR and the actual distance ==
1337
1338
1339 (((
1340 (% 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.)
1341 )))
1342
1343 (((
1344 Troubleshooting: Please avoid use of this product under such circumstance in practice.
1345 )))
1346
1347 (((
1348
1349 )))
1350
1351 (((
1352 (% style="color:blue" %)**Cause ②**(%%)**: **The IR-pass filters are blocked.
1353 )))
1354
1355 (((
1356 Troubleshooting: please use dry dust-free cloth to gently remove the foreign matter.
1357 )))
1358
1359
1360
1361 = 9.  Order Info =
1362
1363
1364 Part Number: (% style="color:blue" %)**LLDS40-XX**
1365
1366
1367 (% style="color:blue" %)**XX**(%%): The default frequency band
1368
1369 * (% style="color:red" %)**AS923**(%%):  LoRaWAN AS923 band
1370 * (% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band
1371 * (% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band
1372 * (% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band
1373 * (% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band
1374 * (% style="color:red" %)**US915**(%%): LoRaWAN US915 band
1375 * (% style="color:red" %)**IN865**(%%):  LoRaWAN IN865 band
1376 * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
1377
1378
1379
1380 = 10. ​ Packing Info =
1381
1382
1383 **Package Includes**:
1384
1385 * LLDS40 LoRaWAN LiDAR Distance Sensor x 1
1386
1387 **Dimension and weight**:
1388
1389 * Device Size: cm
1390 * Device Weight: g
1391 * Package Size / pcs : cm
1392 * Weight / pcs : g
1393
1394
1395
1396 = 11.  ​Support =
1397
1398
1399 * 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.
1400 * 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]].
Copyright ©2010-2024 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0