Show last authors
1 (% style="text-align:center" %)
2 [[image:1654739676119-482.png||height="496" width="437"]]
3
4
5
6
7
8 (% style="display:none" %) (%%)
9
10
11
12 **Table of Contents:**
13
14 {{toc/}}
15
16
17
18
19
20
21
22
23
24
25 = 1.  Introduction =
26
27
28 == 1.1  ​What is LDS03A Open/Close Door Sensor ==
29
30 (((
31
32
33 (((
34 The Dragino LDS03A is an (% style="color:blue" %)**Open/Close LoRaWAN Door Sensor**(%%). It detects door open/close status and uplinks to IoT server via LoRaWAN network. user can see the door status, open duration, open counts in the IoT Server.
35 )))
36
37 (((
38 LDS03A is powered by a (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%). It can be used for up to 10 years.
39 )))
40
41 (((
42 The LDS03A will send periodically data every 2 hours as well as for each door open/close action. It also counts the door open times and calculates the last door open duration. Users can also disable the uplink for each open/close event, instead, LDS03A can count each open event and uplink periodically.
43 )))
44
45 (((
46 LDS03A has a (% style="color:blue" %)**Datalog feature**(%%), it will record the open/close event and the user can retrieve the history from LoRaWAN.
47 )))
48
49 (((
50 LDS03A has the (% style="color:blue" %)**open alarm feature**(%%), user can set this feature so the device will send an alarm if the door has been open for a certain time.
51 )))
52
53 (((
54 LDS03A is designed for outdoor use. It has a weatherproof enclosure and industrial level battery to work in low to high temperatures.
55 )))
56
57 (((
58 Each LDS03A is 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.
59 )))
60
61 (((
62 *Battery life depends on how often to send data, please see [[battery analyzer>>||anchor="H4.A0Battery26Howtoreplace"]].
63 )))
64 )))
65
66
67
68 == ​1.2  Features ==
69
70
71 * LoRaWAN v1.0.3 Class A protocol.
72 * Frequency Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865/RU864
73 * Door Open/Close detect
74 * Door open/close statistics
75 * 8500mAh industrial battery(none-rechargeable)
76 * AT Commands to change parameters
77 * Uplink on periodically and open/close event
78 * Datalog feature
79 * Remote configure parameters via LoRa Downlink
80 * Firmware upgradable via program port
81 * Wall Mountable
82 * Outdoor Use
83
84
85 == 1.3  Storage & Operation Temperature ==
86
87
88 -40°C to +85°C
89
90
91
92 == 1.4  ​Applications ==
93
94
95 [[image:1654741400370-813.png]]
96
97
98
99 == 1.5  Mechanical ==
100
101
102 [[image:1654741444887-479.png]]
103
104
105 [[image:1654741488515-626.png]]
106
107
108 [[image:1654741510204-377.png]]
109
110
111
112 == 1.6  Pin Definitions and Switch ==
113
114
115 [[image:1654741572060-177.png]]
116
117 **LDS03A is based on LSN50v2**
118
119
120
121 === 1.6.1  Pin Definition ===
122
123
124 (((
125 The device is pre-configured to connect to a door sensor. The other pins are not used. If user wants to know more about other pins, please refer to the user manual of LSN50v2 at:  [[https:~~/~~/www.dropbox.com/sh/djkxs7mr17y94mi/AABVlWbM9uzK9OA3mXyAT10Za?dl=0>>https://www.dropbox.com/sh/djkxs7mr17y94mi/AABVlWbM9uzK9OA3mXyAT10Za?dl=0]]
126 )))
127
128
129
130 === 1.6.2  Jumper JP2(Power ON/OFF) ===
131
132
133 Power on Device when putting this jumper.
134
135
136
137 === 1.6.3  BOOT MODE / SW1 ===
138
139
140 (((
141 1)  ISP: upgrade mode, device won't have any signal in this mode. but ready for upgrade firmware. LED won't work. Firmware won't run.
142 )))
143
144 (((
145 2)  Flash: work mode, the device starts to work and send out console output for further debug
146 )))
147
148
149
150 === 1.6.4  Reset Button ===
151
152
153 Press to reboot the device.
154
155
156
157 === 1.6.5  LED ===
158
159
160 It will flash:
161
162 1. Boot the device in flash mode
163 1. Send an uplink packet
164
165
166 == 1.7 Magnet Distance ==
167
168 * Wood Door: 10mm ~~ 30mm
169 * Iron Door: 30 ~~ 45mm
170
171
172
173 = 2.  Operation Mode =
174
175
176 == 2.1  How it works ==
177
178
179 (((
180 (((
181 Each LDS03A is shipped with a worldwide unique set of OTAA keys. To use LDS03A in a LoRaWAN network, user needs to input the OTAA keys in the LoRaWAN network server. So LDS03A can join the LoRaWAN network and start to transmit sensor data.
182 )))
183 )))
184
185
186
187 == 2.2  Example to use for LoRaWAN network ==
188
189
190 (((
191 This section shows an example of how to join the TTN V3 LoRaWAN IoT server. Usages with other LoRaWAN IoT servers are similar.
192
193
194 )))
195
196 (((
197 [[image:1654742304325-850.png]]
198
199
200 )))
201
202 (((
203 * In this user case, the LDS03A is installed on the door edge to detect the open/close event and send the status to the LoRaWAN server. The LDS03A will uplink different types of messages to the LoRaWAN server. See [[Uplink payload>>||anchor="H2.3A0200BUplinkPayload"]] for detail.
204
205 (((
206
207
208 Assume the LG308 is already set to connect to the [[TTN V3 network >>url:https://eu1.cloud.thethings.network]]. We need to add the LDS03A device in TTN V3:
209
210
211 )))
212 )))
213
214 (((
215 (((
216 (% style="color:blue" %)**Step 1**(%%):  Create a device in TTN V3 with the OTAA keys from LDS03A.
217 )))
218
219 (((
220 Each LDS03A is shipped with a sticker with the default device EUI as below:
221 )))
222 )))
223
224 [[image:image-20220607170145-1.jpeg]]
225
226
227 Users can enter these keys in the LoRaWAN Server portal. Below is the TTN V3 screenshot:
228
229
230 **Add APP EUI in the application:**
231
232 [[image:1654742558691-332.png]]
233
234
235 [[image:1654742595660-519.png]]
236
237
238 [[image:1654742610413-498.png]]
239
240
241
242 [[image:1654742630064-347.png]]
243
244 **Add APP KEY and DEV EUI**
245
246
247
248 (% style="color:blue" %)**Step 2**(%%): Power on LDS03A
249
250
251 [[image:1654742860601-778.png]]
252
253
254 (((
255 Put the jumper to power on LDS03A and it will auto-join to the TTN V3 network. After join success, it will start to upload sensor data to TTN V3 and the user can see it in the panel.
256 )))
257
258
259 [[image:image-20220609104802-1.png||height="369" width="1123"]]
260
261
262
263 == 2.3  ​Uplink Payload ==
264
265
266 (((
267 (((
268 Uplink payloads have two types:
269 )))
270
271 * (((
272 Open/Close Status: Use FPORT=2
273 )))
274 * (((
275 Other control commands: Use other FPORT fields.
276 )))
277
278 (((
279 The application server should parse the correct value based on FPORT settings.
280 )))
281
282 (((
283
284
285
286 )))
287
288 === 2.3.1  Device Status, FPORT~=5 ===
289
290
291 )))
292
293 (((
294 Include device configure status. Once LDS03A Joined the network, it will uplink this message to the server. After that, LDS03A will uplink Device Status every 12 hours.
295 )))
296
297 (((
298 Users can also use the downlink command**(0x26 01)** to ask LDS03A to resend this uplink. This uplink payload also includes the DeviceTimeReq to get time.
299 )))
300
301 [[image:image-20220609105437-3.png]]
302
303
304 Example parse in TTNv3
305
306 [[image:image-20220609105101-2.png||height="295" width="1208"]]
307
308
309 * (% style="color:#4f81bd" %)**Sensor Model**(%%): For LDS03A, this value is 0x0A
310
311 * (% style="color:#4f81bd" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
312
313 * (% style="color:#4f81bd" %)**Frequency Band**:
314
315 *0x01: EU868
316
317 *0x02: US915
318
319 *0x03: IN865
320
321 *0x04: AU915
322
323 *0x05: KZ865
324
325 *0x06: RU864
326
327 *0x07: AS923
328
329 *0x08: AS923-1
330
331 *0x09: AS923-2
332
333 *0x0a: AS923-3
334
335 *0x0b: CN470
336
337 *0x0c: EU433
338
339 *0x0d: KR920
340
341 *0x0e: MA869
342
343
344 * (% style="color:#4f81bd" %)**Sub-Band**:
345 ** AU915 and US915:value 0x00 ~~ 0x08
346 ** CN470: value 0x0B ~~ 0x0C
347 ** Other Bands: Always 0x00
348
349 * (% style="color:#4f81bd" %)**Battery Info:**
350
351 Check the battery voltage.
352
353 Ex1: 0x0B45 = 2885mV
354
355 Ex2: 0x0B49 = 2889mV
356
357
358
359 === 2.3.2  Sensor Configuration, FPORT~=4 ===
360
361
362 (((
363 LDS03A will only send this command after getting the downlink command (0x26 02) from the server.
364 )))
365
366 (((
367 [[image:image-20220609110123-5.png]]
368 )))
369
370 (((
371
372 )))
373
374 * (((
375 (% style="color:#4f81bd" %)**TDC: (default: 0x001C20)**
376 )))
377
378 (((
379 Uplink interval for the Open/Close Event, default value is 0x001C20 which is 7200 seconds = 2 hours.
380 )))
381
382 (((
383
384 )))
385
386 * (((
387 (% style="color:#4f81bd" %)**Disalarm: (default: 0)**
388 )))
389
390 (((
391 (% style="color:#037691" %) **If Disalarm = 1**(%%), LDS03A will only send uplink at every TDC periodically. This is normally use for pulse meter application, in this application, there are many open/close event, and platform only care about the total number of pulse.
392 )))
393
394 (((
395 (% style="color:#037691" %) **If Disalarm = 0**(%%), LDS03A will send uplink at every TDC periodically and send data on each open/close event. This is useful for the application user need to monitor the open/close event in real-time.
396
397
398 )))
399
400 (((
401 (% style="color:red" %)** Note: When Disalarm=0, a high frequently open/close event will cause lots of uplink and drain battery very fast. **
402 )))
403
404 (((
405
406 )))
407
408 * (((
409 (% style="color:#4f81bd" %)**Keep Status & Keep Time**
410 )))
411
412 (((
413 Shows the configure value of [[Alarm Base on Timeout Feature>>||anchor="H3.8A0AlarmBaseonTimeout"]]
414 )))
415
416
417 [[image:image-20220609110018-4.png||height="291" width="1159"]]
418
419
420
421 === 2.3.3  Real-Time Open/Close Status, Uplink FPORT~=2 ===
422
423
424 LDS03A will send this uplink **after** Device Status once join the LoRaWAN network successfully. And LDS03A will:
425
426
427 1. periodically send this uplink every 2 hours, this interval [[can be changed>>||anchor="H3.1A0SetTransmitIntervalTime"]].
428 1. There is an Open/Close event. 
429
430 Uplink Payload totals 11 bytes.
431
432 (% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:495px" %)
433 |(% colspan="5" style="width:492px" %)**Real-Time Open/Close Status, FPORT=2**
434 |(% style="width:101px" %)**Size (bytes)**|(% style="width:77px" %)**1**|(% style="width:99px" %)**3**|(% style="width:88px" %)**3**|(% style="width:126px" %)**4**
435 |(% style="width:101px" %)**Value**|(% style="width:77px" %)Status & [[Alarm>>||anchor="H3.8A0AlarmBaseonTimeout"]]|(% style="width:99px" %)Total open door events|(% style="width:88px" %)(((
436 The last door open
437
438 duration (unit: min)
439 )))|(% style="width:126px" %)[[Unix TimeStamp>>||anchor="H2.4.1A0UnixTimeStamp"]]
440
441 (% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:506.222px" %)
442 |(% colspan="4" style="width:503px" %)**Status & Alarm field**
443 |(% style="width:82px" %)**Size (bit)**|(% style="width:71px" %)**6**|(% style="width:220px" %)**1**|(% style="width:129px" %)**1**
444 |(% style="width:82px" %)**Value**|(% style="width:71px" %)Reserve|(% style="width:220px" %)[[Enable/disable Timeout Alarm>>||anchor="H3.8A0AlarmBaseonTimeout"]]
445 0: No Alarm; 1: Alarm|(% style="width:129px" %)Status
446 0: Close, 1: Open
447
448 [[image:image-20220609110547-6.png||height="337" width="1191"]]
449
450
451
452 === 2.3.4  Historical Door Open/Close Event, FPORT~=3 ===
453
454
455 (((
456 LDS03A stores sensor values and users can retrieve these history values via the [[downlink command>>||anchor="H2.4A0DatalogFeature"]].
457 )))
458
459 (((
460 The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time open/close status.
461 )))
462
463 (((
464
465 )))
466
467 * (((
468 Each data entry is 11 bytes and has the same structure as [[Real-Time open/close status>>||anchor="H2.3.3A0Real-TimeOpen2FCloseStatus2CUplinkFPORT3D2"]], to save airtime and battery, LDS03A will send max bytes according to the current DR and Frequency bands.
469 )))
470
471 (((
472 For example, in the US915 band, the max payload for different DR is:
473 )))
474
475 1. (((
476 (% style="color:blue" %)**DR0**(%%): max is 11 bytes so one entry of data
477 )))
478 1. (((
479 (% style="color:blue" %)**DR1**(%%): max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
480 )))
481 1. (((
482 (% style="color:blue" %)**DR2**(%%): total payload includes 11 entries of data
483 )))
484 1. (((
485 (% style="color:blue" %)**DR3**(%%): total payload includes 22 entries of data.
486 )))
487
488 (((
489
490
491 If LDS03A doesn't have any data in the polling time. It will uplink 11 bytes of 0
492 )))
493
494
495 [[image:image-20220609112215-7.png||height="277" width="1250"]]
496
497
498 (((
499 (% style="color:#037691" %)**Downlink:**
500 )))
501
502 (((
503 0x31 61 8E 57 40 61 8E 81 70 05
504 )))
505
506 (((
507
508 )))
509
510 (((
511 (% style="color:#037691" %)**Uplink:**
512 )))
513
514 (((
515 00 00 00 00 00 00 00 61 8E 5F 8F 01 00 00 01 00 00 00 61 8E 5F D2 00 00 00 01 00 00 02 61 8E 60 64 01 00 00 02 00 00 02 61 8E 60 75 00 00 00 02 00 00 01 61 8E 60 C6 00 00 00 02 00 00 01 61 8E 7B A7 01 00 00 03 00 00 01 61 8E 7F 38 00 00 00 03 00 00 02 61 8E 7F CE 01 00 00 04 00 00 02 61 8E 81 1B 00 00 00 04 00 00 00 61 8E 81 50
516 )))
517
518 (((
519
520 )))
521
522 (((
523 (% style="color:#037691" %)**Parsed Value:**
524 )))
525
526 (((
527 [ALARM, DOOR_OPEN_STATUS, DOOR_OPEN_TIMES,LAST_DOOR_OPEN_DURATION, TIME]
528 )))
529
530 (((
531
532 )))
533
534 (((
535 [FALSE, CLOSE, 0, 0, 2021-11-12 12:35:27],
536 )))
537
538 (((
539 [FALSE, OPEN,  1, 0, 2021-11-12 12:36:34],
540 )))
541
542 (((
543 [FALSE, CLOSE, 1, 2, 2021-11-12 12:39:00],
544 )))
545
546 (((
547 [FALSE, OPEN,  2, 2, 2021-11-12 12:39:17],
548 )))
549
550 (((
551 [FALSE, CLOSE, 2, 1, 2021-11-12 12:40:38],
552 )))
553
554 (((
555 [FALSE, CLOSE, 2, 1, 2021-11-12 14:35:19],
556 )))
557
558 (((
559 [FALSE, OPEN,  3, 1, 2021-11-12 14:50:32],
560 )))
561
562 (((
563 [FALSE, CLOSE, 3, 2, 2021-11-12 14:53:02],
564 )))
565
566 (((
567 [FALSE, OPEN,  4, 2, 2021-11-12 14:58:35],
568 )))
569
570 (((
571 [FALSE, CLOSE, 4, 0, 2021-11-12 14:59:28],
572 )))
573
574
575
576 == 2.4  Datalog Feature ==
577
578
579 When a user wants to retrieve sensor value, he can send a poll command from the IoT platform to ask the sensor to send value in the required time slot.
580
581
582
583 === 2.4.1  Unix TimeStamp ===
584
585
586 LDS03A use Unix TimeStamp format based on
587
588 [[image:image-20220609113256-8.png]]
589
590
591 (((
592 Users can get this time from the link:  [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] :
593 )))
594
595 (((
596 Below is the converter example
597 )))
598
599 [[image:image-20220609113256-9.png||height="467" width="1127"]]
600
601
602 (((
603 So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25
604 )))
605
606
607
608 === 2.4.2  Set Device Time ===
609
610
611 (((
612 There are two ways to set the device's time:
613 )))
614
615 (((
616
617
618 (% style="color:blue" %)**1.  Through LoRaWAN MAC Command (Default settings)**
619 )))
620
621 (((
622 Users need to set SYNCMOD=1 to enable sync time via the MAC command.
623 )))
624
625 (((
626 Once LDS03A Joined the LoRaWAN network, it will send the MAC command (DeviceTimeReq) and the server will reply with (DeviceTimeAns) to send the current time to LDS03A. If LDS03A fails to get the time from the server, LDS03A will use the internal time and wait for the next time request ~[[[via Device Status (FPORT=5)>>||anchor="H2.3.1A0DeviceStatus2CFPORT3D5"]]].
627 )))
628
629 (((
630
631 )))
632
633 (((
634 (% style="color:red" %)**Note**: **LoRaWAN Server needs to support LoRaWAN v1.0.3(MAC v1.0.3) or higher to support this MAC command feature.**
635 )))
636
637 (((
638
639 )))
640
641 (((
642 (% style="color:blue" %)**2.  Manually Set Time**
643 )))
644
645 (((
646 Users need to set SYNCMOD=0 to manual time, otherwise, the user set time will be overwritten by the time set by the server.
647 )))
648
649
650
651 == 2.5 ​Show Data in DataCake IoT Server ==
652
653
654 (((
655 (((
656 Datacake IoT platform provides a human-friendly interface to show the sensor data, once we have sensor data in TTN V3, we can use Datacake to connect to TTN V3 and see the data in Datacake. Below are the steps:
657 )))
658 )))
659
660 (((
661 (((
662
663 )))
664 )))
665
666 (((
667 (((
668 (% style="color:blue" %)**Step 1**(%%)**: Link TTNv3 to Datacake.**[[https:~~/~~/docs.datacake.de/lorawan/lns/thethingsindustries#create-integration-on-tti>>url:https://docs.datacake.de/lorawan/lns/thethingsindustries#create-integration-on-tti]]
669 )))
670 )))
671
672 (((
673 (((
674 (% style="color:blue" %)**Step 2**(%%)**: Configure LDS03A in Datacake.**
675 )))
676 )))
677
678
679 [[image:1654746350207-427.png]]
680
681
682 [[image:1654747162439-840.png]]
683
684
685 [[image:1654746405400-203.png]]
686
687
688
689 [[image:1654746763908-732.png]]
690
691
692
693 [[image:1654746716087-684.png]]
694
695
696 [[image:1654746693868-718.png]]
697
698
699 [[image:1654746674738-826.png]]
700
701
702 [[image:1654746646379-591.png]]
703
704
705 [[image:1654746549277-209.png]]
706
707
708 [[image:1654746593411-887.png]]
709
710
711
712 = 3.  Configure LDS03A via AT Command or LoRaWAN Downlink =
713
714
715 (((
716 Use can configure LDS03A via AT Command or LoRaWAN Downlink.
717 )))
718
719 * (((
720 AT Command Connection: See [[FAQ>>||anchor="H5.A0FAQ"]].
721 )))
722 * (((
723 LoRaWAN Downlink instruction for different platforms: [[IoT LoRaWAN Server>>doc:Main.WebHome]]
724
725
726 )))
727
728 (((
729 There are two kinds of commands to configure LDS03A, they are:
730 )))
731
732 * (((
733 (% style="color:#4f81bd" %)** General Commands**.
734 )))
735
736 (((
737 These commands are to configure:
738 )))
739
740 * (((
741 General system settings like: uplink interval.
742 )))
743 * (((
744 LoRaWAN protocol & radio related command.
745 )))
746
747 (((
748 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]]
749 )))
750
751 (((
752
753 )))
754
755 * (((
756 (% style="color:#4f81bd" %)** Commands special design for LDS03A**
757 )))
758
759 (((
760 These commands only valid for LDS03A, as below:
761 )))
762
763
764
765 == 3.1  Set Transmit Interval Time ==
766
767
768 Feature: Change LoRaWAN End Node Transmit Interval.
769
770 (% style="color:#4472c4" %)**AT Command: AT+TDC**
771
772
773 [[image:image-20220607171554-8.png]]
774
775
776 (((
777 (% style="color:#4472c4" %)**Downlink Command: 0x01**
778 )))
779
780 (((
781 Format: Command Code (0x01) followed by 3 bytes time value.
782 )))
783
784 (((
785 If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01.
786 )))
787
788 * (((
789 Example 1: Downlink Payload: 0100001E  ~/~/ Set Transmit Interval (TDC) = 30 seconds
790 )))
791 * (((
792 Example 2: Downlink Payload: 0100003C  ~/~/ Set Transmit Interval (TDC) = 60 seconds
793
794
795
796
797
798 )))
799
800 == 3.2  Set Password ==
801
802
803 Feature: Set device password, max 9 digits.
804
805 (% style="color:#4472c4" %)**AT Command: AT+PWORD**
806
807 (% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:404.989px" %)
808 |=(% style="width: 170px;" %)**Command Example**|=(% style="width: 123px;" %)**Function**|=(% style="width: 109px;" %)**Response**
809 |(% style="width:170px" %)(((
810 AT+PWORD=?
811 )))|(% style="width:123px" %)(((
812 Show password
813 )))|(% style="width:109px" %)(((
814 (((
815 123456
816 )))
817
818 (((
819 OK
820 )))
821 )))
822 |(% style="width:170px" %)(((
823 AT+PWORD=999999
824 )))|(% style="width:123px" %)(((
825 Set password
826 )))|(% style="width:109px" %)(((
827 OK
828 )))
829
830 (% style="color:#4472c4" %)**Downlink Command:**
831
832 No downlink command for this feature.
833
834
835
836 == 3.3  Quit AT Command ==
837
838
839 Feature: Quit AT Command mode, so user needs to input the password again before using AT Commands.
840
841 (% style="color:#4472c4" %)**AT Command: AT+DISAT**
842
843
844 (% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:451.989px" %)
845 |=(% style="width: 155px;" %)**Command Example**|=(% style="width: 198px;" %)**Function**|=(% style="width: 96px;" %)**Response**
846 |(% style="width:155px" %)AT+DISAT|(% style="width:198px" %)Quit AT Commands mode|(% style="width:96px" %)OK
847
848 (% style="color:#4472c4" %)**Downlink Command:**
849
850 No downlink command for this feature.
851
852
853
854 == 3.4  Enable / Disable Alarm ==
855
856
857 Feature: Enable/Disable Alarm for open/close event. Default value 0.
858
859 (% style="color:#4472c4" %)**AT Command:**
860
861 [[image:image-20220609140712-1.png]]
862
863
864 (% style="color:#4472c4" %)**Downlink Command:**
865
866 0xA7 01  ~/~/ Same As AT+DISALARM=1
867
868 0xA7 00  ~/~/ Same As AT+DISALARM=0
869
870
871
872 == 3.5  Clear count ==
873
874
875 Feature: Clear current door open.
876
877 (% style="color:#4472c4" %)**AT Command:**
878
879 (% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510.222px" %)
880 |=(% style="width: 155px;" %)**Command Example**|=(% style="width: 266px;" %)**Function**|=(% style="width: 85px;" %)**Response**
881 |(% style="width:155px" %)AT+CLRC|(% style="width:266px" %)Clear the count of door open events.|(% style="width:85px" %)OK
882
883 (% style="color:#4472c4" %)**Downlink Command:**
884
885 0xA6 01 ~/~/ Same As AT+ CLRC
886
887
888
889 == 3.6  Set system time ==
890
891
892 Feature: Set system time, Unix format. [[See here for format detail.>>||anchor="H2.4.1A0UnixTimeStamp"]]
893
894 (% style="color:#4472c4" %)**AT Command:**
895
896 [[image:image-20220609141735-2.png]]
897
898
899 (% style="color:#4472c4" %)**Downlink Command:**
900
901 0x306007806000  ~/~/ Set timestamp to 0x(6007806000),Same as AT+TIMESTAMP=1611104352
902
903
904
905 == 3.7  Set Time Sync Mode ==
906
907
908 (((
909 Feature: Enable/Disable Sync system time via LoRaWAN MAC Command (DeviceTimeReq), LoRaWAN server must support v1.0.3 protocol to reply to this command.
910 )))
911
912 (((
913 SYNCMOD is set to 1 by default. If user wants to set a different time from the LoRaWAN server, the user needs to set this to 0.
914 )))
915
916
917 (% style="color:#4472c4" %)**AT Command:**
918
919 [[image:image-20220609142205-4.png]]
920
921
922 (% style="color:#4472c4" %)**Downlink Command:**
923
924 0x28 01  ~/~/ Same As AT+SYNCMOD=1
925
926 0x28 01 08  ~/~/ Same As AT+SYNCMOD=1,8
927
928 0x28 01 F4  ~/~/ Same As AT+SYNCMOD=1,-12
929
930 0x28 00  ~/~/ Same As AT+SYNCMOD=0
931
932
933
934 == 3.8  Alarm Base on Timeout ==
935
936
937 (((
938 (((
939 LDS03A can monitor the timeout for a status change, this feature can be used to monitor some events such as door opening too long etc. Related Parameters are:
940 )))
941
942 (((
943
944 )))
945
946 * (((
947 (% style="color:blue" %)**Keep Status: Status to be monitor**
948 )))
949
950 (((
951 Keep Status = 1: Monitor Close to Open event
952 )))
953
954 (((
955 Keep Status = 0: Monitor Open to Close event
956 )))
957
958 (((
959
960 )))
961
962 * (((
963 (% style="color:blue" %)**Keep Time: Timeout to send an Alarm**
964 )))
965
966 (((
967 Range 0 ~~ 65535(0xFFFF) seconds.
968 )))
969
970 (((
971 If keep time = 0, Disable Alarm Base on Timeout feature.
972 )))
973
974 (((
975 If keep time > 0, device will monitor the keep status event and send an alarm when status doesn't change after timeout.
976 )))
977
978 (((
979
980 )))
981 )))
982
983 (((
984 (((
985 (% style="color:#4472c4" %)**AT Command to configure:**
986 )))
987
988 * (((
989 (% style="color:red" %)**AT+TTRIG=1,30** (%%) **~-~->** When the **Keep Status** change from close to open, and device remains in open status for more than 30 seconds. LDS03A will send an uplink packet, the [[Alarm bit>>||anchor="H2.3.3A0Real-TimeOpen2FCloseStatus2CUplinkFPORT3D2"]] (the second bit of 1^^st^^ byte of payload) on this uplink packet is set to 1.
990 )))
991
992 * (((
993 (% style="color:red" %)**AT+TTRIG=0,0**  (%%) **~-~-> ** Default Value, disable timeout Alarm.
994 )))
995 )))
996
997 (((
998 (((
999
1000 )))
1001
1002 (((
1003 (% style="color:#4472c4" %)**Downlink Command to configure:**
1004 )))
1005
1006 (((
1007 **Command: (% style="color:red" %)0xA9 aa bb cc(%%)**
1008 )))
1009 )))
1010
1011 (((
1012 (((
1013 A9: Command Type Code
1014 )))
1015 )))
1016
1017 (((
1018 (((
1019 aa: status to be monitored
1020 )))
1021 )))
1022
1023 (((
1024 (((
1025 bb cc: timeout.
1026 )))
1027 )))
1028
1029 (((
1030
1031 )))
1032
1033 (((
1034 (((
1035 If user send 0xA9 01 00 1E: equal to AT+TTRIG=1,30
1036 )))
1037 )))
1038
1039 (((
1040 (((
1041 Or
1042 )))
1043 )))
1044
1045 (((
1046 (((
1047 0xA9 00 00 00: Equal to AT+TTRIG=0,0. Disable timeout Alarm.
1048 )))
1049 )))
1050
1051
1052
1053 == 3.9  Clear Flash Record ==
1054
1055
1056 (((
1057 Feature: Clear flash storage for data log feature.
1058 )))
1059
1060 (((
1061 (% style="color:#4472c4" %)**AT Command: AT+CLRDTA**
1062 )))
1063
1064 (((
1065 [[image:image-20220609142912-5.png]]
1066 )))
1067
1068 (((
1069
1070 )))
1071
1072 (((
1073 (((
1074 (% style="color:#4472c4" %)**Downlink Command:**
1075 )))
1076
1077 (((
1078 Example: 0xA301  ~/~/  Same as AT+CLRDTA
1079 )))
1080 )))
1081
1082
1083
1084 == 3.10  Count Mod (Since firmware v1.2.0) ==
1085
1086
1087 (% style="color:#4472c4" %)**AT Command:**
1088
1089 (% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:404.989px" %)
1090 |=(% style="width: 157px;" %)**Command Example**|=(% style="width: 156px;" %)**Function**|=(% style="width: 89px;" %)**Response**
1091 |(% style="width:157px" %)(((
1092 AT+COUNTMOD=0
1093 )))|(% style="width:156px" %)(((
1094 the count value keeps accumulating mode
1095 )))|(% style="width:89px" %)(((
1096 (((
1097
1098 )))
1099
1100 (((
1101 OK
1102 )))
1103 )))
1104 |(% style="width:157px" %)(((
1105 AT+COUNTMOD=1
1106 )))|(% style="width:156px" %)(((
1107 the count value will be reset after each TDC time
1108 )))|(% style="width:89px" %)(((
1109 OK
1110 )))
1111
1112 (% style="color:#4472c4" %)**Downlink Command:**
1113
1114 Example:  0B aa  => AT+COUNTMOD = second byte
1115
1116
1117
1118 == 3.11  Interrupt Pin Channel Mod(Since firmware v1.2.0) ==
1119
1120
1121 (% style="color:#4472c4" %)**AT Command:**
1122
1123 (% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:404.989px" %)
1124 |=(% style="width: 157px;" %)**Command Example**|=(% style="width: 156px;" %)**Function**|=(% style="width: 89px;" %)**Response**
1125 |(% style="width:157px" %)(((
1126 AT+TTRCHANNEL=1
1127 )))|(% style="width:156px" %)(((
1128 set as single channel, only use PB14 pin as interrupt pin.
1129 )))|(% style="width:89px" %)(((
1130 (((
1131
1132 )))
1133
1134 (((
1135 OK
1136 )))
1137 )))
1138 |(% style="width:157px" %)(((
1139 AT+TTRCHANNEL=2
1140 )))|(% style="width:156px" %)(((
1141 is set as dual channel, use PB14 pin and PB15 pin as interrupt pin.
1142 )))|(% style="width:89px" %)(((
1143 OK
1144 )))
1145
1146 (% style="color:#4472c4" %)**Downlink Command:**
1147
1148 Example:  0D aa => AT+TTRCHANNEL = second byte
1149
1150
1151
1152 == 3.12  Change the name of AT+TTRIG to AT+TTRIG1(Since firmware v1.2.0) ==
1153
1154
1155 (% style="color:#4472c4" %)**Downlink Command:**
1156
1157 Example:  A9 01 aa bb cc  => AT+TTRIG1= third byte, 4th byte and 5th byte
1158
1159
1160
1161 == 3.13  Added AT+TTRIG2 for PB15 pin(Since firmware v1.2.0) ==
1162
1163
1164 (% style="color:#4472c4" %)**Downlink Command:**
1165
1166 Example: A9 02 aa bb cc  => AT+TTRIG2= third byte, 4th byte and 5th byte
1167
1168
1169
1170 == 3.14  TTRIG1/2 timeout status alarm(Since firmware v1.2.0) ==
1171
1172
1173 It needs to be used with AT+TTRIG1 or AT+TTRIG2. When TTRIG1 or TTRIG2 times out and causes an alarm, and the status does not change subsequently, an alarm packet will be sent at the alarm interval.
1174
1175 (% style="color:#4472c4" %)**AT Command:**
1176
1177 (% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:404.989px" %)
1178 |=(% style="width: 157px;" %)**Command Example**|=(% style="width: 156px;" %)**Function**|=(% style="width: 89px;" %)**Response**
1179 |(% style="width:157px" %)(((
1180 AT+TTRALARM=0
1181 )))|(% style="width:156px" %)(((
1182 disable continuous alarm
1183 )))|(% style="width:89px" %)(((
1184 (((
1185
1186 )))
1187
1188 (((
1189 OK
1190 )))
1191 )))
1192 |(% style="width:157px" %)(((
1193 AT+TTRALARM=60
1194 )))|(% style="width:156px" %)(((
1195 The alarm interval is 60 minutes (unit: minutes)
1196 )))|(% style="width:89px" %)(((
1197 OK
1198 )))
1199
1200 (% style="color:#4472c4" %)**Downlink Command:**
1201
1202 Example:  0C aa  => AT+TTRALARM= third byte
1203
1204
1205
1206 = 4.  Battery & How to replace =
1207
1208
1209 == 4.1  Battery Type ==
1210
1211
1212 (((
1213 (((
1214 LDS03A is equipped with a [[8500mAH ER18505 Li-SOCI2 battery>>url:https://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]. The battery is an un-rechargeable battery with a low discharge rate targeting 8~~10 years of use. This type of battery is commonly used in IoT targets for long-term running, such as water meters.
1215 )))
1216
1217 (((
1218 The discharge curve is not linear so can't simply use percentage to show the battery level. Below is the battery performance.
1219
1220
1221 )))
1222 )))
1223
1224 [[image:1654593587246-335.png]]
1225
1226
1227 Minimum Working Voltage for the LDS03A:
1228
1229 LDS03A:  2.45v ~~ 3.6v
1230
1231
1232
1233 == 4.2  Replace Battery ==
1234
1235
1236 (((
1237 Any battery with range 2.45 ~~ 3.6v can be a replacement. We recommend to use Li-SOCl2 Battery.
1238 )))
1239
1240 (((
1241 And make sure the positive and negative pins match.
1242 )))
1243
1244
1245
1246 == 4.3  Power Consumption Analyze ==
1247
1248
1249 (((
1250 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.
1251 )))
1252
1253 (((
1254 Instruction to use as below:
1255 )))
1256
1257
1258 (% style="color:blue" %)**Step 1**(%%): Downlink the up-to-date DRAGINO_Battery_Life_Prediction_Table.xlsx from:
1259
1260 [[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/]]
1261
1262
1263 (% style="color:blue" %)**Step 2**(%%): Open it and choose
1264
1265 * Product Model
1266 * Uplink Interval
1267 * Working Mode
1268
1269 And the Life expectation in difference case will be shown on the right.
1270
1271 [[image:1654593605679-189.png]]
1272
1273
1274 The battery related documents as below:
1275
1276 * (((
1277 [[Battery Dimension>>https://www.dragino.com/downloads/index.php?dir=datasheet/Battery/]],
1278 )))
1279 * (((
1280 [[Lithium-Thionyl Chloride Battery  datasheet>>url:https://www.dragino.com/downloads/downloads/datasheet/Battery/ER26500/ER26500_Datasheet-EN.pdf]],
1281 )))
1282 * (((
1283 [[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/]]
1284 )))
1285
1286 [[image:image-20220609143952-1.png]]
1287
1288
1289
1290 === 4.3.1  ​Battery Note ===
1291
1292
1293 (((
1294 (((
1295 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.
1296 )))
1297 )))
1298
1299
1300
1301 === ​4.3.2  Replace the battery ===
1302
1303
1304 (((
1305 (((
1306 You can change the battery in the LDS03A.The type of battery is not limited as long as the output is between 3v to 3.6v. 
1307 )))
1308
1309 (((
1310 The default battery pack of LDS03A includes an ER18505 plus super capacitor. If user can't find this pack locally, they can find ER18505 or equivalence, which will also work in most cases. The SPC can enlarge the battery life for high-frequency use (update period below 5 minutes)
1311 )))
1312 )))
1313
1314
1315
1316 = 5.  FAQ =
1317
1318
1319 == 5.1  How to use AT Command to configure LDS03A ==
1320
1321
1322 LDS03A UART connection photo
1323
1324
1325 [[image:1654757007713-791.png]]
1326
1327
1328 (((
1329 In the PC, you need to set the serial baud rate to (% style="color:green" %)**9600**(%%) to access the serial console for LSN50. LSN50 will output system info once power on as below:
1330 )))
1331
1332
1333 [[image:image-20220609144231-3.png||height="644" width="922"]]
1334
1335
1336
1337 == 5.2  How to upgrade the firmware? ==
1338
1339
1340 (((
1341 A new firmware might be available for:
1342 )))
1343
1344 * (((
1345 Support new features
1346 )))
1347 * (((
1348 For bug fix
1349 )))
1350 * (((
1351 Change LoRaWAN bands.
1352 )))
1353
1354 (((
1355 Instruction for how to upgrade: [[Firmware Upgrade Instruction>>doc:Main.Firmware Upgrade Instruction for STM32 base products.WebHome||anchor="H2.HardwareUpgradeMethodSupportList"]]
1356 )))
1357
1358 (((
1359 Firmware location:  [[https:~~/~~/www.dropbox.com/sh/x9rpz9ftyljg135/AAAhC5hqtQOAw9_AoEEZbl9Ca?dl=0>>https://www.dropbox.com/sh/x9rpz9ftyljg135/AAAhC5hqtQOAw9_AoEEZbl9Ca?dl=0]]
1360 )))
1361
1362
1363
1364 == 5.3  How to change the LoRa Frequency Bands/Region? ==
1365
1366
1367 Users can follow the introduction for how to upgrade image. When downloading the images, choose the required image file for download.
1368
1369
1370
1371 = 6.  Trouble Shooting =
1372
1373
1374 == 6.1  AT Commands input doesn't work ==
1375
1376
1377 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.
1378
1379
1380
1381 = 7.  Order Info =
1382
1383
1384 Part Number: (% style="color:blue" %)**LDS03A-XX**
1385
1386
1387 (% style="color:blue" %)**XX**(%%): The default frequency band
1388
1389 * (% style="color:red" %)**AS923**(%%):  LoRaWAN AS923 band
1390 * (% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band
1391 * (% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band
1392 * (% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band
1393 * (% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band
1394 * (% style="color:red" %)**US915**(%%): LoRaWAN US915 band
1395 * (% style="color:red" %)**IN865**(%%):  LoRaWAN IN865 band
1396 * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
1397
1398
1399
1400 = 8.  ​Packing Info =
1401
1402
1403 **Package Includes**:
1404
1405 * LDS03A Open/Close Sensor x 1
1406
1407
1408
1409 = 9.  ​Support =
1410
1411
1412 * 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.
1413 * 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]].
1414
1415
1416
1417 = 10.  FCC Warning =
1418
1419
1420 This device complies with part 15 of the FCC Rules. Operation is subject to the following two conditions:
1421
1422 (1) This device may not cause harmful interference;
1423
1424 (2) this device must accept any interference received, including interference that may cause undesired operation.
1425
1426
1427
Copyright ©2010-2022 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0