Changes for page LG01v2 -- LoRa Gateway User Manual
Last modified by Kilight Cao on 2024/10/12 08:58
Change comment:
Uploaded new attachment "image-20221108170621-4.jpeg", version {1}
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 14 removed)
- LoRa_send_trial.ino
- Log-Temperature-Sensor-and-send-data-to-Node-red.ino
- Log-Temperature-Sensor-and-send-data-to-node-red.json
- image-20221108170731-5.png
- image-20221108172149-6.png
- image-20221108172432-7.png
- image-20221108174840-8.png
- image-20221108175113-9.png
- image-20221108180334-10.png
- image-20221108180458-11.png
- image-20221112161031-1.png
- image-20221112161111-2.png
- image-20221112162733-3.png
- image-20221112163119-4.png
Details
- Page properties
-
- Content
-
... ... @@ -11,30 +11,23 @@ 11 11 12 12 {{toc/}} 13 13 14 - 15 - 16 - 17 - 18 - 19 19 = **1. Introduction** = 20 20 21 -== **1.1 What is LG01v2** == 22 22 17 +== **1.1 What is LG01-V2** == 23 23 19 + 24 24 ((( 25 25 ((( 26 -The LG01v2 is an (% style="color:green" %)**open-source single channel LoRa Gateway**(%%). It lets you bridge LoRa wireless network to an IP network via (% style="color:green" %)**WiFi , Ethernet or Cellular Network**(%%) (via Optional 4G module). The LoRa wireless allows users to send data and reach extremely long ranges at low data rates. 27 - 28 -LG01v2 is specially design for (% style="color:green" %)**peer to peer LoRa**(%%) protocol instead of LoRaWAN protocol. The LG01v2 use single channel LoRa module to minimize the deployment cost for a private p2p LoRa wireless network. 22 +The LG01-V2 is an (% style="color:green" %)**open-source single channel LoRa Gateway**(%%). It lets you bridge LoRa wireless network to an IP network via (% style="color:green" %)**WiFi , Ethernet or Cellular Network**(%%) (via Optional 4G module). The LoRa wireless allows users to send data and reach extremely long ranges at low data rates. 29 29 ))) 30 30 31 31 ((( 32 -LG01v2 uses Open Source Linux system. User can modify the Linux part and develop customize software base on it. It has (% style="color:green" %)**1.2Ghz Quad-Core CPU**(%%) , (% style="color:green" %)**4GB eMMC storage**(%%) and (% style="color:green" %)**512MB RAM**(%%) for most application. 33 - 34 -LG01v2 supports (% style="color:green" %)**remote management**(%%). System Integrator can easy to remote monitor the gateway and maintain it. 26 +LG01-V2 supports (% style="color:green" %)**remote management**(%%). System Integrator can easy to remote monitor the gateway and maintain it. 35 35 ))) 36 36 37 37 30 + 38 38 == **1.2 Specifications** == 39 39 40 40 ... ... @@ -63,6 +63,7 @@ 63 63 * Remote Management 64 64 * Auto-provisioning for batch deployment and management 65 65 * LoRa Gateway 59 +* Built-in (% style="color:#037691" %)//**The Things Network**//(%%) local LoRaWAN server 66 66 * Built-in (% style="color:#037691" %)//**Node-Red**// (%%)local Application server 67 67 68 68 == **1.4 Block Diagram** == ... ... @@ -90,6 +90,7 @@ 90 90 (% style="color:blue" %)//**➢ WIFI LED**//(%%)//: This LED shows the WIFI interface connection status.// 91 91 92 92 87 + 93 93 == **1.6 Button Intruction** == 94 94 95 95 ... ... @@ -106,6 +106,7 @@ 106 106 //**LED status: ** ETH LED will SOLID BULE Until the restore is finished.// 107 107 108 108 104 + 109 109 = **2. Quick Start** = 110 110 111 111 ... ... @@ -116,6 +116,7 @@ 116 116 117 117 == **2.1 Connects to the network and accesses the gateway Web UI** == 118 118 115 + 119 119 == **2.1.1 connect the network.** == 120 120 121 121 ... ... @@ -148,11 +148,11 @@ 148 148 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220622102847-7.png?rev=1.1||alt="image-20220622102847-7.png"]] 149 149 150 150 148 + 151 151 = **3. Web Configure Pages** = 152 152 153 153 == **3.1 Home** == 154 154 155 - 156 156 //Shows the system running status~:// 157 157 158 158 [[image:image-20221104155612-1.png||height="497" width="942"]] ... ... @@ -160,6 +160,7 @@ 160 160 161 161 == **3.2 Network Settings** == 162 162 160 + 163 163 === **3.2.1 Network ~-~-> WiFi** === 164 164 165 165 ... ... @@ -166,6 +166,7 @@ 166 166 [[image:image-20221104155654-2.png||height="319" width="813"]] 167 167 168 168 167 + 169 169 === **3.4.2 Network ~-~-> System Status** === 170 170 171 171 ... ... @@ -172,6 +172,7 @@ 172 172 [[image:image-20221104155724-3.png||height="679" width="861"]] 173 173 174 174 174 + 175 175 === **3.4.3 Network ~-~-> Firewall** === 176 176 177 177 ... ... @@ -178,8 +178,10 @@ 178 178 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220616115351-6.png?width=661&height=244&rev=1.1||alt="image-20220616115351-6.png"]] 179 179 180 180 181 + 181 181 == **3.5 System** == 182 182 184 + 183 183 === **3.5.1 System ~-~-> System Overview** === 184 184 185 185 ... ... @@ -188,6 +188,7 @@ 188 188 [[image:image-20221104155907-4.png]] 189 189 190 190 193 + 191 191 === **3.5.2 System ~-~-> Backup/Restore** === 192 192 193 193 ... ... @@ -208,13 +208,15 @@ 208 208 **Path**: System ~-~-> Built-in Server 209 209 210 210 211 - (% style="color:blue" %)**Troubleshooting:**214 +**Troubleshooting:** 212 212 216 + 213 213 **~ 1. URL does not jump properly** 214 214 215 215 For the Node-Red, you can use the local IP address and the port is 1880 to access it. 216 216 217 217 222 + 218 218 == **4.1 Application Server ~-~- Node-Red** == 219 219 220 220 ... ... @@ -229,9 +229,10 @@ 229 229 230 230 = **5. How to configure the Lora Gateway** = 231 231 232 -== **5.1 Configure and Debug LoRa wireless of LG01v2** == 233 233 238 +== **5.1 Access the Lora configuration page** == 234 234 240 + 235 235 Users can access the Lora configuration page by running the following command, then select the option **''serial port setup"**: 236 236 237 237 (% class="box infomessage" %) ... ... @@ -252,9 +252,7 @@ 252 252 ))) 253 253 254 254 255 -(% style="color:red" %)**Note: Enter the corresponding letter to change the configuration, like A,B,C** 256 - 257 - 261 +(% style="color:red" %)**Note: Enter the corresponding letter to change the configuration, like A,B,C**(%%) 258 258 (% style="color:red" %)[[image:image-20221029174703-3.png]] 259 259 260 260 ... ... @@ -263,128 +263,40 @@ 263 263 264 264 (% class="box infomessage" %) 265 265 ((( 266 -**AT+FRE=868.100,868.100 ~-~--> TX and RX frequency 267 -AT+GROUPMOD=0,0 ~-~--> TX and RX group 268 -AT+BW=0,0 ~-~--> TX and RX Bandwidth 269 -AT+SF=12,12 ~-~--> TX and RX Spreading Factor 270 -AT+POWER=14 ~-~--> TX Power Range 271 -AT+CRC=1,1 ~-~--> TX and RX CRC Type 272 -AT+HEADER=0,0 ~-~--> TX and RX Header Type 273 -AT+CR=1,1 ~-~--> TX and RX Coding Rate 274 -AT+IQ=0,0 ~-~--> TX and RX InvertIQ 275 -AT+PREAMBLE=8,8 ~-~--> TX and RX Preamble Length 276 -AT+SYNCWORD=0 ~-~--> Syncword(0: private,1: public) 277 -AT+RXMOD=65535,0 ~-~--> Rx Timeout and Reply mode 278 -AT+RXDAFORM=1** 279 -))) 280 - 281 - 282 -== **5.2 Example: LG01v2** == 283 - 284 -=== **5.2.1 Introduce for the example:** === 285 - 286 - 287 -[[image:image-20221104102736-3.png||height="282" width="723"]] 288 - 289 - 290 -In this example, there are two devices: 291 - 292 -* **LA66 Shield + UNO + DHT11**: The UNO will get the temperature and humidity and broadcast the value via LoRa protocol. 293 -* **LG01v2** : LG01v2 is set to listening the LoRa Channel which LA66 is broadcasting. When LG01v2 get the data from LA66, LG01v2 will plot the data in built-in IoT server. 294 - 295 -=== **5.2.2 Set Up LA66 Shield + UNO** === 296 - 297 - 298 -==== **Set up LA66 Module** ==== 299 - 300 - 301 -LA66 Module is loaded with the firmware **[[LA66 Peer-to-Peer firmware>>http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LA66%20LoRaWAN%20Shield%20User%20Manual/Instruction%20for%20LA66%20Peer%20to%20Peer%20firmware/]] **and user can use AT Command to set up LA66 with below parameters: 302 - 303 -((( 304 -(% style="color:red" %)**LA66 Shield as Sender: ** 305 - 306 -(% class="box infomessage" %) 307 -((( 308 -**LA66 Shield configuration:** 309 - 310 -AT+FRE=868.100,868.100 ~-~--> TX and RX frequency set: 868100000 311 -AT+BW=0,0 ~-~--> TX and RX Bandwidth set: 125kHz 312 -AT+SF=12,12 ~-~--> TX and RX Spreading Factor set: SF12 313 -AT+POWER=14 ~-~--> TX Power Range set: 14dBm 270 +AT+FRE=868.100,868.100 ~-~--> TX and RX frequency 271 +AT+GROUPMOD=0,0 ~-~--> TX and RX group 272 +AT+BW=0,0 ~-~--> TX and RX Bandwidth 273 +AT+SF=12,12 ~-~--> TX and RX Spreading Factor 274 +AT+POWER=14 ~-~--> TX Power Range 314 314 AT+CRC=1,1 ~-~--> TX and RX CRC Type 315 315 AT+HEADER=0,0 ~-~--> TX and RX Header Type 316 316 AT+CR=1,1 ~-~--> TX and RX Coding Rate 317 317 AT+IQ=0,0 ~-~--> TX and RX InvertIQ 318 -AT+PREAMBLE=8,8 ~-~--> TX and RX Preamble Length set: 8279 +AT+PREAMBLE=8,8 ~-~--> TX and RX Preamble Length 319 319 AT+SYNCWORD=0 ~-~--> Syncword**(0: private,1: public)** 320 -AT+RXMOD=6,0 ~-~--> Rx Timeout and Reply mode 281 +AT+RXMOD=65535,0 ~-~--> Rx Timeout and Reply mode 282 +AT+RXDAFORM=1 321 321 ))) 322 -))) 323 323 324 324 286 +== **5.2 Example: LG01**-**V2 Peer-to-Peer** == 325 325 326 -==== **Set up Arduino UNO** ==== 327 327 328 - (%id="cke_bm_1033249S"style="display:none"%)** **289 +[[image:image-20221104102736-3.png||height="282" width="723"]] 329 329 330 -**Hardware Connection** 331 331 332 -(% class="box infomessage" %) 333 -((( 334 -**The DHT11 sensor connects to the LA66 Shield:** 292 +The user can run the AT command to set the LG01-V2 RX window always open as a Receiver, the LA66 Shield uses **AT+SEND=1,hello world,2,3** to simulate sending data, 335 335 336 -**VCC <~-~--> 3.3V (Red line)** 337 -**DATA <~-~--> PIN8 (Purple line)** 338 -**GND <~-~--> GND (White line)** 339 -))) 294 +**Prerequisites: **The configuration of LG01-V2 and LA66 Shield must match, users can use **AT+CFG** to check all configurations. 340 340 341 -[[image:image-20221108170731-5.png||height="588" width="441"]] 342 342 297 +(% style="color:red; font-weight:bold" %)**LG01-V**(% style="color:red" %)**2 as Receiver: (configured as AT+RXMOD=65535,2)** 343 343 344 344 345 - =====**1.OpenArduinoIDE**=====300 +**LG01-V2 configuration:** 346 346 347 - 348 -[[image:image-20221108172149-6.png||height="650" width="542"]] 349 - 350 - 351 - 352 -===== **2. Open project** ===== 353 - 354 - 355 -Users can download Arduino files from this link: [[attach:Log-Temperature-Sensor-and-send-data-to-Node-red.ino||target="_blank"]] 356 - 357 -Then click Compile and Upload to LA66 Shield, 358 - 359 -[[image:image-20221108172432-7.png]] 360 - 361 - 362 - 363 -===== **3. Open the Serial Monitor to check the LA66 Shield data** ===== 364 - 365 - 366 -The UNO will now reads the temperature and humidity data from the sensor and broadcast it via LoRa wireless, 367 - 368 -[[image:image-20221108174840-8.png||height="731" width="671"]] 369 - 370 - 371 - 372 -Sending out data as below. 373 - 374 -[[image:image-20221108175113-9.png||height="556" width="998"]] 375 - 376 - 377 -=== **5.2.3 Set Up LG01v2** === 378 - 379 - 380 -Configure LG01v2 LoRa channel parameters so it can get data from LA66 Shield 381 - 382 -(% style="color:red; font-weight:bold" %)**LG01v**(% style="color:red" %)**2 as Receiver: (configured as AT+RXMOD=65535,2)** 383 - 384 384 (% class="box infomessage" %) 385 385 ((( 386 -**LG01-V2 configuration:** 387 - 388 388 AT+FRE=868.100,868.100 ~-~--> TX and RX frequency set: 868100000 389 389 AT+BW=0,0 ~-~--> TX and RX Bandwidth set: 125kHz 390 390 AT+SF=12,12 ~-~--> TX and RX Spreading Factor set: SF12 ... ... @@ -394,53 +394,36 @@ 394 394 AT+CR=1,1 ~-~--> TX and RX Coding Rate 395 395 AT+IQ=0,0 ~-~--> TX and RX InvertIQ 396 396 AT+PREAMBLE=8,8 ~-~--> TX and RX Preamble Length set: 8 397 -AT+SYNCWORD=0 ~-~--> Syncword**(0: private,1: public)** 313 +AT+SYNCWORD=0 ~-~--> Syncword**(0: private,1: public), **the corresponding Lora shield syncword is 0x12 398 398 AT+RXMOD=65535,0 ~-~--> Rx Timeout and Reply mode, RX window always open 315 +AT+RXDAFORM=1 399 399 ))) 400 400 318 +[[image:image-20221102140053-4.png]] 401 401 402 -=== **5.2.4 Test result** === 403 403 321 +(% style="color:red" %)**LA66 Shield as Sender: (AT+SEND=1,hello world,2,3)** 404 404 405 -After the above configuration is complete, users can send test simulation data to check whether the configuration is correct, In LA66 sheild serial console send:(% style="color:red" %)**(AT+SEND=1,hello world,2,3).** 406 -))) 323 +[[image:1667456058832-484.png||height="291" width="353"]] 407 407 408 -When LG01v2 replies with ACK when it receives a packet sent by LA66 sheild. 409 409 410 -[[image:image-20221108164413-2.png]] 326 +Instruction for Peer-to-Peer firmware:[[ **Instruction **>>url:http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LA66%20LoRaWAN%20Shield%20User%20Manual/Instruction%20for%20LA66%20Peer%20to%20Peer%20firmware/]] 327 +))) 411 411 412 412 330 +Users can import this example in node-red: **[[attach:serial USB.json||target="_blank"]]** 413 413 414 - In the real-timelogof LG01v2:332 +[[image:image-20221104100520-2.png||height="605" width="1150"]] 415 415 416 -[[image:image-20221108170314-3.png]] 417 417 335 += (% style="color:inherit; font-family:inherit; font-size:29px" %)**6. How users can access LG01**(%%)**-V(% style="color:inherit; font-family:inherit; font-size:29px" %)2 using serial USB(%%)** = 418 418 419 -=== **5.2.5 Plot data chart in LG01v2** === 420 420 338 +(% style="color:blue" %)**USB TTL to LG01-V2 Connection:** 421 421 422 -User can plot the temperature and humidity chat via LG01v2 built-in IoT server. 423 423 424 - Usercanimportthisexamplein Node-Red: [[attach:Log-Temperature-Sensor-and-send-data-to-node-red.json||target="_blank"]]341 +Port 1 of the UART on the LG01-V2 is GND 425 425 426 -[[image:image-20221108180334-10.png||height="651" width="1141"]] 427 - 428 - 429 -The temperature and humidity chart is displayed in the built-in node-red UI 430 - 431 -**Browser input: (% style="background-color:yellow" %)__//http:~/~/<local-IPV4-address>//__(%%)** 432 - 433 -[[image:image-20221108180458-11.png||height="402" width="1137"]] 434 - 435 - 436 -= (% style="color:inherit; font-family:inherit; font-size:29px" %)**6. How users can access LG01**(%%)**v(% style="color:inherit; font-family:inherit; font-size:29px" %)2 using serial USB(%%)** = 437 - 438 - 439 -(% style="color:blue" %)**USB TTL to LG01v2 Connection:** 440 - 441 - 442 -Port 1 of the UART on the LG01v2 is GND 443 - 444 444 (% class="box infomessage" %) 445 445 ((( 446 446 **TXD <~-~--> UART RXD (Gray line)** ... ... @@ -451,7 +451,7 @@ 451 451 ))) 452 452 453 453 454 -**LG01 v2 UART connection photo**353 +**LG01-V2 UART connection photo** 455 455 456 456 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220804163015-1.png?width=466&height=621&rev=1.1||alt="image-20220804163015-1.png"]] 457 457 ... ... @@ -462,28 +462,23 @@ 462 462 463 463 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220804164928-3.png?width=332&height=320&rev=1.1||alt="image-20220804164928-3.png"]] 464 464 465 - 466 466 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220804164747-2.png?width=594&height=622&rev=1.1||alt="image-20220804164747-2.png"]] 467 467 468 468 469 -= **7. OTASystem Update** =367 += **7. FAQ** = 470 470 471 -LG01v2 supports system auto update via OTA, please see **[[this URL>>url:http://wiki.dragino.com/xwiki/bin/view/OTA%20Update/]]** for the detail of this feature. 472 472 370 +== **7.1 How does LG01-V2 communicate with Lora shield (LoRa.h)** == 473 473 474 -= **8. FAQ** = 475 475 476 - ==**8.1 Howdoes LG01v2communicate withLorashield(LoRa.h)**==373 +This example describes how to use LG01-V2, LoRa Shield to set up a LoRa network 477 477 478 - 479 -This example describes how to use LG01v2, LoRa Shield to set up a LoRa network, 480 - 481 481 [[image:image-20221103152238-8.png||height="251" width="654"]] 482 482 483 483 484 -(% style="color:red" %)**Prerequisites: The configurations of LG01 v2 and Lora shield must match**378 +(% style="color:red" %)**Prerequisites: The configurations of LG01-V2 and Lora shield must match** 485 485 486 -**LG01 v2 configuration:**380 +**LG01-V2 configuration:** 487 487 488 488 (% class="box infomessage" %) 489 489 ((( ... ... @@ -501,8 +501,6 @@ 501 501 AT+RXDAFORM=1 502 502 ))) 503 503 504 - 505 - 506 506 **Lora shield configuration:** 507 507 508 508 Lora Shield example: [[attach:LoRa_Shield_Sketch_For_MQTT.ino||target="_blank"]] , [[attach:arduino-LoRa-master.zip||target="_blank"]] ... ... @@ -510,63 +510,20 @@ 510 510 [[image:image-20221101161318-2.png]] 511 511 512 512 405 +**Test LG01-V2 to receive Lora Shield data:** 513 513 514 -**Test LG01v2 to receive Lora Shield data:** 515 - 516 516 [[image:image-20221101161951-3.png]] 517 517 518 518 410 +**Test the LG01-V2 to send data:** 519 519 520 -**Test the LG01v2 to send data:** 521 - 522 522 [[image:image-20221101162527-4.png]] 523 523 524 524 525 -= =**8.2How doesLG01v2 communicatewithHeltecLoRaNode** ==415 += (% style="color:inherit; font-family:inherit; font-size:29px" %)**8. Supports**(%%) = 526 526 527 527 528 -This example describes how to use LG01v2 and Heltec LoRa Node to set up a LoRa network, 529 - 530 -[[image:image-20221112161111-2.png||height="258" width="692"]] 531 - 532 -(% style="color:red" %)**Prerequisites: The configurations of LG01v2 and Lora shield must match** 533 - 534 - 535 -**LG01v2 configuration:** 536 - 537 -(% class="box infomessage" %) 538 538 ((( 539 -AT+FRE=868.100,868.100 ~-~--> TX and RX frequency set: 868100000 540 -AT+BW=0,0 ~-~--> TX and RX Bandwidth set: 125kHz 541 -AT+SF=12,12 ~-~--> TX and RX Spreading Factor set: SF12 542 -AT+POWER=14 ~-~--> TX Power Range 543 -AT+CRC=1,1 ~-~--> TX and RX CRC Type 544 -AT+HEADER=0,0 ~-~--> TX and RX Header Type 545 -AT+CR=1,1 ~-~--> TX and RX Coding Rate 546 -AT+IQ=0,0 ~-~--> TX and RX InvertIQ 547 -AT+PREAMBLE=8,8 ~-~--> TX and RX Preamble Length set: 8 548 -AT+SYNCWORD=0 ~-~--> Syncword**(0: private,1: public), **the corresponding Lora shield syncword is 0x12 549 -AT+RXMOD=65535,0 ~-~--> Rx Timeout and Reply mode,RX window always open 550 -AT+RXDAFORM=1 ~-~--> RX data format**(0: Hex ,1: String)** 551 -))) 552 - 553 - 554 -After we upload the sketch to Heltec LoRa Node, we can see below output from Arduino. 555 - 556 -Lora Shield example: [[attach:LoRa_send_trial.ino||target="_blank"]] 557 - 558 -[[image:image-20221112162733-3.png||height="524" width="927"]] 559 - 560 - 561 -And we can see the logread of gateway as below, means the packet arrive gateway: 562 - 563 -[[image:image-20221112163119-4.png||height="808" width="560"]] 564 - 565 - 566 -= (% style="color:inherit; font-family:inherit; font-size:29px" %)**9. Supports**(%%) = 567 - 568 - 569 -((( 570 570 **//If you are experiencing issues and can't solve them, you can send mail to [[support@dragino.com>>mailto:support@dragino.com]].//** 571 571 ))) 572 572 ... ... @@ -574,24 +574,29 @@ 574 574 **//With your question as detailed as possible. We will reply and help you in the shortest.//** 575 575 576 576 577 -= **10. Reference** = 578 578 427 += **9. Reference** = 579 579 580 -* Install Tago Core: Refer **Install Tago Core in LG01v2** in[[ Instruction>>doc:Main.Tago\.IO.WebHome]]. 581 -* [[Advance OS Reference Guide for L>>doc:Main.Armbian OS instruction.WebHome]]G01v2. 582 582 430 +* Install Tago Core: Refer **Install Tago Core in LPS8v2** in[[ Instruction>>doc:Main.Tago\.IO.WebHome]]. 431 +* [[Advance OS Reference Guide for LPS8v2>>doc:Main.Armbian OS instruction.WebHome]]. 432 + 583 583 584 584 ))) 585 585 586 -= **1 1. Order Info** =436 += **10. Order Info** = 587 587 588 588 589 -(% style="color:#0000ff" %)**L G01v2-XXX-YYY**439 +(% style="color:#0000ff" %)**LPS8v2-XXX-YYY** 590 590 591 591 (% style="color:#0000ff" %)**XXX**(% style="color:black" %): Frequency Band 592 592 593 -* (% style="color:red" %)**868**(%%): For frequency : 863 ~~ 870Mhz 594 -* (% style="color:red" %)**915**(%%): For frequency : 902 ~~ 928Mhz 443 +* (% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band 444 +* (% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band 445 +* (% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band 446 +* (% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band 447 +* (% style="color:red" %)**US915**(%%): LoRaWAN US915 band 448 +* (% style="color:red" %)**IN865**(%%): LoRaWAN IN865 band 595 595 596 596 (% style="color:#0000ff" %)**YYY**(% style="color:black" %): 4G Cellular Option 597 597 ... ... @@ -603,9 +603,10 @@ 603 603 More info about valid bands, please see [[EC25-E product page>>url:https://www.quectel.com/product/ec25.htm]]. 604 604 605 605 606 -= **12. Manufacturer Info** = 607 607 461 += **10. Manufacturer Info** = 608 608 463 + 609 609 **Shenzhen Dragino Technology Development co. LTD** 610 610 611 611 Room 202, Block B, BCT Incubation Bases (BaoChengTai), No.8 CaiYunRoad ... ... @@ -613,9 +613,10 @@ 613 613 LongCheng Street, LongGang District ; Shenzhen 518116,China 614 614 615 615 616 -= **13. FCC Warning** = 617 617 472 += **11. FCC Warning** = 618 618 474 + 619 619 ((( 620 620 This equipment has been tested and found to comply with the limits for a Class B digital device, pursuant to Part 15 of the FCC Rules. These limits are designed to provide reasonable protection against harmful interference in a residential installation. This equipment generates uses and can radiate radio frequency energy and, if not installed and used in accordance with the instructions, may cause harmful interference to radio communications. However, there is no guarantee that interference will not occur in a particular installation. If this equipment does cause harmful interference to radio or television reception, which can be determined by turning the equipment off and on, the user is encouraged to try to correct the interference by one or more of the following measures: 621 621 ))) ... ... @@ -645,6 +645,7 @@ 645 645 ((( 646 646 The antenna(s) used for this transmitter must be installed to provide a separation distance of at least 20 cm from all persons and must not be co-located or operating in conjunction with any other antenna or transmitter. 647 647 648 - 649 649 650 650 ))) 506 + 507 +~)~)~)
- LoRa_send_trial.ino
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -3.4 KB - Content
-
... ... @@ -1,124 +1,0 @@ 1 -#include "LoRaWan_APP.h" 2 -#include "Arduino.h" 3 - 4 - 5 -#define RF_FREQUENCY 868100000 // Hz 6 - 7 -#define TX_OUTPUT_POWER 5 // dBm 8 - 9 -#define LORA_BANDWIDTH 0 // [0: 125 kHz, 10 - // 1: 250 kHz, 11 - // 2: 500 kHz, 12 - // 3: Reserved] 13 -#define LORA_SPREADING_FACTOR 12 // [SF7..SF12] 14 -#define LORA_CODINGRATE 1 // [1: 4/5, 15 - // 2: 4/6, 16 - // 3: 4/7, 17 - // 4: 4/8] 18 -#define LORA_PREAMBLE_LENGTH 8 // Same for Tx and Rx 19 -#define LORA_SYMBOL_TIMEOUT 0 // Symbols 20 -#define LORA_FIX_LENGTH_PAYLOAD_ON false 21 -#define LORA_IQ_INVERSION_ON false 22 - 23 - 24 -#define RX_TIMEOUT_VALUE 1000 25 -#define BUFFER_SIZE 30 // Define the payload size here 26 - 27 -float tem,hum; 28 -char tem_1[8]={"\0"},hum_1[8]={"\0"}; 29 -char *node_id = "<GW01>"; //From LG01 via web Local Channel settings on MQTT.Please refer <> dataformat in here. 30 - 31 -char txpacket[BUFFER_SIZE]; 32 -char rxpacket[BUFFER_SIZE]; 33 - 34 -double txNumber; 35 - 36 -bool lora_idle=true; 37 - 38 -static RadioEvents_t RadioEvents; 39 -void OnTxDone( void ); 40 -void OnTxTimeout( void ); 41 - 42 -void dhtTem() 43 -{ 44 - tem = random(15,40); 45 - hum = random(40,80); 46 - Serial.println(F("The temperature and humidity:")); 47 - Serial.print("["); 48 - Serial.print(tem); 49 - Serial.print("℃"); 50 - Serial.print(","); 51 - Serial.print(hum); 52 - Serial.print("%"); 53 - Serial.print("]"); 54 - Serial.println(""); 55 -} 56 - 57 -void dhtWrite() 58 -{ 59 - char data[50] = "\0"; 60 - for(int i = 0; i < 50; i++) 61 - { 62 - data[i] = node_id[i]; 63 - } 64 - 65 - dtostrf(tem,0,1,tem_1); 66 - dtostrf(hum,0,1,hum_1); 67 - 68 - strcat(data,"tem_a="); 69 - strcat(data,tem_1); 70 - strcat(data,"&hum_a="); 71 - strcat(data,hum_1); 72 - strcpy((char *)txpacket,data); 73 - 74 - Serial.println((char *)txpacket); 75 -} 76 - 77 -void setup() { 78 - Serial.begin(115200); 79 - Mcu.begin(); 80 - 81 - txNumber=0; 82 - 83 - RadioEvents.TxDone = OnTxDone; 84 - RadioEvents.TxTimeout = OnTxTimeout; 85 - 86 - Radio.Init( &RadioEvents ); 87 - Radio.SetChannel( RF_FREQUENCY ); 88 - Radio.SetTxConfig( MODEM_LORA, TX_OUTPUT_POWER, 0, LORA_BANDWIDTH, 89 - LORA_SPREADING_FACTOR, LORA_CODINGRATE, 90 - LORA_PREAMBLE_LENGTH, LORA_FIX_LENGTH_PAYLOAD_ON, 91 - true, 0, 0, LORA_IQ_INVERSION_ON, 3000 ); 92 - } 93 - 94 - 95 - 96 -void loop() 97 -{ 98 - if(lora_idle == true) 99 - { 100 - delay(5000); 101 - txNumber += 0.01; 102 - Serial.println(txNumber); 103 - 104 - dhtTem(); 105 - dhtWrite(); 106 - Radio.Send( (uint8_t *)txpacket, strlen(txpacket) ); //send the package out 107 - lora_idle = false; 108 - } 109 - Radio.IrqProcess( ); 110 -} 111 - 112 -void OnTxDone( void ) 113 -{ 114 - Serial.println("TX done......"); 115 - lora_idle = true; 116 -} 117 - 118 -void OnTxTimeout( void ) 119 -{ 120 - Radio.Sleep( ); 121 - Serial.println("TX Timeout......"); 122 - lora_idle = true; 123 -} 124 -
- Log-Temperature-Sensor-and-send-data-to-Node-red.ino
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -3.6 KB - Content
-
... ... @@ -1,150 +1,0 @@ 1 -#include <SoftwareSerial.h> 2 -#include <Adafruit_Sensor.h> 3 -#include <DHT.h> 4 -#include <DHT_U.h> 5 -/* 6 - 7 -*/ 8 -#define DHTPIN 8 // Digital pin connected to the DHT sensor 9 -#define DHTTYPE DHT11 // DHT 11 10 -DHT_Unified dht(DHTPIN, DHTTYPE); 11 - 12 -String inputString = ""; // a String to hold incoming data 13 -bool stringComplete = false; // whether the string is complete 14 - 15 -long old_time=millis(); 16 -long new_time; 17 - 18 -long uplink_interval=30000; //ms 19 - 20 -float DHT11_temp; 21 -float DHT11_hum; 22 - 23 -SoftwareSerial ss(10, 11); // Arduino RX, TX , 24 - 25 -char rxbuff[128]; 26 -uint8_t rxbuff_index=0; 27 - 28 -void setup() { 29 - // initialize serial 30 - Serial.begin(9600); 31 - 32 - ss.begin(9600); 33 - ss.listen(); 34 - 35 - // reserve 200 bytes for the inputString: 36 - inputString.reserve(200); 37 - 38 - dht.begin(); 39 - sensor_t sensor; 40 - dht.temperature().getSensor(&sensor); 41 - dht.humidity().getSensor(&sensor); 42 - 43 - ss.println("ATZ");//reset LA66 44 -} 45 - 46 -void loop() { 47 - 48 - while ( ss.available()) { 49 - // get the new byte: 50 - char inChar = (char) ss.read(); 51 - // add it to the inputString: 52 - inputString += inChar; 53 - 54 - rxbuff[rxbuff_index++]=inChar; 55 - 56 - if(rxbuff_index>128) 57 - { 58 - rxbuff[rxbuff_index]='\0'; 59 - rxbuff_index=0; 60 - break; 61 - } 62 - 63 - // if the incoming character is a newline, set a flag so the main loop can 64 - // do something about it: 65 - if (inChar == '\n' || inChar == '\r') { 66 - stringComplete = true; 67 - rxbuff[rxbuff_index]='\0'; 68 - rxbuff_index=0; 69 - } 70 - } 71 - 72 - while ( Serial.available()) { 73 - // get the new byte: 74 - char inChar = (char) Serial.read(); 75 - // add it to the inputString: 76 - inputString += inChar; 77 - // if the incoming character is a newline, set a flag so the main loop can 78 - // do something about it: 79 - if (inChar == '\n' || inChar == '\r') { 80 - ss.print(inputString); 81 - inputString = "\0"; 82 - } 83 - } 84 - 85 - // print the string when a newline arrives: 86 - if (stringComplete) { 87 - Serial.print(inputString); 88 - 89 - // clear the string: 90 - inputString = "\0"; 91 - stringComplete = false; 92 - } 93 - 94 - new_time = millis(); 95 - 96 - if(new_time-old_time>=uplink_interval){ 97 - old_time = new_time; 98 - 99 - Serial.print(F("\r\n")); 100 - // Get temperature event and print its value. 101 - sensors_event_t event; 102 - dht.temperature().getEvent(&event); 103 - if (isnan(event.temperature)) { 104 - Serial.println(F("Error reading temperature!")); 105 - DHT11_temp=327.67; 106 - } 107 - else { 108 - DHT11_temp=event.temperature; 109 - 110 - if(DHT11_temp>60){ 111 - DHT11_temp=60; 112 - } 113 - else if(DHT11_temp<-20){ 114 - DHT11_temp=-20; 115 - } 116 - } 117 - // Get humidity event and print its value. 118 - dht.humidity().getEvent(&event); 119 - if (isnan(event.relative_humidity)) { 120 - DHT11_hum=327.67; 121 - Serial.println(F("Error reading humidity!")); 122 - } 123 - else { 124 - DHT11_hum=event.relative_humidity; 125 - 126 - if(DHT11_hum>100){ 127 - DHT11_hum=100; 128 - } 129 - else if(DHT11_hum<0){ 130 - DHT11_hum=0; 131 - } 132 - } 133 - 134 - Serial.print(F("Temperature: ")); 135 - Serial.print(DHT11_temp); 136 - Serial.println(F("°C")); 137 - Serial.print(F("Humidity: ")); 138 - Serial.print(DHT11_hum); 139 - Serial.println(F("%")); 140 - Serial.print(F("\r\n")); 141 - 142 - char sensor_data_buff[128]="\0"; 143 - 144 - //confirm status,Fport,payload length,payload(HEX) 145 - snprintf(sensor_data_buff,128,"AT+SEND=0,%02X%02X%02X%02X,0,0",(short)(DHT11_temp*100)>>8 & 0xFF,(short)(DHT11_temp*100) & 0xFF,(short)(DHT11_hum*10)>>8 & 0xFF,(short)(DHT11_hum*10) & 0xFF); 146 - ss.print(sensor_data_buff); 147 - ss.print('\r'); 148 - } 149 -} 150 -
- Log-Temperature-Sensor-and-send-data-to-node-red.json
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -10.1 KB - Content
-
... ... @@ -1,443 +1,0 @@ 1 -[ 2 - { 3 - "id": "5f10779accc05655", 4 - "type": "tab", 5 - "label": "serial USB", 6 - "disabled": false, 7 - "info": "", 8 - "env": [] 9 - }, 10 - { 11 - "id": "4ea60ce4df40717c", 12 - "type": "serial in", 13 - "z": "5f10779accc05655", 14 - "name": "", 15 - "serial": "bb1c0e81fd51fa9e", 16 - "x": 210, 17 - "y": 60, 18 - "wires": [ 19 - [ 20 - "40eac96a52733f7a", 21 - "79722a224bb22c96" 22 - ] 23 - ] 24 - }, 25 - { 26 - "id": "fe5a93a52b6adcf1", 27 - "type": "inject", 28 - "z": "5f10779accc05655", 29 - "name": "AT+SEND=1,hello world,0,3", 30 - "props": [ 31 - { 32 - "p": "payload" 33 - } 34 - ], 35 - "repeat": "", 36 - "crontab": "", 37 - "once": false, 38 - "onceDelay": 0.1, 39 - "topic": "", 40 - "payload": "AT+SEND=1,hello world,0,3", 41 - "payloadType": "str", 42 - "x": 220, 43 - "y": 260, 44 - "wires": [ 45 - [ 46 - "3f8add7e2e1d1d17" 47 - ] 48 - ] 49 - }, 50 - { 51 - "id": "3f8add7e2e1d1d17", 52 - "type": "serial out", 53 - "z": "5f10779accc05655", 54 - "name": "", 55 - "serial": "bb1c0e81fd51fa9e", 56 - "x": 540, 57 - "y": 260, 58 - "wires": [] 59 - }, 60 - { 61 - "id": "16e7d3d83d9e9415", 62 - "type": "inject", 63 - "z": "5f10779accc05655", 64 - "name": "", 65 - "props": [ 66 - { 67 - "p": "payload" 68 - } 69 - ], 70 - "repeat": "", 71 - "crontab": "", 72 - "once": false, 73 - "onceDelay": 0.1, 74 - "topic": "", 75 - "payload": "ATZ", 76 - "payloadType": "str", 77 - "x": 290, 78 - "y": 320, 79 - "wires": [ 80 - [ 81 - "3f8add7e2e1d1d17" 82 - ] 83 - ] 84 - }, 85 - { 86 - "id": "09ea381519629dae", 87 - "type": "inject", 88 - "z": "5f10779accc05655", 89 - "name": "AT+FRE", 90 - "props": [ 91 - { 92 - "p": "payload" 93 - } 94 - ], 95 - "repeat": "", 96 - "crontab": "", 97 - "once": false, 98 - "onceDelay": 0.1, 99 - "topic": "", 100 - "payload": "AT+FRE=868.100,868.100", 101 - "payloadType": "str", 102 - "x": 280, 103 - "y": 380, 104 - "wires": [ 105 - [ 106 - "3f8add7e2e1d1d17" 107 - ] 108 - ] 109 - }, 110 - { 111 - "id": "5167a7f904013ffd", 112 - "type": "inject", 113 - "z": "5f10779accc05655", 114 - "name": "AT+BW", 115 - "props": [ 116 - { 117 - "p": "payload" 118 - } 119 - ], 120 - "repeat": "", 121 - "crontab": "", 122 - "once": false, 123 - "onceDelay": 0.1, 124 - "topic": "", 125 - "payload": "AT+BW=0,0", 126 - "payloadType": "str", 127 - "x": 290, 128 - "y": 440, 129 - "wires": [ 130 - [ 131 - "3f8add7e2e1d1d17" 132 - ] 133 - ] 134 - }, 135 - { 136 - "id": "dbe4abbc730c76e6", 137 - "type": "inject", 138 - "z": "5f10779accc05655", 139 - "name": "AT+SF", 140 - "props": [ 141 - { 142 - "p": "payload" 143 - } 144 - ], 145 - "repeat": "", 146 - "crontab": "", 147 - "once": false, 148 - "onceDelay": 0.1, 149 - "topic": "", 150 - "payload": "AT+SF=12,12", 151 - "payloadType": "str", 152 - "x": 290, 153 - "y": 500, 154 - "wires": [ 155 - [ 156 - "3f8add7e2e1d1d17" 157 - ] 158 - ] 159 - }, 160 - { 161 - "id": "3be3ab296a75d512", 162 - "type": "inject", 163 - "z": "5f10779accc05655", 164 - "name": "AT+RXMOD", 165 - "props": [ 166 - { 167 - "p": "payload" 168 - } 169 - ], 170 - "repeat": "", 171 - "crontab": "", 172 - "once": false, 173 - "onceDelay": 0.1, 174 - "topic": "", 175 - "payload": "AT+RXMOD=65535,2", 176 - "payloadType": "str", 177 - "x": 270, 178 - "y": 560, 179 - "wires": [ 180 - [ 181 - "3f8add7e2e1d1d17" 182 - ] 183 - ] 184 - }, 185 - { 186 - "id": "7a03d1413c60ea1c", 187 - "type": "inject", 188 - "z": "5f10779accc05655", 189 - "name": "AT+SYNCWORD", 190 - "props": [ 191 - { 192 - "p": "payload" 193 - } 194 - ], 195 - "repeat": "", 196 - "crontab": "", 197 - "once": false, 198 - "onceDelay": 0.1, 199 - "topic": "", 200 - "payload": "AT+SYNCWORD=0", 201 - "payloadType": "str", 202 - "x": 260, 203 - "y": 620, 204 - "wires": [ 205 - [ 206 - "3f8add7e2e1d1d17" 207 - ] 208 - ] 209 - }, 210 - { 211 - "id": "40eac96a52733f7a", 212 - "type": "function", 213 - "z": "5f10779accc05655", 214 - "name": "function 1", 215 - "func": "var data = msg.payload\nif (data.substring(0, 4) == \"Data\")\n{\n if (data.substring(6, 12) == \"(HEX:)\")\n {\n var temp = data.substring(13, 15) + data.substring(16, 18)\n var hum = data.substring(19, 21) + data.substring(22, 24)\n var temp1 = parseInt(temp, 16)/100\n var hum1 = parseInt(hum, 16)/10\n var a1 = { payload: temp1 }, a2 = { payload: hum1 }\n }\n}\nif (data.substring(0, 4) == \"Rssi\")\n{\n var rssi = data.substring(6)\n var a3 = { payload: rssi }\n}\nreturn [a1,a2,a3];\n \n\n", 216 - "outputs": 3, 217 - "noerr": 0, 218 - "initialize": "", 219 - "finalize": "", 220 - "libs": [], 221 - "x": 420, 222 - "y": 60, 223 - "wires": [ 224 - [ 225 - "81edb003937f1a92" 226 - ], 227 - [ 228 - "c63593404a60d9dc" 229 - ], 230 - [ 231 - "61ca71032888887b" 232 - ] 233 - ] 234 - }, 235 - { 236 - "id": "61ca71032888887b", 237 - "type": "ui_chart", 238 - "z": "5f10779accc05655", 239 - "name": "", 240 - "group": "ef41b39771110fa5", 241 - "order": 1, 242 - "width": 0, 243 - "height": 0, 244 - "label": "RSSI", 245 - "chartType": "line", 246 - "legend": "false", 247 - "xformat": "dd HH:mm", 248 - "interpolate": "linear", 249 - "nodata": "", 250 - "dot": true, 251 - "ymin": "", 252 - "ymax": "", 253 - "removeOlder": 1, 254 - "removeOlderPoints": "", 255 - "removeOlderUnit": "3600", 256 - "cutout": 0, 257 - "useOneColor": false, 258 - "useUTC": false, 259 - "colors": [ 260 - "#1f77b4", 261 - "#aec7e8", 262 - "#ff7f0e", 263 - "#2ca02c", 264 - "#98df8a", 265 - "#d62728", 266 - "#ff9896", 267 - "#9467bd", 268 - "#c5b0d5" 269 - ], 270 - "outputs": 1, 271 - "useDifferentColor": false, 272 - "className": "", 273 - "x": 670, 274 - "y": 180, 275 - "wires": [ 276 - [] 277 - ] 278 - }, 279 - { 280 - "id": "81edb003937f1a92", 281 - "type": "ui_chart", 282 - "z": "5f10779accc05655", 283 - "name": "", 284 - "group": "7e1d1c102cf74e6b", 285 - "order": 1, 286 - "width": 0, 287 - "height": 0, 288 - "label": "Temperature", 289 - "chartType": "line", 290 - "legend": "false", 291 - "xformat": "HH:mm:ss", 292 - "interpolate": "linear", 293 - "nodata": "", 294 - "dot": true, 295 - "ymin": "", 296 - "ymax": "", 297 - "removeOlder": 1, 298 - "removeOlderPoints": "", 299 - "removeOlderUnit": "3600", 300 - "cutout": 0, 301 - "useOneColor": false, 302 - "useUTC": false, 303 - "colors": [ 304 - "#1f77b4", 305 - "#aec7e8", 306 - "#ff7f0e", 307 - "#2ca02c", 308 - "#98df8a", 309 - "#d62728", 310 - "#ff9896", 311 - "#9467bd", 312 - "#c5b0d5" 313 - ], 314 - "outputs": 1, 315 - "useDifferentColor": false, 316 - "className": "", 317 - "x": 690, 318 - "y": 100, 319 - "wires": [ 320 - [] 321 - ] 322 - }, 323 - { 324 - "id": "c63593404a60d9dc", 325 - "type": "ui_chart", 326 - "z": "5f10779accc05655", 327 - "name": "", 328 - "group": "3f5d139f158d7c1c", 329 - "order": 2, 330 - "width": 0, 331 - "height": 0, 332 - "label": "Humidity", 333 - "chartType": "line", 334 - "legend": "false", 335 - "xformat": "HH:mm:ss", 336 - "interpolate": "linear", 337 - "nodata": "", 338 - "dot": true, 339 - "ymin": "", 340 - "ymax": "", 341 - "removeOlder": 1, 342 - "removeOlderPoints": "", 343 - "removeOlderUnit": "3600", 344 - "cutout": 0, 345 - "useOneColor": false, 346 - "useUTC": false, 347 - "colors": [ 348 - "#1f77b4", 349 - "#aec7e8", 350 - "#ff7f0e", 351 - "#2ca02c", 352 - "#98df8a", 353 - "#d62728", 354 - "#ff9896", 355 - "#9467bd", 356 - "#c5b0d5" 357 - ], 358 - "outputs": 1, 359 - "useDifferentColor": false, 360 - "className": "", 361 - "x": 680, 362 - "y": 140, 363 - "wires": [ 364 - [] 365 - ] 366 - }, 367 - { 368 - "id": "79722a224bb22c96", 369 - "type": "debug", 370 - "z": "5f10779accc05655", 371 - "name": "debug 1", 372 - "active": true, 373 - "tosidebar": true, 374 - "console": false, 375 - "tostatus": false, 376 - "complete": "false", 377 - "statusVal": "", 378 - "statusType": "auto", 379 - "x": 420, 380 - "y": 180, 381 - "wires": [] 382 - }, 383 - { 384 - "id": "bb1c0e81fd51fa9e", 385 - "type": "serial-port", 386 - "serialport": "/dev/ttyUSB0", 387 - "serialbaud": "9600", 388 - "databits": "8", 389 - "parity": "none", 390 - "stopbits": "1", 391 - "waitfor": "", 392 - "dtr": "none", 393 - "rts": "none", 394 - "cts": "none", 395 - "dsr": "none", 396 - "newline": "\\n", 397 - "bin": "false", 398 - "out": "char", 399 - "addchar": "\\r\\n", 400 - "responsetimeout": "10000" 401 - }, 402 - { 403 - "id": "ef41b39771110fa5", 404 - "type": "ui_group", 405 - "name": "rssi", 406 - "tab": "abb98f80600a5448", 407 - "order": 3, 408 - "disp": true, 409 - "width": "6", 410 - "collapse": false, 411 - "className": "" 412 - }, 413 - { 414 - "id": "7e1d1c102cf74e6b", 415 - "type": "ui_group", 416 - "name": "TEM", 417 - "tab": "abb98f80600a5448", 418 - "order": 4, 419 - "disp": true, 420 - "width": "6", 421 - "collapse": false, 422 - "className": "" 423 - }, 424 - { 425 - "id": "3f5d139f158d7c1c", 426 - "type": "ui_group", 427 - "name": "HUM", 428 - "tab": "abb98f80600a5448", 429 - "order": 2, 430 - "disp": true, 431 - "width": "6", 432 - "collapse": false, 433 - "className": "" 434 - }, 435 - { 436 - "id": "abb98f80600a5448", 437 - "type": "ui_tab", 438 - "name": "LG01v2", 439 - "icon": "LG01v2", 440 - "disabled": false, 441 - "hidden": false 442 - } 443 -]
- image-20221108170731-5.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -2.5 MB - Content
- image-20221108172149-6.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -17.5 KB - Content
- image-20221108172432-7.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -45.9 KB - Content
- image-20221108174840-8.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -52.1 KB - Content
- image-20221108175113-9.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -72.6 KB - Content
- image-20221108180334-10.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -159.3 KB - Content
- image-20221108180458-11.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -52.4 KB - Content
- image-20221112161031-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -35.1 KB - Content
- image-20221112161111-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -34.8 KB - Content
- image-20221112162733-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -78.7 KB - Content
- image-20221112163119-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -32.6 KB - Content