Changes for page Notes for ChirpStack
Last modified by Kilight Cao on 2024/09/24 15:23
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 33 added, 0 removed)
- LHT65N-ChirpStack-node-red.json
- image-20221012173639-1.png
- image-20221012174220-2.png
- image-20221012174352-3.png
- 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
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Edwin1 +XWiki.Bei - Content
-
... ... @@ -37,13 +37,54 @@ 37 37 ))) 38 38 ))) 39 39 40 += 2. Node usage introduction = 40 40 42 +== 2.1 Register Node == 41 41 42 - = 2.SemtechUDP=44 +Step 1: Add application 43 43 44 - ==2.1Step 1.Add theNetwork-servers==46 +[[image:image-20230702094608-1.png||height="537" width="1015"]] 45 45 48 +Step 2:Fill name 46 46 50 +[[image:image-20230702094852-2.png]] 51 + 52 +Step4 :Add device profile 53 + 54 +[[image:image-20230702095114-4.png||height="448" width="1061"]] 55 + 56 + 57 +Step5 :Configure your device profile 58 + 59 +[[image:image-20230702095557-5.png||height="648" width="1121"]] 60 + 61 +Does node support class-c 62 + 63 +[[image:image-20230702095641-6.png||height="349" width="1114"]] 64 + 65 +Add node's decoder 66 + 67 +[[image:image-20230702095827-7.png||height="490" width="1138"]] 68 + 69 + 70 +Step6 :add device 71 + 72 +[[image:image-20230702094944-3.png||height="439" width="1153"]] 73 + 74 + 75 + 76 +[[image:image-20230702100312-8.png||height="585" width="1176"]] 77 + 78 +[[image:image-20230702100543-10.png||height="313" width="1099"]] 79 + 80 +[[image:image-20230702100930-11.png||height="613" width="1098"]] 81 + 82 + 83 += 3. Semtech UDP = 84 + 85 +== 3.1 Step 1. Add the Network-servers == 86 + 87 + 47 47 The network-Servers address varies depending on the ChirpStack server setup environment 48 48 49 49 (% class="box" %) ... ... @@ -56,26 +56,24 @@ 56 56 (% style="color:red" %)**If the user cannot add network-Servers, re-check the ChirpStack code or the server building process.** 57 57 58 58 59 -[[image:image-20220531171609-1.png]] 100 +[[image:image-20220531171609-1.png||height="638" width="1268"]](% style="display:none" %) 60 60 61 61 Add the Network-servers 62 62 63 63 105 +== 3.2 Step 2. Create Gateway-profiles == 64 64 65 -== 2.2 Step 2. Create Gateway-profiles == 66 66 108 +[[image:image-20220531171651-2.png||height="632" width="1264"]](% style="display:none" %) 67 67 68 -[[image:image-20220531171651-2.png]] 69 - 70 70 Create Gateway-profiles 71 71 72 72 113 +== 3.3 Step 3. Create Service-profiles == 73 73 74 -== 2.3 Step 3. Create Service-profiles == 75 75 116 +[[image:image-20220531171809-3.png||height="761" width="1265"]] 76 76 77 -[[image:image-20220531171809-3.png]] 78 - 79 79 Create Service-profiles 80 80 81 81 ... ... @@ -86,10 +86,9 @@ 86 86 If the user has completed the preceding steps, proceed to the next step.(% style="display:none" %) 87 87 88 88 128 +== 3.4 Step 4. Add the gateway == 89 89 90 -== 2.4 Step 4. Add the gateway == 91 91 92 - 93 93 The example gateway id is: a840411e96744150 94 94 95 95 ((( ... ... @@ -98,7 +98,7 @@ 98 98 99 99 ))) 100 100 101 -[[image:image-20220531171923-4.png]](% style="display:none" %) 139 +[[image:image-20220531171923-4.png||height="745" width="1253"]](% style="display:none" %) 102 102 103 103 Add the gateway 104 104 ... ... @@ -109,28 +109,25 @@ 109 109 Configure the gateway 110 110 111 111 150 +== 3.5 Step 5. Checking gateway Status == 112 112 113 -== 2.5 Step 5. Checking gateway Status == 114 114 153 +[[image:image-20220531172158-6.png||height="704" width="1167"]](% style="display:none" %) 115 115 116 -[[image:image-20220531172158-6.png]](% style="display:none" %) 117 117 118 118 119 - 120 120 gateway Status 121 121 122 -[[image:image-20220531172304-7.png]] 159 +[[image:image-20220531172304-7.png||height="628" width="1165"]] 123 123 124 124 gateway Status 125 125 126 126 164 += 4. Gateway Registration for Basics Station = 127 127 128 -= 3.Gateway Registration for Basics Station =166 +== 4.1 Introduction == 129 129 130 130 131 -== 3.1 Introduction == 132 - 133 - 134 134 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. 135 135 136 136 ChirpStack Open-Source LoRaWAN® Network Server needs to set up a configuration that can use Semtech BasicStation. ... ... @@ -151,14 +151,13 @@ 151 151 A gateway that can access the internet normally 152 152 153 153 189 +== 4.2 Add Gateway == 154 154 155 -== 3.2 Add Gateway == 156 156 157 - 158 158 [[image:image-20220524164205-10.png]] 159 159 160 160 161 -== 3.3 Access the gateway GUI ==195 +== 4.3 Access the gateway GUI == 162 162 163 163 164 164 Access the gateway GUI interface of LoRaWAN~-~->LoRaWAN ~-~- Basic Station ... ... @@ -181,13 +181,13 @@ 181 181 [[image:image-20220524164341-12.png]] 182 182 183 183 184 -== 3.4 Start Station ==218 +== 4.4 Start Station == 185 185 186 186 187 187 When the user has finished the configuration, Please click **Sace&Apply** to start station to connect ChirpStack. 188 188 189 189 190 -== 3.5 Successful Connection ==224 +== 4.5 Successful Connection == 191 191 192 192 193 193 If user completes the above steps, which will see live date in the ChirpStack. ... ... @@ -195,10 +195,9 @@ 195 195 [[image:image-20220524164448-13.png]] 196 196 197 197 232 +== 4.6 Trouble Shooting == 198 198 199 -== 3.6 Trouble Shooting == 200 200 201 - 202 202 User can check the station log in the logread/system log page. 203 203 204 204 [[image:image-20220531172837-8.png]] ... ... @@ -209,47 +209,261 @@ 209 209 [[image:image-20220531172857-9.png]] 210 210 211 211 245 += 5. How the gateway connects to Chirpstack v3 via gateway-bridge = 212 212 213 -= 4. Downlink = 214 214 215 -(% class="wikigeneratedid" %) 216 -== 4.1 Convert HEX to Base64 == 248 +(% style="color:blue" %)**Below list the support products and Requirements:** 217 217 250 +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]] 251 +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/]] 252 + 253 +(% style="color:blue" %)**How to set up chirpStack Gateway-bridge** 254 + 255 +Users can check out the ChirpStack gateway-bridge v3 [[link>>https://www.chirpstack.io/gateway-bridge/gateway/dragino/]] 256 + 257 + 258 +(% style="color:blue" %)**What do you need to prepare** 259 + 260 +A gateway that can access the internet normally 261 + 262 + 263 +The following example does not have configuration certificates: 264 + 265 + 266 +== 5.1 Configure Packet Forwarder == 267 + 268 + 269 +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 270 + 271 +* In the (% style="color:blue" %)**LoRaWAN** (%%)menu, click on (% style="color:blue" %)**LoRaWAN ~-~- Semtech UDP** 272 + 273 +* Make sure the following settings are set: 274 +** **Service Provider:** //~-~-Custom/Private LoRaWAN~-~-// 275 +** **LoRaWAN Server Address:** //localhost or 127.0.0.1// 276 +** **Server port for upstream:** //1700// 277 +** **Server port for downstream:** //1700// 278 + 279 + Click (% style="color:blue" %)**Save & Apply**. 280 + 281 +[[image:image-20221222114220-2.png||height="748" width="931"]] 282 + 283 + 284 +== 5.2 Configuring gateway frequency == 285 + 286 + 287 +(% style="color:red" %)**Note: Gateway frequencies must match** 288 + 289 +[[image:image-20221222134830-3.png||height="408" width="923"]] 290 + 291 + 292 +== 5.3 Generate and modify the gateway-bridge configuration file == 293 + 294 + 295 +**1)Generate the gateway-bridge configuration file** 296 + 297 +By default, the configuration file is not up-to-date,so the user needs to rebuild the gateway-bridge configuration file. 298 + 299 +Users need to access the command line of the gateway through SSH,Then type the following command: 300 + 301 +(% class="box infomessage" %) 302 +((( 303 +**/opt/chirpstack-gateway-bridge/chirpstack-gateway-bridge configfile > /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml ** 304 +))) 305 + 306 + 307 +**2)modify the gateway-bridge configuration file** 308 + 309 +The user needs to modify the server address in line 252 in the configuration file 310 + 311 +(% class="box infomessage" %) 312 +((( 313 +**vim /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml ** 314 +))) 315 + 316 +[[image:image-20230415165254-1.png||height="583" width="956"]] 317 + 318 + 319 +== 5.4 Debug == 320 + 321 + 322 +After the above configuration is completed, the user can enter the command to debug the gateway-bridge connection 323 + 324 +(% class="box infomessage" %) 325 +((( 326 +**/opt/chirpstack-gateway-bridge/chirpstack-gateway-bridge ~-~-config /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml** 327 +))) 328 + 329 +If the gateway-bridge connection is normal, the debug log displays **"connected to mqtt broker"**. 330 + 331 +[[image:image-20230415170404-2.png]] 332 + 333 + 334 +If the debug log shows "**connection error**", check that the server port or server is correct 335 + 336 +[[image:image-20230415170854-3.png]] 337 + 338 + 339 +More information can be found on the **[[ChirpStack website>>https://www.chirpstack.io/docs/]]**or **[[Forum>>url:https://forum.chirpstack.io/]]** 340 + 341 + 342 +== 5.5 (Re)start and stop gateway-bridge == 343 + 344 + 345 +Use the following commands to (re)start and stop the ChirpStack Gateway Bridge Service: 346 + 347 +(% class="box infomessage" %) 348 +((( 349 +**# start** 350 + 351 +/etc/init.d/chirpstack-gateway-bridge start 352 + 353 +**# stop** 354 + 355 +/etc/init.d/chirpstack-gateway-bridge stop 356 + 357 +**# restart** 358 + 359 +/etc/init.d/chirpstack-gateway-bridge restart 360 +))) 361 + 362 + 363 += 6. How the gateway connects to Chirpstack v4 via gateway-bridge = 364 + 365 + 366 +(% style="color:blue" %)**Below list the support products and Requirements:** 367 + 368 +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]] 369 +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/]] 370 + 371 +(% style="color:blue" %)**How to set up chirpStack Gateway-bridge** 372 + 373 +Users can check out the ChirpStack gateway-bridge v4 [[link>>https://www.chirpstack.io/docs/chirpstack-gateway-bridge/install/dragino.html]] 374 + 375 + 376 +(% style="color:blue" %)**What do you need to prepare** 377 + 378 +A gateway that can access the internet normally 379 + 380 + 381 +== 6.1 Configure Packet Forwarder == 382 + 383 + 384 +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 385 + 386 +* In the (% style="color:blue" %)**LoRaWAN**(%%) menu, click on (% style="color:blue" %)**LoRaWAN ~-~- Semtech UDP** 387 + 388 +* Make sure the following settings are set: 389 +** **Service Provider:** //~-~-Custom/Private LoRaWAN~-~-// 390 +** **LoRaWAN Server Address:** //localhost or 127.0.0.1// 391 +** **Server port for upstream:** //1700// 392 +** **Server port for downstream:** //1700// 393 + 394 + Click (% style="color:blue" %)**Save & Apply**. 395 + 396 +[[image:image-20221222114220-2.png||height="748" width="931"]] 397 + 398 + 399 +== 6.2 Configuring gateway frequency == 400 + 401 + 402 +(% style="color:red" %)**Note: Gateway frequencies must match** 403 + 404 +[[image:image-20221222134830-3.png||height="408" width="923"]] 405 + 406 + 407 +== 6.3 Modify the gateway-bridge configuration file == 408 + 409 + 410 +Run the gateway command line command to modify the gateway-bridge configuration file: 411 + 412 +(% class="box infomessage" %) 413 +((( 414 +**root@dragino-1d27d4:~~# vim /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml ** 415 +))) 416 + 417 +[[image:image-20221222113302-1.png]] 418 + 419 + 420 +[[image:image-20221222140203-4.png||height="875" width="806"]] 421 + 422 +[[image:image-20221230094246-1.png||height="768" width="783"]] 423 + 424 +(% class="wikigeneratedid" id="H" %) 425 +After the modification, run the following command: **/etc/init.d/chirpstack-gateway-bridge restart** 426 + 427 + 428 +== 6.4 (Re)start and stop gateway-bridge == 429 + 430 + 431 +Use the following commands to (re)start and stop the ChirpStack Gateway Bridge Service: 432 + 433 +(% class="box infomessage" %) 434 +((( 435 +**# start** 436 + 437 +/etc/init.d/chirpstack-gateway-bridge start 438 + 439 +**# stop** 440 + 441 +/etc/init.d/chirpstack-gateway-bridge stop 442 + 443 +**# restart** 444 + 445 +/etc/init.d/chirpstack-gateway-bridge restart 446 +))) 447 + 448 + 449 +== 6.5 Successful Connection == 450 + 451 + 452 +[[image:image-20221222141754-5.png||height="488" width="1150"]] 453 + 454 + 455 +[[image:image-20221222141830-6.png||height="582" width="1153"]] 456 + 457 + 458 += 7. Downlink = 459 + 460 +== 7.1 Convert HEX to Base64 == 461 + 462 + 218 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.** 219 219 220 -[[Online HEX to Base64 Converter>>https://base64.guru/converter/encode/hex]]: 465 +**[[Online HEX to Base64 Converter>>https://base64.guru/converter/encode/hex]]:** 221 221 222 222 [[image:image-20221010193350-1.png]] 223 223 224 224 225 -[[Online Base64 to Hex converter>>https://base64.guru/converter/decode/hex]] 226 226 471 +**[[Online Base64 to Hex converter>>https://base64.guru/converter/decode/hex]]** 472 + 227 227 [[image:image-20221010193621-2.png]] 228 228 229 229 476 +== 7.2 Chirpstack Downlink Note == 230 230 231 -== 4.2 Chirpstack Downlink Note == 232 232 233 - 234 234 [[image:image-20220601102543-2.png]] 235 235 236 -Convert the data to Base64 481 +**Convert the data to Base64** 237 237 483 +(% style="display:none" %) (%%) 238 238 239 -[[image:image-20220531173236-10.png]] 240 240 241 - Check ChripStackdownlink DataRate486 +[[image:image-20220531173236-10.png||height="597" width="1215"]] 242 242 488 +**Check ChripStack downlink DataRate** 243 243 244 -[[image:image-20220525101326-11.png]] 245 245 246 -Make sure the RX2DR is the same in the end node 247 247 492 +[[image:image-20220525101326-11.png]] 248 248 494 +**Make sure the RX2DR is the same in the end node** 249 249 250 -== 4.3 Loraserver Downlink Note == 251 251 497 +== 7.3 Loraserver Downlink Note == 252 252 499 + 253 253 User can use MQTT to send downlink payload to ChirpStack to perform downstream to LoRaWAN End 254 254 255 255 ((( ... ... @@ -267,7 +267,7 @@ 267 267 [[image:image-20220531173419-11.png]] 268 268 269 269 ((( 270 -MQTT Connect to ChirpStack 517 +**MQTT Connect to ChirpStack** 271 271 272 272 273 273 ... ... @@ -294,10 +294,10 @@ 294 294 295 295 [[image:image-20220531173519-12.png]] 296 296 297 -MQTT Connect to ChirpStack 544 +**MQTT Connect to ChirpStack** 298 298 299 299 300 -If we want to send downstream hex 030101 to end node, the BASE64 payload is AwEB 547 +**If we want to send downstream hex 030101 to end node, the BASE64 payload is AwEB** 301 301 302 302 [[image:image-20220531173658-14.png]] 303 303 ... ... @@ -319,15 +319,15 @@ 319 319 { 320 320 if(sha1[n] >= 'A' && sha1[n] <= 'Z') 321 321 { 322 - ascv = sha1.charCodeAt(n) - 55; 569 + ascv = sha1.charCodeAt( n ) - 55; 323 323 } 324 324 else if(sha1[n] >= 'a' && sha1[n] <= 'z') 325 325 { 326 - ascv = sha1.charCodeAt(n) - 87; 573 + ascv = sha1.charCodeAt( n ) - 87; 327 327 } 328 328 else 329 329 { 330 - ascv = sha1.charCodeAt(n) - 48; 577 + ascv = sha1.charCodeAt( n ) - 48; 331 331 } 332 332 \\ bit_arr = (bit_arr << 4) | ascv; 333 333 bit_num += 4; ... ... @@ -364,15 +364,16 @@ 364 364 ))) 365 365 366 366 614 +== 7.4 Add the decode function in Chirpstack for the payload == 367 367 368 -== 4.3 Add the decode function in Chirpstack for the payload == 369 369 370 - 371 371 User enters the payload code according to the steps. 372 372 373 -[[ image:image-20220531173754-15.png]]619 +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 dragino end node>>https://github.com/dragino/dragino-end-node-decoder]]** 374 374 621 +[[image:image-20220531173754-15.png||height="474" width="1334"]] 375 375 623 + 376 376 [[image:image-20220531173856-16.png]] 377 377 378 378 ... ... @@ -381,10 +381,9 @@ 381 381 [[image:image-20220531174046-19.png]] 382 382 383 383 632 += 8. Multiply Uplink in ChirpStack = 384 384 385 -= 5. Multiply Uplink in ChirpStack = 386 386 387 - 388 388 ((( 389 389 nbtrans field is the value to determine the re-transmission time for unconfirmed uplink data. 390 390 ))) ... ... @@ -395,7 +395,7 @@ 395 395 396 396 ))) 397 397 398 -[[image:image-20220526091912-7.png]] 645 +[[image:image-20220526091912-7.png||height="241" width="1336"]] 399 399 400 400 401 401 ((( ... ... @@ -420,15 +420,14 @@ 420 420 421 421 422 422 423 -Duplicate transmission in short time 670 +**Duplicate transmission in short time** 424 424 425 -[[image:image-20220601102430-1.png]] 672 +[[image:image-20220601102430-1.png||height="598" width="1319"]] 426 426 427 427 675 +== 8.1 Solution == 428 428 429 -== 5.1 Solution == 430 430 431 - 432 432 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]] 433 433 434 434 ... ... @@ -548,16 +548,120 @@ 548 548 Finish. 549 549 550 550 797 += 9. How to store/get all data traffic for a specific sensor, including raw payload, and uplink/ downlink history. = 551 551 552 -= 6. Trouble Shooting = 553 553 554 - ==6.1MICMismatch or MICFailed==800 +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. 555 555 802 +This example will be shown how to store/get all the data in two ways: 556 556 804 +(% style="color:blue" %)**//1). Chirpstack ~-~-> Node-red//** 805 + 806 + 807 +[[image:image-20221012184501-1.png]] 808 + 809 + 810 +Use MQTT in Nore-red to subscribe to topics published by the chirpstack-application and then continuously write to a file 811 + 812 +[[image:image-20221012174220-2.png]] 813 + 814 + 815 +[[image:image-20221012184655-3.png||height="395" width="1049"]] 816 + 817 + 818 +**Each message is continuously logged to a specified file** 819 + 820 +[[image:image-20221012174352-3.png]] 821 + 822 + 823 +(% style="color:blue" %)**//2). MQTT Sub//** 824 + 825 +If you don't want to store the information via node-red, you can get the output via the subscribe command. 826 + 827 + 828 +**If connecting from the same machine, you can use the following command to receive data:** 829 + 830 +(% class="box infomessage" %) 557 557 ((( 832 +**mosquitto_sub -h localhost -t "application/#" -v** 833 +))) 834 + 835 + 836 +(% style="color:blue" %)**Different host** 837 + 838 +(% class="box infomessage" %) 839 +((( 840 +**mosquitto_sub -h IPADDRESS -p 8883 ~-~-insecure ~-~-cafile ca.pem ~-~-cert cert.pem ~-~-key key.pem -t "application/#" -v** 841 +))) 842 + 843 +[[image:image-20221012173639-1.png]] 844 + 845 += 10. Example: Use Local Server ChirpStack and Node-Red in LPS8v2 = 846 + 847 + 848 +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: 849 + 850 +* LHT65N register on LPS8v2 Built-In ChirpStack server already 851 +* The user is able to see the data on the built-in ChirpStack server device page. 852 + 853 +Below are the steps to plot the sensor data on LPS8v2 Node-Red. 854 + 855 + 856 +== 10.1 Link Node-Red to Local ChirpStack == 857 + 858 + 859 +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"]]** 860 + 861 +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]]** 862 + 863 +After importing the Input Flow is complete, the user needs to edit the MQTT in the node 864 + 865 + 866 +(% style="color:blue" %)**1. Change the Topic** 867 + 868 +Topic modifies it to the following format: 869 + 870 +**application/(% style="color:red" %)Application ID(%%)/device/(% style="color:red" %)End device ID(%%)/event/up** 871 + 872 +Reference link: [[**Node-RED integration** >>https://www.chirpstack.io/docs/guides/node-red-integration.html]] 873 + 874 +[[image:image-20230527143923-1.png||height="588" width="1132"]] 875 + 876 + 877 + 878 +(% style="color:blue" %)**2. Enter the MQTT configuration information** 879 + 880 +[[image:image-20230527144206-2.png||height="590" width="1136"]] 881 + 882 + 883 +(% style="color:blue" %)3. **Finally, click "Update" and Deploy** 884 + 885 +"Connected" indicates that the Link Node-red to Local Chirpstack is normal. 886 + 887 +[[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"]] 888 + 889 + 890 +== 10.2 Check result. == 891 + 892 + 893 +Users can check logs by adding debug. 894 + 895 +Browser access: **Node-Red-Server-Address:1880/ui** 896 + 897 +[[image:image-20230529150923-1.png||height="424" width="1118"]] 898 + 899 + 900 += 11. Trouble Shooting = 901 + 902 +== 11.1 MIC Mismatch or MIC Failed == 903 + 904 + 905 +((( 558 558 When the device is registered or the device is working normally, the problem of MIC mismatch and MIC failed occurs. 559 559 ))) 560 560 561 561 ((( 562 562 Under normal circumstances, users need to change the APPKEY to solve this problem. 911 + 912 + 563 563 )))
- LHT65N-ChirpStack-node-red.json
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +18.9 KB - Content
-
... ... @@ -1,0 +1,721 @@ 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-20221012173639-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoye - Size
-
... ... @@ -1,0 +1,1 @@ 1 +56.2 KB - Content
- image-20221012174220-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoye - Size
-
... ... @@ -1,0 +1,1 @@ 1 +14.8 KB - Content
- image-20221012174352-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoye - Size
-
... ... @@ -1,0 +1,1 @@ 1 +93.0 KB - Content
- image-20221012184501-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoye - Size
-
... ... @@ -1,0 +1,1 @@ 1 +91.3 KB - Content
- image-20221012184631-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoye - Size
-
... ... @@ -1,0 +1,1 @@ 1 +32.4 KB - Content
- image-20221012184655-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoye - Size
-
... ... @@ -1,0 +1,1 @@ 1 +45.4 KB - Content
- image-20221222113302-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +76.3 KB - Content
- image-20221222114220-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +64.3 KB - Content
- image-20221222134830-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +54.5 KB - Content
- image-20221222140203-4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +91.4 KB - Content
- image-20221222141754-5.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +179.1 KB - Content
- image-20221222141830-6.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +116.7 KB - Content
- image-20221230094246-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +84.9 KB - Content
- image-20230415165254-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +67.2 KB - Content
- image-20230415170404-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +17.9 KB - Content
- image-20230415170854-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +48.4 KB - Content
- image-20230527115750-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +208.8 KB - Content
- image-20230527143923-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +222.4 KB - Content
- image-20230527144206-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +224.2 KB - Content
- image-20230529150923-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +87.2 KB - Content
- image-20230531162943-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +84.6 KB - Content
- image-20230702094608-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +53.8 KB - Content
- image-20230702094852-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +12.5 KB - Content
- image-20230702094944-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +26.7 KB - Content
- image-20230702095114-4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +43.5 KB - Content
- image-20230702095557-5.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +48.5 KB - Content
- image-20230702095641-6.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +19.2 KB - Content
- image-20230702095827-7.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +34.9 KB - Content
- image-20230702100312-8.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +33.2 KB - Content
- image-20230702100356-9.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +21.9 KB - Content
- image-20230702100543-10.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +25.6 KB - Content
- image-20230702100930-11.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +48.7 KB - Content