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