<
From version < 95.4 >
edited by Xiaoling
on 2023/03/28 08:47
To version < 70.6 >
edited by Xiaoling
on 2022/08/24 10:35
>
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -15,9 +15,7 @@
15 15  * LPS8v2
16 16  * MS20
17 17  
18 -(% style="display:none" %)
19 19  
20 -
21 21  = 2.  Development Guide =
22 22  
23 23  
... ... @@ -24,9 +24,11 @@
24 24  For advanced users to develop Driver/ Linux etc.
25 25  
26 26  
25 +
27 27  == 2.1  How to recompile LoRaWAN Concentrator Driver ( dragino-fwd package). ==
28 28  
29 29  
29 +
30 30  === (% style="color:blue" %)**Step 1. Clone dragino-fwd package**(%%) ===
31 31  
32 32  
... ... @@ -43,11 +43,13 @@
43 43  [[image:image-20220527151010-1.png]]
44 44  
45 45  
46 +
46 46  === (% style="color:blue" %)**Step 2. Compile dragino_fwd**(%%) ===
47 47  
48 48  
49 49  **After cloning is complete, Run the command starts compiling:**
50 50  
52 +
51 51  (% style="background-color:yellow; color:green" %)**Compile HP0C/HP0A fwd:  ./hp0z-make-deb.sh c**
52 52  
53 53  
... ... @@ -62,6 +62,7 @@
62 62  [[image:image-20220527154311-4.png||height="385" width="773"]]
63 63  
64 64  
67 +
65 65  === (% style="color:blue" %)**Step 3. Install the dragino_fwd**(%%) ===
66 66  
67 67  
... ... @@ -73,6 +73,7 @@
73 73  [[image:image-20220527154811-5.png]]
74 74  
75 75  
79 +
76 76  === (% style="color:blue" %)**Step 4. Test**(%%) ===
77 77  
78 78  
... ... @@ -91,10 +91,13 @@
91 91  (% style="background-color:yellow; color:green" %)**systemctl stop draginofwd**
92 92  
93 93  
98 +
94 94  == 2.2  How to clone Complete OS on the EMMC to SD card ==
95 95  
101 +
96 96  == 2.3  How to flash SD card to (eMMC) device's built-in Memory ==
97 97  
104 +
98 98  === 2.3.1 Prepare an SD card with OS ===
99 99  
100 100  
... ... @@ -104,7 +104,7 @@
104 104  
105 105  2. Formatting the SD card (//Make sure the SD card is empty//)
106 106  
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** )//
114 +3. //Download the OS image from **[[release.image>>url:http://repo.dragino.com/release/hp0c-image/]]**: ( File format **dragino-lps8v2-1.7.img** )//
108 108  
109 109  4. //A Flash software tool ( Such as v1.7.9 from **[[balenaEtcher>>url:https://www.balena.io/etcher/]]** )//
110 110  
... ... @@ -128,30 +128,24 @@
128 128  [[image:image-20220602112051-1.png]]
129 129  
130 130  
138 +Select the "Boot from eMMC - system on eMMC"
131 131  
132 -Select the (% style="color:red" %)**"Boot from eMMC - system on eMMC".**
133 -
134 134  [[image:image-20220602112058-2.png||height="292" width="646"]]
135 135  
136 -
137 137  [[image:image-20220602112106-3.png||height="301" width="643"]]
138 138  
139 139  
145 +Select the "1  ext4"
140 140  
141 -Select the (% style="color:red" %)**"1  ext4"**
142 -
143 143  [[image:image-20220602112113-4.png||height="271" width="642"]]
144 144  
145 145  
146 -
147 147  It takes 4-5 minutes to burn from SD card to eMMC
148 148  
149 149  [[image:image-20220602112119-5.png||height="309" width="641"]]
150 150  
151 -
152 152  [[image:image-20220602112125-6.png||height="281" width="640"]]
153 153  
154 -
155 155  [[image:image-20220602112131-7.png||height="241" width="638"]]
156 156  
157 157  
... ... @@ -158,265 +158,13 @@
158 158  (% style="color:red" %)**Note: After the flash is complete, power off the device and then remove the SD card.**
159 159  
160 160  
161 -== 2.4 Default Built Version ==
162 162  
163 += 3. Package Maintain Note =
163 163  
164 -[[image:image-20220902155621-1.png]]
165 165  
166 -
167 -== 2.5 How to upgrade the nodejs version to the latest. ==
168 -
169 -
170 -By default, the nodejs uses the pre-install version v12 which is due to Debian the ultra-stable via ultra-old.
171 -
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 -
287 -(% class="box infomessage" %)
288 -(((
289 -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]]
290 -dpkg -i dragino-bacnet-apps-hp0c-2023-03-01.deb
291 -)))
292 -
293 -[[image:image-20230327152105-1.png||height="163" width="933"]]
294 -
295 -
296 -=== 2.7.1 Configure BACnet ===
297 -
298 -
299 -After BACnet is installed, run commands to modify BACnet configurations
300 -
301 -(% style="color:red" %)**Note: device_port and bacnet_ip_port are not set to the same**
302 -
303 -(% class="box infomessage" %)
304 -(((
305 -nano /etc/config/bacnet
306 -)))
307 -
308 -**Examples:**
309 -
310 -(% class="box infomessage" %)
311 -(((
312 -config settings 'general'
313 - option bacnet_ip '10.130.2.80'  #The IP address of the BACnetIP network, here basically the same IP as the bbmd address below
314 - 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
315 - option bbmd_address '10.130.2.80'  #bbmd is the BACnet registration server. Only one bbmd server is required in the same ip network
316 - option bbmd_port '47808'  #In general, 47808 is used as the default port
317 - 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
318 -
319 -config settings 'bacdev_1'
320 - option device_name 'LHT65N-1'  #The identification name of the bacnet device
321 - option device_id '10001'  #The unique identification code in the same network segment of BACnet,Scope is(1 - 4194302)
322 - option device_port '47912'  #The IP port occupied by Bacnet when it starts, Scope is (1024 - 65535)
323 -
324 -config settings 'bacdev_2'
325 - option device_name 'LHT65N-2'
326 - option device_id '10002'
327 - option device_port '47913'  
328 -)))
329 -
330 -
331 -=== 2.7.2 Run BACnet ===
332 -
333 -
334 -After the configuration is complete, run the following command to start BACnet, The following are two ways to run BACnet:
335 -
336 -(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):
337 -
338 -(% class="box infomessage" %)
339 -(((
340 -bacserver -c -s
341 -)))
342 -
343 -(2) Without /etc/config/bacnet, and to run the registration server on the current machine, start it with the following command:
344 -
345 -(% class="box infomessage" %)
346 -(((
347 -bacserver -s -a 10.130.2.80 -p 47808
348 -)))
349 -
350 -This command simulates two devices, with device IDs 47910 and 47911
351 -
352 -Enter bacserver -h to output help
353 -
354 -(% class="box infomessage" %)
355 -(((
356 -bacserver -h
357 -)))
358 -
359 -[[image:image-20230327154700-3.png]]
360 -
361 -
362 -=== 2.7.3 Read devices and modify devices ===
363 -
364 -
365 -Enter baccli -h to output help
366 -
367 -(% class="box infomessage" %)
368 -(((
369 -baccli -h
370 -)))
371 -
372 -[[image:image-20230327165836-1.png]]
373 -
374 -Examples:
375 -
376 -(1)List the current Bacnet devices:
377 -
378 -(% class="box infomessage" %)
379 -(((
380 -baccli -l -a
381 -)))
382 -
383 -[[image:image-20230327174537-3.png]]
384 -
385 -(2)List device information based on device ID:
386 -
387 -(% class="box infomessage" %)
388 -(((
389 -baccli -l -i id
390 -)))
391 -
392 -[[image:image-20230327174556-4.png]]
393 -
394 -(3)List the device details by device ID:
395 -
396 -(% class="box infomessage" %)
397 -(((
398 -baccli -l -v -i id
399 -)))
400 -
401 -(4) Modify the specified attribute value based on the device ID:
402 -
403 -(% class="box infomessage" %)
404 -(((
405 -baccli -i id -p prop -w value
406 -)))
407 -
408 -[[image:image-20230327174853-5.png]]
409 -
410 -
411 -The user can check the data of the device by using the **[[yabe BACnet tool>>https://sourceforge.net/projects/yetanotherbacnetexplorer/]]**
412 -
413 -[[image:image-20230327171824-2.png]]
414 -
415 -= =
416 -
417 -
418 418  == 3.1 Default Package Maintain System ==
419 419  
168 +
420 420  === 3.1.1 How Package-Auto-Update works? ===
421 421  
422 422  
... ... @@ -441,7 +441,6 @@
441 441  draginoups   ~-~- Miscellaneous between different versions
442 442  
443 443  
444 -
445 445  (% style="color:blue" %)**Location and changelog for packages**:
446 446  
447 447  * Location: http:~/~/repo.dragino.com/release/tool/
... ... @@ -455,24 +455,25 @@
455 455  [[image:1661305025451-220.png]]
456 456  
457 457  
458 -
459 459  (% style="color:blue" %)**Can I disable package-auto-update?**
460 460  
461 -You can check the checkbox and click the(% style="color:red" %)** ‘SAVE’ **(%%)button to enable or disable the auto-update.
208 +You can check the checkbox and click the(% style="color:#037691" %)** ‘SAVE’ **(%%)button to enable or disable the auto-update.
462 462  
463 463  
464 464  [[image:1661305258501-636.png]]
465 465  
466 466  
214 +
467 467  === 3.1.2 How to manually update core packages? ===
468 468  
469 469  
470 -You can click the (% style="color:red" %)**‘Manual Update’**(%%) to update the dragino's packages.
218 +You can click the (% style="color:#037691" %)**‘Manual Update’**(%%) to update the dragino's packages.
471 471  
472 472  
473 473  [[image:1661305328295-218.png]]
474 474  
475 475  
224 +
476 476  === 3.1.3 How to manually update other packages? ===
477 477  
478 478  
... ... @@ -479,8 +479,10 @@
479 479  For the other packages, you have to access the device's CLI to do it via the apt command.
480 480  
481 481  
231 +
482 482  == 3.2 Set up a 3^^rd^^ party package maintain server ==
483 483  
234 +
484 484  === 3.2.1 Overview ===
485 485  
486 486  
... ... @@ -487,6 +487,7 @@
487 487  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.
488 488  
489 489  
241 +
490 490  === 3.2.2 Install Apache2 HTTP server ===
491 491  
492 492  
... ... @@ -493,6 +493,7 @@
493 493  (% style="background-color:yellow; color:green" %)**apt install apache2**
494 494  
495 495  
248 +
496 496  === 3.2.3 Creating Package Directories ===
497 497  
498 498  
... ... @@ -529,6 +529,7 @@
529 529   └── dragino   ~-~-> (% style="background-color:yellow; color:green" %)**This is the directory to store the packages. User can change it to other name.**
530 530  
531 531  
285 +
532 532  === 3.2.4 Get deb packages ===
533 533  
534 534  
... ... @@ -542,6 +542,7 @@
542 542  **~ (% style="background-color:yellow; color:green" %)cp ./testing-0808.deb /var/www/html/debian/release/pool/main/d/dragino/(%%)**
543 543  
544 544  
299 +
545 545  === 3.2.5 Generate Package Index file ===
546 546  
547 547  
... ... @@ -555,10 +555,11 @@
555 555  (% 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.**
556 556  
557 557  
313 +
558 558  === 3.2.6 Generate Release file ===
559 559  
560 560  
561 -==== (% style="color:blue" %)**Create the generated script:**(%%) ====
317 +==== (% style="color:blue" %)Create the generated script:(%%) ====
562 562  
563 563  
564 564  (% style="background-color:yellow; color:green" %)**cd /var/www/html/debian/release/dists/stable**
... ... @@ -571,27 +571,29 @@
571 571  (% style="background-color:yellow; color:green" %)**./generate-release.sh > Release**
572 572  
573 573  
330 +
574 574  === 3.2.7 Sign the Release file with gpg and generating Inrelease file ===
575 575  
576 576  
577 -==== (% style="color:blue" %)**Make sure auto-update server has gnupg**(%%) ====
578 578  
335 +==== (% style="color:blue" %)Make sure auto-update server has gnupg(%%) ====
579 579  
337 +
580 580  (% style="background-color:yellow; color:green" %)**apt install gnupg**
581 581  
582 582  
583 583  
584 -==== (% style="color:blue" %)**generate gpg key**(%%) ====
342 +==== (% style="color:blue" %)generate gpg key(%%) ====
585 585  
586 586  
587 587  (% style="background-color:yellow; color:green" %)**gpg -gen-key**
588 588  
589 589  
590 -(% style="color:red" %)**Note: Fill in the content as required and remember the name and email address.**
348 +**((% style="color:red" %)Note: Fill in the content as required and remember the name and email address)(%%)**
591 591  
592 592  
593 593  
594 -==== (% style="color:blue" %)**Check the gen-key**(%%) ====
352 +==== (% style="color:blue" %)Check the gen-key(%%) ====
595 595  
596 596  
597 597  (% style="background-color:yellow; color:green" %)**gen -list-key**
... ... @@ -598,7 +598,7 @@
598 598  
599 599  
600 600  
601 -==== (% style="color:blue" %)**Generate the release.gpg**(%%) ====
359 +==== (% style="color:blue" %)Generate the release.gpg(%%) ====
602 602  
603 603  
604 604  (% style="background-color:yellow; color:green" %)**cd /var/www/html/debian/release/dists/stable**
... ... @@ -610,7 +610,7 @@
610 610  
611 611  
612 612  
613 -==== (% style="color:blue" %)**Generate the public key**(%%) ====
371 +==== (% style="color:blue" %)Generate the public key(%%) ====
614 614  
615 615  
616 616  (% style="background-color:yellow; color:green" %)**gpg ~-~-armor ~-~-output <name>.asc ~-~-export <email address>**
... ... @@ -624,17 +624,16 @@
624 624  
625 625  
626 626  
627 -==== (% style="color:blue" %)**Add the public key**(%%) ====
385 +==== (% style="color:blue" %)Add the public key(%%) ====
628 628  
629 629  
630 630  (% style="background-color:yellow; color:green" %)**cp xiao.asc /etc/apt/trusted.gpg.d/**
631 631  
632 -
633 633  (% style="color:red" %)**Note: First need to transfer the public key from auto-update server to device.**
634 634  
635 635  
636 636  
637 -==== (% style="color:blue" %)**Add the apt source list**(%%) ====
394 +==== (% style="color:blue" %)Add the apt source list(%%) ====
638 638  
639 639  
640 640  Add the apt source list url and name this as test_server.list
... ... @@ -643,7 +643,7 @@
643 643  
644 644  
645 645  
646 -==== (% style="color:blue" %)**Validate the apt repository**(%%) ====
403 +==== (% style="color:blue" %)Validate the apt repository(%%) ====
647 647  
648 648  
649 649  Get and install the testing package (download testing-0808.deb and test)
... ... @@ -656,10 +656,11 @@
656 656  [[image:1661306420449-569.png]]
657 657  
658 658  
416 +
659 659  === 3.2.9 Configure the gateway's auto-upgrade rules ===
660 660  
661 661  
662 -==== (% style="color:blue" %)**Remove dragino apt source**(%%) ====
420 +==== (% style="color:blue" %)Remove dragino apt source(%%) ====
663 663  
664 664  
665 665  (% style="background-color:yellow; color:green" %)**/etc/apt/sources.list**
... ... @@ -669,7 +669,7 @@
669 669  
670 670  
671 671  
672 -==== (% style="color:blue" %)**Set up automatic updates**(%%) ====
430 +==== (% style="color:blue" %)Set up automatic updates(%%) ====
673 673  
674 674  
675 675  (% style="background-color:yellow; color:green" %)**Path : /usr/lib/dragino/dragino-apt-updates**
... ... @@ -682,5 +682,4 @@
682 682  
683 683  [[image:1661306487761-768.png]]
684 684  
685 -
686 686  
image-20220902155621-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Edwin
Size
... ... @@ -1,1 +1,0 @@
1 -27.7 KB
Content
image-20221112145017-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoye
Size
... ... @@ -1,1 +1,0 @@
1 -1.9 KB
Content
image-20221112145029-2.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoye
Size
... ... @@ -1,1 +1,0 @@
1 -3.3 KB
Content
image-20221112154230-3.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoye
Size
... ... @@ -1,1 +1,0 @@
1 -5.2 KB
Content
image-20221112154418-4.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoye
Size
... ... @@ -1,1 +1,0 @@
1 -18.2 KB
Content
image-20221112154456-5.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoye
Size
... ... @@ -1,1 +1,0 @@
1 -14.6 KB
Content
image-20221112154724-6.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoye
Size
... ... @@ -1,1 +1,0 @@
1 -3.2 KB
Content
image-20230327152105-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Kilight
Size
... ... @@ -1,1 +1,0 @@
1 -27.5 KB
Content
image-20230327152431-2.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Kilight
Size
... ... @@ -1,1 +1,0 @@
1 -47.5 KB
Content
image-20230327154700-3.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Kilight
Size
... ... @@ -1,1 +1,0 @@
1 -26.7 KB
Content
image-20230327165836-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Kilight
Size
... ... @@ -1,1 +1,0 @@
1 -17.1 KB
Content
image-20230327171824-2.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Kilight
Size
... ... @@ -1,1 +1,0 @@
1 -46.1 KB
Content
image-20230327174537-3.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Kilight
Size
... ... @@ -1,1 +1,0 @@
1 -8.8 KB
Content
image-20230327174556-4.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Kilight
Size
... ... @@ -1,1 +1,0 @@
1 -16.0 KB
Content
image-20230327174853-5.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Kilight
Size
... ... @@ -1,1 +1,0 @@
1 -20.0 KB
Content
Copyright ©2010-2022 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0