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. Edwin1 +XWiki.Kilight - Content
-
... ... @@ -127,7 +127,6 @@ 127 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,31 +209,125 @@ 209 209 [[image:image-20220531172857-9.png]] 210 210 211 211 209 += 4. How the gateway connects to Chirpstack v4 via gateway-bridge = 212 212 213 -= 4. Downlink = 214 214 215 - ==4.1 ChirpstackDownlinkNote==212 +(% style="color:blue" %)**Below list the support products and Requirements:** 216 216 214 +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]] 215 +1. Firmware version since: [[Chirpstack-gateway-bridge>>url:https://www.dragino.com/downloads/index.php?dir=LoRa_Gateway/LPS8/Firmware/Release/Chirpstack-gateway-bridge/]] 217 217 217 +(% style="color:blue" %)**How to set up chirpStack Gateway-bridge** 218 + 219 +Users can check out the ChirpStack gateway-bridge v4 [[link>>https://www.chirpstack.io/docs/chirpstack-gateway-bridge/install/dragino.html]] 220 + 221 + 222 +(% style="color:blue" %)**What do you need to prepare** 223 + 224 +A gateway that can access the internet normally 225 + 226 +== 4.1 Configure Packet Forwarder == 227 + 228 +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 229 + 230 +* In the **LoRaWAN** menu, click on **LoRaWAN ~-~- Semtech UDP** 231 +* Make sure the following settings are set: 232 +** **Service Provider:** //~-~-Custom/Private LoRaWAN~-~-// 233 +** **LoRaWAN Server Address:** //localhost or 127.0.0.1// 234 +** **Server port for upstream:** //1700// 235 +** **Server port for downstream:** //1700// 236 + 237 + Click **Save & Apply**. 238 + 239 +[[image:image-20221222114220-2.png||height="748" width="931"]] 240 + 241 + 242 +== 4.2 Configuring gateway frequency == 243 + 244 +Note: Gateway frequencies must match 245 + 246 +[[image:image-20221222134830-3.png||height="408" width="923"]] 247 + 248 + 249 +== 4.3 Modify the gateway-bridge configuration file == 250 + 251 + 252 +Run the gateway command line command to modify the gateway-bridge configuration file: 253 + 254 +(% class="box infomessage" %) 255 +((( 256 +root@dragino-1d27d4:~~# vim /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml 257 +))) 258 + 259 +[[image:image-20221222113302-1.png]] 260 + 261 +[[image:image-20221222140203-4.png||height="875" width="806"]] 262 + 263 + 264 +(% class="wikigeneratedid" id="H" %) 265 +After the modification, run the following command: **/etc/init.d/chirpstack-gateway-bridge restart** 266 + 267 +== 4.3 (Re)start and stop gateway-bridge == 268 + 269 +Use the following commands to (re)start and stop the ChirpStack Gateway Bridge Service: 270 + 271 +(% class="box infomessage" %) 272 +((( 273 +**# start** 274 + 275 +/etc/init.d/chirpstack-gateway-bridge start 276 + 277 +**# stop** 278 + 279 +/etc/init.d/chirpstack-gateway-bridge stop 280 + 281 +**# restart** 282 + 283 +/etc/init.d/chirpstack-gateway-bridge restart 284 +))) 285 + 286 += 5. Downlink = 287 + 288 +== 5.1 Convert HEX to Base64 == 289 + 290 + 291 +(% 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.** 292 + 293 +**[[Online HEX to Base64 Converter>>https://base64.guru/converter/encode/hex]]:** 294 + 295 +[[image:image-20221010193350-1.png]] 296 + 297 + 298 + 299 +**[[Online Base64 to Hex converter>>https://base64.guru/converter/decode/hex]]** 300 + 301 +[[image:image-20221010193621-2.png]] 302 + 303 + 304 +== 5.2 Chirpstack Downlink Note == 305 + 306 + 218 218 [[image:image-20220601102543-2.png]] 219 219 220 -Convert the data to Base64 309 +**Convert the data to Base64** 221 221 311 +(% style="display:none" %) (%%) 222 222 223 -[[image:image-20220531173236-10.png]] 224 224 225 - Check ChripStackdownlink DataRate314 +[[image:image-20220531173236-10.png||height="597" width="1215"]] 226 226 316 +**Check ChripStack downlink DataRate** 227 227 228 -[[image:image-20220525101326-11.png]] 229 229 230 -Make sure the RX2DR is the same in the end node 231 231 320 +[[image:image-20220525101326-11.png]] 232 232 322 +**Make sure the RX2DR is the same in the end node** 233 233 234 -== 4.2 Loraserver Downlink Note == 235 235 325 +== 5.3 Loraserver Downlink Note == 236 236 327 + 237 237 User can use MQTT to send downlink payload to ChirpStack to perform downstream to LoRaWAN End 238 238 239 239 ((( ... ... @@ -251,7 +251,7 @@ 251 251 [[image:image-20220531173419-11.png]] 252 252 253 253 ((( 254 -MQTT Connect to ChirpStack 345 +**MQTT Connect to ChirpStack** 255 255 256 256 257 257 ... ... @@ -278,21 +278,11 @@ 278 278 279 279 [[image:image-20220531173519-12.png]] 280 280 281 -MQTT Connect to ChirpStack 372 +**MQTT Connect to ChirpStack** 282 282 283 283 284 -((( 285 -(% style="color:red" %)**Note: Chirpstack use base64 to downlink, so need to convert the downlink payload from HEX to base64 [[https:~~/~~/base64.us/>>url:https://base64.us/]]** 286 -))) 375 +**If we want to send downstream hex 030101 to end node, the BASE64 payload is AwEB** 287 287 288 -[[image:image-20220531173601-13.png]] 289 - 290 -Choose to Use Hex for Encode 291 - 292 - 293 - 294 -If we want send downstream hex 030101 to end node, the BASE64 payload is AwEB 295 - 296 296 [[image:image-20220531173658-14.png]] 297 297 298 298 ... ... @@ -313,15 +313,15 @@ 313 313 { 314 314 if(sha1[n] >= 'A' && sha1[n] <= 'Z') 315 315 { 316 - ascv = sha1.charCodeAt(n) - 55; 397 + ascv = sha1.charCodeAt( n ) - 55; 317 317 } 318 318 else if(sha1[n] >= 'a' && sha1[n] <= 'z') 319 319 { 320 - ascv = sha1.charCodeAt(n) - 87; 401 + ascv = sha1.charCodeAt( n ) - 87; 321 321 } 322 322 else 323 323 { 324 - ascv = sha1.charCodeAt(n) - 48; 405 + ascv = sha1.charCodeAt( n ) - 48; 325 325 } 326 326 \\ bit_arr = (bit_arr << 4) | ascv; 327 327 bit_num += 4; ... ... @@ -364,7 +364,7 @@ 364 364 365 365 User enters the payload code according to the steps. 366 366 367 -[[image:image-20220531173754-15.png]] 448 +[[image:image-20220531173754-15.png||height="474" width="1334"]] 368 368 369 369 370 370 [[image:image-20220531173856-16.png]] ... ... @@ -375,10 +375,9 @@ 375 375 [[image:image-20220531174046-19.png]] 376 376 377 377 459 += 6. Multiply Uplink in ChirpStack = 378 378 379 -= 5. Multiply Uplink in ChirpStack = 380 380 381 - 382 382 ((( 383 383 nbtrans field is the value to determine the re-transmission time for unconfirmed uplink data. 384 384 ))) ... ... @@ -389,7 +389,7 @@ 389 389 390 390 ))) 391 391 392 -[[image:image-20220526091912-7.png]] 472 +[[image:image-20220526091912-7.png||height="241" width="1336"]] 393 393 394 394 395 395 ((( ... ... @@ -414,13 +414,13 @@ 414 414 415 415 416 416 417 -Duplicate transmission in short time 497 +**Duplicate transmission in short time** 418 418 419 -[[image:image-20220601102430-1.png]] 499 +[[image:image-20220601102430-1.png||height="598" width="1319"]] 420 420 421 421 422 422 423 -== 5.1 Solution ==503 +== 6.1 Solution == 424 424 425 425 426 426 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]] ... ... @@ -542,13 +542,61 @@ 542 542 Finish. 543 543 544 544 625 += 7. How to store/get all data traffic for a specific sensor, including raw payload, and uplink/ downlink history. = 545 545 546 -= 6. Trouble Shooting = 547 547 548 - ==6.1MICMismatch or MICFailed==628 +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. 549 549 630 +This example will be shown how to store/get all the data in two ways: 550 550 632 +**//1). Chirpstack ~-~-> Node-red//** 633 + 634 + 635 +[[image:image-20221012184501-1.png]] 636 + 637 + 638 +Use MQTT in Nore-red to subscribe to topics published by the chirpstack-application and then continuously write to a file 639 + 640 +[[image:image-20221012174220-2.png]] 641 + 642 + 643 +[[image:image-20221012184655-3.png||height="395" width="1049"]] 644 + 645 + 646 +**Each message is continuously logged to a specified file** 647 + 648 +[[image:image-20221012174352-3.png]] 649 + 650 + 651 +**//2). MQTT Sub//** 652 + 653 +If you don't want to store the information via node-red, you can get the output via the subscribe command. 654 + 655 + 656 +**If connecting from the same machine, you can use the following command to receive data:** 657 + 658 +(% class="box infomessage" %) 551 551 ((( 660 +mosquitto_sub -h localhost -t "application/#" -v 661 +))) 662 + 663 + 664 +**Different host** 665 + 666 +(% class="box infomessage" %) 667 +((( 668 +mosquitto_sub -h IPADDRESS -p 8883 ~-~-insecure ~-~-cafile ca.pem ~-~-cert cert.pem ~-~-key key.pem -t "application/#" -v 669 +))) 670 + 671 +[[image:image-20221012173639-1.png]] 672 + 673 + 674 += 8. Trouble Shooting = 675 + 676 +== 8.1 MIC Mismatch or MIC Failed == 677 + 678 + 679 +((( 552 552 When the device is registered or the device is working normally, the problem of MIC mismatch and MIC failed occurs. 553 553 ))) 554 554
- image-20221012173639-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoye - Size
-
... ... @@ -1,0 +1,1 @@ 1 +56.2 KB - Content
- image-20221012174220-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoye - Size
-
... ... @@ -1,0 +1,1 @@ 1 +14.8 KB - Content
- image-20221012174352-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoye - Size
-
... ... @@ -1,0 +1,1 @@ 1 +93.0 KB - Content
- 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