Show last authors
1 **~ Table of Contents:**
2
3 {{toc/}}
4
5
6
7
8 = 1.  Introduction =
9
10
11 (% style="color:black" %)The ChirpStack open-source LoRaWAN Network Server stack provides open-source components for LoRaWAN networks And the Chirpstack supports the users in building a private LoRaWAN Server. For more info please refer to this [[link>>url:https://www.chirpstack.io/]]
12
13 (((
14 (% style="color:black" %)The dragino gateway can connect the ChirpStack server via Semtech UDP or Semtech Basic Station.
15
16
17 )))
18
19 (% style="color:blue" %)**Prerequisite:**
20
21 **1) Have a Chirstack Server.**
22
23 [[image:image-20220525100058-1.png]]
24
25 ChirpStack home page
26
27
28
29 **2) Gateway model support**
30
31 (% class="box" %)
32 (((
33 (((
34 Semtech UDP : **All Model**
35 Basic Station : [[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]]
36 (% style="color:red" %)**Note** (%%): the firmware needs >[[lgw~~-~~-build-v5.4.1640315898>>url:https://www.dragino.com/downloads/index.php?dir=LoRa_Gateway/LPS8/Firmware/Release/]]  if use the Bais station
37 )))
38 )))
39
40
41 = 2.  Semtech UDP =
42
43 == 2.1  Step 1. Add the Network-servers ==
44
45
46 The network-Servers address varies depending on the ChirpStack server setup environment
47
48 (% class="box" %)
49 (((
50 Windows       ~-~->  Network-server server *  :  localhost:8000
51 Linux  ~-~->  Network-server server *  :  chirpstack-network-server:8000
52 )))
53
54
55 (% style="color:red" %)**If the user cannot add network-Servers, re-check the ChirpStack code or the server building process.**
56
57
58 [[image:image-20220531171609-1.png]]
59
60 Add the Network-servers
61
62
63 == 2.2  Step 2. Create Gateway-profiles ==
64
65
66 [[image:image-20220531171651-2.png]]
67
68 Create Gateway-profiles
69
70
71 == 2.3  Step 3. Create Service-profiles ==
72
73
74 [[image:image-20220531171809-3.png]]
75
76 Create Service-profiles
77
78
79 In Step 3. Create Service-profiles, the above parameters can be set. If necessary, you can set them by yourself. This is only an example.
80
81 (% style="color:red" %)**Note : Before add the gateway, the user needs to complete the preceding three steps.**
82
83 If the user has completed the preceding steps, proceed to the next step.(% style="display:none" %)
84
85
86 == 2.4  Step 4. Add the gateway ==
87
88
89 The example gateway id is: a840411e96744150
90
91 (((
92 (% style="color:red" %)**Note : The Gateway EUI and server addresses must match the ChirpStack configuration.**
93
94
95 )))
96
97 [[image:image-20220531171923-4.png]](% style="display:none" %)
98
99 Add the gateway
100
101
102
103 [[image:image-20220531172031-5.png]]
104
105 Configure the gateway
106
107
108 == 2.5  Step 5. Checking gateway Status ==
109
110
111 [[image:image-20220531172158-6.png]](% style="display:none" %)
112
113
114
115 gateway Status
116
117 [[image:image-20220531172304-7.png]]
118
119 gateway Status
120
121
122 = 3.  Gateway Registration for Basics Station =
123
124 == 3.1  Introduction ==
125
126
127 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.
128
129 ChirpStack Open-Source LoRaWAN® Network Server needs to set up a configuration that can use Semtech BasicStation.
130
131
132 (% style="color:blue" %)**Below list the support products and Requirements:**
133
134 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]]
135 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/]]
136
137 (% style="color:blue" %)**How to set up chirpStack Basic Station**
138
139 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]]
140
141
142 (% style="color:blue" %)**What do you need to prepare**
143
144 A gateway that can access the internet normally
145
146
147 == 3.2  Add Gateway ==
148
149
150 [[image:image-20220524164205-10.png]]
151
152
153 == 3.3  Access the gateway GUI ==
154
155
156 Access the gateway GUI interface of LoRaWAN~-~->LoRaWAN ~-~- Basic Station
157
158 [[image:image-20220524164319-11.png]]
159
160
161 User need to Choose the ChirpStack/Senet ~-~- Basic Station , input Server URI and Upload the TLS Certificate
162
163 (% class="box" %)
164 (((
165 Service Provider  ~-~->  Choose the ChirpStack/Senet ~-~- Basic Station
166
167 LNS URI  ~-~->  Enter the LNS URI address, For example : wss:~/~/xxxx.chirpstack.com:433 or ws:~/~/xxxx.chirpstack.com:3001
168
169 LNS TLS trust  ~-~->  Upload the TLS Certificate
170 )))
171
172 (% class="wikigeneratedid" %)
173 [[image:image-20220524164341-12.png]]
174
175
176 == 3.4  Start Station ==
177
178
179 When the user has finished the configuration, Please click **Sace&Apply** to start station to connect ChirpStack.
180
181
182 == 3.5  Successful Connection ==
183
184
185 If user completes the above steps, which will see live date in the ChirpStack.
186
187 [[image:image-20220524164448-13.png]]
188
189
190 == 3.6  Trouble Shooting ==
191
192
193 User can check the station log in the logread/system log page.
194
195 [[image:image-20220531172837-8.png]]
196
197
198 and recode the station log in the system/Recode log page.
199
200 [[image:image-20220531172857-9.png]]
201
202
203 = 4.  How the gateway connects to Chirpstack v3 via gateway-bridge =
204
205
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-V3.14.6>>https://www.dragino.com/downloads/index.php?dir=LoRa_Gateway/LPS8/Firmware/Release/Chirpstack-gateway-bridge/Chirpstack-Bridge-V3.14.6-Bridge--build-v5.4.1679487778-20230322-2024/]]
210
211 (% style="color:blue" %)**How to set up chirpStack Gateway-bridge**
212
213 Users can check out the ChirpStack gateway-bridge v3 [[link>>https://www.chirpstack.io/gateway-bridge/gateway/dragino/]]
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 The following example does not have configuration certificates:
222
223
224 == 4.1  Configure Packet Forwarder ==
225
226
227 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
228
229 * In the (% style="color:blue" %)**LoRaWAN** (%%)menu, click on (% style="color:blue" %)**LoRaWAN ~-~- Semtech UDP**
230
231 * Make sure the following settings are set:
232
233 * **Service Provider:** //~-~-Custom/Private LoRaWAN~-~-//
234
235 * **LoRaWAN Server Address:** //localhost or 127.0.0.1//
236
237 * **Server port for upstream:** //1700//
238
239 * **Server port for downstream:** //1700//
240
241 Click (% style="color:blue" %)**Save & Apply**.
242
243 [[image:image-20221222114220-2.png||height="748" width="931"]]
244
245
246 == 4.2  Configuring gateway frequency ==
247
248
249 (% style="color:red" %)**Note: Gateway frequencies must match**
250
251 [[image:image-20221222134830-3.png||height="408" width="923"]]
252
253
254 == 4.3  Generate and modify the gateway-bridge configuration file ==
255
256
257 **1)Generate the gateway-bridge configuration file**
258
259 By default, the configuration file is not up-to-date,so the user needs to rebuild the gateway-bridge configuration file.
260
261 Users need to access the command line of the gateway through SSH,Then type the following command:
262
263 (% class="box infomessage" %)
264 (((
265 /opt/chirpstack-gateway-bridge/chirpstack-gateway-bridge configfile > /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml
266 )))
267
268
269 **2)modify the gateway-bridge configuration file**
270
271 The user needs to modify the server address in line 252 in the configuration file
272
273 (% class="box infomessage" %)
274 (((
275 vim /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml
276 )))
277
278 [[image:image-20230415165254-1.png||height="583" width="956"]]
279
280
281 == 4.4  Debug ==
282
283
284 After the above configuration is completed, the user can enter the command to debug the gateway-bridge connection
285
286 (% class="box infomessage" %)
287 (((
288 /opt/chirpstack-gateway-bridge/chirpstack-gateway-bridge ~-~-config /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml
289 )))
290
291 If the gateway-bridge connection is normal, the debug log displays **"connected to mqtt broker"**.
292
293 [[image:image-20230415170404-2.png]]
294
295
296 If the debug log shows "**connection error**", check that the server port or server is correct
297
298 [[image:image-20230415170854-3.png]]
299
300
301 More information can be found on the **[[ChirpStack website>>https://www.chirpstack.io/docs/]]**or **[[Forum>>url:https://forum.chirpstack.io/]]**
302
303
304 == 4.5  (Re)start and stop gateway-bridge ==
305
306
307 Use the following commands to (re)start and stop the ChirpStack Gateway Bridge Service:
308
309 (% class="box infomessage" %)
310 (((
311 **# start**
312
313 /etc/init.d/chirpstack-gateway-bridge start
314
315 **# stop**
316
317 /etc/init.d/chirpstack-gateway-bridge stop
318
319 **# restart**
320
321 /etc/init.d/chirpstack-gateway-bridge restart
322 )))
323
324
325 = 5.  How the gateway connects to Chirpstack v4 via gateway-bridge =
326
327
328 (% style="color:blue" %)**Below list the support products and Requirements:**
329
330 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]]
331 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/]]
332
333 (% style="color:blue" %)**How to set up chirpStack Gateway-bridge**
334
335 Users can check out the ChirpStack gateway-bridge v4 [[link>>https://www.chirpstack.io/docs/chirpstack-gateway-bridge/install/dragino.html]]
336
337
338 (% style="color:blue" %)**What do you need to prepare**
339
340 A gateway that can access the internet normally
341
342
343 == 5.1  Configure Packet Forwarder ==
344
345
346 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
347
348 * In the **LoRaWAN** menu, click on **LoRaWAN ~-~- Semtech UDP**
349 * Make sure the following settings are set:
350 ** **Service Provider:** //~-~-Custom/Private LoRaWAN~-~-//
351 ** **LoRaWAN Server Address:** //localhost or 127.0.0.1//
352 ** **Server port for upstream:** //1700//
353 ** **Server port for downstream:** //1700//
354
355 Click **Save & Apply**.
356
357 [[image:image-20221222114220-2.png||height="748" width="931"]]
358
359
360 == 5.2  Configuring gateway frequency ==
361
362
363 (% style="color:red" %)**Note: Gateway frequencies must match**
364
365 [[image:image-20221222134830-3.png||height="408" width="923"]]
366
367
368 == 5.3  Modify the gateway-bridge configuration file ==
369
370
371 Run the gateway command line command to modify the gateway-bridge configuration file:
372
373 (% class="box infomessage" %)
374 (((
375 root@dragino-1d27d4:~~#  vim /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml
376 )))
377
378 [[image:image-20221222113302-1.png]]
379
380
381 [[image:image-20221222140203-4.png||height="875" width="806"]]
382
383 [[image:image-20221230094246-1.png||height="768" width="783"]]
384
385 (% class="wikigeneratedid" id="H" %)
386 After the modification, run the following command: **/etc/init.d/chirpstack-gateway-bridge restart**
387
388
389 == 5.4  (Re)start and stop gateway-bridge ==
390
391
392 Use the following commands to (re)start and stop the ChirpStack Gateway Bridge Service:
393
394 (% class="box infomessage" %)
395 (((
396 **# start**
397
398 /etc/init.d/chirpstack-gateway-bridge start
399
400 **# stop**
401
402 /etc/init.d/chirpstack-gateway-bridge stop
403
404 **# restart**
405
406 /etc/init.d/chirpstack-gateway-bridge restart
407 )))
408
409
410 == 5.5  Successful Connection ==
411
412
413 [[image:image-20221222141754-5.png||height="488" width="1150"]]
414
415
416 [[image:image-20221222141830-6.png||height="582" width="1153"]]
417
418
419 = 6.  Downlink =
420
421 == 6.1  Convert HEX to Base64 ==
422
423
424 (% 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.**
425
426 **[[Online HEX to Base64 Converter>>https://base64.guru/converter/encode/hex]]:**
427
428 [[image:image-20221010193350-1.png]]
429
430
431
432 **[[Online Base64 to Hex converter>>https://base64.guru/converter/decode/hex]]**
433
434 [[image:image-20221010193621-2.png]]
435
436
437 == 6.2  Chirpstack Downlink Note ==
438
439
440 [[image:image-20220601102543-2.png]]
441
442 **Convert the data to Base64**
443
444 (% style="display:none" %) (%%)
445
446
447 [[image:image-20220531173236-10.png||height="597" width="1215"]]
448
449 **Check ChripStack downlink DataRate**
450
451
452
453 [[image:image-20220525101326-11.png]]
454
455 **Make sure the RX2DR is the same in the end node**
456
457
458 == 6.3  Loraserver Downlink Note ==
459
460
461 User can use MQTT to send downlink payload to ChirpStack to perform downstream to LoRaWAN End
462
463 (((
464 **Below is examples:**
465 )))
466
467 (% class="box" %)
468 (((
469 Connect to your server via MQTT:
470 MQTT Client ID: Any   
471 Protocol:mqtt/tcp   Server IP:loraserver_ip:1883
472 User name: User name Password: password
473 )))
474
475 [[image:image-20220531173419-11.png]]
476
477 (((
478 **MQTT Connect to ChirpStack**
479
480
481
482 )))
483
484 (((
485 **After connect**
486 )))
487
488 (% class="box" %)
489 (((
490 Subscribe : Format:application/ID/device/ Device EUI/rx
491 Example: application/7/device/00aedb3da649cb23/rx
492 )))
493
494 (% class="box" %)
495 (((
496 Publish:
497 Format: Top: application/ID/device/ Device EUI/tx
498 Payload: {"confirmed":true or false,"fPort":XX,"data":"xxxx"}
499 Example: Top: application/7/device/00aedb3da649cb23/tx
500 Payload: {"confirmed":true,"fPort":2,"data":"AwEB"}
501 )))
502
503 [[image:image-20220531173519-12.png]]
504
505 **MQTT Connect to ChirpStack**
506
507
508 **If we want to send downstream hex 030101 to end node, the BASE64 payload is AwEB**
509
510 [[image:image-20220531173658-14.png]]
511
512
513 (((
514 Downlink payload encode javescript code: 可以在网站上运行以下Javsscript代码:
515 )))
516
517 (% class="box" %)
518 (((
519 function sha1_to_base64(sha1)
520 {
521 var digits="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
522 var base64_rep = "";
523 var cnt = 0;
524 var bit_arr = 0;
525 var bit_num = 0;
526 \\ for(var n = 0; n < sha1.length; ++n)
527 {
528 if(sha1[n] >= 'A' && sha1[n] <= 'Z')
529 {
530 ascv = sha1.charCodeAt( n ) - 55;
531 }
532 else if(sha1[n] >= 'a' && sha1[n] <= 'z')
533 {
534 ascv = sha1.charCodeAt( n ) - 87;
535 }
536 else
537 {
538 ascv = sha1.charCodeAt( n ) - 48;
539 }
540 \\ bit_arr = (bit_arr << 4) | ascv;
541 bit_num += 4;
542 if(bit_num >= 6)
543 {
544 bit_num -= 6;        
545 base64_rep += digits[bit_arr >>> bit_num];
546 bit_arr &= ~~(-1 << bit_num);
547 }
548 }
549 \\ if(bit_num > 0)
550 {
551 bit_arr <<= 6 - bit_num;
552 base64_rep += digits[bit_arr];
553 }
554 \\ var padding = base64_rep.length % 4;   
555 \\ if(padding > 0)
556 {
557 for(var n = 0; n < 4 - padding; ++n)
558 {
559 base64_rep += "=";
560 }
561 }
562 return base64_rep;
563 }
564 \\console.log(sha1_to_base64("data"));
565 \\data is downlink payload required by end node.
566 e.g console.log(sha1_to_base64("030101"));
567 ​result: AwEB     
568 AwEB is the 0x030101's base 64 Encode.
569 \\​e.g console.log(sha1_to_base64("030000"));
570 ​result: AwAA     
571 AwAA is 0x030000's base 64 Encode.
572 )))
573
574
575 == 6.3  Add the decode function in Chirpstack for the payload ==
576
577
578 User enters the payload code according to the steps.
579
580 [[image:image-20220531173754-15.png||height="474" width="1334"]]
581
582
583 [[image:image-20220531173856-16.png]]
584
585
586 [[image:image-20220531174120-20.png]]
587
588 [[image:image-20220531174046-19.png]]
589
590
591 = 7.  Multiply Uplink in ChirpStack =
592
593
594 (((
595 nbtrans field is the value to determine the re-transmission time for unconfirmed uplink data.
596 )))
597
598 (((
599 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]]
600
601
602 )))
603
604 [[image:image-20220526091912-7.png||height="241" width="1336"]]
605
606
607 (((
608 nbtrans is a field of ADR message, in unconfirm mode, it tells end node how many time it needs to transmit for every frame.
609
610
611 )))
612
613 [[image:image-20220525104359-21.png]]
614
615 (((
616 Above behaviour will cause the platform shows below two cases of error:
617
618
619 )))
620
621 (((
622 Error of duplicate Frame Counter
623 )))
624
625 [[image:image-20220525104437-22.png]]
626
627
628
629 **Duplicate transmission in short time**
630
631 [[image:image-20220601102430-1.png||height="598" width="1319"]]
632
633
634 == 7.1  Solution ==
635
636
637 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]]
638
639
640 (((
641 (% 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.**
642
643
644 )))
645
646 [[image:image-20220525104532-24.png]]
647
648
649 **installation path:**
650
651 [[image:image-20220525104554-25.png]]
652
653
654
655 (((
656 (% style="color:blue" %)**2.  Environment variable settings:**
657 )))
658
659 (((
660 1) Open Computer -> Properties -> Advanced System Settings -> Environment Variables and add a "new" system variable:
661 )))
662
663 (((
664 2) Set the variable name GOROOT and the variable value C:\Go\ (installation directory)
665 )))
666
667 [[image:image-20220524165433-33.png]]
668
669
670 3) Modify the system variable Path and add C:\Go\bin\:
671
672 [[image:image-20220524165452-34.png]]
673
674
675 User variable setting file generation directory: D:\go:
676
677 [[image:image-20220524165517-35.png]]
678
679
680
681 (% 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.**
682
683 The name of the plugin: Example ADR plugin:
684
685 [[image:image-20220524165540-36.png]]
686
687 Set Nbtrans: Nbtrans=1 (Nbtrans is the number of retransmissions, if it is 1, no retransmission, it is recommended to be 1). To enable it, you need to uncomment.
688
689 [[image:image-20220524165557-37.png]]
690
691
692
693 (% style="color:blue" %)**4.  Compile the ADR configuration file and generate the exe file.**
694
695 1) Create a folder named adr-setting
696
697 2) Open the adr-setting folder
698
699 3) Put adr.setting.go in this folder.
700
701 4) Open the computer cmd and run the following commands in sequencecd adr-setting
702
703 go mod init adr-setting
704
705 go get github.com/brocaar/chirpstack-network-server/v3/adr
706
707 go get github.com/hashicorp/go-plugin
708
709 go get adr-setting
710
711 go build
712
713 5) Finally generate this file:
714
715 [[image:image-20220524165623-38.png]]
716
717
718
719 (% style="color:blue" %)**5.  Add the plugin and run the plugin.**
720
721 (((
722 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:
723 )))
724
725 [[image:image-20220524165641-39.png]]
726
727 (((
728 (((
729 For example: adr_plugins=[“adr-setting”]
730 )))
731 )))
732
733 * (((
734 (((
735 Adding a single plugin format is adr_plugins=["filename"]
736 )))
737 )))
738
739 * (((
740 (((
741 Adding multiple plugins The format is adr_plugins=["file name 1", "file name 2",...]
742 )))
743 )))
744
745 (((
746 (((
747 Finally, re-run chirpstack-network-server.exe, and then select the plugin you just compiled in Device-profiles,
748 )))
749 )))
750
751 [[image:image-20220525104647-26.png]]
752
753 Finish.
754
755
756 = 8.  How to store/get all data traffic for a specific sensor, including raw payload, and uplink/ downlink history. =
757
758
759 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.
760
761 This example will be shown how to store/get all the data in two ways:
762
763 **//1). Chirpstack ~-~-> Node-red//**
764
765
766 [[image:image-20221012184501-1.png]]
767
768
769 Use MQTT in Nore-red to subscribe to topics published by the chirpstack-application and then continuously write to a file
770
771 [[image:image-20221012174220-2.png]]
772
773
774 [[image:image-20221012184655-3.png||height="395" width="1049"]]
775
776
777 **Each message is continuously logged to a specified file**
778
779 [[image:image-20221012174352-3.png]]
780
781
782 **//2). MQTT  Sub//**
783
784 If you don't want to store the information via node-red, you can get the output via the subscribe command.
785
786
787 **If connecting from the same machine, you can use the following command to receive data:**
788
789 (% class="box infomessage" %)
790 (((
791 mosquitto_sub -h localhost -t "application/#" -v
792 )))
793
794
795 **Different host**
796
797 (% class="box infomessage" %)
798 (((
799 mosquitto_sub -h IPADDRESS -p 8883 ~-~-insecure ~-~-cafile ca.pem ~-~-cert cert.pem ~-~-key key.pem -t "application/#" -v
800 )))
801
802 [[image:image-20221012173639-1.png]]
803
804
805 = 9.  Trouble Shooting =
806
807 == 9.1  MIC Mismatch or MIC Failed ==
808
809
810 (((
811 When the device is registered or the device is working normally, the problem of MIC mismatch and MIC failed occurs.
812 )))
813
814 (((
815 Under normal circumstances, users need to change the APPKEY to solve this problem.
816
817
818
819
820 )))
Copyright ©2010-2024 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0