Changes for page Notes for ChirpStack
Last modified by Kilight Cao on 2024/09/24 15:23
Change comment:
Uploaded new attachment "image-20221012174352-3.png", version {1}
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 39 removed)
- LHT65N-ChirpStack-node-red.json
- image-20221012184501-1.png
- image-20221012184631-2.png
- image-20221012184655-3.png
- image-20221222113302-1.png
- image-20221222114220-2.png
- image-20221222134830-3.png
- image-20221222140203-4.png
- image-20221222141754-5.png
- image-20221222141830-6.png
- image-20221230094246-1.png
- image-20230415165254-1.png
- image-20230415170404-2.png
- image-20230415170854-3.png
- image-20230527115750-1.png
- image-20230527143923-1.png
- image-20230527144206-2.png
- image-20230529150923-1.png
- image-20230531162943-1.png
- image-20230702094608-1.png
- image-20230702094852-2.png
- image-20230702094944-3.png
- image-20230702095114-4.png
- image-20230702095557-5.png
- image-20230702095641-6.png
- image-20230702095827-7.png
- image-20230702100312-8.png
- image-20230702100356-9.png
- image-20230702100543-10.png
- image-20230702100930-11.png
- image-20230821113255-1.png
- image-20230821113539-2.png
- image-20230821113618-3.png
- image-20230821114047-4.png
- image-20230926092907-1.png
- image-20230926093057-2.png
- image-20230926093233-3.png
- image-20231108140540-1.png
- image-20231108164914-2.png
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. ting1 +XWiki.Xiaoye - Content
-
... ... @@ -20,7 +20,7 @@ 20 20 21 21 **1) Have a Chirstack Server.** 22 22 23 -[[image:image-202 30821114047-4.png||height="524" width="990"]]23 +[[image:image-20220525100058-1.png]] 24 24 25 25 ChirpStack home page 26 26 ... ... @@ -38,58 +38,12 @@ 38 38 ))) 39 39 40 40 41 -= 2. Node usage introduction = 42 42 43 -= =2.1RegisterNode==42 += 2. Semtech UDP = 44 44 44 +== 2.1 Step 1. Add the Network-servers == 45 45 46 -**Step 1: Add application** 47 47 48 -[[image:image-20230702094608-1.png||height="537" width="1015"]] 49 - 50 - 51 -**Step 2:Fill name** 52 - 53 -[[image:image-20230702094852-2.png]] 54 - 55 - 56 -**Step3 :Add device profile** 57 - 58 -[[image:image-20230702095114-4.png||height="448" width="1061"]] 59 - 60 - 61 -**Step4 :Configure your device profile** 62 - 63 -[[image:image-20230702095557-5.png||height="648" width="1121"]] 64 - 65 -Does node support class-c 66 - 67 -[[image:image-20230702095641-6.png||height="349" width="1114"]] 68 - 69 -Add node's decoder 70 - 71 -[[image:image-20230702095827-7.png||height="490" width="1138"]] 72 - 73 - 74 -**Step5 :add device** 75 - 76 -[[image:image-20230702094944-3.png||height="439" width="1153"]] 77 - 78 - 79 -[[image:image-20230702100312-8.png||height="550" width="1106"]] 80 - 81 - 82 -[[image:image-20230702100543-10.png||height="313" width="1099"]] 83 - 84 - 85 -[[image:image-20230702100930-11.png||height="613" width="1098"]] 86 - 87 - 88 -= 3. Semtech UDP for ChirpStack v3 = 89 - 90 -== 3.1 Step 1. Add the Network-servers == 91 - 92 - 93 93 The network-Servers address varies depending on the ChirpStack server setup environment 94 94 95 95 (% class="box" %) ... ... @@ -101,24 +101,27 @@ 101 101 102 102 (% style="color:red" %)**If the user cannot add network-Servers, re-check the ChirpStack code or the server building process.** 103 103 104 -[[image:image-20220531171609-1.png||height="638" width="1268"]](% style="display:none" %) 105 105 59 +[[image:image-20220531171609-1.png]] 60 + 106 106 Add the Network-servers 107 107 108 108 109 -== 3.2 Step 2. Create Gateway-profiles == 110 110 65 +== 2.2 Step 2. Create Gateway-profiles == 111 111 112 -[[image:image-20220531171651-2.png||height="632" width="1264"]](% style="display:none" %) 113 113 68 +[[image:image-20220531171651-2.png]] 69 + 114 114 Create Gateway-profiles 115 115 116 116 117 -== 3.3 Step 3. Create Service-profiles == 118 118 74 +== 2.3 Step 3. Create Service-profiles == 119 119 120 -[[image:image-20220531171809-3.png||height="761" width="1265"]] 121 121 77 +[[image:image-20220531171809-3.png]] 78 + 122 122 Create Service-profiles 123 123 124 124 ... ... @@ -129,59 +129,51 @@ 129 129 If the user has completed the preceding steps, proceed to the next step.(% style="display:none" %) 130 130 131 131 132 -== 3.4 Step 4. Add the gateway == 133 133 90 +== 2.4 Step 4. Add the gateway == 134 134 92 + 135 135 The example gateway id is: a840411e96744150 136 136 137 137 ((( 138 138 (% style="color:red" %)**Note : The Gateway EUI and server addresses must match the ChirpStack configuration.** 97 + 98 + 139 139 ))) 140 140 141 -[[image:image-20220531171923-4.png ||height="745" width="1253"]](% style="display:none" %)101 +[[image:image-20220531171923-4.png]](% style="display:none" %) 142 142 143 143 Add the gateway 144 144 145 145 106 + 146 146 [[image:image-20220531172031-5.png]] 147 147 148 148 Configure the gateway 149 149 150 150 151 -== 3.5 Step 5. Checking gateway Status == 152 152 113 +== 2.5 Step 5. Checking gateway Status == 153 153 154 -[[image:image-20220531172158-6.png||height="704" width="1167"]](% style="display:none" %) 155 155 116 +[[image:image-20220531172158-6.png]](% style="display:none" %) 156 156 157 157 119 + 158 158 gateway Status 159 159 160 -[[image:image-20220531172304-7.png ||height="628" width="1165"]]122 +[[image:image-20220531172304-7.png]] 161 161 162 162 gateway Status 163 163 164 164 165 -= 4. Semtech UDP for ChirpStack v4 = 166 166 167 -= =4.1Step1. Add theeway==128 += 3. Gateway Registration for Basics Station = 168 168 169 169 170 - [[image:image-20230926092907-1.png||height="598" width="1007"]]131 +== 3.1 Introduction == 171 171 172 172 173 -[[image:image-20230926093057-2.png||height="541" width="1002"]] 174 - 175 - 176 -== 4.2 Step 2. Checking gateway Status == 177 - 178 -[[image:image-20230926093233-3.png||height="581" width="1018"]] 179 - 180 -= 5. Gateway Registration for Basics Station = 181 - 182 -== 5.1 Introduction == 183 - 184 - 185 185 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. 186 186 187 187 ChirpStack Open-Source LoRaWAN® Network Server needs to set up a configuration that can use Semtech BasicStation. ... ... @@ -202,13 +202,14 @@ 202 202 A gateway that can access the internet normally 203 203 204 204 205 -== 5.2 Add Gateway == 206 206 155 +== 3.2 Add Gateway == 207 207 157 + 208 208 [[image:image-20220524164205-10.png]] 209 209 210 210 211 -== 5.3 Access the gateway GUI ==161 +== 3.3 Access the gateway GUI == 212 212 213 213 214 214 Access the gateway GUI interface of LoRaWAN~-~->LoRaWAN ~-~- Basic Station ... ... @@ -222,7 +222,7 @@ 222 222 ((( 223 223 Service Provider ~-~-> Choose the ChirpStack/Senet ~-~- Basic Station 224 224 225 -LNS URI ~-~-> Enter the LNS URI address, For example : wss:~/~/xxxx.chirpstack.com:4 43 or ws:~/~/xxxx.chirpstack.com:3001175 +LNS URI ~-~-> Enter the LNS URI address, For example : wss:~/~/xxxx.chirpstack.com:433 or ws:~/~/xxxx.chirpstack.com:3001 226 226 227 227 LNS TLS trust ~-~-> Upload the TLS Certificate 228 228 ))) ... ... @@ -231,13 +231,13 @@ 231 231 [[image:image-20220524164341-12.png]] 232 232 233 233 234 -== 5.4 Start Station ==184 +== 3.4 Start Station == 235 235 236 236 237 237 When the user has finished the configuration, Please click **Sace&Apply** to start station to connect ChirpStack. 238 238 239 239 240 -== 5.5 Successful Connection ==190 +== 3.5 Successful Connection == 241 241 242 242 243 243 If user completes the above steps, which will see live date in the ChirpStack. ... ... @@ -245,9 +245,10 @@ 245 245 [[image:image-20220524164448-13.png]] 246 246 247 247 248 -== 5.6 Trouble Shooting == 249 249 199 +== 3.6 Trouble Shooting == 250 250 201 + 251 251 User can check the station log in the logread/system log page. 252 252 253 253 [[image:image-20220531172837-8.png]] ... ... @@ -258,259 +258,47 @@ 258 258 [[image:image-20220531172857-9.png]] 259 259 260 260 261 -= 6. How the gateway connects to Chirpstack v3 via gateway-bridge = 262 262 213 += 4. Downlink = 263 263 264 -(% style="color:blue" %)**Below list the support products and Requirements:** 215 +(% class="wikigeneratedid" %) 216 +== 4.1 Convert HEX to Base64 == 265 265 266 -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]] 267 -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/]] 218 +(% style="color:red" %)**Note: Chirpstack uses base64 to downlink, the end node user manual provides HEX format of the downlink commands. So user needs to convert the HEX to Base64.** 268 268 269 - (% style="color:blue"%)**Howto setup chirpStack Gateway-bridge**220 +[[Online HEX to Base64 Converter>>https://base64.guru/converter/encode/hex]]: 270 270 271 - Users can check out the ChirpStackgateway-bridge v3 [[link>>https://www.chirpstack.io/gateway-bridge/gateway/dragino/]]222 +[[image:image-20221010193350-1.png]] 272 272 273 273 274 - (%style="color:blue" %)**Whatdo youtoprepare**225 +[[Online Base64 to Hex converter>>https://base64.guru/converter/decode/hex]] 275 275 276 - A gateway that can access theinternet normally227 +[[image:image-20221010193621-2.png]] 277 277 278 278 279 -The following example does not have configuration certificates: 280 280 231 +== 4.2 Chirpstack Downlink Note == 281 281 282 -== 6.1 Configure Packet Forwarder == 283 283 284 - 285 -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 286 - 287 -* In the (% style="color:blue" %)**LoRaWAN** (%%)menu, click on (% style="color:blue" %)**LoRaWAN ~-~- Semtech UDP** 288 - 289 -* Make sure the following settings are set: 290 -** **Service Provider:** //~-~-Custom/Private LoRaWAN~-~-// 291 -** **LoRaWAN Server Address:** //localhost or 127.0.0.1// 292 -** **Server port for upstream:** //1700// 293 -** **Server port for downstream:** //1700// 294 - 295 - Click (% style="color:blue" %)**Save & Apply**. 296 - 297 -[[image:image-20221222114220-2.png||height="748" width="931"]] 298 - 299 - 300 -== 6.2 Configuring gateway frequency == 301 - 302 - 303 -(% style="color:red" %)**Note: Gateway frequencies must match** 304 - 305 -[[image:image-20221222134830-3.png||height="408" width="923"]] 306 - 307 - 308 -== 6.3 Generate and modify the gateway-bridge configuration file == 309 - 310 - 311 -**1)Generate the gateway-bridge configuration file** 312 - 313 -By default, the configuration file is not up-to-date,so the user needs to rebuild the gateway-bridge configuration file. 314 - 315 -Users need to access the command line of the gateway through SSH,Then type the following command: 316 - 317 -(% class="box infomessage" %) 318 -((( 319 -**/opt/chirpstack-gateway-bridge/chirpstack-gateway-bridge configfile > /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml ** 320 -))) 321 - 322 - 323 -**2)modify the gateway-bridge configuration file** 324 - 325 -The user needs to modify the server address in line 252 in the configuration file 326 - 327 -(% class="box infomessage" %) 328 -((( 329 -**vim /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml ** 330 -))) 331 - 332 -[[image:image-20230415165254-1.png||height="583" width="956"]] 333 - 334 - 335 -== 6.4 Debug == 336 - 337 - 338 -After the above configuration is completed, the user can enter the command to debug the gateway-bridge connection 339 - 340 -(% class="box infomessage" %) 341 -((( 342 -**/opt/chirpstack-gateway-bridge/chirpstack-gateway-bridge ~-~-config /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml** 343 -))) 344 - 345 -If the gateway-bridge connection is normal, the debug log displays **"connected to mqtt broker"**. 346 - 347 -[[image:image-20230415170404-2.png]] 348 - 349 - 350 -If the debug log shows "**connection error**", check that the server port or server is correct 351 - 352 -[[image:image-20230415170854-3.png]] 353 - 354 - 355 -More information can be found on the **[[ChirpStack website>>https://www.chirpstack.io/docs/]]**or **[[Forum>>url:https://forum.chirpstack.io/]]** 356 - 357 - 358 -== 6.5 (Re)start and stop gateway-bridge == 359 - 360 - 361 -Use the following commands to (re)start and stop the ChirpStack Gateway Bridge Service: 362 - 363 -(% class="box infomessage" %) 364 -((( 365 -**# start** 366 - 367 -/etc/init.d/chirpstack-gateway-bridge start 368 - 369 -**# stop** 370 - 371 -/etc/init.d/chirpstack-gateway-bridge stop 372 - 373 -**# restart** 374 - 375 -/etc/init.d/chirpstack-gateway-bridge restart 376 -))) 377 - 378 - 379 -= 7. How the gateway connects to Chirpstack v4 via gateway-bridge = 380 - 381 - 382 -(% style="color:blue" %)**Below list the support products and Requirements:** 383 - 384 -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]] 385 -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/]] 386 - 387 -(% style="color:blue" %)**How to set up chirpStack Gateway-bridge** 388 - 389 -Users can check out the ChirpStack gateway-bridge v4 [[link>>https://www.chirpstack.io/docs/chirpstack-gateway-bridge/install/dragino.html]] 390 - 391 - 392 -(% style="color:blue" %)**What do you need to prepare** 393 - 394 -A gateway that can access the internet normally 395 - 396 - 397 -== 7.1 Configure Packet Forwarder == 398 - 399 - 400 -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 401 - 402 -* In the (% style="color:blue" %)**LoRaWAN**(%%) menu, click on (% style="color:blue" %)**LoRaWAN ~-~- Semtech UDP** 403 - 404 -* Make sure the following settings are set: 405 -** **Service Provider:** //~-~-Custom/Private LoRaWAN~-~-// 406 -** **LoRaWAN Server Address:** //localhost or 127.0.0.1// 407 -** **Server port for upstream:** //1700// 408 -** **Server port for downstream:** //1700// 409 - 410 - Click (% style="color:blue" %)**Save & Apply**. 411 - 412 -[[image:image-20221222114220-2.png||height="748" width="931"]] 413 - 414 - 415 -== 7.2 Configuring gateway frequency == 416 - 417 - 418 -(% style="color:red" %)**Note: Gateway frequencies must match** 419 - 420 -[[image:image-20221222134830-3.png||height="408" width="923"]] 421 - 422 - 423 -== 7.3 Modify the gateway-bridge configuration file == 424 - 425 - 426 -Run the gateway command line command to modify the gateway-bridge configuration file: 427 - 428 -(% class="box infomessage" %) 429 -((( 430 -**root@dragino-1d27d4:~~# vim /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml ** 431 -))) 432 - 433 -[[image:image-20221222113302-1.png]] 434 - 435 - 436 -[[image:image-20221222140203-4.png||height="875" width="806"]] 437 - 438 - 439 -[[image:image-20221230094246-1.png||height="768" width="783"]] 440 - 441 -(% class="wikigeneratedid" id="H" %) 442 -After the modification, run the following command: **/etc/init.d/chirpstack-gateway-bridge restart** 443 - 444 - 445 -== 7.4 (Re)start and stop gateway-bridge == 446 - 447 - 448 -Use the following commands to (re)start and stop the ChirpStack Gateway Bridge Service: 449 - 450 -(% class="box infomessage" %) 451 -((( 452 -**# start** 453 - 454 -/etc/init.d/chirpstack-gateway-bridge start 455 - 456 -**# stop** 457 - 458 -/etc/init.d/chirpstack-gateway-bridge stop 459 - 460 -**# restart** 461 - 462 -/etc/init.d/chirpstack-gateway-bridge restart 463 -))) 464 - 465 - 466 -== 7.5 Successful Connection == 467 - 468 - 469 -[[image:image-20221222141754-5.png||height="488" width="1150"]] 470 - 471 - 472 -[[image:image-20221222141830-6.png||height="582" width="1153"]] 473 - 474 - 475 -= 8. Downlink = 476 - 477 -=== 8.1 Chirpstack Downlink Note === 478 - 479 -==== 8.1.1 Select HEX format for downlink ==== 480 - 481 - 482 -(% style="color:red" %)**Note: The end node user manual provides HEX format of the downlink commands, so users can directly select HEX format downlink.** 483 - 484 -[[image:image-20231108140540-1.png||height="502" width="973"]] 485 - 486 - 487 - 488 - 489 - 490 -== 8.2 Chirpstack Downlink Note == 491 - 492 - 493 493 [[image:image-20220601102543-2.png]] 494 494 495 - **Convert the data to Base64**236 +Convert the data to Base64 496 496 497 -(% style="display:none" %) (%%) 498 498 239 +[[image:image-20220531173236-10.png]] 499 499 500 - [[image:image-20220531173236-10.png||height="597"width="1215"]]241 +Check ChripStack downlink DataRate 501 501 502 -**Check ChripStack downlink DataRate** 503 503 504 - 505 - 506 506 [[image:image-20220525101326-11.png]] 507 507 508 - **Make sure the RX2DR is the same in the end node**246 +Make sure the RX2DR is the same in the end node 509 509 510 510 511 -== 8.3 Loraserver Downlink Note == 512 512 250 +== 4.3 Loraserver Downlink Note == 513 513 252 + 514 514 User can use MQTT to send downlink payload to ChirpStack to perform downstream to LoRaWAN End 515 515 516 516 ((( ... ... @@ -528,7 +528,7 @@ 528 528 [[image:image-20220531173419-11.png]] 529 529 530 530 ((( 531 - **MQTT Connect to ChirpStack**270 +MQTT Connect to ChirpStack 532 532 533 533 534 534 ... ... @@ -555,14 +555,16 @@ 555 555 556 556 [[image:image-20220531173519-12.png]] 557 557 558 - **MQTT Connect to ChirpStack**297 +MQTT Connect to ChirpStack 559 559 560 560 300 +If we want to send downstream hex 030101 to end node, the BASE64 payload is AwEB 561 561 562 -((( 563 -Downlink payload encode javescript code. 302 +[[image:image-20220531173658-14.png]] 564 564 565 -We can run the following Javsscript code on the site: 304 + 305 +((( 306 +Downlink payload encode javescript code: 可以在网站上运行以下Javsscript代码: 566 566 ))) 567 567 568 568 (% class="box" %) ... ... @@ -578,15 +578,15 @@ 578 578 { 579 579 if(sha1[n] >= 'A' && sha1[n] <= 'Z') 580 580 { 581 - ascv = sha1.charCodeAt( 322 + ascv = sha1.charCodeAt(n) - 55; 582 582 } 583 583 else if(sha1[n] >= 'a' && sha1[n] <= 'z') 584 584 { 585 - ascv = sha1.charCodeAt( 326 + ascv = sha1.charCodeAt(n) - 87; 586 586 } 587 587 else 588 588 { 589 - ascv = sha1.charCodeAt( 330 + ascv = sha1.charCodeAt(n) - 48; 590 590 } 591 591 \\ bit_arr = (bit_arr << 4) | ascv; 592 592 bit_num += 4; ... ... @@ -623,16 +623,15 @@ 623 623 ))) 624 624 625 625 626 -== 8.4 Add the decode function in Chirpstack for the payload == 627 627 368 +== 4.3 Add the decode function in Chirpstack for the payload == 628 628 370 + 629 629 User enters the payload code according to the steps. 630 630 631 - Add the node device decoder you are using. The decoder for each node device is different. The decoder is found in this link: **[[decoder for draginoend node>>https://github.com/dragino/dragino-end-node-decoder]]**373 +[[image:image-20220531173754-15.png]] 632 632 633 -[[image:image-20220531173754-15.png||height="474" width="1334"]] 634 634 635 - 636 636 [[image:image-20220531173856-16.png]] 637 637 638 638 ... ... @@ -641,9 +641,10 @@ 641 641 [[image:image-20220531174046-19.png]] 642 642 643 643 644 -= 9. Multiply Uplink in ChirpStack = 645 645 385 += 5. Multiply Uplink in ChirpStack = 646 646 387 + 647 647 ((( 648 648 nbtrans field is the value to determine the re-transmission time for unconfirmed uplink data. 649 649 ))) ... ... @@ -654,7 +654,7 @@ 654 654 655 655 ))) 656 656 657 -[[image:image-20220526091912-7.png ||height="241" width="1336"]]398 +[[image:image-20220526091912-7.png]] 658 658 659 659 660 660 ((( ... ... @@ -679,18 +679,22 @@ 679 679 680 680 681 681 682 - **Duplicate transmission in short time**423 +Duplicate transmission in short time 683 683 684 -[[image:image-20220601102430-1.png ||height="508" width="1120"]]425 +[[image:image-20220601102430-1.png]] 685 685 686 686 687 -== 9.1 Solution == 688 688 429 +== 5.1 Solution == 689 689 431 + 690 690 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]] 691 691 434 + 692 692 ((( 693 693 (% 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.** 437 + 438 + 694 694 ))) 695 695 696 696 [[image:image-20220525104532-24.png]] ... ... @@ -803,150 +803,16 @@ 803 803 Finish. 804 804 805 805 806 -= 10. How to store/get all data traffic for a specific sensor, including raw payload, and uplink/ downlink history. = 807 807 552 += 6. Trouble Shooting = 808 808 809 - Alldatais published to theMQTTtopics. if you wantto store/get thedata, you would have to createanMQTThandler andstore the data yourself.554 +== 6.1 MIC Mismatch or MIC Failed == 810 810 811 -This example will be shown how to store/get all the data in two ways: 812 812 813 -(% style="color:blue" %)**//1). Chirpstack ~-~-> Node-red//** 814 - 815 - 816 -[[image:image-20221012184501-1.png||height="608" width="1041"]] 817 - 818 - 819 -Use MQTT in Nore-red to subscribe to topics published by the chirpstack-application and then continuously write to a file 820 - 821 -[[image:image-20221012174220-2.png]] 822 - 823 - 824 -[[image:image-20221012184655-3.png||height="395" width="1049"]] 825 - 826 - 827 -**Each message is continuously logged to a specified file** 828 - 829 -[[image:image-20221012174352-3.png]] 830 - 831 - 832 -(% style="color:blue" %)**//2). MQTT Sub//** 833 - 834 -If you don't want to store the information via node-red, you can get the output via the subscribe command. 835 - 836 - 837 -**If connecting from the same machine, you can use the following command to receive data:** 838 - 839 -(% class="box infomessage" %) 840 840 ((( 841 -**mosquitto_sub -h localhost -t "application/#" -v** 842 -))) 843 - 844 - 845 -(% style="color:blue" %)**Different host** 846 - 847 -(% class="box infomessage" %) 848 -((( 849 -**mosquitto_sub -h IPADDRESS -p 8883 ~-~-insecure ~-~-cafile ca.pem ~-~-cert cert.pem ~-~-key key.pem -t "application/#" -v** 850 -))) 851 - 852 -[[image:image-20221012173639-1.png||height="273" width="1206"]] 853 - 854 - 855 -= 11. Example: Use Local Server ChirpStack and Node-Red in LPS8v2 = 856 - 857 - 858 -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: 859 - 860 -* LHT65N register on LPS8v2 Built-In ChirpStack server already 861 -* The user is able to see the data on the built-in ChirpStack server device page. 862 - 863 -Below are the steps to plot the sensor data on LPS8v2 Node-Red. 864 - 865 - 866 -== 11.1 Link Node-Red to Local ChirpStack == 867 - 868 - 869 -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"]]** 870 - 871 -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]]** 872 - 873 -After importing the Input Flow is complete, the user needs to edit the MQTT in the node 874 - 875 - 876 -(% style="color:blue" %)**1. Change the Topic** 877 - 878 -Topic modifies it to the following format: 879 - 880 -**application/(% style="color:red" %)Application ID(%%)/device/(% style="color:red" %)End device ID(%%)/event/up** 881 - 882 -Reference link: [[**Node-RED integration** >>https://www.chirpstack.io/docs/guides/node-red-integration.html]] 883 - 884 -[[image:image-20230527143923-1.png||height="588" width="1132"]] 885 - 886 - 887 - 888 -(% style="color:blue" %)**2. Enter the MQTT configuration information** 889 - 890 -[[image:image-20230527144206-2.png||height="590" width="1136"]] 891 - 892 - 893 -(% style="color:blue" %)**3.** **Finally, click "Update" and Deploy** 894 - 895 -"Connected" indicates that the Link Node-red to Local Chirpstack is normal. 896 - 897 -[[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"]] 898 - 899 - 900 -== 11.2 Check result. == 901 - 902 - 903 -Users can check logs by adding debug. 904 - 905 -Browser access: **Node-Red-Server-Address:1880/ui** 906 - 907 -[[image:image-20230529150923-1.png||height="424" width="1118"]] 908 - 909 - 910 -= 12. Trouble Shooting = 911 - 912 -== 12.1 MIC Mismatch or MIC Failed == 913 - 914 - 915 -((( 916 916 When the device is registered or the device is working normally, the problem of MIC mismatch and MIC failed occurs. 917 917 ))) 918 918 919 919 ((( 920 920 Under normal circumstances, users need to change the APPKEY to solve this problem. 921 - 922 - 923 -== 12.2 The node is very close to the gateway, but the signal is poor == 924 - 925 - 926 -If you are using US915 or AU915, you found the frequency points of different subband ranges in your uplink 927 - 928 -Like that:Both 905.1Mhz and 902.3Mhz appear on uplink 929 - But they belong to Subband1 and Subband2 of US915 respectively 930 - 931 -Cause: The server and the gateway use different frequency bands (the server uses Subband1, and the gateway uses Subband2) 932 - 933 - 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. 934 - 935 -How to check the frequency band used by the server: 936 - 937 -You can view the information sent by the server: ch_mask in Unconfirmdedatadown 938 - 939 -[[image:image-20230821113255-1.png]] 940 - 941 -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. 942 - 943 -[[image:image-20230821113539-2.png]] 944 - 945 -In the second message, the channel 0~~7 is true, which means that your server is using subband2. 946 - 947 -[[image:image-20230821113618-3.png]] 948 - 949 -**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]]** 950 - 951 - 952 952 )))
- LHT65N-ChirpStack-node-red.json
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -18.9 KB - Content
-
... ... @@ -1,721 +1,0 @@ 1 -[ 2 - { 3 - "id": "0f8b93c6ce9ba9bd", 4 - "type": "tab", 5 - "label": "流程 1", 6 - "disabled": false, 7 - "info": "", 8 - "env": [] 9 - }, 10 - { 11 - "id": "11ea7050721f9df5", 12 - "type": "mqtt in", 13 - "z": "0f8b93c6ce9ba9bd", 14 - "name": "LHT65N", 15 - "topic": "application/43b0fd94-75be-4a80-a78c-c9381fe23b05/device/a84041c8b1824695/event/up", 16 - "qos": "0", 17 - "datatype": "auto-detect", 18 - "broker": "862a790de52f4ea4", 19 - "nl": false, 20 - "rap": true, 21 - "rh": 0, 22 - "inputs": 0, 23 - "x": 100, 24 - "y": 140, 25 - "wires": [ 26 - [ 27 - "034db5cd68129249", 28 - "6e4c3938ccd21838", 29 - "d20a25c0a12cad04", 30 - "38136d7454e138e5", 31 - "239852361ed7c91d" 32 - ] 33 - ] 34 - }, 35 - { 36 - "id": "6e4c3938ccd21838", 37 - "type": "debug", 38 - "z": "0f8b93c6ce9ba9bd", 39 - "name": "", 40 - "active": true, 41 - "tosidebar": true, 42 - "console": false, 43 - "tostatus": false, 44 - "complete": "false", 45 - "statusVal": "", 46 - "statusType": "auto", 47 - "x": 490, 48 - "y": 140, 49 - "wires": [] 50 - }, 51 - { 52 - "id": "034db5cd68129249", 53 - "type": "function", 54 - "z": "0f8b93c6ce9ba9bd", 55 - "name": "", 56 - "func": "var data = msg.payload[\"deviceInfo\"]\nvar decode = msg.payload[\"object\"]\nif (decode[\"Ext_sensor\"] == \"Temperature Sensor\"){\nvar f_port = msg.payload[\"fPort\"]\nvar f_cnt = msg.payload[\"fCnt\"]\nvar data2 = decode\nvar bat =data2[\"BatV\"]\nvar bat_status=data2[\"Bat_status\"]\nvar ext_sensor=data2[\"Ext_sensor\"]\nvar hum_SHT=data2[\"Hum_SHT\"]\nif (\"TempC_DS\" in data2){\n var tempC_DS=data2[\"TempC_DS\"]\n}\nelse {\ntempC_DS=data2[\"TempC_TMP117\"]\n}\nvar tempC_SHT=data2[\"TempC_SHT\"]\nvar a1={payload:f_port},a2={payload:f_cnt},a3={payload:bat},a4={payload:bat_status},a5={payload:ext_sensor},\n a6={payload:hum_SHT},a7={payload:tempC_DS},a8={payload:tempC_SHT}\nreturn [a1,a2,a3,a4,a5,a6,a7,a8];\n}", 57 - "outputs": 9, 58 - "noerr": 0, 59 - "initialize": "", 60 - "finalize": "", 61 - "libs": [], 62 - "x": 470, 63 - "y": 260, 64 - "wires": [ 65 - [ 66 - "054041c1f8ad740a" 67 - ], 68 - [ 69 - "11286fbcb9419c65" 70 - ], 71 - [ 72 - "6f74bac1ba605862" 73 - ], 74 - [ 75 - "c9f618cca24db5e1" 76 - ], 77 - [ 78 - "7f2fc42c4bcc6ff9" 79 - ], 80 - [ 81 - "980646824d0c5239" 82 - ], 83 - [ 84 - "a2ed445e50c952ea" 85 - ], 86 - [ 87 - "13394b6f113fe555" 88 - ], 89 - [] 90 - ] 91 - }, 92 - { 93 - "id": "054041c1f8ad740a", 94 - "type": "ui_text", 95 - "z": "0f8b93c6ce9ba9bd", 96 - "group": "6c8dcef19b33b1ab", 97 - "order": 0, 98 - "width": 0, 99 - "height": 0, 100 - "name": "f_port", 101 - "label": "f_port", 102 - "format": "{{msg.payload}}", 103 - "layout": "row-spread", 104 - "className": "", 105 - "x": 770, 106 - "y": 160, 107 - "wires": [] 108 - }, 109 - { 110 - "id": "11286fbcb9419c65", 111 - "type": "ui_text", 112 - "z": "0f8b93c6ce9ba9bd", 113 - "group": "9d9e40253fa3a62f", 114 - "order": 0, 115 - "width": 0, 116 - "height": 0, 117 - "name": "f_cunt", 118 - "label": "f_cunt", 119 - "format": "{{msg.payload}}", 120 - "layout": "row-spread", 121 - "className": "", 122 - "x": 770, 123 - "y": 200, 124 - "wires": [] 125 - }, 126 - { 127 - "id": "6f74bac1ba605862", 128 - "type": "ui_chart", 129 - "z": "0f8b93c6ce9ba9bd", 130 - "name": "bat", 131 - "group": "b24db75b1499c15f", 132 - "order": 0, 133 - "width": 0, 134 - "height": 0, 135 - "label": "bat", 136 - "chartType": "line", 137 - "legend": "false", 138 - "xformat": "HH:mm:ss", 139 - "interpolate": "linear", 140 - "nodata": "", 141 - "dot": false, 142 - "ymin": "", 143 - "ymax": "", 144 - "removeOlder": 1, 145 - "removeOlderPoints": "", 146 - "removeOlderUnit": "3600", 147 - "cutout": 0, 148 - "useOneColor": false, 149 - "useUTC": false, 150 - "colors": [ 151 - "#1f77b4", 152 - "#aec7e8", 153 - "#ff7f0e", 154 - "#2ca02c", 155 - "#98df8a", 156 - "#d62728", 157 - "#ff9896", 158 - "#9467bd", 159 - "#c5b0d5" 160 - ], 161 - "outputs": 1, 162 - "useDifferentColor": false, 163 - "className": "", 164 - "x": 770, 165 - "y": 240, 166 - "wires": [ 167 - [] 168 - ] 169 - }, 170 - { 171 - "id": "c9f618cca24db5e1", 172 - "type": "ui_text", 173 - "z": "0f8b93c6ce9ba9bd", 174 - "group": "758898c4bead5e6f", 175 - "order": 6, 176 - "width": 0, 177 - "height": 0, 178 - "name": "Bat_status", 179 - "label": "Bat_status", 180 - "format": "{{msg.payload}}", 181 - "layout": "row-spread", 182 - "className": "", 183 - "x": 790, 184 - "y": 280, 185 - "wires": [] 186 - }, 187 - { 188 - "id": "7f2fc42c4bcc6ff9", 189 - "type": "ui_text", 190 - "z": "0f8b93c6ce9ba9bd", 191 - "group": "a8f02d8f9b3e80a1", 192 - "order": 0, 193 - "width": 0, 194 - "height": 0, 195 - "name": "Ext_sensor", 196 - "label": "Ext_sensor", 197 - "format": "{{msg.payload}}", 198 - "layout": "row-spread", 199 - "className": "", 200 - "x": 790, 201 - "y": 320, 202 - "wires": [] 203 - }, 204 - { 205 - "id": "980646824d0c5239", 206 - "type": "ui_chart", 207 - "z": "0f8b93c6ce9ba9bd", 208 - "name": "Hum_SHT", 209 - "group": "a9ef53ea130e5557", 210 - "order": 6, 211 - "width": 0, 212 - "height": 0, 213 - "label": "Hum_SHT", 214 - "chartType": "line", 215 - "legend": "false", 216 - "xformat": "HH:mm:ss", 217 - "interpolate": "linear", 218 - "nodata": "", 219 - "dot": false, 220 - "ymin": "", 221 - "ymax": "", 222 - "removeOlder": 1, 223 - "removeOlderPoints": "", 224 - "removeOlderUnit": "3600", 225 - "cutout": 0, 226 - "useOneColor": false, 227 - "useUTC": false, 228 - "colors": [ 229 - "#1f77b4", 230 - "#aec7e8", 231 - "#ff7f0e", 232 - "#2ca02c", 233 - "#98df8a", 234 - "#d62728", 235 - "#ff9896", 236 - "#9467bd", 237 - "#c5b0d5" 238 - ], 239 - "outputs": 1, 240 - "useDifferentColor": false, 241 - "className": "", 242 - "x": 790, 243 - "y": 360, 244 - "wires": [ 245 - [] 246 - ] 247 - }, 248 - { 249 - "id": "a2ed445e50c952ea", 250 - "type": "ui_chart", 251 - "z": "0f8b93c6ce9ba9bd", 252 - "name": "TempC_sensor", 253 - "group": "1558cd7a030388f7", 254 - "order": 6, 255 - "width": 0, 256 - "height": 0, 257 - "label": "TempC_sensor", 258 - "chartType": "line", 259 - "legend": "false", 260 - "xformat": "HH:mm:ss", 261 - "interpolate": "linear", 262 - "nodata": "", 263 - "dot": false, 264 - "ymin": "", 265 - "ymax": "", 266 - "removeOlder": 1, 267 - "removeOlderPoints": "", 268 - "removeOlderUnit": "3600", 269 - "cutout": 0, 270 - "useOneColor": false, 271 - "useUTC": false, 272 - "colors": [ 273 - "#1f77b4", 274 - "#aec7e8", 275 - "#ff7f0e", 276 - "#2ca02c", 277 - "#98df8a", 278 - "#d62728", 279 - "#ff9896", 280 - "#9467bd", 281 - "#c5b0d5" 282 - ], 283 - "outputs": 1, 284 - "useDifferentColor": false, 285 - "className": "", 286 - "x": 800, 287 - "y": 400, 288 - "wires": [ 289 - [] 290 - ] 291 - }, 292 - { 293 - "id": "13394b6f113fe555", 294 - "type": "ui_chart", 295 - "z": "0f8b93c6ce9ba9bd", 296 - "name": "TempC_SHT", 297 - "group": "f523098714ee6cd6", 298 - "order": 6, 299 - "width": 0, 300 - "height": 0, 301 - "label": "TempC_SHT", 302 - "chartType": "line", 303 - "legend": "false", 304 - "xformat": "HH:mm:ss", 305 - "interpolate": "linear", 306 - "nodata": "", 307 - "dot": false, 308 - "ymin": "", 309 - "ymax": "", 310 - "removeOlder": 1, 311 - "removeOlderPoints": "", 312 - "removeOlderUnit": "3600", 313 - "cutout": 0, 314 - "useOneColor": false, 315 - "useUTC": false, 316 - "colors": [ 317 - "#1f77b4", 318 - "#aec7e8", 319 - "#ff7f0e", 320 - "#2ca02c", 321 - "#98df8a", 322 - "#d62728", 323 - "#ff9896", 324 - "#9467bd", 325 - "#c5b0d5" 326 - ], 327 - "outputs": 1, 328 - "useDifferentColor": false, 329 - "className": "", 330 - "x": 790, 331 - "y": 440, 332 - "wires": [ 333 - [] 334 - ] 335 - }, 336 - { 337 - "id": "d20a25c0a12cad04", 338 - "type": "function", 339 - "z": "0f8b93c6ce9ba9bd", 340 - "name": "", 341 - "func": "var data = msg.payload[\"deviceInfo\"]\nvar decode = msg.payload[\"object\"]\nif (decode[\"Work_mode\"]==\"Interrupt Sensor send\"){\nvar f_port = msg.payload[\"fPort\"]\nvar f_cnt = msg.payload[\"fCnt\"]\nvar data2 = decode\nvar bat =data2[\"BatV\"]\nvar bat_status=data2[\"Bat_status\"]\nvar work_mode=data2[\"Work_mode\"]\nvar exti_pin_level=data2[\"Exti_pin_level\"]\nvar exti_status=data2[\"Exti_status\"]\nvar hum_SHT=data2[\"Hum_SHT\"]\nvar tempC_SHT=data2[\"TempC_SHT\"]\nvar a1={payload:f_port},a2={payload:f_cnt},a3={payload:bat},a4={payload:bat_status},a5={payload:work_mode},\na6={payload:exti_pin_level},a7={payload:exti_status},a8={payload:hum_SHT},a9={payload:tempC_SHT}\nreturn [a1,a2,a3,a4,a5,a6,a7,a8,a9];\n}", 342 - "outputs": 9, 343 - "noerr": 0, 344 - "initialize": "", 345 - "finalize": "", 346 - "libs": [], 347 - "x": 470, 348 - "y": 440, 349 - "wires": [ 350 - [ 351 - "054041c1f8ad740a" 352 - ], 353 - [ 354 - "11286fbcb9419c65" 355 - ], 356 - [ 357 - "6f74bac1ba605862" 358 - ], 359 - [ 360 - "c9f618cca24db5e1" 361 - ], 362 - [ 363 - "7f2fc42c4bcc6ff9" 364 - ], 365 - [ 366 - "0513bcb70cd63787" 367 - ], 368 - [ 369 - "10eed06366dc18c4" 370 - ], 371 - [ 372 - "980646824d0c5239" 373 - ], 374 - [ 375 - "13394b6f113fe555" 376 - ] 377 - ] 378 - }, 379 - { 380 - "id": "0513bcb70cd63787", 381 - "type": "ui_text", 382 - "z": "0f8b93c6ce9ba9bd", 383 - "group": "b1dc3cad430eb5b7", 384 - "order": 0, 385 - "width": 0, 386 - "height": 0, 387 - "name": "Exti_pin_level", 388 - "label": "Exti_pin_level", 389 - "format": "{{msg.payload}}", 390 - "layout": "row-spread", 391 - "className": "", 392 - "x": 780, 393 - "y": 560, 394 - "wires": [] 395 - }, 396 - { 397 - "id": "10eed06366dc18c4", 398 - "type": "ui_text", 399 - "z": "0f8b93c6ce9ba9bd", 400 - "group": "4184be11e1179998", 401 - "order": 0, 402 - "width": 0, 403 - "height": 0, 404 - "name": "Exti_status", 405 - "label": "Exti_status", 406 - "format": "{{msg.payload}}", 407 - "layout": "row-spread", 408 - "className": "", 409 - "x": 770, 410 - "y": 600, 411 - "wires": [] 412 - }, 413 - { 414 - "id": "38136d7454e138e5", 415 - "type": "function", 416 - "z": "0f8b93c6ce9ba9bd", 417 - "name": "", 418 - "func": "var data = msg.payload[\"deviceInfo\"]\nvar decode = msg.payload[\"object\"]\nif (decode[\"Work_mode\"]==\"Interrupt Sensor count\"){\nvar f_port = msg.payload[\"fPort\"]\nvar f_cnt = msg.payload[\"fCnt\"]\nvar data2 = decode\nvar bat =data2[\"BatV\"]\nvar bat_status=data2[\"Bat_status\"]\nvar work_mode=data2[\"Work_mode\"]\nvar exit_count=data2[\"Exit_count\"]\nvar hum_SHT=data2[\"Hum_SHT\"]\nvar tempC_SHT=data2[\"TempC_SHT\"]\nvar a1={payload:f_port},a2={payload:f_cnt},a3={payload:bat},a4={payload:bat_status},a5={payload:work_mode},\na6={payload:exit_count},a8={payload:hum_SHT},a9={payload:tempC_SHT}\nreturn [a1,a2,a3,a4,a5,a6,a8,a9];\n}", 419 - "outputs": 8, 420 - "noerr": 0, 421 - "initialize": "", 422 - "finalize": "", 423 - "libs": [], 424 - "x": 470, 425 - "y": 620, 426 - "wires": [ 427 - [ 428 - "054041c1f8ad740a" 429 - ], 430 - [ 431 - "11286fbcb9419c65" 432 - ], 433 - [ 434 - "6f74bac1ba605862" 435 - ], 436 - [ 437 - "c9f618cca24db5e1" 438 - ], 439 - [ 440 - "7f2fc42c4bcc6ff9" 441 - ], 442 - [ 443 - "3914f37c12607c9f" 444 - ], 445 - [ 446 - "980646824d0c5239" 447 - ], 448 - [ 449 - "13394b6f113fe555" 450 - ] 451 - ] 452 - }, 453 - { 454 - "id": "3914f37c12607c9f", 455 - "type": "ui_text", 456 - "z": "0f8b93c6ce9ba9bd", 457 - "group": "28cf5cca4c2c0bb5", 458 - "order": 0, 459 - "width": 0, 460 - "height": 0, 461 - "name": "exit_count", 462 - "label": "exit_count", 463 - "format": "{{msg.payload}}", 464 - "layout": "row-spread", 465 - "className": "", 466 - "x": 790, 467 - "y": 700, 468 - "wires": [] 469 - }, 470 - { 471 - "id": "239852361ed7c91d", 472 - "type": "function", 473 - "z": "0f8b93c6ce9ba9bd", 474 - "name": "", 475 - "func": "var data = msg.payload[\"deviceInfo\"]\nvar decode = msg.payload[\"object\"]\nif (decode[\"Work_mode\"]==\"ADC Sensor\"){\nvar f_port = msg.payload[\"fPort\"]\nvar f_cnt = msg.payload[\"fCnt\"]\nvar data2 = decode\nvar bat =data2[\"BatV\"]\nvar bat_status=data2[\"Bat_status\"]\nvar work_mode=data2[\"Work_mode\"]\nvar adc_V=data2[\"ADC_V\"]\nvar hum_SHT=data2[\"Hum_SHT\"]\nvar tempC_SHT=data2[\"TempC_SHT\"]\nvar a1={payload:f_port},a2={payload:f_cnt},a3={payload:bat},a4={payload:bat_status},a5={payload:work_mode},\na6={payload:adc_V},a8={payload:hum_SHT},a9={payload:tempC_SHT}\nreturn [a1,a2,a3,a4,a5,a6,a8,a9];\n}", 476 - "outputs": 8, 477 - "noerr": 0, 478 - "initialize": "", 479 - "finalize": "", 480 - "libs": [], 481 - "x": 470, 482 - "y": 760, 483 - "wires": [ 484 - [ 485 - "054041c1f8ad740a" 486 - ], 487 - [ 488 - "11286fbcb9419c65" 489 - ], 490 - [ 491 - "6f74bac1ba605862" 492 - ], 493 - [ 494 - "c9f618cca24db5e1" 495 - ], 496 - [ 497 - "7f2fc42c4bcc6ff9" 498 - ], 499 - [ 500 - "605688b5e60df43d" 501 - ], 502 - [ 503 - "980646824d0c5239" 504 - ], 505 - [ 506 - "13394b6f113fe555" 507 - ] 508 - ] 509 - }, 510 - { 511 - "id": "605688b5e60df43d", 512 - "type": "ui_chart", 513 - "z": "0f8b93c6ce9ba9bd", 514 - "name": "ADC_V", 515 - "group": "5f974d1fd1c0edfa", 516 - "order": 0, 517 - "width": 0, 518 - "height": 0, 519 - "label": "ADC_V", 520 - "chartType": "line", 521 - "legend": "false", 522 - "xformat": "HH:mm:ss", 523 - "interpolate": "linear", 524 - "nodata": "", 525 - "dot": false, 526 - "ymin": "", 527 - "ymax": "", 528 - "removeOlder": 1, 529 - "removeOlderPoints": "", 530 - "removeOlderUnit": "3600", 531 - "cutout": 0, 532 - "useOneColor": false, 533 - "useUTC": false, 534 - "colors": [ 535 - "#1f77b4", 536 - "#aec7e8", 537 - "#ff7f0e", 538 - "#2ca02c", 539 - "#98df8a", 540 - "#d62728", 541 - "#ff9896", 542 - "#9467bd", 543 - "#c5b0d5" 544 - ], 545 - "outputs": 1, 546 - "useDifferentColor": false, 547 - "className": "", 548 - "x": 780, 549 - "y": 780, 550 - "wires": [ 551 - [] 552 - ] 553 - }, 554 - { 555 - "id": "862a790de52f4ea4", 556 - "type": "mqtt-broker", 557 - "name": "LHT65N", 558 - "broker": "10.130.2.143", 559 - "port": "1883", 560 - "clientid": "", 561 - "autoConnect": true, 562 - "usetls": false, 563 - "protocolVersion": "4", 564 - "keepalive": "60", 565 - "cleansession": true, 566 - "birthTopic": "", 567 - "birthQos": "0", 568 - "birthPayload": "", 569 - "birthMsg": {}, 570 - "closeTopic": "", 571 - "closeQos": "0", 572 - "closePayload": "", 573 - "closeMsg": {}, 574 - "willTopic": "", 575 - "willQos": "0", 576 - "willPayload": "", 577 - "willMsg": {}, 578 - "userProps": "", 579 - "sessionExpiry": "" 580 - }, 581 - { 582 - "id": "6c8dcef19b33b1ab", 583 - "type": "ui_group", 584 - "name": "f_port", 585 - "tab": "7e01624d2b1a030f", 586 - "order": 1, 587 - "disp": true, 588 - "width": "6", 589 - "collapse": false, 590 - "className": "" 591 - }, 592 - { 593 - "id": "9d9e40253fa3a62f", 594 - "type": "ui_group", 595 - "name": "f_cunt", 596 - "tab": "7e01624d2b1a030f", 597 - "order": 2, 598 - "disp": true, 599 - "width": "6", 600 - "collapse": false, 601 - "className": "" 602 - }, 603 - { 604 - "id": "b24db75b1499c15f", 605 - "type": "ui_group", 606 - "name": "bat", 607 - "tab": "7e01624d2b1a030f", 608 - "order": 8, 609 - "disp": true, 610 - "width": "6", 611 - "collapse": false, 612 - "className": "" 613 - }, 614 - { 615 - "id": "758898c4bead5e6f", 616 - "type": "ui_group", 617 - "name": "Bat_status", 618 - "tab": "7e01624d2b1a030f", 619 - "order": 3, 620 - "disp": true, 621 - "width": "6", 622 - "collapse": false, 623 - "className": "" 624 - }, 625 - { 626 - "id": "a8f02d8f9b3e80a1", 627 - "type": "ui_group", 628 - "name": "Ext_sensor", 629 - "tab": "7e01624d2b1a030f", 630 - "order": 4, 631 - "disp": true, 632 - "width": "6", 633 - "collapse": false, 634 - "className": "" 635 - }, 636 - { 637 - "id": "a9ef53ea130e5557", 638 - "type": "ui_group", 639 - "name": "Hum_SHT", 640 - "tab": "7e01624d2b1a030f", 641 - "order": 9, 642 - "disp": true, 643 - "width": "6", 644 - "collapse": false, 645 - "className": "" 646 - }, 647 - { 648 - "id": "1558cd7a030388f7", 649 - "type": "ui_group", 650 - "name": "TempC_sensor", 651 - "tab": "7e01624d2b1a030f", 652 - "order": 10, 653 - "disp": true, 654 - "width": "6", 655 - "collapse": false, 656 - "className": "" 657 - }, 658 - { 659 - "id": "f523098714ee6cd6", 660 - "type": "ui_group", 661 - "name": "TempC_SHT", 662 - "tab": "7e01624d2b1a030f", 663 - "order": 11, 664 - "disp": true, 665 - "width": "6", 666 - "collapse": false, 667 - "className": "" 668 - }, 669 - { 670 - "id": "b1dc3cad430eb5b7", 671 - "type": "ui_group", 672 - "name": "Exti_pin_level", 673 - "tab": "7e01624d2b1a030f", 674 - "order": 6, 675 - "disp": true, 676 - "width": "6", 677 - "collapse": false, 678 - "className": "" 679 - }, 680 - { 681 - "id": "4184be11e1179998", 682 - "type": "ui_group", 683 - "name": "Exti_status", 684 - "tab": "7e01624d2b1a030f", 685 - "order": 7, 686 - "disp": true, 687 - "width": "6", 688 - "collapse": false, 689 - "className": "" 690 - }, 691 - { 692 - "id": "28cf5cca4c2c0bb5", 693 - "type": "ui_group", 694 - "name": "exit_count", 695 - "tab": "7e01624d2b1a030f", 696 - "order": 5, 697 - "disp": true, 698 - "width": "6", 699 - "collapse": false, 700 - "className": "" 701 - }, 702 - { 703 - "id": "5f974d1fd1c0edfa", 704 - "type": "ui_group", 705 - "name": "ADC_V", 706 - "tab": "7e01624d2b1a030f", 707 - "order": 12, 708 - "disp": true, 709 - "width": "6", 710 - "collapse": false, 711 - "className": "" 712 - }, 713 - { 714 - "id": "7e01624d2b1a030f", 715 - "type": "ui_tab", 716 - "name": "LHT65N", 717 - "icon": "LHT65N", 718 - "disabled": false, 719 - "hidden": false 720 - } 721 -]
- image-20221012184501-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoye - Size
-
... ... @@ -1,1 +1,0 @@ 1 -91.3 KB - Content
- image-20221012184631-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoye - Size
-
... ... @@ -1,1 +1,0 @@ 1 -32.4 KB - Content
- image-20221012184655-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoye - Size
-
... ... @@ -1,1 +1,0 @@ 1 -45.4 KB - Content
- image-20221222113302-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -76.3 KB - Content
- image-20221222114220-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -64.3 KB - Content
- image-20221222134830-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -54.5 KB - Content
- image-20221222140203-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -91.4 KB - Content
- image-20221222141754-5.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -179.1 KB - Content
- image-20221222141830-6.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -116.7 KB - Content
- image-20221230094246-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -84.9 KB - Content
- image-20230415165254-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -67.2 KB - Content
- image-20230415170404-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -17.9 KB - Content
- image-20230415170854-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -48.4 KB - Content
- image-20230527115750-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -208.8 KB - Content
- image-20230527143923-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -222.4 KB - Content
- image-20230527144206-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -224.2 KB - Content
- image-20230529150923-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -87.2 KB - Content
- image-20230531162943-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -84.6 KB - Content
- image-20230702094608-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -53.8 KB - Content
- image-20230702094852-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -12.5 KB - Content
- image-20230702094944-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -26.7 KB - Content
- image-20230702095114-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -43.5 KB - Content
- image-20230702095557-5.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -48.5 KB - Content
- image-20230702095641-6.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -19.2 KB - Content
- image-20230702095827-7.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -34.9 KB - Content
- image-20230702100312-8.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -33.2 KB - Content
- image-20230702100356-9.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -21.9 KB - Content
- image-20230702100543-10.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -25.6 KB - Content
- image-20230702100930-11.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -48.7 KB - Content
- image-20230821113255-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -115.7 KB - Content
- image-20230821113539-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -71.1 KB - Content
- image-20230821113618-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -19.0 KB - Content
- image-20230821114047-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -125.6 KB - Content
- image-20230926092907-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -64.0 KB - Content
- image-20230926093057-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -69.6 KB - Content
- image-20230926093233-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -95.8 KB - Content
- image-20231108140540-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.ting - Size
-
... ... @@ -1,1 +1,0 @@ 1 -46.3 KB - Content
- image-20231108164914-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.ting - Size
-
... ... @@ -1,1 +1,0 @@ 1 -37.2 KB - Content