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-20221108174840-8.png", version {1}
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 24 added, 0 removed)
- Log-Temperature-Sensor-and-send-data-to-Node-red.ino
- 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
- serial USB.json
Details
- Page properties
-
- Content
-
... ... @@ -14,16 +14,16 @@ 14 14 = **1. Introduction** = 15 15 16 16 17 -== **1.1 What is LG01 v2** ==17 +== **1.1 What is LG01-V2** == 18 18 19 19 20 20 ((( 21 21 ((( 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.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. 23 23 ))) 24 24 25 25 ((( 26 -LG01 v2 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. 27 27 ))) 28 28 29 29 ... ... @@ -88,7 +88,7 @@ 88 88 == **1.6 Button Intruction** == 89 89 90 90 91 -LG01 v2 has a black toggle button, which is:91 +LG01-V2 has a black toggle button, which is: 92 92 93 93 94 94 (% style="color:blue" %)**//➢ //Long press 4-5s : **(%%)the gateway will reload the Network and Initialize wifi configuration ... ... @@ -119,7 +119,7 @@ 119 119 === (% style="color:blue" %)**Method 1**(%%): Connect via Ethernet with DHCP IP from the router === 120 120 121 121 122 -Connect the LG01 v2 Ethernet port to your router and LG01v2 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 LG01v2.122 +Connect the LG01-V2 Ethernet port to your router and LG01-V2 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 LG01-V2. 123 123 124 124 You can also use this IP to connect. 125 125 ... ... @@ -132,25 +132,7 @@ 132 132 133 133 [[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"]] 134 134 135 -The LG01v2 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 - 138 -(% style="color:#037691" %)**Steps to connect via fallback IP:** 139 - 140 -~1. Connect PC's Ethernet port to LG01-V2's WAN port 141 - 142 -2. Configure PC's Ethernet port has IP: 172.31.255.253 and Netmask: 255.255.255.252 143 - 144 - 145 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220622101433-4.png?rev=1.1||alt="image-20220622101433-4.png"]] 146 - 147 - 148 -and then On the PC, use the IP address **http:~/~/172.31.255.254** to access the LG01-V2 via Web or Console. 149 - 150 - 151 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220622102210-5.png?width=919&height=504&rev=1.1||alt="image-20220622102210-5.png"]] 152 - 153 - 154 154 Fill in the WiFi information by checking the box and clicking (% style="color:red" %)**Save&Apply** 155 155 156 156 ... ... @@ -162,7 +162,6 @@ 162 162 163 163 [[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"]] 164 164 165 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220622102901-8.png?width=938&height=476&rev=1.1||alt="image-20220622102901-8.png"]] 166 166 167 167 168 168 = **3. Web Configure Pages** = ... ... @@ -171,7 +171,7 @@ 171 171 172 172 //Shows the system running status~:// 173 173 174 -[[image: http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220622102901-8.png?rev=1.1||alt="image-20220622102901-8.png"height="476" width="939"]]155 +[[image:image-20221104155612-1.png||height="497" width="942"]] 175 175 176 176 177 177 == **3.2 Network Settings** == ... ... @@ -180,7 +180,7 @@ 180 180 === **3.2.1 Network ~-~-> WiFi** === 181 181 182 182 183 -[[image: http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220616114756-4.png?width=669&height=251&rev=1.1||alt="image-20220616114756-4.png"]]164 +[[image:image-20221104155654-2.png||height="319" width="813"]] 184 184 185 185 186 186 ... ... @@ -187,7 +187,7 @@ 187 187 === **3.4.2 Network ~-~-> System Status** === 188 188 189 189 190 -[[image: http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220820134112-2.png?width=668&height=539&rev=1.1||alt="image-20220820134112-2.png"]]171 +[[image:image-20221104155724-3.png||height="679" width="861"]] 191 191 192 192 193 193 ... ... @@ -206,7 +206,7 @@ 206 206 207 207 Shows the system info: 208 208 209 -[[image: http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220917144512-5.png?width=853&height=618&rev=1.1||alt="image-20220917144512-5.png"]]190 +[[image:image-20221104155907-4.png]] 210 210 211 211 212 212 ... ... @@ -213,18 +213,52 @@ 213 213 === **3.5.2 System ~-~-> Backup/Restore** === 214 214 215 215 216 -[[image: http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220917144725-6.png?width=869&height=208&rev=1.1||alt="image-20220917144725-6.png"]]197 +[[image:image-20221104155928-5.png||height="334" width="880"]] 217 217 218 218 200 += (% id="cke_bm_1978S" style="display:none" %)** **(%%)**4. Build in Server** = 219 219 220 -= **4. How to configure the Lora Gateway** = 221 221 203 +The default factory version of LG01-V2 is installed with the built-in Applicant server: (% style="color:blue" %)**Node-Red** 222 222 223 -== **4.1 Access the Lora configuration page** == 224 224 206 +[[image:image-20221104155949-6.png||height="315" width="1023"]] 225 225 226 -Users can access the LA66 module by running the following command, then select the option **''serial port setup"**: 227 227 209 +(% style="color:red" %)**Note:** 210 + 211 + **Path**: System ~-~-> Built-in Server 212 + 213 + 214 +**Troubleshooting:** 215 + 216 + 217 +**~ 1. URL does not jump properly** 218 + 219 + For the Node-Red, you can use the local IP address and the port is 1880 to access it. 220 + 221 + 222 + 223 +== **4.1 Application Server ~-~- Node-Red** == 224 + 225 + 226 +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. 227 + 228 + 229 +Such as (% style="background-color:yellow" %)__**//http:~/~/dragino-54ff12:1880 or http:~/~/<Local-IPV4-Address>//**__ 230 + 231 + 232 +[[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"]] 233 + 234 + 235 += **5. How to configure the Lora Gateway** = 236 + 237 + 238 +== **5.1 Access the Lora configuration page** == 239 + 240 + 241 +Users can access the Lora configuration page by running the following command, then select the option **''serial port setup"**: 242 + 228 228 (% class="box infomessage" %) 229 229 ((( 230 230 **root@dragino-2406ef:~~# minicom -s** ... ... @@ -268,73 +268,117 @@ 268 268 ))) 269 269 270 270 271 -== ** 4.2 Example: LG01v2 Peer-to-Peer** ==286 +== **5.2 Example: LG01**-**V2 Peer-to-Peer** == 272 272 273 273 274 -[[image:image-2022110 3140645-1.png]]289 +[[image:image-20221104102736-3.png||height="282" width="723"]] 275 275 276 -The user can run the AT command to set the LG01v2 RX window always open as a Receiver, the Sender uses **AT+SEND=1,hello world,2,3** to simulate sending data, 277 277 278 - **Prerequisites:**The configuration ofLG01v2andSender mustmatch,userscanuse**AT+CFG**tocheckallconfigurations.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: 279 279 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. 280 280 281 -(% style="color:red" %)**LG01v2 as Receiver: (configured as AT+RXMOD=65535,2)** 282 282 283 - [[image:image-20221102140053-4.png]]297 +=== **Log Temperature Sensor(DHT11) and send data to LG01v2, show it in Node-RED.** === 284 284 285 285 286 -(% style="color:red" %)** Sender:SEND=1,hello world,2,3)**300 +(% style="color:red; font-weight:bold" %)**LG01-V**(% style="color:red" %)**2 as Receiver: (configured as AT+RXMOD=65535,2)** 287 287 288 -[[image:image-20221031092053-4.png]] 302 +(% class="box infomessage" %) 303 +((( 304 +**LG01-V2 configuration:** 289 289 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 +))) 290 290 291 -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/]] 319 + 320 +(% style="color:red" %)**LA66 Shield as Sender: ** 321 + 322 +(% class="box infomessage" %) 323 +((( 324 +**LA66 Shield configuration:** 325 + 326 +AT+FRE=868.100,868.100 ~-~--> TX and RX frequency set: 868100000 327 +AT+BW=0,0 ~-~--> TX and RX Bandwidth set: 125kHz 328 +AT+SF=12,12 ~-~--> TX and RX Spreading Factor set: SF12 329 +AT+POWER=14 ~-~--> TX Power Range set: 14dBm 330 +AT+CRC=1,1 ~-~--> TX and RX CRC Type 331 +AT+HEADER=0,0 ~-~--> TX and RX Header Type 332 +AT+CR=1,1 ~-~--> TX and RX Coding Rate 333 +AT+IQ=0,0 ~-~--> TX and RX InvertIQ 334 +AT+PREAMBLE=8,8 ~-~--> TX and RX Preamble Length set: 8 335 +AT+SYNCWORD=0 ~-~--> Syncword**(0: private,1: public)** 336 +AT+RXMOD=6,0 ~-~--> Rx Timeout and Reply mode 292 292 ))) 338 +))) 293 293 294 294 295 - =**5.Build inServer**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).** 296 296 343 +When LG01-V2 replies with ACK when it receives a packet sent by LA66 sheild. 297 297 298 - The default factory version of LG01-V2is installed withthe built-in Applicant server: (% style="color:blue" %)**Node-Red**345 +[[image:image-20221108164413-2.png]]shield 299 299 300 300 301 - [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220820115644-1.png?width=778&height=217&rev=1.1||alt="image-20220820115644-1.png"]]348 +In the real-time log of LG01-V2: 302 302 350 +[[image:image-20221108170314-3.png]] 303 303 304 -(% style="color:red" %)**Note:** 305 305 306 - Path**: System~-~-> Built-inServer353 +**Hardware Connection** 307 307 355 +(% class="box infomessage" %) 356 +((( 357 +**The DHT11 sensor connects to the LA66 Shield:** 308 308 309 -**Troubleshooting:** 359 +**VCC <~-~--> 3.3V (Red line)** 360 +**DATA <~-~--> PIN8 (Purple line)** 361 +**GND <~-~--> GND (White line)** 362 +))) 310 310 364 +[[image:image-20221108170731-5.png||height="588" width="441"]] 311 311 312 -**~ 1. URL does not jump properly** 313 313 314 - For theNode-Red, you canuse the local IP address andthe portis 1880 toaccess it.367 +**1. open Arduino IDE** 315 315 369 +[[image:image-20221108172149-6.png||height="650" width="542"]] 316 316 317 317 318 - ==**5.1ApplicationServer ~-~- Node-Red**==372 +**2. Open project** 319 319 374 +Users can download Arduino files from this link: [[attach:Log-Temperature-Sensor-and-send-data-to-Node-red.ino||target="_blank"]] 320 320 321 - You can access thegateway's built-inAS server of (% style="color:blue"%)**Node-Red **(%%)via the URL((% style="background-color:yellow"%)__**//http:~/~/<hostname>:1880 or http:~/~/<local-IPV4-address>//**__(%%))in yourbrowser.376 +Then click Compile and Upload to LA66 Shield, 322 322 378 +[[image:image-20221108172432-7.png]] 323 323 324 -Such as (% style="background-color:yellow" %)__**//http:~/~/dragino-54ff12:1880 or http:~/~/<Local-IPV4-Address>//**__ 325 325 381 +3. 326 326 327 - [[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"]]383 +The LA66 Shield reads the temperature and humidity data from the sensor and sends it to LG01V2, 328 328 385 +Users can import this example in node-red: 329 329 330 -= (% style="color:inherit; font-family:inherit; font-size:29px" %)**6. How users can access LG01v2 using serial USB**(%%) = 331 331 332 332 333 -(% style="color: blue" %)**USBTTL to LG01v2Connection:**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(%%)** = 334 334 335 335 336 - Port1 ofthe UART ontheLG01v2 is GND392 +(% style="color:blue" %)**USB TTL to LG01-V2 Connection:** 337 337 394 + 395 +Port 1 of the UART on the LG01-V2 is GND 396 + 338 338 (% class="box infomessage" %) 339 339 ((( 340 340 **TXD <~-~--> UART RXD (Gray line)** ... ... @@ -345,7 +345,7 @@ 345 345 ))) 346 346 347 347 348 -**LG01 v2 UART connection photo**407 +**LG01-V2 UART connection photo** 349 349 350 350 [[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"]] 351 351 ... ... @@ -362,26 +362,31 @@ 362 362 = **7. FAQ** = 363 363 364 364 365 -== **7.1 How does LG01 v2 communicate with Lora shield (LoRa.h)** ==424 +== **7.1 How does LG01-V2 communicate with Lora shield (LoRa.h)** == 366 366 367 367 368 - (%style="color:red"%)**Prerequisites:The configurationsofLG01v2andLorashieldmustmatch**427 +This example describes how to use LG01-V2, LoRa Shield to set up a LoRa network 369 369 370 - **LG01v2configuration:**429 +[[image:image-20221103152238-8.png||height="251" width="654"]] 371 371 431 + 432 +(% style="color:red" %)**Prerequisites: The configurations of LG01-V2 and Lora shield must match** 433 + 434 +**LG01-V2 configuration:** 435 + 372 372 (% class="box infomessage" %) 373 373 ((( 374 -AT+FRE=868.100,868.100 ~-~--> TX and RX frequency set 375 -AT+BW=0,0 ~-~--> TX and RX Bandwidth set 376 -AT+SF=12,12 ~-~--> TX and RX Spreading Factor 438 +AT+FRE=868.100,868.100 ~-~--> TX and RX frequency set: 868100000 439 +AT+BW=0,0 ~-~--> TX and RX Bandwidth set: 125kHz 440 +AT+SF=12,12 ~-~--> TX and RX Spreading Factor set: SF12 377 377 AT+POWER=14 ~-~--> TX Power Range 378 378 AT+CRC=1,1 ~-~--> TX and RX CRC Type 379 379 AT+HEADER=0,0 ~-~--> TX and RX Header Type 380 380 AT+CR=1,1 ~-~--> TX and RX Coding Rate 381 381 AT+IQ=0,0 ~-~--> TX and RX InvertIQ 382 -AT+PREAMBLE=8,8 ~-~--> TX and RX Preamble Length 383 -AT+SYNCWORD=0 ~-~--> Syncword**(0: private,1: public)** 384 -AT+RXMOD=65535,0 ~-~--> Rx Timeout and Reply mode 446 +AT+PREAMBLE=8,8 ~-~--> TX and RX Preamble Length set: 8 447 +AT+SYNCWORD=0 ~-~--> Syncword**(0: private,1: public), **the corresponding Lora shield syncword is 0x12 448 +AT+RXMOD=65535,0 ~-~--> Rx Timeout and Reply mode,RX window always open 385 385 AT+RXDAFORM=1 386 386 ))) 387 387 ... ... @@ -392,12 +392,12 @@ 392 392 [[image:image-20221101161318-2.png]] 393 393 394 394 395 -**Test LG01 v2 to receive Lora Shield data:**459 +**Test LG01-V2 to receive Lora Shield data:** 396 396 397 397 [[image:image-20221101161951-3.png]] 398 398 399 399 400 -**Test the LG01 v2 to send data:**464 +**Test the LG01-V2 to send data:** 401 401 402 402 [[image:image-20221101162527-4.png]] 403 403
- Log-Temperature-Sensor-and-send-data-to-Node-red.ino
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +3.6 KB - Content
-
... ... @@ -1,0 +1,150 @@ 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 +
- image-20221103143528-4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +25.2 KB - Content
- image-20221103143618-5.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +25.1 KB - Content
- image-20221103144405-6.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +32.8 KB - Content
- image-20221103152033-7.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +25.3 KB - Content
- image-20221103152238-8.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +32.8 KB - Content
- image-20221104100344-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +137.0 KB - Content
- image-20221104100520-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +140.7 KB - Content
- image-20221104102736-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +325.9 KB - Content
- image-20221104155612-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +384.2 KB - Content
- image-20221104155654-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +35.5 KB - Content
- image-20221104155724-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +42.4 KB - Content
- image-20221104155907-4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +66.7 KB - Content
- image-20221104155928-5.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +49.5 KB - Content
- image-20221104155949-6.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +46.0 KB - Content
- image-20221108164337-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +17.5 KB - Content
- image-20221108164413-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +27.1 KB - Content
- image-20221108170314-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +34.6 KB - Content
- image-20221108170621-4.jpeg
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +544.6 KB - Content
- image-20221108170731-5.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +2.5 MB - Content
- image-20221108172149-6.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +17.5 KB - Content
- image-20221108172432-7.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +45.9 KB - Content
- image-20221108174840-8.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +52.1 KB - Content
- serial USB.json
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +5.1 KB - Content
-
... ... @@ -1,0 +1,244 @@ 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 +]