Last modified by Mengting Qiu on 2025/07/03 16:36

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