<
From version < 38.1 >
edited by Edwin Chen
on 2022/10/22 23:49
To version < 42.1 >
edited by Edwin Chen
on 2022/10/23 00:32
>
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -70,7 +70,6 @@
70 70  * Pulse meter application
71 71  * Dry Contact Detection
72 72  
73 -
74 74  == **1.6 Mechanical** ==
75 75  
76 76  ​[[image:image-20221021110415-3.png]]
... ... @@ -102,7 +102,6 @@
102 102  
103 103  Press to reboot the device.
104 104  
105 -== ==
106 106  
107 107  === **1.7.5 LED** ===
108 108  
... ... @@ -112,41 +112,44 @@
112 112  1. Boot the device in flash mode
113 113  1. Send an uplink packet
114 114  
115 -
116 116  = **2.  Use CPN01 to communicate with IoT Server** =
117 117  
118 118  == **2.1  How it works** ==
119 119  
120 -The CPN01 is equipped with a NB-IoT module, the pre-loaded firmware in CPN01 will get environment data from sensors and send the value to local NB-IoT network via the NB-IoT module.  The NB-IoT network will forward this value to IoT server via the protocol defined by CPN01.
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.
121 121  
122 -The diagram below shows the working flow in default firmware of CPN01:
119 +The diagram below shows the working flow in the default firmware of CPN01:
123 123  
124 124  [[image:image-20221021110615-5.png]]
125 125  
126 -== **2.2 ​ Configure the CPN01** ==
127 127  
124 +== **2.2 ​ Configure CPN01** ==
125 +
128 128  === **2.2.1 Test Requirement** ===
129 129  
130 -To use CPN01 in your city, make sure meet below requirements:
128 +To use CPN01 in your city, make sure to meet below requirements:
131 131  
132 -* Your local operator has already distributed a NB-IoT Network there.
130 +* Your local operator has already distributed an NB-IoT Network.
133 133  * The local NB-IoT network used the band that CPN01 supports.
134 134  * Your operator is able to distribute the data received in their NB-IoT network to your IoT server.
135 135  
136 -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
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.
137 137  
136 +[[image:image-20221023000439-3.png]]
137 +
138 138   ​
139 139  
140 -=== **2.2.2 Insert SIM card** ===
140 +=== **2.2.2 Insert NB-IoT SIM card** ===
141 141  
142 142  Insert the NB-IoT Card get from your provider.
143 143  
144 -User need to take out the NB-IoT module and insert the SIM card like below:
144 +User needs to take out the NB-IoT module and insert the SIM card like below:
145 145  
146 146  [[image:image-20221021110745-6.png]] ​
147 147  
148 -=== **2.2.3 Connect USB – TTL to CPN01 to configure it** ===
149 149  
149 +=== **2.2.3 Connect USB – TTL to CPN01 and configure it** ===
150 +
150 150  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.
151 151  
152 152  **Connection:**
... ... @@ -165,36 +165,44 @@
165 165  * Parity:  **None**
166 166  * Flow Control: **None**
167 167  
168 -Make sure the switch is in FLASH position, then power on device by connecting the jumper on CPN01. CPN01 will output system info once power on as below, we can enter the **password: 12345678** to access AT Command input.
169 +Make sure the switch is in FLASH position, then power on CPN01 by connecting the (% style="color:orange" %)**Yellow Jumper**(%%).
169 169  
170 170  ​[[image:image-20221021110817-7.png]]
171 171  
173 +CPN01 will output system info once powered on as below, we can enter the **password: 12345678** to access AT Command input.
174 +
175 +
172 172  **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]]
173 173  
178 +
174 174  === **2.2.4 Use CoAP protocol to uplink data** ===
175 175  
176 -**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 +**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/]]
177 177  
178 -**Use below commands:**
179 179  
184 +**Use below commands in CPN01:**
185 +
180 180  * **AT+PRO=1**   ~/~/ Set to use CoAP protocol to uplink
181 -* **AT+SERVADDR=120.24.4.116,5683   ** ~/~/ to set CoAP server address and port
182 -* **AT+URI=5,11,"mqtt",11,"coap",12,"0",15,"c=text1",23,"0" ** ~/~/Set COAP resource path
187 +* **AT+SERVADDR=120.24.4.116,5683   ** ~/~/ Set CoAP server address and port
188 +* **AT+URI=5,11,"mqtt",11,"coap",12,"0",15,"c=text1",23,"0" ** ~/~/Set CoAP resource path
183 183  
184 184  For parameter description, please refer to AT command set
185 185  
186 186  [[image:image-20221021110948-8.png]]
187 187  
188 -After configure the server address and **reset the device** (via AT+ATZ ), CPN01 will start to uplink sensor values to CoAP server.
189 189  
195 +After configuring the server address and **reset CPN01** (via AT+ATZ ), CPN01 will start to uplink sensor values to the CoAP server.
196 +
190 190  [[image:image-20221021110956-9.png]] ​
191 191  
199 +
192 192  === **2.2.5 Use UDP protocol to uplink data(Default protocol)** ===
193 193  
194 -This feature is supported since firmware version v1.0.1
195 195  
203 +**AT Commands:**
204 +
196 196  * **AT+PRO=2   ** ~/~/ Set to use UDP protocol to uplink
197 -* **AT+SERVADDR=120.24.4.116,5601   ** ~/~/ to set UDP server address and port
206 +* **AT+SERVADDR=120.24.4.116,5601   ** ~/~/ Set UDP server address and port
198 198  * **AT+CFM=1       ** ~/~/If the server does not respond, this command is unnecessary
199 199  
200 200  ​ [[image:image-20221021111025-10.png]]
... ... @@ -205,8 +205,9 @@
205 205  
206 206  === **2.2.6 Use MQTT protocol to uplink data** ===
207 207  
208 -This feature is supported since firmware version v110
209 209  
218 +**AT Commands:**
219 +
210 210  * **AT+PRO=3   ** ~/~/Set to use MQTT protocol to uplink
211 211  * **AT+SERVADDR=120.24.4.116,1883   ** ~/~/Set MQTT server address and port
212 212  * **AT+CLIENT=CLIENT       ** ~/~/Set up the CLIENT of MQTT
... ... @@ -221,14 +221,15 @@
221 221  
222 222  ​
223 223  
224 -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.
234 +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.
225 225  
236 +
226 226  === **2.2.7 Use TCP protocol to uplink data** ===
227 227  
228 -This feature is supported since firmware version v110
239 +**AT Commands**
229 229  
230 230  * **AT+PRO=4   ** ~/~/ Set to use TCP protocol to uplink
231 -* **AT+SERVADDR=120.24.4.116,5600   ** ~/~/ to set TCP server address and port
242 +* **AT+SERVADDR=120.24.4.116,5600   ** ~/~/ Set TCP server address and port
232 232  
233 233  ​ [[image:image-20221021111125-14.png]]
234 234  
... ... @@ -240,15 +240,16 @@
240 240  
241 241  User can use below command to change the **uplink interval**.
242 242  
243 -* **AT+TDC=600      ** ~/~/ Set Update Interval to 600s
254 +* **AT+TDC=7200      ** ~/~/ Set Update Interval to 7200s (2 hours)
244 244  
245 245  **NOTE:**
246 246  
247 247  **~1. By default, the device will send an uplink message every 1 hour.**
248 248  
260 +
249 249  == **2.3  Uplink Payload** ==
250 250  
251 -In this mode, uplink payload includes 87 bytes in total by default.
263 +The uplink payload includes 87 bytes in total by default.
252 252  
253 253  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.
254 254  
... ... @@ -277,9 +277,9 @@
277 277  
278 278  *(% style="color:#037691" %) **Mod:**(%%) 0x01 = 1
279 279  
280 -*(% style="color:#037691" %) **Calculate Flag:**(%%) 0x00= 0
292 +*(% style="color:#037691" %) **Calculate Flag:**(%%) 0x00=0
281 281  
282 -*(% style="color:#037691" %) **Contact Status:**(%%) 0x00= 0
294 +*(% style="color:#037691" %) **Contact Status:**(%%) 0x00=0
283 283  
284 284  *(% style="color:#037691" %) **Alarm:**(%%)0x00 =0
285 285  
... ... @@ -287,17 +287,18 @@
287 287  
288 288  *(% style="color:#037691" %) **The last open duration:**(%%)0x02 =2
289 289  
290 -*(% style="color:#037691" %)**Time stamp :**(%%) 0x6315537b =1662342011
302 +*(% style="color:#037691" %)** Time stamp :**(%%) 0x6315537b =1662342011 (Unix Time)
291 291  
292 292  *(% style="color:#037691" %) **Contact Status, Total pulse, Calculate Flag, The last open duration ,Time stamp :**(%%) 0100000b0200002663510fed
293 293  
294 294  *(% style="color:#037691" %) **8 sets of recorded data: Contact Status, Total pulse, Calculate Flag, The last open duration ,Time stamp :**(%%) 0100000e0200002663510f39,.......
295 295  
308 +
296 296  == **2.4  Payload Explanation and Sensor Interface** ==
297 297  
298 298  === **2.4.1  Device ID** ===
299 299  
300 -By default, the Device ID equal to the last 15 bits of IMEI.
313 +By default, the Device ID is equal to the last 15 bits of IMEI.
301 301  
302 302  User can use **AT+DEUI** to set Device ID
303 303  
... ... @@ -305,14 +305,16 @@
305 305  
306 306  AT+DEUI=868411056754138
307 307  
308 -The Device ID is stored in a none-erase area, Upgrade the firmware or run AT+FDR won't erase Device ID.
321 +The Device ID is stored in a non-erase area, Upgrade the firmware or run AT+FDR won't erase the Device ID.
309 309  
323 +
310 310  === **2.4.2  Version Info** ===
311 311  
312 -Specify the software version: 0x64=100, means firmware version 1.00.
326 +Specify the software version: 0x64=100, which means firmware version 1.00.
313 313  
314 -For example: 0x00 64 : this device is CPN01 with firmware version 1.0.0.
328 +For example 0x00 64 : This device is CPN01 with firmware version 1.0.0.
315 315  
330 +
316 316  === **2.4.3  Battery Info** ===
317 317  
318 318  Check the battery voltage for CPN01.
... ... @@ -321,6 +321,7 @@
321 321  
322 322  Ex2: 0x0B49 = 2889mV
323 323  
339 +
324 324  === **2.4.4  Signal Strength** ===
325 325  
326 326  NB-IoT Network signal Strength.
... ... @@ -337,9 +337,10 @@
337 337  
338 338  **99**    Not known or not detectable
339 339  
356 +
340 340  === **2.4.5 Calculate Flag** ===
341 341  
342 -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.
359 +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.
343 343  
344 344  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.
345 345  
... ... @@ -347,10 +347,12 @@
347 347  
348 348  Range (6 bits): (b)000000 ~~ (b) 111111
349 349  
367 +
350 350  === **2.4.6  Alarm** ===
351 351  
352 352  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]]
353 353  
372 +
354 354  === **2.4.7 Contact Status** ===
355 355  
356 356  0: Open
... ... @@ -357,12 +357,14 @@
357 357  
358 358  1: Close
359 359  
379 +
360 360  === **2.4.8 Total pulse** ===
361 361  
362 -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]]
382 +Total pulse/counting based 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]]
363 363  
364 364  Range (3 Bytes) : 0x000000 ~~ 0xFFFFFF . Max: 16777215
365 365  
386 +
366 366  === **2.4.9 The last open duration** ===
367 367  
368 368  Dry Contact last open duration.
... ... @@ -374,7 +374,7 @@
374 374  
375 375  === **2.4.10  Timestamp** ===
376 376  
377 -Time stamp : 0x6315537b =1662342011
398 +Timestamp : 0x6315537b =1662342011
378 378  
379 379  Convert Unix timestamp to time 2022-9-5 9:40:11.
380 380  
... ... @@ -406,7 +406,7 @@
406 406  
407 407  == **2.6  ​LED Indicator** ==
408 408  
409 -The CPN01 has an internal LED which is to show the status of different state.
430 +The CPN01 has an internal LED which is to show the status of different states.
410 410  
411 411  * 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)
412 412  * Then the LED will be on for 1 second means device is boot normally.
... ... @@ -413,9 +413,10 @@
413 413  * After CPN01 join NB-IoT network. The LED will be ON for 3 seconds.
414 414  * For each uplink probe, LED will be on for 500ms.
415 415  
437 +
416 416  == **2.7  Alarm Base on Timeout** ==
417 417  
418 -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:
440 +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:
419 419  
420 420  
421 421  **~1. Keep Status: Status to be monitor**
... ... @@ -436,10 +436,11 @@
436 436  
437 437  **AT Command** to configure:
438 438  
439 -**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.
461 +**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.
440 440  
441 441  **AT+TTIG=0,0 ** ~-~-> Default Value, disable timeout Alarm.
442 442  
465 +
443 443  == **2.8 Set debug mode** ==
444 444  
445 445  Feature: Enable or Disable debug mode
... ... @@ -511,11 +511,11 @@
511 511  
512 512  === **2.16.1  ​Battery Type** ===
513 513  
514 -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.
537 +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.
515 515  
516 -The battery is designed to last for several years depends on the actually use environment and update interval. 
539 +The battery is designed to last for several years depends on the actual use environment and update interval. 
517 517  
518 -The battery related documents as below:
541 +The battery-related documents as below:
519 519  
520 520  * [[Battery Dimension>>url:http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]
521 521  * [[Lithium-Thionyl Chloride Battery datasheet>>url:http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]
... ... @@ -549,6 +549,7 @@
549 549  
550 550  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).
551 551  
575 +
552 552  = **3. ​ Access NB-IoT Module** =
553 553  
554 554  Users can directly access the AT command set of the NB-IoT module.
... ... @@ -648,12 +648,10 @@
648 648  
649 649  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]]
650 650  
651 -**Notice, **CPN01 **and **CPN01 **share the same mother board. They use the same connection and method to update.**
675 +**Notice, **CPN01 **and **CPL01 **share the same mother board. They use the same connection and method to update.**
652 652  
653 -== **5.2  Can I calibrate CPN01 to different soil types?** ==
677 +
654 654  
655 -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]].
656 -
657 657  = **6.  Trouble Shooting** =
658 658  
659 659  == **6.1  ​Connection problem when uploading firmware** ==
... ... @@ -660,19 +660,22 @@
660 660  
661 661  **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]]
662 662  
685 +
663 663  == **6.2  AT Command input doesn't work** ==
664 664  
665 665  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.
666 666  
690 +
667 667  = **7. ​ Order Info** =
668 668  
669 669  Part Number**:** CPN01
670 670  
695 +
671 671  = **8.  Packing Info** =
672 672  
673 673  **Package Includes**:
674 674  
675 -* CPN01 NB-IoT Soil Moisture & EC Sensor x 1
700 +* CPN01 Open/Close Sensor x 1
676 676  * External antenna x 1
677 677  
678 678  **Dimension and weight**:
image-20221023000439-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Edwin
Size
... ... @@ -1,0 +1,1 @@
1 +82.1 KB
Content
Copyright ©2010-2022 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0