Show last authors
1 (% style="text-align:center" %)
2 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/CPL01%20LoRaWAN%20Outdoor%20PulseContact%20%20Sensor%20Manual/WebHome/1652856952171-363.png?rev=1.1||alt="1652856952171-363.png" height="578" width="588"]]
3
4 {{toc/}}
5
6 = **1. Introduction** =
7
8 == **1.1 ​**What is CPN01 **NB-IoT** Pulse/Contact Sensor ==
9
10 The Dragino CPN01 is an (% style="color:blue" %)**NB-IoT Dry Contact Sensor**(%%). It detects open/close status and uplinks the info to IoT server via NB-IoT network. User can see the (% style="color:blue" %)**dry contact status, open time, and open counts**(%%) in the IoT Server.
11
12 The CPN01 will send periodically data every day as well as for each dry contact action. It also counts the contact open times and calculates the last open duration. Users can also disable the uplink for each Open/Close event, instead, device can count each open event and uplink periodically.
13
14 CPN01 has** (% style="color:blue" %)Open-Alarm feature(%%)**, user can set this feature so CPN01 will send an alarm if the contact has been open exceeds a certain time.
15
16 CPN01 is designed for outdoor use. It has a weatherproof enclosure and industrial-level battery to work in low to high temperatures.
17
18 NarrowBand-Internet of Things (NB-IoT) is a standards-based low power wide area (LPWA) technology developed to enable a wide range of new IoT devices and services. NB-IoT significantly improves the power consumption of user devices, system capacity, and spectrum efficiency, especially in deep coverage.
19 \\CPN01 supports different uplink methods including (% style="color:blue" %)**TCP, MQTT, UDP, and CoAP**(%%) for different application requirements.
20 \\CPN01 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)
21 \\To use CPN01, user needs to check if there is NB-IoT coverage in the field and with the Nb-IoT bands that CPN01 supports. If local operator support it, user needs to get a (% style="color:blue" %)**NB-IoT SIM card**(%%) from the operator and install into CPN01 to get NB-IoT network connection.
22
23
24
25 == **​1.2 Features** ==
26
27 * NB-IoT Bands: B1/B3/B8/B5/B20/B28 @H-FDD
28 * Open/Close detect
29 * Open/Close statistics
30 * Monitor Battery Level
31 * Uplink on periodically and open/close event
32 * Datalog feature
33 * Uplink periodically
34 * Downlink to change configure
35 * Wall Mountable
36 * Outdoor Use
37 * Ultra-Low Power consumption
38 * AT Commands to change parameters
39 * Micro SIM card slot for NB-IoT SIM
40 * 8500mAh Battery for long-term use
41
42 == **1.3  Specification** ==
43
44 **Common DC Characteristics:**
45
46 * Supply Voltage: 2.1v ~~ 3.6v
47 * Operating Temperature: -40 ~~ 85°C
48
49 **NB-IoT Spec:**
50
51 * - B1 @H-FDD: 2100MHz
52 * - B3 @H-FDD: 1800MHz
53 * - B8 @H-FDD: 900MHz
54 * - B5 @H-FDD: 850MHz
55 * - B20 @H-FDD: 800MHz
56 * - B28 @H-FDD: 700MHz
57
58 == **1.4 Installation** ==
59
60 Connect CPN01 to an Open Close sensor like below. So it can detect the Open/Close event.
61
62 [[image:image-20221021110329-1.png]]
63
64 [[image:image-20221022234602-2.png||height="288" width="922"]]
65
66
67 == **1.5 ​Applications** ==
68
69 * Open/Close Detection
70 * Pulse meter application
71 * Dry Contact Detection
72
73 == **1.6 Mechanical** ==
74
75 ​[[image:image-20221021110415-3.png]]
76
77 == ** 1.7 Pin Definitions and Switch** ==
78
79 [[image:image-20221021110429-4.png]]
80
81 === **1.7.1 Pin Definition** ===
82
83 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]]**.
84
85
86 === **1.7.2 Jumper JP2(Power ON/OFF)** ===
87
88 Power on Device when putting this jumper.
89
90
91 === **1.7.3 BOOT MODE / SW1** ===
92
93
94 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.
95
96 2) Flash: working mode, the device starts to work for NB-IoT connection and sends out console output for further debugging.
97
98
99 === **1.7.4 Reset Button** ===
100
101
102 Press to reboot the device.
103
104
105 === **1.7.5 LED** ===
106
107
108 The LED will blink when :
109
110 1. Boot the device in flash mode
111 1. Send an uplink packet
112
113 = **2.  Use CPN01 to communicate with IoT Server** =
114
115 == **2.1  How it works** ==
116
117 The CPN01 is equipped with an NB-IoT module, the pre-loaded firmware in CPN01 will get **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.
118
119 The diagram below shows the working flow in the default firmware of CPN01:
120
121 [[image:image-20221021110615-5.png]]
122
123
124 == **2.2 ​ Configure CPN01** ==
125
126 === **2.2.1 Test Requirement** ===
127
128 To use CPN01 in your city, make sure to meet below requirements:
129
130 * Your local operator has already distributed an NB-IoT Network.
131 * The local NB-IoT network used the band that CPN01 supports.
132 * Your operator is able to distribute the data received in their NB-IoT network to your IoT server.
133
134 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 CoAP(120.24.4.116:5683) or raw UDP(120.24.4.116:5601) or MQTT(120.24.4.116:1883)or TCP(120.24.4.116:5600)protocol to send data to the test server.
135
136 [[image:image-20221023000439-3.png]]
137
138
139
140 === **2.2.2 Insert SIM card** ===
141
142 Insert the NB-IoT Card get from your provider.
143
144 User needs to take out the NB-IoT module and insert the SIM card like below:
145
146 [[image:image-20221021110745-6.png]] ​
147
148
149 === **2.2.3 Connect USB – TTL to CPN01 to configure it** ===
150
151 User need to configure CPN01 via serial port to set the **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.
152
153 **Connection:**
154
155 USB TTL GND <~-~-~-~-> GND
156
157 USB TTL TXD <~-~-~-~-> UART_RXD
158
159 USB TTL RXD <~-~-~-~-> UART_TXD
160
161 In the PC, use below serial tool settings:
162
163 * Baud:  **9600**
164 * Data bits:** 8**
165 * Stop bits: **1**
166 * Parity:  **None**
167 * Flow Control: **None**
168
169 Make sure the switch is in FLASH position, then power on CPN01 by connecting the (% style="color:orange" %)**Yellow Jumper**(%%).
170
171 ​[[image:image-20221021110817-7.png]]
172
173 CPN01 will output system info once powered on as below, we can enter the **password: 12345678** to access AT Command input.
174
175
176 **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]]
177
178 === **2.2.4 Use CoAP protocol to uplink data** ===
179
180 **Note: if you don't have CoAP server, you can refer this link to set up one: **[[**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/]]
181
182 **Use below commands:**
183
184 * **AT+PRO=1**   ~/~/ Set to use CoAP protocol to uplink
185 * **AT+SERVADDR=120.24.4.116,5683   ** ~/~/ to set CoAP server address and port
186 * **AT+URI=5,11,"mqtt",11,"coap",12,"0",15,"c=text1",23,"0" ** ~/~/Set COAP resource path
187
188 For parameter description, please refer to AT command set
189
190 [[image:image-20221021110948-8.png]]
191
192 After configure the server address and **reset the device** (via AT+ATZ ), CPN01 will start to uplink sensor values to CoAP server.
193
194 [[image:image-20221021110956-9.png]] ​
195
196 === **2.2.5 Use UDP protocol to uplink data(Default protocol)** ===
197
198 This feature is supported since firmware version v1.0.1
199
200 * **AT+PRO=2   ** ~/~/ Set to use UDP protocol to uplink
201 * **AT+SERVADDR=120.24.4.116,5601   ** ~/~/ to set UDP server address and port
202 * **AT+CFM=1       ** ~/~/If the server does not respond, this command is unnecessary
203
204 ​ [[image:image-20221021111025-10.png]]
205
206 [[image:image-20221021111033-11.png||height="241" width="576"]]
207
208
209
210 === **2.2.6 Use MQTT protocol to uplink data** ===
211
212 This feature is supported since firmware version v110
213
214 * **AT+PRO=3   ** ~/~/Set to use MQTT protocol to uplink
215 * **AT+SERVADDR=120.24.4.116,1883   ** ~/~/Set MQTT server address and port
216 * **AT+CLIENT=CLIENT       ** ~/~/Set up the CLIENT of MQTT
217 * **AT+UNAME=UNAME                               **~/~/Set the username of MQTT
218 * **AT+PWD=PWD                                        **~/~/Set the password of MQTT
219 * **AT+PUBTOPIC=NSE01_PUB                    **~/~/Set the sending topic of MQTT
220 * **AT+SUBTOPIC=NSE01_SUB          ** ~/~/Set the subscription topic of MQTT
221
222 ​ [[image:image-20221021111058-12.png]]
223
224 [[image:image-20221021111108-13.png]]
225
226
227
228 MQTT protocol has a much higher power consumption compare vs UDP / CoAP protocol. Please check the power analyze document and adjust the uplink period to a suitable interval.
229
230 === **2.2.7 Use TCP protocol to uplink data** ===
231
232 This feature is supported since firmware version v110
233
234 * **AT+PRO=4   ** ~/~/ Set to use TCP protocol to uplink
235 * **AT+SERVADDR=120.24.4.116,5600   ** ~/~/ to set TCP server address and port
236
237 ​ [[image:image-20221021111125-14.png]]
238
239 [[image:image-20221021111131-15.png]]
240
241
242
243 === **2.2.8 Change Update Interval** ===
244
245 User can use below command to change the **uplink interval**.
246
247 * **AT+TDC=600      ** ~/~/ Set Update Interval to 600s
248
249 **NOTE:**
250
251 **~1. By default, the device will send an uplink message every 1 hour.**
252
253 == **2.3  Uplink Payload** ==
254
255 In this mode, uplink payload includes 87 bytes in total by default.
256
257 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.
258
259 |**Size(bytes)**|**8**|**2**|**2**|**1**|**1**|**1**|**2**|**2**|4
260 |**Value**|[[Device ID>>path:#H2.4.1A0A0DeviceID]]|[[Ver>>path:#H2.4.2A0VersionInfo]]|[[BAT>>path:#H2.4.3A0BatteryInfo]]|[[Signal Strength>>path:#H2.4.4A0SignalStrength]]|MOD|[[Interrupt>>path:#H2.4.8A0DigitalInterrupt]]|[[Soil P>>path:#H2.4.7A0SoilConductivity28EC29]]H|[[Soil Temperature>>path:#H2.4.6A0SoilTemperature]]|Time stamp
261
262 |2|2|4|8 group
263 |[[Soil Temperature>>path:#H2.4.6A0SoilTemperature]]|[[Soil P>>path:#H2.4.7A0SoilConductivity28EC29]]H|Time stamp|...
264
265 If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the CPN01 uplink data.
266
267 [[image:image-20221021111201-16.png||height="572" width="792"]]
268
269 The payload is ASCII string, representative same HEX:
270
271 **0x (% style="color:red" %)__0xf867787050213317__  (% style="color:blue" %)__0064__ (% style="color:green" %)_0c78__  __(% style="color:#00b0f0" %)17__  __(% style="color:#7030a0" %)01__  __(% style="color:#d60093" %)00__  __(% style="color:#a14d07" %)01 __ __(% style="color:#0020b0" %)__ __00__  __(% style="color:#420042" %)000009__  __(% style="color:#663300" %) 000002__  __(% style="color:#d60093" %)6315537bb__  __(% style="color:#663300" %)// 0100000b02000002663510fed__  __0100000e0200000263510f39 010000000000000063510e85 010000000000000063510d2e 010000000000000063510c7a 010000000000000063510bc6 010000000000000063510954 010000000000000063510882 //(%%)**
272
273 where:
274 *(% style="color:#037691" %) **Device ID:**(%%) 0x f867787050213317 = f867787050213317
275
276 *(% style="color:#037691" %) **Version:**(%%) 0x0064=100=1.0.0
277
278 *(% style="color:#037691" %) **BAT:**(%%) 0x0c78 = 3192 mV = 3.192V
279
280 *(% style="color:#037691" %) **Singal: **(%%)0x17 = 23
281
282 *(% style="color:#037691" %) **Mod:**(%%) 0x01 = 1
283
284 *(% style="color:#037691" %) **Calculate Flag:**(%%) 0x00= 0
285
286 *(% style="color:#037691" %) **Contact Status:**(%%) 0x00= 0
287
288 *(% style="color:#037691" %) **Alarm:**(%%)0x00 =0
289
290 *(% style="color:#037691" %) **Total pulse:0x09 =0**
291
292 *(% style="color:#037691" %) **The last open duration:**(%%)0x02 =2
293
294 *(% style="color:#037691" %)**Time stamp :**(%%) 0x6315537b =1662342011
295
296 *(% style="color:#037691" %) **Contact Status, Total pulse, Calculate Flag, The last open duration ,Time stamp :**(%%) 0100000b0200002663510fed
297
298 *(% style="color:#037691" %) **8 sets of recorded data: Contact Status, Total pulse, Calculate Flag, The last open duration ,Time stamp :**(%%) 0100000e0200002663510f39,.......
299
300 == **2.4  Payload Explanation and Sensor Interface** ==
301
302 === **2.4.1  Device ID** ===
303
304 By default, the Device ID equal to the last 15 bits of IMEI.
305
306 User can use **AT+DEUI** to set Device ID
307
308 **Example:**
309
310 AT+DEUI=868411056754138
311
312 The Device ID is stored in a none-erase area, Upgrade the firmware or run AT+FDR won't erase Device ID.
313
314 === **2.4.2  Version Info** ===
315
316 Specify the software version: 0x64=100, means firmware version 1.00.
317
318 For example: 0x00 64 : this device is CPN01 with firmware version 1.0.0.
319
320 === **2.4.3  Battery Info** ===
321
322 Check the battery voltage for CPN01.
323
324 Ex1: 0x0B45 = 2885mV
325
326 Ex2: 0x0B49 = 2889mV
327
328 === **2.4.4  Signal Strength** ===
329
330 NB-IoT Network signal Strength.
331
332 **Ex1: 0x1d = 29**
333
334 **0**  -113dBm or less
335
336 **1**  -111dBm
337
338 **2...30** -109dBm... -53dBm
339
340 **31**   -51dBm or greater
341
342 **99**    Not known or not detectable
343
344 === **2.4.5 Calculate Flag** ===
345
346 The calculate flag is a user define field, IoT server can use this filed to handle different meter with different pulse factor. For example, if there are 100 water meters, meter 1 ~~50 are 1 liter/pulse and meter 51 ~~ 100 has 1.5 liter/pulse.
347
348 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.
349
350 Default value: 0. 
351
352 Range (6 bits): (b)000000 ~~ (b) 111111
353
354 === **2.4.6  Alarm** ===
355
356 See [[Alarm Base on Timeout>>url:http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/CPL01%20LoRaWAN%20Outdoor%20PulseContact%20%20Sensor%20Manual/#H3.5AlarmBaseonTimeout]]
357
358 === **2.4.7 Contact Status** ===
359
360 0: Open
361
362 1: Close
363
364 === **2.4.8 Total pulse** ===
365
366 Total pulse/counting base on dry [[contact trigger event>>url:http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/CPL01%20LoRaWAN%20Outdoor%20PulseContact%20%20Sensor%20Manual/#H2.3.2SensorConfiguration2CFPORT3D4]]
367
368 Range (3 Bytes) : 0x000000 ~~ 0xFFFFFF . Max: 16777215
369
370 === **2.4.9 The last open duration** ===
371
372 Dry Contact last open duration.
373
374 Unit: min.
375
376 [[image:image-20221021111346-17.png||height="146" width="770"]]
377
378
379 === **2.4.10  Timestamp** ===
380
381 Time stamp : 0x6315537b =1662342011
382
383 Convert Unix timestamp to time 2022-9-5 9:40:11.
384
385 **~ **
386
387 == **2.5  Downlink Payload** ==
388
389 By default, CPN01 prints the downlink payload to console port.
390
391 [[image:image-20221021111414-18.png]] ​
392
393 **Examples:**
394
395 * **Set TDC**
396
397 If the payload=0100003C, it means set the END Node's TDC to 0x00003C=60(S), while type code is 01.
398
399 Payload:    01 00 00 1E    TDC=30S
400
401 Payload:    01 00 00 3C    TDC=60S
402
403 * **Reset**
404
405 If payload = 0x04FF, it will reset the NSE01
406
407 * **INTMOD**
408
409 Downlink Payload: 06000003, Set AT+INTMOD=3
410
411 == **2.6  ​LED Indicator** ==
412
413 The CPN01 has an internal LED which is to show the status of different state.
414
415 * When power on, CPN01 will detect if sensor probe is connected, if probe detected, LED will blink four times. (no blinks in this step is no probe)
416 * Then the LED will be on for 1 second means device is boot normally.
417 * After CPN01 join NB-IoT network. The LED will be ON for 3 seconds.
418 * For each uplink probe, LED will be on for 500ms.
419
420 == **2.7  Alarm Base on Timeout** ==
421
422 CPL01 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:
423
424
425 **~1. Keep Status: Status to be monitor**
426
427 Keep Status = 1: Monitor Close to Open event
428
429 Keep Status = 0: Monitor Open to Close event
430
431
432 **2. Keep Time: Timeout to send an Alarm**
433
434 Range 0 ~~ 65535(0xFFFF) seconds.
435
436 If keep time = 0, Disable Alarm Base on Timeout feature.
437
438 If keep time > 0, device will monitor the keep status event and send an alarm when status doesn’t change after timeout.
439
440
441 **AT Command** to configure:
442
443 **AT+TTRIG=1,30**  ~-~-> When the **Keep Status** change from connect to disconnect, and device remains in disconnect status for more than 30 seconds. CPL01 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.
444
445 **AT+TTIG=0,0 ** ~-~-> Default Value, disable timeout Alarm.
446
447 == **2.8 Set debug mode** ==
448
449 Feature: Enable or Disable debug mode
450
451
452 **AT Command: AT+DEBUG**
453
454 [[image:image-20221021111629-21.png]]
455
456 == **2.9 Clear Flash Record** ==
457
458 Feature: Clear flash storage for data log feature.
459
460 **AT Command: AT+CLRDTA**
461
462 [[image:image-20221021111527-19.png]]
463
464 == ** 2.10 Set trigger mode** ==
465
466 ➢ AT Command: **AT+TTRMOD**
467
468 Feature: Set the trigger interrupt mode.
469
470 [[image:image-20221021111552-20.png]]
471
472 == **2.11 Set the calculate flag** ==
473
474 Feature: Set the calculate flag
475
476 **AT Command: AT+CALCFLAG**
477
478 [[image:image-20221021111711-22.png]]
479
480 == **2.12 Set count number** ==
481
482 Feature: Manually set the count number
483
484 **AT Command: AT+SETCNT**
485
486 [[image:image-20221021111748-24.png]]
487
488 == **2.13 Set the number of data to be uploaded and the recording time** ==
489
490 ➢ AT Command:
491
492 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)
493
494
495 AT+NOUD=8  ~/~/The device uploads 8 sets of recorded data by default. Up to 32 sets of record data can be uploaded.
496
497 == **2.14 Read or Clear cached data** ==
498
499 ➢ AT Command:
500
501 AT+CDP    ~/~/ Read cached data
502
503 [[image:image-20221021111810-25.png||height="364" width="797"]]
504
505
506 AT+CDP=0    ~/~/ Clear cached data ​
507
508 == **2.15  ​Firmware Change Log** ==
509
510 Download URL & Firmware Change log: [[https:~~/~~/www.dropbox.com/sh/1zmcakvbkf24f8x/AACmq2dZ3iRB9F1nVWeEB9Moa?dl=0>>url:https://www.dropbox.com/sh/1zmcakvbkf24f8x/AACmq2dZ3iRB9F1nVWeEB9Moa?dl=0]]
511
512 Upgrade Instruction: [[Upgrade Firmware>>path:#H5.1200BHowtoUpgradeFirmware]]
513
514 == **2.16  ​Battery Analysis** ==
515
516 === **2.16.1  ​Battery Type** ===
517
518 The CPN01 battery is a combination of an 8500mAh Li/SOCI2 Battery and a Super Capacitor. The battery is none-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.
519
520 The battery is designed to last for several years depends on the actually use environment and update interval. 
521
522 The battery related documents as below:
523
524 * [[Battery Dimension>>url:http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]
525 * [[Lithium-Thionyl Chloride Battery datasheet>>url:http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]
526 * [[Lithium-ion Battery-Capacitor datasheet>>url:http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]
527
528 [[image:image-20221021111911-26.png]] ​
529
530 === **2.16.2  Power consumption Analyze** ===
531
532 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.
533
534 Instruction to use as below:
535
536 **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/]]
537
538 **Step 2: ** Open it and choose
539
540 * Product Model
541 * Uplink Interval
542 * Working Mode
543
544 And the Life expectation in difference case will be shown on the right.
545
546 [[image:image-20221021111923-27.png||height="253" width="783"]] ​
547
548 === **2.16.3  ​Battery Note** ===
549
550 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.
551
552 === **2.16.4  Replace the battery** ===
553
554 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).
555
556 = **3. ​ Access NB-IoT Module** =
557
558 Users can directly access the AT command set of the NB-IoT module.
559
560 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/]] 
561
562 [[image:image-20221021112006-28.png]] ​
563
564 = **4.  Using the AT Commands** =
565
566 == **4.1  Access AT Commands** ==
567
568 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]]
569
570 AT+<CMD>?  : Help on <CMD>
571
572 AT+<CMD>         : Run <CMD>
573
574 AT+<CMD>=<value> : Set the value
575
576 AT+<CMD>=?  : Get the value
577
578 **General Commands**      
579
580 AT  : Attention       
581
582 AT?  : Short Help     
583
584 ATZ  : MCU Reset    
585
586 AT+TDC  : Application Data Transmission Interval
587
588 AT+CFG  : Print all configurations
589
590 AT+CFGMOD           : Working mode selection
591
592 AT+INTMOD            : Set the trigger interrupt mode
593
594 AT+5VT  : Set extend the time of 5V power  
595
596 AT+PRO  : Choose agreement
597
598 AT+RXDL  : Extend the sending and receiving time
599
600 AT+SERVADDR  : Server Address
601
602 AT+TR      : Get or Set record time"
603
604
605 AT+NOUD      : Get or Set the number of data to be uploaded
606
607
608 AT+CDP     : Read or Clear cached data
609
610
611 AT+ DEBUG   : Enable or Disable debug mode
612
613 AT+ TTRIG   : Get or Set Alarm Base on Timeout
614
615 AT+ TTRMOD   : Get or Set the trigger interrupt mode(0:falling,1:rising)
616
617 AT+ CALCFLAG   : Get or Set the calculate flag
618
619 AT+ CLRC   : Clear current door open count
620
621 **COAP Management**      
622
623 AT+URI            : Resource parameters
624
625 **UDP Management**
626
627 AT+CFM          : Upload confirmation mode (only valid for UDP)
628
629 **MQTT Management**
630
631 AT+CLIENT               : Get or Set MQTT client
632
633 AT+UNAME  : Get or Set MQTT Username
634
635 AT+PWD                  : Get or Set MQTT password
636
637 AT+PUBTOPIC  : Get or Set MQTT publish topic
638
639 AT+SUBTOPIC  : Get or Set MQTT subscription topic
640
641 **Information**          
642
643 AT+FDR  : Factory Data Reset
644
645 AT+PWORD  : Serial Access Password
646
647 = **​5.  FAQ** =
648
649 == **5.1 ​ How to Upgrade Firmware** ==
650
651 User can upgrade the firmware for 1) bug fix, 2) new feature release.
652
653 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]]
654
655 **Notice, **CPN01 **and **CPN01 **share the same mother board. They use the same connection and method to update.**
656
657 == **5.2  Can I calibrate CPN01 to different soil types?** ==
658
659 CPN01 is calibrated for saline-alkali soil and loamy soil. If users want to use it for other soil, they can calibrate the value in the IoT platform base on the value measured by saline-alkali soil and loamy soil. The formula can be found at [[this link>>url:https://www.dragino.com/downloads/downloads/LoRa_End_Node/LSE01/Calibrate_to_other_Soil_20220605.pdf]].
660
661 = **6.  Trouble Shooting** =
662
663 == **6.1  ​Connection problem when uploading firmware** ==
664
665 **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]]
666
667 == **6.2  AT Command input doesn't work** ==
668
669 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 **ENTER** while sending out the command. Some serial tool doesn't send **ENTER** while press the send key, user need to add ENTER in their string.
670
671 = **7. ​ Order Info** =
672
673 Part Number**:** CPN01
674
675 = **8.  Packing Info** =
676
677 **Package Includes**:
678
679 * CPN01 NB-IoT Soil Moisture & EC Sensor x 1
680 * External antenna x 1
681
682 **Dimension and weight**:
683
684 * Size: 195 x 125 x 55 mm
685 * Weight:   420g
686
687 = **9.  Support** =
688
689 * 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.
690 * 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]]
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
Copyright ©2010-2022 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0