Changes for page NDDS75 -- NB-IoT Distance Detect Sensor User Manual
Last modified by Bei Jinggeng on 2024/05/31 09:53
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 12 removed)
Details
- Page properties
-
- Content
-
... ... @@ -59,6 +59,8 @@ 59 59 * Micro SIM card slot for NB-IoT SIM 60 60 * 8500mAh Battery for long term use 61 61 62 + 63 + 62 62 == 1.3 Specification == 63 63 64 64 ... ... @@ -67,6 +67,7 @@ 67 67 * Supply Voltage: 2.1v ~~ 3.6v 68 68 * Operating Temperature: -40 ~~ 85°C 69 69 72 + 70 70 (% style="color:#037691" %)**NB-IoT Spec:** 71 71 72 72 * - B1 @H-FDD: 2100MHz ... ... @@ -76,6 +76,7 @@ 76 76 * - B20 @H-FDD: 800MHz 77 77 * - B28 @H-FDD: 700MHz 78 78 82 + 79 79 (% style="color:#037691" %)**Probe Specification:** 80 80 81 81 Measure Volume: Base on the centra pin of the probe, a cylinder with 7cm diameter and 10cm height. ... ... @@ -98,250 +98,115 @@ 98 98 99 99 100 100 101 -= 2. UseNSE01 to communicatewithIoTServer=105 += 2. Configure LSE01 to connect to LoRaWAN network = 102 102 103 -== 2.1 107 +== 2.1 How it works == 104 104 105 - 106 106 ((( 107 -The NSE01 isequippedwithaNB-IoT module,thepre-loadedfirmwareinNSE01willgetenvironmentdatafrom sensorsandsend thevaluetolocalNB-IoTnetworkviatheNB-IoTmodule.The NB-IoTnetworkwillforwardthisvaluetoIoTserver viatheprotocoldefinedbyNSE01.110 +The LSE01 is configured as LoRaWAN OTAA Class A mode by default. It has OTAA keys to join LoRaWAN network. To connect a local LoRaWAN network, you need to input the OTAA keys in the LoRaWAN IoT server and power on the LSE0150. It will automatically join the network via OTAA and start to send the sensor value 108 108 ))) 109 109 110 - 111 111 ((( 112 - Thediagrambelowshows theworkingflowindefaultfirmware ofNSE01:114 +In case you can’t set the OTAA keys in the LoRaWAN OTAA server, and you have to use the keys from the server, you can [[use AT Commands >>||anchor="H3.200BUsingtheATCommands"]]. 113 113 ))) 114 114 115 -[[image:image-20220708101605-2.png]] 116 116 117 -((( 118 - 119 -))) 120 120 119 +== 2.2 Quick guide to connect to LoRaWAN server (OTAA) == 121 121 121 +Following is an example for how to join the [[TTN v3 LoRaWAN Network>>url:https://console.cloud.thethings.network/]]. Below is the network structure; we use the [[LG308>>url:http://www.dragino.com/products/lora/item/140-lg308.html]] as a LoRaWAN gateway in this example. 122 122 123 -== 2.2 Configure the NSE01 == 124 124 124 +[[image:1654503992078-669.png]] 125 125 126 -=== 2.2.1 Test Requirement === 127 127 127 +The LG308 is already set to connected to [[TTN network >>url:https://console.cloud.thethings.network/]], so what we need to now is configure the TTN server. 128 128 129 -To use NSE01 in your city, make sure meet below requirements: 130 130 131 -* Your local operator has already distributed a NB-IoT Network there. 132 -* The local NB-IoT network used the band that NSE01 supports. 133 -* Your operator is able to distribute the data received in their NB-IoT network to your IoT server. 130 +(% style="color:blue" %)**Step 1**(%%): Create a device in TTN with the OTAA keys from LSE01. 134 134 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 NSE01 will use CoAP((% style="color:red" %)120.24.4.116:5683)(%%) or raw UDP((% style="color:red" %)120.24.4.116:5601)(%%) or MQTT((% style="color:red" %)120.24.4.116:1883)(%%)or TCP((% style="color:red" %)120.24.4.116:5600)(%%)protocol to send data to the test server 137 -))) 132 +Each LSE01 is shipped with a sticker with the default device EUI as below: 138 138 134 +[[image:image-20220606163732-6.jpeg]] 139 139 140 - [[image:1657249419225-449.png]]136 +You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot: 141 141 138 +**Add APP EUI in the application** 142 142 143 143 144 - === 2.2.2 Insert SIM card ===141 +[[image:1654504596150-405.png]] 145 145 146 -Insert the NB-IoT Card get from your provider. 147 147 148 -User need to take out the NB-IoT module and insert the SIM card like below: 149 149 145 +**Add APP KEY and DEV EUI** 150 150 151 -[[image:165 7249468462-536.png]]147 +[[image:1654504683289-357.png]] 152 152 153 153 154 154 155 - ===2.2.3 ConnectUSB–TTLtoNSE01to configure it ===151 +(% style="color:blue" %)**Step 2**(%%): Power on LSE01 156 156 157 -((( 158 -((( 159 -User need to configure NSE01 via serial port to set the (% style="color:blue" %)**Server Address** / **Uplink Topic** (%%)to define where and how-to uplink packets. NSE01 support AT Commands, user can use a USB to TTL adapter to connect to NSE01 and use AT Commands to configure it, as below. 160 -))) 161 -))) 162 162 154 +Put a Jumper on JP2 to power on the device. ( The Jumper must be in FLASH position). 163 163 164 - **Connection:**156 +[[image:image-20220606163915-7.png]] 165 165 166 - (% style="background-color:yellow" %)USB TTL GND <~-~-~-~-> GND 167 167 168 - background-color:yellow" %)USBTTL TXD<~-~-~-~->UART_RXD159 +(% style="color:blue" %)**Step 3**(%%)**:** The LSE01 will auto join to the TTN network. After join success, it will start to upload messages to TTN and you can see the messages in the panel. 169 169 170 - (% style="background-color:yellow" %)USB TTL RXD <~-~-~-~-> UART_TXD161 +[[image:1654504778294-788.png]] 171 171 172 172 173 -In the PC, use below serial tool settings: 174 174 175 -* Baud: (% style="color:green" %)**9600** 176 -* Data bits:** (% style="color:green" %)8(%%)** 177 -* Stop bits: (% style="color:green" %)**1** 178 -* Parity: (% style="color:green" %)**None** 179 -* Flow Control: (% style="color:green" %)**None** 165 +== 2.3 Uplink Payload == 180 180 181 -((( 182 -Make sure the switch is in FLASH position, then power on device by connecting the jumper on NSE01. NSE01 will output system info once power on as below, we can enter the (% style="color:green" %)**password: 12345678**(%%) to access AT Command input. 183 -))) 184 184 185 - [[image:image-20220708110657-3.png]]168 +=== 2.3.1 MOD~=0(Default Mode) === 186 186 187 - (%style="color:red"%)Note: the validAT Commandscanbe foundat:(%%)[[http:~~/~~/www.dragino.com/downloads/index.php?dir=NB-IoT/NSE01/>>url:http://www.dragino.com/downloads/index.php?dir=NB-IoT/NBSN50/]]170 +LSE01 will uplink payload via LoRaWAN with below payload format: 188 188 189 - 190 - 191 -=== 2.2.4 Use CoAP protocol to uplink data === 192 - 193 -(% 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/]] 194 - 195 - 196 -**Use below commands:** 197 - 198 -* (% style="color:blue" %)**AT+PRO=1** (%%) ~/~/ Set to use CoAP protocol to uplink 199 -* (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5683 ** (%%)~/~/ to set CoAP server address and port 200 -* (% style="color:blue" %)**AT+URI=5,11,"mqtt",11,"coap",12,"0",15,"c=text1",23,"0" ** (%%) ~/~/Set COAP resource path 201 - 202 - 203 -For parameter description, please refer to AT command set 204 - 205 -[[image:1657249793983-486.png]] 206 - 207 - 208 -After configure the server address and (% style="color:green" %)**reset the device**(%%) (via AT+ATZ ), NSE01 will start to uplink sensor values to CoAP server. 209 - 210 -[[image:1657249831934-534.png]] 211 - 212 - 213 - 214 -=== 2.2.5 Use UDP protocol to uplink data(Default protocol) === 215 - 216 -This feature is supported since firmware version v1.0.1 217 - 218 - 219 -* (% style="color:blue" %)**AT+PRO=2 ** (%%) ~/~/ Set to use UDP protocol to uplink 220 -* (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5601 ** (%%) ~/~/ to set UDP server address and port 221 -* (% style="color:blue" %)**AT+CFM=1 ** (%%) ~/~/If the server does not respond, this command is unnecessary 222 - 223 -[[image:1657249864775-321.png]] 224 - 225 - 226 -[[image:1657249930215-289.png]] 227 - 228 - 229 - 230 -=== 2.2.6 Use MQTT protocol to uplink data === 231 - 232 -This feature is supported since firmware version v110 233 - 234 - 235 -* (% style="color:blue" %)**AT+PRO=3 ** (%%) ~/~/Set to use MQTT protocol to uplink 236 -* (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,1883 ** (%%) ~/~/Set MQTT server address and port 237 -* (% style="color:blue" %)**AT+CLIENT=CLIENT ** (%%)~/~/Set up the CLIENT of MQTT 238 -* (% style="color:blue" %)**AT+UNAME=UNAME **(%%)~/~/Set the username of MQTT 239 -* (% style="color:blue" %)**AT+PWD=PWD **(%%)~/~/Set the password of MQTT 240 -* (% style="color:blue" %)**AT+PUBTOPIC=NSE01_PUB **(%%)~/~/Set the sending topic of MQTT 241 -* (% style="color:blue" %)**AT+SUBTOPIC=NSE01_SUB **(%%) ~/~/Set the subscription topic of MQTT 242 - 243 -[[image:1657249978444-674.png]] 244 - 245 - 246 -[[image:1657249990869-686.png]] 247 - 248 - 249 249 ((( 250 - MQTTprotocolhas a much higher power consumption compare vs UDP / CoAP protocol. Please checkthepoweranalyze documentandadjustthe uplinkperiodtoa suitableinterval.173 +Uplink payload includes in total 11 bytes. 251 251 ))) 252 252 176 +(% border="1" cellspacing="10" style="background-color:#ffffcc; width:500px" %) 177 +|((( 178 +**Size** 253 253 180 +**(bytes)** 181 +)))|**2**|**2**|**2**|**2**|**2**|**1** 182 +|**Value**|[[BAT>>||anchor="H2.3.3BatteryInfo"]]|((( 183 +Temperature 254 254 255 -=== 2.2.7 Use TCP protocol to uplink data === 185 +(Reserve, Ignore now) 186 +)))|[[Soil Moisture>>||anchor="H2.3.4SoilMoisture"]]|[[Soil Temperature>>||anchor="H2.3.5SoilTemperature"]]|[[Soil Conductivity (EC)>>||anchor="H2.3.6SoilConductivity28EC29"]]|((( 187 +MOD & Digital Interrupt 256 256 257 -This feature is supported since firmware version v110 189 +(Optional) 190 +))) 258 258 192 +=== 2.3.2 MOD~=1(Original value) === 259 259 260 -* (% style="color:blue" %)**AT+PRO=4 ** (%%) ~/~/ Set to use TCP protocol to uplink 261 -* (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5600 **(%%) ~/~/ to set TCP server address and port 194 +This mode can get the original AD value of moisture and original conductivity (with temperature drift compensation). 262 262 263 -[[image:1657250217799-140.png]] 196 +(% border="1" cellspacing="10" style="background-color:#ffffcc; width:500px" %) 197 +|((( 198 +**Size** 264 264 200 +**(bytes)** 201 +)))|**2**|**2**|**2**|**2**|**2**|**1** 202 +|**Value**|[[BAT>>||anchor="H2.3.3BatteryInfo"]]|((( 203 +Temperature 265 265 266 -[[image:1657250255956-604.png]] 205 +(Reserve, Ignore now) 206 +)))|[[Soil Moisture>>||anchor="H2.3.4SoilMoisture"]](raw)|[[Soil Temperature>>||anchor="H2.3.5SoilTemperature"]]|[[Soil Conductivity (EC)>>||anchor="H2.3.6SoilConductivity28EC29"]](raw)|((( 207 +MOD & Digital Interrupt 267 267 268 - 269 - 270 -=== 2.2.8 Change Update Interval === 271 - 272 -User can use below command to change the (% style="color:green" %)**uplink interval**. 273 - 274 -* (% style="color:blue" %)**AT+TDC=600 ** (%%)~/~/ Set Update Interval to 600s 275 - 276 -((( 277 -(% style="color:red" %)**NOTE:** 209 +(Optional) 278 278 ))) 279 279 280 -((( 281 -(% style="color:red" %)1. By default, the device will send an uplink message every 1 hour. 282 -))) 212 +=== 2.3.3 Battery Info === 283 283 284 - 285 - 286 -== 2.3 Uplink Payload == 287 - 288 -In this mode, uplink payload includes in total 18 bytes 289 - 290 -(% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %) 291 -|=(% style="width: 50px;" %)((( 292 -**Size(bytes)** 293 -)))|=(% style="width: 50px;" %)**6**|=(% style="width: 25px;" %)2|=(% style="width: 25px;" %)**2**|=(% style="width: 80px;" %)**1**|=(% style="width: 80px;" %)**2**|=(% style="width: 80px;" %)**2**|=(% style="width: 80px;" %)**2**|=(% style="width: 40px;" %)**1** 294 -|(% style="width:97px" %)**Value**|(% style="width:83px" %)[[Device ID>>||anchor="H"]]|(% style="width:41px" %)[[Ver>>||anchor="H"]]|(% style="width:46px" %)[[BAT>>||anchor="H"]]|(% style="width:123px" %)[[Signal Strength>>||anchor="H"]]|(% style="width:108px" %)[[Soil Moisture>>||anchor="H"]]|(% style="width:133px" %)[[Soil Temperature>>||anchor="H"]]|(% style="width:159px" %)[[Soil Conductivity(EC)>>||anchor="H"]]|(% style="width:80px" %)[[Interrupt>>||anchor="H"]] 295 - 296 -If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the NSE01 uplink data. 297 - 298 - 299 -[[image:image-20220708111918-4.png]] 300 - 301 - 302 -The payload is ASCII string, representative same HEX: 303 - 304 -0x72403155615900640c7817075e0a8c02f900 where: 305 - 306 -* Device ID: 0x 724031556159 = 724031556159 307 -* Version: 0x0064=100=1.0.0 308 - 309 -* BAT: 0x0c78 = 3192 mV = 3.192V 310 -* Singal: 0x17 = 23 311 -* Soil Moisture: 0x075e= 1886 = 18.86 % 312 -* Soil Temperature:0x0a8c =2700=27 °C 313 -* Soil Conductivity(EC) = 0x02f9 =761 uS /cm 314 -* Interrupt: 0x00 = 0 315 - 316 - 317 - 318 - 319 -== 2.4 Payload Explanation and Sensor Interface == 320 - 321 -=== 2.4.1 Device ID === 322 - 323 -By default, the Device ID equal to the last 6 bytes of IMEI. 324 - 325 -User can use (% style="color:blue" %)**AT+DEUI**(%%) to set Device ID 326 - 327 -**Example:** 328 - 329 -AT+DEUI=A84041F15612 330 - 331 -The Device ID is stored in a none-erase area, Upgrade the firmware or run AT+FDR won't erase Device ID. 332 - 333 - 334 - 335 -=== 2.4.2 Version Info === 336 - 337 -Specify the software version: 0x64=100, means firmware version 1.00. 338 - 339 -For example: 0x00 64 : this device is NSE01 with firmware version 1.0.0. 340 - 341 - 342 - 343 -=== 2.4.3 Battery Info === 344 - 345 345 ((( 346 346 Check the battery voltage for LSE01. 347 347 ))) ... ... @@ -356,32 +356,14 @@ 356 356 357 357 358 358 359 -=== 2. 4.4gnalStrength===228 +=== 2.3.4 Soil Moisture === 360 360 361 -NB-IoT Network signal Strength. 362 - 363 -**Ex1: 0x1d = 29** 364 - 365 -(% style="color:blue" %)**0**(%%) -113dBm or less 366 - 367 -(% style="color:blue" %)**1**(%%) -111dBm 368 - 369 -(% style="color:blue" %)**2...30**(%%) -109dBm... -53dBm 370 - 371 -(% style="color:blue" %)**31** (%%) -51dBm or greater 372 - 373 -(% style="color:blue" %)**99** (%%) Not known or not detectable 374 - 375 - 376 - 377 -=== 2.4.5 Soil Moisture === 378 - 379 379 ((( 380 380 Get the moisture content of the soil. The value range of the register is 0-10000(Decimal), divide this value by 100 to get the percentage of moisture in the soil. 381 381 ))) 382 382 383 383 ((( 384 -For example, if the data you get from the register is **__0x05 0xDC__**, the moisture content in the soil is235 +For example, if the data you get from the register is __0x05 0xDC__, the moisture content in the soil is 385 385 ))) 386 386 387 387 ((( ... ... @@ -394,10 +394,10 @@ 394 394 395 395 396 396 397 -=== 2. 4.6Soil Temperature ===248 +=== 2.3.5 Soil Temperature === 398 398 399 399 ((( 400 - Get the temperature in the soil. The value range of the register is -4000 - +800(Decimal), divide this value by 100 to get the temperature in the soil. For example, if the data you get from the register is __**0x09 0xEC**__, the temperature content in the soil is251 + Get the temperature in the soil. The value range of the register is -4000 - +800(Decimal), divide this value by 100 to get the temperature in the soil. For example, if the data you get from the register is 0x09 0xEC, the temperature content in the soil is 401 401 ))) 402 402 403 403 ((( ... ... @@ -414,7 +414,7 @@ 414 414 415 415 416 416 417 -=== 2. 4.7Soil Conductivity (EC) ===268 +=== 2.3.6 Soil Conductivity (EC) === 418 418 419 419 ((( 420 420 Obtain (% style="color:#4f81bd" %)**__soluble salt concentration__**(%%) in soil or (% style="color:#4f81bd" %)**__soluble ion concentration in liquid fertilizer__**(%%) or (% style="color:#4f81bd" %)**__planting medium__**(%%). The value range of the register is 0 - 20000(Decimal)( Can be greater than 20000). ... ... @@ -421,7 +421,7 @@ 421 421 ))) 422 422 423 423 ((( 424 -For example, if the data you get from the register is __**0x00 0xC8**__, the soil conductivity is 00C8(H) = 200(D) = 200 uS/cm.275 +For example, if the data you get from the register is 0x00 0xC8, the soil conductivity is 00C8(H) = 200(D) = 200 uS/cm. 425 425 ))) 426 426 427 427 ((( ... ... @@ -436,42 +436,39 @@ 436 436 437 437 ))) 438 438 439 -=== 2. 4.8DigitalInterrupt===290 +=== 2.3.7 MOD === 440 440 292 +Firmware version at least v2.1 supports changing mode. 441 441 442 - Digital Interrupt refers topin **GPIO_EXTI**, and therearedifferent triggermethods. When there is a trigger, theNSE01 willsend a packet to the server.294 +For example, bytes[10]=90 443 443 444 - The commandis:296 +mod=(bytes[10]>>7)&0x01=1. 445 445 446 -**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]]**).** 447 447 299 +**Downlink Command:** 448 448 449 - The lowerfourbits of this data field shows if this packet is generatedbyinterruptornot. [[Click here>>||anchor="H"]] for the hardwareand software set up.301 +If payload = 0x0A00, workmode=0 450 450 303 +If** **payload =** **0x0A01, workmode=1 451 451 452 -Example: 453 453 454 -0x(00): Normal uplink packet. 455 455 456 - 0x(01):InterruptUplinkPacket.307 +=== 2.3.8 Decode payload in The Things Network === 457 457 309 +While using TTN network, you can add the payload format to decode the payload. 458 458 459 459 312 +[[image:1654505570700-128.png]] 460 460 461 -=== 2.4.9 +5V Output === 314 +((( 315 +The payload decoder function for TTN is here: 316 +))) 462 462 318 +((( 319 +LSE01 TTN Payload Decoder: [[https:~~/~~/www.dropbox.com/sh/si8icbrjlamxqdb/AAACYwjsxxr5fj_vpqRtrETAa?dl=0>>https://www.dropbox.com/sh/si8icbrjlamxqdb/AAACYwjsxxr5fj_vpqRtrETAa?dl=0]] 320 +))) 463 463 464 -NSE01 will enable +5V output before all sampling and disable the +5v after all sampling. 465 465 466 - 467 -The 5V output time can be controlled by AT Command. 468 - 469 -**(% style="color:blue" %)AT+5VT=1000** 470 - 471 -Means set 5V valid time to have 1000ms. So the real 5V output will actually have 1000ms + sampling time for other sensors. 472 - 473 - 474 - 475 475 == 2.4 Uplink Interval == 476 476 477 477 The LSE01 by default uplink the sensor data every 20 minutes. User can change this interval by AT Command or LoRaWAN Downlink Command. See this link: [[Change Uplink Interval>>doc:Main.End Device AT Commands and Downlink Command.WebHome||anchor="H4.1ChangeUplinkInterval"]]
- 1657249419225-449.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -81.0 KB - Content
- 1657249468462-536.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -483.6 KB - Content
- 1657249793983-486.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -85.8 KB - Content
- 1657249831934-534.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -72.5 KB - Content
- 1657249864775-321.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -87.0 KB - Content
- 1657249930215-289.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -77.3 KB - Content
- 1657249978444-674.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -139.5 KB - Content
- 1657249990869-686.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -96.9 KB - Content
- 1657250217799-140.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -98.7 KB - Content
- 1657250255956-604.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -99.0 KB - Content
- image-20220708110657-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -251.7 KB - Content
- image-20220708111918-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -38.8 KB - Content