Version 70.1 by Mengting Qiu on 2025/05/21 14:53

Show last authors
1 (% style="display:none" %) (%%)
2
3 (% style="text-align:center" %)
4 [[image:image-20240108161155-2.png]]
5
6
7
8
9
10
11
12
13
14 **Table of Contents:**
15
16 {{toc/}}
17
18
19
20
21
22
23 = 1. Introduction =
24
25 == 1.1 What is LoRaWAN Door Sensor ==
26
27
28 (((
29 The Dragino DS03A-LB/LS is a (% style="color:blue" %)**LoRaWAN Door Sensor**(%%) for Internet of Things solution. 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.
30 )))
31
32 (((
33 The LoRa wireless technology used in DS03A-LB/LS allows device to send data and reach extremely long ranges at low data-rates. It provides ultra-long range spread spectrum communication and high interference immunity whilst minimizing current consumption.
34 )))
35
36 (((
37 The DS03A-LB/LS 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, DS03A-LB/LS can count each open event and uplink periodically.
38 )))
39
40 (((
41 DS03A-LB/LS supports (% style="color:blue" %)**Datalog Feature,**(%%) it can save the data when there is no LoRaWAN network and uplink when network recover.
42 )))
43
44 (((
45 DS03A-LB/LS 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.
46
47 DS03A-LB/LS is designed for outdoor use. It has a weatherproof enclosure and industrial level battery to work in low to high temperatures
48 )))
49
50 (((
51 DS03A-LB/LS (% style="color:blue" %)**supports BLE configure**(%%) and (% style="color:blue" %)**wireless OTA update**(%%) which make user easy to use.
52 )))
53
54 (((
55 DS03A-LB/LS is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery **(%%)or (% style="color:blue" %)**solar powered + Li-ion battery**(%%), it is designed for long term use up to 5 years.
56 )))
57
58 (((
59 Each DS03A-LB/LS is pre-load with a set of unique keys for LoRaWAN registrations, register these keys to local LoRaWAN server and it will auto connect after power on.
60 )))
61
62
63 == 1.2 ​Features ==
64
65
66 * LoRaWAN 1.0.3 Class A
67 * Ultra-low power consumption
68 * Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865
69 * Door Open/Close detect
70 * Door open/close statistics
71 * Datalog Feature, Open Alarm Feature
72 * Probe length: 40cm
73 * Support Bluetooth v5.1 and LoRaWAN remote configure
74 * Support wireless OTA update firmware
75 * Uplink on periodically
76 * Downlink to change configure
77 * Wall Mountable
78 * Outdoor Use
79 * 8500mAh Li/SOCl2 Battery (DS03A-LB)
80 * Solar panel + 3000mAh Li-ion battery (DS03A-LS)
81
82 == 1.3 Specification ==
83
84
85 (% style="color:#037691" %)**Common DC Characteristics:**
86
87 * Supply Voltage: Built-in Battery , 2.5v ~~ 3.6v
88 * Operating Temperature: -40 ~~ 85°C
89
90 (% style="color:#037691" %)**LoRa Spec:**
91
92 * Frequency Range,  Band 1 (HF): 862 ~~ 1020 Mhz
93 * Max +22 dBm constant RF output vs.
94 * RX sensitivity: down to -139 dBm.
95 * Excellent blocking immunity
96
97 (% style="color:#037691" %)**Battery:**
98
99 * Li/SOCI2 un-chargeable battery
100 * Capacity: 8500mAh
101 * Self-Discharge: <1% / Year @ 25°C
102 * Max continuously current: 130mA
103 * Max boost current: 2A, 1 second
104
105 (% style="color:#037691" %)**Power Consumption**
106
107 * Sleep Mode: 5uA @ 3.3v
108 * LoRa Transmit Mode: 125mA @ 20dBm, 82mA @ 14dBm
109
110 == 1.4 Applications ==
111
112
113 [[image:Main.User Manual for LoRaWAN End Nodes.LDS03A - Outdoor LoRaWAN OpenClose Door Sensor Manual.WebHome@1654741400370-813.png]]
114
115
116 == 1.5 Sleep mode and working mode ==
117
118
119 (% style="color:blue" %)**Deep Sleep Mode: **(%%)Sensor doesn't have any LoRaWAN activate. This mode is used for storage and shipping to save battery life.
120
121 (% style="color:blue" %)**Working Mode:** (%%)In this mode, Sensor will work as LoRaWAN Sensor to Join LoRaWAN network and send out sensor data to server. Between each sampling/tx/rx periodically, sensor will be in IDLE mode), in IDLE mode, sensor has the same power consumption as Deep Sleep mode.
122
123
124 == 1.6 Button & LEDs ==
125
126
127 [[image:image-20250417152253-1.jpeg]]
128
129 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
130 |=(% style="width: 167px;background-color:#4F81BD;color:white" %)**Behavior on ACT**|=(% style="width: 117px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 226px;background-color:#4F81BD;color:white" %)**Action**
131 |(% style="width:167px" %)Pressing ACT between 1s < time < 3s|(% style="width:117px" %)Send an uplink|(% style="width:225px" %)(((
132 If sensor is already Joined to LoRaWAN network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once.
133 Meanwhile, BLE module will be active and user can connect via BLE to configure device.
134 )))
135 |(% style="width:167px" %)Pressing ACT for more than 3s|(% style="width:117px" %)Active Device|(% style="width:225px" %)(((
136 (% style="color:green" %)**Green led**(%%) will fast blink 5 times, device will enter (% style="color:#037691" %)**OTA mode**(%%) for 3 seconds. And then start to JOIN LoRaWAN network.
137 (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.
138 Once sensor is active, BLE module will be active and user can connect via BLE to configure device, no matter if device join or not join LoRaWAN network.
139 )))
140 |(% style="width:167px" %)Fast press ACT 5 times.|(% style="width:117px" %)Deactivate Device|(% style="width:225px" %)(% style="color:red" %)**Red led**(%%) will solid on for 5 seconds. Means Device is in Deep Sleep Mode.
141
142 == 1.7 BLE connection ==
143
144
145 DS03A-LB/LS support BLE remote configure.
146
147
148 BLE can be used to configure the parameter of sensor or see the console output from sensor. BLE will be only activate on below case:
149
150 * Press button to send an uplink
151 * Press button to active device.
152 * Device Power on or reset.
153
154 If there is no activity connection on BLE in 60 seconds, sensor will shut down BLE module to enter low power mode.
155
156
157 == 1.8 Pin Definitions ==
158
159 [[image:image-20230630160843-7.png]]
160
161
162 == 1.9 Mechanical ==
163
164 === 1.9.1 for LB version ===
165
166 [[image:image-20250331163305-1.jpeg]]
167
168
169 (% style="color:blue" %)**Probe Mechanical:**
170
171 [[image:Main.User Manual for LoRaWAN End Nodes.LDS03A - Outdoor LoRaWAN OpenClose Door Sensor Manual.WebHome@1654741444887-479.png||height="399" width="513"]]
172
173
174 === 1.9.2 for LS version ===
175
176
177 [[image:image-20250331163324-2.jpeg]]
178
179
180 == 1.10 Magnet Distance ==
181
182
183 * Wood Door: 10mm ~~ 30mm
184 * Iron Door: 30 ~~ 45mm
185
186 = 2. Configure DS03A-LB/LS to connect to LoRaWAN network =
187
188 == 2.1 How it works ==
189
190
191 The DS03A-LB/LS is configured as (% style="color:#037691" %)**LoRaWAN OTAA Class A**(%%) mode by default. It has OTAA keys to join LoRaWAN network. To connect a local LoRaWAN network, you need to input the OTAA keys in the LoRaWAN IoT server and press the button to activate the DS03A-LB/LS. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 2 hours.
192
193
194 == 2.2 ​Quick guide to connect to LoRaWAN server (OTAA) ==
195
196
197 Following is an example for how to join the [[TTN v3 LoRaWAN Network>>url:https://console.cloud.thethings.network/]]. Below is the network structure; we use the [[LPS8v2>>url:https://www.dragino.com/products/lora-lorawan-gateway/item/228-lps8v2.html]] as a LoRaWAN gateway in this example. (% style="display:none" %)
198
199 The LPS8v2 is already set to connected to [[TTN network >>url:https://console.cloud.thethings.network/]], so what we need to now is configure the TTN server.
200
201 [[image:image-20250417152741-2.png]]
202
203
204 (% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from DS03A-LB/LS.
205
206 Each DS03A-LB/LS is shipped with a sticker with the default device EUI as below:
207
208 [[image:image-20230426085205-1.png||height="238" width="512"]]
209
210
211 You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
212
213 **Create the application.**
214
215 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/SAC01L_LoRaWAN_Temperature%26Humidity_Sensor_User_Manual/WebHome/image-20250423093843-1.png?width=756&height=264&rev=1.1||alt="image-20250423093843-1.png"]]
216
217 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LTC2-LB--LoRaWAN_Temperature_Transmitter_User_Manual/WebHome/image-20240907111305-2.png?width=1000&height=572&rev=1.1||alt="image-20240907111305-2.png"]]
218
219
220 **Add devices to the created Application.**
221
222 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LTC2-LB--LoRaWAN_Temperature_Transmitter_User_Manual/WebHome/image-20240907111659-3.png?width=977&height=185&rev=1.1||alt="image-20240907111659-3.png"]]
223
224 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LTC2-LB--LoRaWAN_Temperature_Transmitter_User_Manual/WebHome/image-20240907111820-5.png?width=975&height=377&rev=1.1||alt="image-20240907111820-5.png"]]
225
226
227 **Enter end device specifics manually.**
228
229 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LTC2-LB--LoRaWAN_Temperature_Transmitter_User_Manual/WebHome/image-20240907112136-6.png?width=697&height=687&rev=1.1||alt="image-20240907112136-6.png"]]
230
231
232 **Add DevEUI and AppKey. Customize a platform ID for the device.**
233
234 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LTC2-LB--LoRaWAN_Temperature_Transmitter_User_Manual/WebHome/image-20240907112427-7.png?rev=1.1||alt="image-20240907112427-7.png"]]
235
236
237 (% style="color:blue" %)**Step 2:**(%%) Add decoder.
238
239 In TTN, user can add a custom payload so it shows friendly reading.
240
241 Click this link to get the decoder: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder/tree/main/>>url:https://github.com/dragino/dragino-end-node-decoder/tree/main/]]
242
243 Below is TTN screen shot:
244
245 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS25-LBLDS25-LS--LoRaWAN_LiDAR_Distance_Auto-Clean_Sensor_User_Manual/WebHome/image-20241009140556-1.png?width=1184&height=488&rev=1.1||alt="image-20241009140556-1.png" height="488" width="1184"]]
246
247 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS25-LBLDS25-LS--LoRaWAN_LiDAR_Distance_Auto-Clean_Sensor_User_Manual/WebHome/image-20241009140603-2.png?width=1168&height=562&rev=1.1||alt="image-20241009140603-2.png" height="562" width="1168"]]
248
249
250 (% style="color:blue" %)**Step 3:**(%%) Activate on DS03A-LB/LS
251
252 Press the button for 5 seconds to activate the DS03A-LB/LS.
253
254 (% style="color:green" %)**Green led**(%%) will fast blink 5 times, device will enter (% style="color:blue" %)**OTA mode**(%%) for 3 seconds. And then start to Join LoRaWAN network. (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.
255
256 After join success, it will start to upload messages to TTN and you can see the messages in the panel.
257
258
259 == 2.3 ​Uplink Payload ==
260
261 === 2.3.1 Device Status, FPORT~=5 ===
262
263
264 Include device configure status. Once DS03A-LB/LS Joined the network, it will uplink this message to the server. After that, DS03A-LB/LS will uplink Device Status every 12 hours.
265
266 Users can also use the downlink command**(0x26 01)** to ask DS03A-LB/LS to resend this uplink. This uplink payload also includes the DeviceTimeReq to get time.
267
268
269 The Payload format is as below.
270
271 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
272 |(% colspan="6" style="background-color:#4f81bd; color:white" %)**Device Status (FPORT=5)**
273 |(% style="width:103px" %)**Size (bytes)**|(% style="width:72px" %)**1**|**2**|(% style="width:91px" %)**1**|(% style="width:86px" %)**1**|(% style="width:44px" %)**2**
274 |(% style="width:103px" %)Value|(% style="width:72px" %)Sensor Model|Firmware Version|(% style="width:91px" %)Frequency Band|(% style="width:86px" %)Sub-band|(% style="width:44px" %)BAT
275
276 Example parse in TTNv3
277
278 [[image:image-20230630155406-1.png||height="190" width="873"]]
279
280
281 (% style="color:#037691" %)**Sensor Model**(%%): For DS03A-LB/LS, this value is 0x1B
282
283 (% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
284
285 (% style="color:#037691" %)**Frequency Band**:
286
287 0x01: EU868
288
289 0x02: US915
290
291 0x03: IN865
292
293 0x04: AU915
294
295 0x05: KZ865
296
297 0x06: RU864
298
299 0x07: AS923
300
301 0x08: AS923-1
302
303 0x09: AS923-2
304
305 0x0a: AS923-3
306
307 0x0b: CN470
308
309 0x0c: EU433
310
311 0x0d: KR920
312
313 0x0e: MA869
314
315
316 (% style="color:#037691" %)**Sub-Band**:
317
318 AU915 and US915:value 0x00 ~~ 0x08
319
320 CN470: value 0x0B ~~ 0x0C
321
322 Other Bands: Always 0x00
323
324
325 (% style="color:#037691" %)**Battery Info**:
326
327 Check the battery voltage.
328
329 Ex1: 0x0B45 = 2885mV
330
331 Ex2: 0x0B49 = 2889mV
332
333
334 === 2.3.2  Sensor Configuration, FPORT~=4 ===
335
336
337 DS03A-LB/LS will only send this command after getting the downlink command **(0x26 02)** from the server.
338
339 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
340 |(% colspan="8" style="background-color:#4f81bd; color:white; width:515px" %)**Sensor Configuration FPORT=4**
341 |**Size(bytes)**|(% style="width:75px" %)**3**|(% style="width:50px" %)**1**|(% style="width:100px" %)**1**|(% style="width:90px" %)**2**|(% style="width:100px" %)**1**|(% style="width:100px" %)**2**|(% style="width:98px" %)**1**
342 |Value|(% style="width:75px" %)TDC (unit:sec)|(% style="width:77px" %)Disalarm|(% style="width:96px" %)(((
343 Keep status1
344 )))|(% style="width:99px" %)(((
345 Keep time1(unit: sec)
346 )))|(% style="width:87px" %)Keep status2|(% style="width:97px" %)(((
347 Keep time2(unit: sec)
348 )))|(% style="width:98px" %)(((
349 Alarm interval(unit: min)
350 )))
351
352 Example parse in TTNv3
353
354 [[image:image-20230630155527-3.png||height="146" width="902"]]
355
356
357 * (((
358 (% style="color:blue" %)**TDC: (default: 0x001C20)**
359 )))
360
361 Uplink interval for the Open/Close Event, default value is 0x001C20 which is 7200 seconds = 2 hours.
362
363
364 * (((
365 (% style="color:blue" %)**Disalarm: (default: 0)**
366 )))
367
368 **If Disalarm = 1**, DS03A-LB/LS 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.
369
370 **If Disalarm = 0**, DS03A-LB/LS 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.
371
372
373 (% style="color:red" %)** Note: When Disalarm=0, a high frequently open/close event will cause lots of uplink and drain battery very fast. **
374
375
376 * (((
377 (% style="color:blue" %)**Keep Status1 & Keep Time1 & Keep Status2 & Keep Time2**
378 )))
379
380 Shows the configure value of [[Alarm Base on Timeout Feature>>||anchor="H3.3.3A0AlarmBaseonTimeout"]]
381
382
383
384 * (((
385 (% style="color:blue" %)**Alarm interval(default: 0)**
386 )))
387
388 When the state of the door sensor has not been changed after the timeout alarm, the device will send a uplink every alarm interval. It will stop the alarm until the state of the door sensor is changed after the timeout alarm.
389
390
391 === 2.3.3  Real-Time Open/Close Status, Uplink FPORT~=2 ===
392
393
394 DS03A-LB/LS will send this uplink **after** Device Status once join the LoRaWAN network successfully. And DS03A-LB/LS will send uplinks when:
395
396 * Every 2 hours, this interval [[can be changed>>||anchor="H3.3.1A0SetTransmitIntervalTime"]].
397 * There is an Open/Close event.  (This info can be disabled by AT+DISALARM=1)
398
399 **1) When (% style="color:blue" %)AT+TTRCHANNEL=1(%%), Uplink Payload totals (% style="color:blue" %)11 bytes. (Default mode)(%%)**
400
401 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
402 |=(% colspan="5" style="background-color:#4F81BD;color:white;width:515px" %)**Real-Time Open/Close Status, FPORT=2**
403 |(% style="width:94px" %)**Size(bytes)**|(% style="width:97px" %)**1**|(% style="width:95px" %)**3**|(% style="width:119px" %)**3**|(% style="width:107px" %)**4**
404 |(% style="width:95px" %)Value|(% style="width:97px" %)(((
405 Status & [[Alarm>>||anchor="H3.3.4A0TTRIG126TTRIG2timeoutstatusalarm"]]
406 )))|(% style="width:95px" %)Total open door events|(% style="width:119px" %)(((
407 The last door open duration (unit: sec)
408 )))|(% style="width:108px" %)[[Unix TimeStamp>>||anchor="H2.5.2UnixTimeStamp"]]
409
410 **Status & Alarm:**
411
412 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
413 |(% style="background-color:#4f81bd; color:white; width:50px" %)**Size(bit)**|(% style="background-color:#4f81bd; color:white; width:60px" %)**[bit7:bit4]**|(% style="background-color:#4f81bd; color:white; width:80px" %)**bit3**|(% style="background-color:#4f81bd; color:white; width:100px" %)**bit2**|(% style="background-color:#4f81bd; color:white; width:120px" %)**bit1**|(% style="background-color:#4f81bd; color:white; width:105px" %)**bit0**
414 |(% style="width:76px" %)Value|(% style="width:96px" %)Reserve|(% style="width:110px" %)(((
415 Count mod
416 )))|(% style="width:106px" %)TDC flag 0:No;1:Yes|(% style="width:148px" %)(((
417 Alarm 0: No Alarm; 1: Alarm
418 )))|(% style="width:131px" %)(((
419 Status 0: Close; 1: Open
420 )))
421
422 [[image:image-20230630155451-2.png||height="246" width="928"]]
423
424
425 * (((
426 (% style="color:blue" %)**Count mod:Default=0**
427 )))
428
429 0: Uplink total open door times since factory
430
431 1: Uplink total open door times since last FPORT=2 uplink.
432
433
434 * (% style="color:blue" %)**TDC flag**
435
436 When the flag is 1, it means sending packets at normal time intervals.
437
438 Otherwise, it is a packet sent at non-TDC time.
439
440
441 * (((
442 (% style="color:#0000ff" %)**Alarm**
443 )))
444
445 See [[Alarm Base on Timeout>>||anchor="H3.3.3A0AlarmBaseonTimeout"]]
446
447
448 * (((
449 (% style="color:blue" %)**Status**
450 )))
451
452 This bit is 1 when the door sensor is open and 0 when it is close.
453
454
455 * (((
456 (% style="color:blue" %)**Total open door events**
457 )))
458
459 Total pulse/counting base on open door.
460
461 Range (3 Bytes) : 0x000000 ~~ 0xFFFFFF . Max: 16777215
462
463
464 * (((
465 (% style="color:blue" %)**The last door open duration**
466 )))
467
468 Door sensor last open duration.
469
470 Unit: sec.
471
472 [[image:image-20230701094042-1.png||height="154" width="763"]]
473
474
475 **2) When (% style="color:blue" %)AT+TTRCHANNEL=2(%%), Uplink Payload totals (% style="color:blue" %)18 bytes(%%)**(% style="color:blue" %).
476
477 (When the maximum DR of some frequencies is 11 bytes, it will cause the server to receive empty packets)
478
479 (% style="color:red" %)**Note:When using the AT+TTRCHANNEL=2 command, the Datalog function cannot be used.**
480
481 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
482 |=(% colspan="8" style="background-color:#4F81BD;color:white; width: 515px;" %)**Real-Time Open/Close Status, FPORT=2**
483 |(% style="width:50px" %)**Size(bytes)**|(% style="width:97px" %)**1**|(% style="width:95px" %)**3**|(% style="width:125px" %)**3**|(% style="width:100px" %)**4**|(% style="width:86px" %)**1**|(% style="width:96px" %)**3**|(% style="width:126px" %)**3**
484 |(% style="width:95px" %)Value|(% style="width:97px" %)(((
485 Status1 & Alarm1
486 )))|(% style="width:95px" %)Total open door events1|(% style="width:125px" %)(((
487 The last door open duration1 (unit: sec)
488 )))|(% style="width:100px" %)[[Unix TimeStamp>>||anchor="H2.5.2UnixTimeStamp"]]|(% style="width:86px" %)(((
489 Status2 & Alarm2
490 )))|(% style="width:96px" %)Total open door events2|(% style="width:126px" %)The last door open duration2 (unit: sec)
491
492 **Status1 & Alarm1:**
493
494 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:514px" %)
495 |(% style="background-color:#4f81bd; color:white; width:50px" %)**Size(bit)**|(% style="background-color:#4f81bd; color:white; width:60px" %)**[bit7:bit4]**|(% style="background-color:#4f81bd; color:white; width:70px" %)**bit3**|(% style="background-color:#4f81bd; color:white; width:100px" %)**bit2**|(% style="background-color:#4f81bd; color:white; width:117px" %)**bit1**|(% style="background-color:#4f81bd; color:white; width:117px" %)**bit0**
496 |(% style="width:76px" %)Value|(% style="width:96px" %)Reserve|(% style="width:99px" %)(((
497 Count mod
498 )))|(% style="width:103px" %)TDC flag 0:No;1:Yes|(% style="width:216px" %)(((
499 Alarm1 0: No Alarm; 1: Alarm (PA8 of pin)
500 )))|(% style="width:181px" %)(((
501 Status1 0: Close; 1: Open (PA8 of pin)
502 )))
503
504 **Status2 & Alarm2:**
505
506 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
507 |(% style="background-color:#4f81bd; color:white; width:50px" %)**Size(bit)**|(% style="background-color:#4f81bd; color:white; width:60px" %)**[bit7:bit2]**|(% style="background-color:#4f81bd; color:white; width:200px" %)**bit1**|(% style="background-color:#4f81bd; color:white; width:200px" %)**bit0**
508 |(% style="width:76px" %)Value|(% style="width:113px" %)Reserve|(% style="width:219px" %)(((
509 Alarm2 0: No Alarm; 1: Alarm (PA4 of pin)
510 )))|(% style="width:181px" %)(((
511 Status2 0: Close; 1: Open (PA4 of pin)
512 )))
513
514 [[image:image-20230630155908-6.png||height="295" width="927"]]
515
516
517 * (((
518 (% style="color:blue" %)**Count mod:Default=0**
519 )))
520
521 0: Uplink total open door times since factory
522
523 1: Uplink total open door times since last FPORT=2 uplink.
524
525
526 * (% style="color:blue" %)**TDC flag**
527
528 When the flag is 1, it means sending packets at normal time intervals.
529
530 Otherwise, it is a packet sent at non-TDC time.
531
532
533 * (((
534 (% style="color:#0000ff" %)**Alarm1 or Alarm2**
535 )))
536
537 See [[Alarm Base on Timeout>>||anchor="H3.3.3A0AlarmBaseonTimeout"]]
538
539
540 * (((
541 (% style="color:blue" %)**Status1 **(% style="color:#0000ff" %)**or **(% style="color:blue" %)**Status2**
542 )))
543
544 This bit is 1 when the door sensor is open and 0 when it is close.
545
546
547 * (((
548 (% style="color:blue" %)**Total open door events1 **(% style="color:#0000ff" %)**or**(% style="color:blue" %)** Total open door events2**
549 )))
550
551 Total pulse/counting base on open door.
552
553 Range (3 Bytes) : 0x000000 ~~ 0xFFFFFF . Max: 16777215
554
555
556 * (((
557 (% style="color:blue" %)**The last door open duration1 **(% style="color:#0000ff" %)**or**(% style="color:blue" %)** The last door open duration2**
558 )))
559
560 Door sensor last open duration.
561
562 Unit: sec.
563
564 [[image:image-20230701094042-1.png||height="154" width="763"]]
565
566
567 === 2.3.4  Historical Door Open/Close Event, FPORT~=3 ===
568
569
570 DS03A-LB/LS stores sensor values and users can retrieve these history values via the [[downlink command>>||anchor="H2.5DatalogFeature"]].
571
572 The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time open/close status.
573
574 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
575 |=(% colspan="5" style="background-color:#4F81BD;color:white;width:515px" %)**Real-Time Open/Close Status, FPORT=3**
576 |(% style="width:60px" %)**Size(bytes)**|(% style="width:80px" %)**1**|(% style="width:120px" %)**3**|(% style="width:150px" %)**3**|(% style="width:90px" %)**4**
577 |(% style="width:95px" %)Value|(% style="width:97px" %)(((
578 Status & [[Alarm>>||anchor="H3.3.3A0AlarmBaseonTimeout"]]
579 )))|(% style="width:95px" %)Total open door events|(% style="width:119px" %)(((
580 The last door open duration (unit: sec)
581 )))|(% style="width:108px" %)[[Unix TimeStamp>>||anchor="H2.5.2UnixTimeStamp"]]
582
583 **Status & Alarm:**
584
585 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
586 |(% style="background-color:#4f81bd; color:white; width:50px" %)**Size(bit)**|(% style="background-color:#4f81bd; color:white; width:75px" %)**bit7**|(% style="background-color:#4f81bd; color:white; width:65px" %)**bit6**|(% style="background-color:#4f81bd; color:white; width:50px" %)**[bit5:bit4]**|(% style="background-color:#4f81bd; color:white; width:50px" %)**bit3**|(% style="background-color:#4f81bd; color:white; width:70px" %)**bit2**|(% style="background-color:#4f81bd; color:white; width:80px" %)**bit1**|(% style="background-color:#4f81bd; color:white; width:75px" %)**bit0**
587 |(% style="width:76px" %)Value|(% style="width:88px" %)No ACK message|(% style="width:92px" %)Poll Message Flag|(% style="width:89px" %)Reserve|(% style="width:90px" %)(((
588 Count mod
589 )))|(% style="width:95px" %)(((
590 TDC flag 0:No; 1:Yes
591 )))|(% style="width:116px" %)(((
592 Alarm 0: No Alarm; 1: Alarm
593 )))|(% style="width:112px" %)(((
594 Status 0:Close; 1: Open
595 )))
596
597 * (((
598 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, DS03A-LB/LS will send max bytes according to the current DR and Frequency bands.
599 )))
600
601 For example, in the US915 band, the max payload for different DR is:
602
603 (((
604 **~1. DR0**: max is 11 bytes so one entry of data
605 )))
606
607 (((
608 **2. DR1**: max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
609 )))
610
611 (((
612 **3. DR2**: total payload includes 11 entries of data
613 )))
614
615 (((
616 **4. DR3**: total payload includes 22 entries of data.
617 )))
618
619 If DS03A-LB doesn't have any data in the polling time. It will uplink 11 bytes of 0
620
621 [[image:image-20230630155556-4.png||height="146" width="938"]]
622
623 **Downlink:**
624
625 0x31 64 9E 7D 34 64 9E 7E 9C 05
626
627
628 **Uplink:**
629
630 45 00 00 00 00 00 00 64 9E 7D 48 40 00 00 00 00 00 63 64 9E 7D 9C 41 00 00 01 00 00 63 64 9E 7D A4 40 00 00 01 00 00 8D 64 9E 7E 31 43 00 00 02 00 00 8D 64 9E 7E 44 48 00 00 02 00 00 1F 64 9E 7E 59 4B 00 00 03 00 00 1F 64 9E 7E 6B
631
632
633 **Parsed Value:**
634
635 [COUNTMOD, TDC_FLAG, ALARM,  DOOR_STATUS, OPEN_DOOR_TIMES, LAST_DOOR_OPEN_DURATION, TIME]
636
637
638 [SUM,YES,FALSE,OPEN,0,0,2023-06-30 06:59:20],
639
640 [SUM,NO,FALSE,CLOSE,0,99,2023-06-30 07:00:44],
641
642 [SUM,NO,FALSE,OPEN, 1,99,2023-06-30 07:00:52],
643
644 [SUM,NO,FALSE,CLOSE,1,141,2023-06-30 07:03:13],
645
646 [SUM,NO,TRUE,OPEN, 2,141,2023-06-30 07:03:32],
647
648 [PART,NO,FALSE,CLOSE,2,31,2023-06-30 07:03:53],
649
650 [PART,NO,TRUE,OPEN, 3,31,2023-06-30 07:04:11],
651
652 [[image:image-20230630172740-1.png||height="199" width="868"]]
653
654
655 == 2.4 Payload Decoder file ==
656
657
658 (((
659 In TTN, use can add a custom payload so it shows friendly. 
660 )))
661
662 (((
663 In the page **Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder** to add the decoder from:  [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]]
664 )))
665
666
667 == 2.5 Datalog Feature ==
668
669
670 (% style="color:blue" %)**Datalog Feature** (%%)is to ensure IoT Server can get all sampling data from Sensor even if the LoRaWAN network is down. For each sampling, DS03A-LB/LS will store the reading for future retrieving purposes.
671
672 (% style="color:red" %)**Note:After the device is reset,in cumulative counting mode,the last stored count value will be read as the initial value.**
673
674
675 === 2.5.1 Ways to get datalog via LoRaWAN ===
676
677
678 Set PNACKMD=1, DS03A-LB/LS will wait for ACK for every uplink, when there is no LoRaWAN network, DS03A-LB/LS will mark these records with non-ack messages and store the sensor data, and it will send all messages (10s interval) after the network recovery.
679
680 * a) DS03A-LB/LS will do an ACK check for data records sending to make sure every data arrive server.
681 * b) DS03A-LB/LS will send data in **CONFIRMED Mode** when PNACKMD=1, but DS03A-LB/LS won't re-transmit the packet if it doesn't get ACK, it will just mark it as a NONE-ACK message. In a future uplink if DS03A-LB/LS gets a ACK, DS03A-LB/LS will consider there is a network connection and resend all NONE-ACK Message.
682
683 === 2.5.2 Unix TimeStamp ===
684
685
686 DS03A-LB/LS uses Unix TimeStamp format based on
687
688 [[image:image-20250331163638-7.jpeg]]
689
690 User can get this time from link:  [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] :
691
692 Below is the converter example
693
694 [[image:image-20250331163648-8.jpeg]]
695
696 So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25
697
698
699 === 2.5.3 Set Device Time ===
700
701
702 User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command.
703
704 Once DS03A-LB/LS Joined LoRaWAN network, it will send the MAC command (DeviceTimeReq) and the server will reply with (DeviceTimeAns) to send the current time to DS03A-LB/LS. If DS03A-LB/LS fails to get the time from the server, DS03A-LB/LS will use the internal time and wait for next time request (AT+SYNCTDC to set the time request period, default is 10 days).
705
706 (% style="color:red" %)**Note: LoRaWAN Server need to support LoRaWAN v1.0.3(MAC v1.0.3) or higher to support this MAC command feature, Chirpstack,TTN v3 and loriot support but TTN v2 doesn't support. If server doesn't support this command, it will through away uplink packet with this command, so user will lose the packet with time request for TTN v2 if SYNCMOD=1.**
707
708
709 == 2.6 ​Show Data in DataCake IoT Server ==
710
711
712 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:
713
714
715 (% 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]]
716
717 (% style="color:blue" %)**Step 2:**(%%)** Configure DS03A-LB/LS in Datacake.**
718
719 [[image:image-20250331163745-9.jpeg]]
720
721
722
723 [[image:image-20250331163816-10.jpeg]]
724
725
726 [[image:image-20250331163900-11.jpeg]]
727
728 [[image:image-20250331163939-12.jpeg]]
729
730 [[image:image-20250331163958-13.jpeg]]
731
732
733 [[image:image-20250331164026-14.jpeg]]
734
735
736 [[image:image-20250331164049-15.jpeg]]
737
738
739 [[image:image-20250331164119-16.jpeg]]
740
741
742 [[image:image-20250331164144-17.jpeg]]
743
744
745 [[image:image-20250331164208-18.jpeg]]
746
747
748 == 2.7 Frequency Plans ==
749
750
751 The DS03A-LB/LS uses OTAA mode and below frequency plans by default. Each frequency band use different firmware, user update the firmware to the corresponding band for their country.
752
753 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]]
754
755
756 == 2.8 ​Firmware Change Log ==
757
758
759 **Firmware download link: **[[https:~~/~~/www.dropbox.com/sh/b0uwyzjs4px4eao/AADvI7fPRwsFKTglEmaRRuaaa?dl=0>>https://www.dropbox.com/sh/b0uwyzjs4px4eao/AADvI7fPRwsFKTglEmaRRuaaa?dl=0]]
760
761
762 = 3. Configure DS03A-LB/LS =
763
764 == 3.1 Configure Methods: ==
765
766
767 DS03A-LB/LS supports below configure method:
768
769 * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
770 * AT Command via UART Connection : See [[Connection>>http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H2.3UARTConnectionforSN50v3basemotherboard]].
771 * LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
772
773 == 3.2 General Commands ==
774
775
776 These commands are to configure:
777
778 * General system settings like: uplink interval.
779 * LoRaWAN protocol & radio related command.
780
781 They are same for all Dragino Devices which support DLWS-005 LoRaWAN Stack. These commands can be found on the wiki:
782
783 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/]]
784
785
786 == 3.3 Commands special design for DS03A-LB/LS ==
787
788
789 These commands only valid for DS03A-LB/LS, as below:
790
791
792 === 3.3.1  Set Transmit Interval Time ===
793
794
795 Feature: Change LoRaWAN End Node Transmit Interval.
796
797 (% style="color:blue" %)**AT Command: AT+TDC**
798
799 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
800 |=(% style="width: 156px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 137px;background-color:#4F81BD;color:white" %)**Function**|=(% style="background-color:#4F81BD;color:white" %)**Response**
801 |(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|(((
802 30000
803 OK
804 the interval is 30000ms = 30s
805 )))
806 |(% style="width:156px" %)AT+TDC=60000|(% style="width:137px" %)Set Transmit Interval|(((
807 OK
808 Set transmit interval to 60000ms = 60 seconds
809 )))
810
811 (% style="color:blue" %)**Downlink Command: 0x01**
812
813 Format: Command Code (0x01) followed by 3 bytes time value.
814
815 If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01.
816
817 * Example 1: Downlink Payload: 0100001E  ~/~/  Set Transmit Interval (TDC) = 30 seconds
818 * Example 2: Downlink Payload: 0100003C  ~/~/  Set Transmit Interval (TDC) = 60 seconds
819
820 === 3.3.2  Set Power Output Duration ===
821
822
823 Control the output duration 5V . Before each sampling, device will
824
825 ~1. first enable the power output to external sensor,
826
827 2. keep it on as per duration, read sensor value and construct uplink payload
828
829 3. final, close the power output.
830
831 (% style="color:blue" %)**AT Command: AT+5VT**
832
833 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
834 |=(% style="width: 156px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 204px; background-color:#4F81BD;color:white" %)**Function**|=(% style="background-color: #4F81BD;color:white; width: 149px;" %)**Response**
835 |(% style="width:156px" %)AT+5VT=?|(% style="width:204px" %)Show 5V open time.|(% style="width:149px" %)0 (default)
836 OK
837 |(% style="width:156px" %)AT+5VT=500|(% style="width:204px" %)Close after a delay of 500 milliseconds.|(% style="width:149px" %)(((
838 OK
839
840 )))
841
842 (% style="color:blue" %)**Downlink Command: 0x07**(%%)
843 Format: Command Code (0x07) followed by 2 bytes.
844
845 The first and second bytes are the time to turn on.
846
847 * Example 1: Downlink Payload: 070000  **~-~-->**  AT+5VT=0
848 * Example 2: Downlink Payload: 0701F4  **~-~-->**  AT+5VT=500
849
850 === 3.3.3  Enable / Disable Alarm ===
851
852
853 Feature: Enable/Disable Alarm for open/close event. Default value 0.
854
855 (% style="color:blue" %)**AT Command: **
856
857 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
858 |(% style="background-color:#4f81bd; color:white; width:153px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:276px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:86px" %)**Response**
859 |(% style="width:154px" %)AT+DISALARM=1|(% style="width:278px" %)End node will only send packets in TDC time.|OK
860 |(% style="width:154px" %)AT+DISALARM=0|(% style="width:278px" %)End node will send packets in TDC time or status change for door sensor|OK
861
862 (% style="color:blue" %)**Downlink Command: **
863
864 0xA7 01  ~/~/ Same As AT+DISALARM=1
865
866 0xA7 00  ~/~/ Same As AT+DISALARM=0
867
868
869 === 3.3.4  Alarm Base on Timeout ===
870
871
872 DS03A-LB/LS 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:
873
874 * (((
875 (% style="color:blue" %)**Keep Status: Status to be monitor**
876 )))
877
878 (% style="color:#037691" %)**Keep Status = 1**(%%): Monitor Close to Open event
879
880 (% style="color:#037691" %)**Keep Status = 0**(%%): Monitor Open to Close event
881
882
883 * (((
884 (% style="color:blue" %)**Keep Time: Timeout to send an Alarm**
885 )))
886
887 Range 0 ~~ 65535(0xFFFF) seconds.
888
889 If (% style="color:#037691" %)**keep time = 0**(%%), Disable Alarm Base on Timeout feature.
890
891 If (% style="color:#037691" %)**keep time > 0**(%%), device will monitor the keep status event and send an alarm when status doesn't change after timeout.
892
893
894 * (((
895 (% style="color:blue" %)**Downlink Command**
896 )))
897
898 (% style="color:#037691" %)**Command: 0xA9 aa bb cc dd**
899
900 **A9:** Command Type Code
901
902 **aa: **01:TTRIG1; 02:TTRIG2
903
904 **bb:** status to be monitored
905
906 **cc dd:** timeout.
907
908
909 **1) AT+TTRIG1 : (PA8 of pin)**
910
911 (% style="color:blue" %)**AT Command to configure:**
912
913 * (((
914 (% style="color:#037691" %)**AT+TTRIG1=1,30** (%%) **~-~->** When the **Keep Status** change from close to open, and device remains in open status for more than 30 seconds. DS03A-LB/LS will send an uplink packet, the Alarm1 bit(the second bit of 1^^st^^ byte of payload) on this uplink packet is set to 1.
915
916 (% style="color:#037691" %)**AT+TTRIG1=0,30** (%%) **~-~->** When the **Keep Status** change from open to close, and device remains in close status for more than 30 seconds. DS03A-LB/LS will send an uplink packet, the Alarm1 bit (the second bit of 1^^st^^ byte of payload) on this uplink packet is set to 1.
917 )))
918
919 * (((
920 (% style="color:#037691" %)**AT+TTRIG1=0,0**  (%%) **~-~-> ** Default Value, disable timeout Alarm.
921
922
923
924 )))
925
926 (% style="color:blue" %)**Downlink Command to configure:**
927
928 If user send 0xA9 01 00 00 1E: equal to AT+TTRIG1=1,30 **or** 0xA9 01 00 00 00: Equal to AT+TTRIG1=0,0.
929
930
931 **2) AT+TTRIG2 : (PA4 of pin,need to use AT+TTRCHANNEL=2)**
932
933 (% style="color:blue" %)**AT Command to configure:**
934
935 * (((
936 (% style="color:#037691" %)**AT+TTRIG2=1,30** (%%) **~-~->** When the **Keep Status** change from close to open, and device remains in open status for more than 30 seconds. DS03A-LB/LS will send an uplink packet, the Alarm2 bit (the second bit of 12^^st^^ byte of payload) on this uplink packet is set to 1.
937
938 (% style="color:#037691" %)**AT+TTRIG2=0,30** (%%) **~-~->** When the **Keep Status** change from open to close, and device remains in close status for more than 30 seconds. DS03A-LB/LS will send an uplink packet, the Alarm2 bit (the second bit of 12^^st^^ byte of payload) on this uplink packet is set to 1.
939 )))
940
941 * (((
942 (% style="color:#037691" %)**AT+TTRIG2=0,0**  (%%) **~-~-> ** Default Value, disable timeout Alarm.
943
944
945
946 )))
947
948 (% style="color:blue" %)**Downlink Command to configure:**
949
950 If user send 0xA9 02 00 00 1E: equal to AT+TTRIG2=0,30  **or**  0xA9 02 00 00 00: Equal to AT+TTRIG2=0,0.
951
952
953 === 3.3.5  TTRIG1 & TTRIG2 timeout status alarm ===
954
955
956 It needs to be used with AT+TTRIG1 or AT+TTRIG2.
957
958 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. (Max. 255 minutes)
959
960 (% style="color:blue" %)**AT Command:**
961
962 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
963 |=(% style="width: 155px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 279px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 76px;background-color:#4F81BD;color:white" %)**Response**
964 |(% style="width:155px" %)(((
965 AT+TTRALARM=0
966 )))|(% style="width:279px" %)(((
967 disable continuous alarm
968 )))|(% style="width:84px" %)(((
969 OK
970 )))
971 |(% style="width:155px" %)(((
972 AT+TTRALARM=60
973 )))|(% style="width:279px" %)(((
974 The alarm interval is 60 minutes (unit: minutes)
975 )))|(% style="width:84px" %)(((
976 OK
977 )))
978
979 (% style="color:blue" %)**Downlink Command:**
980
981 Example:  0C aa  => AT+TTRALARM= aa
982
983
984 === 3.3.6  Count Mod ===
985
986
987 Feature: Manually set the count mode.
988
989 (% style="color:blue" %)**AT Command:**
990
991 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
992 |=(% style="width: 154px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 275px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 86px;background-color:#4F81BD;color:white" %)**Response**
993 |(% style="width:155px" %)(((
994 AT+COUNTMOD=0
995 )))|(% style="width:277px" %)(((
996 the count value keeps accumulating mode
997 )))|(% style="width:86px" %)(((
998 OK
999 )))
1000 |(% style="width:155px" %)(((
1001 AT+COUNTMOD=1
1002 )))|(% style="width:277px" %)(((
1003 the count value will be reset after each TDC time(Last Close Duration Reset after each uplink)
1004 )))|(% style="width:86px" %)(((
1005 OK
1006 )))
1007
1008 (% style="color:blue" %)**Downlink Command:**
1009
1010 Example:  0B aa  => AT+COUNTMOD = second byte
1011
1012
1013 === 3.3.7  Number of channel of door sensors ===
1014
1015
1016 Feature: Set the number of door sensor channels.
1017
1018 (% style="color:blue" %)**AT Command:**
1019
1020 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %)
1021 |=(% style="width: 155px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 288px; background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 57px;background-color:#4F81BD;color:white" %)**Response**
1022 |(% style="width:155px" %)(((
1023 AT+TTRCHANNEL=1
1024 )))|(% style="width:259px" %)(((
1025 Set as single channel, only use PA8 pin as interrupt pin.
1026 )))|(% style="width:44px" %)(((
1027 OK
1028 )))
1029 |(% style="width:155px" %)(((
1030 AT+TTRCHANNEL=2
1031 )))|(% style="width:259px" %)(((
1032 Set as dual channel, use PA8 pin and PA4 pin as interrupt pin.
1033 )))|(% style="width:44px" %)(((
1034 OK
1035 )))
1036
1037 (% style="color:blue" %)**Downlink Command:**
1038
1039 Example:  0D aa => AT+TTRCHANNEL = second byte
1040
1041
1042 === 3.3.8  Set Time Sync Mode ===
1043
1044
1045 Feature: Enable/Disable Sync system time via LoRaWAN MAC Command (DeviceTimeReq), LoRaWAN server must support v1.0.3 protocol to reply to this command.
1046
1047 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.
1048
1049 (% style="color:blue" %)**AT Command:**
1050
1051 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %)
1052 |=(% style="width: 155px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 288px; background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 57px;background-color:#4F81BD;color:white" %)**Response**
1053 |(% style="width:155px" %)(((
1054 AT+SYNCMOD=1
1055 )))|(% style="width:259px" %)(((
1056 Enable Sync system time via LoRaWAN MAC Command (DeviceTimeReq) The default is zero time zone.
1057 )))|(% style="width:44px" %)(((
1058 OK
1059 )))
1060 |(% style="width:155px" %)(((
1061 AT+SYNCMOD=1,8
1062 )))|(% style="width:259px" %)(((
1063 Enable Sync system time via LoRaWAN MAC Command (DeviceTimeReq) Set to East eight time zone.
1064 )))|(% style="width:44px" %)(((
1065 OK
1066 )))
1067 |(% style="width:155px" %)AT+SYNCMOD=1,-12|(% style="width:259px" %)Enable Sync system time via LoRaWAN MAC Command (DeviceTimeReq) Set to West Twelve Time Zone.|(% style="width:44px" %)OK
1068
1069 (% style="color:blue" %)**Downlink Command:**
1070
1071 0x28 01  ~/~/ Same As AT+SYNCMOD=1
1072
1073 0x28 01 08  ~/~/ Same As AT+SYNCMOD=1,8
1074
1075 0x28 01 F4  ~/~/ Same As AT+SYNCMOD=1,-12
1076
1077 0x28 00  ~/~/ Same As AT+SYNCMOD=0
1078
1079
1080 === 3.3.9  Clear the open door times and the duration of the last open door ===
1081
1082
1083 (% style="color:blue" %)**AT Command:**
1084
1085 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
1086 |=(% style="width: 163px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 290px; background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 57px;background-color:#4F81BD;color:white" %)**Response**
1087 |(% style="width:155px" %)AT+CLRC|(% style="width:259px" %)clear the open door times and the duration of the last open door.|(% style="width:44px" %)(((
1088 OK
1089 )))
1090
1091 (% style="color:blue" %)**Downlink Command:**(%%)0xA6 01
1092
1093 The sensor will clear the open door times and the duration of the last open door.
1094
1095
1096 === 3.3.10  Set the count value of the number of open door ===
1097
1098
1099 (% style="color:blue" %)**AT Command:**
1100
1101 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %)
1102 |=(% style="width: 155px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 288px; background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 57px;background-color:#4F81BD;color:white" %)**Response**
1103 |(% style="width:155px" %)(((
1104 AT+SETCNT=1,100
1105 )))|(% style="width:259px" %)(((
1106 Set the open door times of PA8 pin to 100 times.
1107 )))|(% style="width:44px" %)(((
1108 OK
1109 )))
1110 |(% style="width:155px" %)AT+SETCNT=1,0|(% style="width:259px" %)Clear the open door times of PA8 pin.|(% style="width:44px" %)OK
1111 |(% style="width:155px" %)(((
1112 AT+SETCNT=2,50
1113 )))|(% style="width:259px" %)(((
1114 Set the open door times of PA4 pin to 100 times.
1115 )))|(% style="width:44px" %)(((
1116 OK
1117 )))
1118
1119 (% style="color:blue" %)**Downlink Command:**
1120
1121 0xA6 01 00 00 64  ==>  AT+SETCNT=1,100
1122
1123 0xA6 01 00 00 00  ==>  AT+SETCNT=1,0
1124
1125 0xA6 02 00 00 32  ==>  AT+SETCNT=2,50
1126
1127
1128 = 4. Battery & Power Consumption =
1129
1130
1131 DS03A-LB use ER26500 + SPC1520 battery pack and DS03A-LS use 3000mAh Recharable Battery with Solar Panel. See below link for detail information about the battery info and how to replace.
1132
1133 [[**Battery Info & Power Consumption Analyze**>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
1134
1135
1136 = 5. OTA firmware update =
1137
1138
1139 User can change firmware DS03A-LB/LS to:
1140
1141 * Change Frequency band/ region.
1142 * Update with new features.
1143 * Fix bugs.
1144
1145 Firmware and changelog can be downloaded from : **[[Firmware download link>>https://www.dropbox.com/scl/fo/ztlw35a9xbkomu71u31im/AHx26Z9LCICx1Glt64ufq6o/LoRaWAN%20End%20Node/DS03A-LB?rlkey=ojjcsw927eaow01dgooldq3nu&subfolder_nav_tracking=1&dl=0]]**
1146
1147 Methods to Update Firmware:
1148
1149 * (Recommanded way) OTA firmware update via wireless:** [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/]]**
1150 * Update through UART TTL interface: **[[Instruction>>url:http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H1.LoRaSTv4baseHardware]]**.
1151
1152 = 6. FAQ =
1153
1154
1155
1156 = 7. Order Info =
1157
1158
1159 **Part Number: (% style="color:blue" %)DS03A-LB-XX (%%)or (% style="color:blue" %)DS03A-LS-XX(%%)**
1160
1161 (% style="color:red" %)**XX**(%%): The default frequency band
1162
1163 * (% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band
1164
1165 * (% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band
1166
1167 * (% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band
1168
1169 * (% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band
1170
1171 * (% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band
1172
1173 * (% style="color:red" %)**US915**(%%): LoRaWAN US915 band
1174
1175 * (% style="color:red" %)**IN865**(%%): LoRaWAN IN865 band
1176
1177 * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
1178
1179 = 8. ​Packing Info =
1180
1181
1182 (% style="color:#037691" %)**Package Includes**:
1183
1184 * DS03A-LB or DS03A-LS LoRaWAN Temperature Sensor
1185
1186 (% style="color:#037691" %)**Dimension and weight**:
1187
1188 * Device Size: cm
1189
1190 * Device Weight: g
1191
1192 * Package Size / pcs : cm
1193
1194 * Weight / pcs : g
1195
1196 = 9. Support =
1197
1198
1199 * 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.
1200
1201 * 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.cc>>mailto:Support@dragino.cc]].