Changes for page Armbian OS instruction
Last modified by Edwin Chen on 2025/02/26 08:18
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 11 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -15,7 +15,9 @@ 15 15 * LPS8v2 16 16 * MS20 17 17 18 +(% style="display:none" %) (%%) 18 18 20 + 19 19 = 2. Development Guide = 20 20 21 21 ... ... @@ -22,11 +22,9 @@ 22 22 For advanced users to develop Driver/ Linux etc. 23 23 24 24 25 - 26 26 == 2.1 How to recompile LoRaWAN Concentrator Driver ( dragino-fwd package). == 27 27 28 28 29 - 30 30 === (% style="color:blue" %)**Step 1. Clone dragino-fwd package**(%%) === 31 31 32 32 ... ... @@ -43,13 +43,11 @@ 43 43 [[image:image-20220527151010-1.png]] 44 44 45 45 46 - 47 47 === (% style="color:blue" %)**Step 2. Compile dragino_fwd**(%%) === 48 48 49 49 50 50 **After cloning is complete, Run the command starts compiling:** 51 51 52 - 53 53 (% style="background-color:yellow; color:green" %)**Compile HP0C/HP0A fwd: ./hp0z-make-deb.sh c** 54 54 55 55 ... ... @@ -64,7 +64,6 @@ 64 64 [[image:image-20220527154311-4.png||height="385" width="773"]] 65 65 66 66 67 - 68 68 === (% style="color:blue" %)**Step 3. Install the dragino_fwd**(%%) === 69 69 70 70 ... ... @@ -76,7 +76,6 @@ 76 76 [[image:image-20220527154811-5.png]] 77 77 78 78 79 - 80 80 === (% style="color:blue" %)**Step 4. Test**(%%) === 81 81 82 82 ... ... @@ -95,13 +95,10 @@ 95 95 (% style="background-color:yellow; color:green" %)**systemctl stop draginofwd** 96 96 97 97 98 - 99 99 == 2.2 How to clone Complete OS on the EMMC to SD card == 100 100 101 - 102 102 == 2.3 How to flash SD card to (eMMC) device's built-in Memory == 103 103 104 - 105 105 === 2.3.1 Prepare an SD card with OS === 106 106 107 107 ... ... @@ -111,7 +111,7 @@ 111 111 112 112 2. Formatting the SD card (//Make sure the SD card is empty//) 113 113 114 -3. //Download the OS image from **[[release.image>>url:http://repo.dragino.com/release/hp0c-image/]]**: ( File format **dragino-lps8v2-1.7.img** )// 107 +3. //Download the OS image from the **[[release.image>>url:http://repo.dragino.com/release/hp0c-image/]]**: ( File format **dragino-lps8v2-1.7.img** )// 115 115 116 116 4. //A Flash software tool ( Such as v1.7.9 from **[[balenaEtcher>>url:https://www.balena.io/etcher/]]** )// 117 117 ... ... @@ -129,31 +129,36 @@ 129 129 130 130 **Run command:** 131 131 132 -(% style="background-color:yellow;color:green" %) 133 -nand-sata-install 125 +(% style="background-color:yellow; color:green" %)**nand-sata-install** 134 134 135 135 136 136 [[image:image-20220602112051-1.png]] 137 137 138 138 139 -Select the "Boot from eMMC - system on eMMC" 140 140 132 +Select the (% style="color:red" %)**"Boot from eMMC - system on eMMC".** 133 + 141 141 [[image:image-20220602112058-2.png||height="292" width="646"]] 142 142 136 + 143 143 [[image:image-20220602112106-3.png||height="301" width="643"]] 144 144 145 145 146 -Select the "1 ext4" 147 147 141 +Select the (% style="color:red" %)**"1 ext4"** 142 + 148 148 [[image:image-20220602112113-4.png||height="271" width="642"]] 149 149 150 150 146 + 151 151 It takes 4-5 minutes to burn from SD card to eMMC 152 152 153 153 [[image:image-20220602112119-5.png||height="309" width="641"]] 154 154 151 + 155 155 [[image:image-20220602112125-6.png||height="281" width="640"]] 156 156 154 + 157 157 [[image:image-20220602112131-7.png||height="241" width="638"]] 158 158 159 159 ... ... @@ -160,16 +160,226 @@ 160 160 (% style="color:red" %)**Note: After the flash is complete, power off the device and then remove the SD card.** 161 161 162 162 161 +== 2.4 Default Built Version == 163 163 164 -= 3. Package Maintain Note = 165 165 164 +[[image:image-20220902155621-1.png]] 166 166 167 -== 3.1 Default Package Maintain System == 168 168 167 +== 2.5 How to upgrade the nodejs version to the latest. == 169 169 170 -=== 3.1.1 How Package-Auto-Update works? === 171 171 170 +By default, the nodejs uses the pre-install version v12 which is due to Debian the ultra-stable via ultra-old. 172 172 172 +[[image:image-20221112145029-2.png]] 173 + 174 +**If you want to upgrade the nodejs to the latest, please follow to use these commands on the gateway CIL.** 175 + 176 + 177 +#install n, which is an Interactively Manage Your Node.js Versions 178 + 179 +[[image:image-20221112154230-3.png||height="89" width="689"]] 180 + 181 +(% class="box infomessage" %) 182 +((( 183 +**npm install -g n** 184 +))) 185 + 186 + 187 +#Install the latest LTS Node.js release (downloading if necessary) 188 + 189 +[[image:image-20221112154418-4.png||height="184" width="893"]] 190 + 191 +(% class="box infomessage" %) 192 +((( 193 +**n lts** 194 +))) 195 + 196 + 197 +#Remove all downloaded versions except the installed version 198 + 199 +[[image:image-20221112154456-5.png||height="139" width="899"]] 200 + 201 +(% class="box infomessage" %) 202 +((( 203 +**n prune** 204 +))) 205 + 206 + 207 +(% class="box infomessage" %) 208 +((( 209 +**apt remove nodejs -y && apt autoremove -y && reboot** 210 +))) 211 + 212 + 213 +Check the current version 214 + 215 +[[image:image-20221112154724-6.png]] 216 + 217 +(% class="box infomessage" %) 218 +((( 219 +**node -v** 220 +))) 221 + 222 + 223 +== 2.6 How to install Grafana and influxdb == 224 + 225 + 226 +=== **Grafana:** === 227 + 228 + 229 +(% class="box infomessage" %) 230 +((( 231 +curl https:~/~/packages.grafana.com/gpg.key | gpg ~-~-dearmor | sudo tee /usr/share/keyrings/grafana-archive-keyrings.gpg >/dev/null 232 +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 233 +apt update && apt install grafana 234 +))) 235 + 236 + 237 +Check the running status: 238 + 239 + 240 +(% class="box infomessage" %) 241 +((( 242 +systemctl status grafana-server 243 +))) 244 + 245 + 246 +configuration path: 247 + 248 + 249 +(% class="box infomessage" %) 250 +((( 251 +/etc/grafana/grafana.ini 252 +))) 253 + 254 + 255 +=== **Influxdb:** === 256 + 257 + 258 +(% class="box infomessage" %) 259 +((( 260 +curl https:~/~/repos.influxdata.com/influxdb.key | gpg ~-~-dearmor | sudo tee /usr/share/keyrings/influxdb-archive-keyring.gpg >/dev/null 261 +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 262 +apt update && apt install influxdb 263 +))) 264 + 265 + 266 +Check the running status: 267 + 268 + 269 +(% class="box infomessage" %) 270 +((( 271 +systemctl status influxdb 272 +))) 273 + 274 + 275 +configuration path: 276 + 277 + 278 +(% class="box infomessage" %) 279 +((( 280 +/etc/influxdb/influxdb.conf 281 +))) 282 + 283 + 284 +== 2.7 How to install BACnet == 285 + 286 +(% class="box infomessage" %) 287 +((( 288 +wget [[http:~~/~~/dragino.vicp.io:6080/bacnet/dragino-bacnet-apps-hp0c-2023-03-01.deb>>url:http://dragino.vicp.io:6080/bacnet/dragino-bacnet-apps-hp0c-2023-03-01.deb]] 289 +dpkg -i dragino-bacnet-apps-hp0c-2023-03-01.deb 290 +))) 291 + 292 +[[image:image-20230327152105-1.png||height="163" width="933"]] 293 + 294 + 295 +=== 2.7.1 Configure BACnet === 296 + 297 + 298 +After BACnet is installed, run commands to modify BACnet configurations 299 + 300 +Note: device_port and bacnet_ip_port are not set to the same 301 + 302 +(% class="box infomessage" %) 303 +((( 304 +nano /etc/config/bacnet 305 +))) 306 + 307 +Examples: 308 + 309 +(% class="box infomessage" %) 310 +((( 311 +config settings 'general' 312 + option bacnet_ip '10.130.2.80' #The IP address of the BACnetIP network, here basically the same IP as the bbmd address below 313 + option bacnet_ip_port '47808' #As with bbmd_port, the purpose of this is to register a Bacnet Server application as a bbmd registration server 314 + option bbmd_address '10.130.2.80' #bbmd is the BACnet registration server. Only one bbmd server is required in the same ip network 315 + option bbmd_port '47808' #In general, 47808 is used as the default port 316 + option bacnet_dev_count '2' #Here is the number of BACnet devices that need to be simulated, if the number is 2, then the following settings must have 2, which are bacdev_1, bacdev_2 317 + 318 +config settings 'bacdev_1' 319 + option device_name 'LHT65N-1' #The identification name of the bacnet device 320 + option device_id '10001' #The unique identification code in the same network segment of BACnet,Scope is(1 - 4194302) 321 + option device_port '47912' #The IP port occupied by Bacnet when it starts, Scope is (1024 - 65535) 322 + 323 +config settings 'bacdev_2' 324 + option device_name 'LHT65N-2' 325 + option device_id '10002' 326 + option device_port '47913' 327 +))) 328 + 329 +=== 2.7.2 Run BACnet === 330 + 331 + 332 +After the configuration is complete, run the following command to start BACnet, The following are two ways to run BACnet: 333 + 334 +(1)With /etc/config/bacnet configuration, and to run the registration server on the current machine, start it with the following command (configure the /etc/config/bacnet file correctly): 335 + 336 +(% class="box infomessage" %) 337 +((( 338 +bacserver -c -s 339 +))) 340 + 341 +(2)Without /etc/config/bacnet, and to run the registration server on the current machine, start it with the following command: 342 + 343 +(% class="box infomessage" %) 344 +((( 345 +bacserver -s -a 10.130.2.80 -p 47808 346 +))) 347 + 348 +This command simulates two devices, with device IDs 47910 and 47911 349 + 350 +Enter bacserver -h to output help 351 + 352 +(% class="box infomessage" %) 353 +((( 354 +bacserver -h 355 +))) 356 + 357 +[[image:image-20230327154700-3.png]] 358 + 359 +=== 2.7.3 Read devices and modify devices === 360 + 361 + 362 +Enter baccli -h to output help 363 + 364 +(% class="box infomessage" %) 365 +((( 366 +baccli -h 367 +))) 368 + 369 +[[image:image-20230327165836-1.png]] 370 + 371 +Examples: 372 + 373 + 374 += 4. Package Maintain Note = 375 + 376 +== 4.1 Default Package Maintain System == 377 + 378 +=== 4.1.1 How Package-Auto-Update works? === 379 + 380 + 173 173 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. 174 174 175 175 ... ... @@ -191,6 +191,7 @@ 191 191 draginoups ~-~- Miscellaneous between different versions 192 192 193 193 402 + 194 194 (% style="color:blue" %)**Location and changelog for packages**: 195 195 196 196 * Location: http:~/~/repo.dragino.com/release/tool/ ... ... @@ -204,9 +204,10 @@ 204 204 [[image:1661305025451-220.png]] 205 205 206 206 416 + 207 207 (% style="color:blue" %)**Can I disable package-auto-update?** 208 208 209 -You can check the checkbox and click the(% style="color: #037691" %)** ‘SAVE’ **(%%)button to enable or disable the auto-update.419 +You can check the checkbox and click the(% style="color:red" %)** ‘SAVE’ **(%%)button to enable or disable the auto-update. 210 210 211 211 212 212 [[image:1661305258501-636.png]] ... ... @@ -213,10 +213,10 @@ 213 213 214 214 215 215 216 -=== 3.1.2 How to manually update core packages? ===426 +=== 4.1.2 How to manually update core packages? === 217 217 218 218 219 -You can click the (% style="color: #037691" %)**‘Manual Update’**(%%) to update the dragino's packages.429 +You can click the (% style="color:red" %)**‘Manual Update’**(%%) to update the dragino's packages. 220 220 221 221 222 222 [[image:1661305328295-218.png]] ... ... @@ -223,7 +223,7 @@ 223 223 224 224 225 225 226 -=== 3.1.3 How to manually update other packages? ===436 +=== 4.1.3 How to manually update other packages? === 227 227 228 228 229 229 For the other packages, you have to access the device's CLI to do it via the apt command. ... ... @@ -230,26 +230,23 @@ 230 230 231 231 232 232 233 -== 3.2 Set up a 3^^rd^^ party package maintain server ==443 +== 4.2 Set up a 3^^rd^^ party package maintain server == 234 234 445 +=== 4.2.1 Overview === 235 235 236 -=== 3.2.1 Overview === 237 237 238 - 239 239 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. 240 240 241 241 451 +=== 4.2.2 Install Apache2 HTTP server === 242 242 243 -=== 3.2.2 Install Apache2 HTTP server === 244 244 245 - 246 246 (% style="background-color:yellow; color:green" %)**apt install apache2** 247 247 248 248 457 +=== 4.2.3 Creating Package Directories === 249 249 250 -=== 3.2.3 Creating Package Directories === 251 251 252 - 253 253 **~ (% style="background-color:yellow; color:green" %)cd /var/www/html/(%%)** 254 254 255 255 **~ (% style="background-color:yellow; color:green" %)mkdir debian/release/dists/stable/main/binary-armhf/ -p(%%)** ... ... @@ -283,10 +283,9 @@ 283 283 └── dragino ~-~-> (% style="background-color:yellow; color:green" %)**This is the directory to store the packages. User can change it to other name.** 284 284 285 285 493 +=== 4.2.4 Get deb packages === 286 286 287 -=== 3.2.4 Get deb packages === 288 288 289 - 290 290 The deb packages for auto-update can be placed in** (% style="color:blue" %)/var/www/html/debian/release/pool/main/d/dragino/(%%)** 291 291 292 292 Below is an example package(testing-0808.deb) for test purpose: ... ... @@ -297,10 +297,9 @@ 297 297 **~ (% style="background-color:yellow; color:green" %)cp ./testing-0808.deb /var/www/html/debian/release/pool/main/d/dragino/(%%)** 298 298 299 299 506 +=== 4.2.5 Generate Package Index file === 300 300 301 -=== 3.2.5 Generate Package Index file === 302 302 303 - 304 304 (% style="background-color:yellow; color:green" %)**cd /var/www/html/debian/release/** 305 305 306 306 (% style="background-color:yellow; color:green" %)**dpkg-scanpackages pool/ > dists/stable/main/binary-armhf/Packages** ... ... @@ -311,13 +311,12 @@ 311 311 (% 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.** 312 312 313 313 519 +=== 4.2.6 Generate Release file === 314 314 315 -=== 3.2.6 Generate Release file === 316 316 522 +==== (% style="color:blue" %)**Create the generated script:**(%%) ==== 317 317 318 -==== (% style="color:blue" %)Create the generated script:(%%) ==== 319 319 320 - 321 321 (% style="background-color:yellow; color:green" %)**cd /var/www/html/debian/release/dists/stable** 322 322 323 323 ... ... @@ -328,29 +328,27 @@ 328 328 (% style="background-color:yellow; color:green" %)**./generate-release.sh > Release** 329 329 330 330 535 +=== 4.2.7 Sign the Release file with gpg and generating Inrelease file === 331 331 332 -=== 3.2.7 Sign the Release file with gpg and generating Inrelease file === 333 333 538 +==== (% style="color:blue" %)**Make sure auto-update server has gnupg**(%%) ==== 334 334 335 335 336 -==== (% style="color:blue" %)Make sure auto-update server has gnupg(%%) ==== 337 - 338 - 339 339 (% style="background-color:yellow; color:green" %)**apt install gnupg** 340 340 341 341 342 342 343 -==== (% style="color:blue" %)generate gpg key(%%) ==== 545 +==== (% style="color:blue" %)**generate gpg key**(%%) ==== 344 344 345 345 346 346 (% style="background-color:yellow; color:green" %)**gpg -gen-key** 347 347 348 348 349 - **((% style="color:red" %)Note: Fill in the content as required and remember the name and email address)(%%)**551 +(% style="color:red" %)**Note: Fill in the content as required and remember the name and email address.** 350 350 351 351 352 352 353 -==== (% style="color:blue" %)Check the gen-key(%%) ==== 555 +==== (% style="color:blue" %)**Check the gen-key**(%%) ==== 354 354 355 355 356 356 (% style="background-color:yellow; color:green" %)**gen -list-key** ... ... @@ -357,7 +357,7 @@ 357 357 358 358 359 359 360 -==== (% style="color:blue" %)Generate the release.gpg(%%) ==== 562 +==== (% style="color:blue" %)**Generate the release.gpg**(%%) ==== 361 361 362 362 363 363 (% style="background-color:yellow; color:green" %)**cd /var/www/html/debian/release/dists/stable** ... ... @@ -369,7 +369,7 @@ 369 369 370 370 371 371 372 -==== (% style="color:blue" %)Generate the public key(%%) ==== 574 +==== (% style="color:blue" %)**Generate the public key**(%%) ==== 373 373 374 374 375 375 (% style="background-color:yellow; color:green" %)**gpg ~-~-armor ~-~-output <name>.asc ~-~-export <email address>** ... ... @@ -379,20 +379,21 @@ 379 379 380 380 381 381 382 -=== 3.2.8 Add url as apt source in LPS8v2 / MS20 ===584 +=== 4.2.8 Add url as apt source in LPS8v2 / MS20 === 383 383 384 384 385 385 386 -==== (% style="color:blue" %)Add the public key(%%) ==== 588 +==== (% style="color:blue" %)**Add the public key**(%%) ==== 387 387 388 388 389 389 (% style="background-color:yellow; color:green" %)**cp xiao.asc /etc/apt/trusted.gpg.d/** 390 390 593 + 391 391 (% style="color:red" %)**Note: First need to transfer the public key from auto-update server to device.** 392 392 393 393 394 394 395 -==== (% style="color:blue" %)Add the apt source list(%%) ==== 598 +==== (% style="color:blue" %)**Add the apt source list**(%%) ==== 396 396 397 397 398 398 Add the apt source list url and name this as test_server.list ... ... @@ -401,7 +401,7 @@ 401 401 402 402 403 403 404 -==== (% style="color:blue" %)Validate the apt repository(%%) ==== 607 +==== (% style="color:blue" %)**Validate the apt repository**(%%) ==== 405 405 406 406 407 407 Get and install the testing package (download testing-0808.deb and test) ... ... @@ -414,13 +414,12 @@ 414 414 [[image:1661306420449-569.png]] 415 415 416 416 620 +=== 4.2.9 Configure the gateway's auto-upgrade rules === 417 417 418 -=== 3.2.9 Configure the gateway's auto-upgrade rules === 419 419 623 +==== (% style="color:blue" %)**Remove dragino apt source**(%%) ==== 420 420 421 -==== (% style="color:blue" %)Remove dragino apt source(%%) ==== 422 422 423 - 424 424 (% style="background-color:yellow; color:green" %)**/etc/apt/sources.list** 425 425 426 426 ... ... @@ -428,7 +428,7 @@ 428 428 429 429 430 430 431 -==== (% style="color:blue" %)Set up automatic updates(%%) ==== 633 +==== (% style="color:blue" %)**Set up automatic updates**(%%) ==== 432 432 433 433 434 434 (% style="background-color:yellow; color:green" %)**Path : /usr/lib/dragino/dragino-apt-updates** ... ... @@ -440,5 +440,3 @@ 440 440 441 441 442 442 [[image:1661306487761-768.png]] 443 - 444 -
- 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