<
From version < 70.23 >
edited by Xiaoling
on 2022/11/21 10:58
To version < 57.1 >
edited by Xiaoling
on 2022/11/17 11:49
>
Change comment: Uploaded new attachment "image-20221117114949-5.png", version {1}

Summary

Details

Page properties
Content
... ... @@ -9,14 +9,13 @@
9 9  
10 10  **Table of Contents:**
11 11  
12 -{{toc/}}
13 13  
14 14  
15 15  
16 16  
17 -
18 18  = 1.  Introduction =
19 19  
18 +
20 20  == 1.1 ​ What is NDS03A NB-IoT Open/Close Door Sensor ==
21 21  
22 22  
... ... @@ -41,14 +41,10 @@
41 41  )))
42 42  
43 43  (((
44 -NarrowBand-Internet of Things (NB-IoT) is a (% style="color:blue" %)**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.
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.
45 45  )))
46 46  
47 47  (((
48 -NDS03A supports different uplink methods including (% style="color:blue" %)**TCP, MQTT, UDP, and CoAP**(%%) for different application requirements.
49 -)))
50 -
51 -(((
52 52  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)
53 53  )))
54 54  
... ... @@ -57,7 +57,9 @@
57 57  )))
58 58  
59 59  
55 +​
60 60  
57 +
61 61  == ​1.2  Features ==
62 62  
63 63  
... ... @@ -65,7 +65,7 @@
65 65  * Open/Close detect
66 66  * Open/Close statistics
67 67  * Monitor Battery Level
68 -* connect two door sensors
65 +* Uplink on periodically and open/close event
69 69  * Datalog feature
70 70  * Uplink periodically
71 71  * Downlink to change configure
... ... @@ -76,23 +76,32 @@
76 76  * Micro SIM card slot for NB-IoT SIM
77 77  * 8500mAh Battery for long-term use
78 78  
76 +== 1.3  Specification ==
79 79  
80 -== 1.3  Storage & Operation ==
81 81  
79 +(% style="color:blue" %)**Common DC Characteristics:**
82 82  
83 -Temperature -40°C to +85°C
81 +* Supply Voltage: 2.1v ~~ 3.6v
82 +* Operating Temperature: -40 ~~ 85°C
84 84  
84 +(% style="color:blue" %)**NB-IoT Spec:**
85 85  
86 -== 1.4  Mechanical ==
86 +* - B1 @H-FDD: 2100MHz
87 +* - B3 @H-FDD: 1800MHz
88 +* - B8 @H-FDD: 900MHz
89 +* - B5 @H-FDD: 850MHz
90 +* - B20 @H-FDD: 800MHz
91 +* - B28 @H-FDD: 700MHz
87 87  
93 +== 1.4  Installation ==
88 88  
89 -[[image:image-20221117114937-4.png]]
90 90  
96 +Connect CPN01 to an Open Close sensor like below. So it can detect the Open/Close event.
91 91  
92 -[[image:image-20221117114949-5.png]]
98 +[[image:image-20221021110329-1.png]]
93 93  
94 94  
95 -[[image:image-20221117115010-6.png]]
101 +[[image:image-20221022234602-2.png||height="288" width="922"]]
96 96  
97 97  
98 98  
... ... @@ -99,28 +99,17 @@
99 99  == 1.5 ​ Applications ==
100 100  
101 101  
102 -[[image:image-20221117114842-3.png]]
108 +* Open/Close Detection
109 +* Pulse meter application
110 +* Dry Contact Detection
103 103  
112 +== 1.6  Mechanical ==
104 104  
105 105  
106 -== 1.6  Specification ==
115 +​[[image:image-20221021110415-3.png]]
107 107  
108 108  
109 -(% style="color:blue" %)**Common DC Characteristics:**
110 110  
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 124  == 1.7  Pin Definitions and Switch ==
125 125  
126 126  
... ... @@ -130,9 +130,10 @@
130 130  === 1.7.1  Pin Definition ===
131 131  
132 132  
133 -The device is pre-configured to connect to a door sensor. The other pins are not used. If user wants to know more about other pins, please refer to the user manual of LSN50v2 at:  [[https:~~/~~/www.dropbox.com/sh/djkxs7mr17y94mi/AABVlWbM9uzK9OA3mXyAT10Za?dl=0>>https://www.dropbox.com/sh/djkxs7mr17y94mi/AABVlWbM9uzK9OA3mXyAT10Za?dl=0]]
128 +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]]**.
134 134  
135 135  
131 +
136 136  === 1.7.2  Jumper JP2(Power ON/OFF) ===
137 137  
138 138  
... ... @@ -139,6 +139,7 @@
139 139  Power on Device when putting this jumper.
140 140  
141 141  
138 +
142 142  === 1.7.3  BOOT MODE / SW1 ===
143 143  
144 144  
... ... @@ -147,6 +147,7 @@
147 147  2)  Flash:  working mode, the device starts to work for NB-IoT connection and sends out console output for further debugging.
148 148  
149 149  
147 +
150 150  === 1.7.4  Reset Button ===
151 151  
152 152  
... ... @@ -153,6 +153,7 @@
153 153  Press to reboot the device.
154 154  
155 155  
154 +
156 156  === 1.7.5  LED ===
157 157  
158 158  
... ... @@ -163,42 +163,40 @@
163 163  2.  Send an uplink packet
164 164  
165 165  
166 -== 1.8  Magnet Distance ==
167 167  
166 += 2.  Use CPN01 to communicate with IoT Server =
168 168  
169 -(% style="color:blue" %)**Wood Door:**(%%) 10 ~~ 30mm
170 170  
171 -(% style="color:blue" %)**Iron Door:**(%%)**    **30 ~~ 45mm
172 -
173 -
174 -= 2.  Use NDS03A to communicate with IoT Server =
175 -
176 176  == 2.1  How it works ==
177 177  
178 178  
179 -In this user case, the NDS03A is installed on the door edge to detect the open/close event and send the status to the NB-IoT server. The NB-IoT network will forward this value to IoT server via the protocol defined by NDS03A.
172 +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.
180 180  
181 -The diagram below shows the working flow in the default firmware of NDS03A:
174 +The diagram below shows the working flow in the default firmware of CPN01:
182 182  
183 183  [[image:image-20221021110615-5.png]]
184 184  
185 185  
186 -== 2.2 ​ Configure NDS03A ==
187 187  
180 +== 2.2 ​ Configure CPN01 ==
181 +
182 +
188 188  === 2.2.1 Test Requirement ===
189 189  
190 190  
191 -To use NDS03A in your city, make sure to meet below requirements:
186 +To use CPN01 in your city, make sure to meet below requirements:
192 192  
193 193  * Your local operator has already distributed an NB-IoT Network.
194 -* The local NB-IoT network used the band that NDS03A supports.
189 +* The local NB-IoT network used the band that CPN01 supports.
195 195  * Your operator is able to distribute the data received in their NB-IoT network to your IoT server.
196 196  
197 -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.
192 +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.
198 198  
199 -[[image:image-20221117142300-1.png]]
194 +[[image:image-20221023000439-3.png]]
200 200  
196 + ​
201 201  
198 +
202 202  === 2.2.2 Insert NB-IoT SIM card ===
203 203  
204 204  
... ... @@ -209,11 +209,12 @@
209 209  [[image:image-20221021110745-6.png]] ​
210 210  
211 211  
212 -=== 2.2.3 Connect USB – TTL to NDS03A and configure it ===
213 213  
210 +=== 2.2.3 Connect USB – TTL to CPN01 and configure it ===
214 214  
215 -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.
216 216  
213 +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.
214 +
217 217  (% style="color:blue" %)**Connection:**
218 218  
219 219  (% style="background-color:yellow" %)** USB TTL GND <~-~-~-~-> GND**
... ... @@ -235,11 +235,11 @@
235 235  
236 236  * Flow Control: (% style="color:red" %)**None**
237 237  
238 -Make sure the switch is in FLASH position, then power on NDS03A by connecting the (% style="color:orange" %)**Yellow Jumper**(%%).
236 +Make sure the switch is in FLASH position, then power on CPN01 by connecting the (% style="color:orange" %)**Yellow Jumper**(%%).
239 239  
240 240  ​[[image:image-20221021110817-7.png]]
241 241  
242 -NDS03A will output system info once powered on as below, we can enter the **password: 12345678** to access AT Command input.
240 +CPN01 will output system info once powered on as below, we can enter the **password: 12345678** to access AT Command input.
243 243  
244 244  
245 245  (% 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]]
... ... @@ -252,7 +252,7 @@
252 252  (% 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/]]
253 253  
254 254  
255 -(% style="color:blue" %)**Use below commands in NDS03A:**
253 +(% style="color:blue" %)**Use below commands in CPN01:**
256 256  
257 257  * (% style="color:#037691" %)**AT+PRO=1**                (%%) ~/~/ Set to use CoAP protocol to uplink
258 258  
... ... @@ -265,11 +265,12 @@
265 265  [[image:image-20221021110948-8.png]]
266 266  
267 267  
268 -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.
266 +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.
269 269  
270 -[[image:image-20221118103547-9.png||height="605" width="837"]] ​
268 +[[image:image-20221021110956-9.png]] ​
271 271  
272 272  
271 +
273 273  === 2.2.5 Use UDP protocol to uplink data(Default protocol) ===
274 274  
275 275  
... ... @@ -288,6 +288,7 @@
288 288  
289 289  ​
290 290  
290 +
291 291  === 2.2.6 Use MQTT protocol to uplink data ===
292 292  
293 293  
... ... @@ -307,10 +307,10 @@
307 307  
308 308  * (% style="color:#037691" %)**AT+SUBTOPIC=NSE01_SUB          ** (%%) ~/~/  Set the subscription topic of MQTT
309 309  
310 -​ [[image:image-20221118103445-7.png]]
310 +​ [[image:image-20221021111058-12.png]]
311 311  
312 312  
313 -[[image:image-20221118103453-8.png||height="608" width="841"]]
313 +[[image:image-20221021111201-16.png||height="472" width="653"]]
314 314  
315 315  ​
316 316  
... ... @@ -317,6 +317,7 @@
317 317  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.
318 318  
319 319  
320 +
320 320  === 2.2.7 Use TCP protocol to uplink data ===
321 321  
322 322  
... ... @@ -332,87 +332,76 @@
332 332  
333 333  ​
334 334  
336 +
335 335  === 2.2.8 Change Update Interval ===
336 336  
337 337  
338 338  User can use below command to change the (% style="color:blue" %)**uplink interval**.
339 339  
340 -* (% style="color:#037691" %)**AT+TDC=14400      ** (%%) ~/~/ Set Update Interval to 14400s (4 hours)
342 +* (% style="color:#037691" %)**AT+TDC=7200      ** (%%) ~/~/ Set Update Interval to 7200s (2 hours)
341 341  
342 342  (% style="color:red" %)**NOTE:**
343 343  
344 -1.  By default, the device will send an uplink message every 4 hour.
346 +1.  By default, the device will send an uplink message every 1 hour.
345 345  
346 346  
349 +
347 347  == 2.3  Uplink Payload ==
348 348  
349 349  
350 -The uplink payload includes 26 bytes in total by default.
353 +The uplink payload includes 123 bytes in total by default.
351 351  
352 -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.
355 +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.
353 353  
354 -(% style="color:blue" %)**When AT+TTRCHANNEL=1:**
355 355  
356 -(% border="1" cellspacing="5" style="background-color:#ffffcc; color:green; width:510px" %)
357 -|=(% 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**
358 -|=(% 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)
358 +(% border="1.5" style="background-color:#ffffcc; color:green; width:510px" %)
359 +|=(% 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**
360 +|=(% 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"]]
359 359  
360 -(% border="1.5" style="background-color:#ffffcc; color:green; width:450px" %)
361 -|(% style="width:50px" %)**4**|(% style="width:90px" %)**1**|(% style="width:90px" %)**3**|(% style="width:90px" %)**3**|(% style="width:60px" %)4|(% style="width:50px" %)(((
362 -**1-32 group**
363 -)))
364 -|(% 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" %)...
362 +(% border="1.5" style="background-color:#ffffcc; color:green; width:490px" %)
363 +|(% 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**
364 +|(% 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" %)...
365 365  
366 -(% style="color:blue" %)**When AT+TTRCHANNEL=2:**
366 +If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the CPN01 uplink data.
367 367  
368 +[[image:image-20221021111201-16.png||height="572" width="792"]]
368 368  
369 -(% border="1" cellspacing="5" style="background-color:#ffffcc; color:green; width:510px" %)
370 -|=(% 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**
371 -|=(% 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)
372 372  
373 -(% border="1" cellspacing="5" style="background-color:#ffffcc; color:green; width:510px" %)
374 -|(% 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**
375 -|(% 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)
376 -
377 -(% border="1" cellspacing="5" style="background-color:#ffffcc; color:green; width:510px" %)
378 -|(% style="width:100px" %)**3**|(% style="width:80px" %)**1**|(% style="width:90px" %)**3**|(% style="width:90px" %)**3**|(% style="width:70px" %)**4**|(% style="width:80px" %)(((
379 -**1-32 group**
380 -)))
381 -|(% 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" %)......
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 388  The payload is ASCII string, representative same HEX:
389 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__(%%)**
373 +**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 __**
391 391  
392 392  **where:**
393 393  
394 394  * (% style="color:#037691" %)**Device ID:**(%%) 0x f867787050213317 = f867787050213317
395 395  
396 -* (% style="color:#037691" %)**Version:**(%%)  0x0064=100=1.0.0
379 +* (% style="color:#037691" %)**Version:**(%%) 0x0064=100=1.0.0
397 397  
398 -* (% style="color:#037691" %)**BAT :**(%%)  0x0ccf = 3279 mV = 3.279V
381 +* (% style="color:#037691" %)**BAT :**(%%) 0x0c78 = 3192 mV = 3.192V
399 399  
400 -* (% style="color:#037691" %)**Singal: **(%%)0x19 = 25
383 +* (% style="color:#037691" %)**Singal: **(%%)0x17 = 23
401 401  
402 -* (% style="color:#037691" %)**Mod:**(%%)  0x01 = 1
385 +* (% style="color:#037691" %)**Mod:**(%%) 0x01 = 1
403 403  
404 -* (% style="color:#037691" %)**Door Status:**(%%)  0x00=0
387 +* (% style="color:#037691" %)**Calculate Flag:**(%%) 0x00=0
405 405  
406 -* (% style="color:#037691" %)**Alarm Status: **(%%)0x00 =0
389 +* (% style="color:#037691" %)**Contact Status:**(%%) 0x00=0
407 407  
408 -* (% style="color:#037691" %)**door open num: **(%%)0x000016 =22
391 +* (% style="color:#037691" %)**Alarm: **(%%)0x00 =0
409 409  
410 -* (% style="color:#037691" %)**last open time:   **(%%)0x000017 =23
393 +* (% style="color:#037691" %)**Total pulse: **(%%)0x000009 =9
411 411  
412 -* (% style="color:#037691" %)**Timestamp:**(%%) 0x637590df =1668649183 (Unix Time)
395 +* (% style="color:#037691" %)**The last open duration: **(%%)0x000002 =2
413 413  
397 +* (% style="color:#037691" %)**Timestamp:**(%%) 0x6315537b =1662342011 (Unix Time)
398 +
399 +* (% style="color:#037691" %)**Contact Status, Total pulse,The last open duration ,Time stamp :**(%%) 01  00000b  000026  63510fed
400 +
401 +* (% style="color:#037691" %)**8 sets of recorded data: Contact Status, Total pulse, The last open duration ,Time stamp :**(%%) 0100000e00002663510f39,.......
402 +
414 414  == 2.4  Payload Explanation and Sensor Interface ==
415 415  
405 +
416 416  === 2.4.1  Device ID ===
417 417  
418 418  
... ... @@ -427,18 +427,20 @@
427 427  The Device ID is stored in a non-erase area, Upgrade the firmware or run AT+FDR won't erase the Device ID.
428 428  
429 429  
420 +
430 430  === 2.4.2  Version Info ===
431 431  
432 432  
433 433  Specify the software version: 0x64=100, which means firmware version 1.00.
434 434  
435 -For example 0x00 64 : This device is NDS03A 1 with firmware version 1.0.0.
426 +For example 0x00 64 : This device is CPN01 with firmware version 1.0.0.
436 436  
437 437  
429 +
438 438  === 2.4.3  Battery Info ===
439 439  
440 440  
441 -Check the battery voltage for NDS03A.
433 +Check the battery voltage for CPN01.
442 442  
443 443  Ex1: 0x0B45 = 2885mV
444 444  
... ... @@ -445,6 +445,7 @@
445 445  Ex2: 0x0B49 = 2889mV
446 446  
447 447  
440 +
448 448  === 2.4.4  Signal Strength ===
449 449  
450 450  
... ... @@ -463,38 +463,70 @@
463 463  **99**    Not known or not detectable
464 464  
465 465  
466 -=== 2.4.5  Disalarm: (default: 0) ===
467 467  
460 +=== 2.4.5  Calculate Flag ===
468 468  
469 -(% 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.
470 470  
471 -(% 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.
463 +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.
472 472  
473 - (% style="color:red" %)**Note:**(%%) When Disalarm=0, a high frequently open/close event will cause lots of uplink and drain battery very fast.
465 +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.
474 474  
467 +Default value: 0. 
475 475  
476 -=== 2.4.6  Keep Status & Keep Time ===
469 +Range (6 bits): (b)000000 ~~ (b) 111111
477 477  
478 478  
479 -Shows the configure value of Alarm Base on Timeout Feature
480 480  
473 +=== 2.4.6  Alarm ===
481 481  
482 -=== 2.4.7  Timestamp ===
483 483  
476 +See [[Alarm Base on Timeout>>||anchor="H2.7A0AlarmBaseonTimeout"]]
484 484  
485 -Timestamp : 0x6315537b =1662342011
486 486  
487 487  
488 -=== 2.4.8  Switch Dual Channel Mode ===
480 +=== 2.4.7  Contact Status ===
489 489  
490 490  
491 -NDS03A can connect two door sensors. Another door sensor can be connected to PB15 pin. Both channels support alarm function.
483 +0: Open
492 492  
485 +1: Close
493 493  
487 +
488 +
489 +=== 2.4.8  Total pulse ===
490 +
491 +
492 +Total pulse/counting based on dry [[contact trigger event>>||anchor="H2.12Setcountnumber"]]
493 +
494 +Range (3 Bytes) : 0x000000 ~~ 0xFFFFFF . Max: 16777215
495 +
496 +
497 +
498 +=== 2.4.9  The last open duration ===
499 +
500 +
501 +Dry Contact last open duration.
502 +
503 +Unit: min.
504 +
505 +[[image:image-20221021111346-17.png||height="146" width="770"]]
506 +
507 +
508 +
509 +=== 2.4.10  Timestamp ===
510 +
511 +
512 +Timestamp : 0x6315537b =1662342011
513 +
514 +Convert Unix timestamp to time 2022-9-5 9:40:11.
515 +
516 +**~ **
517 +
518 +
494 494  == 2.5  Downlink Payload ==
495 495  
496 496  
497 -By default, NDS03A prints the downlink payload to console port.
522 +By default, CPN01 prints the downlink payload to console port.
498 498  
499 499  [[image:image-20221021111414-18.png]] ​
500 500  
... ... @@ -511,7 +511,7 @@
511 511  
512 512  * (% style="color:#037691" %)**Reset**
513 513  
514 -If payload = 0x04FF, it will reset the NDS03A
539 +If payload = 0x04FF, it will reset the NSE01
515 515  
516 516  * (% style="color:#037691" %)**INTMOD**
517 517  
... ... @@ -518,19 +518,20 @@
518 518  Downlink Payload: 06000003, Set AT+INTMOD=3
519 519  
520 520  
546 +
521 521  == 2.6  ​LED Indicator ==
522 522  
523 523  
524 -The NDS03A has an internal LED which is to show the status of different states.
550 +The CPN01 has an internal LED which is to show the status of different states.
525 525  
526 526  * When the device starts normally, the LED will light up for 1 second.
527 -* After NDS03A join NB-IoT network. The LED will be ON for 3 seconds.
553 +* After CPN01 join NB-IoT network. The LED will be ON for 3 seconds.
528 528  * For each uplink probe, LED will be on for 500ms.
529 529  
530 530  == 2.7  Alarm Base on Timeout ==
531 531  
532 532  
533 -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:
559 +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:
534 534  
535 535  
536 536  (% style="color:blue" %)**1. Keep Status: Status to be monitor**
... ... @@ -546,25 +546,17 @@
546 546  
547 547  If keep time = 0, Disable Alarm Base on Timeout feature.
548 548  
549 -If keep time > 0, device will monitor the keep status event and send an alarm when status doesn't change after timeout.
575 +If keep time > 0, device will monitor the keep status event and send an alarm when status doesnt change after timeout.
550 550  
551 551  
552 552  (% style="color:blue" %)**AT Command to configure:**
553 553  
554 -(% style="color:blue" %)**PB14 PIN:**
580 +(% 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.
555 555  
556 -(% 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.
557 -
558 558  (% style="color:#037691" %)**AT+TTRIG=0,0 ** (%%) **~-~->** Default Value, disable timeout Alarm.
559 559  
560 560  
561 -(% style="color:blue" %)**PB15 PIN:**
562 562  
563 -(% style="color:#037691" %)**AT+TTRIG2=1,30**
564 -
565 -(% style="color:#037691" %)**AT+TTRIG2=0,0 **
566 -
567 -
568 568  == 2.8  Set debug mode ==
569 569  
570 570  
... ... @@ -586,57 +586,54 @@
586 586  [[image:image-20221021111527-19.png]]
587 587  
588 588  
589 -== 2.10  Count Mod ==
590 590  
608 +== 2.10  Set trigger mode ==
591 591  
592 -(% style="color:blue" %)**AT Command: AT+COUNTMOD**
593 593  
594 -[[image:image-20221118092935-1.png]]
611 +(% style="color:blue" %)**AT Command: AT+TTRMOD**
595 595  
613 +Feature: Set the trigger interrupt mode.
596 596  
597 -== 2.11  Interrupt Pin Channel Mod ==
615 +[[image:image-20221021111552-20.png]]
598 598  
599 599  
600 -(% style="color:blue" %)**AT Command: AT+TTRCHANNEL**
601 601  
602 -[[image:image-20221118093144-2.png]]
619 +== 2.11  Set the calculate flag ==
603 603  
604 604  
605 -== 2.12 TTRIG1/2 timeout status alarm ==
622 +Feature: Set the calculate flag
606 606  
624 +(% style="color:blue" %)**AT Command: AT+CALCFLAG**
607 607  
608 -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.
626 +[[image:image-20221021111711-22.png]]
609 609  
610 -(% style="color:blue" %)**AT Command: AT+TTRALARM**
611 611  
612 -[[image:image-20221118093512-3.png]]
613 613  
630 +== 2.12 Set count number ==
614 614  
615 -== 2.13  Select counting mode ==
616 616  
633 +Feature: Manually set the count number
617 617  
618 -(% style="color:blue" %)**AT Command: AT+TTRMODx=a,b**
635 +(% style="color:blue" %)**AT Command: AT+SETCNT**
619 619  
620 -When (% style="color:red" %)**a=0**(%%), the door is opened to count, and when (% style="color:red" %)**a=1**(%%),the closed door is counted.
637 +[[image:image-20221021111748-24.png]]
621 621  
622 -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.
623 623  
624 -[[image:image-20221118093658-4.png]]
625 625  
641 +== 2.13  Set the number of data to be uploaded and the recording time ==
626 626  
627 -== 2.14  Set the number of data to be uploaded and the recording time ==
628 628  
629 -
630 630  (% style="color:blue" %)**AT Command:**
631 631  
632 -(% 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)
646 +(% 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)
633 633  
634 -(% 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.
648 +(% 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.
635 635  
636 636  
637 -== 2.15  Read or Clear cached data ==
638 638  
652 +== 2.14  Read or Clear cached data ==
639 639  
654 +
640 640  (% style="color:blue" %)**AT Command:**
641 641  
642 642  (% style="color:#037691" %)**AT+CDP**  (%%) ~/~/ Read cached data
... ... @@ -643,24 +643,27 @@
643 643  
644 644  (% style="color:#037691" %)**AT+CDP=0**  (%%) ~/~/ Clear cached data ​
645 645  
646 -[[image:image-20221118094227-5.png]]
661 +[[image:image-20221021111810-25.png||height="364" width="797"]]
647 647  
648 648  
649 -== 2.16  ​Firmware Change Log ==
650 650  
665 +== 2.15  ​Firmware Change Log ==
651 651  
652 -Download URL & Firmware Change log: [[https:~~/~~/www.dropbox.com/sh/hacq385w6qgnonr/AAC3D79GFGF1JdZUIzNegn2Ha?dl=0>>https://www.dropbox.com/sh/hacq385w6qgnonr/AAC3D79GFGF1JdZUIzNegn2Ha?dl=0]]
653 653  
668 +Download URL & Firmware Change log:  [[https:~~/~~/www.dropbox.com/sh/8p5nuvo6gh7je4n/AAAMP7MMusgbXMz9Ik7Ls03Ga?dl=0>>https://www.dropbox.com/sh/8p5nuvo6gh7je4n/AAAMP7MMusgbXMz9Ik7Ls03Ga?dl=0]]
669 +
654 654  Upgrade Instruction: [[Upgrade Firmware>>||anchor="H5.1200BHowtoUpgradeFirmware"]]
655 655  
656 656  
657 -== 2.17  ​Battery Analysis ==
658 658  
659 -=== 2.17.1  ​Battery Type ===
674 +== 2.16  ​Battery Analysis ==
660 660  
661 661  
662 -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.
677 +=== 2.16.1  Battery Type ===
663 663  
679 +
680 +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.
681 +
664 664  The battery is designed to last for several years depends on the actual use environment and update interval. 
665 665  
666 666  The battery-related documents as below:
... ... @@ -674,9 +674,10 @@
674 674  [[image:image-20221021111911-26.png]] ​
675 675  
676 676  
677 -=== 2.17.2  Power consumption Analyze ===
678 678  
696 +=== 2.16.2  Power consumption Analyze ===
679 679  
698 +
680 680  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.
681 681  
682 682  Instruction to use as below:
... ... @@ -696,18 +696,21 @@
696 696  [[image:1666596205057-567.png]] ​
697 697  
698 698  
699 -=== 2.17.3  ​Battery Note ===
700 700  
719 +=== 2.16.3  ​Battery Note ===
701 701  
721 +
702 702  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.
703 703  
704 704  
705 -=== 2.17.4  Replace the battery ===
706 706  
726 +=== 2.16.4  Replace the battery ===
707 707  
708 -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).
709 709  
729 +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).
710 710  
731 +
732 +
711 711  = 3. ​ Access NB-IoT Module =
712 712  
713 713  
... ... @@ -715,12 +715,13 @@
715 715  
716 716  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/]] 
717 717  
740 +[[image:image-20221021112006-28.png]] ​
718 718  
719 -[[image:image-20221118094449-6.png]] ​
720 720  
721 721  
722 722  = 4.  Using the AT Commands =
723 723  
746 +
724 724  == 4.1  Access AT Commands ==
725 725  
726 726  
... ... @@ -767,21 +767,15 @@
767 767  
768 768  AT+ DEBUG   : Enable or Disable debug mode
769 769  
770 -AT+ TTRIG1   : Get or Set PB14 PIN Alarm Base on Timeout
793 +AT+ TTRIG   : Get or Set Alarm Base on Timeout
771 771  
772 -AT+ TTRIG2   : Get or Set PB15 PIN Alarm Base on Timeout
795 +AT+ TTRMOD   : Get or Set the trigger interrupt mode(0:falling,1:rising)
773 773  
774 -AT+COUNTMOD  :  Get or Set the count mode
797 +AT+ CALCFLAG   : Get or Set the calculate flag
775 775  
776 -AT+TTRCHANNEL  : Get or Set the number of interrupt channels
799 +AT+ CLRC   : Clear current door open count
777 777  
778 -AT+TTRALARM : Get or Set TTRIG1 of Alarm interval (unit: minute)
779 779  
780 -AT+DISALARM  : Enable/Disable Alarm for door open/close or water leak event
781 -
782 -AT+ CLRC   :  Clear current door open count
783 -
784 -
785 785  (% style="color:blue" %)**COAP Management**      
786 786  
787 787  AT+URI            : Resource parameters
... ... @@ -812,8 +812,10 @@
812 812  AT+PWORD  : Serial Access Password
813 813  
814 814  
832 +
815 815  = ​5.  FAQ =
816 816  
835 +
817 817  == 5.1 ​ How to Upgrade Firmware ==
818 818  
819 819  
... ... @@ -821,11 +821,13 @@
821 821  
822 822  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]]
823 823  
824 -(% 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.**
843 +(% 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.**
825 825  
826 826  
846 +
827 827  = 6.  Trouble Shooting =
828 828  
849 +
829 829  == 6.1  ​Connection problem when uploading firmware ==
830 830  
831 831  
... ... @@ -832,6 +832,7 @@
832 832  (% 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]]
833 833  
834 834  
856 +
835 835  == 6.2  AT Command input doesn't work ==
836 836  
837 837  
... ... @@ -838,20 +838,27 @@
838 838  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.
839 839  
840 840  
863 +
841 841  = 7. ​ Order Info =
842 842  
843 843  
844 -Part Number**:** NDS03A
867 +Part Number**:** CPN01
845 845  
846 846  
870 +
847 847  = 8.  Packing Info =
848 848  
849 849  
850 850  (% style="color:blue" %)**Package Includes**:
851 851  
852 -* NDS03A Open/Close Door Sensor x 1
876 +* CPN01 Open/Close Sensor x 1
877 +* External antenna x 1
853 853  
879 +(% style="color:blue" %)**Dimension and weight**:
854 854  
881 +* Size: 195 x 125 x 55 mm
882 +* Weight:   420g
883 +
855 855  = 9.  Support =
856 856  
857 857  
image-20221117115010-6.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -40.4 KB
Content
image-20221117142300-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -147.8 KB
Content
image-20221117145932-2.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -51.9 KB
Content
image-20221117150312-3.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -8.7 KB
Content
image-20221118092935-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -13.1 KB
Content
image-20221118093144-2.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -11.7 KB
Content
image-20221118093512-3.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -9.5 KB
Content
image-20221118093658-4.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -12.7 KB
Content
image-20221118094227-5.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -29.2 KB
Content
image-20221118094449-6.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -76.5 KB
Content
image-20221118103445-7.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -20.4 KB
Content
image-20221118103453-8.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -46.2 KB
Content
image-20221118103547-9.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -43.5 KB
Content
Copyright ©2010-2024 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0