Show last authors
1 (% style="text-align:center" %)
2 [[image:1654679359875-169.png]]
3
4
5
6
7
8
9
10
11
12
13 **Table of Contents:**
14
15 {{toc/}}
16
17
18
19
20
21
22
23
24 = 1. Introduction =
25
26 == 1.1 What is LDS02 LoRaWAN Door Sensor ==
27
28
29 (((
30 (((
31 The Dragino LDS02 is a (% style="color:#037691" %)**LoRaWAN Door Sensor**(%%). It detects door open/close status and uplink to IoT server via LoRaWAN network. user can see the door status, open time, open counts in the IoT Server.
32 )))
33
34 (((
35 LDS02 is powered by (% style="color:#037691" %)**2 x AAA batteries**(%%) and target for long time use, these two batteries can provide about 16,000 ~~ 70,000 uplink packets. After battery running out, user can easily open the enclosure and replace with 2 common AAA batteries.
36 )))
37
38 (((
39 The LDS02 will send periodically data every day as well as for each door open/close action. It also (% style="color:#037691" %)**counts the door open times**(%%) and (% style="color:#037691" %)**calculate last door open duration**(%%). User can also disable the uplink for each open/close event, instead, device can count each open event and uplink periodically.
40 )))
41
42 (((
43 LDS02 has the (% style="color:#037691" %)**open alarm feature**(%%), user can set this feature so device will send Alarm if the door has been open for a certain time.
44 )))
45
46 (((
47 Each LDS02 is (% style="color:#037691" %)**pre-load with a set of unique keys**(%%) for LoRaWAN registration, register these keys to LoRaWAN server and it will auto connect after power on.
48
49
50 )))
51 )))
52
53 [[image:image-20220608171947-2.png]]
54
55
56 == 1.2 Features ==
57
58
59 * LoRaWAN Class A v1.0.3
60 * Frequency Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865/RU864
61 * SX1262 LoRa Core
62 * Water Leak detect
63 * 2 x AAA LR03 Batteries
64 * AT Commands to change parameters
65 * Uplink on periodically and open/close action
66 * Remote configure parameters via LoRa Downlink
67 * Firmware upgradable via program port
68
69
70 == 1.3 Applications ==
71
72
73 * Smart Buildings & Home Automation
74 * Logistics and Supply Chain Management
75 * Smart Metering
76 * Smart Agriculture
77 * Smart Cities
78 * Smart Factory
79
80
81 == 1.4 Dimension ==
82
83
84 Unit: mm
85
86 [[image:1654680563545-120.png]]
87
88
89 [[image:1654680510816-654.png]]
90
91
92 == 1.5 Firmware Change log ==
93
94
95 (((
96 (((
97 LDS02 use the same firmware as LDS01:[[LDS02 Image files – Download link>>https://www.dropbox.com/sh/9j35mnsxnz0y3ye/AACj5gHGOURGEHCpj-E861Mua?dl=0]]
98 )))
99 )))
100
101
102 = 2. Power ON LDS02 =
103
104
105 When receive the LDS02, please open the enclosure and add 2 x AAA batteries to power it. The [[LED>>||anchor="H4.7LEDs"]] will blink when device is powered.
106
107
108 = 3. How to install LDS02 =
109
110
111 (((
112 (((
113 When install the LDS02 on wall. Please make sure install as below so the marks will close to each other when close the door.
114 )))
115
116 (((
117 Open/Close threshold range: ~~ 10mm
118
119
120 )))
121 )))
122
123 [[image:1654680716522-793.png]]
124
125
126
127 = 4. Operation Mode =
128
129 == 4.1 How it works? ==
130
131
132 (((
133 The LDS02 is configured as LoRaWAN OTAA Class A mode by default. It has OTAA keys to join network. To connect a local LoRaWAN network, user just need to input the OTAA keys in the network server and [[power on>>||anchor="H2.PowerONLDS02"]] the LDS02. It will auto join the network via OTAA.
134 )))
135
136 (((
137 In case user can't set the OTAA keys in the network server and has to use the existing keys from server. User can [[use AT Command>>||anchor="H6.UseATCommand"]] to set the keys in the devices.
138 )))
139
140
141 == 4.2 Example to join LoRaWAN network ==
142
143
144 Here shows an example for how to join the [[TTN V3 Network>>url:https://eu1.cloud.thethings.network/]]. Below is the network structure, we use [[LG308>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/140-lg308.html]] as LoRaWAN gateway here. 
145
146 [[image:1654680810108-149.png]]
147
148
149 (((
150 The LDS02 in installed on the door edge to detect the open / close event. And send the status to LoRaWAN server. The LDS02 will uplink two type of messages to the server.
151 )))
152
153 * (((
154 A keep-alive message which send once per day.
155 )))
156 * (((
157 A door event message when there is a door open/close. ([[Alarm event can be disabled>>||anchor="H7.3CanIdisableuplinkforeacheventtosavebatterylife3F"]])
158 )))
159
160 (((
161
162
163 (((
164 The LG308 is already set to connect to [[TTN V3 network >>url:https://eu1.cloud.thethings.network/]]. What we need to now is only configure the TTN V3:
165
166
167 )))
168 )))
169
170 (((
171 (% style="color:blue" %)**Step 1**(%%): Create a device in TTN V3 with the OTAA keys from LDS02.
172 )))
173
174 (((
175 Each LDS02 is shipped with a sticker with unique device EUI:
176 )))
177
178 [[image:image-20230426084924-1.png||height="229" width="493"]]
179
180
181 User can enter this key in their LoRaWAN Server portal. Below is TTN V3 screen shot:
182
183
184 **Add APP EUI in the application**
185
186 [[image:1654671794691-956.png]]
187
188
189 [[image:1654671809850-574.png]]
190
191 [[image:1654671820156-640.png]]
192
193
194 [[image:1654681258096-500.png]]
195
196
197
198 **Add APP KEY and DEV EUI**
199
200 [[image:1654671889112-678.png]]
201
202
203
204 (((
205 (% style="color:blue" %)**Step 2**(%%):  **[[Power on>>||anchor="H2.PowerONLDS02"]]** LDS02 and it will auto join to the TTN V3 network. After join success, it will start to upload message to TTN V3 and user can see in the panel.
206 )))
207
208
209 [[image:1654681390551-993.png]]
210
211
212 == 4.3 Uplink Payload ==
213
214
215 Uplink Payload total 10 bytes.
216
217 (% border="1" cellspacing="5" style="background-color:#f2f2f2; width:480px" %)
218 |=(% style="width: 80px;background-color:#D9E2F3;color:#0070C0" %)**Size(bytes)**|=(% style="width: 80px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 80px;background-color:#D9E2F3;color:#0070C0" %)**1**|=(% style="width: 80px;background-color:#D9E2F3;color:#0070C0" %)**3**|=(% style="width: 80px;background-color:#D9E2F3;color:#0070C0" %)**3**|=(% style="width: 80px;background-color:#D9E2F3;color:#0070C0" %)**1**
219 |**value**|Status&BAT|(((
220 MOD
221 Always:0x01
222 )))|Total open door events|(((
223 Last door open
224 duration (unit: min)
225 )))|[[Alarm>>||anchor="H4.6AlarmBaseonTimeout"]]
226
227 **Example:**
228
229 [[image:1654681706301-731.png]]
230
231 [[image:1654681714641-440.png]]
232
233
234
235 (((
236 Example Payload Decoder in TTN V3: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]]
237
238 === 4.3.1 Battery Info ===
239
240 Check the battery voltage for LDS02.
241
242 Ex1: 0x0B88&3FFF = 2952mV
243
244 Ex2: 0xD152&3FFF = 4434mV
245
246 === 4.3.2 Status ===
247
248 Check the open door Status for LDS02.
249
250 **Example**:
251
252 If payload is: 0B:  (0000 1011&1000 0000== 0), DOOR_OPEN_STATUS is 0(CLOSE)
253
254 If payload is: D1: (1101 0001&1000 0000== 1) , DOOR_OPEN_STATUS is 1(OPEN)
255
256 === 4.3.3 MOD ===
257
258 Check the MOD
259
260 **Example:**
261
262 If payload is: 01:MOD is 1
263
264
265 === 4.3.4 Total open door events ===
266
267 Get Total open door events
268
269 **Example**:
270
271 If payload is: **00 00  93=** 147
272
273 If payload is: **00 00  00= **0
274
275
276 === 4.3.5 Last door open duration (unit: min) ===
277
278 Get Last door open duration
279
280 **Example:**
281
282 If payload is: **00 00  25=** 37
283
284 If payload is: **00 00  01= **1
285
286
287 === 4.3.6 Alarm ===
288
289 Get Alarm
290
291 **Example:**
292
293 If payload is: 01:  (0001 & 0001== 1), Alarm is 1
294
295 If payload is: 00:  (0000 & 0001== 0), Alarm is 0
296
297
298 )))
299
300 == 4.4 Downlink Payload ==
301
302
303 (% border="1" cellspacing="5" style="background-color:#f2f2f2; width:505px" %)
304 |=(% style="width: 182px;background-color:#D9E2F3;color:#0070C0" %)**Downlink Control Type**|=(% style="width: 96px;background-color:#D9E2F3;color:#0070C0" %)**Type Code**|=(% style="width: 227px;background-color:#D9E2F3;color:#0070C0" %)**Downlink payload size(bytes)**
305 |(% style="width:180px" %)TDC (Transmit Time Interval—Keep Alive Interval)|(% style="width:94px" %)0x01|(% style="width:226px" %)4
306 |(% style="width:180px" %)RESET|(% style="width:94px" %)0x04|(% style="width:226px" %)2
307 |(% style="width:180px" %)[[Set confirmed mode>>||anchor="HTypeCode0x05"]]|(% style="width:94px" %)0x05|(% style="width:226px" %)2
308 |(% style="width:180px" %)[[Clear Counting>>||anchor="HTypeCode0xA6"]]|(% style="width:94px" %)0xA6|(% style="width:226px" %)2
309 |(% style="width:180px" %)[[Enable/Disable Alarm>>||anchor="HTypeCode0xA7"]]|(% style="width:94px" %)0xA7|(% style="width:226px" %)2
310 |(% style="width:180px" %)[[Control ADR/DR>>||anchor="HTypeCode0xA8"]]|(% style="width:94px" %)0xA8|(% style="width:226px" %)3
311 |(% style="width:180px" %)[[Set Alarm Timeout>>||anchor="HTypeCode0xA9"]]|(% style="width:94px" %)0xA9|(% style="width:226px" %)4
312
313 Example Downlink payload setting in TTN V3:
314
315 [[image:1654673412319-976.png]]
316
317
318 === (% style="color:#037691" %)**Type Code 0x01**(%%) ===
319
320 If the payload=0100003C, means to control the LDS02’s Keep Alive interval to 0x00003C=60(S)
321
322
323 === (% style="color:#037691" %)**Type Code 0x04**(%%) ===
324
325 If payload = 0x04FF, it will reset the LDS02.
326
327
328 === (% style="color:#037691" %)**Type Code 0x05**(%%) ===
329
330 (((
331 0x05 00: Set uplink to LoRaWAN unconfirmed mode
332 )))
333
334 (((
335 0x05 01: Set uplink to LoRaWAN confirmed mode
336 )))
337
338
339 === (% style="color:#037691" %)**Type Code 0xA6**(%%) ===
340
341 (((
342 Example: 0xA601: Clear Counting
343 For LDS02: reset both count number and time.
344 )))
345
346
347 === (% style="color:#037691" %)**Type Code 0xA7**(%%) ===
348
349 (((
350 0xA7 01 : Equal to AT+DISALARM=1
351 )))
352
353 (((
354 0xA7 00 : Equal to AT+DISALARM=0
355 )))
356
357
358 === (% style="color:#037691" %)**Type Code 0xA8**(%%) ===
359
360 (((
361 Format: 0xA8 aa bb
362 )))
363
364 (((
365 aa: 1: Enable ADR; 0: Disable ADR (Same as AT+CADR command)
366 )))
367
368 (((
369 bb: set DR (Same as AT+CDATARATE ,only valid after ADR=0)
370 )))
371
372 (((
373 Example: 0x A8 00 02 : Set ADR=0 and DR=1
374 )))
375
376
377 === (% style="color:#037691" %)**Type Code 0xA9**(%%) ===
378
379 See [[Alarm Base Timeout>>||anchor="H4.6AlarmBaseonTimeout"]] for detail.
380
381
382 == 4.5 Integrate with Datacake ==
383
384
385 (((
386 (((
387 Datacake provides a human friendly interface to show the sensor data, once we have data in TTN V3, we can use Datacake to connect to TTN V3 and see the data in Datacake. Below are the steps:
388 )))
389 )))
390
391 (((
392
393 )))
394
395 (((
396 (% style="color:blue" %)**Step 1**(%%): Be sure that your device is programmed and properly connected to the network at this time.
397 )))
398
399 (((
400 (% 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:
401 )))
402
403
404 [[image:1654674520913-519.png]]
405
406
407 [[image:1654674530910-914.png]]
408
409
410 [[image:1654674543078-401.png]]
411
412
413 (% style="color:blue" %)**Step 3**(%%): Create an account or log in Datacake.
414
415 (% style="color:blue" %)**Step 4**(%%): Search LDS02 and add DevEUI.
416
417 [[image:1654674556510-911.png]]
418
419
420 == 4.6 Alarm Base on Timeout ==
421
422
423 (((
424 LDS02 can monitor the timeout for a status change, this feature can be used to monitor some event such as open fridge too long etc.
425 )))
426
427 (((
428 User configure this feature by using:
429 )))
430
431 (((
432 (% style="color:blue" %)**AT Command**(%%) **to configure:**
433 )))
434
435 (((
436 * (% style="color:red" %)**AT+TTRIG=1,30 ** (%%) **~-~->** When status change from close to open, and device keep in open
437 )))
438
439 (((
440 status for more than 30 seconds. LDS02 will send an uplink packet, the Alarm bit (the lowest bit of 10^^th^^ byte of payload) on this uplink packet is set to 1.
441 )))
442
443
444 (((
445 * (% style="color:red" %)**AT+TTRIG=0,0** (%%) **~-~->**  Default Value, disable timeout Alarm.
446 )))
447
448 (((
449 (% style="color:blue" %)**Downlink Command**(%%) **to configure:**
450 )))
451
452 (((
453 **Command: (% style="color:red" %)0xA9 aa bb cc(%%)**
454 )))
455
456 (((
457 **A9: **Command Type Code
458 )))
459
460 (((
461 **aa:** status to be monitor
462 )))
463
464 (((
465 **bb cc:** timeout.
466 )))
467
468 (((
469 If user send 0xA9 01 00 1E: equal to AT+TTRIG=1,30
470 )))
471
472 (((
473 **Or**
474 )))
475
476 (((
477 0xA9 00 00 00: Equal to AT+TTRIG=0,0. Disable timeout Alarm.
478 )))
479
480
481 == 4.7 LEDs ==
482
483
484 (% border="1" cellspacing="5" style="background-color:#f2f2f2; width:463px" %)
485 |=(% style="width: 186px;background-color:#D9E2F3;color:#0070C0" %)**Action**|=(% style="width: 277px;background-color:#D9E2F3;color:#0070C0" %)**LED behavior**
486 |(% style="width:184px" %)Power On|(% style="width:275px" %)(% style="color:green" %)**GREEN on 1s, **(% style="color:red" %)**RED on 1s,**(%%)** (% style="color:blue" %)BLUE on 1s(%%)**
487 |(% style="width:184px" %)Joined successful|(% style="width:275px" %)(% style="color:green" %)**GRENN LED **(%%)on 5s
488 |(% style="width:184px" %)Send an uplink message|(% style="width:275px" %)(% style="color:green" %)**GREEN LED**(%%) blinks once
489 |(% style="width:184px" %)Got a downlink message|(% style="width:275px" %)(% style="color:blue" %)**BLUE LED**(%%) blinks once
490
491
492 = 5. Battery & How to replace =
493
494 == 5.1 Battery Type and replace ==
495
496
497 (((
498 LDS02 is equipped with 2 x AAA LR03 batteries. If the batteries running low (shows 2.1v in the platform). User can buy generic AAA battery and replace it.
499
500 (% style="color:red" %)**Note:**
501
502 1. The LDS02 doesn't have any screw, use can use nail to open it by the middle.
503 1. Make sure the direction is correct when install the AAA batteries.
504 )))
505
506 (((
507 (% style="color:red" %)**Important Notice: Make sure use new AAA LR03 battery and the battery doesn't have broken surface.**
508 )))
509
510 (((
511
512 )))
513
514 (((
515 Example of AAA LR03 batter:
516 )))
517
518 [[image:1654675278044-307.png]]
519
520
521 == 5.2 Power Consumption Analyze ==
522
523
524 (((
525 Dragino battery powered products are all run in Low Power mode. User can check the guideline from this link to calculate the estimate battery life:
526 )))
527
528 (((
529 [[https:~~/~~/www.dragino.com/downloads/downloads/LoRa_End_Node/Battery_Analyze/DRAGINO_Battery_Life_Guide.pdf>>url:https://www.dragino.com/downloads/downloads/LoRa_End_Node/Battery_Analyze/DRAGINO_Battery_Life_Guide.pdf]]
530 )))
531
532
533 = 6. Use AT Command =
534
535 == 6.1 Access AT Command ==
536
537
538 LDS02 supports AT Command set. User can use a USB to TTL adapter to configure LDS02 via use AT command, as below.
539
540
541 [[image:image-20221226104705-1.png||height="572" width="872"]]
542
543
544 (((
545 In PC, User needs to set (% style="color:#037691" %)**serial tool**(%%)(such as [[putty>>url:https://www.chiark.greenend.org.uk/~~sgtatham/putty/latest.html]], SecureCRT) baud rate to (% style="color:green" %)**115200**(%%) to access to access serial console of LDS02. Below is the output for reference:
546 )))
547
548 (((
549 The AT Access password is (% style="color:red" %)**123456**.
550 )))
551
552 [[image:1654675618022-630.png]]
553
554
555 (((
556 Each AT Command need to (% style="color:red" %)**add an ENTER**(%%) at the end before send.
557 )))
558
559 (((
560 When entering the first command, the (% style="color:red" %)**RED LED**(%%) will on and user can now input AT Commands. After input all needed AT Commands, please input **AT+CLPM=1** to set the device to work in Low Power mode and (% style="color:red" %)**RED LED**(%%) will be off.
561 )))
562
563 (((
564 More detail AT Command manual can be found at [[AT Command Manual>>url:http://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/LDS01/]]
565 )))
566
567
568 = 7. FAQ =
569
570 == 7.1 How to upgrade the image? ==
571
572
573 User can upgrade the of LDS02 for bug fix, new features, or change working region. The upgrade instruction is here: [[Firmware Upgrade Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20Upgrade%20Instruction/]]
574
575
576 == 7.2 How to change the LoRa Frequency Bands/Region? ==
577
578
579 If user has for example US915 frequency and want to change it to AS923 frequency. User can follow the introduction for [[how to upgrade image>>||anchor="H7.1Howtoupgradetheimage3F"]]. When download the images, choose the required image file for download.
580
581
582 == 7.3 Can I disable uplink for each event to save battery life? ==
583
584
585 Yes, User can use below method to disable this:
586
587
588 (% style="color:blue" %)**via AT Command**:
589
590 (% style="color:red" %)**AT+DISALARM=1**(%%), End node will only send packet in TDC time.
591
592 (% style="color:red" %)**AT+DISALARM=0**(%%), End node will send packet in TDC time or status change for door sensor. 
593
594
595 (% style="color:blue" %)**via LoRaWAN downlink Command**:
596
597 (% style="color:red" %)**0xA701**(%%) : Equal to AT+DISALARM=1
598
599 (% style="color:red" %)**0xA700**(%%) : Equal to AT+DISALARM=0
600
601
602 == 7.4 How to change Sub-Band for LDS02? ==
603
604
605 (% style="color:blue" %)**Before v1.6 firmware**(%%): LDS02 works in Subband 2 by default in AU915 / US915 band. So if the LoRaWAN server works in other subband, there will be issue for LDS02 to Join the server. In this case, User can use AT COmmand to change the subband. See AT Command chapther for the hardware connection. Below are the steps to change sub-band:
606
607 * Press rest button.
608 * Send (% style="color:blue" %)**123456**(%%) password
609 * Send command (% style="color:blue" %)**AT+CFREQBANDMASK=0006 **(%%)( 0001 for subband 1, 0002 for subband 2, etc..)
610 * Press rest button to restart to new subband
611 * Example output:
612
613 (% class="mark small" %)[3369]DRAGINO LWL01 Device
614 [3370]Frequency Band: US915 v1.5
615 [3373]OTAA
616 [3374]DevEui= 7896785455246354
617 [3377]class type A
618 [3379]freq mode intra
619 [3381]**scan chn mask 0x0002   ~-~-> use subband 2**
620
621 (% class="mark small" %)LM502:~~# [10793]txDone
622 123456       ~-~-> ENTER PASSWORD
623 Correct Password
624
625 (% class="mark small" %)[105115]rxTimeOut
626 **AT+CFREQBANDMASK=0020 ~-~-> Change to Subband6**
627 OK
628
629 (% class="mark small" %)[3371]DRAGINO LWL01 Device
630 [3373]Frequency Band: US915 v1.5
631 [3376]OTAA
632 [3377]DevEui= 7896785455246354
633 [3380]class type A
634 [3382]freq mode intra
635 [3384]**scan chn mask 0x0001  ~-~-> reboot and works on Subband1 now**
636
637 [[image:image-20230103143821-1.png]]
638
639
640 (% style="color:blue" %)**Since firmware v1.6: **(%%)LDS02 works in chn mask 0x0000. where cover all subbands. so no need to use AT Commands to change subband and it can works for every subband
641
642
643 == 7.5 My sensor works for Helium AU915 before but not it doesn't work, Why? ==
644
645
646 It is sub-band issue, See chapter 7.4.Helium Change the Subband for AU915 from subband2 to Subband6 which cause the sensor doesn't work.
647
648
649 = 8. Order Info =
650
651
652 **Part Number: (% style="color:blue" %)LDS02-XXX(%%)**
653
654 (% style="color:blue" %)**XXX:**
655
656 * (% style="color:red" %)**EU433**(%%): frequency  bands EU433
657 * (% style="color:red" %)**EU868**(%%): frequency  bands EU868
658 * (% style="color:red" %)**KR920**(%%): frequency  bands KR920
659 * (% style="color:red" %)**CN470**(%%): frequency bands CN470
660 * (% style="color:red" %)**AS923**(%%): frequency  bands AS923
661 * (% style="color:red" %)**AU915**(%%): frequency bands AU915
662 * (% style="color:red" %)**US915**(%%): frequency bands  US915
663 * (% style="color:red" %)**IN865**(%%):  frequency bands  IN865
664 * (% style="color:red" %)**CN779**(%%): frequency bands CN779
665
666
667 = 9. Packing Info =
668
669
670 (((
671 **Package Includes**:
672 )))
673
674 * (((
675 LDS02 x 1
676 )))
677
678 (((
679 **Dimension and weight**:
680 )))
681
682 * (((
683 Device Size: 69.2 x 29.2 x 14.8 mm
684
685
686
687 )))
688
689 = 10. Support =
690
691
692 * 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.
693
694 * 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:file:///D:/市场资料/说明书/LoRa/LT系列/support@dragino.com]].
Copyright ©2010-2022 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0