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