Version 58.3 by Xiaoling on 2022/11/17 13:52

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