Changes for page Notes for ChirpStack
Last modified by Edwin Chen on 2025/01/30 09:53
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 10 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Xiaoye1 +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,7 +86,6 @@ 86 86 If the user has completed the preceding steps, proceed to the next step.(% style="display:none" %) 87 87 88 88 89 - 90 90 == 2.4 Step 4. Add the gateway == 91 91 92 92 ... ... @@ -109,7 +109,6 @@ 109 109 Configure the gateway 110 110 111 111 112 - 113 113 == 2.5 Step 5. Checking gateway Status == 114 114 115 115 ... ... @@ -124,10 +124,8 @@ 124 124 gateway Status 125 125 126 126 127 - 128 128 = 3. Gateway Registration for Basics Station = 129 129 130 - 131 131 == 3.1 Introduction == 132 132 133 133 ... ... @@ -151,7 +151,6 @@ 151 151 A gateway that can access the internet normally 152 152 153 153 154 - 155 155 == 3.2 Add Gateway == 156 156 157 157 ... ... @@ -195,7 +195,6 @@ 195 195 [[image:image-20220524164448-13.png]] 196 196 197 197 198 - 199 199 == 3.6 Trouble Shooting == 200 200 201 201 ... ... @@ -209,47 +209,142 @@ 209 209 [[image:image-20220531172857-9.png]] 210 210 211 211 203 += 4. How the gateway connects to Chirpstack v4 via gateway-bridge = 212 212 213 -= 4. Downlink = 214 214 215 -(% class="wikigeneratedid" %) 216 -== 4.1 Convert HEX to Base64 == 206 +(% style="color:blue" %)**Below list the support products and Requirements:** 217 217 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-gateway-bridge>>url:https://www.dragino.com/downloads/index.php?dir=LoRa_Gateway/LPS8/Firmware/Release/Chirpstack-gateway-bridge/]] 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 + 218 218 (% 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.** 219 219 220 -[[Online HEX to Base64 Converter>>https://base64.guru/converter/encode/hex]]: 304 +**[[Online HEX to Base64 Converter>>https://base64.guru/converter/encode/hex]]:** 221 221 222 222 [[image:image-20221010193350-1.png]] 223 223 224 224 225 -[[Online Base64 to Hex converter>>https://base64.guru/converter/decode/hex]] 226 226 310 +**[[Online Base64 to Hex converter>>https://base64.guru/converter/decode/hex]]** 311 + 227 227 [[image:image-20221010193621-2.png]] 228 228 229 229 315 +== 5.2 Chirpstack Downlink Note == 230 230 231 -== 4.2 Chirpstack Downlink Note == 232 232 233 - 234 234 [[image:image-20220601102543-2.png]] 235 235 236 -Convert the data to Base64 320 +**Convert the data to Base64** 237 237 322 +(% style="display:none" %) (%%) 238 238 239 -[[image:image-20220531173236-10.png]] 240 240 241 - Check ChripStackdownlink DataRate325 +[[image:image-20220531173236-10.png||height="597" width="1215"]] 242 242 327 +**Check ChripStack downlink DataRate** 243 243 244 -[[image:image-20220525101326-11.png]] 245 245 246 -Make sure the RX2DR is the same in the end node 247 247 331 +[[image:image-20220525101326-11.png]] 248 248 333 +**Make sure the RX2DR is the same in the end node** 249 249 250 -== 4.3 Loraserver Downlink Note == 251 251 336 +== 5.3 Loraserver Downlink Note == 252 252 338 + 253 253 User can use MQTT to send downlink payload to ChirpStack to perform downstream to LoRaWAN End 254 254 255 255 ((( ... ... @@ -267,7 +267,7 @@ 267 267 [[image:image-20220531173419-11.png]] 268 268 269 269 ((( 270 -MQTT Connect to ChirpStack 356 +**MQTT Connect to ChirpStack** 271 271 272 272 273 273 ... ... @@ -294,10 +294,10 @@ 294 294 295 295 [[image:image-20220531173519-12.png]] 296 296 297 -MQTT Connect to ChirpStack 383 +**MQTT Connect to ChirpStack** 298 298 299 299 300 -If we want to send downstream hex 030101 to end node, the BASE64 payload is AwEB 386 +**If we want to send downstream hex 030101 to end node, the BASE64 payload is AwEB** 301 301 302 302 [[image:image-20220531173658-14.png]] 303 303 ... ... @@ -319,15 +319,15 @@ 319 319 { 320 320 if(sha1[n] >= 'A' && sha1[n] <= 'Z') 321 321 { 322 - ascv = sha1.charCodeAt(n) - 55; 408 + ascv = sha1.charCodeAt( n ) - 55; 323 323 } 324 324 else if(sha1[n] >= 'a' && sha1[n] <= 'z') 325 325 { 326 - ascv = sha1.charCodeAt(n) - 87; 412 + ascv = sha1.charCodeAt( n ) - 87; 327 327 } 328 328 else 329 329 { 330 - ascv = sha1.charCodeAt(n) - 48; 416 + ascv = sha1.charCodeAt( n ) - 48; 331 331 } 332 332 \\ bit_arr = (bit_arr << 4) | ascv; 333 333 bit_num += 4; ... ... @@ -364,13 +364,12 @@ 364 364 ))) 365 365 366 366 367 - 368 368 == 4.3 Add the decode function in Chirpstack for the payload == 369 369 370 370 371 371 User enters the payload code according to the steps. 372 372 373 -[[image:image-20220531173754-15.png]] 458 +[[image:image-20220531173754-15.png||height="474" width="1334"]] 374 374 375 375 376 376 [[image:image-20220531173856-16.png]] ... ... @@ -381,10 +381,9 @@ 381 381 [[image:image-20220531174046-19.png]] 382 382 383 383 469 += 6. Multiply Uplink in ChirpStack = 384 384 385 -= 5. Multiply Uplink in ChirpStack = 386 386 387 - 388 388 ((( 389 389 nbtrans field is the value to determine the re-transmission time for unconfirmed uplink data. 390 390 ))) ... ... @@ -395,7 +395,7 @@ 395 395 396 396 ))) 397 397 398 -[[image:image-20220526091912-7.png]] 482 +[[image:image-20220526091912-7.png||height="241" width="1336"]] 399 399 400 400 401 401 ((( ... ... @@ -420,15 +420,14 @@ 420 420 421 421 422 422 423 -Duplicate transmission in short time 507 +**Duplicate transmission in short time** 424 424 425 -[[image:image-20220601102430-1.png]] 509 +[[image:image-20220601102430-1.png||height="598" width="1319"]] 426 426 427 427 512 +== 6.1 Solution == 428 428 429 -== 5.1 Solution == 430 430 431 - 432 432 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]] 433 433 434 434 ... ... @@ -548,16 +548,68 @@ 548 548 Finish. 549 549 550 550 634 += 7. How to store/get all data traffic for a specific sensor, including raw payload, and uplink/ downlink history. = 551 551 552 -= 6. Trouble Shooting = 553 553 554 - ==6.1MICMismatch or MICFailed==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. 555 555 639 +This example will be shown how to store/get all the data in two ways: 556 556 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" %) 557 557 ((( 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 +((( 558 558 When the device is registered or the device is working normally, the problem of MIC mismatch and MIC failed occurs. 559 559 ))) 560 560 561 561 ((( 562 562 Under normal circumstances, users need to change the APPKEY to solve this problem. 694 + 695 + 696 + 697 + 563 563 )))
- 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