Changes for page Armbian OS instruction

Last modified by Edwin Chen on 2025/02/26 08:18

From version 25.1
edited by Kilight Cao
on 2022/06/02 11:22
Change comment: There is no comment for this version
To version 103.1
edited by Kilight Cao
on 2023/08/31 14:48
Change comment: Uploaded new attachment "image-20230831144800-1.png", version {1}

Summary

Details

Page properties
Content
... ... @@ -2,120 +2,638 @@
2 2  
3 3  {{toc/}}
4 4  
5 -= Overview =
6 6  
6 +
7 +
8 += 1.  Overview =
9 +
10 +
7 7  This is a general instruction for the use of Armbian base OS of Dragino devices. Current models include:
8 8  
9 9  * HP0A
10 10  * HP0C
11 11  * LPS8v2
16 +* MS20
12 12  
13 -= Development Guide =
18 +(% style="display:none" %)
14 14  
15 -For advanced users to develop Driver/ Linux etc
16 16  
21 += 2.  Development Guide =
17 17  
18 -= Advance =
19 19  
20 -== SSH Access for Linux console ==
24 +For advanced users to develop Driver/ Linux etc.
21 21  
22 -Connect the HP0C Ethernet port to your router and HP0C will obtain an IP address from your router. In the router’s management portal, you should be able to find what IP address the router has assigned to the HP0C. You can use this IP to connect the SSH access of HP0C.
23 23  
24 -IP address:  IP address of HP0C
27 +== 2.1  How to recompile LoRaWAN Concentrator Driver ( dragino-fwd package). ==
25 25  
26 -Port:         22
27 27  
28 -User Name:      **root**
30 +=== (% style="color:blue" %)**Step 1. Clone dragino-fwd package**(%%) ===
29 29  
30 -Password:  **draginohp** (default)
31 31  
32 -After logging in, you will be in the Linux console and can enter commands as shown below.
33 +**Requirements:**
33 33  
35 +**~ (% style="background-color:yellow; color:green" %)sudo apt install -y libsqlite3-dev(%%)**
34 34  
35 -== How to burn from SD card to eMMC ==
37 +**~ (% style="background-color:yellow; color:green" %)sudo apt install -y libftdi1-dev(%%)**
36 36  
39 +
40 +**Run command clone dragino-fwd package: (% style="background-color:yellow; color:green" %)git clone https:~/~/github.com/dragino/dragino_fwd_src.git(%%)**
41 +
42 +
43 +[[image:image-20220527151010-1.png]]
44 +
45 +
46 +=== (% style="color:blue" %)**Step 2. Compile dragino_fwd**(%%) ===
47 +
48 +
49 +**After cloning is complete, Run the command starts compiling:**
50 +
51 +(% style="background-color:yellow; color:green" %)**Compile HP0C/HP0A fwd:  ./hp0z-make-deb.sh c**
52 +
53 +
54 +The following example compilers HP0C fwd.
55 +
56 +[[image:image-20220527153913-3.png]]
57 +
58 +
59 +
60 +When the compilation is complete a** (% style="color:blue" %)draginofwd-*.deb(%%) **package is generated.
61 +
62 +[[image:image-20220527154311-4.png||height="385" width="773"]]
63 +
64 +
65 +=== (% style="color:blue" %)**Step 3. Install the dragino_fwd**(%%) ===
66 +
67 +
68 +**Run command:**
69 +
70 +(% style="background-color:yellow; color:green" %)**dpkg -i draginofwd-*.deb **
71 +
72 +
73 +[[image:image-20220527154811-5.png]]
74 +
75 +
76 +=== (% style="color:blue" %)**Step 4. Test**(%%) ===
77 +
78 +
79 +**Check the dragino_fwd log:**
80 +
81 +(% style="background-color:yellow; color:green" %)**journalctl -u draginofwd -f**
82 +
83 +
84 +[[image:image-20220527165221-7.png||height="182" width="931"]]
85 +
86 +
87 +**Start/stop dragino_fwd via systemctl:**
88 +
89 +(% style="background-color:yellow; color:green" %)**systemctl start draginofwd**
90 +
91 +(% style="background-color:yellow; color:green" %)**systemctl stop draginofwd**
92 +
93 +
94 +== 2.2  How to clone Complete OS on the EMMC to SD card ==
95 +
96 +
97 +
98 +
99 +
100 +
101 +
102 +
103 +
104 +
105 +
106 +
107 +
108 +
109 +
110 +
111 +== 2.3  How to flash a new image(OS) to the gateway(LPS8V2) ==
112 +
113 +
114 +Since the gateway has a large system, you need to use the sd card to reflash the system for the gateway
115 +
116 +
117 +//2.3.1: Making an SD card with the new image//
118 +
119 +//2.3.2: Instal the SD card to the gateway//
120 +
121 +//2.3.3: Flash the image to the gateway's built memory from the SD card//
122 +
123 +//2.3.4: Finished the process of flash and power cycle the gateway//
124 +
125 +
126 +==== (% style="background-color:yellow" %)**//Preparations~://**(%%) ====
127 +
128 +1. Prepare an SD card
129 +1. Prepare a card reader device
130 +1. Download the OS image from the [[release.image>>url:http://repo.dragino.com/release/hp0c-image/]]: ( File format dragino-lps8v2-1.7.img )
131 +1. A Flash software tool ( Such as v1.7.9 from [[balenaEtcher>>url:https://www.balena.io/etcher/]] )
132 +1. SD Card [[format>>url:http://repo.dragino.com/release/tool/PanasonicSDFormatter.zip]] tool
133 +
134 +
135 +=== **2.3.1 Making an SD Card with the new image** ===
136 +
137 +
138 +==== Step 1.  Formatting the SD Card ====
139 +
140 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0D/WebHome/image-20220609111027-9.png?rev=1.1||alt="image-20220609111027-9.png" height="318" width="292"]]
141 +
142 +
143 +==== Step 2. Select the OS image ====
144 +
145 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0D/WebHome/image-20220609104907-8.png?rev=1.1||alt="image-20220609104907-8.png" height="435" width="689"]]
146 +
147 +
148 +==== Step 3. Select the target ====
149 +
150 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0D/WebHome/image-20220609104637-2.png?rev=1.1||alt="image-20220609104637-2.png" height="436" width="690"]]
151 +
152 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0D/WebHome/image-20220609104701-3.png?rev=1.1||alt="image-20220609104701-3.png" height="436" width="690"]]
153 +
154 +
155 +==== Step 4. Flash start ====
156 +
157 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0D/WebHome/image-20220609104727-4.png?rev=1.1||alt="image-20220609104727-4.png" height="435" width="689"]]
158 +
159 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0D/WebHome/image-20220609104741-5.png?rev=1.1||alt="image-20220609104741-5.png" height="434" width="687"]]
160 +
161 +
162 +
163 +=== **2.3.2 Instal the SD card to the gateway** ===
164 +
165 +1. Open the device's enclosure, and put the SD card into the SD card slot
166 +
167 +[[image:image-20230712201032-1.png]]
168 +
169 +
170 +2. Power the gateway with 5V2A, and access the gateway's Ethernet port to your PC
171 +
172 +[[image:image-20230712201458-3.png||height="649" width="832"]]
173 +
174 +
175 +Note: The PWR LED on red
176 +
177 + The  LAN LED blink
178 +
179 + The SYS LED on red
180 +
181 +
182 +
183 +=== **3.2.3 Flash the image to the gateway's built memory from the SD card** ===
184 +
185 +
186 +Access the gateway Linux CLI to flash the image to the gateway's built memory
187 +
188 +
189 +* **Use the IP address to access the gateway CLI**
190 +
191 +Users can access the gateway CLI via the SSH protocol. Make sure your PC and the gateway are connected to the same network, then use a SSH tool (such as [[putty>>url:http://www.chiark.greenend.org.uk/~~sgtatham/putty/download.html]] in Windows) to access it.
192 +
193 +
194 +IP address:  IP address of gateway or **Fallback IP**(172.31.255.254)
195 +
196 +Port:  22
197 +
198 +User Name:      (% style="color:blue" %)**root**
199 +
200 +Password:         (% style="color:blue" %)**dragino**(%%) (default)
201 +
202 +//After logging in, you will be in the gateway CLI and can enter commands as shown below.//
203 +
204 +
205 +[[image:image-20230508155357-1.png||height="225" width="634"]]
206 +
207 +
208 +**Run command:**
209 +
210 +(% style="background-color:yellow; color:green" %)**nand-sata-install**
211 +
212 +
37 37  [[image:image-20220602112051-1.png]]
38 38  
215 +
216 +
217 +Select the (% style="color:red" %)**"Boot from eMMC - system on eMMC".**
218 +
39 39  [[image:image-20220602112058-2.png||height="292" width="646"]]
40 40  
221 +
41 41  [[image:image-20220602112106-3.png||height="301" width="643"]]
42 42  
224 +
225 +
226 +Select the (% style="color:red" %)**"1  ext4"**
227 +
43 43  [[image:image-20220602112113-4.png||height="271" width="642"]]
44 44  
230 +
231 +
232 +It takes 4-5 minutes to burn from SD card to eMMC
233 +
45 45  [[image:image-20220602112119-5.png||height="309" width="641"]]
46 46  
236 +
47 47  [[image:image-20220602112125-6.png||height="281" width="640"]]
48 48  
239 +
49 49  [[image:image-20220602112131-7.png||height="241" width="638"]]
50 50  
51 -== How to recompile LoRaWAN Concentrator Driver ( dragino-fwd package). ==
52 52  
53 -=== Step 1. Clone dragino-fwd package ===
243 +(% style="color:red" %)**Note: After the flash is complete, power off the device and then remove the SD card.**
54 54  
55 55  
56 -Run command clone dragino-fwd package:
246 +== 2.4 Default Built Version ==
57 57  
248 +
249 +[[image:image-20220902155621-1.png]]
250 +
251 +
252 +== 2.5 How to upgrade the nodejs version to the latest. ==
253 +
254 +
255 +By default, the nodejs uses the pre-install version v12 which is due to Debian the ultra-stable via ultra-old.
256 +
257 +[[image:image-20221112145029-2.png]]
258 +
259 +**If you want to upgrade the nodejs to the latest, please follow to use these commands on the gateway CIL.**
260 +
261 +
262 +#install n, which is an Interactively Manage Your Node.js Versions
263 +
264 +[[image:image-20221112154230-3.png||height="89" width="689"]]
265 +
58 58  (% class="box infomessage" %)
59 59  (((
60 -git clone https:~/~/github.com/dragino/dragino_fwd_src.git
268 +**npm install -g n**
61 61  )))
62 62  
63 -[[image:image-20220527151010-1.png]]
64 64  
272 +#Install the latest LTS Node.js release (downloading if necessary)
65 65  
66 -=== Step 2. Compile dragino_fwd ===
274 +[[image:image-20221112154418-4.png||height="184" width="893"]]
67 67  
276 +(% class="box infomessage" %)
277 +(((
278 +**n lts**
279 +)))
68 68  
69 -After cloning is complete, Run the command starts compiling:
70 70  
282 +#Remove all downloaded versions except the installed version
283 +
284 +[[image:image-20221112154456-5.png||height="139" width="899"]]
285 +
71 71  (% class="box infomessage" %)
72 72  (((
73 -Compile HP0D/rasspberrypi fwd:  ./hp0z-make-deb.sh d
74 -Compile HP0C/HP0A fwd:  ./hp0z-make-deb.sh c
288 +**n prune**
75 75  )))
76 76  
77 -The following example compilers HP0C fwd.
78 78  
79 -[[image:image-20220527153913-3.png]]
292 +(% class="box infomessage" %)
293 +(((
294 +**apt remove nodejs -y && apt autoremove -y && reboot**
295 +)))
80 80  
81 81  
82 -**When the compilation is complete a draginofwd-*.deb package is generated.**
298 +Check the current version
83 83  
84 -[[image:image-20220527154311-4.png||height="385" width="773"]]
300 +[[image:image-20221112154724-6.png]]
85 85  
302 +(% class="box infomessage" %)
303 +(((
304 +**node -v**
305 +)))
86 86  
87 -=== Step 3. Install the dragino_fwd ===
88 88  
308 +== 2.6 How to install Grafana and influxdb ==
89 89  
90 -Run command:
91 91  
311 +=== **Grafana:** ===
312 +
313 +
92 92  (% class="box infomessage" %)
93 93  (((
94 -dpkg -i draginofwd-*.deb
316 +curl https:~/~/packages.grafana.com/gpg.key | gpg ~-~-dearmor | sudo tee /usr/share/keyrings/grafana-archive-keyrings.gpg >/dev/null
317 +echo "deb [signed-by=/usr/share/keyrings/grafana-archive-keyrings.gpg] https:~/~/packages.grafana.com/oss/deb stable main" | sudo tee /etc/apt/sources.list.d/grafana.list
318 +apt update && apt install grafana
95 95  )))
96 96  
97 -[[image:image-20220527154811-5.png]]
98 98  
322 +Check the running status:
99 99  
100 -=== Step 4. Test ===
101 101  
325 +(% class="box infomessage" %)
326 +(((
327 +systemctl status grafana-server
328 +)))
102 102  
103 -Check the dragino_fwd log:
104 104  
331 +configuration path:
332 +
333 +
105 105  (% class="box infomessage" %)
106 106  (((
107 -journalctl -u draginofwd -f
336 +/etc/grafana/grafana.ini
108 108  )))
109 109  
110 -[[image:image-20220527165221-7.png||height="182" width="931"]]
111 111  
112 -Start/stop dragino_fwd via systemctl:
340 +=== **Influxdb:** ===
113 113  
342 +
114 114  (% class="box infomessage" %)
115 115  (((
116 -systemctl start draginofwd
117 -systemctl stop draginofwd
345 +curl https:~/~/repos.influxdata.com/influxdb.key | gpg ~-~-dearmor | sudo tee /usr/share/keyrings/influxdb-archive-keyring.gpg >/dev/null
346 +echo "deb [signed-by=/usr/share/keyrings/influxdb-archive-keyring.gpg] https:~/~/repos.influxdata.com/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/influxdb.list
347 +apt update && apt install influxdb
118 118  )))
119 119  
120 120  
351 +Check the running status:
352 +
353 +
354 +(% class="box infomessage" %)
355 +(((
356 +systemctl status influxdb
357 +)))
358 +
359 +
360 +configuration path:
361 +
362 +
363 +(% class="box infomessage" %)
364 +(((
365 +/etc/influxdb/influxdb.conf
366 +)))
367 +
368 +
369 += 3.  Package Management =
370 +
371 +== 3.1 Default Package Maintain System ==
372 +
373 +=== 3.1.1  How Package-Auto-Update works? ===
374 +
375 +
376 +By default, LPS8v2 / MS20 series products have an auto-update feature for main packages. The device will connect to Dragino's auto-update server and check for updates. 
377 +
378 +
379 +(% style="color:blue" %)**When devices will check for updates**?
380 +
381 +* Devices will check for updates for every boot.
382 +* Devices will check for updates on every day midnight.
383 +
384 +(% style="color:blue" %)**What packages will be checked for updates**?
385 +
386 +dragino-httpd ~-~- Main Web UI http configuration
387 +
388 +dragino-sid  ~-~- SN write and read tool
389 +
390 +dragino-ui  ~-~- Gateway Web UI package
391 +
392 +draginofwd   ~-~- UDP packet forwarder, LoRa Base Station
393 +
394 +draginoups   ~-~- Miscellaneous between different versions
395 +
396 +
397 +
398 +(% style="color:blue" %)**Location and changelog for packages**:
399 +
400 +* Location: http:~/~/repo.dragino.com/release/tool/
401 +* Changelog: [[http:~~/~~/repo.dragino.com/release/tool/Readme_HP0.txt>>http://repo.dragino.com/release/tool/Readme_HP0.txt]]
402 +
403 +(% style="color:blue" %)**How to view auto-updated log**
404 +
405 +You can view the log on the page of (% style="color:#037691" %)**System ~-~-> Package Management.**
406 +
407 +
408 +[[image:1661305025451-220.png]]
409 +
410 +
411 +
412 +(% style="color:blue" %)**Can I disable package-auto-update?**
413 +
414 +You can check the checkbox and click the(% style="color:red" %)** ‘SAVE’ **(%%)button to enable or disable the auto-update.
415 +
416 +
417 +[[image:1661305258501-636.png]]
418 +
419 +
420 +=== 3.1.2 How to manually update core packages? ===
421 +
422 +
423 +You can click the (% style="color:red" %)**‘Manual Update’**(%%) to update the dragino's packages.
424 +
425 +
426 +[[image:1661305328295-218.png]]
427 +
428 +
429 +=== 3.1.3 How to manually update other packages? ===
430 +
431 +
432 +For the other packages, you have to access the device's CLI to do it via the apt command.
433 +
434 +
435 +== 3.2 Set up a 3^^rd^^ party package maintain server ==
436 +
437 +=== 3.2.1 Overview ===
438 +
439 +
440 +Customers can use their own package maintenance system instead of using the default one from Dragino. They need to set up a package maintenance system for Debian. Lots of instructions are available in Internet, below is a reference instruction.
441 +
442 +
443 +=== 3.2.2 Install Apache2 HTTP server ===
444 +
445 +
446 +(% style="background-color:yellow; color:green" %)**apt install apache2**
447 +
448 +
449 +=== 3.2.3 Creating Package Directories ===
450 +
451 +
452 +**~ (% style="background-color:yellow; color:green" %)cd /var/www/html/(%%)**
453 +
454 +**~ (% style="background-color:yellow; color:green" %)mkdir debian/release/dists/stable/main/binary-armhf/ -p(%%)**
455 +
456 +**~ (% style="background-color:yellow; color:green" %)mkdir debian/release/pool/main/d/dragino/ -p(%%)**
457 +
458 +
459 +**Tree Structure:**
460 +
461 +(% style="color:red" %)**Note: If you are not familiar with updating servers, most directory names are not recommended to be changed.**
462 +
463 +
464 +└── debian
465 +
466 + └── release
467 +
468 + ├── dists
469 +
470 + │   └── stable
471 +
472 + │       └── main
473 +
474 + │           └── binary-armhf
475 +
476 + └── pool
477 +
478 + └── main
479 +
480 + └── d
481 +
482 + └── dragino   ~-~-> (% style="background-color:yellow; color:green" %)**This is the directory to store the packages. User can change it to other name.**
483 +
484 +
485 +=== 3.2.4 Get deb packages ===
486 +
487 +
488 +The deb packages for auto-update can be placed in** (% style="color:blue" %)/var/www/html/debian/release/pool/main/d/dragino/(%%)**
489 +
490 +Below is an example package(testing-0808.deb) for test purpose:
491 +
492 +
493 +**~ (% style="background-color:yellow; color:green" %)wget http:~/~/repo.dragino.com/release/tool/unimportant/testing-0808.deb(%%)**
494 +
495 +**~ (% style="background-color:yellow; color:green" %)cp ./testing-0808.deb /var/www/html/debian/release/pool/main/d/dragino/(%%)**
496 +
497 +
498 +=== 3.2.5 Generate Package Index file ===
499 +
500 +
501 +(% style="background-color:yellow; color:green" %)**cd /var/www/html/debian/release/**
502 +
503 +(% style="background-color:yellow; color:green" %)**dpkg-scanpackages pool/ > dists/stable/main/binary-armhf/Packages**
504 +
505 +(% style="background-color:yellow; color:green" %)**cat dists/stable/main/binary-armhf/Packages | gzip -9 > dists/stable/main/binary-armhf/Packages.gz**
506 +
507 +
508 +(% style="color:red" %)**Note: Every time a package has been update, above comments need to be executed in the server to get the up-to-date package list.**
509 +
510 +
511 +=== 3.2.6 Generate Release file ===
512 +
513 +
514 +==== (% style="color:blue" %)**Create the generated script:**(%%) ====
515 +
516 +
517 +(% style="background-color:yellow; color:green" %)**cd /var/www/html/debian/release/dists/stable**
518 +
519 +
520 +(% style="background-color:yellow; color:green" %)**wget [[http:~~/~~/repo.dragino.com/release/tool/unimportant/generate-release.sh>>url:http://repo.dragino.com/release/tool/unimportant/generate-release.sh]]**
521 +
522 +(% style="background-color:yellow; color:green" %)**chmod + x ./generate-release.sh**
523 +
524 +(% style="background-color:yellow; color:green" %)**./generate-release.sh > Release**
525 +
526 +
527 +=== 3.2.7 Sign the Release file with gpg and generating Inrelease file ===
528 +
529 +
530 +==== (% style="color:blue" %)**Make sure auto-update server has gnupg**(%%) ====
531 +
532 +
533 +(% style="background-color:yellow; color:green" %)**apt install gnupg**
534 +
535 +
536 +
537 +==== (% style="color:blue" %)**generate gpg key**(%%) ====
538 +
539 +
540 +(% style="background-color:yellow; color:green" %)**gpg -gen-key**
541 +
542 +
543 +(% style="color:red" %)**Note: Fill in the content as required and remember the name and email address.**
544 +
545 +
546 +
547 +==== (% style="color:blue" %)**Check the gen-key**(%%) ====
548 +
549 +
550 +(% style="background-color:yellow; color:green" %)**gen -list-key**
551 +
552 +
553 +
554 +==== (% style="color:blue" %)**Generate the release.gpg**(%%) ====
555 +
556 +
557 +(% style="background-color:yellow; color:green" %)**cd /var/www/html/debian/release/dists/stable**
558 +
559 +(% style="background-color:yellow; color:green" %)**gpg ~-~-armor ~-~-detach-sign -o Release.gpg Release**
560 +
561 +
562 +(% style="background-color:yellow; color:green" %)**gpg ~-~-clearsign -o InRelease Release**
563 +
564 +
565 +
566 +==== (% style="color:blue" %)**Generate the public key**(%%) ====
567 +
568 +
569 +(% style="background-color:yellow; color:green" %)**gpg ~-~-armor ~-~-output <name>.asc ~-~-export <email address>**
570 +
571 +
572 +**example: gpg ~-~-armor ~-~-output xiao.asc ~-~-export **[[xiaoye@dragino.cc>>mailto:xiaoye@dragino.cc]]
573 +
574 +
575 +
576 +=== 3.2.8 Add url as apt source in LPS8v2 / MS20 ===
577 +
578 +
579 +
580 +==== (% style="color:blue" %)**Add the public key**(%%) ====
581 +
582 +
583 +(% style="background-color:yellow; color:green" %)**cp xiao.asc /etc/apt/trusted.gpg.d/**
584 +
585 +
586 +(% style="color:red" %)**Note: First need to transfer the public key from auto-update server to device.**
587 +
588 +
589 +
590 +==== (% style="color:blue" %)**Add the apt source list**(%%) ====
591 +
592 +
593 +Add the apt source list url and name this as test_server.list
594 +
595 +(% style="background-color:yellow; color:green" %)**echo "deb http:~/~/<IP_address or hostname>/debian/release stable main" | tee /etc/apt/sources.list.d/test_server.list**
596 +
597 +
598 +
599 +==== (% style="color:blue" %)**Validate the apt repository**(%%) ====
600 +
601 +
602 +Get and install the testing package (download testing-0808.deb and test)
603 +
604 +(% style="background-color:yellow; color:green" %)**apt update && apt install testing**
605 +
606 +
607 +Example output:
608 +
609 +[[image:1661306420449-569.png]]
610 +
611 +
612 +=== 3.2.9 Configure the gateway's auto-upgrade rules ===
613 +
614 +
615 +==== (% style="color:blue" %)**Remove dragino apt source**(%%) ====
616 +
617 +
618 +(% style="background-color:yellow; color:green" %)**/etc/apt/sources.list**
619 +
620 +
621 +[[image:1661306460134-112.png]]
622 +
623 +
624 +
625 +==== (% style="color:blue" %)**Set up automatic updates**(%%) ====
626 +
627 +
628 +(% style="background-color:yellow; color:green" %)**Path : /usr/lib/dragino/dragino-apt-updates**
629 +
630 +
631 +The device performs automatic updates from this script,
632 +
633 +But it will now only look for dragino as a keyword, so you need to replace the keyword dragino with your own keyword.
634 +
635 +
636 +[[image:1661306487761-768.png]]
637 +
638 +
121 121  
1661305025451-220.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +247.0 KB
Content
1661305258501-636.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +115.4 KB
Content
1661305321820-965.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +78.3 KB
Content
1661305328295-218.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +78.3 KB
Content
1661306420449-569.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +237.0 KB
Content
1661306460134-112.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +146.8 KB
Content
1661306487761-768.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +291.9 KB
Content
image-20220609101627-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +14.7 KB
Content
image-20220609101638-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +16.3 KB
Content
image-20220609101748-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +26.1 KB
Content
image-20220609101820-4.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +20.4 KB
Content
image-20220609101843-5.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +18.7 KB
Content
image-20220609101905-6.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +19.8 KB
Content
image-20220609101944-7.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +46.2 KB
Content
image-20220609102257-8.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +22.9 KB
Content
image-20220609102320-9.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +22.9 KB
Content
image-20220609102911-10.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +63.7 KB
Content
image-20220609103538-11.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +17.7 KB
Content
image-20220609103619-12.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +17.6 KB
Content
image-20220609104104-13.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +45.3 KB
Content
image-20220902155621-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Edwin
Size
... ... @@ -1,0 +1,1 @@
1 +27.7 KB
Content
image-20221112145017-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoye
Size
... ... @@ -1,0 +1,1 @@
1 +1.9 KB
Content
image-20221112145029-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoye
Size
... ... @@ -1,0 +1,1 @@
1 +3.3 KB
Content
image-20221112154230-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoye
Size
... ... @@ -1,0 +1,1 @@
1 +5.2 KB
Content
image-20221112154418-4.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoye
Size
... ... @@ -1,0 +1,1 @@
1 +18.2 KB
Content
image-20221112154456-5.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoye
Size
... ... @@ -1,0 +1,1 @@
1 +14.6 KB
Content
image-20221112154724-6.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoye
Size
... ... @@ -1,0 +1,1 @@
1 +3.2 KB
Content
image-20230327152105-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +27.5 KB
Content
image-20230327152431-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +47.5 KB
Content
image-20230327154700-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +26.7 KB
Content
image-20230327165836-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +17.1 KB
Content
image-20230327171824-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +46.1 KB
Content
image-20230327174537-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +8.8 KB
Content
image-20230327174556-4.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +16.0 KB
Content
image-20230327174853-5.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +20.0 KB
Content
image-20230508155357-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +24.3 KB
Content
image-20230712201032-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoye
Size
... ... @@ -1,0 +1,1 @@
1 +872.4 KB
Content
image-20230712201424-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoye
Size
... ... @@ -1,0 +1,1 @@
1 +872.4 KB
Content
image-20230712201458-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoye
Size
... ... @@ -1,0 +1,1 @@
1 +854.1 KB
Content
image-20230831144800-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +86.9 KB
Content