Wiki source code of Notes for ChirpStack

Version 246.3 by Xiaoling on 2025/07/31 17:04

Hide last authors
Xiaoling 108.4 1 **~ Table of Contents:**
Xiaoling 1.2 2
Xiaoling 1.1 3 {{toc/}}
4
Xiaoling 86.4 5
6
7
Xiaoling 108.4 8 = 1.  Introduction =
Xiaoling 1.1 9
Xiaoling 108.4 10
Kilight Cao 53.1 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/]]
Xiaoling 1.1 12
Xiaoling 1.5 13 (((
Kilight Cao 51.1 14 (% style="color:black" %)The dragino gateway can connect the ChirpStack server via Semtech UDP or Semtech Basic Station.
Xiaoling 108.4 15
16
Xiaoling 1.5 17 )))
Xiaoling 1.1 18
Xiaoling 108.4 19 (% style="color:blue" %)**Prerequisite:**
Xiaoling 1.1 20
Xiaoling 108.4 21 **1) Have a Chirstack Server.**
Xiaoling 1.1 22
Bei Jinggeng 172.1 23 [[image:image-20230821114047-4.png||height="524" width="990"]]
Xiaoling 1.1 24
Xiaoling 1.2 25 ChirpStack home page
Xiaoling 1.1 26
Xiaoling 54.2 27
Xiaoling 1.1 28
Xiaoling 108.4 29 **2) Gateway model support**
30
Xiaoling 1.2 31 (% class="box" %)
32 (((
Xiaoling 1.5 33 (((
Xiaoling 1.2 34 Semtech UDP : **All Model**
Xiaoling 246.2 35 Basic Station : [[LIG16>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/171-lig16.html]], [[LOS8N>>url:https://www.dragino.com/products/lora-lorawan-gateway/item/225-dlos8n.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]]
36
Xiaoling 108.4 37 (% 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
Xiaoling 1.2 38 )))
Xiaoling 1.5 39 )))
Xiaoling 1.1 40
Xiaoling 176.2 41
Bei Jinggeng 164.1 42 = 2.  Node usage introduction =
Xiaoling 86.5 43
Bei Jinggeng 164.1 44 == 2.1 Register Node ==
Xiaoling 1.1 45
46
Xiaoling 176.2 47 **Step 1: Add application**
48
Kilight Cao 220.1 49 [[image:image-20240831154333-1.png||height="553" width="1074"]]
Xiaoling 108.4 50
Bei Jinggeng 164.1 51
Xiaoling 176.2 52 **Step 2:Fill name**
53
Bei Jinggeng 164.1 54 [[image:image-20230702094852-2.png]]
55
56
Xiaoling 176.2 57 **Step3 :Add device profile**
58
Bei Jinggeng 164.1 59 [[image:image-20230702095114-4.png||height="448" width="1061"]]
60
61
Xiaoling 176.2 62 **Step4 :Configure your device profile**
Bei Jinggeng 164.1 63
64 [[image:image-20230702095557-5.png||height="648" width="1121"]]
65
66 Does node support class-c
67
68 [[image:image-20230702095641-6.png||height="349" width="1114"]]
69
70 Add node's decoder
71
72 [[image:image-20230702095827-7.png||height="490" width="1138"]]
73
74
Xiaoling 176.2 75 **Step5 :add device**
Bei Jinggeng 164.1 76
77 [[image:image-20230702094944-3.png||height="439" width="1153"]]
78
79
Xiaoling 176.2 80 [[image:image-20230702100312-8.png||height="550" width="1106"]]
Bei Jinggeng 164.1 81
82
83 [[image:image-20230702100543-10.png||height="313" width="1099"]]
84
Xiaoling 176.2 85
Bei Jinggeng 164.1 86 [[image:image-20230702100930-11.png||height="613" width="1098"]]
87
88
Kilight Cao 176.1 89 = 3.  Semtech UDP for ChirpStack v3 =
Bei Jinggeng 164.1 90
91 == 3.1  Step 1. Add the Network-servers ==
92
93
Xiaoling 1.2 94 The network-Servers address varies depending on the ChirpStack server setup environment
Xiaoling 1.1 95
Xiaoling 1.3 96 (% class="box" %)
97 (((
Xiaoling 108.5 98 Windows       ~-~->  Network-server server *  :  localhost:8000
99 Linux  ~-~->  Network-server server *  :  chirpstack-network-server:8000
Xiaoling 1.3 100 )))
Xiaoling 1.1 101
Xiaoling 108.4 102
Xiaoling 108.6 103 (% style="color:red" %)**If the user cannot add network-Servers, re-check the ChirpStack code or the server building process.**
Xiaoling 1.1 104
Xiaoling 151.2 105 [[image:image-20220531171609-1.png||height="638" width="1268"]](% style="display:none" %)
Xiaoling 1.2 106
107 Add the Network-servers
108
Xiaoling 84.2 109
Bei Jinggeng 164.1 110 == 3.2  Step 2. Create Gateway-profiles ==
Xiaoling 1.2 111
Xiaoling 108.6 112
Xiaoling 151.2 113 [[image:image-20220531171651-2.png||height="632" width="1264"]](% style="display:none" %)
Xiaoling 1.2 114
115 Create Gateway-profiles
116
Xiaoling 84.2 117
Bei Jinggeng 164.1 118 == 3.3  Step 3. Create Service-profiles ==
Xiaoling 108.6 119
120
Xiaoling 151.2 121 [[image:image-20220531171809-3.png||height="761" width="1265"]]
Xiaoling 1.2 122
123 Create Service-profiles
124
Xiaoling 89.3 125
Xiaoling 1.2 126 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.
127
Xiaoling 1.4 128 (% style="color:red" %)**Note : Before add the gateway, the user needs to complete the preceding three steps.**
Xiaoling 1.2 129
Xiaoling 84.2 130 If the user has completed the preceding steps, proceed to the next step.(% style="display:none" %)
Xiaoling 1.2 131
Xiaoling 84.2 132
Bei Jinggeng 164.1 133 == 3.4  Step 4. Add the gateway ==
Xiaoling 1.2 134
Xiaoling 108.7 135
Xiaoling 1.2 136 The example gateway id is: a840411e96744150
137
Xiaoling 1.5 138 (((
Xiaoling 1.4 139 (% style="color:red" %)**Note : The Gateway EUI and server addresses must match the ChirpStack configuration.**
Xiaoling 1.5 140 )))
Xiaoling 1.2 141
Xiaoling 151.2 142 [[image:image-20220531171923-4.png||height="745" width="1253"]](% style="display:none" %)
Xiaoling 1.2 143
144 Add the gateway
145
Xiaoling 108.7 146
Xiaoling 91.2 147 [[image:image-20220531172031-5.png]]
Xiaoling 1.2 148
149 Configure the gateway
150
Xiaoling 84.2 151
Bei Jinggeng 164.1 152 == 3.5  Step 5. Checking gateway Status ==
Xiaoling 108.8 153
154
Xiaoling 151.2 155 [[image:image-20220531172158-6.png||height="704" width="1167"]](% style="display:none" %)
Xiaoling 1.2 156
Xiaoling 84.2 157
Xiaoling 108.8 158
Xiaoling 1.2 159 gateway Status
160
Xiaoling 151.2 161 [[image:image-20220531172304-7.png||height="628" width="1165"]]
Xiaoling 1.2 162
163 gateway Status
164
Xiaoling 176.2 165
Kilight Cao 176.1 166 = 4.  Semtech UDP for ChirpStack v4 =
Xiaoling 86.6 167
Kilight Cao 176.1 168 == 4.1  Step 1. Add the gateway ==
Kilight Cao 9.1 169
Xiaoling 176.2 170
Kilight Cao 176.1 171 [[image:image-20230926092907-1.png||height="598" width="1007"]]
Xiaoling 108.8 172
Kilight Cao 176.1 173
174 [[image:image-20230926093057-2.png||height="541" width="1002"]]
175
176
177 == 4.2  Step 2. Checking gateway Status ==
178
179 [[image:image-20230926093233-3.png||height="581" width="1018"]]
180
181 = 5.  Gateway Registration for Basics Station =
182
183 == 5.1  Introduction ==
184
185
Kilight Cao 9.1 186 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.
187
188 ChirpStack Open-Source LoRaWAN® Network Server needs to set up a configuration that can use Semtech BasicStation.
189
190
Xiaoling 108.8 191 (% style="color:blue" %)**Below list the support products and Requirements:**
192
Xiaoling 246.3 193 1. LoRaWAN Gateway model: [[LIG16>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/171-lig16.html]], [[DLOS8N>>url:https://www.dragino.com/products/lora-lorawan-gateway/item/225-dlos8n.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]]
194 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/]]
Kilight Cao 9.1 195
Xiaoling 108.8 196 (% style="color:blue" %)**How to set up chirpStack Basic Station**
197
Kilight Cao 9.1 198 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]]
199
200
Xiaoling 108.8 201 (% style="color:blue" %)**What do you need to prepare**
202
Kilight Cao 9.1 203 A gateway that can access the internet normally
204
Xiaoling 86.7 205
Kilight Cao 176.1 206 == 5.2  Add Gateway ==
Kilight Cao 9.1 207
Xiaoling 20.2 208 [[image:image-20220524164205-10.png]]
Kilight Cao 9.1 209
Kilight Cao 176.1 210 == 5.3  Access the gateway GUI ==
Kilight Cao 9.1 211
Xiaoling 108.9 212
Kilight Cao 9.1 213 Access the gateway GUI interface of LoRaWAN~-~->LoRaWAN ~-~- Basic Station
214
Xiaoling 20.2 215 [[image:image-20220524164319-11.png]]
Kilight Cao 9.1 216
Xiaoling 108.9 217
Kilight Cao 9.1 218 User need to Choose the ChirpStack/Senet ~-~- Basic Station , input Server URI and Upload the TLS Certificate
219
220 (% class="box" %)
221 (((
222 Service Provider  ~-~->  Choose the ChirpStack/Senet ~-~- Basic Station
223
Kilight Cao 165.1 224 LNS URI  ~-~->  Enter the LNS URI address, For example : wss:~/~/xxxx.chirpstack.com:443 or ws:~/~/xxxx.chirpstack.com:3001
Kilight Cao 9.1 225
226 LNS TLS trust  ~-~->  Upload the TLS Certificate
227 )))
228
229 (% class="wikigeneratedid" %)
Xiaoling 20.2 230 [[image:image-20220524164341-12.png]]
Kilight Cao 9.1 231
Xiaoling 86.9 232
Kilight Cao 176.1 233 == 5.4  Start Station ==
Kilight Cao 9.1 234
Xiaoling 108.9 235
Xiaoling 108.14 236 When the user has finished the configuration, Please click **Sace&Apply** to start station to connect ChirpStack.
Kilight Cao 9.1 237
Xiaoling 86.10 238
Kilight Cao 176.1 239 == 5.5  Successful Connection ==
Kilight Cao 9.1 240
Xiaoling 108.9 241
Kilight Cao 9.1 242 If user completes the above steps, which will see live date in the ChirpStack.
243
Xiaoling 23.2 244 [[image:image-20220524164448-13.png]]
Kilight Cao 9.1 245
Xiaoling 86.11 246
Kilight Cao 176.1 247 == 5.6  Trouble Shooting ==
Xiaoling 108.9 248
249
Kilight Cao 9.1 250 User can check the station log in the logread/system log page.
251
Xiaoling 95.2 252 [[image:image-20220531172837-8.png]]
Kilight Cao 9.1 253
Xiaoling 86.13 254
Kilight Cao 9.1 255 and recode the station log in the system/Recode log page.
256
Xiaoling 95.2 257 [[image:image-20220531172857-9.png]]
Kilight Cao 9.1 258
Xiaoling 86.12 259
Kilight Cao 176.1 260 = 6.  How the gateway connects to Chirpstack v3 via gateway-bridge =
Xiaoling 108.9 261
Xiaoling 1.2 262
Kilight Cao 128.1 263 (% style="color:blue" %)**Below list the support products and Requirements:**
264
Xiaoling 246.3 265 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]] ,[[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]]
Kilight Cao 138.1 266 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/]]
Kilight Cao 128.1 267
268 (% style="color:blue" %)**What do you need to prepare**
269
270 A gateway that can access the internet normally
271
Xiaoling 1.2 272
Kilight Cao 138.1 273 The following example does not have configuration certificates:
274
Xiaoling 138.2 275
Kilight Cao 176.1 276 == 6.1  Configure Packet Forwarder ==
Xiaoling 131.2 277
278
Kilight Cao 124.1 279 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
Xiaoling 121.2 280
Xiaoling 138.3 281 * In the (% style="color:blue" %)**LoRaWAN** (%%)menu, click on (% style="color:blue" %)**LoRaWAN ~-~- Semtech UDP**
Xiaoling 138.2 282
Kilight Cao 124.1 283 * Make sure the following settings are set:
Xiaoling 138.4 284 ** **Service Provider:** //~-~-Custom/Private LoRaWAN~-~-//
285 ** **LoRaWAN Server Address:** //localhost or 127.0.0.1//
286 ** **Server port for upstream:** //1700//
287 ** **Server port for downstream:** //1700//
Xiaoling 138.2 288
Xiaoling 138.3 289 Click (% style="color:blue" %)**Save & Apply**.
Kilight Cao 124.1 290
291 [[image:image-20221222114220-2.png||height="748" width="931"]]
292
293
Kilight Cao 176.1 294 == 6.2  Configuring gateway frequency ==
Kilight Cao 124.1 295
Kilight Cao 127.1 296
Xiaoling 131.2 297 (% style="color:red" %)**Note: Gateway frequencies must match**
298
Kilight Cao 127.1 299 [[image:image-20221222134830-3.png||height="408" width="923"]]
300
301
Kilight Cao 176.1 302 == 6.3  Generate and modify the gateway-bridge configuration file ==
Kilight Cao 127.1 303
304
Kilight Cao 138.1 305 **1)Generate the gateway-bridge configuration file**
306
307 By default, the configuration file is not up-to-date,so the user needs to rebuild the gateway-bridge configuration file.
308
309 Users need to access the command line of the gateway through SSH,Then type the following command:
310
311 (% class="box infomessage" %)
312 (((
Xiaoling 138.5 313 **/opt/chirpstack-gateway-bridge/chirpstack-gateway-bridge configfile > /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml **
Kilight Cao 138.1 314 )))
315
316
317 **2)modify the gateway-bridge configuration file**
318
319 The user needs to modify the server address in line 252 in the configuration file
320
321 (% class="box infomessage" %)
322 (((
Xiaoling 138.5 323 **vim /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml **
Kilight Cao 138.1 324 )))
325
326 [[image:image-20230415165254-1.png||height="583" width="956"]]
327
328
Kilight Cao 176.1 329 == 6.4  Debug ==
Kilight Cao 138.1 330
331
332 After the above configuration is completed, the user can enter the command to debug the gateway-bridge connection
333
334 (% class="box infomessage" %)
335 (((
Xiaoling 138.5 336 **/opt/chirpstack-gateway-bridge/chirpstack-gateway-bridge ~-~-config /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml**
Kilight Cao 138.1 337 )))
338
339 If the gateway-bridge connection is normal, the debug log displays **"connected to mqtt broker"**.
340
341 [[image:image-20230415170404-2.png]]
342
343
344 If the debug log shows "**connection error**", check that the server port or server is correct
345
346 [[image:image-20230415170854-3.png]]
347
348
349 More information can be found on the **[[ChirpStack website>>https://www.chirpstack.io/docs/]]**or **[[Forum>>url:https://forum.chirpstack.io/]]**
350
351
Kilight Cao 176.1 352 == 6.5  (Re)start and stop gateway-bridge ==
Kilight Cao 138.1 353
354
355 Use the following commands to (re)start and stop the ChirpStack Gateway Bridge Service:
356
357 (% class="box infomessage" %)
358 (((
359 **# start**
360
361 /etc/init.d/chirpstack-gateway-bridge start
362
363 **# stop**
364
365 /etc/init.d/chirpstack-gateway-bridge stop
366
367 **# restart**
368
369 /etc/init.d/chirpstack-gateway-bridge restart
370 )))
371
372
Kilight Cao 176.1 373 = 7.  How the gateway connects to Chirpstack v4 via gateway-bridge =
Kilight Cao 138.1 374
375
376 (% style="color:blue" %)**Below list the support products and Requirements:**
377
378 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]]
379 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/]]
380
381 (% style="color:blue" %)**What do you need to prepare**
382
383 A gateway that can access the internet normally
384
385
Kilight Cao 176.1 386 == 7.1  Configure Packet Forwarder ==
Kilight Cao 138.1 387
388
389 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
390
Xiaoling 138.5 391 * In the (% style="color:blue" %)**LoRaWAN**(%%) menu, click on (% style="color:blue" %)**LoRaWAN ~-~- Semtech UDP**
392
Kilight Cao 138.1 393 * Make sure the following settings are set:
394 ** **Service Provider:** //~-~-Custom/Private LoRaWAN~-~-//
395 ** **LoRaWAN Server Address:** //localhost or 127.0.0.1//
396 ** **Server port for upstream:** //1700//
397 ** **Server port for downstream:** //1700//
398
Xiaoling 138.5 399 Click (% style="color:blue" %)**Save & Apply**.
Kilight Cao 138.1 400
401 [[image:image-20221222114220-2.png||height="748" width="931"]]
402
403
Kilight Cao 176.1 404 == 7.2  Configuring gateway frequency ==
Kilight Cao 138.1 405
406
407 (% style="color:red" %)**Note: Gateway frequencies must match**
408
409 [[image:image-20221222134830-3.png||height="408" width="923"]]
410
411
Kilight Cao 176.1 412 == 7.3  Modify the gateway-bridge configuration file ==
Kilight Cao 138.1 413
414
Kilight Cao 127.1 415 Run the gateway command line command to modify the gateway-bridge configuration file:
416
417 (% class="box infomessage" %)
418 (((
Xiaoling 138.5 419 **root@dragino-1d27d4:~~#  vim /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml **
Kilight Cao 127.1 420 )))
421
Kilight Cao 124.1 422 [[image:image-20221222113302-1.png]]
423
Xiaoling 131.2 424
Kilight Cao 127.1 425 [[image:image-20221222140203-4.png||height="875" width="806"]]
426
Xiaoling 176.2 427
Kilight Cao 211.1 428 Configure the server address to which the gateway needs to be connected,"tcp:~/~/chirpstack_address:1883"
429
Kilight Cao 133.1 430 [[image:image-20221230094246-1.png||height="768" width="783"]]
Kilight Cao 127.1 431
432 (% class="wikigeneratedid" id="H" %)
433 After the modification, run the following command: **/etc/init.d/chirpstack-gateway-bridge restart**
434
435
Kilight Cao 176.1 436 == 7.4  (Re)start and stop gateway-bridge ==
Xiaoling 131.2 437
438
Kilight Cao 127.1 439 Use the following commands to (re)start and stop the ChirpStack Gateway Bridge Service:
440
441 (% class="box infomessage" %)
442 (((
443 **# start**
444
445 /etc/init.d/chirpstack-gateway-bridge start
446
447 **# stop**
448
449 /etc/init.d/chirpstack-gateway-bridge stop
450
451 **# restart**
452
453 /etc/init.d/chirpstack-gateway-bridge restart
454 )))
455
Kilight Cao 131.1 456
Kilight Cao 176.1 457 == 7.5  Successful Connection ==
Kilight Cao 131.1 458
Xiaoling 131.2 459
Kilight Cao 131.1 460 [[image:image-20221222141754-5.png||height="488" width="1150"]]
461
Xiaoling 131.2 462
Kilight Cao 131.1 463 [[image:image-20221222141830-6.png||height="582" width="1153"]]
464
Xiaoling 131.2 465
Kilight Cao 176.1 466 = 8.  Downlink =
Kilight Cao 124.1 467
Edwin Chen 245.1 468 == 8.1 Schedule Downlink via Web UI ==
Kilight Cao 124.1 469
470
Xiaoling 245.2 471 === Select HEX format for downlink ===
Xiaoling 108.9 472
Mengting Qiu 183.1 473
Mengting Qiu 177.2 474 (% style="color:red" %)**Note: The end node user manual provides HEX format of the downlink commands, so users can directly select HEX format downlink.**
Edwin Chen 111.1 475
476
Mengting Qiu 183.1 477 [[image:image-20231108171112-5.png||height="629" width="1117"]]
Edwin Chen 111.1 478
479
Mengting Qiu 183.1 480 [[image:image-20231108171145-6.png||height="497" width="1101"]]
Xiaoling 121.2 481
Edwin Chen 111.1 482
483
484
Xiaoling 1.2 485
Xiaoling 121.2 486 [[image:image-20220531173236-10.png||height="597" width="1215"]]
Xiaoling 1.2 487
Xiaoling 121.2 488 **Check ChripStack downlink DataRate**
Xiaoling 86.15 489
Xiaoling 121.2 490
491
Xiaoling 65.2 492 [[image:image-20220525101326-11.png]]
Xiaoling 1.2 493
Xiaoling 121.2 494 **Make sure the RX2DR is the same in the end node**
Xiaoling 1.2 495
Xiaoling 86.16 496
Edwin Chen 245.1 497 == 8.2 Schedule Downlink via API ==
Xiaoling 108.9 498
499
Edwin Chen 245.1 500 User can use MQTT to send downlink payload to ChirpStack to perform downstream to LoRaWAN End Node
Xiaoling 1.2 501
Xiaoling 1.5 502 (((
Xiaoling 108.9 503 **Below is examples:**
Xiaoling 1.5 504 )))
Xiaoling 1.2 505
Xiaoling 1.4 506 (% class="box" %)
507 (((
508 Connect to your server via MQTT:
509 MQTT Client ID: Any   
510 Protocol:mqtt/tcp   Server IP:loraserver_ip:1883
Xiaoling 1.2 511 User name: User name Password: password
Xiaoling 1.4 512 )))
Xiaoling 1.2 513
Xiaoling 97.2 514 [[image:image-20220531173419-11.png]]
Xiaoling 1.2 515
Xiaoling 1.5 516 (((
Xiaoling 121.2 517 **MQTT Connect to ChirpStack**
Xiaoling 86.17 518
519
Xiaoling 1.5 520 )))
Xiaoling 1.2 521
Xiaoling 1.5 522 (((
Xiaoling 108.9 523 **After connect**
Xiaoling 1.5 524 )))
Xiaoling 1.2 525
Xiaoling 1.4 526 (% class="box" %)
527 (((
528 Subscribe : Format:application/ID/device/ Device EUI/rx
Xiaoling 1.2 529 Example: application/7/device/00aedb3da649cb23/rx
Xiaoling 1.4 530 )))
Xiaoling 1.2 531
Xiaoling 1.4 532 (% class="box" %)
533 (((
534 Publish:
Xiaoling 1.2 535 Format: Top: application/ID/device/ Device EUI/tx
536 Payload: {"confirmed":true or false,"fPort":XX,"data":"xxxx"}
537 Example: Top: application/7/device/00aedb3da649cb23/tx
538 Payload: {"confirmed":true,"fPort":2,"data":"AwEB"}
Xiaoling 1.4 539 )))
Xiaoling 1.2 540
Xiaoling 98.2 541 [[image:image-20220531173519-12.png]]
Xiaoling 1.2 542
Xiaoling 121.2 543 **MQTT Connect to ChirpStack**
Xiaoling 1.2 544
Xiaoling 86.18 545
Xiaoling 1.2 546
Mengting Qiu 177.2 547 (((
548 Downlink payload encode javescript code.
Xiaoling 1.2 549
Mengting Qiu 177.2 550 We can run the following Javsscript code on the site:
Xiaoling 1.5 551 )))
Xiaoling 1.2 552
Xiaoling 1.4 553 (% class="box" %)
554 (((
555 function sha1_to_base64(sha1)
Xiaoling 1.2 556 {
557 var digits="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
558 var base64_rep = "";
559 var cnt = 0;
560 var bit_arr = 0;
561 var bit_num = 0;
Xiaoling 1.5 562 \\ for(var n = 0; n < sha1.length; ++n)
Xiaoling 1.2 563 {
564 if(sha1[n] >= 'A' && sha1[n] <= 'Z')
565 {
Jean-Philippe Gagné 121.1 566 ascv = sha1.charCodeAt( n ) - 55;
Xiaoling 1.2 567 }
568 else if(sha1[n] >= 'a' && sha1[n] <= 'z')
569 {
Jean-Philippe Gagné 121.1 570 ascv = sha1.charCodeAt( n ) - 87;
Xiaoling 1.2 571 }
572 else
573 {
Jean-Philippe Gagné 121.1 574 ascv = sha1.charCodeAt( n ) - 48;
Xiaoling 1.2 575 }
Xiaoling 1.5 576 \\ bit_arr = (bit_arr << 4) | ascv;
Xiaoling 1.2 577 bit_num += 4;
578 if(bit_num >= 6)
579 {
Xiaoling 1.4 580 bit_num -= 6;        
Xiaoling 1.2 581 base64_rep += digits[bit_arr >>> bit_num];
Xiaoling 1.4 582 bit_arr &= ~~(-1 << bit_num);
Xiaoling 1.2 583 }
584 }
Xiaoling 1.5 585 \\ if(bit_num > 0)
Xiaoling 1.2 586 {
587 bit_arr <<= 6 - bit_num;
588 base64_rep += digits[bit_arr];
589 }
Xiaoling 1.5 590 \\ var padding = base64_rep.length % 4;   
591 \\ if(padding > 0)
Xiaoling 1.2 592 {
593 for(var n = 0; n < 4 - padding; ++n)
594 {
595 base64_rep += "=";
596 }
597 }
598 return base64_rep;
599 }
Xiaoling 1.5 600 \\console.log(sha1_to_base64("data"));
601 \\data is downlink payload required by end node.
Xiaoling 1.4 602 e.g console.log(sha1_to_base64("030101"));
603 ​result: AwEB     
Xiaoling 1.2 604 AwEB is the 0x030101's base 64 Encode.
Xiaoling 1.5 605 \\​e.g console.log(sha1_to_base64("030000"));
Xiaoling 1.4 606 ​result: AwAA     
607 AwAA is 0x030000's base 64 Encode.
608 )))
Xiaoling 1.2 609
Xiaoling 86.21 610
Edwin Chen 245.1 611 == 8.3  Add decoder function in Chirpstack for downlink message ==
Xiaoling 108.9 612
613
Xiaoling 1.2 614
Kilight Cao 221.1 615 = 9.  Chirpstack Multicast Configuration =
616
617
618 == 9.1  Introduction ==
619
620 ChirpStack has support for creating multicast-groups to which devices can be assigned. When enqueueing a downlink payload for a multicast-group, ChirpStack will analyze which gateways must be used for broadcasting to cover the complete multicast-group. This means that potentially, a single multicast downlink payload will be emitted multiple times.
621
622 Multicast can be used for the following device-classes:
623
624 * Class-B
625 * Class-C
626
Kilight Cao 223.1 627 == 9.2  Example to configure chirpstack Multicast ==
Kilight Cao 221.1 628
629
Kilight Cao 240.1 630 This section illustrates how to configure ChirpStack Multicast. Below is the network structure, we use our LPS8v2 as the LoRaWAN gateway and two SN50v3-LB as the LoRaWAN end-node here.
Kilight Cao 221.1 631
Kilight Cao 223.1 632 [[image:image-20240923105725-1.png]]
Kilight Cao 221.1 633
634
Kilight Cao 244.1 635 This example assumes that the user already has the prerequisites:
Kilight Cao 221.1 636
Kilight Cao 244.1 637 * (% style="color:blue" %)**SN50v3-LB Software Location:   **(%%)**[[SN50v3-LB_protocol_008(AU915).bin>>attach:https://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/SN50v3-LB/#H3.ConfigureSN50v3-LB2FLS||target="_blank"]] .**Users need to flash them with the firmware support Multicast.
638 * (% style="color:blue" %)**SN50v3-LB Configure:   **(%%)Enable CLASS C and DISFCNTCHECK(The downlink fcnt is not compared with the fcnt of the node).
Kilight Cao 240.1 639
640 (% class="wikigeneratedid" %)
Kilight Cao 244.1 641 **AT command:** (% style="color:blue" %)**AT+CLASS=C**
Kilight Cao 240.1 642
643 (% class="wikigeneratedid" %)
Kilight Cao 244.1 644 (% style="color:blue" %)**AT+DISFCNTCHECK=1**
Kilight Cao 240.1 645
646 (% class="wikigeneratedid" %)
Kilight Cao 244.1 647 For details on how to configure the SN50v3-LB, please refer to the link:** [[Configure SN50v3-LB>>https://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/SN50v3-LB/#H3.ConfigureSN50v3-LB2FLS]]**
Kilight Cao 240.1 648
Kilight Cao 244.1 649 * (% style="color:blue" %)**Chirpstack Configuration: **(%%)LPS8v2 gateway and SN50v3-LB register on ChirpStack server already
Kilight Cao 240.1 650
Kilight Cao 244.1 651 Register LPS8v2 gateway to Chirpstack. See section :[[https:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Notes%20for%20ChirpStack/#H4.A0SemtechUDPforChirpStackv4>>https://wiki.dragino.com/xwiki/bin/view/Main/Notes%20for%20ChirpStack/#H4.A0SemtechUDPforChirpStackv4]]
652
653 Register SN50v3-LB to Chirpstack. See section :[[https:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Notes%20for%20ChirpStack/#H2.A0Nodeusageintroduction>>https://wiki.dragino.com/xwiki/bin/view/Main/Notes%20for%20ChirpStack/#H2.A0Nodeusageintroduction]]
654
655
Kilight Cao 223.1 656 === Step 1. Create the multicast group ===
657
658
Kilight Cao 240.1 659 Create the multicast group on the corresponding **Application~-~->multicast groups~-~->Add multicast-group** interface, For example, multicast_test01_au915
Kilight Cao 223.1 660
Kilight Cao 240.1 661 [[image:image-20240923141847-3.png||height="620" width="1207"]]
662
663
664 Enter the Multicast address,Multicast network session key,Multicast application session key.
665
666 Use the default LoRaWAN settings, as below:
667
668 * EU868: 869525000hz, DR0
669
670 * US915: 923300000hz, DR8
671
672 * CN470: 505300000hz, DR0
673
674 * AU915: 923300000hz, DR8
675
676 * AS923: 923200000hz, DR2
677
678 * KR920: 921900000hz, DR0
679
680 * IN865: 866550000hz, DR2
681
682 * RU864: 869100000hz, DR0
683
684 Group type: **Class-C**
685
686 Class-C scheduling type : **Delay**
687
688 [[image:image-20240923142446-5.png||height="720" width="1208"]]
689
690
691 === Step 2. Add gateways and devices to the multicast group ===
692
693
694 Select a gateway on the "**Gateways**" screen, click "**selected gateways"**, and click "**Add to multicast-group**" to add the gateway to the corresponding multicast group, for example, **multicast_test01_au915**.
695
696 [[image:image-20240923144335-6.png||height="619" width="1209"]]
697
698 [[image:image-20240923144418-7.png||height="572" width="1206"]]
699
700
701 On the **Application->Devices** interface, select two SN50v3-LB nodes registered with multicast support, and then click "**Selected devices**". and click "**Add to multicast-group**" to add the node to the corresponding multicast group
702
Kilight Cao 241.1 703 [[image:image-20240923144749-9.png||height="623" width="1211"]]
Kilight Cao 240.1 704
705
706 Access the multicast group to check whether two SN50V3-LBs and gateways are added successfully
707
708 [[image:image-20240923145148-10.png||height="601" width="1218"]]
709
710
711 === Step 3. Use the API for multicast Downlink ===
712
713
714 To use API Downlink, user first need to generate an API key
715
716 [[image:image-20240923145624-18.png||height="429" width="1211"]]
717
Kilight Cao 241.1 718 [[image:image-20240923145520-16.png||height="422" width="1212"]]
Kilight Cao 240.1 719
720
721 For example:**[[https:~~/~~/www.chirpstack.io/docs/chirpstack/api/index.html>>url:https://www.chirpstack.io/docs/chirpstack/api/index.html]]**
722
Kilight Cao 241.1 723 [[image:image-20240923145953-21.png||height="808" width="1222"]]
Kilight Cao 240.1 724
725
726 Users can access the Linux console of the gateway via SSH, and then use the curl command to multicast Downlink
727
728 The format is as follows:
729
730 (% class="box infomessage" %)
731 (((
732 curl -X POST 'http:~/~/**Chirpstack_Server_Address**:8090/api/multicast-groups/**Multicast_Groups_ID**/queue' -H "Content-Type: application/json" -H "Authorization: Bearer **eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJjaGlycHN0YWNrIiwiaXNzIjoiY2hpcnBzdGFjayIsInN1YiI6IjM3YmRiNzBjLTNjODgtNDFjMi04YmQ2LTgyMDI4ZjdkNzY3NyIsInR5cCI6ImtleSJ9.p1xvRP1PAdwLnLAJn9w6ef612KM8oPZSa_2v4UYPV0w**" -d '{
733 "queueItem": {
734 "data": "EjRWeA==",
735 "fCnt": 0,
736 "fPort": 123
737 }
738 }'
739 )))
740
741 In the command,eyJ........._2v4UYPV0w is the API key, which can be obtained from the Chirpstack server and the data format is base64,
742
743
744 === Result ===
745
746 Connecting to the SN50v3-LB using the serial USB-TTL port can check that two SN50v3-LBs are receiving Downlink at the same time
747
748 [[image:image-20240923151814-23.png||height="563" width="1255"]]
749
750
Kilight Cao 242.1 751 = 10.  Multiply Uplink in ChirpStack =
Xiaoling 108.9 752
753
Xiaoling 1.4 754 (((
Xiaoling 1.2 755 nbtrans field is the value to determine the re-transmission time for unconfirmed uplink data.
Xiaoling 1.4 756 )))
Xiaoling 1.2 757
Xiaoling 1.4 758 (((
Xiaoling 1.2 759 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]]
Xiaoling 108.9 760
761
Xiaoling 1.4 762 )))
Xiaoling 1.2 763
Xiaoling 121.2 764 [[image:image-20220526091912-7.png||height="241" width="1336"]]
Xiaoling 1.2 765
Xiaoling 108.9 766
Xiaoling 1.5 767 (((
Xiaoling 1.2 768 nbtrans is a field of ADR message, in unconfirm mode, it tells end node how many time it needs to transmit for every frame.
Xiaoling 108.9 769
770
Xiaoling 1.5 771 )))
Xiaoling 1.2 772
Xiaoling 76.2 773 [[image:image-20220525104359-21.png]]
Xiaoling 1.2 774
Xiaoling 1.4 775 (((
Xiaoling 1.2 776 Above behaviour will cause the platform shows below two cases of error:
Xiaoling 108.9 777
778
Xiaoling 1.4 779 )))
Xiaoling 1.2 780
Xiaoling 1.4 781 (((
Xiaoling 1.2 782 Error of duplicate Frame Counter
Xiaoling 1.4 783 )))
Xiaoling 1.2 784
Xiaoling 76.2 785 [[image:image-20220525104437-22.png]]
Xiaoling 1.2 786
Xiaoling 86.23 787
Xiaoling 108.9 788
Xiaoling 121.2 789 **Duplicate transmission in short time**
Xiaoling 1.2 790
Xiaoling 176.2 791 [[image:image-20220601102430-1.png||height="508" width="1120"]]
Xiaoling 1.2 792
Xiaoling 86.24 793
Kilight Cao 242.1 794 == 10.1  Solution ==
Xiaoling 108.9 795
796
Xiaoling 1.2 797 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]]
798
Xiaoling 1.5 799 (((
Xiaoling 108.11 800 (% 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.**
Xiaoling 1.5 801 )))
Xiaoling 1.2 802
Xiaoling 79.2 803 [[image:image-20220525104532-24.png]]
Xiaoling 1.2 804
Xiaoling 86.25 805
Xiaoling 108.9 806 **installation path:**
Xiaoling 1.2 807
Xiaoling 79.2 808 [[image:image-20220525104554-25.png]]
Xiaoling 1.2 809
Xiaoling 86.25 810
Xiaoling 108.9 811
Xiaoling 1.5 812 (((
Xiaoling 108.11 813 (% style="color:blue" %)**2.  Environment variable settings:**
Xiaoling 1.5 814 )))
Xiaoling 1.2 815
Xiaoling 1.5 816 (((
Xiaoling 1.2 817 1) Open Computer -> Properties -> Advanced System Settings -> Environment Variables and add a "new" system variable:
Xiaoling 1.5 818 )))
Xiaoling 1.2 819
Xiaoling 1.5 820 (((
Xiaoling 108.9 821 2) Set the variable name GOROOT and the variable value C:\Go\ (installation directory)
Xiaoling 1.5 822 )))
Xiaoling 1.2 823
Xiaoling 43.2 824 [[image:image-20220524165433-33.png]]
Xiaoling 1.2 825
Xiaoling 86.26 826
Xiaoling 108.9 827 3) Modify the system variable Path and add C:\Go\bin\:
Xiaoling 1.2 828
Xiaoling 43.2 829 [[image:image-20220524165452-34.png]]
Xiaoling 1.2 830
Xiaoling 106.3 831
Xiaoling 1.2 832 User variable setting file generation directory: D:\go:
833
Xiaoling 43.2 834 [[image:image-20220524165517-35.png]]
Xiaoling 1.2 835
Xiaoling 86.27 836
Xiaoling 1.2 837
Xiaoling 108.11 838 (% 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.**
Xiaoling 108.9 839
Xiaoling 1.2 840 The name of the plugin: Example ADR plugin:
841
Xiaoling 48.2 842 [[image:image-20220524165540-36.png]]
Xiaoling 1.2 843
844 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.
845
Xiaoling 48.2 846 [[image:image-20220524165557-37.png]]
Xiaoling 1.2 847
Xiaoling 86.28 848
Xiaoling 1.2 849
Xiaoling 108.11 850 (% style="color:blue" %)**4.  Compile the ADR configuration file and generate the exe file.**
Xiaoling 108.9 851
Xiaoling 1.2 852 1) Create a folder named adr-setting
853
854 2) Open the adr-setting folder
855
856 3) Put adr.setting.go in this folder.
857
858 4) Open the computer cmd and run the following commands in sequencecd adr-setting
859
860 go mod init adr-setting
861
862 go get github.com/brocaar/chirpstack-network-server/v3/adr
863
864 go get github.com/hashicorp/go-plugin
865
866 go get adr-setting
867
868 go build
869
870 5) Finally generate this file:
871
Xiaoling 48.2 872 [[image:image-20220524165623-38.png]]
Xiaoling 1.2 873
Xiaoling 86.29 874
Xiaoling 1.2 875
Xiaoling 108.11 876 (% style="color:blue" %)**5.  Add the plugin and run the plugin.**
Xiaoling 108.9 877
Xiaoling 1.5 878 (((
Xiaoling 1.2 879 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:
Xiaoling 1.5 880 )))
Xiaoling 1.2 881
Xiaoling 48.2 882 [[image:image-20220524165641-39.png]]
Xiaoling 1.2 883
Xiaoling 1.4 884 (((
Xiaoling 1.5 885 (((
Xiaoling 1.2 886 For example: adr_plugins=[“adr-setting”]
Xiaoling 1.4 887 )))
Xiaoling 1.5 888 )))
Xiaoling 1.2 889
Xiaoling 1.4 890 * (((
Xiaoling 1.5 891 (((
Xiaoling 1.4 892 Adding a single plugin format is adr_plugins=["filename"]
893 )))
Xiaoling 1.5 894 )))
Xiaoling 1.2 895
Xiaoling 1.4 896 * (((
Xiaoling 1.5 897 (((
Xiaoling 1.4 898 Adding multiple plugins The format is adr_plugins=["file name 1", "file name 2",...]
899 )))
Xiaoling 1.5 900 )))
Xiaoling 1.2 901
Xiaoling 1.4 902 (((
Xiaoling 1.5 903 (((
Xiaoling 1.2 904 Finally, re-run chirpstack-network-server.exe, and then select the plugin you just compiled in Device-profiles,
Xiaoling 1.4 905 )))
Xiaoling 1.5 906 )))
Xiaoling 1.2 907
Xiaoling 79.2 908 [[image:image-20220525104647-26.png]]
Xiaoling 1.2 909
910 Finish.
911
Xiaoling 86.30 912
Kilight Cao 242.1 913 = 11.  How to store/get all data traffic for a specific sensor, including raw payload, and uplink/ downlink history. =
Xiaoling 108.9 914
Xiaoling 1.2 915
Xiaoye 115.1 916 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.
Xiaoling 1.2 917
Xiaoye 115.1 918 This example will be shown how to store/get all the data in two ways:
Xiaoling 108.9 919
Xiaoling 138.5 920 (% style="color:blue" %)**//1). Chirpstack ~-~-> Node-red//**
Xiaoye 115.1 921
922
Xiaoling 176.2 923 [[image:image-20221012184501-1.png||height="608" width="1041"]]
Xiaoye 115.1 924
Xiaoling 121.2 925
Xiaoye 120.1 926 Use MQTT in Nore-red to subscribe to topics published by the chirpstack-application and then continuously write to a file
Xiaoye 115.1 927
928 [[image:image-20221012174220-2.png]]
929
930
Xiaoye 120.1 931 [[image:image-20221012184655-3.png||height="395" width="1049"]]
932
933
Xiaoling 121.2 934 **Each message is continuously logged to a specified file**
Xiaoye 115.1 935
936 [[image:image-20221012174352-3.png]]
937
938
Xiaoling 138.5 939 (% style="color:blue" %)**//2). MQTT  Sub//**
Xiaoye 115.1 940
941 If you don't want to store the information via node-red, you can get the output via the subscribe command.
942
943
944 **If connecting from the same machine, you can use the following command to receive data:**
945
946 (% class="box infomessage" %)
Xiaoling 1.4 947 (((
Xiaoling 138.5 948 **mosquitto_sub -h localhost -t "application/#" -v**
Xiaoye 115.1 949 )))
950
951
Xiaoling 138.5 952 (% style="color:blue" %)**Different host**
Xiaoye 115.1 953
954 (% class="box infomessage" %)
955 (((
Xiaoling 138.5 956 **mosquitto_sub -h IPADDRESS -p 8883 ~-~-insecure ~-~-cafile ca.pem ~-~-cert cert.pem ~-~-key key.pem -t "application/#" -v**
Xiaoye 115.1 957 )))
958
Xiaoling 176.2 959 [[image:image-20221012173639-1.png||height="273" width="1206"]]
Xiaoye 115.1 960
Xiaoling 176.2 961
Kilight Cao 242.1 962 = 12.  How to use Chirpstack API to batch register Sensor Node/Gateway in Chistapstack Server =
Xiaoye 184.1 963
964 The following example is based on the built-in ChirpStack server for LPS8V2
965
Kilight Cao 189.1 966 [[image:image-20231201174640-1.png||height="584" width="1148"]]
Xiaoye 184.1 967
Xiaoye 115.1 968
Kilight Cao 242.1 969 == **12.1 Generate API Tokens** ==
Xiaoye 115.1 970
Kilight Cao 204.1 971 Access the built-in chirpstack , click "**API Key**" and "**Add API Key**".
Kilight Cao 189.1 972
973 [[image:image-20231201175118-2.png||height="597" width="1156"]]
974
Kilight Cao 204.1 975 **Save the generated API Tokens**
Kilight Cao 189.1 976
977 [[image:image-20231201175648-3.png||height="596" width="1155"]]
978
Kilight Cao 200.1 979 [[image:image-20231204104802-1.png]]
Kilight Cao 189.1 980
Kilight Cao 200.1 981
Kilight Cao 242.1 982 == **12.2 Template file** ==
Kilight Cao 200.1 983
984
985 Click on **"Template File Download"**, the user will download a **register.csv** template file,
986
987 [[image:image-20231204105201-2.png]]
988
989
990 Before registering in batches, the user needs to add an **Application** and **Device profile**, If  you have already added them, you do not need to add them again,
991
Kilight Cao 204.1 992 Open the corresponding **Application** and **Device profile** and copy their IDs
Kilight Cao 200.1 993
994 [[image:image-20231204110902-5.png||height="618" width="1197"]]
995
996 [[image:image-20231204111116-7.png||height="619" width="1199"]]
997
998 [[image:image-20231204111834-9.png||height="273" width="1205"]]
999
1000 [[image:image-20231204112107-10.png||height="621" width="1203"]]
1001
1002
1003
Kilight Cao 242.1 1004 == **12.3 Batch Register** ==
Kilight Cao 204.1 1005
1006 [[image:image-20231204113136-11.png||height="362" width="1062"]]
1007
1008
1009 **Check whether the batch registration is successful**
1010
1011 [[image:image-20231204113212-12.png]]
1012
1013 [[image:image-20231204113237-13.png||height="558" width="1081"]]
1014
1015
1016
Kilight Cao 242.1 1017 = 13.  Example: Use Local Server ChirpStack and Node-Red in LPS8v2 =
Kilight Cao 189.1 1018
1019
Kilight Cao 151.1 1020 LPS8v2 includes a local ChirpStack Server and Node-Red. This example shows how to configure LHT65N to use with the local Node-Red server. This example assumes users already have:
Xiaoye 115.1 1021
Kilight Cao 141.1 1022 * LHT65N register on LPS8v2 Built-In ChirpStack server already
1023 * The user is able to see the data on the built-in ChirpStack server device page.
Xiaoye 115.1 1024
Kilight Cao 141.1 1025 Below are the steps to plot the sensor data on LPS8v2 Node-Red.
1026
Xiaoling 147.2 1027
Kilight Cao 242.1 1028 == 13.1 Link Node-Red to Local ChirpStack ==
Kilight Cao 141.1 1029
Xiaoling 147.2 1030
Kilight Cao 145.1 1031 Users can download the Node-Red decoder from this link and import it into the Node-Red platform:  **[[attach:LHT65N-ChirpStack-node-red.json||target="_blank"]]**
Kilight Cao 141.1 1032
1033 For more information on importing Input Flow, check out this link: **[[Import Input Flow for Dragino Sensors>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Node-RED/#H3.A0ImportInputFlowforDraginoSensors]]**
1034
1035 After importing the Input Flow is complete, the user needs to edit the MQTT in the node
1036
1037
Kilight Cao 145.1 1038 (% style="color:blue" %)**1. Change the Topic**
1039
Kilight Cao 141.1 1040 Topic modifies it to the following format:
1041
Kilight Cao 145.1 1042 **application/(% style="color:red" %)Application ID(%%)/device/(% style="color:red" %)End device ID(%%)/event/up**
Kilight Cao 141.1 1043
Kilight Cao 152.1 1044 Reference link: [[**Node-RED integration** >>https://www.chirpstack.io/docs/guides/node-red-integration.html]]
1045
Kilight Cao 145.1 1046 [[image:image-20230527143923-1.png||height="588" width="1132"]]
Kilight Cao 141.1 1047
1048
Kilight Cao 145.1 1049
1050 (% style="color:blue" %)**2. Enter the MQTT configuration information**
1051
1052 [[image:image-20230527144206-2.png||height="590" width="1136"]]
1053
1054
Xiaoling 176.2 1055 (% style="color:blue" %)**3.** **Finally, click "Update" and Deploy**
Kilight Cao 147.1 1056
1057 "Connected" indicates that the Link Node-red to Local Chirpstack is normal.
1058
1059 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/Notes%20for%20TTN/WebHome/image-20220914140918-5.png?width=1121&height=602&rev=1.1||alt="image-20220914140918-5.png"]]
1060
1061
Kilight Cao 242.1 1062 == 13.2 Check result. ==
Kilight Cao 147.1 1063
Xiaoling 147.2 1064
Kilight Cao 147.1 1065 Users can check logs by adding debug.
1066
1067 Browser access: **Node-Red-Server-Address:1880/ui**
1068
1069 [[image:image-20230529150923-1.png||height="424" width="1118"]]
1070
Xiaoling 147.2 1071
Kilight Cao 242.1 1072 = 14.  Trouble Shooting =
Kilight Cao 141.1 1073
Kilight Cao 242.1 1074 == 14.1  MIC Mismatch or MIC Failed ==
Kilight Cao 141.1 1075
1076
Xiaoye 115.1 1077 (((
Xiaoling 1.2 1078 When the device is registered or the device is working normally, the problem of MIC mismatch and MIC failed occurs.
Xiaoling 1.4 1079 )))
Xiaoling 1.2 1080
Xiaoling 1.4 1081 (((
Xiaoling 1.2 1082 Under normal circumstances, users need to change the APPKEY to solve this problem.
Xiaoling 131.2 1083
Bei Jinggeng 169.1 1084
Kilight Cao 242.1 1085 == 14.2  The node is very close to the gateway, but the signal is poor ==
Bei Jinggeng 169.1 1086
Xiaoling 176.2 1087
Bei Jinggeng 169.1 1088 If you are using US915 or AU915, you found the frequency points of different subband ranges in your uplink
1089
1090 Like that:Both 905.1Mhz and 902.3Mhz appear on uplink
1091 But they belong to Subband1 and Subband2 of US915 respectively
1092
1093 Cause: The server and the gateway use different frequency bands (the server uses Subband1, and the gateway uses Subband2)
1094
1095 In server side, it shows the frequency is 905.1Mhz, which is sub-band2. But the RSSI is very low, Because this is not a signal in 905.1Mhz, it is on 902.3Mhz, the signal is too strong and appear a noise in 905.1Mhz.
1096
1097 How to check the frequency band used by the server:
1098
1099 You can view the information sent by the server: ch_mask in Unconfirmdedatadown
1100
1101 [[image:image-20230821113255-1.png]]
1102
1103 According to lorawan's protocol, your first ch_mask is 7 for ChMaskCntl = 7 then 125 kHz channels are disabled. Simultaneously the channels 64 to 71 are set according to the ChMask bit mask.
1104
Bei Jinggeng 170.1 1105 [[image:image-20230821113539-2.png]]
Bei Jinggeng 169.1 1106
1107 In the second message, the channel 0~~7 is true, which means that your server is using subband2.
1108
Bei Jinggeng 170.1 1109 [[image:image-20230821113618-3.png]]
Bei Jinggeng 169.1 1110
Xiaoling 176.2 1111 **Note: lorawan's protocol link——[[LoRaWAN® Regional Parameters v1.0.3revA (lora-alliance.org)>>url:https://resources.lora-alliance.org/document/lorawan-regional-parameters-v1-0-3reva]]**
1112
Mengting Qiu 210.1 1113
Kilight Cao 242.1 1114 == 14.3  ChirpStackv4 node device displays "UPLINK_F_CNT_RETRANSMISSION" ==
Mengting Qiu 210.1 1115
1116
Kilight Cao 216.1 1117 This is because the node's packets are retransmitted, and the Fcnt of these packets is the same.
Mengting Qiu 210.1 1118
Kilight Cao 216.1 1119 The user can Disable frame-counter validation on the chirpstack node and this warning message will not appear in the logs.
Mengting Qiu 210.1 1120
Kilight Cao 216.1 1121
Kilight Cao 218.1 1122 The packet is retransmitted because the node device has enabled the acknowledgment uplink packet mode and the node cannot receive the ACK acknowledgment packet delivered by the gateway.
Kilight Cao 216.1 1123
1124
Kilight Cao 218.1 1125 **The possible reasons are: **
1126
1127 ~1. The signal of the node device and the gateway is not good
1128
1129 2. Too many node devices affect the downlink of the gateway
1130
1131
1132 [[image:image-20240717085339-1.jpeg]]
1133
1134
1135 * **Disable frame-counter validation**
1136
1137 [[image:image-20240717102613-5.png||height="803" width="1211"]]
1138
1139
1140 * **Result**
1141
Kilight Cao 216.1 1142 [[image:image-20240717092428-4.jpeg]]
1143
Kilight Cao 218.1 1144
Kilight Cao 242.1 1145 == 14.4  How to get the log information of the node? ==
Kilight Cao 216.1 1146
1147
Mengting Qiu 210.1 1148 ~1. Get information about a single node.
1149
1150 * Download this file in the node's live data interface.
1151
1152 [[image:image-20240117173123-1.png||height="526" width="1086"]]
1153
1154 * The LoRaWAN frames download gateway receives real-time data from the current node.
1155
1156 [[image:image-20240117174452-2.png||height="525" width="1081"]]
1157
1158
1159 2. Get information about the entire Gateway.
1160
1161 * Click to select the online gateway of the current node.
1162
1163 [[image:image-20240117175058-4.png||height="532" width="1077"]]
1164
1165
1166 * Download this file on the LoRaWAN frames interface.
1167
1168 [[image:image-20240117175009-3.png||height="524" width="1076"]]
1169
1170
1171
1172 After the data collection is completed, you can send this file directly to our technical support personnel for analysis.
1173
1174
1175 You can also use the packet analysis tool developed by our company to check it yourself. Please refer to the following [[link>>http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20of%20Dragino%20LoRaWAN%20Packet%20Analyze%20Tool/#H4.Chirpstack]] to use this tool.
1176
1177 [[image:image-20240117175738-5.png]]
1178
Kilight Cao 216.1 1179 (% class="wikigeneratedid" id="H" %)
1180
Xiaoling 1.4 1181 )))