<
From version < 115.8 >
edited by Xiaoling
on 2022/07/09 17:35
To version < 107.1 >
edited by Xiaoling
on 2022/07/09 15:36
>
Change comment: Uploaded new attachment "1657352185396-303.png", version {1}

Summary

Details

Page properties
Content
... ... @@ -41,6 +41,7 @@
41 41  
42 42  == 1.2 ​ Features ==
43 43  
44 +
44 44  * NB-IoT Bands: B1/B3/B8/B5/B20/B28 @H-FDD
45 45  * Monitor Temperature & Humidity via SHT31
46 46  * AT Commands to change parameters
... ... @@ -54,7 +54,6 @@
54 54  
55 55  
56 56  
57 -
58 58  == 1.3  Specification ==
59 59  
60 60  
... ... @@ -83,7 +83,6 @@
83 83  
84 84  
85 85  
86 -
87 87  == ​1.4  Applications ==
88 88  
89 89  * Smart Buildings & Home Automation
... ... @@ -132,6 +132,8 @@
132 132  1. Send an uplink packet
133 133  
134 134  
134 +
135 +
135 135  = 2.  Use N95S31B to communicate with IoT Server =
136 136  
137 137  == 2.1  How it works ==
... ... @@ -175,6 +175,7 @@
175 175  * The local NB-IoT network used the band that N95S31B supports.
176 176  * Your operator is able to distribute the data received in their NB-IoT network to your IoT server.
177 177  
179 +
178 178  Below figure shows our testing structure. Here we have NB-IoT network coverage by China Mobile, the band they use is B8.
179 179  
180 180  N95S31B supports different communication protocol such as :
... ... @@ -209,7 +209,7 @@
209 209  
210 210  
211 211  
212 -=== 2.2. Connect USB – TTL to N95S31B to configure it ===
214 +=== 2.2.3 Connect USB – TTL to N95S31B to configure it ===
213 213  
214 214  (((
215 215  (((
... ... @@ -248,7 +248,7 @@
248 248  
249 249  
250 250  
251 -=== 2.2. Use CoAP protocol to uplink data ===
253 +=== 2.2.4 Use CoAP protocol to uplink data ===
252 252  
253 253  (% style="color:red" %)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/>>http://wiki.dragino.com/xwiki/bin/view/Main/Set%20up%20CoAP%20Server/]]
254 254  
... ... @@ -268,12 +268,10 @@
268 268  )))
269 269  
270 270  (((
271 -
272 -
273 273  For parameter description, please refer to AT command set
274 274  )))
275 275  
276 -[[image:1657352146020-183.png]]
276 +[[image:1657330452568-615.png]]
277 277  
278 278  
279 279  (((
... ... @@ -280,11 +280,11 @@
280 280  After configure the server address and (% style="color:green" %)**reset the device**(%%) (via AT+ATZ ), NDDS75 will start to uplink sensor values to CoAP server.
281 281  )))
282 282  
283 -[[image:1657352185396-303.png]]
283 +[[image:1657330472797-498.png]]
284 284  
285 285  
286 286  
287 -=== 2.2. Use UDP protocol to uplink data(Default protocol) ===
287 +=== 2.2.5 Use UDP protocol to uplink data(Default protocol) ===
288 288  
289 289  
290 290  * (% style="color:blue" %)**AT+PRO=2   ** (%%) ~/~/ Set to use UDP protocol to uplink
... ... @@ -291,16 +291,15 @@
291 291  * (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5601   ** (%%) ~/~/ to set UDP server address and port
292 292  * (% style="color:blue" %)**AT+CFM=1       ** (%%) ~/~/ If the server does not respond, this command is unnecessary
293 293  
294 -[[image:1657352391268-297.png]]
294 +[[image:1657330501006-241.png]]
295 295  
296 296  
297 -[[image:1657352403317-397.png]]
297 +[[image:1657330533775-472.png]]
298 298  
299 299  
300 300  
301 -=== 2.2. Use MQTT protocol to uplink data ===
301 +=== 2.2.6 Use MQTT protocol to uplink data ===
302 302  
303 -N95S31B supports only plain MQTT now it doesn't support TLS and other related encryption.
304 304  
305 305  * (% style="color:blue" %)**AT+PRO=3   ** (%%) ~/~/Set to use MQTT protocol to uplink
306 306  * (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,1883   ** (%%) ~/~/Set MQTT server address and port
... ... @@ -307,40 +307,35 @@
307 307  * (% style="color:blue" %)**AT+CLIENT=CLIENT       ** (%%)~/~/Set up the CLIENT of MQTT
308 308  * (% style="color:blue" %)**AT+UNAME=UNAME                                **(%%)~/~/Set the username of MQTT
309 309  * (% style="color:blue" %)**AT+PWD=PWD                                         **(%%)~/~/Set the password of MQTT
310 -* (% style="color:blue" %)**AT+PUBTOPIC=f9527                               **(%%)~/~/Set the sending topic of MQTT
311 -* (% style="color:blue" %)**AT+SUBTOPIC=Ns9527          **(%%) ~/~/Set the subscription topic of MQTT
309 +* (% style="color:blue" %)**AT+PUBTOPIC=NDDS75_PUB                 **(%%)~/~/Set the sending topic of MQTT
310 +* (% style="color:blue" %)**AT+SUBTOPIC=NDDS75_SUB          **(%%) ~/~/Set the subscription topic of MQTT
312 312  
313 -[[image:1657352634421-276.png]]
312 +[[image:1657249978444-674.png]]
314 314  
315 315  
316 -[[image:1657352645687-385.png]]
315 +[[image:1657330723006-866.png]]
317 317  
318 -(((
319 -To save battery life, N95S31B will establish a subscription before each uplink and close the subscription 3 seconds after uplink successful. Any downlink commands from server will only arrive during the subscription period.
320 -)))
321 321  
322 -
323 323  (((
324 -MQTT protocol has a much high-power consumption compare vs UDP / CoAP protocol. Please check the power analyze document and adjust the uplink period to a suitable interval.
319 +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.
325 325  )))
326 326  
327 327  
328 328  
329 -=== 2.2. Use TCP protocol to uplink data ===
324 +=== 2.2.7 Use TCP protocol to uplink data ===
330 330  
331 -This feature is supported since firmware version v110
332 332  
333 333  * (% style="color:blue" %)**AT+PRO=4   ** (%%) ~/~/ Set to use TCP protocol to uplink
334 334  * (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5600   **(%%) ~/~/ to set TCP server address and port
335 335  
336 -[[image:1657352898400-901.png]]
330 +[[image:image-20220709093918-1.png]]
337 337  
338 338  
339 -[[image:1657352914475-252.png]]
333 +[[image:image-20220709093918-2.png]]
340 340  
341 341  
342 342  
343 -=== 2.2. Change Update Interval ===
337 +=== 2.2.8 Change Update Interval ===
344 344  
345 345  User can use below command to change the (% style="color:green" %)**uplink interval**.
346 346  
... ... @@ -347,92 +347,69 @@
347 347  * (% style="color:blue" %)**AT+TDC=600      ** (%%)~/~/ Set Update Interval to 600s
348 348  
349 349  (((
350 -
344 +(% style="color:red" %)**NOTE:**
351 351  )))
352 352  
347 +(((
348 +(% style="color:red" %)1. By default, the device will send an uplink message every 1 hour.
349 +)))
353 353  
354 354  
352 +
355 355  == 2.3  Uplink Payload ==
356 356  
355 +In this mode, uplink payload includes in total 14 bytes
357 357  
358 -NBSN95 has different working mode for the connections of different type of sensors. This section describes these modes. User can use the AT Command (% style="color:blue" %)**AT+MOD**(%%) to set NBSN95 to different working modes.
359 359  
360 -
361 -For example:
362 -
363 - (% style="color:blue" %)**AT+CFGMOD=2 ** (%%)~/~/will set the NBSN95 to work in MOD=2 distance mode which target to measure distance via Ultrasonic Sensor.
364 -
365 -
366 -The uplink payloads are composed in  ASCII String. For example:
367 -
368 -0a cd 00 ed 0a cc 00 00 ef 02 d2 1d (total 24 ASCII Chars) . Representative the actually payload:
369 -
370 -0x 0a cd 00 ed 0a cc 00 00 ef 02 d2 1d Total 12 bytes
371 -
372 -
373 -(% style="color:red" %)**NOTE:**
374 -
375 -(% style="color:red" %)
376 -1. All modes share the same Payload Explanation from [[HERE>>path:#Payload_Explain]].
377 -1. By default, the device will send an uplink message every 1 hour.
378 -
379 -
380 -
381 -=== 2.3.1  Payload Analyze ===
382 -
383 -N95S31B uplink payload includes in total 21 bytes
384 -
385 -
386 386  (% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:440px" %)
387 387  |=(% style="width: 60px;" %)(((
388 388  **Size(bytes)**
389 -)))|=(% style="width: 60px;" %)**6**|=(% style="width: 35px;" %)2|=(% style="width: 35px;" %)**2**|=(% style="width: 80px;" %)**1**|=(% style="width: 80px;" %) |=(% style="width: 99px;" %) |=(% style="width: 77px;" %)**2**|=(% style="width: 60px;" %)**1**
390 -|(% style="width:97px" %)**Value**|(% style="width:83px" %)[[Device ID>>||anchor="H2.4.1A0A0DeviceID"]]|(% style="width:41px" %)[[Ver>>||anchor="H2.4.2A0VersionInfo"]]|(% style="width:46px" %)[[BAT>>||anchor="H2.4.3A0BatteryInfo"]]|(% style="width:123px" %)[[Signal Strength>>||anchor="H2.4.4A0SignalStrength"]]|(% style="width:123px" %)MOD 0X01|(% style="width:99px" %)(((
391 -Reserve/ Same as NBSN95 CFGMOD=1
361 +)))|=(% style="width: 60px;" %)**6**|=(% style="width: 35px;" %)2|=(% style="width: 35px;" %)**2**|=(% style="width: 80px;" %)**1**|=(% style="width: 100px;" %)**2**|=(% style="width: 60px;" %)**1**
362 +|(% style="width:97px" %)**Value**|(% style="width:83px" %)[[Device ID>>||anchor="H2.4.1A0A0DeviceID"]]|(% style="width:41px" %)[[Ver>>||anchor="H2.4.2A0VersionInfo"]]|(% style="width:46px" %)[[BAT>>||anchor="H2.4.3A0BatteryInfo"]]|(% style="width:123px" %)[[Signal Strength>>||anchor="H2.4.4A0SignalStrength"]]|(% style="width:120px" %)[[Distance (unit: mm)>>||anchor="H2.4.5A0Distance"]]|(% style="width:80px" %)[[Interrupt>>||anchor="H2.4.6A0DigitalInterrupt"]]
392 392  
393 -No function here.
394 -)))|(% style="width:77px" %)(((
395 -[[Temperature >>||anchor="H2.4.5A0Distance"]]
364 +(((
365 +If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the NDDS751 uplink data.
366 +)))
396 396  
397 -By SHT31
398 -)))|(% style="width:80px" %)(((
399 -[[Humidity>>||anchor="H2.4.6A0DigitalInterrupt"]]
400 400  
401 -By SHT31
369 +[[image:1657331036973-987.png]]
370 +
371 +(((
372 +The payload is ASCII string, representative same HEX:
402 402  )))
403 403  
404 404  (((
405 -(((
406 -If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the NB sensor uplink data.
376 +0x72403155615900640c6c19029200 where:
407 407  )))
378 +
379 +* (((
380 +Device ID: 0x724031556159 = 724031556159
408 408  )))
382 +* (((
383 +Version: 0x0064=100=1.0.0
384 +)))
409 409  
386 +* (((
387 +BAT: 0x0c6c = 3180 mV = 3.180V
388 +)))
389 +* (((
390 +Signal: 0x19 = 25
391 +)))
392 +* (((
393 +Distance: 0x0292= 658 mm
394 +)))
395 +* (((
396 +Interrupt: 0x00 = 0
410 410  
411 -[[image:1657354294009-643.png]]
412 412  
413 413  
414 -The payload is ASCII string, representative same HEX: 0x724031607457006e0ccd1b0100dc000ccc00e10186 where:
415 -
416 -* Device ID: 0x724031607457 = 724031607457
417 -* Version: 0x006e=110=1.1.0
418 -
419 -* BAT: 0x0ccd = 3277 mV = 3.277V
420 -* Signal: 0x1b = 27
421 -* Model: 0x01 = 1
422 -* 0x00dc000ccc= reserve, ignore in N95S31B
423 -* Temperature by SHT31: 0x00e1 = 225 = 22.5 °C
424 -* Humidity by SHT31: 0x0186 = 390 = 39.0 %rh
425 -
426 -(((
427 427  
428 428  )))
429 429  
430 -(((
431 -
432 -)))
403 +== 2.4  Payload Explanation and Sensor Interface ==
433 433  
434 434  
435 -=== 2.3.2  Device ID ===
406 +=== 2.4.1  Device ID ===
436 436  
437 437  (((
438 438  By default, the Device ID equal to the last 6 bytes of IMEI.
... ... @@ -456,25 +456,20 @@
456 456  
457 457  
458 458  
459 -=== 2.3.3  Version Info ===
430 +=== 2.4.2  Version Info ===
460 460  
432 +(((
433 +Specify the software version: 0x64=100, means firmware version 1.00.
434 +)))
461 461  
462 -These bytes include the hardware and software version.
463 -
464 -Higher byte: Specify hardware version: always 0x00 for N95S31B
465 -
466 -Lower byte: Specify the software version: 0x6E=110, means firmware version 110
467 -
468 -
469 -For example: 0x00 6E: this device is N95S31B with firmware version 110.
470 -
471 471  (((
472 -
437 +For example: 0x00 64 : this device is NDDS75 with firmware version 1.0.0.
473 473  )))
474 474  
475 475  
476 -=== 2.3.4  Battery Info ===
477 477  
442 +=== 2.4.3  Battery Info ===
443 +
478 478  (((
479 479  Ex1: 0x0B45 = 2885mV
480 480  )))
... ... @@ -485,7 +485,7 @@
485 485  
486 486  
487 487  
488 -=== 2.3.5  Signal Strength ===
454 +=== 2.4.4  Signal Strength ===
489 489  
490 490  (((
491 491  NB-IoT Network signal Strength.
... ... @@ -517,24 +517,83 @@
517 517  
518 518  
519 519  
520 -=== 2.3.6  Temperature & Humidity ===
486 +=== 2.4.5  Distance ===
521 521  
522 -The device will be able to get the SHT31 temperature and humidity data now and upload to IoT Server.
488 +Get the distance. Flat object range 280mm - 7500mm.
523 523  
524 -[[image:image-20220709161741-3.png]]
490 +(((
491 +For example, if the data you get from the register is **__0x0B 0x05__**, the distance between the sensor and the measured object is
492 +)))
525 525  
494 +(((
495 +(((
496 +(% style="color:blue" %)** 0B05(H) = 2821(D) = 2821mm.**
497 +)))
498 +)))
526 526  
527 -Convert the read byte to decimal and divide it by ten.
500 +(((
501 +
502 +)))
528 528  
504 +(((
505 +
506 +)))
529 529  
530 -**Example:**
508 +=== 2.4.6  Digital Interrupt ===
531 531  
532 -Temperature:  Read:00ec (H) = 236(D)  Value:  236 /10=23.6℃
510 +(((
511 +Digital Interrupt refers to pin (% style="color:blue" %)**GPIO_EXTI**(%%), and there are different trigger methods. When there is a trigger, the NDDS75 will send a packet to the server.
512 +)))
533 533  
534 -Humidity:    Read:0295(H)=661(D)    Value:  661 / 10=66.1, So 66.1%
514 +(((
515 +The command is:
516 +)))
535 535  
518 +(((
519 +(% style="color:blue" %)**AT+INTMOD=3 **(%%) ~/~/(more info about INMOD please refer [[**AT Command Manual**>>url:https://www.dragino.com/downloads/downloads/NB-IoT/NBSN95/DRAGINO_NBSN95-NB_AT%20Commands_v1.1.0.pdf]])**.**
520 +)))
536 536  
537 537  
523 +(((
524 +The lower four bits of this data field shows if this packet is generated by interrupt or not. Click here for the hardware and software set up.
525 +)))
526 +
527 +
528 +(((
529 +Example:
530 +)))
531 +
532 +(((
533 +0x(00): Normal uplink packet.
534 +)))
535 +
536 +(((
537 +0x(01): Interrupt Uplink Packet.
538 +)))
539 +
540 +
541 +
542 +=== 2.4.7  ​+5V Output ===
543 +
544 +(((
545 +NDDS75 will enable +5V output before all sampling and disable the +5v after all sampling. 
546 +)))
547 +
548 +
549 +(((
550 +The 5V output time can be controlled by AT Command.
551 +)))
552 +
553 +(((
554 +(% style="color:blue" %)**AT+5VT=1000**
555 +)))
556 +
557 +(((
558 +Means set 5V valid time to have 1000ms. So the real 5V output will actually have 1000ms + sampling time for other sensors.
559 +)))
560 +
561 +
562 +
538 538  == 2.5  Downlink Payload ==
539 539  
540 540  By default, NDDS75 prints the downlink payload to console port.
... ... @@ -587,16 +587,51 @@
587 587  
588 588  
589 589  
590 -== 2.5  ​Battery Analysis ==
615 +== 2.6  ​LED Indicator ==
591 591  
592 -=== 2.5.1  ​Battery Type ===
593 593  
618 +The NDDS75 has an internal LED which is to show the status of different state.
594 594  
620 +
621 +* When power on, NDDS75 will detect if sensor probe is connected, if probe detected, LED will blink four times. (no blinks in this step is no probe)
622 +* Then the LED will be on for 1 second means device is boot normally.
623 +* After NDDS75 join NB-IoT network. The LED will be ON for 3 seconds.
624 +* For each uplink probe, LED will be on for 500ms.
625 +
595 595  (((
596 -The N95S31B 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.
627 +
597 597  )))
598 598  
630 +
631 +
632 +== 2.7  ​Firmware Change Log ==
633 +
634 +
599 599  (((
636 +Download URL & Firmware Change log
637 +)))
638 +
639 +(((
640 +[[https:~~/~~/www.dragino.com/downloads/index.php?dir=NB-IoT/NDDS75/Firmware/>>url:https://www.dragino.com/downloads/index.php?dir=NB-IoT/NDDS75/Firmware/]]
641 +)))
642 +
643 +
644 +(((
645 +Upgrade Instruction: [[Upgrade_Firmware>>||anchor="H5.1200BHowtoUpgradeFirmware"]]
646 +)))
647 +
648 +
649 +
650 +== 2.8  ​Battery Analysis ==
651 +
652 +=== 2.8.1  ​Battery Type ===
653 +
654 +
655 +(((
656 +The NDDS75 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.
657 +)))
658 +
659 +(((
600 600  The battery is designed to last for several years depends on the actually use environment and update interval. 
601 601  )))
602 602  
... ... @@ -614,35 +614,56 @@
614 614  
615 615  
616 616  
617 -=== 2.5.2  Power consumption Analyze ===
677 +=== 2.8.2  Power consumption Analyze ===
618 618  
619 619  (((
620 -The file **DRAGINO_N95S31B-Power-Analyzer.pdf** from [[https:~~/~~/www.dragino.com/downloads/index.php?dir=NB-IoT/N95S31B/>>url:https://www.dragino.com/downloads/index.php?dir=NB-IoT/N95S31B/]] describes a detail measurement to analyze the power consumption in different case. User can use it for design guideline for their project.
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.
621 621  )))
622 622  
683 +
623 623  (((
624 -
685 +Instruction to use as below:
625 625  )))
626 626  
688 +(((
689 +(% 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/]]
690 +)))
627 627  
628 -=== 2.5.3  ​Battery Note ===
629 629  
630 630  (((
631 -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 uplink data, then the battery life may be decreased.
694 +(% style="color:blue" %)**Step 2: **(%%) Open it and choose
632 632  )))
633 633  
697 +* (((
698 +Product Model
699 +)))
700 +* (((
701 +Uplink Interval
702 +)))
703 +* (((
704 +Working Mode
705 +)))
634 634  
707 +(((
708 +And the Life expectation in difference case will be shown on the right.
709 +)))
635 635  
636 -=== 2.5.4  Replace the battery ===
711 +[[image:image-20220709110451-3.png]]
637 637  
638 638  
714 +
715 +=== 2.8.3  ​Battery Note ===
716 +
639 639  (((
640 -You can change the battery in the N95S31B.The type of battery is not limited as long as the output is between 3v to 3.6v. On the main board, there is a diode (D1) between the battery and the main circuit. If you need to use a battery with less than 3.3v, please remove the D1 and shortcut the two pads of it so there won't be voltage drop between battery and main board.
718 +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.
641 641  )))
642 642  
643 643  
722 +
723 +=== 2.8.4  Replace the battery ===
724 +
644 644  (((
645 -The default battery pack of N95S31B 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).
726 +The default battery pack of NDDS75 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).
646 646  )))
647 647  
648 648  
1657352391268-297.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -238.0 KB
Content
1657352403317-397.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -547.7 KB
Content
1657352634421-276.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -163.6 KB
Content
1657352645687-385.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -214.7 KB
Content
1657352898400-901.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -144.8 KB
Content
1657352914475-252.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -157.0 KB
Content
1657354294009-643.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -214.7 KB
Content
image-20220709161741-3.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -111.2 KB
Content
Copyright ©2010-2022 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0