Changes for page Notes for ChirpStack
Last modified by Edwin Chen on 2025/01/30 09:53
Change comment:
Uploaded new attachment "image-20230415170404-2.png", version {1}
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 17 added, 0 removed)
- image-20221010193350-1.png
- image-20221010193621-2.png
- image-20221012173639-1.png
- image-20221012174220-2.png
- image-20221012174352-3.png
- image-20221012184501-1.png
- image-20221012184631-2.png
- image-20221012184655-3.png
- image-20221222113302-1.png
- image-20221222114220-2.png
- image-20221222134830-3.png
- image-20221222140203-4.png
- image-20221222141754-5.png
- image-20221222141830-6.png
- image-20221230094246-1.png
- image-20230415165254-1.png
- image-20230415170404-2.png
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Xiaoling1 +XWiki.Kilight - Content
-
... ... @@ -38,7 +38,6 @@ 38 38 ))) 39 39 40 40 41 - 42 42 = 2. Semtech UDP = 43 43 44 44 == 2.1 Step 1. Add the Network-servers == ... ... @@ -61,7 +61,6 @@ 61 61 Add the Network-servers 62 62 63 63 64 - 65 65 == 2.2 Step 2. Create Gateway-profiles == 66 66 67 67 ... ... @@ -70,7 +70,6 @@ 70 70 Create Gateway-profiles 71 71 72 72 73 - 74 74 == 2.3 Step 3. Create Service-profiles == 75 75 76 76 ... ... @@ -86,30 +86,35 @@ 86 86 If the user has completed the preceding steps, proceed to the next step.(% style="display:none" %) 87 87 88 88 86 +== 2.4 Step 4. Add the gateway == 89 89 90 -== 2.4 Step 4. Add the gateway == 91 91 92 92 The example gateway id is: a840411e96744150 93 93 94 94 ((( 95 95 (% style="color:red" %)**Note : The Gateway EUI and server addresses must match the ChirpStack configuration.** 93 + 94 + 96 96 ))) 97 97 98 98 [[image:image-20220531171923-4.png]](% style="display:none" %) 99 99 100 - 101 101 Add the gateway 102 102 101 + 102 + 103 103 [[image:image-20220531172031-5.png]] 104 104 105 105 Configure the gateway 106 106 107 107 108 -== 2.5 Step 5. Checking gateway Status == 108 +== 2.5 Step 5. Checking gateway Status == 109 109 110 + 110 110 [[image:image-20220531172158-6.png]](% style="display:none" %) 111 111 112 112 114 + 113 113 gateway Status 114 114 115 115 [[image:image-20220531172304-7.png]] ... ... @@ -117,39 +117,45 @@ 117 117 gateway Status 118 118 119 119 120 -= 3. Gateway Registration for Basics Station = 122 += 3. Gateway Registration for Basics Station = 121 121 122 -== 3.1 Introduction == 124 +== 3.1 Introduction == 123 123 126 + 124 124 The [[Semtech Basic Station>>url:https://doc.sm.tc/station/]] backend implements the [[LNS protocol>>url:https://doc.sm.tc/station/tcproto.html]]. It exposes a WebSocket handler to which Basic Station powered gateways can connect. 125 125 126 126 ChirpStack Open-Source LoRaWAN® Network Server needs to set up a configuration that can use Semtech BasicStation. 127 127 128 -**Below list the support products and Requirements:** 129 129 132 +(% style="color:blue" %)**Below list the support products and Requirements:** 133 + 130 130 1. LoRaWAN Gateway model: [[LIG16>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/171-lig16.html]], [[LG308>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/140-lg308.html]], [[DLOS8>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/160-dlos8.html]] ,[[LPS8>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/148-lps8.html]] 131 131 1. Firmware version since :[[lgw~~-~~-build-v5.4.1651822913>>url:https://www.dragino.com/downloads/index.php?dir=LoRa_Gateway/LPS8/Firmware/Test_Firmware/lgw--build-v5.4.1651822913-20220506-1543/]] 132 132 133 -**How to set up chirpStack Basic Station** 137 +(% style="color:blue" %)**How to set up chirpStack Basic Station** 134 134 135 135 Users can check out the ChirpStack Basic Station [[link>>https://www.chirpstack.io/gateway-bridge/backends/basic-station/]] and [[forum>>https://forum.chirpstack.io/search?q=basic%20station]] 136 136 137 -**What do you need to prepare** 138 138 142 +(% style="color:blue" %)**What do you need to prepare** 143 + 139 139 A gateway that can access the internet normally 140 140 141 141 142 -== 3.2 Add Gateway == 147 +== 3.2 Add Gateway == 143 143 149 + 144 144 [[image:image-20220524164205-10.png]] 145 145 146 146 147 -== 3.3 Access the gateway GUI == 153 +== 3.3 Access the gateway GUI == 148 148 155 + 149 149 Access the gateway GUI interface of LoRaWAN~-~->LoRaWAN ~-~- Basic Station 150 150 151 151 [[image:image-20220524164319-11.png]] 152 152 160 + 153 153 User need to Choose the ChirpStack/Senet ~-~- Basic Station , input Server URI and Upload the TLS Certificate 154 154 155 155 (% class="box" %) ... ... @@ -165,20 +165,23 @@ 165 165 [[image:image-20220524164341-12.png]] 166 166 167 167 168 -== 3.4 Start Station == 176 +== 3.4 Start Station == 169 169 170 -When the user has finished the configuration, Please click Sace&Apply to start station to connect ChirpStack 171 171 179 +When the user has finished the configuration, Please click **Sace&Apply** to start station to connect ChirpStack. 172 172 173 -== 3.5 Successful Connection == 174 174 182 +== 3.5 Successful Connection == 183 + 184 + 175 175 If user completes the above steps, which will see live date in the ChirpStack. 176 176 177 177 [[image:image-20220524164448-13.png]] 178 178 179 179 180 -== 3.6 Trouble Shooting == 190 +== 3.6 Trouble Shooting == 181 181 192 + 182 182 User can check the station log in the logread/system log page. 183 183 184 184 [[image:image-20220531172837-8.png]] ... ... @@ -189,31 +189,146 @@ 189 189 [[image:image-20220531172857-9.png]] 190 190 191 191 192 -= 4. Downlink =203 += 4. How the gateway connects to Chirpstack v4 via gateway-bridge = 193 193 194 -== 4.1 Chirpstack Downlink Note == 195 195 206 +(% style="color:blue" %)**Below list the support products and Requirements:** 207 + 208 +1. LoRaWAN Gateway model: [[LIG16>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/171-lig16.html]], [[LG308>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/140-lg308.html]], [[DLOS8>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/160-dlos8.html]] ,[[LPS8>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/148-lps8.html]],[[LPS8N>>url:https://www.dragino.com/products/lora-lorawan-gateway/item/200-lps8n.html]],[[LG308N>>url:https://www.dragino.com/products/lora-lorawan-gateway/item/229-lg308n.html]],[[DLOS8N>>url:https://www.dragino.com/products/lora-lorawan-gateway/item/225-dlos8n.html]] 209 +1. Firmware version since: [[Chirpstack-Bridge-V4>>https://www.dragino.com/downloads/index.php?dir=LoRa_Gateway/LPS8/Firmware/Release/Chirpstack-gateway-bridge/Chirpstack-Bridge-V4--build-v5.4.1670655072-20221210-1452/]] 210 + 211 +(% style="color:blue" %)**How to set up chirpStack Gateway-bridge** 212 + 213 +Users can check out the ChirpStack gateway-bridge v4 [[link>>https://www.chirpstack.io/docs/chirpstack-gateway-bridge/install/dragino.html]] 214 + 215 + 216 +(% style="color:blue" %)**What do you need to prepare** 217 + 218 +A gateway that can access the internet normally 219 + 220 + 221 +== 4.1 Configure Packet Forwarder == 222 + 223 + 224 +In the Dragino gateway web interface, you need to configure the Packet Forwarder so that it forwards its data to the port. localhost:1700 or 127.0.0.1:1700 225 + 226 +* In the **LoRaWAN** menu, click on **LoRaWAN ~-~- Semtech UDP** 227 +* Make sure the following settings are set: 228 +** **Service Provider:** //~-~-Custom/Private LoRaWAN~-~-// 229 +** **LoRaWAN Server Address:** //localhost or 127.0.0.1// 230 +** **Server port for upstream:** //1700// 231 +** **Server port for downstream:** //1700// 232 + 233 + Click **Save & Apply**. 234 + 235 +[[image:image-20221222114220-2.png||height="748" width="931"]] 236 + 237 + 238 +== 4.2 Configuring gateway frequency == 239 + 240 + 241 +(% style="color:red" %)**Note: Gateway frequencies must match** 242 + 243 +[[image:image-20221222134830-3.png||height="408" width="923"]] 244 + 245 + 246 +== 4.3 Modify the gateway-bridge configuration file == 247 + 248 + 249 +Run the gateway command line command to modify the gateway-bridge configuration file: 250 + 251 +(% class="box infomessage" %) 252 +((( 253 +root@dragino-1d27d4:~~# vim /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml 254 +))) 255 + 256 +[[image:image-20221222113302-1.png]] 257 + 258 + 259 +[[image:image-20221222140203-4.png||height="875" width="806"]] 260 + 261 +[[image:image-20221230094246-1.png||height="768" width="783"]] 262 + 263 +(% class="wikigeneratedid" id="H" %) 264 +After the modification, run the following command: **/etc/init.d/chirpstack-gateway-bridge restart** 265 + 266 + 267 +== 4.4 (Re)start and stop gateway-bridge == 268 + 269 + 270 +Use the following commands to (re)start and stop the ChirpStack Gateway Bridge Service: 271 + 272 +(% class="box infomessage" %) 273 +((( 274 +**# start** 275 + 276 +/etc/init.d/chirpstack-gateway-bridge start 277 + 278 +**# stop** 279 + 280 +/etc/init.d/chirpstack-gateway-bridge stop 281 + 282 +**# restart** 283 + 284 +/etc/init.d/chirpstack-gateway-bridge restart 285 +))) 286 + 287 + 288 +== 4.5 Successful Connection == 289 + 290 + 291 +[[image:image-20221222141754-5.png||height="488" width="1150"]] 292 + 293 + 294 +[[image:image-20221222141830-6.png||height="582" width="1153"]] 295 + 296 + 297 += 5. Downlink = 298 + 299 +== 5.1 Convert HEX to Base64 == 300 + 301 + 302 +(% style="color:red" %)**Note: Chirpstack uses base64 to downlink, the end node user manual provides HEX format of the downlink commands. So user needs to convert the HEX to Base64.** 303 + 304 +**[[Online HEX to Base64 Converter>>https://base64.guru/converter/encode/hex]]:** 305 + 306 +[[image:image-20221010193350-1.png]] 307 + 308 + 309 + 310 +**[[Online Base64 to Hex converter>>https://base64.guru/converter/decode/hex]]** 311 + 312 +[[image:image-20221010193621-2.png]] 313 + 314 + 315 +== 5.2 Chirpstack Downlink Note == 316 + 317 + 196 196 [[image:image-20220601102543-2.png]] 197 197 198 -Convert the data to Base64 320 +**Convert the data to Base64** 199 199 322 +(% style="display:none" %) (%%) 200 200 201 -[[image:image-20220531173236-10.png]] 202 202 203 - Check ChripStackdownlink DataRate325 +[[image:image-20220531173236-10.png||height="597" width="1215"]] 204 204 327 +**Check ChripStack downlink DataRate** 205 205 329 + 330 + 206 206 [[image:image-20220525101326-11.png]] 207 207 208 -Make sure the RX2DR is the same in the end node 333 +**Make sure the RX2DR is the same in the end node** 209 209 210 210 211 -== 4.2Loraserver Downlink Note ==336 +== 5.3 Loraserver Downlink Note == 212 212 338 + 213 213 User can use MQTT to send downlink payload to ChirpStack to perform downstream to LoRaWAN End 214 214 215 215 ((( 216 -Below is examples: 342 +**Below is examples:** 217 217 ))) 218 218 219 219 (% class="box" %) ... ... @@ -227,13 +227,14 @@ 227 227 [[image:image-20220531173419-11.png]] 228 228 229 229 ((( 230 -MQTT Connect to ChirpStack 356 +**MQTT Connect to ChirpStack** 231 231 358 + 232 232 233 233 ))) 234 234 235 235 ((( 236 -After connect 363 +**After connect** 237 237 ))) 238 238 239 239 (% class="box" %) ... ... @@ -253,22 +253,14 @@ 253 253 254 254 [[image:image-20220531173519-12.png]] 255 255 256 -MQTT Connect to ChirpStack 383 +**MQTT Connect to ChirpStack** 257 257 258 258 259 -((( 260 -(% style="color:red" %)Note: Chirpstack use base64 to downlink, so need to convert the downlink payload from HEX to base64 [[https:~~/~~/base64.us/>>url:https://base64.us/]] 261 -))) 386 +**If we want to send downstream hex 030101 to end node, the BASE64 payload is AwEB** 262 262 263 -[[image:image-20220531173601-13.png]] 264 - 265 -Choose to Use Hex for Encode 266 - 267 - 268 -If we want send downstream hex 030101 to end node, the BASE64 payload is AwEB 269 - 270 270 [[image:image-20220531173658-14.png]] 271 271 390 + 272 272 ((( 273 273 Downlink payload encode javescript code: 可以在网站上运行以下Javsscript代码: 274 274 ))) ... ... @@ -286,15 +286,15 @@ 286 286 { 287 287 if(sha1[n] >= 'A' && sha1[n] <= 'Z') 288 288 { 289 - ascv = sha1.charCodeAt(n) - 55; 408 + ascv = sha1.charCodeAt( n ) - 55; 290 290 } 291 291 else if(sha1[n] >= 'a' && sha1[n] <= 'z') 292 292 { 293 - ascv = sha1.charCodeAt(n) - 87; 412 + ascv = sha1.charCodeAt( n ) - 87; 294 294 } 295 295 else 296 296 { 297 - ascv = sha1.charCodeAt(n) - 48; 416 + ascv = sha1.charCodeAt( n ) - 48; 298 298 } 299 299 \\ bit_arr = (bit_arr << 4) | ascv; 300 300 bit_num += 4; ... ... @@ -331,11 +331,12 @@ 331 331 ))) 332 332 333 333 334 -== 4.3 Add the decode function in Chirpstack for the payload == 453 +== 4.3 Add the decode function in Chirpstack for the payload == 335 335 455 + 336 336 User enters the payload code according to the steps. 337 337 338 -[[image:image-20220531173754-15.png]] 458 +[[image:image-20220531173754-15.png||height="474" width="1334"]] 339 339 340 340 341 341 [[image:image-20220531173856-16.png]] ... ... @@ -346,8 +346,9 @@ 346 346 [[image:image-20220531174046-19.png]] 347 347 348 348 349 -= 5. Multiply Uplink in ChirpStack =469 += 6. Multiply Uplink in ChirpStack = 350 350 471 + 351 351 ((( 352 352 nbtrans field is the value to determine the re-transmission time for unconfirmed uplink data. 353 353 ))) ... ... @@ -354,12 +354,17 @@ 354 354 355 355 ((( 356 356 ChirpStack will auto adjust nbtrans according to uplink rssi. [[link to source>>url:https://github.com/brocaar/chirpstack-network-server/blob/master/internal/adr/adr.go]] 478 + 479 + 357 357 ))) 358 358 359 -[[image:image-20220526091912-7.png]] 482 +[[image:image-20220526091912-7.png||height="241" width="1336"]] 360 360 484 + 361 361 ((( 362 362 nbtrans is a field of ADR message, in unconfirm mode, it tells end node how many time it needs to transmit for every frame. 487 + 488 + 363 363 ))) 364 364 365 365 [[image:image-20220525104359-21.png]] ... ... @@ -366,6 +366,8 @@ 366 366 367 367 ((( 368 368 Above behaviour will cause the platform shows below two cases of error: 495 + 496 + 369 369 ))) 370 370 371 371 ((( ... ... @@ -375,29 +375,35 @@ 375 375 [[image:image-20220525104437-22.png]] 376 376 377 377 378 -Duplicate transmission in short time 379 379 380 - [[image:image-20220601102430-1.png]]507 +**Duplicate transmission in short time** 381 381 509 +[[image:image-20220601102430-1.png||height="598" width="1319"]] 382 382 383 -== 5.1 Solution == 384 384 512 +== 6.1 Solution == 513 + 514 + 385 385 This example uses the Windows version as a template, other versions can refer to this. Similiar reference: [[https:~~/~~/confluence.alitecs.de/plugins/servlet/mobile?contentId=79790102#content/view/79790102>>url:https://confluence.alitecs.de/plugins/servlet/mobile?contentId=79790102#content/view/79790102]] 386 386 517 + 387 387 ((( 388 -~1. Install the GO compilation environment: Download the corresponding version of the Go compiler at [[https:~~/~~/go.dev/dl/>>url:https://go.dev/dl/]] and install it. 519 +(% style="color:blue" %)**1. Install the GO compilation environment: Download the corresponding version of the Go compiler at [[https:~~/~~/go.dev/dl/>>url:https://go.dev/dl/]] and install it.** 520 + 521 + 389 389 ))) 390 390 391 391 [[image:image-20220525104532-24.png]] 392 392 393 393 394 -installation path: 527 +**installation path:** 395 395 396 396 [[image:image-20220525104554-25.png]] 397 397 398 398 532 + 399 399 ((( 400 -2. Environment variable settings: .534 +(% style="color:blue" %)**2. Environment variable settings:** 401 401 ))) 402 402 403 403 ((( ... ... @@ -405,13 +405,13 @@ 405 405 ))) 406 406 407 407 ((( 408 -2)Set the variable name GOROOT and the variable value C:\Go\ (installation directory) 542 +2) Set the variable name GOROOT and the variable value C:\Go\ (installation directory) 409 409 ))) 410 410 411 411 [[image:image-20220524165433-33.png]] 412 412 413 413 414 -3)Modify the system variable Path and add C:\Go\bin\: 548 +3) Modify the system variable Path and add C:\Go\bin\: 415 415 416 416 [[image:image-20220524165452-34.png]] 417 417 ... ... @@ -421,8 +421,9 @@ 421 421 [[image:image-20220524165517-35.png]] 422 422 423 423 424 -3. Modify the ADR configuration file according to your own needs, adr.setting.go is an example of the ADR configuration file. 425 425 559 +(% style="color:blue" %)**3. Modify the ADR configuration file according to your own needs, adr.setting.go is an example of the ADR configuration file.** 560 + 426 426 The name of the plugin: Example ADR plugin: 427 427 428 428 [[image:image-20220524165540-36.png]] ... ... @@ -432,8 +432,9 @@ 432 432 [[image:image-20220524165557-37.png]] 433 433 434 434 435 -4. Compile the ADR configuration file and generate the exe file. 436 436 571 +(% style="color:blue" %)**4. Compile the ADR configuration file and generate the exe file.** 572 + 437 437 1) Create a folder named adr-setting 438 438 439 439 2) Open the adr-setting folder ... ... @@ -457,8 +457,9 @@ 457 457 [[image:image-20220524165623-38.png]] 458 458 459 459 460 -5. Add the plugin and run the plugin. 461 461 597 +(% style="color:blue" %)**5. Add the plugin and run the plugin.** 598 + 462 462 ((( 463 463 The exe file generated in the previous step is placed in the same root directory as chirpstack-network-server.toml, and the ADR plugin is added to the toml file. The location of the addition is as follows: 464 464 ))) ... ... @@ -494,14 +494,68 @@ 494 494 Finish. 495 495 496 496 497 -= 6.TroubleShooting =634 += 7. How to store/get all data traffic for a specific sensor, including raw payload, and uplink/ downlink history. = 498 498 499 -== 6.1 MIC Mismatch or MIC Failed == 500 500 637 +All data is published to the MQTT topics. if you want to store/get the data, you would have to create an MQTT handler and store the data yourself. 638 + 639 +This example will be shown how to store/get all the data in two ways: 640 + 641 +**//1). Chirpstack ~-~-> Node-red//** 642 + 643 + 644 +[[image:image-20221012184501-1.png]] 645 + 646 + 647 +Use MQTT in Nore-red to subscribe to topics published by the chirpstack-application and then continuously write to a file 648 + 649 +[[image:image-20221012174220-2.png]] 650 + 651 + 652 +[[image:image-20221012184655-3.png||height="395" width="1049"]] 653 + 654 + 655 +**Each message is continuously logged to a specified file** 656 + 657 +[[image:image-20221012174352-3.png]] 658 + 659 + 660 +**//2). MQTT Sub//** 661 + 662 +If you don't want to store the information via node-red, you can get the output via the subscribe command. 663 + 664 + 665 +**If connecting from the same machine, you can use the following command to receive data:** 666 + 667 +(% class="box infomessage" %) 501 501 ((( 669 +mosquitto_sub -h localhost -t "application/#" -v 670 +))) 671 + 672 + 673 +**Different host** 674 + 675 +(% class="box infomessage" %) 676 +((( 677 +mosquitto_sub -h IPADDRESS -p 8883 ~-~-insecure ~-~-cafile ca.pem ~-~-cert cert.pem ~-~-key key.pem -t "application/#" -v 678 +))) 679 + 680 +[[image:image-20221012173639-1.png]] 681 + 682 + 683 += 8. Trouble Shooting = 684 + 685 +== 8.1 MIC Mismatch or MIC Failed == 686 + 687 + 688 +((( 502 502 When the device is registered or the device is working normally, the problem of MIC mismatch and MIC failed occurs. 503 503 ))) 504 504 505 505 ((( 506 506 Under normal circumstances, users need to change the APPKEY to solve this problem. 694 + 695 + 696 + 697 + 507 507 )))
- image-20221010193350-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Edwin - Size
-
... ... @@ -1,0 +1,1 @@ 1 +42.7 KB - Content
- image-20221010193621-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Edwin - Size
-
... ... @@ -1,0 +1,1 @@ 1 +34.2 KB - Content
- image-20221012173639-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoye - Size
-
... ... @@ -1,0 +1,1 @@ 1 +56.2 KB - Content
- image-20221012174220-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoye - Size
-
... ... @@ -1,0 +1,1 @@ 1 +14.8 KB - Content
- image-20221012174352-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoye - Size
-
... ... @@ -1,0 +1,1 @@ 1 +93.0 KB - Content
- image-20221012184501-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoye - Size
-
... ... @@ -1,0 +1,1 @@ 1 +91.3 KB - Content
- image-20221012184631-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoye - Size
-
... ... @@ -1,0 +1,1 @@ 1 +32.4 KB - Content
- image-20221012184655-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoye - Size
-
... ... @@ -1,0 +1,1 @@ 1 +45.4 KB - Content
- image-20221222113302-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +76.3 KB - Content
- image-20221222114220-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +64.3 KB - Content
- image-20221222134830-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +54.5 KB - Content
- image-20221222140203-4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +91.4 KB - Content
- image-20221222141754-5.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +179.1 KB - Content
- image-20221222141830-6.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +116.7 KB - Content
- image-20221230094246-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +84.9 KB - Content
- image-20230415165254-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +67.2 KB - Content
- image-20230415170404-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +17.9 KB - Content