Version 67.3 by Xiaoling on 2022/11/18 09:58

Show last authors
1 (% style="text-align:center" %)
2 [[image:image-20221117105556-1.png]]
3
4
5
6
7
8
9
10 **Table of Contents:**
11
12
13
14
15
16 = 1.  Introduction =
17
18 == 1.1 ​ What is NDS03A NB-IoT Open/Close Door Sensor ==
19
20
21 (((
22 The Dragino NDS03A is an (% style="color:blue" %)**Open/Close NB-IoT Door Sensor**(%%). It detects door (% style="color:blue" %)**open/close status**(%%) and (% style="color:blue" %)**uplinks**(%%) to IoT server via NB-IoT network. NDS03A can connect two door sensors. user can see the door status, open duration, open counts in the IoT Server.
23 )))
24
25 (((
26 The NDS03A will send periodically data (% style="color:blue" %)**every 4 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, NDS03A can count each open event and uplink periodically.
27 )))
28
29 (((
30 NDS03A has a (% style="color:blue" %)**Datalog feature**(%%), it will record the open/close event and the user can retrieve the history from NB-IoT.
31 )))
32
33 (((
34 NDS03A 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.
35 )))
36
37 (((
38 NDS03A is designed for outdoor use. It has a weatherproof enclosure and industrial level battery to work in low to high temperatures.
39 )))
40
41 (((
42 NarrowBand-Internet of Things (NB-IoT) is a (% style="color:blue" %)**standards-based low power wide area (LPWA) technologyTCP, MQTT, UDP, and CoAP**(%%) for different application requirements.
43 )))
44
45 (((
46 NDS03A is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), It is designed for long-term use of up to 5 years. (Actually Battery life depends on the use environment, update period & uplink method)
47 )))
48
49 (((
50 To use NDS03A, user needs to check if there is NB-IoT coverage in the field and with the Nb-IoT bands that NDS03A supports. If local operator support it, user needs to get a (% style="color:blue" %)**NB-IoT SIM card**(%%) from the operator and install into NDS03A to get NB-IoT network connection.
51 )))
52
53
54
55 == ​1.2  Features ==
56
57
58 * NB-IoT Bands: B1/B3/B8/B5/B20/B28 @H-FDD
59 * Open/Close detect
60 * Open/Close statistics
61 * Monitor Battery Level
62 * connect two door sensors
63 * Datalog feature
64 * Uplink periodically
65 * Downlink to change configure
66 * Wall Mountable
67 * Outdoor Use
68 * Ultra-Low Power consumption
69 * AT Commands to change parameters
70 * Micro SIM card slot for NB-IoT SIM
71 * 8500mAh Battery for long-term use
72
73 == 1.3  Storage & Operation ==
74
75
76 Temperature -40°C to +85°C
77
78
79 == 1.4  Mechanical ==
80
81
82 [[image:image-20221117114937-4.png]]
83
84
85 [[image:image-20221117114949-5.png]]
86
87
88 [[image:image-20221117115010-6.png]]
89
90
91
92 == 1.5 ​ Applications ==
93
94
95 [[image:image-20221117114842-3.png]]
96
97
98
99 == 1.6  Specification ==
100
101
102 (% style="color:blue" %)**Common DC Characteristics:**
103
104 * Supply Voltage: 2.1v ~~ 3.6v
105 * Operating Temperature: -40 ~~ 85°C
106
107 (% style="color:blue" %)**NB-IoT Spec:**
108
109 * - B1 @H-FDD: 2100MHz
110 * - B3 @H-FDD: 1800MHz
111 * - B8 @H-FDD: 900MHz
112 * - B5 @H-FDD: 850MHz
113 * - B20 @H-FDD: 800MHz
114 * - B28 @H-FDD: 700MHz
115
116 == 1.7  Pin Definitions and Switch ==
117
118
119 [[image:image-20221021110429-4.png]]
120
121
122 === 1.7.1  Pin Definition ===
123
124
125 The device is pre-configured to connect to a door sensor. The other pins are not used. If user wants to know more about other pins, please refer to the user manual of LSN50v2 at:  [[https:~~/~~/www.dropbox.com/sh/djkxs7mr17y94mi/AABVlWbM9uzK9OA3mXyAT10Za?dl=0>>https://www.dropbox.com/sh/djkxs7mr17y94mi/AABVlWbM9uzK9OA3mXyAT10Za?dl=0]]
126
127
128
129 === 1.7.2  Jumper JP2(Power ON/OFF) ===
130
131
132 Power on Device when putting this jumper.
133
134
135
136 === 1.7.3  BOOT MODE / SW1 ===
137
138
139 1)  ISP:  upgrade mode, device won't have any signal in this mode. but ready for upgrade firmware. LED won't work. The firmware won't run.
140
141 2)  Flash:  working mode, the device starts to work for NB-IoT connection and sends out console output for further debugging.
142
143
144
145 === 1.7.4  Reset Button ===
146
147
148 Press to reboot the device.
149
150
151
152 === 1.7.5  LED ===
153
154
155 The LED will blink when :
156
157 1.  Boot the device in flash mode
158
159 2.  Send an uplink packet
160
161
162
163 == 1.8  Magnet Distance ==
164
165
166 (% style="color:blue" %)**Wood Door:**(%%) 10 ~~ 30mm
167
168 (% style="color:blue" %)**Iron Door:**(%%)**    **30 ~~ 45mm
169
170
171
172 = 2.  Use NDS03A to communicate with IoT Server =
173
174 == 2.1  How it works ==
175
176
177 In this user case, the NDS03A is installed on the door edge to detect the open/close event and send the status to the NB-IoT server. The NB-IoT network will forward this value to IoT server via the protocol defined by NDS03A.
178
179 The diagram below shows the working flow in the default firmware of NDS03A:
180
181 [[image:image-20221021110615-5.png]]
182
183
184
185 == 2.2 ​ Configure NDS03A ==
186
187 === 2.2.1 Test Requirement ===
188
189
190 To use NDS03A in your city, make sure to meet below requirements:
191
192 * Your local operator has already distributed an NB-IoT Network.
193 * The local NB-IoT network used the band that NDS03A supports.
194 * Your operator is able to distribute the data received in their NB-IoT network to your IoT server.
195
196 Below figure shows our testing structure. Here we have NB-IoT network coverage by China Mobile, the band they use is B8.  The NDS03A will use** (% style="color:red" %)CoAP(120.24.4.116:5683)(%%)** or raw (% style="color:red" %)**UDP(120.24.4.116:5601) **(%%)or (% style="color:red" %)**MQTT(120.24.4.116:1883) **(%%)or (% style="color:red" %)**TCP(120.24.4.116:5600)protocol**(%%) to send data to the test server.
197
198 [[image:image-20221117142300-1.png]]
199
200
201
202
203 === 2.2.2 Insert NB-IoT SIM card ===
204
205
206 Insert the NB-IoT Card get from your provider.
207
208 User needs to take out the NB-IoT module and insert the SIM card like below:
209
210 [[image:image-20221021110745-6.png]] ​
211
212
213
214 === 2.2.3 Connect USB – TTL to NDS03A and configure it ===
215
216
217 User need to configure NDS03A via serial port to set the (% style="color:red" %)**Server Address** / **Uplink Topic**(%%) to define where and how-to uplink packets. NDS03A support AT Commands, user can use a USB to TTL adapter to connect to NDS03A and use AT Commands to configure it, as below.
218
219 (% style="color:blue" %)**Connection:**
220
221 (% style="background-color:yellow" %)** USB TTL GND <~-~-~-~-> GND**
222
223 (% style="background-color:yellow" %)** USB TTL TXD <~-~-~-~-> UART_RXD**
224
225 (% style="background-color:yellow" %)** USB TTL RXD <~-~-~-~-> UART_TXD**
226
227
228 In the PC, use below serial tool settings:
229
230 * Baud:  (% style="color:red" %)**9600**
231
232 * Data bits:** (% style="color:red" %)8(%%)**
233
234 * Stop bits: (% style="color:red" %)**1**
235
236 * Parity:  (% style="color:red" %)**None**
237
238 * Flow Control: (% style="color:red" %)**None**
239
240 Make sure the switch is in FLASH position, then power on NDS03A by connecting the (% style="color:orange" %)**Yellow Jumper**(%%).
241
242 ​[[image:image-20221021110817-7.png]]
243
244 NDS03A will output system info once powered on as below, we can enter the **password: 12345678** to access AT Command input.
245
246
247 (% style="color:red" %)**Note: the valid AT Commands can be found at:  **(%%)[[**https:~~/~~/www.dropbox.com/sh/351dwor6joz8nwh/AADn1BQaAAxLF_QMyU8NkW47a?dl=0**>>url:https://www.dropbox.com/sh/351dwor6joz8nwh/AADn1BQaAAxLF_QMyU8NkW47a?dl=0]]
248
249
250
251 === 2.2.4 Use CoAP protocol to uplink data ===
252
253
254 (% style="color:red" %)**Note: if you don't have a CoAP server, you can refer this link to set up a CoAP server: **(%%)[[**http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Set%20up%20CoAP%20Server/**>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Set%20up%20CoAP%20Server/]]
255
256
257 (% style="color:blue" %)**Use below commands in NDS03A:**
258
259 * (% style="color:#037691" %)**AT+PRO=1**                (%%) ~/~/ Set to use CoAP protocol to uplink
260
261 * (% style="color:#037691" %)**AT+SERVADDR=120.24.4.116,5683   ** (%%) ~/~/ Set CoAP server address and port
262
263 * (% style="color:#037691" %)**AT+URI=0,0,11,2,"mqtt" ** (%%) ~/~/  Set CoAP resource path
264
265 For parameter description, please refer to AT command set
266
267 [[image:image-20221021110948-8.png]]
268
269
270 After configuring the server address and (% style="color:green" %)**reset NDS03A**(%%) (via AT+ATZ ), NDS03A will start to uplink sensor values to the CoAP server.
271
272 [[image:image-20221021110956-9.png]] ​
273
274
275
276 === 2.2.5 Use UDP protocol to uplink data(Default protocol) ===
277
278
279 (% style="color:blue" %)**AT Commands:**
280
281 * (% style="color:#037691" %)**AT+PRO=2   ** (%%) ~/~/  Set to use UDP protocol to uplink
282
283 * (% style="color:#037691" %)**AT+SERVADDR=120.24.4.116,5601   ** (%%) ~/~/  Set UDP server address and port
284
285 * (% style="color:#037691" %)**AT+CFM=1       ** (%%) ~/~/  If the server does not respond, this command is unnecessary
286
287 ​ [[image:image-20221021111025-10.png]]
288
289
290 [[image:image-20221021111033-11.png||height="241" width="576"]]
291
292
293
294
295 === 2.2.6 Use MQTT protocol to uplink data ===
296
297
298 (% style="color:blue" %)**AT Commands:**
299
300 * (% style="color:#037691" %)**AT+PRO=3   ** (%%) ~/~/  Set to use MQTT protocol to uplink
301
302 * (% style="color:#037691" %)**AT+SERVADDR=120.24.4.116,1883   ** (%%) ~/~/  Set MQTT server address and port
303
304 * (% style="color:#037691" %)**AT+CLIENT=CLIENT       ** (%%) ~/~/  Set up the CLIENT of MQTT
305
306 * (% style="color:#037691" %)**AT+UNAME=UNAME                     **(%%)** **~/~/  Set the username of MQTT
307
308 * (% style="color:#037691" %)**AT+PWD=PWD                         **(%%)** **~/~/  Set the password of MQTT
309
310 * (% style="color:#037691" %)**AT+PUBTOPIC=NSE01_PUB              **(%%)** **~/~/  Set the sending topic of MQTT
311
312 * (% style="color:#037691" %)**AT+SUBTOPIC=NSE01_SUB          ** (%%) ~/~/  Set the subscription topic of MQTT
313
314 ​ [[image:image-20221021111058-12.png]]
315
316
317 [[image:image-20221021111201-16.png||height="472" width="653"]]
318
319
320
321 MQTT protocol has a much higher power consumption compare with UDP / CoAP protocol. Please check the power analyze document and adjust the uplink period to a suitable interval.
322
323
324
325 === 2.2.7 Use TCP protocol to uplink data ===
326
327
328 (% style="color:blue" %)**AT Commands:**
329
330 * (% style="color:#037691" %)**AT+PRO=4   ** (%%) ~/~/  Set to use TCP protocol to uplink
331
332 * (% style="color:#037691" %)**AT+SERVADDR=120.24.4.116,5600   ** (%%) ~/~/  Set TCP server address and port
333
334 ​ [[image:image-20221021111125-14.png]]
335
336 [[image:image-20221021111131-15.png]]
337
338
339
340
341 === 2.2.8 Change Update Interval ===
342
343
344 User can use below command to change the (% style="color:blue" %)**uplink interval**.
345
346 * (% style="color:#037691" %)**AT+TDC=14400      ** (%%) ~/~/ Set Update Interval to 14400s (4 hours)
347
348 (% style="color:red" %)**NOTE:**
349
350 1.  By default, the device will send an uplink message every 4 hour.
351
352
353
354 == 2.3  Uplink Payload ==
355
356
357 The uplink payload includes 26 bytes in total by default.
358
359 Each time the device uploads a data package. The user can use the AT+NOUD command to upload the recorded data.Up to 32 sets of recorded data can be uploaded.
360
361 (% style="color:blue" %)**When AT+TTRCHANNEL=1:**
362
363 (% border="1" cellspacing="5" style="background-color:#ffffcc; color:green; width:693px" %)
364 |=(% scope="row" style="width: 93px;" %)**Size(bytes)**|(% style="width:67px" %)**8**|(% style="width:40px" %)**2**|(% style="width:45px" %)**2**|(% style="width:75px" %)**1**|(% style="width:54px" %)**1**|(% style="width:62px" %)**1**|(% style="width:60px" %)**1**|(% style="width:94px" %)**3**|(% style="width:93px" %)**3**
365 |=(% style="width: 93px;" %)**Value**|(% style="width:67px" %)[[Device ID>>||anchor="H2.4.1A0A0DeviceID"]]|(% style="width:40px" %)[[Ver>>||anchor="H2.4.2A0VersionInfo"]]|(% style="width:45px" %)[[BAT>>||anchor="H2.4.3A0BatteryInfo"]]|(% style="width:75px" %)[[Signal Strength>>||anchor="H2.4.4A0SignalStrength"]]|(% style="width:54px" %)MOD|(% style="width:62px" %)Door Status|(% style="width:60px" %)[[Alarm Status>>||anchor="H2.4.6A0Alarm"]]|(% style="width:94px" %)door open num(pb14) |(% style="width:93px" %)last open time(pb14)
366
367 (% border="1.5" style="background-color:#ffffcc; color:green; width:490px" %)
368 |(% style="width:50px" %)**4**|(% style="width:70px" %)**1**|(% style="width:50px" %)**3**|(% style="width:99px" %)**3**|(% style="width:67px" %)4|(% style="width:50px" %)(((
369 **1-32 group**
370 )))
371 |(% style="width:98px" %)[[Time stamp>>||anchor="H2.4.10A0Timestamp"]]|(% style="width:115px" %)Door Status(pb14)|(% style="width:92px" %)door open num(pb14)|(% style="width:99px" %)last open time(pb14)|(% style="width:67px" %)Time stamp|(% style="width:74px" %)...
372
373 (% style="color:blue" %)**When AT+TTRCHANNEL=2:**
374
375
376 (% border="1" cellspacing="5" style="background-color:#ffffcc; color:green; width:520px" %)
377 |=(% scope="row" style="width: 96px;" %)**Size(bytes)**|(% style="width:66px" %)**8**|(% style="width:40px" %)**2**|(% style="width:46px" %)**2**|(% style="width:70px" %)**1**|(% style="width:54px" %)**1**|(% style="width:55px" %)**1**|(% style="width:57px" %)**1**|(% style="width:86px" %)**3**|(% style="width:82px" %)**3**
378 |=(% style="width: 96px;" %)**Value**|(% style="width:66px" %)[[Device ID>>||anchor="H2.4.1A0A0DeviceID"]]|(% style="width:40px" %)[[Ver>>||anchor="H2.4.2A0VersionInfo"]]|(% style="width:46px" %)[[BAT>>||anchor="H2.4.3A0BatteryInfo"]]|(% style="width:70px" %)[[Signal Strength>>||anchor="H2.4.4A0SignalStrength"]]|(% style="width:54px" %)MOD|(% style="width:55px" %)Door Status|(% style="width:57px" %)[[Alarm Status>>||anchor="H2.4.6A0Alarm"]]|(% style="width:86px" %)door open num(pb14) |(% style="width:82px" %)last open time(pb14)
379
380 (% border="1" cellspacing="5" style="background-color:#ffffcc; color:green; width:520px" %)
381 |(% style="width:59px" %)**1**|(% style="width:67px" %)**1**|(% style="width:88px" %)**3**|(% style="width:81px" %)**3**|(% style="width:50px" %)**4**|(% style="width:66px" %)**1**|(% style="width:92px" %)**3**
382 |(% style="width:59px" %)Door Status(pb15)|(% style="width:67px" %)[[Alarm Status>>url:http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/CPN01-%20NB-IoT%20Outdoor%20OpenClose%20Dry%20Contact%20Sensor%C2%A0User%20Manual/#H2.4.7A0ContactStatus]](pb15)|(% style="width:88px" %)door open num(pb15)|(% style="width:81px" %)last open time(pb15)|(% style="width:50px" %)Time stamp|(% style="width:66px" %)Door Status(pb14)|(% style="width:92px" %)door open num(pb14)
383
384 (% border="1" cellspacing="5" style="background-color:#ffffcc; color:green; width:500px" %)
385 |(% style="width:102px" %)**3**|(% style="width:93px" %)**1**|(% style="width:91px" %)**3**|(% style="width:88px" %)**3**|(% style="width:63px" %)**4**|(% style="width:87px" %)(((
386 **1-32 group**
387 )))
388 |(% style="width:102px" %)last open time (pb14)|(% style="width:93px" %)Door Status(pb15)|(% style="width:91px" %)door open num(pb15)|(% style="width:88px" %)last open time(pb15)|(% style="width:63px" %)Time stamp|(% style="width:87px" %)...
389
390 If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the NDS03A uplink data.
391
392 [[image:image-20221117145932-2.png]]
393
394
395 The payload is ASCII string, representative same HEX:
396
397 **0x (% style="color:red" %)__f867787050213317__  (% style="color:blue" %)__0064__ (% style="color:green" %) __0ccf__(% style="color:#00b0f0" %) __19__(% style="color:#7030a0" %) __01__(% style="color:#0020b0" %) __00__ (% style="color:#420042" %)__00__(% style="color:#660066" %) (% style="color:#aaaa40" %)__000016__(% style="color:#663300" %) __000017__ (% style="color:#d60093" %)__637590df__(%%)**
398
399 **where:**
400
401 * (% style="color:#037691" %)**Device ID:**(%%) 0x f867787050213317 = f867787050213317
402
403 * (% style="color:#037691" %)**Version:**(%%) 0x0064=100=1.0.0
404
405 * (% style="color:#037691" %)**BAT :**(%%)  0x0ccf = 3279 mV = 3.279V
406
407 * (% style="color:#037691" %)**Singal: **(%%)0x19 = 25
408
409 * (% style="color:#037691" %)**Mod:**(%%) 0x01 = 1
410
411 * (% style="color:#037691" %)**Door Status:**(%%) 0x00=0
412
413 * (% style="color:#037691" %)**Alarm Status: **(%%)0x00 =0
414
415 * (% style="color:#037691" %)**door open num: **(%%)0x000016 =22
416
417 * (% style="color:#037691" %)**last open time: **(%%)0x000017 =23
418
419 * (% style="color:#037691" %)**Timestamp:**(%%) 0x637590df =1668649183 (Unix Time)
420
421 == 2.4  Payload Explanation and Sensor Interface ==
422
423
424 === 2.4.1  Device ID ===
425
426
427 By default, the Device ID is equal to the last 15 bits of IMEI.
428
429 User can use (% style="color:blue" %)**AT+DEUI** (%%)to set Device ID
430
431 **Example:**
432
433 AT+DEUI=868411056754138
434
435 The Device ID is stored in a non-erase area, Upgrade the firmware or run AT+FDR won't erase the Device ID.
436
437
438 === 2.4.2  Version Info ===
439
440
441 Specify the software version: 0x64=100, which means firmware version 1.00.
442
443 For example 0x00 64 : This device is NDS03A 1 with firmware version 1.0.0.
444
445
446 === 2.4.3  Battery Info ===
447
448
449 Check the battery voltage for NDS03A.
450
451 Ex1: 0x0B45 = 2885mV
452
453 Ex2: 0x0B49 = 2889mV
454
455
456 === 2.4.4  Signal Strength ===
457
458
459 NB-IoT Network signal Strength.
460
461 **Ex1: 0x1d = 29**
462
463 **0**  -113dBm or less
464
465 **1**  -111dBm
466
467 **2...30** -109dBm... -53dBm
468
469 **31**   -51dBm or greater
470
471 **99**    Not known or not detectable
472
473
474 === 2.4.5  Disalarm: (default: 0) ===
475
476
477 (% style="color:blue" %)**If Disalarm = 1**(%%), NDS03A 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.
478
479 (% style="color:blue" %)**If Disalarm = 0**(%%), NDS03A 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.
480
481 (% style="color:red" %)**Note:**(%%) When Disalarm=0, a high frequently open/close event will cause lots of uplink and drain battery very fast.
482
483
484 === 2.4.6  Keep Status & Keep Time ===
485
486
487 Shows the configure value of Alarm Base on Timeout Feature
488
489
490 === 2.4.7  Timestamp ===
491
492
493 Timestamp : 0x6315537b =1662342011
494
495
496
497 === 2.4.8  Switch Dual Channel Mode ===
498
499
500 NDS03A can connect two door sensors. Another door sensor can be connected to PB15 pin. Both channels support alarm function.
501
502
503 == 2.5  Downlink Payload ==
504
505
506 By default, NDS03A prints the downlink payload to console port.
507
508 [[image:image-20221021111414-18.png]] ​
509
510
511 **Examples:**
512
513 * (% style="color:#037691" %)**Set TDC**
514
515 If the payload=0100003C, it means set the END Node's TDC to 0x00003C=60(S), while type code is 01.
516
517 Payload:    01 00 00 1E    TDC=30S
518
519 Payload:    01 00 00 3C    TDC=60S
520
521 * (% style="color:#037691" %)**Reset**
522
523 If payload = 0x04FF, it will reset the NDS03A
524
525 * (% style="color:#037691" %)**INTMOD**
526
527 Downlink Payload: 06000003, Set AT+INTMOD=3
528
529
530
531 == 2.6  ​LED Indicator ==
532
533
534 The NDS03A has an internal LED which is to show the status of different states.
535
536 * When the device starts normally, the LED will light up for 1 second.
537 * After NDS03A join NB-IoT network. The LED will be ON for 3 seconds.
538 * For each uplink probe, LED will be on for 500ms.
539
540 == 2.7  Alarm Base on Timeout ==
541
542
543 NDS03A 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:
544
545
546 (% style="color:blue" %)**1. Keep Status: Status to be monitor**
547
548 Keep Status = 1: Monitor Close to Open event
549
550 Keep Status = 0: Monitor Open to Close event
551
552
553 (% style="color:blue" %)**2. Keep Time: Timeout to send an Alarm**
554
555 Range 0 ~~ 65535(0xFFFF) seconds.
556
557 If keep time = 0, Disable Alarm Base on Timeout feature.
558
559 If keep time > 0, device will monitor the keep status event and send an alarm when status doesn't change after timeout.
560
561
562 (% style="color:blue" %)**AT Command to configure:**
563
564 (% style="color:blue" %)**PB14 PIN:**
565
566 (% style="color:#037691" %)**AT+TTRIG=1,30** (%%) **~-~->**  When the **Keep Status** change from connected to disconnect, and device remains in disconnect status for more than 30 seconds. NDS03A will send an uplink packet, the [[Alarm bit>>url:http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/CPL01%20LoRaWAN%20Outdoor%20PulseContact%20%20Sensor%20Manual/#H2.3.3Real-TimeOpen2FCloseStatus2CUplinkFPORT3D2]] (the second bit of 1^^st^^ byte of payload) on this uplink packet is set to 1.
567
568 (% style="color:#037691" %)**AT+TTRIG=0,0 ** (%%) **~-~->** Default Value, disable timeout Alarm.
569
570
571 (% style="color:blue" %)**PB15 PIN:**
572
573 (% style="color:#037691" %)**AT+TTRIG2=1,30**
574
575 (% style="color:#037691" %)**AT+TTRIG2=0,0 **
576
577
578 == 2.8  Set debug mode ==
579
580
581 Feature: Enable or Disable debug mode
582
583 (% style="color:blue" %)**AT Command: AT+DEBUG**
584
585 [[image:image-20221021111629-21.png]]
586
587
588
589 == 2.9  Clear Flash Record ==
590
591
592 Feature: Clear flash storage for data log feature.
593
594 (% style="color:blue" %)**AT Command: AT+CLRDTA**
595
596 [[image:image-20221021111527-19.png]]
597
598
599
600 == 2.10  Count Mod ==
601
602
603 (% style="color:blue" %)**AT Command: AT+COUNTMOD**
604
605 [[image:image-20221118092935-1.png]]
606
607
608
609 == 2.11  Interrupt Pin Channel Mod ==
610
611
612 (% style="color:blue" %)**AT Command: AT+TTRCHANNEL**
613
614 [[image:image-20221118093144-2.png]]
615
616
617
618 == 2.12 TTRIG1/2 timeout status alarm ==
619
620
621 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.
622
623 (% style="color:blue" %)**AT Command: AT+TTRALARM**
624
625 [[image:image-20221118093512-3.png]]
626
627
628
629 == 2.13  Select counting mode ==
630
631
632 (% style="color:blue" %)**AT Command: AT+TTRMODx=a,b**
633
634 When (% style="color:red" %)**a=0**(%%), the door is opened to count, and when (% style="color:red" %)**a=1**(%%),the closed door is counted.
635
636 When (% style="color:red" %)**b=0**(%%), it is the last door open duration, and when (% style="color:red" %)**b=1**(%%),the last door close duration.
637
638 [[image:image-20221118093658-4.png]]
639
640
641
642
643 == 2.14  Set the number of data to be uploaded and the recording time ==
644
645
646 (% style="color:blue" %)**AT Command:**
647
648 (% style="color:#037691" %)**AT+TR=900**(%%)  ~/~/  The unit is seconds, and the default is to record data once every 900 seconds.( The minimum can be set to 180 seconds)
649
650 (% style="color:#037691" %)**AT+NOUD=8**(%%)** ** ~/~/  The device uploads 0 sets of recorded data by default. Up to 32 sets of record data can be uploaded.
651
652
653 == 2.15  Read or Clear cached data ==
654
655
656 (% style="color:blue" %)**AT Command:**
657
658 (% style="color:#037691" %)**AT+CDP**  (%%) ~/~/ Read cached data
659
660 (% style="color:#037691" %)**AT+CDP=0**  (%%) ~/~/ Clear cached data ​
661
662 [[image:image-20221118094227-5.png]]
663
664
665
666 == 2.16  ​Firmware Change Log ==
667
668
669 Download URL & Firmware Change log:  [[https:~~/~~/www.dropbox.com/sh/8p5nuvo6gh7je4n/AAAMP7MMusgbXMz9Ik7Ls03Ga?dl=0>>https://www.dropbox.com/sh/8p5nuvo6gh7je4n/AAAMP7MMusgbXMz9Ik7Ls03Ga?dl=0]]
670
671 Upgrade Instruction: [[Upgrade Firmware>>||anchor="H5.1200BHowtoUpgradeFirmware"]]
672
673
674
675 == 2.17  ​Battery Analysis ==
676
677
678 === 2.17.1  ​Battery Type ===
679
680
681 The NDS03A battery is a combination of an 8500mAh Li/SOCI2 Battery and a Super Capacitor. The battery is non-rechargeable battery type with a low discharge rate (<2% per year). This type of battery is commonly used in IoT devices such as water meter.
682
683 The battery is designed to last for several years depends on the actual use environment and update interval. 
684
685 The battery-related documents as below:
686
687 * [[Battery Dimension>>url:http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]
688
689 * [[Lithium-Thionyl Chloride Battery datasheet>>url:http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]
690
691 * [[Lithium-ion Battery-Capacitor datasheet>>url:http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]
692
693 [[image:image-20221021111911-26.png]] ​
694
695
696
697 === 2.17.2  Power consumption Analyze ===
698
699
700 Dragino battery powered product are all runs in Low Power mode. We have an update battery calculator which base on the measurement of the real device. User can use this calculator to check the battery life and calculate the battery life if want to use different transmit interval.
701
702 Instruction to use as below:
703
704 (% style="color:blue" %)**Step 1:  **(%%)Downlink the up-to-date DRAGINO_Battery_Life_Prediction_Table.xlsx from: [[https:~~/~~/www.dragino.com/downloads/index.php?dir=LoRa_End_Node/Battery_Analyze/>>url:https://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/Battery_Analyze/]]
705
706 (% style="color:blue" %)**Step 2: **(%%) Open it and choose
707
708 * Product Model
709
710 * Uplink Interval
711
712 * Working Mode
713
714 And the Life expectation in difference case will be shown on the right.
715
716 [[image:1666596205057-567.png]] ​
717
718
719
720 === 2.17.3  ​Battery Note ===
721
722
723 The Li-SICO battery is designed for small current / long period application. It is not good to use a high current, short period transmit method. The recommended minimum period for use of this battery is 5 minutes. If you use a shorter period time to transmit LoRa, then the battery life may be decreased.
724
725
726
727 === 2.17.4  Replace the battery ===
728
729
730 The default battery pack of NDS03A includes a ER26500 plus super capacitor. If user can't find this pack locally, they can find ER26500 or equivalence without the SPC1520 capacitor, which will also work in most case. The SPC can enlarge the battery life for high frequency use (update period below 5 minutes).
731
732
733
734 = 3. ​ Access NB-IoT Module =
735
736
737 Users can directly access the AT command set of the NB-IoT module.
738
739 The AT Command set can refer the BC35-G NB-IoT Module AT Command: [[https:~~/~~/www.dragino.com/downloads/index.php?dir=datasheet/other_vendors/BC35-G/>>url:https://www.dragino.com/downloads/index.php?dir=datasheet/other_vendors/BC35-G/]] 
740
741 [[image:image-20221118094449-6.png]] ​
742
743
744
745 = 4.  Using the AT Commands =
746
747
748 == 4.1  Access AT Commands ==
749
750
751 See this link for detail:  [[https:~~/~~/www.dropbox.com/sh/351dwor6joz8nwh/AADn1BQaAAxLF_QMyU8NkW47a?dl=0>>url:https://www.dropbox.com/sh/351dwor6joz8nwh/AADn1BQaAAxLF_QMyU8NkW47a?dl=0]]
752
753 AT+<CMD>?  : Help on <CMD>
754
755 AT+<CMD>         : Run <CMD>
756
757 AT+<CMD>=<value> : Set the value
758
759 AT+<CMD>=?  : Get the value
760
761
762 (% style="color:blue" %)**General Commands**      
763
764 AT  : Attention       
765
766 AT?  : Short Help     
767
768 ATZ  : MCU Reset    
769
770 AT+TDC  : Application Data Transmission Interval
771
772 AT+CFG  : Print all configurations
773
774 AT+CFGMOD           : Working mode selection
775
776 AT+INTMOD            : Set the trigger interrupt mode
777
778 AT+5VT  : Set extend the time of 5V power  
779
780 AT+PRO  : Choose agreement
781
782 AT+RXDL  : Extend the sending and receiving time
783
784 AT+SERVADDR  : Server Address
785
786 AT+TR      :  Get or Set record time
787
788 AT+NOUD      : Get or Set the number of data to be uploaded
789
790 AT+CDP     :  Read or Clear cached data
791
792 AT+ DEBUG   : Enable or Disable debug mode
793
794 AT+ TTRIG1   : Get or Set PB14 PIN Alarm Base on Timeout
795
796 AT+ TTRIG2   : Get or Set PB15 PIN Alarm Base on Timeout
797
798 AT+COUNTMOD  :  Get or Set the count mode
799
800 AT+TTRCHANNEL  : Get or Set the number of interrupt channels
801
802 AT+TTRALARM : Get or Set TTRIG1 of Alarm interval (unit: minute)
803
804 AT+DISALARM  : Enable/Disable Alarm for door open/close or water leak event
805
806 AT+ CLRC   :  Clear current door open count
807
808
809 (% style="color:blue" %)**COAP Management**      
810
811 AT+URI            : Resource parameters
812
813
814 (% style="color:blue" %)**UDP Management**
815
816 AT+CFM          : Upload confirmation mode (only valid for UDP)
817
818
819 (% style="color:blue" %)**MQTT Management**
820
821 AT+CLIENT               : Get or Set MQTT client
822
823 AT+UNAME  : Get or Set MQTT Username
824
825 AT+PWD                  : Get or Set MQTT password
826
827 AT+PUBTOPIC  : Get or Set MQTT publish topic
828
829 AT+SUBTOPIC  : Get or Set MQTT subscription topic
830
831
832 (% style="color:blue" %)**Information**          
833
834 AT+FDR  : Factory Data Reset
835
836 AT+PWORD  : Serial Access Password
837
838
839
840 = ​5.  FAQ =
841
842
843 == 5.1 ​ How to Upgrade Firmware ==
844
845
846 User can upgrade the firmware for 1) bug fix, 2) new feature release.
847
848 Please see this link for how to upgrade:  [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20Upgrade%20Instruction%20for%20STM32%20base%20products/#H2.HardwareUpgradeMethodSupportList>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20Upgrade%20Instruction%20for%20STM32%20base%20products/#H2.HardwareUpgradeMethodSupportList]]
849
850 (% style="color:red" %)**Notice: **(% style="color:blue" %)**NDS03A** (%%)**and (% style="color:blue" %)LDS03A(%%)**(% style="color:blue" %) (%%)**share the same mother board. They use the same connection and method to update.**
851
852
853
854 = 6.  Trouble Shooting =
855
856
857 == 6.1  ​Connection problem when uploading firmware ==
858
859
860 (% style="color:blue" %)**Please see: **[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20Upgrade%20Instruction%20for%20STM32%20base%20products/#H3.3Troubleshooting>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20Upgrade%20Instruction%20for%20STM32%20base%20products/#H3.3Troubleshooting]]
861
862
863
864 == 6.2  AT Command input doesn't work ==
865
866
867 In the case if user can see the console output but can't type input to the device. Please check if you already include the (% style="color:green" %)**ENTER**(%%) while sending out the command. Some serial tool doesn't send (% style="color:green" %)**ENTER** (%%)while press the send key, user need to add ENTER in their string.
868
869
870
871 = 7. ​ Order Info =
872
873
874 Part Number**:** NDS03A
875
876
877
878 = 8.  Packing Info =
879
880
881 (% style="color:blue" %)**Package Includes**:
882
883 * NDS03A Open/Close Door Sensor x 1
884
885 = 9.  Support =
886
887
888 * 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.
889
890 * Provide as much information as possible regarding your enquiry (product models, accurately describe your problem and steps to replicate it etc) and send a mail to [[support@dragino.com>>url:http://../../../../../../D:%5C%E5%B8%82%E5%9C%BA%E8%B5%84%E6%96%99%5C%E8%AF%B4%E6%98%8E%E4%B9%A6%5CLoRa%5CLT%E7%B3%BB%E5%88%97%5Csupport@dragino.com]]
891
892