<
From version < 18.1 >
edited by Kilight Cao
on 2022/10/31 09:05
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,9 +11,13 @@
11 11  
12 12  {{toc/}}
13 13  
14 -= **1. Introduction** =
15 15  
16 16  
16 +
17 +
18 +
19 += **1. Introduction** =
20 +
17 17  == **1.1 What is LG01v2** ==
18 18  
19 19  
... ... @@ -20,14 +20,17 @@
20 20  (((
21 21  (((
22 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 +
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  (((
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 +
26 26  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,18 +101,16 @@
101 101   //**LED status: ** ETH LED will SOLID BULE Until the restore is finished.//
102 102  
103 103  
109 += **2. Quick Start** =
104 104  
105 -= ** 2. Quick Start** =
106 106  
112 +The LG01-V2 supports network access via Ethernet or Wi-Fi connection and runs without a network.
107 107  
108 -The LPS8-V2 supports network access via Ethernet or Wi-Fi connection and runs without a network.
114 +In most cases, the first thing you need to do is make the LG01-v2 accessible to the network.
109 109  
110 -In most cases, the first thing you need to do is make the lps8-v2 accessible to the network.
111 111  
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  
... ... @@ -119,54 +119,118 @@
119 119  === (% style="color:blue" %)**Method 1**(%%):  Connect via Ethernet with DHCP IP from the router ===
120 120  
121 121  
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.
125 +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  
126 -[[image:image-20220622100129-1.png||height="332" width="1263"]]
127 127  
128 -(% class="wikigeneratedid" %)
129 -=== ===
130 +[[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"]]
130 130  
131 -=== **Method 2**:  Connect via WiFi with DHCP IP from the router ===
132 132  
133 -[[image:image-20220622100542-2.png||height="369" width="1256"]]
133 +=== (% style="color:blue" %)**Method 2**(%%):  Connect via WiFi with DHCP IP from the router ===
134 134  
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 -**Steps to connect via fallback IP:**
136 +[[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"]]
138 138  
139 -~1. Connect PC's Ethernet port to LPS8-V2's WAN port
140 140  
141 -2. Configure PC's Ethernet port has  IP: 172.31.255.253 and Netmask: 255.255.255.252
139 +Fill in the WiFi information by checking the box and clicking (% style="color:red" %)**Save&Apply**
142 142  
143 -[[image:image-20220622101433-4.png]]
144 144  
145 -and then On the PC, use the IP address **http:~/~/172.31.255.254** to access the LPS8-V2 via Web or Console.
142 +[[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"]]
146 146  
147 -[[image:image-20220622102210-5.png||height="504" width="919"]]
148 148  
149 -Fill in the WiFi information by checking the box and clicking **Save&Apply**
145 +**Wi-Fi configuration successful**
150 150  
151 -[[image:image-20220622102702-6.png]]
152 152  
153 -**Wi-Fi configuration successful**
148 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220622102847-7.png?rev=1.1||alt="image-20220622102847-7.png"]]
154 154  
155 -[[image:image-20220622102847-7.png]]
156 156  
157 -[[image:image-20220622102901-8.png||height="476" width="938"]]
151 += **3. Web Configure Pages** =
158 158  
153 +== **3.1 Home** ==
159 159  
160 160  
156 +//Shows the system running status~://
161 161  
162 -= **3. How to configure the LA66 module** =
158 +[[image:image-20221104155612-1.png||height="497" width="942"]]
163 163  
164 164  
165 -== **3.1 Access the LA66 module** ==
161 +== **3.2 Network Settings** ==
166 166  
163 +=== **3.2.1 Network ~-~-> WiFi** ===
167 167  
168 -Users can access the LA66 module by running the following command, then select the option **''serial port setup"**:
169 169  
166 +[[image:image-20221104155654-2.png||height="319" width="813"]]
167 +
168 +
169 +=== **3.4.2 Network ~-~-> System Status** ===
170 +
171 +
172 +[[image:image-20221104155724-3.png||height="679" width="861"]]
173 +
174 +
175 +=== **3.4.3 Network ~-~-> Firewall** ===
176 +
177 +
178 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220616115351-6.png?width=661&height=244&rev=1.1||alt="image-20220616115351-6.png"]]
179 +
180 +
181 +== **3.5 System** ==
182 +
183 +=== **3.5.1  System ~-~-> System Overview** ===
184 +
185 +
186 +Shows the system info:
187 +
188 +[[image:image-20221104155907-4.png]]
189 +
190 +
191 +=== **3.5.2 System ~-~-> Backup/Restore** ===
192 +
193 +
194 +[[image:image-20221104155928-5.png||height="334" width="880"]]
195 +
196 +
197 += (% id="cke_bm_1978S" style="display:none" %)** **(%%)**4. Build in Server** =
198 +
199 +
200 +The default factory version of LG01-V2 is installed with the built-in Applicant server: (% style="color:blue" %)**Node-Red**
201 +
202 +
203 +[[image:image-20221104155949-6.png||height="315" width="1023"]]
204 +
205 +
206 +(% style="color:red" %)**Note:**
207 +
208 + **Path**: System ~-~-> Built-in Server
209 +
210 +
211 +(% style="color:blue" %)**Troubleshooting:**
212 +
213 +**~ 1. URL does not jump properly**
214 +
215 + For the Node-Red, you can use the local IP address and the port is 1880 to access it.
216 +
217 +
218 +== **4.1 Application Server ~-~- Node-Red** ==
219 +
220 +
221 +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.
222 +
223 +
224 +Such as (% style="background-color:yellow" %)__**//http:~/~/dragino-54ff12:1880  or http:~/~/<Local-IPV4-Address>//**__
225 +
226 +
227 +[[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"]]
228 +
229 +
230 += **5. How to configure the Lora Gateway** =
231 +
232 +== **5.1 Configure and Debug LoRa wireless of LG01v2** ==
233 +
234 +
235 +Users can access the Lora configuration page by running the following command, then select the option **''serial port setup"**:
236 +
170 170  (% class="box infomessage" %)
171 171  (((
172 172  **root@dragino-2406ef:~~# minicom -s**
... ... @@ -185,48 +185,321 @@
185 185  )))
186 186  
187 187  
188 -(% 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 +
189 189  (% style="color:red" %)[[image:image-20221029174703-3.png]]
190 190  
191 191  
192 192  Enter **AT+CFG **in the interface to get the configuration,
193 193  
194 -[[image:image-20221029172156-1.png||height="315" width="358"]]
195 195  
264 +(% class="box infomessage" %)
265 +(((
266 +**AT+FRE=868.100,868.100  ~-~--> TX and RX frequency
267 +AT+GROUPMOD=0,0  ~-~-->  TX and RX group
268 +AT+BW=0,0  ~-~-->  TX and RX Bandwidth
269 +AT+SF=12,12  ~-~-->  TX and RX Spreading Factor
270 +AT+POWER=14  ~-~-->  TX Power Range
271 +AT+CRC=1,1  ~-~-->  TX and RX CRC Type
272 +AT+HEADER=0,0  ~-~-->  TX and RX Header Type
273 +AT+CR=1,1  ~-~-->  TX and RX Coding Rate
274 +AT+IQ=0,0  ~-~-->  TX and RX InvertIQ
275 +AT+PREAMBLE=8,8  ~-~-->  TX and RX Preamble Length
276 +AT+SYNCWORD=0  ~-~-->  Syncword(0: private,1: public)
277 +AT+RXMOD=65535,0  ~-~-->  Rx Timeout and Reply mode
278 +AT+RXDAFORM=1**                              
279 +)))
196 196  
197 -LG01v2 Peer to Peer example:
198 198  
199 -(% style="color:red" %)**LG01v2 as Receiver: (configured as AT+RXMOD=65535,2)**
282 +== **5.2 Example: LG01v2** ==
200 200  
284 +=== **5.2.1 Introduce for the example:** ===
201 201  
202 -
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
314 +AT+CRC=1,1  ~-~--> TX and RX CRC Type
315 +AT+HEADER=0,0  ~-~--> TX and RX Header Type
316 +AT+CR=1,1  ~-~--> TX and RX Coding Rate
317 +AT+IQ=0,0  ~-~--> TX and RX InvertIQ
318 +AT+PREAMBLE=8,8  ~-~--> TX and RX Preamble Length set: 8
319 +AT+SYNCWORD=0  ~-~-->  Syncword**(0: private,1: public)**
320 +AT+RXMOD=6,0  ~-~-->  Rx Timeout and Reply mode
203 203  )))
322 +)))
204 204  
205 -= **7. Trouble Shooting** =
206 206  
207 207  
208 -== 7.1  I can't log in to the built-in Server TTN Stack which shows '**Login failed**'. ==
326 +==== **Set up Arduino UNO** ====
209 209  
328 +(% id="cke_bm_1033249S" style="display:none" %)** **
210 210  
330 +**Hardware Connection**
211 211  
332 +(% class="box infomessage" %)
333 +(((
334 +**The DHT11 sensor connects to the LA66 Shield:**
212 212  
213 -This is caused by the inconsistency between the built-in TTN-Stack domain configuration and your login URL.
336 +**VCC  <~-~--> 3.3V (Red line)**
337 +**DATA <~-~--> PIN8 (Purple line)**
338 +**GND  <~-~--> GND (White line)**
339 +)))
214 214  
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.
341 +[[image:image-20221108170731-5.png||height="588" width="441"]]
216 216  
217 217  
218 -So you can change the domain name of the TTN-Stack configuration to the IPv4 address.
219 219  
220 -**Click the update URL button to configure the URL with the current eth port address.**
345 +===== **1. Open Arduino IDE** =====
221 221  
222 222  
348 +[[image:image-20221108172149-6.png||height="650" width="542"]]
223 223  
224 224  
225 225  
226 -= (% style="color:inherit; font-family:inherit; font-size:29px" %)**8. Supports**(%%) =
352 +===== **2. Open project** =====
227 227  
228 228  
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" %)
229 229  (((
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
399 +)))
400 +
401 +
402 +=== **5.2.4 Test result** ===
403 +
404 +
405 +After the above configuration is complete, users can send test simulation data to check whether the configuration is correct, In LA66 sheild serial console send:(% style="color:red" %)**(AT+SEND=1,hello world,2,3).**
406 +)))
407 +
408 +When LG01v2 replies with ACK when it receives a packet sent by LA66 sheild.
409 +
410 +[[image:image-20221108164413-2.png]]
411 +
412 +
413 +
414 +In the real-time log of LG01v2:
415 +
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 +
444 +(% class="box infomessage" %)
445 +(((
446 +**TXD  <~-~--> UART RXD (Gray line)**
447 +
448 +**RXD  <~-~--> UART TXD (White line)**
449 +
450 +**GND <~-~--> GND (Black line)**
451 +)))
452 +
453 +
454 +**LG01v2 UART connection photo**
455 +
456 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220804163015-1.png?width=466&height=621&rev=1.1||alt="image-20220804163015-1.png"]]
457 +
458 +
459 +
460 +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:
461 +
462 +
463 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220804164928-3.png?width=332&height=320&rev=1.1||alt="image-20220804164928-3.png"]]
464 +
465 +
466 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220804164747-2.png?width=594&height=622&rev=1.1||alt="image-20220804164747-2.png"]]
467 +
468 +
469 += **7. OTA System Update** =
470 +
471 +LG01v2 supports system auto update via OTA, please see **[[this URL>>url:http://wiki.dragino.com/xwiki/bin/view/OTA%20Update/]]** for the detail of this feature.
472 +
473 +
474 += **8. FAQ** =
475 +
476 +== **8.1 How does LG01v2 communicate with Lora shield (LoRa.h)** ==
477 +
478 +
479 +This example describes how to use LG01v2, LoRa Shield to set up a LoRa network,
480 +
481 +[[image:image-20221103152238-8.png||height="251" width="654"]]
482 +
483 +
484 +(% style="color:red" %)**Prerequisites: The configurations of LG01v2 and Lora shield must match**
485 +
486 +**LG01v2 configuration:**
487 +
488 +(% class="box infomessage" %)
489 +(((
490 +AT+FRE=868.100,868.100  ~-~--> TX and RX frequency set: 868100000
491 +AT+BW=0,0  ~-~--> TX and RX Bandwidth set: 125kHz
492 +AT+SF=12,12  ~-~--> TX and RX Spreading Factor set: SF12
493 +AT+POWER=14  ~-~--> TX Power Range
494 +AT+CRC=1,1  ~-~--> TX and RX CRC Type
495 +AT+HEADER=0,0  ~-~--> TX and RX Header Type
496 +AT+CR=1,1  ~-~--> TX and RX Coding Rate
497 +AT+IQ=0,0  ~-~--> TX and RX InvertIQ
498 +AT+PREAMBLE=8,8  ~-~--> TX and RX Preamble Length set: 8
499 +AT+SYNCWORD=0  ~-~-->  Syncword**(0: private,1: public), **the corresponding Lora shield syncword is 0x12
500 +AT+RXMOD=65535,0  ~-~-->  Rx Timeout and Reply mode,RX window always open
501 +AT+RXDAFORM=1    
502 +)))
503 +
504 +
505 +
506 +**Lora shield configuration:**
507 +
508 +Lora Shield example: [[attach:LoRa_Shield_Sketch_For_MQTT.ino||target="_blank"]] , [[attach:arduino-LoRa-master.zip||target="_blank"]]
509 +
510 +[[image:image-20221101161318-2.png]]
511 +
512 +
513 +
514 +**Test LG01v2 to receive Lora Shield data:**
515 +
516 +[[image:image-20221101161951-3.png]]
517 +
518 +
519 +
520 +**Test the LG01v2 to send data:**
521 +
522 +[[image:image-20221101162527-4.png]]
523 +
524 +
525 +== **8.2 How does LG01v2 communicate with Heltec LoRa Node** ==
526 +
527 +
528 +This example describes how to use LG01v2 and Heltec LoRa Node to set up a LoRa network,
529 +
530 +[[image:image-20221112161111-2.png||height="258" width="692"]]
531 +
532 +(% style="color:red" %)**Prerequisites: The configurations of LG01v2 and Lora shield must match**
533 +
534 +
535 +**LG01v2 configuration:**
536 +
537 +(% class="box infomessage" %)
538 +(((
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 +(((
230 230  **//If you are experiencing issues and can't solve them, you can send mail to [[support@dragino.com>>mailto:support@dragino.com]].//**
231 231  )))
232 232  
... ... @@ -234,29 +234,24 @@
234 234  **//With your question as detailed as possible. We will reply and help you in the shortest.//**
235 235  
236 236  
577 += **10. Reference** =
237 237  
238 -= **9. Reference** =
239 239  
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.
240 240  
241 -* Install Tago Core: Refer **Install Tago Core in LPS8v2** in[[ Instruction>>doc:Main.Tago\.IO.WebHome]].
242 -* [[Advance OS Reference Guide for LPS8v2>>doc:Main.Armbian OS instruction.WebHome]].
243 -
244 244  
245 245  )))
246 246  
247 -= **10. Order Info** =
586 += **11. Order Info** =
248 248  
249 249  
250 -(% style="color:#0000ff" %)**LPS8v2-XXX-YYY**
589 +(% style="color:#0000ff" %)**LG01v2-XXX-YYY**
251 251  
252 252  (% style="color:#0000ff" %)**XXX**(% style="color:black" %): Frequency Band
253 253  
254 -* (% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band
255 -* (% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band
256 -* (% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band
257 -* (% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band
258 -* (% style="color:red" %)**US915**(%%): LoRaWAN US915 band
259 -* (% 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
260 260  
261 261  (% style="color:#0000ff" %)**YYY**(% style="color:black" %): 4G Cellular Option
262 262  
... ... @@ -268,10 +268,9 @@
268 268  More info about valid bands, please see [[EC25-E product page>>url:https://www.quectel.com/product/ec25.htm]].
269 269  
270 270  
606 += **12. Manufacturer Info** =
271 271  
272 -= **10. Manufacturer Info** =
273 273  
274 -
275 275  **Shenzhen Dragino Technology Development co. LTD**
276 276  
277 277  Room 202, Block B, BCT Incubation Bases (BaoChengTai),  No.8 CaiYunRoad
... ... @@ -279,10 +279,9 @@
279 279  LongCheng Street, LongGang District ; Shenzhen 518116,China
280 280  
281 281  
616 += **13. FCC Warning** =
282 282  
283 -= **11. FCC Warning** =
284 284  
285 -
286 286  (((
287 287  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:
288 288  )))
... ... @@ -312,7 +312,6 @@
312 312  (((
313 313  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.
314 314  
648 +
315 315  
316 316  )))
317 -
318 -~)~)~)
1667456058832-484.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +21.0 KB
Content
LoRa_Shield_Sketch_For_MQTT.ino
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +2.9 KB
Content
... ... @@ -1,0 +1,118 @@
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,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 +]
arduino-LoRa-master.zip
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +28.6 KB
Content
image-20221031091550-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +20.1 KB
Content
image-20221031091652-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +21.1 KB
Content
image-20221031091807-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +12.6 KB
Content
image-20221031092053-4.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +8.6 KB
Content
image-20221101160705-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +6.1 KB
Content
image-20221101161318-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +46.3 KB
Content
image-20221101161951-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +131.0 KB
Content
image-20221101162527-4.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +290.1 KB
Content
image-20221102105419-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +37.3 KB
Content
image-20221102110604-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +35.9 KB
Content
image-20221102114002-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +50.1 KB
Content
image-20221102140053-4.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +45.6 KB
Content
image-20221103140645-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +39.1 KB
Content
image-20221103142228-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +37.7 KB
Content
image-20221103142416-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Kilight
Size
... ... @@ -1,0 +1,1 @@
1 +325.9 KB
Content
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
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
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 +]
Copyright ©2010-2022 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0