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