Changes for page LG01v2 -- LoRa Gateway User Manual
Last modified by Kilight Cao on 2024/10/12 08:58
From version 102.2
edited by Xiaoling
on 2022/11/24 10:39
on 2022/11/24 10:39
Change comment:
There is no comment for this version
To version 17.2
edited by Kilight Cao
on 2022/10/31 09:05
on 2022/10/31 09:05
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 51 removed)
- 1667456058832-484.png
- LoRa_Shield_Sketch_For_MQTT.ino
- LoRa_send_trial.ino
- Log-Temperature-Sensor-and-send-data-to-Node-red.ino
- Log-Temperature-Sensor-and-send-data-to-node-red.json
- arduino-LoRa-master.zip
- image-20221031091550-1.png
- image-20221031091652-2.png
- image-20221031091807-3.png
- image-20221031092053-4.png
- image-20221101160705-1.png
- image-20221101161318-2.png
- image-20221101161951-3.png
- image-20221101162527-4.png
- image-20221102105419-1.png
- image-20221102110604-2.png
- image-20221102114002-3.png
- image-20221102140053-4.png
- image-20221103140645-1.png
- image-20221103142228-2.png
- image-20221103142416-3.png
- image-20221103143528-4.png
- image-20221103143618-5.png
- image-20221103144405-6.png
- image-20221103152033-7.png
- image-20221103152238-8.png
- image-20221104100344-1.png
- image-20221104100520-2.png
- image-20221104102736-3.png
- image-20221104155612-1.png
- image-20221104155654-2.png
- image-20221104155724-3.png
- image-20221104155907-4.png
- image-20221104155928-5.png
- image-20221104155949-6.png
- image-20221108164337-1.png
- image-20221108164413-2.png
- image-20221108170314-3.png
- image-20221108170621-4.jpeg
- 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
- serial USB.json
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Xiaoling1 +XWiki.Kilight - Content
-
... ... @@ -11,26 +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 LG01-V2** == 22 22 17 +== **1.1 What is LG01v2** == 23 23 19 + 24 24 ((( 25 25 ((( 26 -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.22 +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 27 ))) 28 28 29 29 ((( 30 -LG01 -V2 supports (% style="color:green" %)**remote management**(%%). System Integrator can easy to remote monitor the gateway and maintain it.26 +LG01v2 supports (% style="color:green" %)**remote management**(%%). System Integrator can easy to remote monitor the gateway and maintain it. 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,16 +107,18 @@ 107 107 //**LED status: ** ETH LED will SOLID BULE Until the restore is finished.// 108 108 109 109 110 -= **2. Quick Start** = 111 111 105 += ** 2. Quick Start** = 112 112 113 -The LG01-V2 supports network access via Ethernet or Wi-Fi connection and runs without a network. 114 114 115 - Inmostcases,the firstthing you needtodo ismakeheLG01-v2accessibletohenetwork.108 +The LPS8-V2 supports network access via Ethernet or Wi-Fi connection and runs without a network. 116 116 110 +In most cases, the first thing you need to do is make the lps8-v2 accessible to the network. 117 117 112 + 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 ... ... @@ -123,118 +123,54 @@ 123 123 === (% style="color:blue" %)**Method 1**(%%): Connect via Ethernet with DHCP IP from the router === 124 124 125 125 126 -Connect the L G01-V2 Ethernet port to your router and LG01-V2can obtain an IP address from your router. In the router's management portal, you should be able to find what IP address the router has assigned to the LG01-V2.122 +Connect the LPS8-V2 Ethernet port to your router and LPS8 can obtain an IP address from your router. In the router's management portal, you should be able to find what IP address the router has assigned to the LPS8-V2. 127 127 128 128 You can also use this IP to connect. 129 129 126 +[[image:image-20220622100129-1.png||height="332" width="1263"]] 130 130 131 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220622100129-1.png?width=1263&height=332&rev=1.1||alt="image-20220622100129-1.png"]] 128 +(% class="wikigeneratedid" %) 129 +=== === 132 132 131 +=== **Method 2**: Connect via WiFi with DHCP IP from the router === 133 133 134 - === (% style="color:blue" %)**Method2**(%%): Connectvia WiFiwithDHCP IP from the router===133 +[[image:image-20220622100542-2.png||height="369" width="1256"]] 135 135 135 +The LPS8-V2 has a fall-back IP address on its WAN port. you have to access the gateway Web-UI to configure the WiFi connection via the fallback IP address. 136 136 137 - [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220622100542-2.png?width=1256&height=369&rev=1.1||alt="image-20220622100542-2.png"]]137 +**Steps to connect via fallback IP:** 138 138 139 +~1. Connect PC's Ethernet port to LPS8-V2's WAN port 139 139 140 - Fillin theWiFi informationby checkingtheboxandclicking (% style="color:red"%)**Save&Apply**141 +2. Configure PC's Ethernet port has IP: 172.31.255.253 and Netmask: 255.255.255.252 141 141 143 +[[image:image-20220622101433-4.png]] 142 142 143 - [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220622102702-6.png?rev=1.1||alt="image-20220622102702-6.png"]]145 +and then On the PC, use the IP address **http:~/~/172.31.255.254** to access the LPS8-V2 via Web or Console. 144 144 147 +[[image:image-20220622102210-5.png||height="504" width="919"]] 145 145 146 - **Wi-Ficonfigurationsuccessful**149 +Fill in the WiFi information by checking the box and clicking **Save&Apply** 147 147 151 +[[image:image-20220622102702-6.png]] 148 148 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"]]153 +**Wi-Fi configuration successful** 150 150 155 +[[image:image-20220622102847-7.png]] 151 151 152 - = **3. Web ConfigurePages**=157 +[[image:image-20220622102901-8.png||height="476" width="938"]] 153 153 154 -== **3.1 Home** == 155 155 156 156 157 -//Shows the system running status~:// 158 158 159 - [[image:image-20221104155612-1.png||height="497"width="942"]]162 += **3. How to configure the LA66 module** = 160 160 161 161 162 -== **3. 2 NetworkSettings** ==165 +== **3.1 Access the LA66 module** == 163 163 164 -=== **3.2.1 Network ~-~-> WiFi** === 165 165 168 +Users can access the LA66 module by running the following command, then select the option **''serial port setup"**: 166 166 167 -[[image:image-20221104155654-2.png||height="319" width="813"]] 168 - 169 - 170 -=== **3.4.2 Network ~-~-> System Status** === 171 - 172 - 173 -[[image:image-20221104155724-3.png||height="679" width="861"]] 174 - 175 - 176 -=== **3.4.3 Network ~-~-> Firewall** === 177 - 178 - 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 - 181 - 182 -== **3.5 System** == 183 - 184 -=== **3.5.1 System ~-~-> System Overview** === 185 - 186 - 187 -Shows the system info: 188 - 189 -[[image:image-20221104155907-4.png]] 190 - 191 - 192 -=== **3.5.2 System ~-~-> Backup/Restore** === 193 - 194 - 195 -[[image:image-20221104155928-5.png||height="334" width="880"]] 196 - 197 - 198 -= (% id="cke_bm_1978S" style="display:none" %)** **(%%)**4. Build in Server** = 199 - 200 - 201 -The default factory version of LG01-V2 is installed with the built-in Applicant server: (% style="color:blue" %)**Node-Red** 202 - 203 - 204 -[[image:image-20221104155949-6.png||height="315" width="1023"]] 205 - 206 - 207 -(% style="color:red" %)**Note:** 208 - 209 - **Path**: System ~-~-> Built-in Server 210 - 211 - 212 -(% style="color:blue" %)**Troubleshooting:** 213 - 214 -**~ 1. URL does not jump properly** 215 - 216 - For the Node-Red, you can use the local IP address and the port is 1880 to access it. 217 - 218 - 219 -== **4.1 Application Server ~-~- Node-Red** == 220 - 221 - 222 -You can access the gateway's built-in AS server of (% style="color:blue" %)**Node-Red **(%%)via the URL((% style="background-color:yellow" %)__**//http:~/~/<hostname>:1880 or http:~/~/<local-IPV4-address>//**__(%%)) in your browser. 223 - 224 - 225 -Such as (% style="background-color:yellow" %)__**//http:~/~/dragino-54ff12:1880 or http:~/~/<Local-IPV4-Address>//**__ 226 - 227 - 228 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220725172124-3.png?width=843&height=610&rev=1.1||alt="image-20220725172124-3.png"]] 229 - 230 - 231 -= **5. How to configure the Lora Gateway** = 232 - 233 -== **5.1 Configure and Debug LoRa wireless of LG01v2** == 234 - 235 - 236 -Users can access the Lora configuration page by running the following command, then select the option **''serial port setup"**: 237 - 238 238 (% class="box infomessage" %) 239 239 ((( 240 240 **root@dragino-2406ef:~~# minicom -s** ... ... @@ -253,314 +253,44 @@ 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 - 188 +(% 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 262 262 Enter **AT+CFG **in the interface to get the configuration, 263 263 194 +[[image:image-20221029172156-1.png||height="315" width="358"]] 264 264 265 -(% class="box infomessage" %) 266 -((( 267 -**AT+FRE=868.100,868.100 ~-~--> TX and RX frequency 268 -AT+GROUPMOD=0,0 ~-~--> TX and RX group 269 -AT+BW=0,0 ~-~--> TX and RX Bandwidth 270 -AT+SF=12,12 ~-~--> TX and RX Spreading Factor 271 -AT+POWER=14 ~-~--> TX Power Range 272 -AT+CRC=1,1 ~-~--> TX and RX CRC Type 273 -AT+HEADER=0,0 ~-~--> TX and RX Header Type 274 -AT+CR=1,1 ~-~--> TX and RX Coding Rate 275 -AT+IQ=0,0 ~-~--> TX and RX InvertIQ 276 -AT+PREAMBLE=8,8 ~-~--> TX and RX Preamble Length 277 -AT+SYNCWORD=0 ~-~--> Syncword(0: private,1: public) 278 -AT+RXMOD=65535,0 ~-~--> Rx Timeout and Reply mode 279 -AT+RXDAFORM=1** 280 -))) 281 281 197 +LG01v2 Peer to Peer example: 282 282 283 - ==**5.2 Example: LG01v2**==199 +(% style="color:red" %)**LG01v2 as Receiver: (configured as AT+RXMOD=65535,2)** 284 284 285 -=== **5.2.1 Introduce for the example:** === 286 286 287 - 288 -[[image:image-20221104102736-3.png||height="282" width="723"]] 289 - 290 - 291 -In this example, there are two devices: 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. 295 - 296 - 297 - 298 -=== **5.2.2 Set Up LA66 Shield + UNO** === 299 - 300 - 301 -==== **Set up LA66 Module** ==== 302 - 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 - 306 -((( 307 -(% style="color:red" %)**LA66 Shield as Sender: ** 308 - 309 -(% class="box infomessage" %) 310 -((( 311 -**LA66 Shield configuration:** 312 - 313 -AT+FRE=868.100,868.100 ~-~--> TX and RX frequency set: 868100000 314 -AT+BW=0,0 ~-~--> TX and RX Bandwidth set: 125kHz 315 -AT+SF=12,12 ~-~--> TX and RX Spreading Factor set: SF12 316 -AT+POWER=14 ~-~--> TX Power Range set: 14dBm 317 -AT+CRC=1,1 ~-~--> TX and RX CRC Type 318 -AT+HEADER=0,0 ~-~--> TX and RX Header Type 319 -AT+CR=1,1 ~-~--> TX and RX Coding Rate 320 -AT+IQ=0,0 ~-~--> TX and RX InvertIQ 321 -AT+PREAMBLE=8,8 ~-~--> TX and RX Preamble Length set: 8 322 -AT+SYNCWORD=0 ~-~--> Syncword**(0: private,1: public)** 323 -AT+RXMOD=6,0 ~-~--> Rx Timeout and Reply mode 202 + 324 324 ))) 325 -))) 326 326 205 += **7. Trouble Shooting** = 327 327 328 328 329 -== ==**SetupArduinoUNO** ====208 +== 7.1 I can't log in to the built-in Server TTN Stack which shows '**Login failed**'. == 330 330 331 -(% id="cke_bm_1033249S" style="display:none" %)** ** 332 332 333 -**Hardware Connection** 334 334 335 -(% class="box infomessage" %) 336 -((( 337 -**The DHT11 sensor connects to the LA66 Shield:** 338 338 339 -**VCC <~-~--> 3.3V (Red line)** 340 -**DATA <~-~--> PIN8 (Purple line)** 341 -**GND <~-~--> GND (White line)** 342 -))) 213 +This is caused by the inconsistency between the built-in TTN-Stack domain configuration and your login URL. 343 343 344 - [[image:image-20221108170731-5.png||height="588"width="441"]]215 +By default, ttn-stack uses the gateway's domain name for URL resolution, but in some networks, they prefer to resolve IP-v4 addresses. 345 345 346 346 218 +So you can change the domain name of the TTN-Stack configuration to the IPv4 address. 347 347 348 - =====**1.OpenArduinoIDE**=====220 +**Click the update URL button to configure the URL with the current eth port address.** 349 349 350 350 351 -[[image:image-20221108172149-6.png||height="650" width="542"]] 352 352 353 353 354 354 355 -===== **2. Open project** ===== 356 - 357 - 358 -Users can download Arduino files from this link: [[attach:Log-Temperature-Sensor-and-send-data-to-Node-red.ino||target="_blank"]] 359 - 360 -Then click Compile and Upload to LA66 Shield, 361 - 362 -[[image:image-20221108172432-7.png]] 363 - 364 - 365 - 366 -===== **3. Open the Serial Monitor to check the LA66 Shield data** ===== 367 - 368 - 369 -The UNO will now reads the temperature and humidity data from the sensor and broadcast it via LoRa wireless, 370 - 371 -[[image:image-20221108174840-8.png||height="731" width="671"]] 372 - 373 - 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 -(% style="color:blue" %)**USB TTL to LG01-V2 Connection:** 443 - 444 - 445 -Port 1 of the UART on the LG01-V2 is GND 446 - 447 -(% class="box infomessage" %) 448 -((( 449 -**TXD <~-~--> UART RXD (Gray line)** 450 - 451 -**RXD <~-~--> UART TXD (White line)** 452 - 453 -**GND <~-~--> GND (Black line)** 454 -))) 455 - 456 - 457 -**LG01-V2 UART connection photo** 458 - 459 -[[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"]] 460 - 461 - 462 - 463 -In the PC, you can use the serial port tool(such as [[putty>>url:http://www.chiark.greenend.org.uk/~~sgtatham/putty/download.html]] in Windows), you need to set the serial baud rate to (% style="color:blue" %)**115200**(%%) to access the serial console for LG01v2. LG01v2 will output system info once power on as below: 464 - 465 - 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 - 468 - 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 - 471 - 472 -= **7. FAQ** = 473 - 474 -== **7.1 How does LG01-V2 communicate with Lora shield (LoRa.h)** == 475 - 476 - 477 -This example describes how to use LG01-V2, LoRa Shield to set up a LoRa network, 478 - 479 -[[image:image-20221103152238-8.png||height="251" width="654"]] 480 - 481 - 482 -(% style="color:red" %)**Prerequisites: The configurations of LG01-V2 and Lora shield must match** 483 - 484 -**LG01-V2 configuration:** 485 - 486 -(% class="box infomessage" %) 487 -((( 488 -AT+FRE=868.100,868.100 ~-~--> TX and RX frequency set: 868100000 489 -AT+BW=0,0 ~-~--> TX and RX Bandwidth set: 125kHz 490 -AT+SF=12,12 ~-~--> TX and RX Spreading Factor set: SF12 491 -AT+POWER=14 ~-~--> TX Power Range 492 -AT+CRC=1,1 ~-~--> TX and RX CRC Type 493 -AT+HEADER=0,0 ~-~--> TX and RX Header Type 494 -AT+CR=1,1 ~-~--> TX and RX Coding Rate 495 -AT+IQ=0,0 ~-~--> TX and RX InvertIQ 496 -AT+PREAMBLE=8,8 ~-~--> TX and RX Preamble Length set: 8 497 -AT+SYNCWORD=0 ~-~--> Syncword**(0: private,1: public), **the corresponding Lora shield syncword is 0x12 498 -AT+RXMOD=65535,0 ~-~--> Rx Timeout and Reply mode,RX window always open 499 -AT+RXDAFORM=1 500 -))) 501 - 502 - 503 - 504 -**Lora shield configuration:** 505 - 506 -Lora Shield example: [[attach:LoRa_Shield_Sketch_For_MQTT.ino||target="_blank"]] , [[attach:arduino-LoRa-master.zip||target="_blank"]] 507 - 508 -[[image:image-20221101161318-2.png]] 509 - 510 - 511 - 512 -**Test LG01-V2 to receive Lora Shield data:** 513 - 514 -[[image:image-20221101161951-3.png]] 515 - 516 - 517 - 518 -**Test the LG01-V2 to send data:** 519 - 520 -[[image:image-20221101162527-4.png]] 521 - 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 237 + 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 271 + 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 282 + 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 ))) 317 + 318 +~)~)~)
- 1667456058832-484.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -21.0 KB - Content
- LoRa_Shield_Sketch_For_MQTT.ino
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -2.9 KB - Content
-
... ... @@ -1,118 +1,0 @@ 1 -#include <SPI.h> 2 -#include <LoRa.h> 3 - 4 -// This is the LoRa Node side sketch for the MQTT example: http://wiki.dragino.com/index.php?title=MQTT_Forward_Instruction#Example_to_communicate_to_a_simple_MQTT_server 5 - 6 -float tem,hum; 7 -char tem_1[8]={"\0"},hum_1[8]={"\0"}; 8 -char *node_id = "<4567>"; //From LG01 via web Local Channel settings on MQTT.Please refer <> dataformat in here. 9 -uint8_t datasend[36]; 10 -unsigned int count = 1; 11 -unsigned long new_time,old_time=0; 12 - 13 -void setup() 14 -{ 15 - Serial.begin(9600); 16 - while (!Serial); 17 - Serial.println(F("Start MQTT Example")); 18 - if (!LoRa.begin(868100000)) //868000000 is frequency 19 - { 20 - Serial.println("Starting LoRa failed!"); 21 - while (1); 22 - } 23 - // Setup Spreading Factor (6 ~ 12) 24 - LoRa.setSpreadingFactor(12); 25 - 26 - // Setup BandWidth, option: 7800,10400,15600,20800,31250,41700,62500,125000,250000,500000 27 - //Lower BandWidth for longer distance. 28 - LoRa.setSignalBandwidth(125000); 29 - 30 - // Setup Coding Rate:5(4/5),6(4/6),7(4/7),8(4/8) 31 - LoRa.setCodingRate4(5); 32 - LoRa.setSyncWord(0x12); 33 - void disableCrc(); 34 - LoRa.disableInvertIQ(); 35 - LoRa.explicitHeaderMode(); 36 - Serial.println("LoRa init succeeded."); 37 - LoRa.onReceive(onReceive); 38 - LoRa.receive(); 39 -} 40 - 41 -void dhtTem() 42 -{ 43 - tem = random(15,40); 44 - hum = random(40,80); 45 - Serial.println(F("The temperature and humidity:")); 46 - Serial.print("["); 47 - Serial.print(tem); 48 - Serial.print("℃"); 49 - Serial.print(","); 50 - Serial.print(hum); 51 - Serial.print("%"); 52 - Serial.print("]"); 53 - Serial.println(""); 54 -} 55 -void dhtWrite() 56 -{ 57 - char data[50] = "\0"; 58 - //for(int i = 0; i < 50; i++) 59 - //{ 60 - // data[i] = node_id[i]; 61 - //} 62 - 63 - dtostrf(tem,0,1,tem_1); 64 - dtostrf(hum,0,1,hum_1); 65 - 66 - // Serial.println(tem_1); 67 - strcat(data,"tem="); 68 - strcat(data,tem_1); 69 - strcat(data,"&hum="); 70 - strcat(data,hum_1); 71 - strcpy((char *)datasend,data); 72 - 73 - //Serial.println((char *)datasend); 74 - //Serial.println(sizeof datasend); 75 - 76 -} 77 - 78 - 79 -void SendData() 80 -{ 81 - LoRa.beginPacket(); 82 - LoRa.print((char *)datasend); 83 - LoRa.endPacket(); 84 - Serial.println("Packet Sent"); 85 -} 86 - 87 - 88 - 89 -void loop() 90 -{ 91 - new_time=millis(); 92 - if (new_time - old_time >= 30000 || old_time == 0) 93 - { 94 - old_time = new_time; 95 - Serial.print("########### "); 96 - Serial.print("COUNT="); 97 - Serial.print(count); 98 - Serial.println(" ###########"); 99 - count++; 100 - dhtTem(); 101 - dhtWrite(); 102 - SendData(); 103 - LoRa.receive(); 104 - } 105 -} 106 - 107 -void onReceive(int packetSize) { 108 - 109 - // received a packet 110 - Serial.print("Received packet : "); 111 - 112 - // read packet 113 - for (int i = 0; i < packetSize; i++) { 114 - Serial.print((char)LoRa.read()); 115 - } 116 - Serial.print("\n\r"); 117 -} 118 -
- 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 -]
- arduino-LoRa-master.zip
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -28.6 KB - Content
- image-20221031091550-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -20.1 KB - Content
- image-20221031091652-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -21.1 KB - Content
- image-20221031091807-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -12.6 KB - Content
- image-20221031092053-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -8.6 KB - Content
- image-20221101160705-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -6.1 KB - Content
- image-20221101161318-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -46.3 KB - Content
- image-20221101161951-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -131.0 KB - Content
- image-20221101162527-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -290.1 KB - Content
- image-20221102105419-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -37.3 KB - Content
- image-20221102110604-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -35.9 KB - Content
- image-20221102114002-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -50.1 KB - Content
- image-20221102140053-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -45.6 KB - Content
- image-20221103140645-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -39.1 KB - Content
- image-20221103142228-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -37.7 KB - Content
- image-20221103142416-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -325.9 KB - Content
- image-20221103143528-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -25.2 KB - Content
- image-20221103143618-5.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -25.1 KB - Content
- image-20221103144405-6.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -32.8 KB - Content
- image-20221103152033-7.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -25.3 KB - Content
- image-20221103152238-8.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -32.8 KB - Content
- image-20221104100344-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -137.0 KB - Content
- image-20221104100520-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -140.7 KB - Content
- image-20221104102736-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -325.9 KB - Content
- image-20221104155612-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -384.2 KB - Content
- image-20221104155654-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -35.5 KB - Content
- image-20221104155724-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -42.4 KB - Content
- image-20221104155907-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -66.7 KB - Content
- image-20221104155928-5.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -49.5 KB - Content
- image-20221104155949-6.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -46.0 KB - Content
- image-20221108164337-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -17.5 KB - Content
- image-20221108164413-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -27.1 KB - Content
- image-20221108170314-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -34.6 KB - Content
- image-20221108170621-4.jpeg
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -544.6 KB - Content
- 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
- serial USB.json
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -5.1 KB - Content
-
... ... @@ -1,244 +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": 230, 17 - "y": 60, 18 - "wires": [ 19 - [ 20 - "a8a0db18429e7d84" 21 - ] 22 - ] 23 - }, 24 - { 25 - "id": "a8a0db18429e7d84", 26 - "type": "debug", 27 - "z": "5f10779accc05655", 28 - "name": "debug 1", 29 - "active": true, 30 - "tosidebar": true, 31 - "console": false, 32 - "tostatus": false, 33 - "complete": "false", 34 - "statusVal": "", 35 - "statusType": "auto", 36 - "x": 440, 37 - "y": 60, 38 - "wires": [] 39 - }, 40 - { 41 - "id": "fe5a93a52b6adcf1", 42 - "type": "inject", 43 - "z": "5f10779accc05655", 44 - "name": "AT+SEND=1,hello world,0,3", 45 - "props": [ 46 - { 47 - "p": "payload" 48 - } 49 - ], 50 - "repeat": "", 51 - "crontab": "", 52 - "once": false, 53 - "onceDelay": 0.1, 54 - "topic": "", 55 - "payload": "AT+SEND=1,hello world,0,3", 56 - "payloadType": "str", 57 - "x": 200, 58 - "y": 140, 59 - "wires": [ 60 - [ 61 - "3f8add7e2e1d1d17" 62 - ] 63 - ] 64 - }, 65 - { 66 - "id": "3f8add7e2e1d1d17", 67 - "type": "serial out", 68 - "z": "5f10779accc05655", 69 - "name": "", 70 - "serial": "bb1c0e81fd51fa9e", 71 - "x": 530, 72 - "y": 140, 73 - "wires": [] 74 - }, 75 - { 76 - "id": "16e7d3d83d9e9415", 77 - "type": "inject", 78 - "z": "5f10779accc05655", 79 - "name": "", 80 - "props": [ 81 - { 82 - "p": "payload" 83 - } 84 - ], 85 - "repeat": "", 86 - "crontab": "", 87 - "once": false, 88 - "onceDelay": 0.1, 89 - "topic": "", 90 - "payload": "ATZ", 91 - "payloadType": "str", 92 - "x": 270, 93 - "y": 200, 94 - "wires": [ 95 - [ 96 - "3f8add7e2e1d1d17" 97 - ] 98 - ] 99 - }, 100 - { 101 - "id": "09ea381519629dae", 102 - "type": "inject", 103 - "z": "5f10779accc05655", 104 - "name": "AT+FRE", 105 - "props": [ 106 - { 107 - "p": "payload" 108 - } 109 - ], 110 - "repeat": "", 111 - "crontab": "", 112 - "once": false, 113 - "onceDelay": 0.1, 114 - "topic": "", 115 - "payload": "AT+FRE=868.100,868.100", 116 - "payloadType": "str", 117 - "x": 260, 118 - "y": 260, 119 - "wires": [ 120 - [ 121 - "3f8add7e2e1d1d17" 122 - ] 123 - ] 124 - }, 125 - { 126 - "id": "5167a7f904013ffd", 127 - "type": "inject", 128 - "z": "5f10779accc05655", 129 - "name": "AT+BW", 130 - "props": [ 131 - { 132 - "p": "payload" 133 - } 134 - ], 135 - "repeat": "", 136 - "crontab": "", 137 - "once": false, 138 - "onceDelay": 0.1, 139 - "topic": "", 140 - "payload": "AT+BW=0,0", 141 - "payloadType": "str", 142 - "x": 270, 143 - "y": 320, 144 - "wires": [ 145 - [ 146 - "3f8add7e2e1d1d17" 147 - ] 148 - ] 149 - }, 150 - { 151 - "id": "dbe4abbc730c76e6", 152 - "type": "inject", 153 - "z": "5f10779accc05655", 154 - "name": "AT+SF", 155 - "props": [ 156 - { 157 - "p": "payload" 158 - } 159 - ], 160 - "repeat": "", 161 - "crontab": "", 162 - "once": false, 163 - "onceDelay": 0.1, 164 - "topic": "", 165 - "payload": "AT+SF=12,12", 166 - "payloadType": "str", 167 - "x": 270, 168 - "y": 380, 169 - "wires": [ 170 - [ 171 - "3f8add7e2e1d1d17" 172 - ] 173 - ] 174 - }, 175 - { 176 - "id": "3be3ab296a75d512", 177 - "type": "inject", 178 - "z": "5f10779accc05655", 179 - "name": "AT+RXMOD", 180 - "props": [ 181 - { 182 - "p": "payload" 183 - } 184 - ], 185 - "repeat": "", 186 - "crontab": "", 187 - "once": false, 188 - "onceDelay": 0.1, 189 - "topic": "", 190 - "payload": "AT+RXMOD=65535,0", 191 - "payloadType": "str", 192 - "x": 250, 193 - "y": 440, 194 - "wires": [ 195 - [ 196 - "3f8add7e2e1d1d17" 197 - ] 198 - ] 199 - }, 200 - { 201 - "id": "7a03d1413c60ea1c", 202 - "type": "inject", 203 - "z": "5f10779accc05655", 204 - "name": "AT+SYNCWORD", 205 - "props": [ 206 - { 207 - "p": "payload" 208 - } 209 - ], 210 - "repeat": "", 211 - "crontab": "", 212 - "once": false, 213 - "onceDelay": 0.1, 214 - "topic": "", 215 - "payload": "AT+SYNCWORD=0", 216 - "payloadType": "str", 217 - "x": 240, 218 - "y": 500, 219 - "wires": [ 220 - [ 221 - "3f8add7e2e1d1d17" 222 - ] 223 - ] 224 - }, 225 - { 226 - "id": "bb1c0e81fd51fa9e", 227 - "type": "serial-port", 228 - "serialport": "/dev/ttyUSB0", 229 - "serialbaud": "9600", 230 - "databits": "8", 231 - "parity": "none", 232 - "stopbits": "1", 233 - "waitfor": "", 234 - "dtr": "none", 235 - "rts": "none", 236 - "cts": "none", 237 - "dsr": "none", 238 - "newline": "\\n", 239 - "bin": "false", 240 - "out": "char", 241 - "addchar": "\\n", 242 - "responsetimeout": "10000" 243 - } 244 -]