<
From version < 108.6 >
edited by Xiaoling
on 2022/07/23 13:56
To version < 127.1 >
edited by Kilight Cao
on 2022/12/22 14:07
>
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.Xiaoling
1 +XWiki.Kilight
Content
... ... @@ -87,29 +87,36 @@
87 87  
88 88  
89 89  
90 -== 2.4 Step 4. Add the gateway ==
90 +== 2.4  Step 4. Add the gateway ==
91 91  
92 +
92 92  The example gateway id is: a840411e96744150
93 93  
94 94  (((
95 95  (% style="color:red" %)**Note : The Gateway EUI and server addresses must match the ChirpStack configuration.**
97 +
98 +
96 96  )))
97 97  
98 98  [[image:image-20220531171923-4.png]](% style="display:none" %)
99 99  
100 -
101 101  Add the gateway
102 102  
105 +
106 +
103 103  [[image:image-20220531172031-5.png]]
104 104  
105 105  Configure the gateway
106 106  
107 107  
108 -== 2.5 Step 5. Checking gateway Status ==
109 109  
113 +== 2.5  Step 5. Checking gateway Status ==
114 +
115 +
110 110  [[image:image-20220531172158-6.png]](% style="display:none" %)
111 111  
112 112  
119 +
113 113  gateway Status
114 114  
115 115  [[image:image-20220531172304-7.png]]
... ... @@ -117,39 +117,46 @@
117 117  gateway Status
118 118  
119 119  
120 -= 3. Gateway Registration for Basics Station =
121 121  
122 -== 3.1 Introduction ==
128 += 3.  Gateway Registration for Basics Station =
123 123  
130 +== 3.1  Introduction ==
131 +
132 +
124 124  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.
125 125  
126 126  ChirpStack Open-Source LoRaWAN® Network Server needs to set up a configuration that can use Semtech BasicStation.
127 127  
128 -**Below list the support products and Requirements:**
129 129  
138 +(% style="color:blue" %)**Below list the support products and Requirements:**
139 +
130 130  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]]
131 131  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/]]
132 132  
133 -**How to set up chirpStack Basic Station**
143 +(% style="color:blue" %)**How to set up chirpStack Basic Station**
134 134  
135 135  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]]
136 136  
137 -**What do you need to prepare**
138 138  
148 +(% style="color:blue" %)**What do you need to prepare**
149 +
139 139  A gateway that can access the internet normally
140 140  
141 141  
142 -== 3.2 Add Gateway ==
153 +== 3.2  Add Gateway ==
143 143  
155 +
144 144  [[image:image-20220524164205-10.png]]
145 145  
146 146  
147 -== 3.3 Access the gateway GUI ==
159 +== 3.3  Access the gateway GUI ==
148 148  
161 +
149 149  Access the gateway GUI interface of LoRaWAN~-~->LoRaWAN ~-~- Basic Station
150 150  
151 151  [[image:image-20220524164319-11.png]]
152 152  
166 +
153 153  User need to Choose the ChirpStack/Senet ~-~- Basic Station , input Server URI and Upload the TLS Certificate
154 154  
155 155  (% class="box" %)
... ... @@ -165,20 +165,23 @@
165 165  [[image:image-20220524164341-12.png]]
166 166  
167 167  
168 -== 3.4 Start Station ==
182 +== 3.4  Start Station ==
169 169  
170 -When the user has finished the configuration, Please click Sace&Apply to start station to connect ChirpStack
171 171  
185 +When the user has finished the configuration, Please click **Sace&Apply** to start station to connect ChirpStack.
172 172  
173 -== 3.5 Successful Connection ==
174 174  
188 +== 3.5  Successful Connection ==
189 +
190 +
175 175  If user completes the above steps, which will see live date in the ChirpStack.
176 176  
177 177  [[image:image-20220524164448-13.png]]
178 178  
179 179  
180 -== 3.6 Trouble Shooting ==
196 +== 3.6  Trouble Shooting ==
181 181  
198 +
182 182  User can check the station log in the logread/system log page.
183 183  
184 184  [[image:image-20220531172837-8.png]]
... ... @@ -189,31 +189,115 @@
189 189  [[image:image-20220531172857-9.png]]
190 190  
191 191  
192 -= 4. Downlink =
209 += 4. How the gateway connects to Chirpstack v4 via gateway-bridge =
193 193  
194 -== 4.1 Chirpstack Downlink Note ==
195 195  
212 +== 4.1 Configure Packet Forwarder ==
213 +
214 +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
215 +
216 +* In the **LoRaWAN** menu, click on **LoRaWAN ~-~- Semtech UDP**
217 +* Make sure the following settings are set:
218 +** **Service Provider:** //~-~-Custom/Private LoRaWAN~-~-//
219 +** **LoRaWAN Server Address:** //localhost or 127.0.0.1//
220 +** **Server port for upstream:** //1700//
221 +** **Server port for downstream:** //1700//
222 +
223 + Click **Save & Apply**.
224 +
225 +[[image:image-20221222114220-2.png||height="748" width="931"]]
226 +
227 +
228 +== 4.2 Configuring gateway frequency ==
229 +
230 +Note: Gateway frequencies must match
231 +
232 +[[image:image-20221222134830-3.png||height="408" width="923"]]
233 +
234 +
235 +== 4.3 Modify the gateway-bridge configuration file ==
236 +
237 +
238 +Run the gateway command line command to modify the gateway-bridge configuration file:
239 +
240 +(% class="box infomessage" %)
241 +(((
242 +root@dragino-1d27d4:~~#  vim /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml
243 +)))
244 +
245 +[[image:image-20221222113302-1.png]]
246 +
247 +[[image:image-20221222140203-4.png||height="875" width="806"]]
248 +
249 +
250 +(% class="wikigeneratedid" id="H" %)
251 +After the modification, run the following command: **/etc/init.d/chirpstack-gateway-bridge restart**
252 +
253 +== 4.3 (Re)start and stop gateway-bridge ==
254 +
255 +Use the following commands to (re)start and stop the ChirpStack Gateway Bridge Service:
256 +
257 +(% class="box infomessage" %)
258 +(((
259 +**# start**
260 +
261 +/etc/init.d/chirpstack-gateway-bridge start
262 +
263 +**# stop**
264 +
265 +/etc/init.d/chirpstack-gateway-bridge stop
266 +
267 +**# restart**
268 +
269 +/etc/init.d/chirpstack-gateway-bridge restart
270 +)))
271 +
272 += 5.  Downlink =
273 +
274 +== 5.1 Convert HEX to Base64 ==
275 +
276 +
277 +(% 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.**
278 +
279 +**[[Online HEX to Base64 Converter>>https://base64.guru/converter/encode/hex]]:**
280 +
281 +[[image:image-20221010193350-1.png]]
282 +
283 +
284 +
285 +**[[Online Base64 to Hex converter>>https://base64.guru/converter/decode/hex]]**
286 +
287 +[[image:image-20221010193621-2.png]]
288 +
289 +
290 +== 5.2  Chirpstack Downlink Note ==
291 +
292 +
196 196  [[image:image-20220601102543-2.png]]
197 197  
198 -Convert the data to Base64
295 +**Convert the data to Base64**
199 199  
297 +(% style="display:none" %) (%%)
200 200  
201 -[[image:image-20220531173236-10.png]]
202 202  
203 -Check ChripStack downlink DataRate
300 +[[image:image-20220531173236-10.png||height="597" width="1215"]]
204 204  
302 +**Check ChripStack downlink DataRate**
205 205  
304 +
305 +
206 206  [[image:image-20220525101326-11.png]]
207 207  
208 -Make sure the RX2DR is the same in the end node
308 +**Make sure the RX2DR is the same in the end node**
209 209  
210 210  
211 -== 4.2 Loraserver Downlink Note ==
311 +== 5. Loraserver Downlink Note ==
212 212  
313 +
213 213  User can use MQTT to send downlink payload to ChirpStack to perform downstream to LoRaWAN End
214 214  
215 215  (((
216 -Below is examples:
317 +**Below is examples:**
217 217  )))
218 218  
219 219  (% class="box" %)
... ... @@ -227,13 +227,14 @@
227 227  [[image:image-20220531173419-11.png]]
228 228  
229 229  (((
230 -MQTT Connect to ChirpStack
331 +**MQTT Connect to ChirpStack**
231 231  
333 +
232 232  
233 233  )))
234 234  
235 235  (((
236 -After connect
338 +**After connect**
237 237  )))
238 238  
239 239  (% class="box" %)
... ... @@ -253,22 +253,14 @@
253 253  
254 254  [[image:image-20220531173519-12.png]]
255 255  
256 -MQTT Connect to ChirpStack
358 +**MQTT Connect to ChirpStack**
257 257  
258 258  
259 -(((
260 -(% 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/]]
261 -)))
361 +**If we want to send downstream hex 030101 to end node, the BASE64 payload is AwEB**
262 262  
263 -[[image:image-20220531173601-13.png]]
264 -
265 -Choose to Use Hex for Encode
266 -
267 -
268 -If we want send downstream hex 030101 to end node, the BASE64 payload is AwEB
269 -
270 270  [[image:image-20220531173658-14.png]]
271 271  
365 +
272 272  (((
273 273  Downlink payload encode javescript code: 可以在网站上运行以下Javsscript代码:
274 274  )))
... ... @@ -286,15 +286,15 @@
286 286   {
287 287   if(sha1[n] >= 'A' && sha1[n] <= 'Z')
288 288   {
289 - ascv = sha1.charCodeAt(n) - 55;
383 + ascv = sha1.charCodeAt( n ) - 55;
290 290   }
291 291   else if(sha1[n] >= 'a' && sha1[n] <= 'z')
292 292   {
293 - ascv = sha1.charCodeAt(n) - 87;
387 + ascv = sha1.charCodeAt( n ) - 87;
294 294   }
295 295   else
296 296   {
297 - ascv = sha1.charCodeAt(n) - 48;
391 + ascv = sha1.charCodeAt( n ) - 48;
298 298   }
299 299  \\ bit_arr = (bit_arr << 4) | ascv;
300 300   bit_num += 4;
... ... @@ -331,11 +331,13 @@
331 331  )))
332 332  
333 333  
334 -== 4.3 Add the decode function in Chirpstack for the payload ==
335 335  
429 +== 4.3  Add the decode function in Chirpstack for the payload ==
430 +
431 +
336 336  User enters the payload code according to the steps.
337 337  
338 -[[image:image-20220531173754-15.png]]
434 +[[image:image-20220531173754-15.png||height="474" width="1334"]]
339 339  
340 340  
341 341  [[image:image-20220531173856-16.png]]
... ... @@ -346,8 +346,9 @@
346 346  [[image:image-20220531174046-19.png]]
347 347  
348 348  
349 -= 5. Multiply Uplink in ChirpStack =
445 += 6.  Multiply Uplink in ChirpStack =
350 350  
447 +
351 351  (((
352 352  nbtrans field is the value to determine the re-transmission time for unconfirmed uplink data.
353 353  )))
... ... @@ -354,12 +354,17 @@
354 354  
355 355  (((
356 356  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]]
454 +
455 +
357 357  )))
358 358  
359 -[[image:image-20220526091912-7.png]]
458 +[[image:image-20220526091912-7.png||height="241" width="1336"]]
360 360  
460 +
361 361  (((
362 362  nbtrans is a field of ADR message, in unconfirm mode, it tells end node how many time it needs to transmit for every frame.
463 +
464 +
363 363  )))
364 364  
365 365  [[image:image-20220525104359-21.png]]
... ... @@ -366,6 +366,8 @@
366 366  
367 367  (((
368 368  Above behaviour will cause the platform shows below two cases of error:
471 +
472 +
369 369  )))
370 370  
371 371  (((
... ... @@ -375,29 +375,36 @@
375 375  [[image:image-20220525104437-22.png]]
376 376  
377 377  
378 -Duplicate transmission in short time
379 379  
380 -[[image:image-20220601102430-1.png]]
483 +**Duplicate transmission in short time**
381 381  
485 +[[image:image-20220601102430-1.png||height="598" width="1319"]]
382 382  
383 -== 5.1 Solution ==
384 384  
488 +
489 +== 6.1  Solution ==
490 +
491 +
385 385  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]]
386 386  
494 +
387 387  (((
388 -~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.
496 +(% 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.**
497 +
498 +
389 389  )))
390 390  
391 391  [[image:image-20220525104532-24.png]]
392 392  
393 393  
394 -installation path:
504 +**installation path:**
395 395  
396 396  [[image:image-20220525104554-25.png]]
397 397  
398 398  
509 +
399 399  (((
400 -2. Environment variable settings:.
511 +(% style="color:blue" %)**2.  Environment variable settings:**
401 401  )))
402 402  
403 403  (((
... ... @@ -405,13 +405,13 @@
405 405  )))
406 406  
407 407  (((
408 -2)Set the variable name GOROOT and the variable value C:\Go\ (installation directory)
519 +2) Set the variable name GOROOT and the variable value C:\Go\ (installation directory)
409 409  )))
410 410  
411 411  [[image:image-20220524165433-33.png]]
412 412  
413 413  
414 -3)Modify the system variable Path and add C:\Go\bin\:
525 +3) Modify the system variable Path and add C:\Go\bin\:
415 415  
416 416  [[image:image-20220524165452-34.png]]
417 417  
... ... @@ -421,8 +421,9 @@
421 421  [[image:image-20220524165517-35.png]]
422 422  
423 423  
424 -3. Modify the ADR configuration file according to your own needs, adr.setting.go is an example of the ADR configuration file.
425 425  
536 +(% 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.**
537 +
426 426  The name of the plugin: Example ADR plugin:
427 427  
428 428  [[image:image-20220524165540-36.png]]
... ... @@ -432,8 +432,9 @@
432 432  [[image:image-20220524165557-37.png]]
433 433  
434 434  
435 -4. Compile the ADR configuration file and generate the exe file.
436 436  
548 +(% style="color:blue" %)**4.  Compile the ADR configuration file and generate the exe file.**
549 +
437 437  1) Create a folder named adr-setting
438 438  
439 439  2) Open the adr-setting folder
... ... @@ -457,8 +457,9 @@
457 457  [[image:image-20220524165623-38.png]]
458 458  
459 459  
460 -5. Add the plugin and run the plugin.
461 461  
574 +(% style="color:blue" %)**5.  Add the plugin and run the plugin.**
575 +
462 462  (((
463 463  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:
464 464  )))
... ... @@ -494,11 +494,61 @@
494 494  Finish.
495 495  
496 496  
497 -= 6. Trouble Shooting =
611 += 7.  How to store/get all data traffic for a specific sensor, including raw payload, and uplink/ downlink history. =
498 498  
499 -== 6.1 MIC Mismatch or MIC Failed ==
500 500  
614 +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.
615 +
616 +This example will be shown how to store/get all the data in two ways:
617 +
618 +**//1). Chirpstack ~-~-> Node-red//**
619 +
620 +
621 +[[image:image-20221012184501-1.png]]
622 +
623 +
624 +Use MQTT in Nore-red to subscribe to topics published by the chirpstack-application and then continuously write to a file
625 +
626 +[[image:image-20221012174220-2.png]]
627 +
628 +
629 +[[image:image-20221012184655-3.png||height="395" width="1049"]]
630 +
631 +
632 +**Each message is continuously logged to a specified file**
633 +
634 +[[image:image-20221012174352-3.png]]
635 +
636 +
637 +**//2). MQTT  Sub//**
638 +
639 +If you don't want to store the information via node-red, you can get the output via the subscribe command.
640 +
641 +
642 +**If connecting from the same machine, you can use the following command to receive data:**
643 +
644 +(% class="box infomessage" %)
501 501  (((
646 +mosquitto_sub -h localhost -t "application/#" -v
647 +)))
648 +
649 +
650 +**Different host**
651 +
652 +(% class="box infomessage" %)
653 +(((
654 +mosquitto_sub -h IPADDRESS -p 8883 ~-~-insecure ~-~-cafile ca.pem ~-~-cert cert.pem ~-~-key key.pem -t "application/#" -v
655 +)))
656 +
657 +[[image:image-20221012173639-1.png]]
658 +
659 +
660 += 8.  Trouble Shooting =
661 +
662 +== 8.1  MIC Mismatch or MIC Failed ==
663 +
664 +
665 +(((
502 502  When the device is registered or the device is working normally, the problem of MIC mismatch and MIC failed occurs.
503 503  )))
504 504  
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
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
Copyright ©2010-2022 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0