Changes for page Notes for ChirpStack
Last modified by Edwin Chen on 2025/01/30 09:53
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 8 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki.Xiao ling1 +XWiki.Xiaoye - Content
-
... ... @@ -109,11 +109,14 @@ 109 109 Configure the gateway 110 110 111 111 112 -== 2.5 Step 5. Checking gateway Status == 113 113 113 +== 2.5 Step 5. Checking gateway Status == 114 + 115 + 114 114 [[image:image-20220531172158-6.png]](% style="display:none" %) 115 115 116 116 119 + 117 117 gateway Status 118 118 119 119 [[image:image-20220531172304-7.png]] ... ... @@ -121,39 +121,48 @@ 121 121 gateway Status 122 122 123 123 124 -= 3. Gateway Registration for Basics Station = 125 125 126 -= =3.1Introduction ==128 += 3. Gateway Registration for Basics Station = 127 127 130 + 131 +== 3.1 Introduction == 132 + 133 + 128 128 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. 129 129 130 130 ChirpStack Open-Source LoRaWAN® Network Server needs to set up a configuration that can use Semtech BasicStation. 131 131 132 -**Below list the support products and Requirements:** 133 133 139 +(% style="color:blue" %)**Below list the support products and Requirements:** 140 + 134 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 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 136 137 -**How to set up chirpStack Basic Station** 144 +(% style="color:blue" %)**How to set up chirpStack Basic Station** 138 138 139 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 140 141 -**What do you need to prepare** 142 142 149 +(% style="color:blue" %)**What do you need to prepare** 150 + 143 143 A gateway that can access the internet normally 144 144 145 145 146 -== 3.2 Add Gateway == 147 147 155 +== 3.2 Add Gateway == 156 + 157 + 148 148 [[image:image-20220524164205-10.png]] 149 149 150 150 151 -== 3.3 Access the gateway GUI == 161 +== 3.3 Access the gateway GUI == 152 152 163 + 153 153 Access the gateway GUI interface of LoRaWAN~-~->LoRaWAN ~-~- Basic Station 154 154 155 155 [[image:image-20220524164319-11.png]] 156 156 168 + 157 157 User need to Choose the ChirpStack/Senet ~-~- Basic Station , input Server URI and Upload the TLS Certificate 158 158 159 159 (% class="box" %) ... ... @@ -169,20 +169,24 @@ 169 169 [[image:image-20220524164341-12.png]] 170 170 171 171 172 -== 3.4 Start Station == 184 +== 3.4 Start Station == 173 173 174 -When the user has finished the configuration, Please click Sace&Apply to start station to connect ChirpStack 175 175 187 +When the user has finished the configuration, Please click **Sace&Apply** to start station to connect ChirpStack. 176 176 177 -== 3.5 Successful Connection == 178 178 190 +== 3.5 Successful Connection == 191 + 192 + 179 179 If user completes the above steps, which will see live date in the ChirpStack. 180 180 181 181 [[image:image-20220524164448-13.png]] 182 182 183 183 184 -== 3.6 Trouble Shooting == 185 185 199 +== 3.6 Trouble Shooting == 200 + 201 + 186 186 User can check the station log in the logread/system log page. 187 187 188 188 [[image:image-20220531172837-8.png]] ... ... @@ -193,10 +193,27 @@ 193 193 [[image:image-20220531172857-9.png]] 194 194 195 195 196 -= 4. Downlink = 197 197 198 -= =4.1ChirpstackDownlinkNote==213 += 4. Downlink = 199 199 215 +== 4.1 Convert HEX to Base64 == 216 + 217 +(% 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.** 218 + 219 +[[Online HEX to Base64 Converter>>https://base64.guru/converter/encode/hex]]: 220 + 221 +[[image:image-20221010193350-1.png]] 222 + 223 + 224 +[[Online Base64 to Hex converter>>https://base64.guru/converter/decode/hex]] 225 + 226 +[[image:image-20221010193621-2.png]] 227 + 228 + 229 + 230 +== 4.2 Chirpstack Downlink Note == 231 + 232 + 200 200 [[image:image-20220601102543-2.png]] 201 201 202 202 Convert the data to Base64 ... ... @@ -212,12 +212,14 @@ 212 212 Make sure the RX2DR is the same in the end node 213 213 214 214 215 -== 4.2 Loraserver Downlink Note == 216 216 249 +== 4.3 Loraserver Downlink Note == 250 + 251 + 217 217 User can use MQTT to send downlink payload to ChirpStack to perform downstream to LoRaWAN End 218 218 219 219 ((( 220 -Below is examples: 255 +**Below is examples:** 221 221 ))) 222 222 223 223 (% class="box" %) ... ... @@ -233,11 +233,12 @@ 233 233 ((( 234 234 MQTT Connect to ChirpStack 235 235 271 + 236 236 237 237 ))) 238 238 239 239 ((( 240 -After connect 276 +**After connect** 241 241 ))) 242 242 243 243 (% class="box" %) ... ... @@ -260,19 +260,11 @@ 260 260 MQTT Connect to ChirpStack 261 261 262 262 263 -((( 264 -(% 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/]] 265 -))) 299 +If we want to send downstream hex 030101 to end node, the BASE64 payload is AwEB 266 266 267 -[[image:image-20220531173601-13.png]] 268 - 269 -Choose to Use Hex for Encode 270 - 271 - 272 -If we want send downstream hex 030101 to end node, the BASE64 payload is AwEB 273 - 274 274 [[image:image-20220531173658-14.png]] 275 275 303 + 276 276 ((( 277 277 Downlink payload encode javescript code: 可以在网站上运行以下Javsscript代码: 278 278 ))) ... ... @@ -335,8 +335,10 @@ 335 335 ))) 336 336 337 337 338 -== 4.3 Add the decode function in Chirpstack for the payload == 339 339 367 +== 4.3 Add the decode function in Chirpstack for the payload == 368 + 369 + 340 340 User enters the payload code according to the steps. 341 341 342 342 [[image:image-20220531173754-15.png]] ... ... @@ -350,8 +350,10 @@ 350 350 [[image:image-20220531174046-19.png]] 351 351 352 352 353 -= 5. Multiply Uplink in ChirpStack = 354 354 384 += 5. Multiply Uplink in ChirpStack = 385 + 386 + 355 355 ((( 356 356 nbtrans field is the value to determine the re-transmission time for unconfirmed uplink data. 357 357 ))) ... ... @@ -358,12 +358,17 @@ 358 358 359 359 ((( 360 360 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]] 393 + 394 + 361 361 ))) 362 362 363 363 [[image:image-20220526091912-7.png]] 364 364 399 + 365 365 ((( 366 366 nbtrans is a field of ADR message, in unconfirm mode, it tells end node how many time it needs to transmit for every frame. 402 + 403 + 367 367 ))) 368 368 369 369 [[image:image-20220525104359-21.png]] ... ... @@ -370,6 +370,8 @@ 370 370 371 371 ((( 372 372 Above behaviour will cause the platform shows below two cases of error: 410 + 411 + 373 373 ))) 374 374 375 375 ((( ... ... @@ -379,29 +379,36 @@ 379 379 [[image:image-20220525104437-22.png]] 380 380 381 381 421 + 382 382 Duplicate transmission in short time 383 383 384 384 [[image:image-20220601102430-1.png]] 385 385 386 386 387 -== 5.1 Solution == 388 388 428 +== 5.1 Solution == 429 + 430 + 389 389 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]] 390 390 433 + 391 391 ((( 392 -~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. 435 +(% 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.** 436 + 437 + 393 393 ))) 394 394 395 395 [[image:image-20220525104532-24.png]] 396 396 397 397 398 -installation path: 443 +**installation path:** 399 399 400 400 [[image:image-20220525104554-25.png]] 401 401 402 402 448 + 403 403 ((( 404 -2. Environment variable settings: .450 +(% style="color:blue" %)**2. Environment variable settings:** 405 405 ))) 406 406 407 407 ((( ... ... @@ -409,13 +409,13 @@ 409 409 ))) 410 410 411 411 ((( 412 -2)Set the variable name GOROOT and the variable value C:\Go\ (installation directory) 458 +2) Set the variable name GOROOT and the variable value C:\Go\ (installation directory) 413 413 ))) 414 414 415 415 [[image:image-20220524165433-33.png]] 416 416 417 417 418 -3)Modify the system variable Path and add C:\Go\bin\: 464 +3) Modify the system variable Path and add C:\Go\bin\: 419 419 420 420 [[image:image-20220524165452-34.png]] 421 421 ... ... @@ -425,8 +425,9 @@ 425 425 [[image:image-20220524165517-35.png]] 426 426 427 427 428 -3. Modify the ADR configuration file according to your own needs, adr.setting.go is an example of the ADR configuration file. 429 429 475 +(% 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.** 476 + 430 430 The name of the plugin: Example ADR plugin: 431 431 432 432 [[image:image-20220524165540-36.png]] ... ... @@ -436,8 +436,9 @@ 436 436 [[image:image-20220524165557-37.png]] 437 437 438 438 439 -4. Compile the ADR configuration file and generate the exe file. 440 440 487 +(% style="color:blue" %)**4. Compile the ADR configuration file and generate the exe file.** 488 + 441 441 1) Create a folder named adr-setting 442 442 443 443 2) Open the adr-setting folder ... ... @@ -461,8 +461,9 @@ 461 461 [[image:image-20220524165623-38.png]] 462 462 463 463 464 -5. Add the plugin and run the plugin. 465 465 513 +(% style="color:blue" %)**5. Add the plugin and run the plugin.** 514 + 466 466 ((( 467 467 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: 468 468 ))) ... ... @@ -498,11 +498,60 @@ 498 498 Finish. 499 499 500 500 501 -= 6. TroubleShooting =550 += **6. How to store/get all data traffic for a specific sensor, including raw payload, and uplink/ downlink history. ** = 502 502 503 -== 6.1 MIC Mismatch or MIC Failed == 504 504 553 +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. 554 + 555 +This example will be shown how to store/get all the data in two ways: 556 + 557 +**//1). Chirpstack ~-~-> Node-red//** 558 + 559 + 560 +[[image:image-20221012184501-1.png]] 561 + 562 +Use MQTT in Nore-red to subscribe to topics published by the chirpstack-application and then continuously write to a file 563 + 564 +[[image:image-20221012174220-2.png]] 565 + 566 + 567 +[[image:image-20221012184655-3.png||height="395" width="1049"]] 568 + 569 + 570 +Each message is continuously logged to a specified file 571 + 572 +[[image:image-20221012174352-3.png]] 573 + 574 + 575 +**//2). MQTT Sub//** 576 + 577 +If you don't want to store the information via node-red, you can get the output via the subscribe command. 578 + 579 + 580 +**If connecting from the same machine, you can use the following command to receive data:** 581 + 582 +(% class="box infomessage" %) 505 505 ((( 584 +mosquitto_sub -h localhost -t "application/#" -v 585 +))) 586 + 587 + 588 +**Different host** 589 + 590 +(% class="box infomessage" %) 591 +((( 592 +mosquitto_sub -h IPADDRESS -p 8883 ~-~-insecure ~-~-cafile ca.pem ~-~-cert cert.pem ~-~-key key.pem -t "application/#" -v 593 +))) 594 + 595 +[[image:image-20221012173639-1.png]] 596 + 597 + 598 += 7. Trouble Shooting = 599 + 600 +== 7.1 MIC Mismatch or MIC Failed == 601 + 602 + 603 +((( 506 506 When the device is registered or the device is working normally, the problem of MIC mismatch and MIC failed occurs. 507 507 ))) 508 508
- image-20221010193350-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Edwin - Size
-
... ... @@ -1,0 +1,1 @@ 1 +42.7 KB - Content
- image-20221010193621-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Edwin - Size
-
... ... @@ -1,0 +1,1 @@ 1 +34.2 KB - Content
- 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