<
From version < 59.1 >
edited by Kilight Cao
on 2022/11/03 15:20
To version < 102.1 >
edited by Edwin Chen
on 2022/11/14 19:41
>
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.Kilight
1 +XWiki.Edwin
Content
... ... @@ -14,16 +14,16 @@
14 14  = **1. Introduction** =
15 15  
16 16  
17 -== **1.1 What is LG01v2** ==
17 +== **1.1 What is LG01-V2** ==
18 18  
19 19  
20 20  (((
21 21  (((
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.
22 +The LG01-V2 is an (% style="color:green" %)**open-source single channel LoRa Gateway**(%%). It lets you bridge LoRa wireless network to an IP network via (% style="color:green" %)**WiFi , Ethernet or Cellular Network**(%%) (via Optional 4G module). The LoRa wireless allows users to send data and reach extremely long ranges at low data rates.
23 23  )))
24 24  
25 25  (((
26 -LG01v2 supports (% style="color:green" %)**remote management**(%%). System Integrator can easy to remote monitor the gateway and maintain it.
26 +LG01-V2 supports (% style="color:green" %)**remote management**(%%). System Integrator can easy to remote monitor the gateway and maintain it.
27 27  )))
28 28  
29 29  
... ... @@ -88,7 +88,7 @@
88 88  == **1.6 Button Intruction** ==
89 89  
90 90  
91 -LG01v2 has a black toggle button, which is:
91 +LG01-V2 has a black toggle button, which is:
92 92  
93 93  
94 94  (% style="color:blue" %)**//➢ //Long press 4-5s  : **(%%)the gateway will reload the Network and Initialize wifi configuration
... ... @@ -119,7 +119,7 @@
119 119  === (% style="color:blue" %)**Method 1**(%%):  Connect via Ethernet with DHCP IP from the router ===
120 120  
121 121  
122 -Connect the LG01v2 Ethernet port to your router and LG01v2 can obtain an IP address from your router. In the router's management portal, you should be able to find what IP address the router has assigned to the LG01v2.
122 +Connect the LG01-V2 Ethernet port to your router and LG01-V2 can obtain an IP address from your router. In the router's management portal, you should be able to find what IP address the router has assigned to the LG01-V2.
123 123  
124 124  You can also use this IP to connect.
125 125  
... ... @@ -132,25 +132,7 @@
132 132  
133 133  [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220622100542-2.png?width=1256&height=369&rev=1.1||alt="image-20220622100542-2.png"]]
134 134  
135 -The LG01v2 has a fall-back IP address on its WAN port. you have to access the gateway Web-UI to configure the WiFi connection via the fallback IP address.
136 136  
137 -
138 -(% style="color:#037691" %)**Steps to connect via fallback IP:**
139 -
140 -~1. Connect PC's Ethernet port to LG01-V2's WAN port
141 -
142 -2. Configure PC's Ethernet port has  IP: 172.31.255.253 and Netmask: 255.255.255.252
143 -
144 -
145 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220622101433-4.png?rev=1.1||alt="image-20220622101433-4.png"]]
146 -
147 -
148 -and then On the PC, use the IP address **http:~/~/172.31.255.254** to access the LG01-V2 via Web or Console.
149 -
150 -
151 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220622102210-5.png?width=919&height=504&rev=1.1||alt="image-20220622102210-5.png"]]
152 -
153 -
154 154  Fill in the WiFi information by checking the box and clicking (% style="color:red" %)**Save&Apply**
155 155  
156 156  
... ... @@ -162,7 +162,6 @@
162 162  
163 163  [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220622102847-7.png?rev=1.1||alt="image-20220622102847-7.png"]]
164 164  
165 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220622102901-8.png?width=938&height=476&rev=1.1||alt="image-20220622102901-8.png"]]
166 166  
167 167  
168 168  = **3. Web Configure Pages** =
... ... @@ -171,7 +171,7 @@
171 171  
172 172  //Shows the system running status~://
173 173  
174 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220622102901-8.png?rev=1.1||alt="image-20220622102901-8.png" height="476" width="939"]]
155 +[[image:image-20221104155612-1.png||height="497" width="942"]]
175 175  
176 176  
177 177  == **3.2 Network Settings** ==
... ... @@ -180,7 +180,7 @@
180 180  === **3.2.1 Network ~-~-> WiFi** ===
181 181  
182 182  
183 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220616114756-4.png?width=669&height=251&rev=1.1||alt="image-20220616114756-4.png"]]
164 +[[image:image-20221104155654-2.png||height="319" width="813"]]
184 184  
185 185  
186 186  
... ... @@ -187,7 +187,7 @@
187 187  === **3.4.2 Network ~-~-> System Status** ===
188 188  
189 189  
190 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220820134112-2.png?width=668&height=539&rev=1.1||alt="image-20220820134112-2.png"]]
171 +[[image:image-20221104155724-3.png||height="679" width="861"]]
191 191  
192 192  
193 193  
... ... @@ -206,7 +206,7 @@
206 206  
207 207  Shows the system info:
208 208  
209 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220917144512-5.png?width=853&height=618&rev=1.1||alt="image-20220917144512-5.png"]]
190 +[[image:image-20221104155907-4.png]]
210 210  
211 211  
212 212  
... ... @@ -213,18 +213,52 @@
213 213  === **3.5.2 System ~-~-> Backup/Restore** ===
214 214  
215 215  
216 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220917144725-6.png?width=869&height=208&rev=1.1||alt="image-20220917144725-6.png"]]
197 +[[image:image-20221104155928-5.png||height="334" width="880"]]
217 217  
218 218  
200 += (% id="cke_bm_1978S" style="display:none" %)** **(%%)**4. Build in Server** =
219 219  
220 -= **4. How to configure the Lora Gateway** =
221 221  
203 +The default factory version of LG01-V2 is installed with the built-in Applicant server: (% style="color:blue" %)**Node-Red**
222 222  
223 -== **4.1 Access the Lora configuration page** ==
224 224  
206 +[[image:image-20221104155949-6.png||height="315" width="1023"]]
225 225  
226 -Users can access the LA66 module by running the following command, then select the option **''serial port setup"**:
227 227  
209 +(% style="color:red" %)**Note:**
210 +
211 + **Path**: System ~-~-> Built-in Server
212 +
213 +
214 +**Troubleshooting:**
215 +
216 +
217 +**~ 1. URL does not jump properly**
218 +
219 + For the Node-Red, you can use the local IP address and the port is 1880 to access it.
220 +
221 +
222 +
223 +== **4.1 Application Server ~-~- Node-Red** ==
224 +
225 +
226 +You can access the gateway's built-in AS server of (% style="color:blue" %)**Node-Red **(%%)via the URL((% style="background-color:yellow" %)__**//http:~/~/<hostname>:1880 or http:~/~/<local-IPV4-address>//**__(%%)) in your browser.
227 +
228 +
229 +Such as (% style="background-color:yellow" %)__**//http:~/~/dragino-54ff12:1880  or http:~/~/<Local-IPV4-Address>//**__
230 +
231 +
232 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220725172124-3.png?width=843&height=610&rev=1.1||alt="image-20220725172124-3.png"]]
233 +
234 +
235 += **5. How to configure the Lora Gateway** =
236 +
237 +
238 +== **5.1 Configure and Debug LoRa wireless of LG01v2** ==
239 +
240 +
241 +Users can access the Lora configuration page by running the following command, then select the option **''serial port setup"**:
242 +
228 228  (% class="box infomessage" %)
229 229  (((
230 230  **root@dragino-2406ef:~~# minicom -s**
... ... @@ -268,75 +268,155 @@
268 268  )))
269 269  
270 270  
271 -== **4.2 Example: LG01v2 Peer-to-Peer** ==
286 +== **5.2 Example: LG01v2** ==
272 272  
288 +=== **5.2.1 Introduce for the example:** ===
273 273  
290 +[[image:image-20221104102736-3.png||height="282" width="723"]]
274 274  
275 -[[image:image-20221103143618-5.png||height="274" width="612"]]
276 276  
293 +In this example, there are two devices:
277 277  
278 -The user can run the AT command to set the LG01v2 RX window always open as a Receiver, the LA66 Shield uses **AT+SEND=1,hello world,2,3** to simulate sending data,
295 +* **LA66 Shield + UNO + DHT11**: The UNO will get the temperature and humidity and broadcast the value via LoRa protocol.
296 +* **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.
279 279  
280 -**Prerequisites: **The configuration of LG01v2 and  LA66 Shield must match, users can use **AT+CFG** to check all configurations.
298 +=== 5.2.2 Set Up LA66 Shield + UNO ===
281 281  
282 282  
283 -(% style="color:red" %)**LG01v2 as Receiver: (configured as AT+RXMOD=65535,2)**
301 +==== **Set up LA66 Module** ====
284 284  
285 -[[image:image-20221102140053-4.png]]
303 +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:
286 286  
305 +(((
306 +(% style="color:red" %)**LA66 Shield as Sender: **
287 287  
288 -(% style="color:red" %)**LA66 Shield as Sender: (AT+SEND=1,hello world,2,3)**
308 +(% class="box infomessage" %)
309 +(((
310 +**LA66 Shield configuration:**
289 289  
290 -[[image:1667456058832-484.png||height="291" width="353"]]
312 +AT+FRE=868.100,868.100  ~-~--> TX and RX frequency set: 868100000
313 +AT+BW=0,0  ~-~--> TX and RX Bandwidth set: 125kHz
314 +AT+SF=12,12  ~-~--> TX and RX Spreading Factor set: SF12
315 +AT+POWER=14  ~-~--> TX Power Range set: 14dBm
316 +AT+CRC=1,1  ~-~--> TX and RX CRC Type
317 +AT+HEADER=0,0  ~-~--> TX and RX Header Type
318 +AT+CR=1,1  ~-~--> TX and RX Coding Rate
319 +AT+IQ=0,0  ~-~--> TX and RX InvertIQ
320 +AT+PREAMBLE=8,8  ~-~--> TX and RX Preamble Length set: 8
321 +AT+SYNCWORD=0  ~-~-->  Syncword**(0: private,1: public)**
322 +AT+RXMOD=6,0  ~-~-->  Rx Timeout and Reply mode
323 +)))
324 +)))
291 291  
292 292  
293 -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/]]
327 +==== **Set up Arduino UNO** ====
328 +
329 +(% id="cke_bm_1033249S" style="display:none" %)** **(%%)**Hardware Connection**
330 +
331 +(% class="box infomessage" %)
332 +(((
333 +**The DHT11 sensor connects to the LA66 Shield:**
334 +
335 +**VCC  <~-~--> 3.3V (Red line)**
336 +**DATA <~-~--> PIN8 (Purple line)**
337 +**GND  <~-~--> GND (White line)**
294 294  )))
295 295  
340 +[[image:image-20221108170731-5.png||height="588" width="441"]]
296 296  
297 -= **5. Build in Server** =
298 298  
343 +===== **1. Open Arduino IDE** =====
299 299  
300 -The default factory version of LG01-V2 is installed with the built-in Applicant server: (% style="color:blue" %)**Node-Red**
345 +[[image:image-20221108172149-6.png||height="650" width="542"]]
301 301  
302 302  
303 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220820115644-1.png?width=778&height=217&rev=1.1||alt="image-20220820115644-1.png"]]
348 +===== **2. Open project** =====
304 304  
350 +Users can download Arduino files from this link: [[attach:Log-Temperature-Sensor-and-send-data-to-Node-red.ino||target="_blank"]]
305 305  
306 -(% style="color:red" %)**Note:**
352 +Then click Compile and Upload to LA66 Shield,
307 307  
308 - **Path**: System ~-~-> Built-in Server
354 +[[image:image-20221108172432-7.png]]
309 309  
310 310  
311 -**Troubleshooting:**
357 +===== **3. Open the Serial Monitor to check the LA66 Shield data** =====
312 312  
359 +The UNO will now reads the temperature and humidity data from the sensor and broadcast it via LoRa wireless,
313 313  
314 -**~ 1. URL does not jump properly**
361 +[[image:image-20221108174840-8.png||height="731" width="671"]]
315 315  
316 - For the Node-Red, you can use the local IP address and the port is 1880 to access it.
317 317  
364 +Sending out data as below.
318 318  
366 +[[image:image-20221108175113-9.png||height="556" width="998"]]
319 319  
320 -== **5.1 Application Server ~-~- Node-Red** ==
321 321  
322 322  
323 -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.
370 +=== 5.2.3 Set Up LG01v2 ===
324 324  
325 325  
326 -Such as (% style="background-color:yellow" %)__**//http:~/~/dragino-54ff12:1880  or http:~/~/<Local-IPV4-Address>//**__
373 +Configure LG01v2 LoRa channel parameters so it can get data from LA66 Shield
327 327  
375 +(% style="color:red; font-weight:bold" %)**LG01v**(% style="color:red" %)**2 as Receiver: (configured as AT+RXMOD=65535,2)**
328 328  
329 -[[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"]]
377 +(% class="box infomessage" %)
378 +(((
379 +**LG01-V2 configuration:**
330 330  
381 +AT+FRE=868.100,868.100  ~-~--> TX and RX frequency set: 868100000
382 +AT+BW=0,0  ~-~--> TX and RX Bandwidth set: 125kHz
383 +AT+SF=12,12  ~-~--> TX and RX Spreading Factor set: SF12
384 +AT+POWER=14  ~-~--> TX Power Range set: 14dBm
385 +AT+CRC=1,1  ~-~--> TX and RX CRC Type
386 +AT+HEADER=0,0  ~-~--> TX and RX Header Type
387 +AT+CR=1,1  ~-~--> TX and RX Coding Rate
388 +AT+IQ=0,0  ~-~--> TX and RX InvertIQ
389 +AT+PREAMBLE=8,8  ~-~--> TX and RX Preamble Length set: 8
390 +AT+SYNCWORD=0  ~-~-->  Syncword**(0: private,1: public)**
391 +AT+RXMOD=65535,0  ~-~-->  Rx Timeout and Reply mode, RX window always open
392 +)))
331 331  
332 -= (% style="color:inherit; font-family:inherit; font-size:29px" %)**6. How users can access LG01v2 using serial USB**(%%) =
333 333  
395 +=== 5.2.4 Test result ===
334 334  
335 -(% style="color:blue" %)**USB TTL to LG01v2  Connection:**
397 +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).**
398 +)))
336 336  
400 +When LG01v2 replies with ACK when it receives a packet sent by LA66 sheild.
337 337  
338 -Port 1 of the UART on the LG01v2 is GND
402 +[[image:image-20221108164413-2.png]]
339 339  
404 +
405 +In the real-time log of LG01v2:
406 +
407 +[[image:image-20221108170314-3.png]]
408 +
409 +
410 +=== **5.2.5 Plot data chart in LG01v2** ===
411 +
412 +
413 +User can plot the temperature and humidity chat via LG01v2 built-in IoT server.
414 +
415 +User can import this example in Node-Red: [[attach:Log-Temperature-Sensor-and-send-data-to-node-red.json||target="_blank"]]
416 +
417 +[[image:image-20221108180334-10.png||height="651" width="1141"]]
418 +
419 +
420 +The temperature and humidity chart is displayed in the built-in node-red UI
421 +
422 +**Browser input: (% style="background-color:yellow" %)__//http:~/~/<local-IPV4-address>//__(%%)**
423 +
424 +[[image:image-20221108180458-11.png||height="402" width="1137"]]
425 +
426 +
427 += (% 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(%%)** =
428 +
429 +
430 +(% style="color:blue" %)**USB TTL to LG01-V2  Connection:**
431 +
432 +
433 +Port 1 of the UART on the LG01-V2 is GND
434 +
340 340  (% class="box infomessage" %)
341 341  (((
342 342  **TXD  <~-~--> UART RXD (Gray line)**
... ... @@ -347,7 +347,7 @@
347 347  )))
348 348  
349 349  
350 -**LG01v2 UART connection photo**
445 +**LG01-V2 UART connection photo**
351 351  
352 352  [[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"]]
353 353  
... ... @@ -364,17 +364,17 @@
364 364  = **7. FAQ** =
365 365  
366 366  
367 -== **7.1 How does LG01v2 communicate with Lora shield (LoRa.h)** ==
462 +== **7.1 How does LG01-V2 communicate with Lora shield (LoRa.h)** ==
368 368  
369 369  
370 -This example describes how to use LG01v2, LoRa Shield to set up a LoRa network
465 +This example describes how to use LG01-V2, LoRa Shield to set up a LoRa network,
371 371  
372 -[[image:image-20221103144405-6.png||height="253" width="712"]]
467 +[[image:image-20221103152238-8.png||height="251" width="654"]]
373 373  
374 374  
375 -(% style="color:red" %)**Prerequisites: The configurations of LG01v2 and Lora shield must match**
470 +(% style="color:red" %)**Prerequisites: The configurations of LG01-V2 and Lora shield must match**
376 376  
377 -**LG01v2 configuration:**
472 +**LG01-V2 configuration:**
378 378  
379 379  (% class="box infomessage" %)
380 380  (((
... ... @@ -399,16 +399,54 @@
399 399  [[image:image-20221101161318-2.png]]
400 400  
401 401  
402 -**Test LG01v2 to receive Lora Shield data:**
497 +**Test LG01-V2 to receive Lora Shield data:**
403 403  
404 404  [[image:image-20221101161951-3.png]]
405 405  
406 406  
407 -**Test the LG01v2 to send data:**
502 +**Test the LG01-V2 to send data:**
408 408  
409 409  [[image:image-20221101162527-4.png]]
410 410  
411 411  
507 +== **7.2 How does LG01-V2 communicate with Heltec LoRa Node** ==
508 +
509 +
510 +This example describes how to use LG01-V2 and Heltec LoRa Node to set up a LoRa network,
511 +
512 +[[image:image-20221112161111-2.png||height="258" width="692"]]
513 +
514 +(% style="color:red" %)**Prerequisites: The configurations of LG01-V2 and Lora shield must match**
515 +
516 +**LG01-V2 configuration:**
517 +
518 +(% class="box infomessage" %)
519 +(((
520 +AT+FRE=868.100,868.100  ~-~--> TX and RX frequency set: 868100000
521 +AT+BW=0,0  ~-~--> TX and RX Bandwidth set: 125kHz
522 +AT+SF=12,12  ~-~--> TX and RX Spreading Factor set: SF12
523 +AT+POWER=14  ~-~--> TX Power Range
524 +AT+CRC=1,1  ~-~--> TX and RX CRC Type
525 +AT+HEADER=0,0  ~-~--> TX and RX Header Type
526 +AT+CR=1,1  ~-~--> TX and RX Coding Rate
527 +AT+IQ=0,0  ~-~--> TX and RX InvertIQ
528 +AT+PREAMBLE=8,8  ~-~--> TX and RX Preamble Length set: 8
529 +AT+SYNCWORD=0  ~-~-->  Syncword**(0: private,1: public), **the corresponding Lora shield syncword is 0x12
530 +AT+RXMOD=65535,0  ~-~-->  Rx Timeout and Reply mode,RX window always open
531 +AT+RXDAFORM=1  ~-~--> RX data format**(0: Hex ,1: String)**
532 +)))
533 +
534 +After we upload the sketch to Heltec LoRa Node, we can see below output from Arduino.
535 +
536 +Lora Shield example: [[attach:LoRa_send_trial.ino||target="_blank"]]
537 +
538 +[[image:image-20221112162733-3.png||height="524" width="927"]]
539 +
540 +
541 +And we can see the logread of gateway as below, means the packet arrive gateway:
542 +
543 +[[image:image-20221112163119-4.png||height="808" width="560"]]
544 +
412 412  = (% style="color:inherit; font-family:inherit; font-size:29px" %)**8. Supports**(%%) =
413 413  
414 414  
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-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