Version 70.22 by Xiaoling on 2022/11/18 11:25

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