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-20221108175113-9.png", version {1}
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 8 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Xiaoling1 +XWiki.Kilight - Content
-
... ... @@ -11,13 +11,9 @@ 11 11 12 12 {{toc/}} 13 13 14 - 15 - 16 - 17 - 18 - 19 19 = **1. Introduction** = 20 20 16 + 21 21 == **1.1 What is LG01-V2** == 22 22 23 23 ... ... @@ -31,6 +31,7 @@ 31 31 ))) 32 32 33 33 30 + 34 34 == **1.2 Specifications** == 35 35 36 36 ... ... @@ -51,8 +51,6 @@ 51 51 * Storage Temperature: -20 ~~ 65°C 52 52 * Power Input: 5V, 2A, DC 53 53 54 - 55 - 56 56 == **1.3 Features** == 57 57 58 58 ... ... @@ -64,8 +64,6 @@ 64 64 * Built-in (% style="color:#037691" %)//**The Things Network**//(%%) local LoRaWAN server 65 65 * Built-in (% style="color:#037691" %)//**Node-Red**// (%%)local Application server 66 66 67 - 68 - 69 69 == **1.4 Block Diagram** == 70 70 71 71 ... ... @@ -91,6 +91,7 @@ 91 91 (% style="color:blue" %)//**➢ WIFI LED**//(%%)//: This LED shows the WIFI interface connection status.// 92 92 93 93 87 + 94 94 == **1.6 Button Intruction** == 95 95 96 96 ... ... @@ -107,6 +107,7 @@ 107 107 //**LED status: ** ETH LED will SOLID BULE Until the restore is finished.// 108 108 109 109 104 + 110 110 = **2. Quick Start** = 111 111 112 112 ... ... @@ -117,6 +117,7 @@ 117 117 118 118 == **2.1 Connects to the network and accesses the gateway Web UI** == 119 119 115 + 120 120 == **2.1.1 connect the network.** == 121 121 122 122 ... ... @@ -149,11 +149,11 @@ 149 149 [[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"]] 150 150 151 151 148 + 152 152 = **3. Web Configure Pages** = 153 153 154 154 == **3.1 Home** == 155 155 156 - 157 157 //Shows the system running status~:// 158 158 159 159 [[image:image-20221104155612-1.png||height="497" width="942"]] ... ... @@ -161,6 +161,7 @@ 161 161 162 162 == **3.2 Network Settings** == 163 163 160 + 164 164 === **3.2.1 Network ~-~-> WiFi** === 165 165 166 166 ... ... @@ -167,6 +167,7 @@ 167 167 [[image:image-20221104155654-2.png||height="319" width="813"]] 168 168 169 169 167 + 170 170 === **3.4.2 Network ~-~-> System Status** === 171 171 172 172 ... ... @@ -173,6 +173,7 @@ 173 173 [[image:image-20221104155724-3.png||height="679" width="861"]] 174 174 175 175 174 + 176 176 === **3.4.3 Network ~-~-> Firewall** === 177 177 178 178 ... ... @@ -179,8 +179,10 @@ 179 179 [[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"]] 180 180 181 181 181 + 182 182 == **3.5 System** == 183 183 184 + 184 184 === **3.5.1 System ~-~-> System Overview** === 185 185 186 186 ... ... @@ -189,6 +189,7 @@ 189 189 [[image:image-20221104155907-4.png]] 190 190 191 191 193 + 192 192 === **3.5.2 System ~-~-> Backup/Restore** === 193 193 194 194 ... ... @@ -209,13 +209,15 @@ 209 209 **Path**: System ~-~-> Built-in Server 210 210 211 211 212 - (% style="color:blue" %)**Troubleshooting:**214 +**Troubleshooting:** 213 213 216 + 214 214 **~ 1. URL does not jump properly** 215 215 216 216 For the Node-Red, you can use the local IP address and the port is 1880 to access it. 217 217 218 218 222 + 219 219 == **4.1 Application Server ~-~- Node-Red** == 220 220 221 221 ... ... @@ -230,9 +230,10 @@ 230 230 231 231 = **5. How to configure the Lora Gateway** = 232 232 233 -== **5.1 Configure and Debug LoRa wireless of LG01v2** == 234 234 238 +== **5.1 Access the Lora configuration page** == 235 235 240 + 236 236 Users can access the Lora configuration page by running the following command, then select the option **''serial port setup"**: 237 237 238 238 (% class="box infomessage" %) ... ... @@ -253,9 +253,7 @@ 253 253 ))) 254 254 255 255 256 -(% style="color:red" %)**Note: Enter the corresponding letter to change the configuration, like A,B,C** 257 - 258 - 261 +(% style="color:red" %)**Note: Enter the corresponding letter to change the configuration, like A,B,C**(%%) 259 259 (% style="color:red" %)[[image:image-20221029174703-3.png]] 260 260 261 261 ... ... @@ -264,46 +264,56 @@ 264 264 265 265 (% class="box infomessage" %) 266 266 ((( 267 - **AT+FRE=868.100,868.100 ~-~--> TX and RX frequency268 -AT+GROUPMOD=0,0 ~-~--> 269 -AT+BW=0,0 ~-~--> 270 -AT+SF=12,12 ~-~--> 271 -AT+POWER=14 ~-~--> 272 -AT+CRC=1,1 ~-~--> 273 -AT+HEADER=0,0 ~-~--> 274 -AT+CR=1,1 ~-~--> 275 -AT+IQ=0,0 ~-~--> 276 -AT+PREAMBLE=8,8 ~-~--> 277 -AT+SYNCWORD=0 ~-~--> Syncword(0: private,1: public) 278 -AT+RXMOD=65535,0 ~-~--> Rx Timeout and Reply mode 279 -AT+RXDAFORM=1 **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 275 +AT+CRC=1,1 ~-~--> TX and RX CRC Type 276 +AT+HEADER=0,0 ~-~--> TX and RX Header Type 277 +AT+CR=1,1 ~-~--> TX and RX Coding Rate 278 +AT+IQ=0,0 ~-~--> TX and RX InvertIQ 279 +AT+PREAMBLE=8,8 ~-~--> TX and RX Preamble Length 280 +AT+SYNCWORD=0 ~-~--> Syncword**(0: private,1: public)** 281 +AT+RXMOD=65535,0 ~-~--> Rx Timeout and Reply mode 282 +AT+RXDAFORM=1 280 280 ))) 281 281 282 282 283 -== **5.2 Example: LG01 v2** ==286 +== **5.2 Example: LG01**-**V2 Peer-to-Peer** == 284 284 285 -=== **5.2.1 Introduce for the example:** === 286 286 287 - 288 288 [[image:image-20221104102736-3.png||height="282" width="723"]] 289 289 290 290 291 - In this example,there are twodevices:292 +The user can run the AT command to set the LG01-V2 RX window always open as a Receiver, The LG01-V2 can display the received data in the built-in server Node-Red, Here are the specific steps: 292 292 293 -* **LA66 Shield + UNO + DHT11**: The UNO will get the temperature and humidity and broadcast the value via LoRa protocol. 294 -* **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 +(% style="color:red" %)**Prerequisites: **(%%)The configuration of LG01-V2 and LA66 Shield must match and the LA66 Shield firmware is **[[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/]]**, users can use **AT+CFG** to check all configurations. 295 295 296 296 297 +=== **Log Temperature Sensor(DHT11) and send data to LG01v2, show it in Node-RED.** === 297 297 298 -=== **5.2.2 Set Up LA66 Shield + UNO** === 299 299 300 +(% style="color:red; font-weight:bold" %)**LG01-V**(% style="color:red" %)**2 as Receiver: (configured as AT+RXMOD=65535,2)** 300 300 301 -==== **Set up LA66 Module** ==== 302 +(% class="box infomessage" %) 303 +((( 304 +**LG01-V2 configuration:** 302 302 306 +AT+FRE=868.100,868.100 ~-~--> TX and RX frequency set: 868100000 307 +AT+BW=0,0 ~-~--> TX and RX Bandwidth set: 125kHz 308 +AT+SF=12,12 ~-~--> TX and RX Spreading Factor set: SF12 309 +AT+POWER=14 ~-~--> TX Power Range set: 14dBm 310 +AT+CRC=1,1 ~-~--> TX and RX CRC Type 311 +AT+HEADER=0,0 ~-~--> TX and RX Header Type 312 +AT+CR=1,1 ~-~--> TX and RX Coding Rate 313 +AT+IQ=0,0 ~-~--> TX and RX InvertIQ 314 +AT+PREAMBLE=8,8 ~-~--> TX and RX Preamble Length set: 8 315 +AT+SYNCWORD=0 ~-~--> Syncword**(0: private,1: public)** 316 +AT+RXMOD=65535,0 ~-~--> Rx Timeout and Reply mode, RX window always open 317 +))) 303 303 304 -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: 305 305 306 -((( 307 307 (% style="color:red" %)**LA66 Shield as Sender: ** 308 308 309 309 (% class="box infomessage" %) ... ... @@ -325,11 +325,18 @@ 325 325 ))) 326 326 327 327 341 +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).** 328 328 329 - ==== **Setup ArduinoUNO**====343 +When LG01-V2 replies with ACK when it receives a packet sent by LA66 sheild. 330 330 331 - (%id="cke_bm_1033249S" style="display:none" %)** **345 +[[image:image-20221108164413-2.png]]shield 332 332 347 + 348 +In the real-time log of LG01-V2: 349 + 350 +[[image:image-20221108170314-3.png]] 351 + 352 + 333 333 **Hardware Connection** 334 334 335 335 (% class="box infomessage" %) ... ... @@ -344,101 +344,31 @@ 344 344 [[image:image-20221108170731-5.png||height="588" width="441"]] 345 345 346 346 367 +**1. open Arduino IDE** 347 347 348 -===== **1. Open Arduino IDE** ===== 349 - 350 - 351 351 [[image:image-20221108172149-6.png||height="650" width="542"]] 352 352 353 353 372 +**2. Open project** 354 354 355 -===== **2. Open project** ===== 356 - 357 - 358 358 Users can download Arduino files from this link: [[attach:Log-Temperature-Sensor-and-send-data-to-Node-red.ino||target="_blank"]] 359 359 360 -Then click Compile and Upload to LA66 Shield, 376 +Then click Compile and Upload to LA66 Shield, 361 361 362 362 [[image:image-20221108172432-7.png]] 363 363 364 364 381 +3. 365 365 366 - =====**3. OpentheSerialMonitortochecktheLA66Shielddata**=====383 +The LA66 Shield reads the temperature and humidity data from the sensor and sends it to LG01V2, 367 367 385 +Users can import this example in node-red: 368 368 369 -The UNO will now reads the temperature and humidity data from the sensor and broadcast it via LoRa wireless, 370 370 371 -[[image:image-20221108174840-8.png||height="731" width="671"]] 372 372 389 += (% 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(%%)** = 373 373 374 374 375 -Sending out data as below. 376 - 377 -[[image:image-20221108175113-9.png||height="556" width="998"]] 378 - 379 - 380 -=== **5.2.3 Set Up LG01v2** === 381 - 382 - 383 -Configure LG01v2 LoRa channel parameters so it can get data from LA66 Shield 384 - 385 -(% style="color:red; font-weight:bold" %)**LG01v**(% style="color:red" %)**2 as Receiver: (configured as AT+RXMOD=65535,2)** 386 - 387 -(% class="box infomessage" %) 388 -((( 389 -**LG01-V2 configuration:** 390 - 391 -AT+FRE=868.100,868.100 ~-~--> TX and RX frequency set: 868100000 392 -AT+BW=0,0 ~-~--> TX and RX Bandwidth set: 125kHz 393 -AT+SF=12,12 ~-~--> TX and RX Spreading Factor set: SF12 394 -AT+POWER=14 ~-~--> TX Power Range set: 14dBm 395 -AT+CRC=1,1 ~-~--> TX and RX CRC Type 396 -AT+HEADER=0,0 ~-~--> TX and RX Header Type 397 -AT+CR=1,1 ~-~--> TX and RX Coding Rate 398 -AT+IQ=0,0 ~-~--> TX and RX InvertIQ 399 -AT+PREAMBLE=8,8 ~-~--> TX and RX Preamble Length set: 8 400 -AT+SYNCWORD=0 ~-~--> Syncword**(0: private,1: public)** 401 -AT+RXMOD=65535,0 ~-~--> Rx Timeout and Reply mode, RX window always open 402 -))) 403 - 404 - 405 -=== **5.2.4 Test result** === 406 - 407 - 408 -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).** 409 -))) 410 - 411 -When LG01v2 replies with ACK when it receives a packet sent by LA66 sheild. 412 - 413 -[[image:image-20221108164413-2.png]] 414 - 415 - 416 - 417 -In the real-time log of LG01v2: 418 - 419 -[[image:image-20221108170314-3.png]] 420 - 421 - 422 -=== **5.2.5 Plot data chart in LG01v2** === 423 - 424 - 425 -User can plot the temperature and humidity chat via LG01v2 built-in IoT server. 426 - 427 -User can import this example in Node-Red: [[attach:Log-Temperature-Sensor-and-send-data-to-node-red.json||target="_blank"]] 428 - 429 -[[image:image-20221108180334-10.png||height="651" width="1141"]] 430 - 431 - 432 -The temperature and humidity chart is displayed in the built-in node-red UI 433 - 434 -**Browser input: (% style="background-color:yellow" %)__//http:~/~/<local-IPV4-address>//__(%%)** 435 - 436 -[[image:image-20221108180458-11.png||height="402" width="1137"]] 437 - 438 - 439 -= (% 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(%%)** = 440 - 441 - 442 442 (% style="color:blue" %)**USB TTL to LG01-V2 Connection:** 443 443 444 444 ... ... @@ -465,16 +465,16 @@ 465 465 466 466 [[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"]] 467 467 468 - 469 469 [[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"]] 470 470 471 471 472 472 = **7. FAQ** = 473 473 423 + 474 474 == **7.1 How does LG01-V2 communicate with Lora shield (LoRa.h)** == 475 475 476 476 477 -This example describes how to use LG01-V2, LoRa Shield to set up a LoRa network ,427 +This example describes how to use LG01-V2, LoRa Shield to set up a LoRa network 478 478 479 479 [[image:image-20221103152238-8.png||height="251" width="654"]] 480 480 ... ... @@ -499,8 +499,6 @@ 499 499 AT+RXDAFORM=1 500 500 ))) 501 501 502 - 503 - 504 504 **Lora shield configuration:** 505 505 506 506 Lora Shield example: [[attach:LoRa_Shield_Sketch_For_MQTT.ino||target="_blank"]] , [[attach:arduino-LoRa-master.zip||target="_blank"]] ... ... @@ -508,59 +508,16 @@ 508 508 [[image:image-20221101161318-2.png]] 509 509 510 510 511 - 512 512 **Test LG01-V2 to receive Lora Shield data:** 513 513 514 514 [[image:image-20221101161951-3.png]] 515 515 516 516 517 - 518 518 **Test the LG01-V2 to send data:** 519 519 520 520 [[image:image-20221101162527-4.png]] 521 521 522 522 523 -== **7.2 How does LG01-V2 communicate with Heltec LoRa Node** == 524 - 525 - 526 -This example describes how to use LG01-V2 and Heltec LoRa Node to set up a LoRa network, 527 - 528 -[[image:image-20221112161111-2.png||height="258" width="692"]] 529 - 530 -(% style="color:red" %)**Prerequisites: The configurations of LG01-V2 and Lora shield must match** 531 - 532 - 533 -**LG01-V2 configuration:** 534 - 535 -(% class="box infomessage" %) 536 -((( 537 -AT+FRE=868.100,868.100 ~-~--> TX and RX frequency set: 868100000 538 -AT+BW=0,0 ~-~--> TX and RX Bandwidth set: 125kHz 539 -AT+SF=12,12 ~-~--> TX and RX Spreading Factor set: SF12 540 -AT+POWER=14 ~-~--> TX Power Range 541 -AT+CRC=1,1 ~-~--> TX and RX CRC Type 542 -AT+HEADER=0,0 ~-~--> TX and RX Header Type 543 -AT+CR=1,1 ~-~--> TX and RX Coding Rate 544 -AT+IQ=0,0 ~-~--> TX and RX InvertIQ 545 -AT+PREAMBLE=8,8 ~-~--> TX and RX Preamble Length set: 8 546 -AT+SYNCWORD=0 ~-~--> Syncword**(0: private,1: public), **the corresponding Lora shield syncword is 0x12 547 -AT+RXMOD=65535,0 ~-~--> Rx Timeout and Reply mode,RX window always open 548 -AT+RXDAFORM=1 ~-~--> RX data format**(0: Hex ,1: String)** 549 -))) 550 - 551 - 552 -After we upload the sketch to Heltec LoRa Node, we can see below output from Arduino. 553 - 554 -Lora Shield example: [[attach:LoRa_send_trial.ino||target="_blank"]] 555 - 556 -[[image:image-20221112162733-3.png||height="524" width="927"]] 557 - 558 - 559 -And we can see the logread of gateway as below, means the packet arrive gateway: 560 - 561 -[[image:image-20221112163119-4.png||height="808" width="560"]] 562 - 563 - 564 564 = (% style="color:inherit; font-family:inherit; font-size:29px" %)**8. Supports**(%%) = 565 565 566 566 ... ... @@ -572,6 +572,7 @@ 572 572 **//With your question as detailed as possible. We will reply and help you in the shortest.//** 573 573 574 574 480 + 575 575 = **9. Reference** = 576 576 577 577 ... ... @@ -578,7 +578,6 @@ 578 578 * Install Tago Core: Refer **Install Tago Core in LPS8v2** in[[ Instruction>>doc:Main.Tago\.IO.WebHome]]. 579 579 * [[Advance OS Reference Guide for LPS8v2>>doc:Main.Armbian OS instruction.WebHome]]. 580 580 581 - 582 582 583 583 ))) 584 584 ... ... @@ -606,6 +606,7 @@ 606 606 More info about valid bands, please see [[EC25-E product page>>url:https://www.quectel.com/product/ec25.htm]]. 607 607 608 608 514 + 609 609 = **10. Manufacturer Info** = 610 610 611 611 ... ... @@ -616,6 +616,7 @@ 616 616 LongCheng Street, LongGang District ; Shenzhen 518116,China 617 617 618 618 525 + 619 619 = **11. FCC Warning** = 620 620 621 621 ... ... @@ -648,6 +648,7 @@ 648 648 ((( 649 649 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. 650 650 651 - 652 652 653 653 ))) 560 + 561 +~)~)~)
- 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.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-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