Version 123.1 by Mengting Qiu on 2023/11/14 16:50

Show last authors
1 (% style="text-align:center" %)
2 [[image:image-20231011093014-5.png]]
3
4
5
6
7 **Table of Contents:**
8
9 {{toc/}}
10
11
12
13
14
15
16 = 1. Introduction =
17
18 == 1.1 What is DS03A-NB NB-IoT Door Sensor ==
19
20
21 The Dragino DS03A-NB is a (% style="color:blue" %) **NB-IoT Door Sensor**(%%) for Internet of Things solution. It (% style="color:blue" %)**detects door open/close status**(%%) and uplinks to IoT server via NB-IoT network. user can see the door status, open duration, open counts in the IoT Server.
22
23 The DS03A-NB 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-NB can count each open event and uplink periodically.
24
25 DS03A-NB supports (% style="color:blue" %)**Datalog Feature,** (%%)it can save the data when there is no NB-IoT network and uplink when network recover.
26
27 DS03A-NB 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.
28
29 DS03A-NB is designed for outdoor use. It has a weatherproof enclosure and industrial level battery to work in low to high temperatures
30
31 DS03A-NB supports different uplink methods including (% style="color:blue" %)**MQTT, MQTTs, UDP & TCP**(%%) for different application requirement, and support uplinks to various IoT Servers.
32
33 DS03A-NB (% style="color:blue" %)**supports BLE configure **(%%)and(% style="color:blue" %)** OTA update**(%%) which make user easy to use.
34
35 DS03A-NB is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long-term use up to several years.
36
37 DS03A-NB has optional built-in SIM card and default IoT server connection version. Which makes it works with simple configuration.
38
39 [[image:image-20231011093807-6.png||height="278" width="879"]]
40
41
42 == 1.2 ​Features ==
43
44
45 * NB-IoT Bands: B1/B2/B3/B4/B5/B8/B12/B13/B17/B18/B19/B20/B25/B28/B66/B70/B85 @H-FDD
46 * Ultra-low power consumption
47 * Door Open/Close detect
48 * Door open/close statistics
49 * Datalog Feature
50 * Open Alarm Feature
51 * Multiply Sampling and one uplink
52 * Support Bluetooth v5.1 remote configure and update firmware
53 * Uplink on periodically
54 * Downlink to change configure
55 * 8500mAh Battery for long term use
56 * Nano SIM card slot for NB-IoT SIM
57
58 == 1.3 Specification ==
59
60
61 (% style="color:blue" %)**Common DC Characteristics:**
62
63 * Supply Voltage: 2.5v ~~ 3.6v
64 * Operating Temperature: -40 ~~ 85°C
65
66 (% style="color:blue" %)**NB-IoT Spec:**
67
68 (% style="color:#037691" %)**NB-IoT Module: BC660K-GL**
69
70 (% style="color:#037691" %)**Support Bands:**
71
72 * B1 @H-FDD: 2100MHz
73 * B2 @H-FDD: 1900MHz
74 * B3 @H-FDD: 1800MHz
75 * B4 @H-FDD: 2100MHz
76 * B5 @H-FDD: 860MHz
77 * B8 @H-FDD: 900MHz
78 * B12 @H-FDD: 720MHz
79 * B13 @H-FDD: 740MHz
80 * B17 @H-FDD: 730MHz
81 * B18 @H-FDD: 870MHz
82 * B19 @H-FDD: 870MHz
83 * B20 @H-FDD: 790MHz
84 * B25 @H-FDD: 1900MHz
85 * B28 @H-FDD: 750MHz
86 * B66 @H-FDD: 2000MHz
87 * B70 @H-FDD: 2000MHz
88 * B85 @H-FDD: 700MHz
89
90 (% style="color:blue" %)**Battery:**
91
92 * Li/SOCI2 un-chargeable battery
93 * Capacity: 8500mAh
94 * Self Discharge: <1% / Year @ 25°C
95 * Max continuously current: 130mA
96 * Max boost current: 2A, 1 second
97
98 (% style="color:blue" %)**Power Consumption**
99
100 * STOP Mode: 10uA @ 3.3v
101 * Max transmit power: 350mA@3.3v
102
103 (% class="wikigeneratedid" id="H1.4Ratedenvironmentalconditions" %)
104 (% style="display:none" %) (%%)
105
106
107 == 1.4 Applications ==
108
109
110 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS03A%20-%20Outdoor%20LoRaWAN%20OpenClose%20Door%20Sensor%20Manual/WebHome/1654741400370-813.png?rev=1.1||alt="1654741400370-813.png"]]
111
112
113 == 1.5 Sleep mode and working mode ==
114
115
116 (% style="color:blue" %)**Deep Sleep Mode: **(%%)Sensor doesn't have any NB-IoT activate. This mode is used for storage and shipping to save battery life.
117
118 (% style="color:blue" %)**Working Mode:** (%%)In this mode, Sensor will work as NB-IoT Sensor to Join NB-IoT 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.
119
120
121 == 1.6 Button & LEDs ==
122
123
124 [[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675071855856-879.png]]
125
126
127 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
128 |=(% style="width: 167px;background-color:#4F81BD;color:white" %)**Behavior on ACT**|=(% style="width: 117px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width:225px;background-color:#4F81BD;color:white" %)**Action**
129 |(% style="width:167px" %)Pressing ACT between 1s < time < 3s|(% style="width:117px" %)Send an uplink|(% style="width:225px" %)(((
130 If sensor has already attached to NB-IoT network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once.
131 Meanwhile, BLE module will be active and user can connect via BLE to configure device.
132 )))
133 |(% style="width:167px" %)Pressing ACT for more than 3s|(% style="width:117px" %)Active Device|(% style="width:225px" %)(((
134 (% 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 attach NB-IoT network.
135 (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.
136 Once sensor is active, BLE module will be active and user can connect via BLE to configure device, no matter if device attach NB-IoT network or not.
137 )))
138 |(% 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.
139
140 (% style="color:red" %)**Note: When the device is executing a program, the buttons may become invalid. It is best to press the buttons after the device has completed the program execution.**
141
142
143 == 1.7 BLE connection ==
144
145
146 DS03A-NB support BLE remote configure and firmware update.
147
148
149 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:
150
151 * Press button to send an uplink
152 * Press button to active device.
153 * Device Power on or reset.
154
155 If there is no activity connection on BLE in 60 seconds, sensor will shut down BLE module to enter low power mode.
156
157
158 == 1.8 Pin Definitions & Switch ==
159
160
161 [[image:image-20230819104805-5.png]]
162
163
164 === 1.8.1 Jumper JP2 ===
165
166
167 Power on Device when put this jumper.
168
169
170 === 1.8.2 BOOT MODE / SW1 ===
171
172
173 **1)** (% style="color:blue" %)**ISP**(%%): upgrade mode, device won't have any signal in this mode. but ready for upgrade firmware. LED won't work. Firmware won't run.
174
175 **2)** (% style="color:blue" %)**Flash**(%%): work mode, device starts to work and send out console output for further debug
176
177
178 === 1.8.3 Reset Button ===
179
180
181 Press to reboot the device.
182
183 (% style="display:none" %)
184
185
186 == 1.9 Mechanical ==
187
188 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual/WebHome/1675143884058-338.png?rev=1.1||alt="1675143884058-338.png"]]
189
190 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual/WebHome/1675143899218-599.png?rev=1.1||alt="1675143899218-599.png"]]
191
192 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual/WebHome/1675143909447-639.png?rev=1.1||alt="1675143909447-639.png"]]
193
194
195
196 **Probe Mechanical:**
197
198
199 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS03A%20-%20Outdoor%20LoRaWAN%20OpenClose%20Door%20Sensor%20Manual/WebHome/1654741444887-479.png?width=513&height=399&rev=1.1||alt="1654741444887-479.png"]]
200
201
202
203 == 1.10 Magnet Distance ==
204
205
206 * Wood Door: 10mm ~~ 30mm
207 * Iron Door: 30 ~~ 45mm
208
209 = 2. Use DS03A-NB to communicate with IoT Server =
210
211 == 2.1 Send data to IoT server via NB-IoT network ==
212
213
214 The DS03A-NB is equipped with a NB-IoT module, the pre-loaded firmware in DS03A-NB will get environment data from sensors and send the value to local NB-IoT network via the NB-IoT module.  The NB-IoT network will forward this value to IoT server via the protocol defined by DS03A-NB.
215
216
217 Below shows the network structure:
218
219 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/DS03A-NB_NB-IoT_Door_Sensor_User_Manual/WebHome/image-20231011093807-6.png?width=879&height=278&rev=1.1||alt="image-20231011093807-6.png"]]
220
221
222 There are two version: (% style="color:blue" %)**-GE**(%%) and (% style="color:blue" %)**-1D**(%%) version of DS03A-NB.
223
224
225 (% style="color:blue" %)**GE Version**(%%): This version doesn't include SIM card or point to any IoT server. User needs to use AT Commands to configure below two steps to set DS03A-NB send data to IoT server.
226
227 * Install NB-IoT SIM card and configure APN. See instruction of [[Attach Network>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H2.AttachNetwork]].
228
229 * Set up sensor to point to IoT Server. See instruction of [[Configure to Connect Different Servers>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.Configuretoconnecttodifferentservers]]. 
230
231 Below shows result of different server as a glance.
232
233 (% border="1" cellspacing="4" style="width:515px" %)
234 |(% style="background-color:#4f81bd; color:white; width:100px" %)**Servers**|(% style="background-color:#4f81bd; color:white; width:300px" %)**Dash Board**|(% style="background-color:#4f81bd; color:white; width:115px" %)**Comments**
235 |(% style="width:127px" %)[[Node-Red>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.5A0Node-RedA028viaA0MQTT29]]|(% style="width:385px" %)(((
236 (% style="text-align:center" %)
237 [[image:image-20230819113244-8.png||height="183" width="367"]]
238 )))|(% style="width:170px" %)
239 |(% style="width:127px" %)[[DataCake>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.4Datacake]]|(% style="width:385px" %)(((
240 (% style="text-align:center" %)
241 [[image:image-20230819113244-9.png||height="119" width="367"]]
242 )))|(% style="width:170px" %)
243 |(% style="width:127px" %)[[Tago.IO>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.7A0Tago.ioA028viaA0MQTT29]]|(% style="width:385px" %) |(% style="width:170px" %)
244 |(% style="width:127px" %)[[General UDP>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.1GeneralA0UDPA0Connection]]|(% style="width:385px" %)Raw Payload. Need Developer to design Dash Board|(% style="width:170px" %)
245 |(% style="width:127px" %)[[General MQTT>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.2GeneralA0MQTTA0Connection]]|(% style="width:385px" %)Raw Payload. Need Developer to design Dash Board|(% style="width:170px" %)
246 |(% style="width:127px" %)[[ThingSpeak>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.3A0ThingSpeakA028viaA0MQTT29]]|(% style="width:385px" %)(((
247 (% style="text-align:center" %)
248 [[image:image-20230819113244-10.png||height="104" width="367"]]
249 )))|(% style="width:170px" %)
250 |(% style="width:127px" %)[[ThingsBoard>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.6A0ThingsBoard.CloudA028viaA0MQTT29]]|(% style="width:385px" %)(((
251 (% style="text-align:center" %)
252 [[image:image-20230819113244-11.png||height="141" width="367"]]
253 )))|(% style="width:170px" %)
254
255 (% style="color:blue" %)**1D Version**(%%): This version has 1NCE SIM card pre-installed and configure to send value to DataCake. User Just need to select the sensor type in DataCake and Activate DS03A-NB and user will be able to see data in DataCake. See here for [[DataCake Config Instruction>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.4Datacake]].
256
257
258 == 2.2 ​Payload Types ==
259
260
261 To meet different server requirement, DS03A-NB supports different payload type.
262
263 **Includes:**
264
265 * [[General JSON format payload>>||anchor="H2.2.1GeneralJsonFormat28Type3D529"]]. (Type=5)
266
267 * [[HEX format Payload>>||anchor="H2.2.2HEXformatPayload28Type3D029"]]. (Type=0)
268
269 * [[ThingSpeak Format>>||anchor="H2.2.4ThingSpeakPayload28Type3D129"]]. (Type=1)
270
271 * [[ThingsBoard Format>>||anchor="H2.2.3ThingsBoardPayload28Type3D329"]]. (Type=3)
272
273 User can specify the payload type when choose the connection protocol. Example:
274
275 (% style="color:#037691" %)**AT+PRO=2,0**  (%%) ~/~/ Use UDP Connection & hex Payload
276
277 (% style="color:#037691" %)**AT+PRO=2,5**   (%%) ~/~/ Use UDP Connection & Json Payload
278
279 (% style="color:#037691" %)**AT+PRO=3,5 ** (%%) ~/~/ Use MQTT Connection & Json Payload
280
281
282 === 2.2.1 General Json Format(Type~=5) ===
283
284
285 This is the General Json Format. As below:
286
287 (% style="color:#4472c4" %)**{"IMEI":"866207052559857","Model":"DS03A-NB","level status":1,"alarm status":0,"door open num":0,"last open time":0,"level status2":1,"alarm status2":0,"door open num2":0,"last open time2":0,"battery":3.48,"signal":24,"1":{1,0,0,2023/11/13 09:59:01},"2":{0,0,261,2023/11/13 03:20:00},"3":{237,9896971,263,2023/11/13 03:05:00},"4":{0,29,263,2023/11/13 02:20:12},"5":{215,9897015,268,2023/11/13 01:58:16},"6":{0,79,261,2023/11/13 01:43:16},"7":{227,9896991,5368540,2023/11/13 01:18:46},"8":{0,19,5367640,2023/11/11 08:53:57}}**
288
289
290 [[image:image-20231113180055-1.png]]
291
292
293 (% style="color:red" %)**Notice, from above payload:**
294
295 * Distance , Battery & Signal are the value at uplink time.
296
297 * Json entry 1 ~~ 8 are the last 1 ~~ 8 sampling data as specify by (% style="color:#037691" %)**AT+NOUD=8 ** (%%)Command. Each entry includes (from left to right): Water Flow, Sampling time.
298
299 === 2.2.2 HEX format Payload(Type~=0) ===
300
301
302 This is the HEX Format. HEX format Payload Single-channel and double-channel payload have different byte lengths.w
303
304
305 **The HEX format payload for the single-channel mode is as follows:**
306
307 (% style="color:#4472c4" %)**f86620705255985712640d9c180101000000000000006551f424010000000000006551f36500000000000105655195e0ed97040b0001076551925c0000001d000107655187dcd797043700010c655182b80000004f00010565517f34e397041f51eadc655179760000001351e758654f4125**
308
309 [[image:image-20231114091247-2.png||height="186" width="1363"]]
310
311
312 If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the NB sensor uplink data.
313
314 [[image:image-20231114094432-3.png]]
315
316
317
318 **The HEX format payload for the double-channel mode is as follows:**
319
320 (% style="color:#4472c4" %)**f86620705255985712640db71701010000000000000001000000000000006552d13401000000000000000000000000006551f365000000000001050000005f00005f655195e0ed97040b0001070000005c00005c6551925c0000001d00010700000033000033655187dcd797043700010c00000033000033655182b80000004f0001050000003300003365517f34e397041f51eadc00000000000000655179760000001351e75800000000000000654f4125**
321
322 [[image:image-20231114091229-1.png||height="180" width="1584"]]
323
324
325 If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the NB sensor uplink data.
326
327 [[image:image-20231114094838-5.png]]
328
329
330 (% style="color:blue" %)**Version:**
331
332 These bytes include the hardware and software version.
333
334 (% style="color:#037691" %)**Higher byte:**(%%) Specify Sensor Model: 0x12 for DS03A-NB
335
336 (% style="color:#037691" %)**Lower byte:**(%%) Specify the software version: 0x64=100, means firmware version 1.0.0
337
338
339 (% style="color:blue" %)**BAT (Battery Info):**
340
341 Ex1: 0x0dda = 3546mV
342
343
344 (% style="color:blue" %)**Signal Strength:**
345
346 NB-IoT Network signal Strength.
347
348 **Ex1: 0x15 = 21**
349
350 **0**  -113dBm or less
351
352 **1**  -111dBm
353
354 **2...30** -109dBm... -53dBm
355
356 **31**   -51dBm or greater
357
358 **99**    Not known or not detectable
359
360
361 (% style="color:blue" %)**Timestamp:   **
362
363 Unit Timestamp Example: 650abc40(H) = 1695202368(D)
364
365 Put the decimal value into this link([[https:~~/~~/www.epochconverter.com)>>https://www.epochconverter.com]]) to get the time.
366
367
368 === 2.2.3 ThingsBoard Payload(Type~=3) ===
369
370
371 Type3 payload special design for ThingsBoard, it will also configure other default server to ThingsBoard.
372
373 (% style="color:#4472c4" %)** {"IMEI": "866207058378443","Model": "DS03A","flow": 502,"battery": 3.57,"signal": 23}**
374
375 [[image:image-20230922094043-2.png||height="558" width="851"]]
376
377
378 === 2.2.4 ThingSpeak Payload(Type~=1) ===
379
380
381 This payload meets ThingSpeak platform requirement. It includes only four fields. Form 1~~3 are:
382
383 Distance, Battery & Signal. This payload type only valid for ThingsSpeak Platform
384
385 As below:
386
387 (% style="color:#4472c4" %)**field1=Flow value&field2=Battery value&field3=signal value**
388
389 [[image:image-20231114165017-6.png]]
390
391 [[image:image-20231114165035-7.png||height="674" width="1036"]]
392
393
394 == 2.3  ​Uplink Payload ==
395
396 === 2.3.1  Sensor Configuration, FPORT~=4 ===
397
398
399 DS03A-NB will only send this command after getting the downlink command **(0x26 02)** from the server.
400
401 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
402 |(% colspan="8" style="background-color:#4f81bd; color:white; width:515px" %)**Sensor Configuration FPORT=4**
403 |**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**
404 |**Value**|(% style="width:75px" %)TDC (unit:sec)|(% style="width:77px" %)Disalarm|(% style="width:96px" %)(((
405 Keep status1
406 )))|(% style="width:99px" %)(((
407 Keep time1(unit: sec)
408 )))|(% style="width:87px" %)Keep status2|(% style="width:97px" %)(((
409 Keep time2(unit: sec)
410 )))|(% style="width:98px" %)(((
411 Alarm interval(unit: min)
412 )))
413
414 Example parse in TTNv3
415
416 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/DS03A-LB/WebHome/image-20230630155527-3.png?width=902&height=146&rev=1.1||alt="image-20230630155527-3.png"]]
417
418
419 * (((
420 (% style="color:blue" %)**TDC: (default: 0x001C20)**
421 )))
422
423 Uplink interval for the Open/Close Event, default value is 0x001C20 which is 7200 seconds = 2 hours.
424
425
426 * (((
427 (% style="color:blue" %)**Disalarm: (default: 0)**
428 )))
429
430 **If Disalarm = 1**, DS03A-NB 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.
431
432 **If Disalarm = 0**, DS03A-NB 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.
433
434 (% style="color:red" %)** Note: When Disalarm=0, a high frequently open/close event will cause lots of uplink and drain battery very fast. **
435
436
437 * (((
438 (% style="color:blue" %)**Keep Status1 & Keep Time1 & Keep Status2 & Keep Time2**
439 )))
440
441 Shows the configure value of [[Alarm Base on Timeout Feature>>||anchor="H2.9AlarmBaseonTimeout"]]
442
443
444 * (((
445 (% style="color:blue" %)**Alarm interval(default: 0)**
446 )))
447
448 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.
449
450
451 === 2.3.2  Real-Time Open/Close Status, Uplink FPORT~=2 ===
452
453
454 DS03A-NB will send this uplink **after** Device Status once join the LoRaWAN network successfully. And DS03A-NB will send uplinks when:
455
456 * Every 2 hours, this interval [[can be changed>>||anchor="H2.7SetTransmitIntervalTime"]].
457 * There is an Open/Close event.  (This info can be disabled by AT+DISALARM=1)
458
459 **1) When (% style="color:blue" %)AT+TTRCHANNEL=1(%%), Uplink Payload totals (% style="color:blue" %)11 bytes. (Default mode)(%%)**
460
461 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
462 |=(% colspan="5" style="background-color:#4F81BD;color:white;width:515px" %)**Real-Time Open/Close Status, FPORT=2**
463 |(% style="width:94px" %)**Size(bytes)**|(% style="width:97px" %)**1**|(% style="width:95px" %)**3**|(% style="width:119px" %)**3**|(% style="width:107px" %)**4**
464 |(% style="width:95px" %)**Value**|(% style="width:97px" %)(((
465 Status & [[Alarm>>||anchor="2.10TTRIG126TTRIG2timeoutstatusalarm"]]
466 )))|(% style="width:95px" %)Total open door events|(% style="width:119px" %)(((
467 The last door open duration (unit: sec)
468 )))|(% style="width:108px" %)Unix TimeStamp
469
470 **Status & Alarm:**
471
472 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
473 |(% 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**
474 |(% style="width:76px" %)**Value**|(% style="width:96px" %)Reserve|(% style="width:110px" %)(((
475 Count mod
476 )))|(% style="width:106px" %)TDC flag 0:No;1:Yes|(% style="width:148px" %)(((
477 Alarm 0: No Alarm; 1: Alarm
478 )))|(% style="width:131px" %)(((
479 Status 0: Close; 1: Open
480 )))
481
482 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/DS03A-LB/WebHome/image-20230630155451-2.png?width=928&height=246&rev=1.1||alt="image-20230630155451-2.png"]]
483
484
485 * (((
486 (% style="color:blue" %)**Count mod:Default=0**
487 )))
488
489 0: Uplink total open door times since factory
490
491 1: Uplink total open door times since last FPORT=2 uplink.
492
493
494 * (% style="color:blue" %)**TDC flag**
495
496 When the flag is 1, it means sending packets at normal time intervals.
497
498 Otherwise, it is a packet sent at non-TDC time.
499
500
501 * (((
502 (% style="color:#0000ff" %)**Alarm**
503 )))
504
505 See [[Alarm Base on Timeout>>||anchor="H3.3.3A0AlarmBaseonTimeout"]]
506
507
508 * (((
509 (% style="color:blue" %)**Status**
510 )))
511
512 This bit is 1 when the door sensor is open and 0 when it is close.
513
514
515 * (((
516 (% style="color:blue" %)**Total open door events**
517 )))
518
519 Total pulse/counting base on open door.
520
521 Range (3 Bytes) : 0x000000 ~~ 0xFFFFFF . Max: 16777215
522
523
524 * (((
525 (% style="color:blue" %)**The last door open duration**
526 )))
527
528 Door sensor last open duration.
529
530 Unit: sec.
531
532 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/DS03A-LB/WebHome/image-20230701094042-1.png?width=763&height=154&rev=1.1||alt="image-20230701094042-1.png"]]
533
534
535 **2) When (% style="color:blue" %)AT+TTRCHANNEL=2(%%), Uplink Payload totals (% style="color:blue" %)18 bytes(%%)**(% style="color:blue" %).
536
537 (When the maximum DR of some frequencies is 11 bytes, it will cause the server to receive empty packets)
538
539 (% style="color:red" %)**Note:When using the AT+TTRCHANNEL=2 command, the Datalog function cannot be used.**
540
541 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
542 |=(% colspan="8" style="background-color:#4F81BD;color:white; width: 515px;" %)**Real-Time Open/Close Status, FPORT=2**
543 |(% 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**
544 |(% style="width:95px" %)**Value**|(% style="width:97px" %)(((
545 Status1 & Alarm1
546 )))|(% style="width:95px" %)Total open door events1|(% style="width:125px" %)(((
547 The last door open duration1 (unit: sec)
548 )))|(% style="width:100px" %)Unix TimeStamp|(% style="width:86px" %)(((
549 Status2 & Alarm2
550 )))|(% style="width:96px" %)Total open door events2|(% style="width:126px" %)The last door open duration2 (unit: sec)
551
552 **Status1 & Alarm1:**
553
554 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:514px" %)
555 |(% 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**
556 |(% style="width:76px" %)**Value**|(% style="width:96px" %)Reserve|(% style="width:99px" %)(((
557 Count mod
558 )))|(% style="width:103px" %)TDC flag 0:No;1:Yes|(% style="width:216px" %)(((
559 Alarm1 0: No Alarm; 1: Alarm (PA8 of pin)
560 )))|(% style="width:181px" %)(((
561 Status1 0: Close; 1: Open (PA8 of pin)
562 )))
563
564 **Status2 & Alarm2:**
565
566 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
567 |(% 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**
568 |(% style="width:76px" %)**Value**|(% style="width:113px" %)Reserve|(% style="width:219px" %)(((
569 Alarm2 0: No Alarm; 1: Alarm (PA4 of pin)
570 )))|(% style="width:181px" %)(((
571 Status2 0: Close; 1: Open (PA4 of pin)
572 )))
573
574 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/DS03A-LB/WebHome/image-20230630155908-6.png?width=927&height=295&rev=1.1||alt="image-20230630155908-6.png"]]
575
576
577 * (((
578 (% style="color:blue" %)**Count mod:Default=0**
579 )))
580
581 0: Uplink total open door times since factory
582
583 1: Uplink total open door times since last FPORT=2 uplink.
584
585
586 * (% style="color:blue" %)**TDC flag**
587
588 When the flag is 1, it means sending packets at normal time intervals.
589
590 Otherwise, it is a packet sent at non-TDC time.
591
592
593 * (((
594 (% style="color:#0000ff" %)**Alarm1 or Alarm2**
595 )))
596
597 See [[Alarm Base on Timeout>>||anchor="H2.9AlarmBaseonTimeout"]]
598
599
600 * (((
601 (% style="color:blue" %)**Status1 **(% style="color:#0000ff" %)**or **(% style="color:blue" %)**Status2**
602 )))
603
604 This bit is 1 when the door sensor is open and 0 when it is close.
605
606
607 * (((
608 (% style="color:blue" %)**Total open door events1 **(% style="color:#0000ff" %)**or**(% style="color:blue" %)** Total open door events2**
609 )))
610
611 Total pulse/counting base on open door.
612
613 Range (3 Bytes) : 0x000000 ~~ 0xFFFFFF . Max: 16777215
614
615
616 * (((
617 (% style="color:blue" %)**The last door open duration1 **(% style="color:#0000ff" %)**or**(% style="color:blue" %)** The last door open duration2**
618 )))
619
620 Door sensor last open duration.
621
622 Unit: sec.
623
624 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/DS03A-LB/WebHome/image-20230701094042-1.png?width=763&height=154&rev=1.1||alt="image-20230701094042-1.png"]]
625
626
627 === 2.3.3  Historical Door Open/Close Event, FPORT~=3 ===
628
629
630 DS03A-NB stores sensor values and users can retrieve these history values via the downlink command.
631
632 The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time open/close status.
633
634 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
635 |=(% colspan="5" style="background-color:#4F81BD;color:white;width:515px" %)**Real-Time Open/Close Status, FPORT=3**
636 |(% style="width:60px" %)**Size(bytes)**|(% style="width:80px" %)**1**|(% style="width:120px" %)**3**|(% style="width:150px" %)**3**|(% style="width:90px" %)**4**
637 |(% style="width:95px" %)**Value**|(% style="width:97px" %)(((
638 Status & [[Alarm>>||anchor="H2.9A0AlarmBaseonTimeout"]]
639 )))|(% style="width:95px" %)Total open door events|(% style="width:119px" %)(((
640 The last door open duration (unit: sec)
641 )))|(% style="width:108px" %)Unix TimeStamp
642
643 **Status & Alarm:**
644
645 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
646 |(% 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**
647 |(% style="width:76px" %)**Value**|(% style="width:88px" %)No ACK message|(% style="width:92px" %)Poll Message Flag|(% style="width:89px" %)Reserve|(% style="width:90px" %)(((
648 Count mod
649 )))|(% style="width:95px" %)(((
650 TDC flag 0:No; 1:Yes
651 )))|(% style="width:116px" %)(((
652 Alarm 0: No Alarm; 1: Alarm
653 )))|(% style="width:112px" %)(((
654 Status 0:Close; 1: Open
655 )))
656
657 * (((
658 Each data entry is 11 bytes and has the same structure as [[Real-Time open/close status>>||anchor="H2.3.2A0Real-TimeOpen2FCloseStatus2CUplinkFPORT3D2"]], to save airtime and battery, DS03A-NB will send max bytes according to the current DR and Frequency bands.
659 )))
660
661 For example, in the US915 band, the max payload for different DR is:
662
663 (((
664 **~1. DR0**: max is 11 bytes so one entry of data
665 )))
666
667 (((
668 **2. DR1**: max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
669 )))
670
671 (((
672 **3. DR2**: total payload includes 11 entries of data
673 )))
674
675 (((
676 **4. DR3**: total payload includes 22 entries of data.
677 )))
678
679 If DS03A-NB doesn't have any data in the polling time. It will uplink 11 bytes of 0
680
681 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/DS03A-LB/WebHome/image-20230630155556-4.png?width=938&height=146&rev=1.1||alt="image-20230630155556-4.png"]]
682
683 **Downlink:**
684
685 0x31 64 9E 7D 34 64 9E 7E 9C 05
686
687
688 **Uplink:**
689
690 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
691
692
693 **Parsed Value:**
694
695 [COUNTMOD, TDC_FLAG, ALARM,  DOOR_STATUS, OPEN_DOOR_TIMES, LAST_DOOR_OPEN_DURATION, TIME]
696
697
698 [SUM,YES,FALSE,OPEN,0,0,2023-06-30 06:59:20],
699
700 [SUM,NO,FALSE,CLOSE,0,99,2023-06-30 07:00:44],
701
702 [SUM,NO,FALSE,OPEN, 1,99,2023-06-30 07:00:52],
703
704 [SUM,NO,FALSE,CLOSE,1,141,2023-06-30 07:03:13],
705
706 [SUM,NO,TRUE,OPEN, 2,141,2023-06-30 07:03:32],
707
708 [PART,NO,FALSE,CLOSE,2,31,2023-06-30 07:03:53],
709
710 [PART,NO,TRUE,OPEN, 3,31,2023-06-30 07:04:11],
711
712 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/DS03A-LB/WebHome/image-20230630172740-1.png?width=868&height=199&rev=1.1||alt="image-20230630172740-1.png"]]
713
714
715 == 2.4 Test Uplink and Change Update Interval ==
716
717
718 By default, Sensor will send uplinks (% style="color:blue" %)**every 2 hours**(%%) & AT+NOUD=8
719
720 User can use below commands to change the (% style="color:blue" %)**uplink interval**.
721
722 (% style="color:#037691" %)**AT+TDC=600 ** (%%) ~/~/ Set Update Interval to 600s
723
724 User can also push the button for more than 1 seconds to activate an uplink.
725
726
727 == 2.5 Multi-Samplings and One uplink ==
728
729
730 To save battery life, DS03A-NB will sample Water Flow data every 15 minutes and send one uplink every 2 hours. So each uplink it will include 8 stored data + 1 real-time data. They are defined by:
731
732 * (% style="color:#037691" %)**AT+TR=900**   (%%) ~/~/ The unit is seconds, and the default is to record data once every 900 seconds (15 minutes, the minimum can be set to 180 seconds)
733
734 * (% style="color:#037691" %)**AT+NOUD=8**     (%%)~/~/  The device uploads 8 sets of recorded data by default. Up to 32 sets of record data can be uploaded.
735
736 The diagram below explains the relationship between TR, NOUD, and TDC more clearly:
737
738 [[image:1692424376354-959.png]]
739
740
741 == 2.6 Trggier an uplink by external interrupt ==
742
743
744 DS03A-NB has an external trigger interrupt function. Users can use the PB15 pin to trigger the upload of data packets.
745
746 (% style="color:blue" %)**AT command:**
747
748 * (% style="color:#037691" %)**AT+INTMOD **(%%) ~/~/ Set the trigger interrupt mode
749
750 * (% style="color:#037691" %)**AT+INTMOD=0 **(%%) ~/~/ Disable Interrupt
751
752 * (% style="color:#037691" %)**AT+INTMOD=1 **(%%) ~/~/ Trigger by rising and falling edge
753
754 * (% style="color:#037691" %)**AT+INTMOD=2 **(%%) ~/~/ Trigger by falling edge
755
756 * (% style="color:#037691" %)**AT+INTMOD=3  **(%%) ~/~/ Trigger by rising edge
757
758 == 2.7 Set Transmit Interval Time ==
759
760
761 (((
762 Feature: Change NB-IoT End Node Transmit Interval.
763 )))
764
765 (((
766 (% style="color:blue" %)**AT Command: AT+TDC**
767 )))
768
769 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
770 |=(% 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**
771 |(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|(((
772 30000
773 OK
774 the interval is 30000ms = 30s
775 )))
776 |(% style="width:156px" %)AT+TDC=60000|(% style="width:137px" %)Set Transmit Interval|(((
777 OK
778 Set transmit interval to 60000ms = 60 seconds
779 )))
780
781 (((
782 (% style="color:blue" %)**Downlink Command: 0x01**
783 )))
784
785 (((
786 Format: Command Code (0x01) followed by 3 bytes time value.
787 )))
788
789 (((
790 If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01.
791 )))
792
793 * (((
794 Example 1: Downlink Payload: 0100001E  ~/~/ Set Transmit Interval (TDC) = 30 seconds
795 )))
796 * (((
797 Example 2: Downlink Payload: 0100003C  ~/~/ Set Transmit Interval (TDC) = 60 seconds
798
799
800
801 )))
802
803 == 2.8 Enable / Disable Alarm ==
804
805
806 Feature: Enable/Disable Alarm for open/close event. Default value 0.
807
808 (% style="color:blue" %)**AT Command: **
809
810 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
811 |(% 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**
812 |(% style="width:154px" %)AT+DISALARM=1|(% style="width:278px" %)End node will only send packets in TDC time.|OK
813 |(% style="width:154px" %)AT+DISALARM=0|(% style="width:278px" %)End node will send packets in TDC time or status change for door sensor|OK
814
815 (% style="color:blue" %)**Downlink Command: **
816
817 0xA7 01  ~/~/ Same As AT+DISALARM=1
818
819 0xA7 00  ~/~/ Same As AT+DISALARM=0
820
821
822 == 2.9 Alarm Base on Timeout ==
823
824
825 DS03A-NB 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:
826
827 * (((
828 (% style="color:blue" %)**Keep Status: Status to be monitor**
829 )))
830
831 (% style="color:#037691" %)**Keep Status = 1**(%%): Monitor Close to Open event
832
833 (% style="color:#037691" %)**Keep Status = 0**(%%): Monitor Open to Close event
834
835
836 * (((
837 (% style="color:blue" %)**Keep Time: Timeout to send an Alarm**
838 )))
839
840 Range 0 ~~ 65535(0xFFFF) seconds.
841
842 If (% style="color:#037691" %)**keep time = 0**(%%), Disable Alarm Base on Timeout feature.
843
844 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.
845
846
847 * (((
848 (% style="color:blue" %)**Downlink Command**
849 )))
850
851 (% style="color:#037691" %)**Command: 0xA9 aa bb cc dd**
852
853 **A9:** Command Type Code
854
855 **aa: **01:TTRIG1; 02:TTRIG2
856
857 **bb:** status to be monitored
858
859 **cc dd:** timeout.
860
861
862 **1) AT+TTRIG1 : (PA8 of pin)**
863
864 (% style="color:blue" %)**AT Command to configure:**
865
866 * (((
867 (% 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-NB 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.
868
869 (% style="color:#037691" %)**AT+TTRIG1=0,30** (%%) **~-~->** When the **Keep Status** change from open to close, and device remains in open status for more than 30 seconds. DS03A-NB 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.
870 )))
871
872 * (((
873 (% style="color:#037691" %)**AT+TTRIG1=0,0**  (%%) **~-~-> ** Default Value, disable timeout Alarm.
874
875
876 )))
877
878 (% style="color:blue" %)**Downlink Command to configure:**
879
880 If user send 0xA9 01 01 00 1E: equal to AT+TTRIG1=1,30 **or** 0xA9 01 00 00 00: Equal to AT+TTRIG1=0,0.
881
882
883 **2) AT+TTRIG2 : (PA4 of pin,need to use AT+TTRCHANNEL=2)**
884
885 (% style="color:blue" %)**AT Command to configure:**
886
887 * (((
888 (% 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-NB 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.
889
890 (% style="color:#037691" %)**AT+TTRIG2=0,30** (%%) **~-~->** When the **Keep Status** change from open to close, and device remains in open status for more than 30 seconds. DS03A-NB 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.
891 )))
892
893 * (((
894 (% style="color:#037691" %)**AT+TTRIG2=0,0**  (%%) **~-~-> ** Default Value, disable timeout Alarm.
895
896
897 )))
898
899 (% style="color:blue" %)**Downlink Command to configure:**
900
901 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.
902
903
904 == 2.10 TTRIG1 & TTRIG2 timeout status alarm ==
905
906
907 It needs to be used with AT+TTRIG1 or AT+TTRIG2. When TTRIG1 or TTRIG2 times out and causes an alarm, and the status does not change subsequently, an alarm packet will be sent at the alarm interval.
908
909 (% style="color:blue" %)**AT Command:**
910
911 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
912 |=(% 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**
913 |(% style="width:155px" %)(((
914 AT+TTRALARM=0
915 )))|(% style="width:279px" %)(((
916 disable continuous alarm
917 )))|(% style="width:84px" %)(((
918 OK
919 )))
920 |(% style="width:155px" %)(((
921 AT+TTRALARM=60
922 )))|(% style="width:279px" %)(((
923 The alarm interval is 60 minutes (unit: minutes)
924 )))|(% style="width:84px" %)(((
925 OK
926 )))
927
928 (% style="color:blue" %)**Downlink Command:**
929
930 Example:  0C aa  => AT+TTRALARM= aa
931
932
933 == 2.11 Count Mod ==
934
935
936 Feature: Manually set the count mode.
937
938 (% style="color:blue" %)**AT Command:**
939
940 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
941 |=(% 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**
942 |(% style="width:155px" %)(((
943 AT+COUNTMOD=0
944 )))|(% style="width:277px" %)(((
945 the count value keeps accumulating mode
946 )))|(% style="width:86px" %)(((
947 OK
948 )))
949 |(% style="width:155px" %)(((
950 AT+COUNTMOD=1
951 )))|(% style="width:277px" %)(((
952 the count value will be reset after each TDC time(Last Close Duration Reset after each uplink)
953 )))|(% style="width:86px" %)(((
954 OK
955 )))
956
957 (% style="color:blue" %)**Downlink Command:**
958
959 Example:  0B aa  => AT+COUNTMOD = second byte
960
961
962 == 2.12  Number of channel of door sensors ==
963
964
965 Feature: Set the number of door sensor channels.
966
967 (% style="color:blue" %)**AT Command:**
968
969 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %)
970 |=(% 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**
971 |(% style="width:155px" %)(((
972 AT+TTRCHANNEL=1
973 )))|(% style="width:259px" %)(((
974 Set as single channel, only use PA8 pin as interrupt pin.
975 )))|(% style="width:44px" %)(((
976 OK
977 )))
978 |(% style="width:155px" %)(((
979 AT+TTRCHANNEL=2
980 )))|(% style="width:259px" %)(((
981 Set as dual channel, use PA8 pin and PA4 pin as interrupt pin.
982 )))|(% style="width:44px" %)(((
983 OK
984 )))
985
986 (% style="color:blue" %)**Downlink Command:**
987
988 Example:  0D aa => AT+TTRCHANNEL = second byte
989
990
991 == 2.13  Clear the open door times and the duration of the last open door ==
992
993
994 (% style="color:blue" %)**AT Command:**
995
996 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
997 |=(% 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**
998 |(% style="width:155px" %)AT+CLRC|(% style="width:259px" %)clear the open door times and the duration of the last open door.|(% style="width:44px" %)(((
999 OK
1000 )))
1001
1002 (% style="color:blue" %)**Downlink Command:**(%%)0xA6 01
1003
1004 The sensor will clear the open door times and the duration of the last open door.
1005
1006
1007 == 2.14  Set the count value of the number of open door ==
1008
1009
1010 (% style="color:blue" %)**AT Command:**
1011
1012 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %)
1013 |=(% 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**
1014 |(% style="width:155px" %)(((
1015 AT+SETCNT=1,100
1016 )))|(% style="width:259px" %)(((
1017 Set the open door times of PA8 pin to 100 times.
1018 )))|(% style="width:44px" %)(((
1019 OK
1020 )))
1021 |(% style="width:155px" %)AT+SETCNT=1,0|(% style="width:259px" %)Clear the open door times of PA8 pin.|(% style="width:44px" %)OK
1022 |(% style="width:155px" %)(((
1023 AT+SETCNT=2,50
1024 )))|(% style="width:259px" %)(((
1025 Set the open door times of PA4 pin to 100 times.
1026 )))|(% style="width:44px" %)(((
1027 OK
1028 )))
1029
1030 (% style="color:blue" %)**Downlink Command:**
1031
1032 0xA6 01 00 00 64  ==>  AT+SETCNT=1,100
1033
1034 0xA6 01 00 00 00  ==>  AT+SETCNT=1,0
1035
1036 0xA6 02 00 00 32  ==>  AT+SETCNT=2,50
1037
1038
1039 = 3. Configure DS03A-NB =
1040
1041 == 3.1 Configure Methods ==
1042
1043
1044 DS03A-NB supports below configure method:
1045
1046 * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
1047
1048 * AT Command via UART Connection : See [[UART Connection>>http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H2.3UARTConnectionforSN50v3basemotherboard]].
1049
1050 == 3.2 AT Commands Set ==
1051
1052
1053 AT+<CMD>?        : Help on <CMD>
1054
1055 AT+<CMD>         : Run <CMD>
1056
1057 AT+<CMD>=<value> : Set the value
1058
1059 AT+<CMD>=?       : Get the value
1060
1061
1062 (% style="color:blue" %)**General Commands**      
1063
1064 AT                    : Attention       
1065
1066 AT?  : Short Help     
1067
1068 ATZ  : MCU Reset    
1069
1070 AT+TDC  : Application Data Transmission Interval
1071
1072 AT+CFG  : Print all configurations
1073
1074 AT+CFGMOD           : Working mode selection
1075
1076 AT+DEUI  : Get or set the Device ID
1077
1078 AT+INTMOD            : Set the trigger interrupt mode
1079
1080 AT+5VT           : Set extend the time of 5V power  
1081
1082 AT+PRO          : Choose agreement
1083
1084 AT+RXDL  : Extend the sending and receiving time
1085
1086 AT+DNSCFG  : Get or Set DNS Server
1087
1088 AT+GETSENSORVALUE   : Returns the current sensor measurement
1089
1090 AT+NOUD  : Get or Set the number of data to be uploaded
1091
1092 AT+CDP     : Read or Clear cached data
1093
1094 AT+SHTEMP:  Get or Set alarm of temp
1095
1096 AT+SHHUM:  Get or Set alarm of moisture
1097
1098 AT+SERVADDR :  Server Address
1099
1100
1101 (% style="color:blue" %)**UDP Management**
1102
1103 AT+CFM  :  Upload confirmation mode (only valid for UDP)
1104
1105
1106 (% style="color:blue" %)**MQTT Management**
1107
1108 AT+CLIENT               : Get or Set MQTT client
1109
1110 AT+UNAME              : Get or Set MQTT Username
1111
1112 AT+PWD                  : Get or Set MQTT password
1113
1114 AT+PUBTOPIC  : Get or Set MQTT publish topic
1115
1116 AT+SUBTOPIC  : Get or Set MQTT subscription topic
1117
1118
1119 (% style="color:blue" %)**Information**          
1120
1121 AT+FDR  : Factory Data Reset
1122
1123 AT+PWORD  : Serial Access Password
1124
1125 AT+LDATA  : Get the last upload data
1126
1127 AT+CDP  : Read or Clear cached data
1128
1129
1130 = 4. Battery & Power Consumption =
1131
1132
1133 DS03A-NB use ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
1134
1135 [[**Battery Info & Power Consumption Analyze**>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
1136
1137
1138 = 5. Firmware update =
1139
1140
1141 User can change device firmware to::
1142
1143 * Update with new features.
1144
1145 * Fix bugs.
1146
1147 Firmware and changelog can be downloaded from : **[[Firmware download link>>https://www.dropbox.com/sh/zbsm9p4coksqwd5/AADy2ZJc39KsvfbhTMCUGmz1a?dl=0]]**
1148
1149 Methods to Update Firmware:
1150
1151 * (Recommended way) OTA firmware update via BLE: [[**Instruction**>>url:http://wiki.dragino.com/xwiki/bin/view/Main/BLE_Firmware_Update_NB_Sensors_BC660K-GL/]].
1152
1153 * 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]]**.
1154
1155 = 6. FAQ =
1156
1157 == 6.1 How can I access t BC660K-GL AT Commands? ==
1158
1159
1160 User can access to BC660K-GL directly and send AT Commands.
1161
1162 [[See BC660K-GL AT Command set>>url:https://www.dropbox.com/sh/5f6ssda5fum8rvs/AABT68l8ZzWOvZ5eg2qwOoFda?dl=0]]
1163
1164
1165 = 7. Order Info =
1166
1167
1168 Part Number: (% style="color:blue" %)**DS03A-NB-XX**
1169
1170 (% style="color:red" %)**XX**(%%):
1171
1172 * (% style="color:#037691" %)**GE**(%%): General version ( Exclude SIM card)
1173
1174 * (% style="color:#037691" %)**1D**(%%): with 1NCE* 10 years 500MB SIM card and Pre-configure to DataCake server
1175
1176 (% style="color:#037691" %)**1NCE SIM Card NB-IoT network coverage**(%%): Austria, Belgium, Bulgaria, Croatia, Czech Republic, Denmark, Finland, Germany, Great Britain, Greece, Hungary, Ireland, Italy, Latvia, Malta, Netherlands, Norway, Puerto Rico, Russia, Slovak , Republic, Slovenia, Spain, Sweden, Switzerland, Taiwan, USA, US Virgin Islands
1177
1178
1179 = 8. ​Packing Info =
1180
1181
1182 (% style="color:#037691" %)**Package Includes**:
1183
1184 * DS03A-NB NB-IoT Door sensor x 1
1185
1186 * External antenna x 1
1187
1188 (% style="color:#037691" %)**Dimension and weight**:
1189
1190 * Device Size: 13.0 x 5 x 4.5 cm
1191
1192 * Device Weight: 150g
1193
1194 * Package Size / pcs : 14.0 x 8x 5 cm
1195
1196 * Weight / pcs : 180g
1197
1198 = 9. Support =
1199
1200
1201 * 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.
1202
1203 * 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]].
1204
1205 (% style="display:none" %) (%%)