Changes for page Notes for ChirpStack
Last modified by Kilight Cao on 2024/09/24 15:23
Change comment:
Uploaded new attachment "image-20220525104155-17.png", version {1}
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 92 removed)
- LHT65N-ChirpStack-node-red.json
- image-20220525104223-18.png
- image-20220525104258-19.png
- image-20220525104328-20.png
- image-20220525104359-21.png
- image-20220525104437-22.png
- image-20220525104502-23.png
- image-20220525104532-24.png
- image-20220525104554-25.png
- image-20220525104647-26.png
- image-20220526085155-1.png
- image-20220526085310-2.png
- image-20220526090446-3.png
- image-20220526090748-4.png
- image-20220526091602-5.png
- image-20220526091801-6.png
- image-20220526091912-7.png
- image-20220531171609-1.png
- image-20220531171651-2.png
- image-20220531171809-3.png
- image-20220531171923-4.png
- image-20220531172031-5.png
- image-20220531172158-6.png
- image-20220531172304-7.png
- image-20220531172837-8.png
- image-20220531172857-9.png
- image-20220531173236-10.png
- image-20220531173419-11.png
- image-20220531173519-12.png
- image-20220531173601-13.png
- image-20220531173658-14.png
- image-20220531173754-15.png
- image-20220531173856-16.png
- image-20220531173939-17.png
- image-20220531174015-18.png
- image-20220531174046-19.png
- image-20220531174120-20.png
- image-20220601102430-1.png
- image-20220601102543-2.png
- image-20221010193350-1.png
- image-20221010193621-2.png
- 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
- 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
- image-20231108165128-3.png
- image-20231108165158-4.png
- image-20231108171112-5.png
- image-20231108171145-6.png
- image-20231201174640-1.png
- image-20231201175118-2.png
- image-20231201175648-3.png
- image-20231201180103-4.png
- image-20231204104802-1.png
- image-20231204105201-2.png
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Kilight1 +XWiki.Xiaoling - Content
-
... ... @@ -1,137 +1,73 @@ 1 -**~ Table ofContents:**1 +**~ Contents:** 2 2 3 3 {{toc/}} 4 4 5 += 1. Introduction = 5 5 6 - 7 - 8 -= 1. Introduction = 9 - 10 - 11 11 (% style="color:black" %)The ChirpStack open-source LoRaWAN Network Server stack provides open-source components for LoRaWAN networks And the Chirpstack supports the users in building a private LoRaWAN Server. For more info please refer to this [[link>>url:https://www.chirpstack.io/]] 12 12 13 13 ((( 14 14 (% style="color:black" %)The dragino gateway can connect the ChirpStack server via Semtech UDP or Semtech Basic Station. 15 - 16 - 17 17 ))) 18 18 19 - (% style="color:blue" %)**Prerequisite:**13 +**Prerequisite** 20 20 21 - **1) Have a Chirstack Server.**15 +1) Have a Chirstack Server. 22 22 23 -[[image:image-202 30821114047-4.png||height="524" width="990"]]17 +[[image:image-20220525100058-1.png]] 24 24 25 25 ChirpStack home page 26 26 27 27 22 +2) Gateway model support 28 28 29 -**2) Gateway model support** 30 - 31 31 (% class="box" %) 32 32 ((( 33 33 ((( 34 34 Semtech UDP : **All Model** 35 -Basic Station : [[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]]36 - (% style="color:red" %)**Note**(%%): the firmware needs >[[lgw~~-~~-build-v5.4.1640315898>>url:https://www.dragino.com/downloads/index.php?dir=LoRa_Gateway/LPS8/Firmware/Release/]]if use the Bais station28 +Basic Station : , , 29 +**Note** : the firmware needs > if use the Bais station 37 37 ))) 38 38 ))) 39 39 33 += 2. Semtech UDP = 40 40 41 -= 2. Nodeusageintroduction=35 +== 2.1 Step 1. Add the Network-servers == 42 42 43 -== 2.1 Register Node == 44 - 45 - 46 -**Step 1: Add application** 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" %) 96 96 ((( 97 - Windows ~-~-> 98 - Linux 41 + Windows ~-~->Network-server server * : localhost:8000 42 + Linux ~-~->Network-server server * : chirpstack-network-server:8000 99 99 ))) 100 100 45 +If the user cannot add network-Servers, re-check the ChirpStack code or the server building process. 101 101 102 - (% style="color:red" %)**If the user cannot add network-Servers, re-check the ChirpStack code or the server buildingprocess.**47 +[[image:image-20220525100158-2.png]] 103 103 104 -[[image:image-20220531171609-1.png||height="638" width="1268"]](% style="display:none" %) 105 - 106 106 Add the Network-servers 107 107 51 +== 2.2 Step 2. Create Gateway-profiles == 108 108 109 - == 3.2 Step 2. CreateGateway-profiles ==53 +[[image:image-20220525100255-3.png]] 110 110 111 - 112 -[[image:image-20220531171651-2.png||height="632" width="1264"]](% style="display:none" %) 113 - 114 114 Create Gateway-profiles 115 115 57 +== 2.3 Step 3. Create Service-profiles == 116 116 117 - == 3.3 Step 3. CreateService-profiles ==59 +[[image:image-20220525100322-4.png]] 118 118 119 - 120 -[[image:image-20220531171809-3.png||height="761" width="1265"]] 121 - 122 122 Create Service-profiles 123 123 124 - 125 125 In Step 3. Create Service-profiles, the above parameters can be set. If necessary, you can set them by yourself. This is only an example. 126 126 127 127 (% style="color:red" %)**Note : Before add the gateway, the user needs to complete the preceding three steps.** 128 128 129 -If the user has completed the preceding steps, proceed to the next step. (% style="display:none" %)67 +If the user has completed the preceding steps, proceed to the next step. 130 130 69 +== 2.4 Step 4. Add the gateway == 131 131 132 -== 3.4 Step 4. Add the gateway == 133 - 134 - 135 135 The example gateway id is: a840411e96744150 136 136 137 137 ((( ... ... @@ -138,84 +138,55 @@ 138 138 (% style="color:red" %)**Note : The Gateway EUI and server addresses must match the ChirpStack configuration.** 139 139 ))) 140 140 141 -[[image:image-202205 31171923-4.png||height="745" width="1253"]](% style="display:none" %)77 +[[image:image-20220525100350-5.png]] 142 142 143 143 Add the gateway 144 144 81 +[[image:image-20220525100417-6.png]] 145 145 146 -[[image:image-20220531172031-5.png]] 147 - 148 148 Configure the gateway 149 149 85 +== 2.5 Step 5. Checking gateway Status == 150 150 151 - == 3.5 Step5.Checkinggateway Status ==87 +[[image:image-20220525100448-7.png]] 152 152 153 - 154 -[[image:image-20220531172158-6.png||height="704" width="1167"]](% style="display:none" %) 155 - 156 - 157 - 158 158 gateway Status 159 159 160 -[[image:image-202205 31172304-7.png||height="628" width="1165"]]91 +[[image:image-20220525100516-8.png]] 161 161 162 162 gateway Status 163 163 95 += 3. Gateway Registration for Basics Station = 164 164 165 -= 4. Semtech UDP forChirpStack v4=97 +== Introduction == 166 166 167 -== 4.1 Step 1. Add the gateway == 168 - 169 - 170 -[[image:image-20230926092907-1.png||height="598" width="1007"]] 171 - 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. 188 188 103 +**Below list the support products and Requirements:** 189 189 190 -(% style="color:blue" %)**Below list the support products and Requirements:** 191 - 192 192 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]] 193 193 1. Firmware version since :[[lgw~~-~~-build-v5.4.1651822913>>url:https://www.dragino.com/downloads/index.php?dir=LoRa_Gateway/LPS8/Firmware/Test_Firmware/lgw--build-v5.4.1651822913-20220506-1543/]] 194 194 195 - (% style="color:blue" %)**How to set up chirpStack Basic Station**108 +**How to set up chirpStack Basic Station** 196 196 197 197 Users can check out the ChirpStack Basic Station [[link>>https://www.chirpstack.io/gateway-bridge/backends/basic-station/]] and [[forum>>https://forum.chirpstack.io/search?q=basic%20station]] 198 198 112 +**What do you need to prepare** 199 199 200 -(% style="color:blue" %)**What do you need to prepare** 201 - 202 202 A gateway that can access the internet normally 203 203 116 +== 3.1 Add Gateway == 204 204 205 -== 5.2 Add Gateway == 206 - 207 - 208 208 [[image:image-20220524164205-10.png]] 209 209 120 +== 3.2 Access the gateway GUI == 210 210 211 -== 5.3 Access the gateway GUI == 212 - 213 - 214 214 Access the gateway GUI interface of LoRaWAN~-~->LoRaWAN ~-~- Basic Station 215 215 216 216 [[image:image-20220524164319-11.png]] 217 217 218 - 219 219 User need to Choose the ChirpStack/Senet ~-~- Basic Station , input Server URI and Upload the TLS Certificate 220 220 221 221 (% class="box" %) ... ... @@ -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:3001132 +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 ))) ... ... @@ -230,287 +230,48 @@ 230 230 (% class="wikigeneratedid" %) 231 231 [[image:image-20220524164341-12.png]] 232 232 140 +== 3.3 Start Station == 233 233 234 - ==5.4StartStation==142 +When the user has finished the configuration, Please click Sace&Apply to start station to connect ChirpStack 235 235 144 +== 3.4 Successful Connection == 236 236 237 -When the user has finished the configuration, Please click **Sace&Apply** to start station to connect ChirpStack. 238 - 239 - 240 -== 5.5 Successful Connection == 241 - 242 - 243 243 If user completes the above steps, which will see live date in the ChirpStack. 244 244 245 245 [[image:image-20220524164448-13.png]] 246 246 150 +== 3.5 Trouble Shooting == 247 247 248 -== 5.6 Trouble Shooting == 249 - 250 - 251 251 User can check the station log in the logread/system log page. 252 252 253 -[[image:image-202205 31172837-8.png]]154 +[[image:image-20220524164514-14.png]] 254 254 255 - 256 256 and recode the station log in the system/Recode log page. 257 257 258 -[[image:image-202205 31172857-9.png]]158 +[[image:image-20220524164541-15.png]] 259 259 160 += 4. Downlink = 260 260 261 -= 6.Howthe gateway connects toChirpstackv3 viagateway-bridge=162 +== 4.1 Chirpstack Downlink Note == 262 262 164 +[[image:image-20220525101223-9.png]] 263 263 264 - (% style="color:blue" %)**Below list thesupport productsandRequirements:**166 +Convert the data 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/]] 168 +[[image:image-20220525101247-10.png]] 268 268 269 - (% style="color:blue"%)**How to set up chirpStackGateway-bridge**170 +Check ChripStack downlink DataRate 270 270 271 -Users can check out the ChirpStack gateway-bridge v3 [[link>>https://www.chirpstack.io/gateway-bridge/gateway/dragino/]] 272 - 273 - 274 -(% style="color:blue" %)**What do you need to prepare** 275 - 276 -A gateway that can access the internet normally 277 - 278 - 279 -The following example does not have configuration certificates: 280 - 281 - 282 -== 6.1 Configure Packet Forwarder == 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 - 478 -=== 8.1 Chirpstack Downlink Note === 479 - 480 - 481 -==== Select HEX format for downlink ==== 482 - 483 - 484 -(% style="color:red" %)**Note: The end node user manual provides HEX format of the downlink commands, so users can directly select HEX format downlink.** 485 - 486 - 487 -[[image:image-20231108171112-5.png||height="629" width="1117"]] 488 - 489 - 490 -[[image:image-20231108171145-6.png||height="497" width="1101"]] 491 - 492 - 493 - 494 - 495 - 496 -[[image:image-20220531173236-10.png||height="597" width="1215"]] 497 - 498 -**Check ChripStack downlink DataRate** 499 - 500 - 501 - 502 502 [[image:image-20220525101326-11.png]] 503 503 504 - **Make sure the RX2DR is the same in the end node**174 +Make sure the RX2DR is the same in the end node 505 505 176 +== 4.2 Loraserver Downlink Note == 506 506 507 -== 8.3 Loraserver Downlink Note == 508 - 509 - 510 510 User can use MQTT to send downlink payload to ChirpStack to perform downstream to LoRaWAN End 511 511 512 512 ((( 513 - **Below is examples:**181 +Below is examples: 514 514 ))) 515 515 516 516 (% class="box" %) ... ... @@ -521,17 +521,14 @@ 521 521 User name: User name Password: password 522 522 ))) 523 523 524 -[[image:image-202205 31173419-11.png]]192 +[[image:image-20220525101401-12.png]] 525 525 526 526 ((( 527 -**MQTT Connect to ChirpStack** 528 - 529 - 530 - 195 +MQTT Connect to ChirpStack 531 531 ))) 532 532 533 533 ((( 534 - **After connect**199 +After connect 535 535 ))) 536 536 537 537 (% class="box" %) ... ... @@ -549,16 +549,24 @@ 549 549 Payload: {"confirmed":true,"fPort":2,"data":"AwEB"} 550 550 ))) 551 551 552 -[[image:image-202205 31173519-12.png]]217 +[[image:image-20220525101436-13.png]] 553 553 554 - **MQTT Connect to ChirpStack**219 +MQTT Connect to ChirpStack 555 555 221 +((( 222 +(% style="color:red" %)Note: Chirpstack use base64 to downlink, so need to convert the downlink payload from HEX to base64 [[https:~~/~~/base64.us/>>url:https://base64.us/]] 223 +))) 556 556 225 +[[image:image-20220525101505-14.png]] 557 557 558 -((( 559 -Downlink payload encode javescript code. 227 +Choose to Use Hex for Encode 560 560 561 -We can run the following Javsscript code on the site: 229 +If we want send downstream hex 030101 to end node, the BASE64 payload is AwEB 230 + 231 +[[image:image-20220525104025-15.png]] 232 + 233 +((( 234 +Downlink payload encode javescript code: 可以在网站上运行以下Javsscript代码: 562 562 ))) 563 563 564 564 (% class="box" %) ... ... @@ -574,15 +574,15 @@ 574 574 { 575 575 if(sha1[n] >= 'A' && sha1[n] <= 'Z') 576 576 { 577 - ascv = sha1.charCodeAt( 250 + ascv = sha1.charCodeAt(n) - 55; 578 578 } 579 579 else if(sha1[n] >= 'a' && sha1[n] <= 'z') 580 580 { 581 - ascv = sha1.charCodeAt( 254 + ascv = sha1.charCodeAt(n) - 87; 582 582 } 583 583 else 584 584 { 585 - ascv = sha1.charCodeAt( 258 + ascv = sha1.charCodeAt(n) - 48; 586 586 } 587 587 \\ bit_arr = (bit_arr << 4) | ascv; 588 588 bit_num += 4; ... ... @@ -618,28 +618,20 @@ 618 618 AwAA is 0x030000's base 64 Encode. 619 619 ))) 620 620 294 +== 4.3 Add the decode function in Chirpstack for the payload == 621 621 622 -== 8.4 Add the decode function in Chirpstack for the payload == 623 - 624 - 625 625 User enters the payload code according to the steps. 626 626 627 - 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]]**298 +[[image:image-20220525104051-16.png]] 628 628 629 -[[image:image-202205 31173754-15.png||height="474" width="1334"]]300 +[[image:image-20220524165028-24.png]] 630 630 302 +[[image:image-20220524165100-25.png]] 631 631 632 -[[image:image-202205 31173856-16.png]]304 +[[image:image-20220524165116-26.png]] 633 633 306 += 5. Multiply Uplink in ChirpStack = 634 634 635 -[[image:image-20220531174120-20.png]] 636 - 637 -[[image:image-20220531174046-19.png]] 638 - 639 - 640 -= 9. Multiply Uplink in ChirpStack = 641 - 642 - 643 643 ((( 644 644 nbtrans field is the value to determine the re-transmission time for unconfirmed uplink data. 645 645 ))) ... ... @@ -646,25 +646,18 @@ 646 646 647 647 ((( 648 648 ChirpStack will auto adjust nbtrans according to uplink rssi. [[link to source>>url:https://github.com/brocaar/chirpstack-network-server/blob/master/internal/adr/adr.go]] 649 - 650 - 651 651 ))) 652 652 653 -[[image:image-20220526 091912-7.png||height="241" width="1336"]]316 +[[image:image-20220524165141-27.png]] 654 654 655 - 656 656 ((( 657 657 nbtrans is a field of ADR message, in unconfirm mode, it tells end node how many time it needs to transmit for every frame. 658 - 659 - 660 660 ))) 661 661 662 -[[image:image-202205251 04359-21.png]]322 +[[image:image-20220524165158-28.png]] 663 663 664 664 ((( 665 665 Above behaviour will cause the platform shows below two cases of error: 666 - 667 - 668 668 ))) 669 669 670 670 ((( ... ... @@ -671,35 +671,28 @@ 671 671 Error of duplicate Frame Counter 672 672 ))) 673 673 674 -[[image:image-2022052 5104437-22.png]]332 +[[image:image-20220524165301-29.png]] 675 675 334 +Duplicate transmission in short time 676 676 336 +[[image:image-20220524165319-30.png]] 677 677 678 - **Duplicate transmissionin short time**338 +== 5.1 Solution == 679 679 680 -[[image:image-20220601102430-1.png||height="508" width="1120"]] 681 - 682 - 683 -== 9.1 Solution == 684 - 685 - 686 686 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]] 687 687 688 688 ((( 689 - (% style="color:blue" %)**1.**343 +~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. 690 690 ))) 691 691 692 -[[image:image-2022052 5104532-24.png]]346 +[[image:image-20220524165339-31.png]] 693 693 348 +installation path: 694 694 695 - **installation path:**350 +[[image:image-20220524165400-32.png]] 696 696 697 -[[image:image-20220525104554-25.png]] 698 - 699 - 700 - 701 701 ((( 702 - (% style="color:blue" %)**2.**353 +2. Environment variable settings:. 703 703 ))) 704 704 705 705 ((( ... ... @@ -707,25 +707,21 @@ 707 707 ))) 708 708 709 709 ((( 710 -2) 361 +2)Set the variable name GOROOT and the variable value C:\Go\ (installation directory) 711 711 ))) 712 712 713 713 [[image:image-20220524165433-33.png]] 714 714 366 +3)Modify the system variable Path and add C:\Go\bin\: 715 715 716 -3) Modify the system variable Path and add C:\Go\bin\: 717 - 718 718 [[image:image-20220524165452-34.png]] 719 719 720 - 721 721 User variable setting file generation directory: D:\go: 722 722 723 723 [[image:image-20220524165517-35.png]] 724 724 374 +3. Modify the ADR configuration file according to your own needs, adr.setting.go is an example of the ADR configuration file. 725 725 726 - 727 -(% style="color:blue" %)**3. Modify the ADR configuration file according to your own needs, adr.setting.go is an example of the ADR configuration file.** 728 - 729 729 The name of the plugin: Example ADR plugin: 730 730 731 731 [[image:image-20220524165540-36.png]] ... ... @@ -734,10 +734,8 @@ 734 734 735 735 [[image:image-20220524165557-37.png]] 736 736 384 +4. Compile the ADR configuration file and generate the exe file. 737 737 738 - 739 -(% style="color:blue" %)**4. Compile the ADR configuration file and generate the exe file.** 740 - 741 741 1) Create a folder named adr-setting 742 742 743 743 2) Open the adr-setting folder ... ... @@ -760,10 +760,8 @@ 760 760 761 761 [[image:image-20220524165623-38.png]] 762 762 408 +5. Add the plugin and run the plugin. 763 763 764 - 765 -(% style="color:blue" %)**5. Add the plugin and run the plugin.** 766 - 767 767 ((( 768 768 The exe file generated in the previous step is placed in the same root directory as chirpstack-network-server.toml, and the ADR plugin is added to the toml file. The location of the addition is as follows: 769 769 ))) ... ... @@ -794,174 +794,18 @@ 794 794 ))) 795 795 ))) 796 796 797 -[[image:image-2022052 5104647-26.png]]440 +[[image:image-20220524165659-40.png]] 798 798 799 799 Finish. 800 800 444 += 6. Trouble Shooting = 801 801 802 -= 10.Howtostore/getall data trafficforaspecific sensor, includingraw payload, and uplink/ downlink history.=446 +== 6.1 MIC Mismatch or MIC Failed == 803 803 804 - 805 -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. 806 - 807 -This example will be shown how to store/get all the data in two ways: 808 - 809 -(% style="color:blue" %)**//1). Chirpstack ~-~-> Node-red//** 810 - 811 - 812 -[[image:image-20221012184501-1.png||height="608" width="1041"]] 813 - 814 - 815 -Use MQTT in Nore-red to subscribe to topics published by the chirpstack-application and then continuously write to a file 816 - 817 -[[image:image-20221012174220-2.png]] 818 - 819 - 820 -[[image:image-20221012184655-3.png||height="395" width="1049"]] 821 - 822 - 823 -**Each message is continuously logged to a specified file** 824 - 825 -[[image:image-20221012174352-3.png]] 826 - 827 - 828 -(% style="color:blue" %)**//2). MQTT Sub//** 829 - 830 -If you don't want to store the information via node-red, you can get the output via the subscribe command. 831 - 832 - 833 -**If connecting from the same machine, you can use the following command to receive data:** 834 - 835 -(% class="box infomessage" %) 836 836 ((( 837 -**mosquitto_sub -h localhost -t "application/#" -v** 838 -))) 839 - 840 - 841 -(% style="color:blue" %)**Different host** 842 - 843 -(% class="box infomessage" %) 844 -((( 845 -**mosquitto_sub -h IPADDRESS -p 8883 ~-~-insecure ~-~-cafile ca.pem ~-~-cert cert.pem ~-~-key key.pem -t "application/#" -v** 846 -))) 847 - 848 -[[image:image-20221012173639-1.png||height="273" width="1206"]] 849 - 850 - 851 -= 11. How to use Chirpstack API to batch register Sensor Node/Gateway in Chistapstack Server = 852 - 853 -The following example is based on the built-in ChirpStack server for LPS8V2 854 - 855 -[[image:image-20231201174640-1.png||height="584" width="1148"]] 856 - 857 - 858 -**11.1 Generate API Tokens** 859 - 860 -Access the built-in chirpstack , click "API Key" and "Add API Key". 861 - 862 -[[image:image-20231201175118-2.png||height="597" width="1156"]] 863 - 864 -Save the generated API Tokens 865 - 866 -[[image:image-20231201175648-3.png||height="596" width="1155"]] 867 - 868 -[[image:image-20231201180103-4.png||height="413" width="1151"]] 869 - 870 -= 12. Example: Use Local Server ChirpStack and Node-Red in LPS8v2 = 871 - 872 - 873 -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: 874 - 875 -* LHT65N register on LPS8v2 Built-In ChirpStack server already 876 -* The user is able to see the data on the built-in ChirpStack server device page. 877 - 878 -Below are the steps to plot the sensor data on LPS8v2 Node-Red. 879 - 880 - 881 -== 12.1 Link Node-Red to Local ChirpStack == 882 - 883 - 884 -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"]]** 885 - 886 -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]]** 887 - 888 -After importing the Input Flow is complete, the user needs to edit the MQTT in the node 889 - 890 - 891 -(% style="color:blue" %)**1. Change the Topic** 892 - 893 -Topic modifies it to the following format: 894 - 895 -**application/(% style="color:red" %)Application ID(%%)/device/(% style="color:red" %)End device ID(%%)/event/up** 896 - 897 -Reference link: [[**Node-RED integration** >>https://www.chirpstack.io/docs/guides/node-red-integration.html]] 898 - 899 -[[image:image-20230527143923-1.png||height="588" width="1132"]] 900 - 901 - 902 - 903 -(% style="color:blue" %)**2. Enter the MQTT configuration information** 904 - 905 -[[image:image-20230527144206-2.png||height="590" width="1136"]] 906 - 907 - 908 -(% style="color:blue" %)**3.** **Finally, click "Update" and Deploy** 909 - 910 -"Connected" indicates that the Link Node-red to Local Chirpstack is normal. 911 - 912 -[[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"]] 913 - 914 - 915 -== 12.2 Check result. == 916 - 917 - 918 -Users can check logs by adding debug. 919 - 920 -Browser access: **Node-Red-Server-Address:1880/ui** 921 - 922 -[[image:image-20230529150923-1.png||height="424" width="1118"]] 923 - 924 - 925 -= 13. Trouble Shooting = 926 - 927 -== 13.1 MIC Mismatch or MIC Failed == 928 - 929 - 930 -((( 931 931 When the device is registered or the device is working normally, the problem of MIC mismatch and MIC failed occurs. 932 932 ))) 933 933 934 934 ((( 935 935 Under normal circumstances, users need to change the APPKEY to solve this problem. 936 - 937 - 938 -== 13.2 The node is very close to the gateway, but the signal is poor == 939 - 940 - 941 -If you are using US915 or AU915, you found the frequency points of different subband ranges in your uplink 942 - 943 -Like that:Both 905.1Mhz and 902.3Mhz appear on uplink 944 - But they belong to Subband1 and Subband2 of US915 respectively 945 - 946 -Cause: The server and the gateway use different frequency bands (the server uses Subband1, and the gateway uses Subband2) 947 - 948 - 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. 949 - 950 -How to check the frequency band used by the server: 951 - 952 -You can view the information sent by the server: ch_mask in Unconfirmdedatadown 953 - 954 -[[image:image-20230821113255-1.png]] 955 - 956 -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. 957 - 958 -[[image:image-20230821113539-2.png]] 959 - 960 -In the second message, the channel 0~~7 is true, which means that your server is using subband2. 961 - 962 -[[image:image-20230821113618-3.png]] 963 - 964 -**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]]** 965 - 966 - 967 967 )))
- 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-20220525104223-18.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -87.7 KB - Content
- image-20220525104258-19.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -44.9 KB - Content
- image-20220525104328-20.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -36.9 KB - Content
- image-20220525104359-21.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -136.3 KB - Content
- image-20220525104437-22.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -23.0 KB - Content
- image-20220525104502-23.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -59.2 KB - Content
- image-20220525104532-24.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -45.7 KB - Content
- image-20220525104554-25.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -24.5 KB - Content
- image-20220525104647-26.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -23.9 KB - Content
- image-20220526085155-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -116.8 KB - Content
- image-20220526085310-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -141.7 KB - Content
- image-20220526090446-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -342.8 KB - Content
- image-20220526090748-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -214.7 KB - Content
- image-20220526091602-5.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -129.2 KB - Content
- image-20220526091801-6.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -88.1 KB - Content
- image-20220526091912-7.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -94.9 KB - Content
- image-20220531171609-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -79.4 KB - Content
- image-20220531171651-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -86.3 KB - Content
- image-20220531171809-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -126.4 KB - Content
- image-20220531171923-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -113.1 KB - Content
- image-20220531172031-5.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -62.4 KB - Content
- image-20220531172158-6.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -108.7 KB - Content
- image-20220531172304-7.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -162.5 KB - Content
- image-20220531172837-8.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -67.9 KB - Content
- image-20220531172857-9.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -36.6 KB - Content
- image-20220531173236-10.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -160.2 KB - Content
- image-20220531173419-11.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -104.3 KB - Content
- image-20220531173519-12.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -63.9 KB - Content
- image-20220531173601-13.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -67.6 KB - Content
- image-20220531173658-14.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -59.3 KB - Content
- image-20220531173754-15.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -41.7 KB - Content
- image-20220531173856-16.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -46.7 KB - Content
- image-20220531173939-17.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -41.4 KB - Content
- image-20220531174015-18.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -27.4 KB - Content
- image-20220531174046-19.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -27.2 KB - Content
- image-20220531174120-20.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -41.4 KB - Content
- image-20220601102430-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -139.4 KB - Content
- image-20220601102543-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -51.5 KB - Content
- image-20221010193350-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Edwin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -42.7 KB - Content
- image-20221010193621-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Edwin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -34.2 KB - Content
- image-20221012173639-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoye - Size
-
... ... @@ -1,1 +1,0 @@ 1 -56.2 KB - Content
- image-20221012174220-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoye - Size
-
... ... @@ -1,1 +1,0 @@ 1 -14.8 KB - Content
- image-20221012174352-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoye - Size
-
... ... @@ -1,1 +1,0 @@ 1 -93.0 KB - Content
- 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
- image-20231108165128-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.ting - Size
-
... ... @@ -1,1 +1,0 @@ 1 -43.3 KB - Content
- image-20231108165158-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.ting - Size
-
... ... @@ -1,1 +1,0 @@ 1 -60.8 KB - Content
- image-20231108171112-5.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.ting - Size
-
... ... @@ -1,1 +1,0 @@ 1 -47.7 KB - Content
- image-20231108171145-6.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.ting - Size
-
... ... @@ -1,1 +1,0 @@ 1 -39.1 KB - Content
- image-20231201174640-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -43.6 KB - Content
- image-20231201175118-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -83.2 KB - Content
- image-20231201175648-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -103.2 KB - Content
- image-20231201180103-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -52.6 KB - Content
- image-20231204104802-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -42.4 KB - Content
- image-20231204105201-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -33.3 KB - Content