<
From version < 66.1 >
edited by Kilight Cao
on 2022/11/04 10:29
To version < 107.1 >
edited by Kilight Cao
on 2022/12/28 10:59
>
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -11,23 +11,30 @@
11 11  
12 12  {{toc/}}
13 13  
14 -= **1. Introduction** =
15 15  
16 16  
17 -== **1.1 What is LG01-V2** ==
18 18  
19 19  
18 +
19 += **1. Introduction** =
20 +
21 +== **1.1 What is LG01v2** ==
22 +
23 +
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.
26 +The LG01v2 is an (% style="color:green" %)**open-source single channel LoRa Gateway**(%%). It lets you bridge LoRa wireless network to an IP network via (% style="color:green" %)**WiFi , Ethernet or Cellular Network**(%%) (via Optional 4G module). The LoRa wireless allows users to send data and reach extremely long ranges at low data rates.
27 +
28 +LG01v2 is specially design for (% style="color:green" %)**peer to peer LoRa**(%%) protocol instead of LoRaWAN protocol. The LG01v2 use single channel LoRa module to minimize the deployment cost for a private p2p LoRa wireless network.
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.
32 +LG01v2 uses Open Source Linux system. User can modify the Linux part and develop customize software base on it. It has (% style="color:green" %)**1.2Ghz Quad-Core CPU**(%%) , (% style="color:green" %)**4GB eMMC storage**(%%) and (% style="color:green" %)**512MB RAM**(%%) for most application.
33 +
34 +LG01v2 supports (% style="color:green" %)**remote management**(%%). System Integrator can easy to remote monitor the gateway and maintain it.
27 27  )))
28 28  
29 29  
30 -
31 31  == **1.2 Specifications** ==
32 32  
33 33  
... ... @@ -56,7 +56,6 @@
56 56  * Remote Management
57 57  * Auto-provisioning for batch deployment and management
58 58  * LoRa Gateway
59 -* Built-in (% style="color:#037691" %)//**The Things Network**//(%%) local LoRaWAN server
60 60  * Built-in  (% style="color:#037691" %)//**Node-Red**// (%%)local Application server
61 61  
62 62  == **1.4 Block Diagram** ==
... ... @@ -84,7 +84,6 @@
84 84  (% style="color:blue" %)//**➢ WIFI LED**//(%%)//: This LED shows the WIFI interface connection status.//
85 85  
86 86  
87 -
88 88  == **1.6 Button Intruction** ==
89 89  
90 90  
... ... @@ -101,7 +101,6 @@
101 101   //**LED status: ** ETH LED will SOLID BULE Until the restore is finished.//
102 102  
103 103  
104 -
105 105  = **2. Quick Start** =
106 106  
107 107  
... ... @@ -112,7 +112,6 @@
112 112  
113 113  == **2.1 Connects to the network and accesses the gateway Web UI** ==
114 114  
115 -
116 116  == **2.1.1 connect the network.** ==
117 117  
118 118  
... ... @@ -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 LG01-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 -
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,35 +162,31 @@
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 -
168 168  = **3. Web Configure Pages** =
169 169  
170 170  == **3.1 Home** ==
171 171  
155 +
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"]]
158 +[[image:image-20221104155612-1.png||height="497" width="942"]]
175 175  
176 176  
177 177  == **3.2 Network Settings** ==
178 178  
179 -
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"]]
166 +[[image:image-20221104155654-2.png||height="319" width="813"]]
184 184  
185 185  
186 -
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"]]
172 +[[image:image-20221104155724-3.png||height="679" width="861"]]
191 191  
192 192  
193 -
194 194  === **3.4.3 Network ~-~-> Firewall** ===
195 195  
196 196  
... ... @@ -197,23 +197,20 @@
197 197  [[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"]]
198 198  
199 199  
200 -
201 201  == **3.5 System** ==
202 202  
203 -
204 204  === **3.5.1  System ~-~-> System Overview** ===
205 205  
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"]]
188 +[[image:image-20221104155907-4.png]]
210 210  
211 211  
212 -
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"]]
194 +[[image:image-20221104155928-5.png||height="334" width="880"]]
217 217  
218 218  
219 219  = (% id="cke_bm_1978S" style="display:none" %)** **(%%)**4. Build in Server** =
... ... @@ -222,7 +222,7 @@
222 222  The default factory version of LG01-V2 is installed with the built-in Applicant server: (% style="color:blue" %)**Node-Red**
223 223  
224 224  
225 -[[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"]]
203 +[[image:image-20221104155949-6.png||height="315" width="1023"]]
226 226  
227 227  
228 228  (% style="color:red" %)**Note:**
... ... @@ -230,15 +230,13 @@
230 230   **Path**: System ~-~-> Built-in Server
231 231  
232 232  
233 -**Troubleshooting:**
211 +(% style="color:blue" %)**Troubleshooting**
234 234  
235 -
236 236  **~ 1. URL does not jump properly**
237 237  
238 238   For the Node-Red, you can use the local IP address and the port is 1880 to access it.
239 239  
240 240  
241 -
242 242  == **4.1 Application Server ~-~- Node-Red** ==
243 243  
244 244  
... ... @@ -253,10 +253,9 @@
253 253  
254 254  = **5. How to configure the Lora Gateway** =
255 255  
232 +== **5.1 Configure and Debug LoRa wireless of LG01v2** ==
256 256  
257 -== **5.1 Access the Lora configuration page** ==
258 258  
259 -
260 260  Users can access the Lora configuration page by running the following command, then select the option **''serial port setup"**:
261 261  
262 262  (% class="box infomessage" %)
... ... @@ -277,7 +277,9 @@
277 277  )))
278 278  
279 279  
280 -(% style="color:red" %)**Note: Enter the corresponding letter to change the configuration, like A,B,C**(%%)
255 +(% style="color:red" %)**Note: Enter the corresponding letter to change the configuration, like A,B,C**
256 +
257 +
281 281  (% style="color:red" %)[[image:image-20221029174703-3.png]]
282 282  
283 283  
... ... @@ -286,60 +286,184 @@
286 286  
287 287  (% class="box infomessage" %)
288 288  (((
289 -AT+FRE=868.100,868.100  ~-~--> TX and RX frequency
290 -AT+GROUPMOD=0,0  ~-~--> TX and RX group
291 -AT+BW=0,0  ~-~--> TX and RX Bandwidth
292 -AT+SF=12,12  ~-~--> TX and RX Spreading Factor
293 -AT+POWER=14  ~-~--> TX Power Range
266 +**AT+FRE=868.100,868.100  ~-~--> TX and RX frequency
267 +AT+GROUPMOD=0,0  ~-~-->  TX and RX group
268 +AT+BW=0,0  ~-~-->  TX and RX Bandwidth
269 +AT+SF=12,12  ~-~-->  TX and RX Spreading Factor
270 +AT+POWER=14  ~-~-->  TX Power Range
271 +AT+CRC=1,1  ~-~-->  TX and RX CRC Type
272 +AT+HEADER=0,0  ~-~-->  TX and RX Header Type
273 +AT+CR=1,1  ~-~-->  TX and RX Coding Rate
274 +AT+IQ=0,0  ~-~-->  TX and RX InvertIQ
275 +AT+PREAMBLE=8,8  ~-~-->  TX and RX Preamble Length
276 +AT+SYNCWORD=0  ~-~-->  Syncword(0: private,1: public)
277 +AT+RXMOD=65535,0  ~-~-->  Rx Timeout and Reply mode
278 +AT+RXDAFORM=1**                              
279 +)))
280 +
281 +
282 +== **5.2 Example: LG01v2** ==
283 +
284 +=== **5.2.1 Introduce for the example:** ===
285 +
286 +
287 +[[image:image-20221104102736-3.png||height="282" width="723"]]
288 +
289 +
290 +In this example, there are two devices:
291 +
292 +* **LA66 Shield + UNO + DHT11**: The UNO will get the temperature and humidity and broadcast the value via LoRa protocol.
293 +* **LG01v2** : LG01v2 is set to listening the LoRa Channel which LA66 is broadcasting. When LG01v2 get the data from LA66, LG01v2 will plot the data in built-in IoT server.
294 +
295 +=== **5.2.2 Set Up LA66 Shield + UNO** ===
296 +
297 +
298 +==== **Set up LA66 Module** ====
299 +
300 +
301 +LA66 Module is loaded with the firmware **[[LA66 Peer-to-Peer firmware>>http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LA66%20LoRaWAN%20Shield%20User%20Manual/Instruction%20for%20LA66%20Peer%20to%20Peer%20firmware/]] **and user can use AT Command to set up LA66 with below parameters:
302 +
303 +(((
304 +(% style="color:red" %)**LA66 Shield as Sender: **
305 +
306 +(% class="box infomessage" %)
307 +(((
308 +**LA66 Shield configuration:**
309 +
310 +AT+FRE=868.100,868.100  ~-~--> TX and RX frequency set: 868100000
311 +AT+BW=0,0  ~-~--> TX and RX Bandwidth set: 125kHz
312 +AT+SF=12,12  ~-~--> TX and RX Spreading Factor set: SF12
313 +AT+POWER=14  ~-~--> TX Power Range set: 14dBm
294 294  AT+CRC=1,1  ~-~--> TX and RX CRC Type
295 295  AT+HEADER=0,0  ~-~--> TX and RX Header Type
296 296  AT+CR=1,1  ~-~--> TX and RX Coding Rate
297 297  AT+IQ=0,0  ~-~--> TX and RX InvertIQ
298 -AT+PREAMBLE=8,8  ~-~--> TX and RX Preamble Length
318 +AT+PREAMBLE=8,8  ~-~--> TX and RX Preamble Length set: 8
299 299  AT+SYNCWORD=0  ~-~-->  Syncword**(0: private,1: public)**
300 -AT+RXMOD=65535,0  ~-~-->  Rx Timeout and Reply mode
301 -AT+RXDAFORM=1                              
320 +AT+RXMOD=6,0  ~-~-->  Rx Timeout and Reply mode
302 302  )))
322 +)))
303 303  
304 304  
305 -== **5.2 Example: LG01**-**V2 Peer-to-Peer** ==
306 306  
326 +==== **Set up Arduino UNO** ====
307 307  
308 -[[image:image-20221104102736-3.png||height="282" width="723"]]
328 +(% id="cke_bm_1033249S" style="display:none" %)** **
309 309  
330 +**Hardware Connection**
310 310  
311 -The user can run the AT command to set the LG01-V2 RX window always open as a Receiver, the LA66 Shield uses **AT+SEND=1,hello world,2,3** to simulate sending data,
332 +(% class="box infomessage" %)
333 +(((
334 +**The DHT11 sensor connects to the LA66 Shield:**
312 312  
313 -**Prerequisites: **The configuration of LG01-V2 and  LA66 Shield must match, users can use **AT+CFG** to check all configurations.
336 +**VCC  <~-~--> 3.3V (Red line)**
337 +**DATA <~-~--> PIN8 (Purple line)**
338 +**GND  <~-~--> GND (White line)**
339 +)))
314 314  
341 +[[image:image-20221108170731-5.png||height="588" width="441"]]
315 315  
316 -(% style="color:red; font-weight:bold" %)**LG01-V**(% style="color:red" %)**2 as Receiver: (configured as AT+RXMOD=65535,2)**
317 317  
318 -[[image:image-20221102140053-4.png]]
319 319  
345 +===== **1. Open Arduino IDE** =====
320 320  
321 -(% style="color:red" %)**LA66 Shield as Sender: (AT+SEND=1,hello world,2,3)**
322 322  
323 -[[image:1667456058832-484.png||height="291" width="353"]]
348 +[[image:image-20221108172149-6.png||height="650" width="542"]]
324 324  
325 325  
326 -Instruction for Peer-to-Peer firmware:[[ **Instruction **>>url:http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LA66%20LoRaWAN%20Shield%20User%20Manual/Instruction%20for%20LA66%20Peer%20to%20Peer%20firmware/]]
351 +
352 +===== **2. Open project** =====
353 +
354 +
355 +Users can download Arduino files from this link: [[attach:Log-Temperature-Sensor-and-send-data-to-Node-red.ino||target="_blank"]]
356 +
357 +Then click Compile and Upload to LA66 Shield,
358 +
359 +[[image:image-20221108172432-7.png]]
360 +
361 +
362 +
363 +===== **3. Open the Serial Monitor to check the LA66 Shield data** =====
364 +
365 +
366 +The UNO will now reads the temperature and humidity data from the sensor and broadcast it via LoRa wireless,
367 +
368 +[[image:image-20221108174840-8.png||height="731" width="671"]]
369 +
370 +
371 +
372 +Sending out data as below.
373 +
374 +[[image:image-20221108175113-9.png||height="556" width="998"]]
375 +
376 +
377 +=== **5.2.3 Set Up LG01v2** ===
378 +
379 +
380 +Configure LG01v2 LoRa channel parameters so it can get data from LA66 Shield
381 +
382 +(% style="color:red; font-weight:bold" %)**LG01v**(% style="color:red" %)**2 as Receiver: (configured as AT+RXMOD=65535,2)**
383 +
384 +(% class="box infomessage" %)
385 +(((
386 +**LG01-V2 configuration:**
387 +
388 +AT+FRE=868.100,868.100  ~-~--> TX and RX frequency set: 868100000
389 +AT+BW=0,0  ~-~--> TX and RX Bandwidth set: 125kHz
390 +AT+SF=12,12  ~-~--> TX and RX Spreading Factor set: SF12
391 +AT+POWER=14  ~-~--> TX Power Range set: 14dBm
392 +AT+CRC=1,1  ~-~--> TX and RX CRC Type
393 +AT+HEADER=0,0  ~-~--> TX and RX Header Type
394 +AT+CR=1,1  ~-~--> TX and RX Coding Rate
395 +AT+IQ=0,0  ~-~--> TX and RX InvertIQ
396 +AT+PREAMBLE=8,8  ~-~--> TX and RX Preamble Length set: 8
397 +AT+SYNCWORD=0  ~-~-->  Syncword**(0: private,1: public)**
398 +AT+RXMOD=65535,0  ~-~-->  Rx Timeout and Reply mode, RX window always open
327 327  )))
328 328  
329 329  
330 -Users can import this example in node-red: **[[attach:serial USB.json||target="_blank"]]**
402 +=== **5.2.4 Test result** ===
331 331  
332 -[[image:image-20221104100520-2.png||height="605" width="1150"]]
333 333  
405 +After the above configuration is complete, users can send test simulation data to check whether the configuration is correct, In LA66 sheild serial console send:(% style="color:red" %)**(AT+SEND=1,hello world,2,3).**
406 +)))
334 334  
335 -= (% style="color:inherit; font-family:inherit; font-size:29px" %)**6. How users can access LG01**(%%)**-V​​​​​​​(% style="color:inherit; font-family:inherit; font-size:29px" %)2 using serial USB(%%)** =
408 +When LG01v2 replies with ACK when it receives a packet sent by LA66 sheild.
336 336  
410 +[[image:image-20221108164413-2.png]]
337 337  
338 -(% style="color:blue" %)**USB TTL to LG01-V2  Connection:**
339 339  
340 340  
341 -Port 1 of the UART on the LG01-V2 is GND
414 +In the real-time log of LG01v2
342 342  
416 +[[image:image-20221108170314-3.png]]
417 +
418 +
419 +=== **5.2.5 Plot data chart in LG01v2** ===
420 +
421 +
422 +User can plot the temperature and humidity chat via LG01v2 built-in IoT server.
423 +
424 +User can import this example in Node-Red: [[attach:Log-Temperature-Sensor-and-send-data-to-node-red.json||target="_blank"]]
425 +
426 +[[image:image-20221108180334-10.png||height="651" width="1141"]]
427 +
428 +
429 +The temperature and humidity chart is displayed in the built-in node-red UI
430 +
431 +**Browser input: (% style="background-color:yellow" %)__//http:~/~/<local-IPV4-address>//__(%%)**
432 +
433 +[[image:image-20221108180458-11.png||height="402" width="1137"]]
434 +
435 +
436 += (% style="color:inherit; font-family:inherit; font-size:29px" %)**6. How users can access LG01**(%%)**v(% style="color:inherit; font-family:inherit; font-size:29px" %)2 using serial USB(%%)** =
437 +
438 +
439 +(% style="color:blue" %)**USB TTL to LG01v2  Connection:**
440 +
441 +
442 +Port 1 of the UART on the LG01v2 is GND
443 +
343 343  (% class="box infomessage" %)
344 344  (((
345 345  **TXD  <~-~--> UART RXD (Gray line)**
... ... @@ -350,7 +350,7 @@
350 350  )))
351 351  
352 352  
353 -**LG01-V2 UART connection photo**
454 +**LG01v2 UART connection photo**
354 354  
355 355  [[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"]]
356 356  
... ... @@ -361,23 +361,28 @@
361 361  
362 362  [[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"]]
363 363  
465 +
364 364  [[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"]]
365 365  
366 366  
367 -= **7. FAQ** =
469 += **7. OTA System Update** =
368 368  
471 +LG01v2 supports system auto update via OTA, please see **[[this URL>>url:http://wiki.dragino.com/xwiki/bin/view/OTA%20Update/]]** for the detail of this feature.
369 369  
370 -== **7.1 How does LG01-V2 communicate with Lora shield (LoRa.h)** ==
371 371  
474 += **8. FAQ** =
372 372  
373 -This example describes how to use LG01-V2, LoRa Shield to set up a LoRa network
476 +== **8.1 How does LG01v2 communicate with Lora shield (LoRa.h)** ==
374 374  
478 +
479 +This example describes how to use LG01v2, LoRa Shield to set up a LoRa network,
480 +
375 375  [[image:image-20221103152238-8.png||height="251" width="654"]]
376 376  
377 377  
378 -(% style="color:red" %)**Prerequisites: The configurations of LG01-V2 and Lora shield must match**
484 +(% style="color:red" %)**Prerequisites: The configurations of LG01v2 and Lora shield must match**
379 379  
380 -**LG01-V2 configuration:**
486 +**LG01v2 configuration:**
381 381  
382 382  (% class="box infomessage" %)
383 383  (((
... ... @@ -395,6 +395,8 @@
395 395  AT+RXDAFORM=1    
396 396  )))
397 397  
504 +
505 +
398 398  **Lora shield configuration:**
399 399  
400 400  Lora Shield example: [[attach:LoRa_Shield_Sketch_For_MQTT.ino||target="_blank"]] , [[attach:arduino-LoRa-master.zip||target="_blank"]]
... ... @@ -402,20 +402,63 @@
402 402  [[image:image-20221101161318-2.png]]
403 403  
404 404  
405 -**Test LG01-V2 to receive Lora Shield data:**
406 406  
514 +**Test LG01v2 to receive Lora Shield data:**
515 +
407 407  [[image:image-20221101161951-3.png]]
408 408  
409 409  
410 -**Test the LG01-V​​​​​​​2 to send data:**
411 411  
520 +**Test the LG01v2 to send data:**
521 +
412 412  [[image:image-20221101162527-4.png]]
413 413  
414 414  
415 -= (% style="color:inherit; font-family:inherit; font-size:29px" %)**8. Supports**(%%) =
525 +== **8.2 How does LG01v2 communicate with Heltec LoRa Node** ==
416 416  
417 417  
528 +This example describes how to use LG01v2 and Heltec LoRa Node to set up a LoRa network,
529 +
530 +[[image:image-20221112161111-2.png||height="258" width="692"]]
531 +
532 +(% style="color:red" %)**Prerequisites: The configurations of LG01v2 and Lora shield must match**
533 +
534 +
535 +**LG01v2 configuration:**
536 +
537 +(% class="box infomessage" %)
418 418  (((
539 +AT+FRE=868.100,868.100  ~-~--> TX and RX frequency set: 868100000
540 +AT+BW=0,0  ~-~--> TX and RX Bandwidth set: 125kHz
541 +AT+SF=12,12  ~-~--> TX and RX Spreading Factor set: SF12
542 +AT+POWER=14  ~-~--> TX Power Range
543 +AT+CRC=1,1  ~-~--> TX and RX CRC Type
544 +AT+HEADER=0,0  ~-~--> TX and RX Header Type
545 +AT+CR=1,1  ~-~--> TX and RX Coding Rate
546 +AT+IQ=0,0  ~-~--> TX and RX InvertIQ
547 +AT+PREAMBLE=8,8  ~-~--> TX and RX Preamble Length set: 8
548 +AT+SYNCWORD=0  ~-~-->  Syncword**(0: private,1: public), **the corresponding Lora shield syncword is 0x12
549 +AT+RXMOD=65535,0  ~-~-->  Rx Timeout and Reply mode,RX window always open
550 +AT+RXDAFORM=1  ~-~--> RX data format**(0: Hex ,1: String)**
551 +)))
552 +
553 +
554 +After we upload the sketch to Heltec LoRa Node, we can see below output from Arduino.
555 +
556 +Lora Shield example: [[attach:LoRa_send_trial.ino||target="_blank"]]
557 +
558 +[[image:image-20221112162733-3.png||height="524" width="927"]]
559 +
560 +
561 +And we can see the logread of gateway as below, means the packet arrive gateway:
562 +
563 +[[image:image-20221112163119-4.png||height="808" width="560"]]
564 +
565 +
566 += (% style="color:inherit; font-family:inherit; font-size:29px" %)**9. Supports**(%%) =
567 +
568 +
569 +(((
419 419  **//If you are experiencing issues and can't solve them, you can send mail to [[support@dragino.com>>mailto:support@dragino.com]].//**
420 420  )))
421 421  
... ... @@ -423,29 +423,24 @@
423 423  **//With your question as detailed as possible. We will reply and help you in the shortest.//**
424 424  
425 425  
577 += **10. Reference** =
426 426  
427 -= **9. Reference** =
428 428  
580 +* Install Tago Core: Refer **Install Tago Core in LG01v2** in[[ Instruction>>doc:Main.Tago\.IO.WebHome]].
581 +* [[Advance OS Reference Guide for L>>doc:Main.Armbian OS instruction.WebHome]]G01v2.
429 429  
430 -* Install Tago Core: Refer **Install Tago Core in LPS8v2** in[[ Instruction>>doc:Main.Tago\.IO.WebHome]].
431 -* [[Advance OS Reference Guide for LPS8v2>>doc:Main.Armbian OS instruction.WebHome]].
432 -
433 433  
434 434  )))
435 435  
436 -= **10. Order Info** =
586 += **11. Order Info** =
437 437  
438 438  
439 -(% style="color:#0000ff" %)**LPS8v2-XXX-YYY**
589 +(% style="color:#0000ff" %)**LG01v2-XXX-YYY**
440 440  
441 441  (% style="color:#0000ff" %)**XXX**(% style="color:black" %): Frequency Band
442 442  
443 -* (% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band
444 -* (% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band
445 -* (% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band
446 -* (% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band
447 -* (% style="color:red" %)**US915**(%%): LoRaWAN US915 band
448 -* (% style="color:red" %)**IN865**(%%):  LoRaWAN IN865 band
593 +* (% style="color:red" %)**868**(%%): For frequency : 863 ~~ 870Mhz
594 +* (% style="color:red" %)**915**(%%): For frequency : 902 ~~ 928Mhz
449 449  
450 450  (% style="color:#0000ff" %)**YYY**(% style="color:black" %): 4G Cellular Option
451 451  
... ... @@ -457,10 +457,9 @@
457 457  More info about valid bands, please see [[EC25-E product page>>url:https://www.quectel.com/product/ec25.htm]].
458 458  
459 459  
606 += **12. Manufacturer Info** =
460 460  
461 -= **10. Manufacturer Info** =
462 462  
463 -
464 464  **Shenzhen Dragino Technology Development co. LTD**
465 465  
466 466  Room 202, Block B, BCT Incubation Bases (BaoChengTai),  No.8 CaiYunRoad
... ... @@ -468,10 +468,9 @@
468 468  LongCheng Street, LongGang District ; Shenzhen 518116,China
469 469  
470 470  
616 += **13. FCC Warning** =
471 471  
472 -= **11. FCC Warning** =
473 473  
474 -
475 475  (((
476 476  This equipment has been tested and found to comply with the limits for a Class B digital device, pursuant to Part 15 of the FCC Rules. These limits are designed to provide reasonable protection against harmful interference in a residential installation. This equipment generates uses and can radiate radio frequency energy and, if not installed and used in accordance with the instructions, may cause harmful interference to radio communications. However, there is no guarantee that interference will not occur in a particular installation. If this equipment does cause harmful interference to radio or television reception, which can be determined by turning the equipment off and on, the user is encouraged to try to correct the interference by one or more of the following measures:
477 477  )))
... ... @@ -501,7 +501,6 @@
501 501  (((
502 502  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.
503 503  
648 +
504 504  
505 505  )))
506 -
507 -~)~)~)
LoRa_send_trial.ino
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +3.4 KB
Content
... ... @@ -1,0 +1,124 @@
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,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 +
Log-Temperature-Sensor-and-send-data-to-node-red.json
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +10.1 KB
Content
... ... @@ -1,0 +1,443 @@
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-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
image-20221108175113-9.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +72.6 KB
Content
image-20221108180334-10.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +159.3 KB
Content
image-20221108180458-11.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +52.4 KB
Content
image-20221112161031-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +35.1 KB
Content
image-20221112161111-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +34.8 KB
Content
image-20221112162733-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +78.7 KB
Content
image-20221112163119-4.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +32.6 KB
Content
Copyright ©2010-2022 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0