Changes for page LG01v2 -- LoRa Gateway User Manual
Last modified by Kilight Cao on 2024/10/12 08:58
Change comment:
Uploaded new attachment "image-20221104155907-4.png", version {1}
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 45 removed)
- LG01v2_LSN50v2_S31.json
- LoRa_send_trial.ino
- Log-Temperature-Sensor-and-send-data-to-Node-red.ino
- Log-Temperature-Sensor-and-send-data-to-Node-red.json
- Log-Temperature-Sensor-and-send-data-to-node-red.json
- image-20221104155928-5.png
- image-20221104155949-6.png
- image-20221108164337-1.png
- image-20221108164413-2.png
- image-20221108170314-3.png
- image-20221108170621-4.jpeg
- image-20221108170731-5.png
- image-20221108172149-6.png
- image-20221108172432-7.png
- image-20221108174840-8.png
- image-20221108175113-9.png
- image-20221108180334-10.png
- image-20221108180458-11.png
- image-20221112161031-1.png
- image-20221112161111-2.png
- image-20221112162733-3.png
- image-20221112163119-4.png
- image-20230504095457-1.png
- image-20230504095502-2.png
- image-20230504100722-3.png
- image-20230506110646-1.png
- image-20230506113332-2.png
- image-20230506113432-3.png
- image-20230506113531-4.png
- image-20230506113602-5.png
- image-20230506113623-6.png
- image-20230506113705-7.png
- image-20230506113722-8.png
- image-20230506113737-9.png
- image-20230506113813-10.png
- image-20230506113831-11.png
- image-20230506114127-12.png
- image-20230506115438-13.png
- image-20230620103153-1.png
- image-20230620103535-2.png
- image-20230620103923-3.png
- image-20231014092843-1.png
- image-20231014092934-2.png
- image-20231014092954-3.png
- image-20231014092959-4.png
Details
- Page properties
-
- Content
-
... ... @@ -11,33 +11,26 @@ 11 11 12 12 {{toc/}} 13 13 14 += **1. Introduction** = 14 14 15 15 17 +== **1.1 What is LG01-V2** == 16 16 17 17 18 - 19 -= 1. Introduction = 20 - 21 -== 1.1 What is LG01v2 == 22 - 23 - 24 24 ((( 25 25 ((( 26 -The LG01v2 is an (% style="color:blue" %)**open-source single channel LoRa Gateway**(%%). It lets you bridge LoRa wireless network to an IP network via (% style="color:blue" %)**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:blue" %)**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. 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. 29 29 ))) 30 30 31 31 ((( 32 -LG01v2 uses Open Source Linux system. User can modify the Linux part and develop customize software base on it. It has (% style="color:blue" %)**1.2Ghz Quad-Core CPU**(%%) , (% style="color:blue" %)**4GB eMMC storage**(%%) and (% style="color:blue" %)**512MB RAM**(%%) for most application. 33 - 34 -LG01v2 supports (% style="color:blue" %)**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. 35 35 ))) 36 36 37 37 38 -== 1.2 Specifications == 39 39 31 +== **1.2 Specifications** == 40 40 33 + 41 41 (% style="color:#037691" %)**Hardware System:** 42 42 43 43 * CPU: Quad-core Cortex-A7 1.2Ghz ... ... @@ -55,7 +55,7 @@ 55 55 * Storage Temperature: -20 ~~ 65°C 56 56 * Power Input: 5V, 2A, DC 57 57 58 -== 1.3 Features == 51 +== **1.3 Features** == 59 59 60 60 61 61 * Open Source Debian system ... ... @@ -63,59 +63,69 @@ 63 63 * Remote Management 64 64 * Auto-provisioning for batch deployment and management 65 65 * LoRa Gateway 59 +* Built-in (% style="color:#037691" %)//**The Things Network**//(%%) local LoRaWAN server 66 66 * Built-in (% style="color:#037691" %)//**Node-Red**// (%%)local Application server 67 67 68 -== 1.4 Block Diagram == 62 +== **1.4 Block Diagram** == 69 69 70 70 71 71 72 -== 1.5 LED Indicators == 66 +== **1.5 LED Indicators** == 73 73 74 74 75 75 LG01-V2 has totally four LEDs, They are: 76 76 77 77 78 -(% style="color:blue" %)**➢ Power LED** [[image:image-20231014092959-4.png]](%%): This RED LED will be solid if the device is properly powered72 +(% style="color:blue" %)//**➢ Power LED**//(%%)//: This RED LED will be solid if the device is properly powered// 79 79 80 -(% style="color:blue" %)**➢ ETH LED** [[image:image-20231014092934-2.png]](%%): This RGB LED will blink GREEN when the ETH port is connecting74 +(% style="color:blue" %)//**➢ ETH LED**//(%%)//: This RGB LED will blink GREEN when the ETH port is connecting// 81 81 82 -(% style="color:blue" %)**➢ SYS LED** [[image:image-20231014092954-3.png]](%%):Undefinedyet.76 +(% style="color:blue" %)//**➢ SYS LED**//(%%)//: This RGB LED will show different colors in different states~:// 83 83 84 - (%style="color:blue"%)**➢ WIFILED**[[image:image-20231014092843-1.png]](%%): ThisLEDshowstheWIFIinterface connectionstatus.78 +// ✓ **SOLID GREEN:** The device is alive with a LoRaWAN server connection.// 85 85 80 +// ✓ **BLINKING GREEN:** a) Device has internet connection but no LoRaWAN Connection. or b) Device is in booting stage, in this stage, it will BLINKING GREEN for several seconds and then with BLINKING GREEN together// 86 86 87 - ==1.6Button Intruction==82 +// ✓** SOLID RED:** Device doesn't have an Internet connection.// 88 88 84 +(% style="color:blue" %)//**➢ WIFI LED**//(%%)//: This LED shows the WIFI interface connection status.// 89 89 86 + 87 + 88 +== **1.6 Button Intruction** == 89 + 90 + 90 90 LG01-V2 has a black toggle button, which is: 91 91 92 92 93 -(% style="color:blue" %)**➢ 94 +(% style="color:blue" %)**//➢ //Long press 4-5s : **(%%)the gateway will reload the Network and Initialize wifi configuration 94 94 95 - **LED status: ** ETH LED will BLINKIND BULE Until the reload is finished. 96 + // **LED status: ** ETH LED will BLINKIND BULE Until the reload is finished.// 96 96 97 97 98 -(% style="color:blue" %)**➢ Long press more than 10s:**(%%)** **the gateway will restore the factory settings. 99 +(% style="color:blue" %)//**➢ **//**Long press more than 10s:**(%%)** **//the gateway will restore the factory settings.// 99 99 100 - **LED status: ** ETH LED will SOLID BULE Until the restore is finished. 101 + //**LED status: ** ETH LED will SOLID BULE Until the restore is finished.// 101 101 102 102 103 -= 2. Quick Start = 104 104 105 += **2. Quick Start** = 105 105 107 + 106 106 The LG01-V2 supports network access via Ethernet or Wi-Fi connection and runs without a network. 107 107 108 108 In most cases, the first thing you need to do is make the LG01-v2 accessible to the network. 109 109 110 110 111 -== 2.1 AccessandConfigureLG01-v2==113 +== **2.1 Connects to the network and accesses the gateway Web UI** == 112 112 113 -=== 2.1.1 Find IP address of LG01-v2 === 114 114 116 +== **2.1.1 connect the network.** == 115 115 116 -==== (% style="color:blue" %)**Method 1**(%%): Connect via Ethernet with DHCP IP from the router ==== 117 117 119 +=== (% style="color:blue" %)**Method 1**(%%): Connect via Ethernet with DHCP IP from the router === 118 118 121 + 119 119 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. 120 120 121 121 You can also use this IP to connect. ... ... @@ -123,149 +123,103 @@ 123 123 124 124 [[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"]] 125 125 126 -==== (% style="color:blue" %)**Method 2**(%%): Connect via LG01v2 Fallback IP ==== 127 127 128 - [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20230107084650-2.png?width=839&height=310&rev=1.1||alt="image-20230107084650-2.png"height="284"width="769"]]130 +=== (% style="color:blue" %)**Method 2**(%%): Connect via WiFi with DHCP IP from the router === 129 129 130 130 131 - **Stepstoect viafallback IP:**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"]] 132 132 133 - ~1.Connect thePC'sEthernetport toLG01v2'sWANport135 +The LG01-V2 has a fall-back IP address on its WAN port. you have to access the gateway Web-UI to configure the WiFi connection via the fallback IP address. 134 134 135 -2. Configure PC's Ethernet port has IP: 172.31.255.253 and Netmask: 255.255.255.252 136 136 137 -**S ettings~-~-> Network& Internet~-~-> Ethernet ~-~-> Change advancedsharing options ~-~-> Double-click"Ethernet"~-~->InternetProtocol Version 4 (TCP/IPv4)**138 +(% style="color:#037691" %)**Steps to connect via fallback IP:** 138 138 140 +~1. Connect PC's Ethernet port to LG01-V2's WAN port 139 139 140 - Asin thebelowphoto:142 +2. Configure PC's Ethernet port has IP: 172.31.255.253 and Netmask: 255.255.255.252 141 141 142 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20230413172038-1.png?width=1243&height=732&rev=1.1||alt="image-20230413172038-1.png" height="624" width="1059"]] 143 143 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"]] 144 144 145 -Configure computer Ethernet port steps video: **[[fallback ip.mp4>>url:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/fallback%20ip.mp4?rev=1.1]]** 146 146 147 - If you still can'taccesstheLG01v2 fallback ip,followthis connectiontodebug:**[[Trouble Shooting>>http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20All%20Gateway%20models/LG01v2/#H10.1A0FallbackIPdoesnotwork2Chowcanuserscheck]]**148 +and then On the PC, use the IP address **http:~/~/172.31.255.254** to access the LG01-V2 via Web or Console. 148 148 149 -3. In the PC, use IP address 172.31.255.254 to access the LG01v2 via Web or Console. 150 150 151 -[[image:image-202 30506115438-13.png||height="554" width="1047"]]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 152 153 153 154 - 155 -==== (% style="color:blue" %)**Method 3**(%%): Connect via WiFi with DHCP IP from the router ==== 156 - 157 - 158 -[[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"]] 159 - 160 - 161 161 Fill in the WiFi information by checking the box and clicking (% style="color:red" %)**Save&Apply** 162 162 163 163 164 -[[image:image-202 30506113332-2.png]]157 +[[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"]] 165 165 166 166 167 167 **Wi-Fi configuration successful** 168 168 169 169 170 -[[image:image-202 30506113432-3.png||height="397" width="855"]]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"]] 171 171 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"]] 172 172 173 -=== 2.1.2 Access Configure Web UI === 174 174 168 += **3. Web Configure Pages** = 175 175 176 -** WebInterface**170 +== **3.1 Home** == 177 177 178 - Open a browseronthePC and typetheLG01v2 ip address (depends on your connectmethod)172 +//Shows the system running status~:// 179 179 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"]] 180 180 181 -[[(% style="background-color:yellow" %)**//http:~~/~~/IP_ADDRESS //**>>http://IP_ADDRESS]](%%) or (% style="background-color:yellow" %)//**[[http:~~/~~/172.31.255.254>>http://172.31.255.254(]]**//(Fallback IP) 182 182 183 - Youwillseethe logininterface of LG01v2 asshown below.177 +== **3.2 Network Settings** == 184 184 185 -The account details for Web Login are: 186 186 187 - (% style="color:#4f81bd"%)**UserName: root**180 +=== **3.2.1 Network ~-~-> WiFi** === 188 188 189 -(% style="color:#4f81bd" %)**Password: dragino** 190 190 191 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-202 30106153501-1.png?width=894&height=367&rev=1.1||alt="image-20230106153501-1.png"]]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"]] 192 192 193 193 194 -= 3. Web Configure Pages = 195 195 196 -== 3. 1Home ==187 +=== **3.4.2 Network ~-~-> System Status** === 197 197 198 198 199 - Showshesystemrunningstatus: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"]] 200 200 201 -[[image:image-20230506113531-4.png||height="430" width="818"]] 202 202 203 203 204 -== 3. 2NetworkSettings==194 +=== **3.4.3 Network ~-~-> Firewall** === 205 205 206 -=== 3.2.1 Network ~-~-> WiFi === 207 207 197 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220616115351-6.png?width=661&height=244&rev=1.1||alt="image-20220616115351-6.png"]] 208 208 209 -[[image:image-20230506113602-5.png]] 210 210 211 211 212 -== =3.4.2Network ~-~->SystemStatus===201 +== **3.5 System** == 213 213 214 214 215 - [[image:image-20230506113623-6.png||height="511"width="672"]]204 +=== **3.5.1 System ~-~-> System Overview** === 216 216 217 217 218 -== 3.5 System == 219 - 220 -=== 3.5.1 System ~-~-> System Overview === 221 - 222 - 223 223 Shows the system info: 224 224 225 -[[image:image-202 30506113705-7.png]]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"]] 226 226 227 227 228 -=== 3.5.2 System ~-~-> Backup/Restore === 229 229 213 +=== **3.5.2 System ~-~-> Backup/Restore** === 230 230 231 -[[image:image-20230506113722-8.png||height="254" width="797"]] 232 232 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"]] 233 233 234 -=== 3.5.3 System ~-~-> System General === 235 235 219 += (% id="cke_bm_1978S" style="display:none" %)** **(%%)**4. Build in Server** = 236 236 237 -In the **System-> System General** interface, Users can customize the configuration System Password and set Timezone. 238 238 239 -In addition, Users can customize the FallBack IP address. 240 - 241 -[[image:image-20230506113813-10.png||height="659" width="749"]] 242 - 243 - 244 -=== 3.5.4 System ~-~-> Remoteit === 245 - 246 - 247 -In the **System-> Remoteit** interface, users can configure the gateway to be accessed remotely via Remote.it. 248 - 249 -the users can refer to this link to configure them: **[[Monitor & Remote Access Gateway>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Monitor%20%26%20Remote%20Access%20Gateway/?Remote%20Access#H2.1A0RemoteAccessviaRemote.it.]]** 250 - 251 -[[image:image-20230506113831-11.png||height="567" width="748"]] 252 - 253 - 254 -=== 3.5.5 System ~-~-> Package Management === 255 - 256 - 257 -In the **System ~-~-> Package Management** interface, Users can check the current version of Core Packages. 258 - 259 -[[image:image-20230506114127-12.png||height="803" width="762"]] 260 - 261 - 262 -= (% id="cke_bm_1978S" style="display:none" %) (%%)4. Build in Server = 263 - 264 - 265 265 The default factory version of LG01-V2 is installed with the built-in Applicant server: (% style="color:blue" %)**Node-Red** 266 266 267 267 268 -[[image:image-202 30506113737-9.png]]225 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220820115644-1.png?width=778&height=217&rev=1.1||alt="image-20220820115644-1.png"]] 269 269 270 270 271 271 (% style="color:red" %)**Note:** ... ... @@ -273,16 +273,18 @@ 273 273 **Path**: System ~-~-> Built-in Server 274 274 275 275 276 - (% style="color:blue" %)**Troubleshooting:**233 +**Troubleshooting:** 277 277 235 + 278 278 **~ 1. URL does not jump properly** 279 279 280 280 For the Node-Red, you can use the local IP address and the port is 1880 to access it. 281 281 282 282 283 -== 4.1 Application Server ~-~- Node-Red == 284 284 242 +== **4.1 Application Server ~-~- Node-Red** == 285 285 244 + 286 286 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. 287 287 288 288 ... ... @@ -292,24 +292,12 @@ 292 292 [[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"]] 293 293 294 294 295 -= 5. How to configure the Lora Gateway = 254 += **5. How to configure the Lora Gateway** = 296 296 297 -== 5.1 Configure and Debug LoRa wireless of LG01v2 == 298 298 257 +== **5.1 Access the Lora configuration page** == 299 299 300 -First, the user needs to access the Linux console of LG01v2 via ssh 301 301 302 -**IP address: (% style="color:blue" %)IP address of LG01v2(%%)** 303 - 304 -**Port: (% style="color:blue" %)22(%%)** 305 - 306 -**User Name: (% style="color:blue" %)root(%%)** 307 - 308 -**Password: (% style="color:blue" %)dragino(default)(%%)** 309 - 310 -[[image:image-20230504100722-3.png||height="228" width="908"]] 311 - 312 - 313 313 Users can access the Lora configuration page by running the following command, then select the option **''serial port setup"**: 314 314 315 315 (% class="box infomessage" %) ... ... @@ -330,9 +330,7 @@ 330 330 ))) 331 331 332 332 333 -(% style="color:red" %)**Note: Enter the corresponding letter to change the configuration, like A,B,C** 334 - 335 - 280 +(% style="color:red" %)**Note: Enter the corresponding letter to change the configuration, like A,B,C**(%%) 336 336 (% style="color:red" %)[[image:image-20221029174703-3.png]] 337 337 338 338 ... ... @@ -341,196 +341,98 @@ 341 341 342 342 (% class="box infomessage" %) 343 343 ((( 344 -**AT+FRE=868.100,868.100 ~-~--> TX and RX frequency 345 -AT+GROUPMOD=0,0 ~-~--> TX and RX group 346 -AT+BW=0,0 ~-~--> TX and RX Bandwidth 347 -AT+SF=12,12 ~-~--> TX and RX Spreading Factor 348 -AT+POWER=14 ~-~--> TX Power Range 349 -AT+CRC=1,1 ~-~--> TX and RX CRC Type 350 -AT+HEADER=0,0 ~-~--> TX and RX Header Type 351 -AT+CR=1,1 ~-~--> TX and RX Coding Rate 352 -AT+IQ=0,0 ~-~--> TX and RX InvertIQ 353 -AT+PREAMBLE=8,8 ~-~--> TX and RX Preamble Length 354 -AT+SYNCWORD=0 ~-~--> Syncword(0: private,1: public) 355 -AT+RXMOD=65535,0 ~-~--> Rx Timeout and Reply mode 356 -AT+RXDAFORM=1** 357 -))) 358 - 359 - 360 -== 5.2 Example: LG01v2 == 361 - 362 -=== 5.2.1 Introduce for the example: === 363 - 364 - 365 -[[image:image-20221104102736-3.png||height="282" width="723"]] 366 - 367 - 368 -In this example, there are two devices: 369 - 370 -* **LA66 Shield + UNO + DHT11**: The UNO will get the temperature and humidity and broadcast the value via LoRa protocol. 371 -* **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. 372 - 373 -=== 5.2.2 Set Up LA66 Shield + UNO === 374 - 375 - 376 -==== **Set up LA66 Module** ==== 377 - 378 - 379 -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: 380 - 381 -((( 382 -(% style="color:red" %)**LA66 Shield as Sender: ** 383 - 384 -(% class="box infomessage" %) 385 -((( 386 -**LA66 Shield 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 289 +AT+FRE=868.100,868.100 ~-~--> TX and RX frequency 290 +AT+GROUPMOD=0,0 ~-~--> TX and RX group 291 +AT+BW=0,0 ~-~--> TX and RX Bandwidth 292 +AT+SF=12,12 ~-~--> TX and RX Spreading Factor 293 +AT+POWER=14 ~-~--> TX Power Range 392 392 AT+CRC=1,1 ~-~--> TX and RX CRC Type 393 393 AT+HEADER=0,0 ~-~--> TX and RX Header Type 394 394 AT+CR=1,1 ~-~--> TX and RX Coding Rate 395 395 AT+IQ=0,0 ~-~--> TX and RX InvertIQ 396 -AT+PREAMBLE=8,8 ~-~--> TX and RX Preamble Length set: 8298 +AT+PREAMBLE=8,8 ~-~--> TX and RX Preamble Length 397 397 AT+SYNCWORD=0 ~-~--> Syncword**(0: private,1: public)** 398 -AT+RXMOD=6,0 ~-~--> Rx Timeout and Reply mode 300 +AT+RXMOD=65535,0 ~-~--> Rx Timeout and Reply mode 301 +AT+RXDAFORM=1 399 399 ))) 400 -))) 401 401 402 402 305 +== **5.2 Example: LG01**-**V2 Peer-to-Peer** == 403 403 404 -==== **Set up Arduino UNO** ==== 405 405 406 - (%id="cke_bm_1033249S"style="display:none"%)** **308 +[[image:image-20221104102736-3.png||height="282" width="723"]] 407 407 408 -**Hardware Connection** 409 409 410 -(% class="box infomessage" %) 411 -((( 412 -**The DHT11 sensor connects to the LA66 Shield:** 311 +The user can run the AT command to set the LG01-V2 RX window always open as a Receiver, the LA66 Shield uses **AT+SEND=1,hello world,2,3** to simulate sending data, 413 413 414 -**VCC <~-~--> 3.3V (Red line)** 415 -**DATA <~-~--> PIN8 (Purple line)** 416 -**GND <~-~--> GND (White line)** 417 -))) 313 +**Prerequisites: **The configuration of LG01-V2 and LA66 Shield must match, users can use **AT+CFG** to check all configurations. 418 418 419 -[[image:image-20221108170731-5.png||height="588" width="441"]] 420 420 316 +(% style="color:red; font-weight:bold" %)**LG01-V**(% style="color:red" %)**2 as Receiver: (configured as AT+RXMOD=65535,2)** 421 421 318 +[[image:image-20221102140053-4.png]] 422 422 423 -===== **1. Open Arduino IDE** ===== 424 424 321 +(% style="color:red" %)**LA66 Shield as Sender: (AT+SEND=1,hello world,2,3)** 425 425 426 -[[image: image-20221108172149-6.png||height="650" width="542"]]323 +[[image:1667456058832-484.png||height="291" width="353"]] 427 427 428 428 326 +Instruction for Peer-to-Peer firmware:[[ **Instruction **>>url:http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LA66%20LoRaWAN%20Shield%20User%20Manual/Instruction%20for%20LA66%20Peer%20to%20Peer%20firmware/]] 327 +))) 429 429 430 -===== **2. Open project** ===== 431 431 330 +Users can import this example in node-red: **[[attach:serial USB.json||target="_blank"]]** 432 432 433 - Users can download Arduino files from this link:[[attach:Log-Temperature-Sensor-and-send-data-to-Node-red.ino||target="_blank"]]332 +[[image:image-20221104100520-2.png||height="605" width="1150"]] 434 434 435 -Then click Compile and Upload to LA66 Shield, 436 436 437 - [[image:image-20221108172432-7.png]]335 += (% style="color:inherit; font-family:inherit; font-size:29px" %)**6. How users can access LG01**(%%)**-V(% style="color:inherit; font-family:inherit; font-size:29px" %)2 using serial USB(%%)** = 438 438 439 439 338 +(% style="color:blue" %)**USB TTL to LG01-V2 Connection:** 440 440 441 -===== **3. Open the Serial Monitor to check the LA66 Shield data** ===== 442 442 341 +Port 1 of the UART on the LG01-V2 is GND 443 443 444 -The UNO will now reads the temperature and humidity data from the sensor and broadcast it via LoRa wireless, 445 - 446 -[[image:image-20221108174840-8.png||height="731" width="671"]] 447 - 448 - 449 - 450 -Sending out data as below. 451 - 452 -[[image:image-20221108175113-9.png||height="556" width="998"]] 453 - 454 - 455 -=== 5.2.3 Set Up LG01v2 === 456 - 457 - 458 -Configure LG01v2 LoRa channel parameters so it can get data from LA66 Shield 459 - 460 -(% style="color:red; font-weight:bold" %)**LG01v**(% style="color:red" %)**2 as Receiver: (configured as AT+RXMOD=65535,2)** 461 - 462 462 (% class="box infomessage" %) 463 463 ((( 464 -** LG01-V2configuration:**345 +**TXD <~-~--> UART RXD (Gray line)** 465 465 466 -AT+FRE=868.100,868.100 ~-~--> TX and RX frequency set: 868100000 467 -AT+BW=0,0 ~-~--> TX and RX Bandwidth set: 125kHz 468 -AT+SF=12,12 ~-~--> TX and RX Spreading Factor set: SF12 469 -AT+POWER=14 ~-~--> TX Power Range set: 14dBm 470 -AT+CRC=1,1 ~-~--> TX and RX CRC Type 471 -AT+HEADER=0,0 ~-~--> TX and RX Header Type 472 -AT+CR=1,1 ~-~--> TX and RX Coding Rate 473 -AT+IQ=0,0 ~-~--> TX and RX InvertIQ 474 -AT+PREAMBLE=8,8 ~-~--> TX and RX Preamble Length set: 8 475 -AT+SYNCWORD=0 ~-~--> Syncword**(0: private,1: public)** 476 -AT+RXMOD=65535,2 ~-~--> Rx Timeout and Reply mode, RX window always open**(0:No ACK, 1:Reply mode, 2:Send an ACK once got a message from another device. ACK Content is 0x00 FF )** 477 -))) 347 +**RXD <~-~--> UART TXD (White line)** 478 478 479 - 480 -=== 5.2.4 Test result === 481 - 482 - 483 -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).** 349 +**GND <~-~--> GND (Black line)** 484 484 ))) 485 485 486 -When LG01v2 replies with ACK when it receives a packet sent by LA66 sheild. 487 487 488 - [[image:image-20221108164413-2.png]]353 +**LG01-V2 UART connection photo** 489 489 355 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220804163015-1.png?width=466&height=621&rev=1.1||alt="image-20220804163015-1.png"]] 490 490 491 491 492 -In the real-time log of LG01v2: 493 493 494 -[[i mage:image-20221108170314-3.png]]359 +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: 495 495 496 496 497 - === 5.2.5 Plotdatachartn LG01v2362 +[[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"]] 498 498 364 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220804164747-2.png?width=594&height=622&rev=1.1||alt="image-20220804164747-2.png"]] 499 499 500 -User can plot the temperature and humidity chat via LG01v2 built-in IoT server. 501 501 502 - Usercanimportthis example in Node-Red: [[attach:Log-Temperature-Sensor-and-send-data-to-Node-red.json||target="_blank"]]367 += **7. FAQ** = 503 503 504 -[[image:image-20221108180334-10.png||height="651" width="1141"]] 505 505 370 +== **7.1 How does LG01-V2 communicate with Lora shield (LoRa.h)** == 506 506 507 -The temperature and humidity chart is displayed in the built-in node-red UI 508 508 509 - **Browserinput: (% style="background-color:yellow"%)__//http:~/~/<local-IPV4-address>//__(%%)**373 +This example describes how to use LG01-V2, LoRa Shield to set up a LoRa network 510 510 511 -[[image:image-20221108180458-11.png||height="402" width="1137"]] 512 - 513 - 514 - 515 -= 6. OTA System Update = 516 - 517 - 518 -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. 519 - 520 - 521 -= 7. FAQ = 522 - 523 -== 7.1 How does LG01v2 communicate with Lora shield (LoRa.h) == 524 - 525 - 526 -This example describes how to use LG01v2, LoRa Shield to set up a LoRa network, 527 - 528 528 [[image:image-20221103152238-8.png||height="251" width="654"]] 529 529 530 530 531 -(% style="color:red" %)**Prerequisites: The configurations of LG01 v2 and Lora shield must match**378 +(% style="color:red" %)**Prerequisites: The configurations of LG01-V2 and Lora shield must match** 532 532 533 -**LG01 v2 configuration:**380 +**LG01-V2 configuration:** 534 534 535 535 (% class="box infomessage" %) 536 536 ((( ... ... @@ -548,8 +548,6 @@ 548 548 AT+RXDAFORM=1 549 549 ))) 550 550 551 - 552 - 553 553 **Lora shield configuration:** 554 554 555 555 Lora Shield example: [[attach:LoRa_Shield_Sketch_For_MQTT.ino||target="_blank"]] , [[attach:arduino-LoRa-master.zip||target="_blank"]] ... ... @@ -557,195 +557,65 @@ 557 557 [[image:image-20221101161318-2.png]] 558 558 559 559 405 +**Test LG01-V2 to receive Lora Shield data:** 560 560 561 -**Test LG01v2 to receive Lora Shield data:** 562 - 563 563 [[image:image-20221101161951-3.png]] 564 564 565 565 410 +**Test the LG01-V2 to send data:** 566 566 567 -**Test the LG01v2 to send data:** 568 - 569 569 [[image:image-20221101162527-4.png]] 570 570 571 571 572 -= =7.2How doesLG01v2 communicatewithHeltecLoRaNode==415 += (% style="color:inherit; font-family:inherit; font-size:29px" %)**8. Supports**(%%) = 573 573 574 574 575 -This example describes how to use LG01v2 and Heltec LoRa Node to set up a LoRa network, 576 - 577 -[[image:image-20221112161111-2.png||height="258" width="692"]] 578 - 579 -(% style="color:red" %)**Prerequisites: The configurations of LG01v2 and Lora shield must match** 580 - 581 - 582 -**LG01v2 configuration:** 583 - 584 -(% class="box infomessage" %) 585 585 ((( 586 -AT+FRE=868.100,868.100 ~-~--> TX and RX frequency set: 868100000 587 -AT+BW=0,0 ~-~--> TX and RX Bandwidth set: 125kHz 588 -AT+SF=12,12 ~-~--> TX and RX Spreading Factor set: SF12 589 -AT+POWER=14 ~-~--> TX Power Range 590 -AT+CRC=1,1 ~-~--> TX and RX CRC Type 591 -AT+HEADER=0,0 ~-~--> TX and RX Header Type 592 -AT+CR=1,1 ~-~--> TX and RX Coding Rate 593 -AT+IQ=0,0 ~-~--> TX and RX InvertIQ 594 -AT+PREAMBLE=8,8 ~-~--> TX and RX Preamble Length set: 8 595 -AT+SYNCWORD=0 ~-~--> Syncword**(0: private,1: public), **the corresponding Lora shield syncword is 0x12 596 -AT+RXMOD=65535,0 ~-~--> Rx Timeout and Reply mode,RX window always open 597 -AT+RXDAFORM=1 ~-~--> RX data format**(0: Hex ,1: String)** 419 +**//If you are experiencing issues and can't solve them, you can send mail to [[support@dragino.com>>mailto:support@dragino.com]].//** 598 598 ))) 599 599 600 - 601 -After we upload the sketch to Heltec LoRa Node, we can see below output from Arduino. 602 - 603 -Lora Shield example: [[attach:LoRa_send_trial.ino||target="_blank"]] 604 - 605 -[[image:image-20221112162733-3.png||height="524" width="927"]] 606 - 607 - 608 -And we can see the logread of gateway as below, means the packet arrive gateway: 609 - 610 -[[image:image-20221112163119-4.png||height="808" width="560"]] 611 - 612 - 613 -== 7.3 How does LG01v2 communicate with LoRaWAN node == 614 - 615 - 616 -This example describes how to use LG01v2 and LSN50 to set up a network, 617 - 618 -In this case, users need to set LSN50 to work in ABP mode and transmit in only one frequency. 619 - 620 -Assume we have a LG01v2 working in the frequency 868100000 now, below is the steps. 621 - 622 - 623 -**Step1: **Configure the LG01v2 624 - 625 -(% class="box infomessage" %) 626 626 ((( 627 -AT+FRE=868.100,868.100 ~-~--> TX and RX frequency set: 868100000 628 -AT+BW=0,0 ~-~--> TX and RX Bandwidth set: 125kHz 629 -AT+SF=12,12 ~-~--> TX and RX Spreading Factor set: SF12 630 -AT+SYNCWORD=1 ~-~--> Syncword**(0: private,1: public), **the corresponding Lora shield syncword is 0x12 631 -))) 423 +**//With your question as detailed as possible. We will reply and help you in the shortest.//** 632 632 633 -**Step2: **Run AT commands to make the LSN50 work in Single frequency and ABP mode. Below are the AT commands: 634 634 635 -(% class="box infomessage" %) 636 -((( 637 -AT+FDR ~-~--> Reset Parameters to Factory Default, Keys Reserve 638 -AT+NJM=0 ~-~--> Set to ABP mode 639 -AT+ADR=0 ~-~--> Set the Adaptive Data Rate Off 640 -AT+DR=0 ~-~--> Set Data Rate (Set AT+DR=3 for 915 band) 641 -AT+TDC=300000 ~-~--> Set transmit interval to 5 minutes 642 -AT+CHS=868100000 ~-~--> Set transmit frequency to 868.1Mhz 643 -AT+DADDR=FFFFF111 ~-~--> Set Device Address to 26 01 1A F1 644 -ATZ ~-~--> Reset MCU 645 -))) 646 646 647 - **Step3:**Checkresult427 += **9. Reference** = 648 648 649 649 430 +* Install Tago Core: Refer **Install Tago Core in LPS8v2** in[[ Instruction>>doc:Main.Tago\.IO.WebHome]]. 431 +* [[Advance OS Reference Guide for LPS8v2>>doc:Main.Armbian OS instruction.WebHome]]. 650 650 651 -User can plot the temperature and humidity chat via LG01v2 built-in IoT server. 652 - 653 -User can import this example in Node-Red: [[attach:LG01v2_LSN50v2_S31.json||target="_blank"]] 654 - 655 - 656 -First the user needs to fill in the NwkSkey and AppSkey in the LoraWan Packet Decrypter node. 657 - 658 -[[image:image-20230620103535-2.png||height="591" width="1138"]] 659 - 660 -[[image:image-20230620103153-1.png||height="610" width="1141"]] 661 - 662 - 663 -The data will be displayed in the built-in node-red UI 664 - 665 -**Browser input: (% style="background-color:yellow" %)__//http:~/~/<local-IPV4-address>//__(%%)** 666 - 667 -[[image:image-20230620103923-3.png||height="476" width="1138"]] 668 - 669 - 670 -== 7.4 How can users factory reset LG01v2 == 671 - 672 - 673 -Users can download the image of LG01v2 from this link:[[dragino-lg01v2-1.7-0210>>https://www.dropbox.com/scl/fi/g0si61lcrvdjyto4ma951/dragino-lg01v2-1.7-0210.zip?rlkey=t03oqo493r2p7ign488rs2jsv&dl=0]] 674 - 675 - 676 -Then follow the steps in the link below to restore factory Settings to LG01v2: 677 - 678 -[[How to flash a new image(OS) to the gateway>>url:https://wiki.dragino.com/xwiki/bin/view/Main/Armbian%20OS%20instruction/#H2.3A0Howtoflashanewimage28OS29tothegateway28LPS8V229]] 679 - 680 - 681 -= 8. Trouble Shooting = 682 - 683 -== 8.1 Fallback IP does not work, how can users check == 684 - 685 - 686 -When the computer has completed the above fallback IP configuration,the LG01v2 Web UI is still not accessible via fallback IP. 687 - 688 - 689 -**1.Check whether the configuration is correct** 690 - 691 -Run the CMD command to ipconfig and ping 172.31.255.254. 692 - 693 -If this fails, the user needs to reconfigure. 694 - 695 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20230413170224-3.png?width=707&height=433&rev=1.1||alt="image-20230413170224-3.png"]] 696 - 697 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20230413170246-4.png?rev=1.1||alt="image-20230413170246-4.png"]] 698 - 699 - 700 -**2. Check whether the firewall is disabled** 701 - 702 -If the firewall is not down, this will affect access to the gateway. 703 - 704 - 705 -= (% style="color:inherit; font-family:inherit; font-size:29px" %)9. Supports(%%) = 706 - 707 - 708 -((( 709 -If you are experiencing issues and can't solve them, you can send mail to [[support@dragino.com>>mailto:support@dragino.com]]. 710 -))) 711 - 712 -((( 713 -With your question as detailed as possible. We will reply and help you in the shortest. 714 - 715 - 716 -= 10. Reference = 717 - 718 - 719 -* Install Tago Core: Refer **Install Tago Core in LG01v2** in[[ Instruction>>doc:Main.Tago\.IO.WebHome]]. 720 - 721 -* [[Advance OS Reference Guide for L>>doc:Main.Armbian OS instruction.WebHome]]G01v2. 722 - 723 723 724 724 ))) 725 725 726 -= 1 1. Order Info =436 += **10. Order Info** = 727 727 728 728 729 -(% style="color:#0000ff" %)**L G01v2-XXX-YYY**439 +(% style="color:#0000ff" %)**LPS8v2-XXX-YYY** 730 730 731 731 (% style="color:#0000ff" %)**XXX**(% style="color:black" %): Frequency Band 732 732 733 -* (% style="color:red" %)**868**(%%): For frequency : 863 ~~ 870Mhz 734 -* (% style="color:red" %)**915**(%%): For frequency : 902 ~~ 928Mhz 443 +* (% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band 444 +* (% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band 445 +* (% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band 446 +* (% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band 447 +* (% style="color:red" %)**US915**(%%): LoRaWAN US915 band 448 +* (% style="color:red" %)**IN865**(%%): LoRaWAN IN865 band 735 735 736 736 (% style="color:#0000ff" %)**YYY**(% style="color:black" %): 4G Cellular Option 737 737 738 -* (% style="color:red" %)**E C25-E**(%style="color:black"%):739 -* (% style="color:red" %)** EC25-AFX**(%style="color:black"%): America:Verizon,AT&T(FirstNet), U.S.Cellular; Canada: Telus740 -* (% style="color:red" %)** EC25-AUX**(%style="color:black"%): Latin America, New Zeland, Taiwan741 -* (% style="color:red" %)** EC25-J**(%style="color:black"%):,SoftBank,KDDI452 +* (% style="color:red" %)**E**(%%): EMEA, Korea, Thailand, India. 453 +* (% style="color:red" %)**A**(%%): North America/ Rogers/AT&T/T-Mobile. 454 +* (% style="color:red" %)**AU**(%%): Latin America, New Zeland, Taiwan 455 +* (% style="color:red" %)**J**(%%): Japan, DOCOMO/SoftBank/ KDDI 742 742 743 743 More info about valid bands, please see [[EC25-E product page>>url:https://www.quectel.com/product/ec25.htm]]. 744 744 745 745 746 -= 12. Manufacturer Info = 747 747 461 += **10. Manufacturer Info** = 748 748 463 + 749 749 **Shenzhen Dragino Technology Development co. LTD** 750 750 751 751 Room 202, Block B, BCT Incubation Bases (BaoChengTai), No.8 CaiYunRoad ... ... @@ -753,9 +753,10 @@ 753 753 LongCheng Street, LongGang District ; Shenzhen 518116,China 754 754 755 755 756 -= 13. FCC Warning = 757 757 472 += **11. FCC Warning** = 758 758 474 + 759 759 ((( 760 760 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: 761 761 ))) ... ... @@ -785,6 +785,7 @@ 785 785 ((( 786 786 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. 787 787 788 - 789 789 790 790 ))) 506 + 507 +~)~)~)
- LG01v2_LSN50v2_S31.json
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -16.5 KB - Content
-
... ... @@ -1,587 +1,0 @@ 1 -[ 2 - { 3 - "id": "5e07f5eeeb2a969b", 4 - "type": "tab", 5 - "label": "流程 1", 6 - "disabled": false, 7 - "info": "", 8 - "env": [] 9 - }, 10 - { 11 - "id": "9c26fa2f19e2b556", 12 - "type": "function", 13 - "z": "5e07f5eeeb2a969b", 14 - "name": "hex to base64", 15 - "func": "var input = msg.payload;\nvar base64 = Buffer.from(input, 'hex').toString('base64');\nmsg.payload = base64;\nreturn msg;", 16 - "outputs": 1, 17 - "noerr": 0, 18 - "initialize": "", 19 - "finalize": "", 20 - "libs": [], 21 - "x": 220, 22 - "y": 160, 23 - "wires": [ 24 - [ 25 - "075bc9172a4c6570", 26 - "3601a98894805fbe" 27 - ] 28 - ] 29 - }, 30 - { 31 - "id": "ee0480c81e66d657", 32 - "type": "function", 33 - "z": "5e07f5eeeb2a969b", 34 - "name": "function 4", 35 - "func": "var bytes = msg.payload[\"uplink_message\"]\nvar data = msg.payload[\"out\"]\nvar mode = (parseInt(data.substring(12, 14), 16) & 0x7C) >> 2;\nif (mode != 2)\n{\nvar bat = (parseInt(data.substring(0,4),16)&0x3FFF)/1000;\nvar TempC1 = (parseFloat(parseInt(data.substring(4, 8),16)/10).toFixed(2));\nvar ADC_CH0V = (parseInt(data.substring(8, 12), 16) ) / 1000;\nvar Digital_IStatus = (parseInt((data.substring(8, 12),16) & 0x02))?\"H\":\"L\"; \n\nif (mode != 6) {\n\n var EXTI_Trigger = ((parseInt(data.substring(12, 14), 16) & 0x01))? \"TRUE\" : \"FALSE\";\n\n var Door_status = ((parseInt(data.substring(12, 14), 16) & 0x80))? \"CLOSE\" : \"OPEN\";\n\n}\n}\nif (mode == 0) {\n\n var Work_mode = \"IIC\";\n\n if ((parseInt(data.substring(18, 22), 16)) == 0){\n\n var Illum = (parseInt(data.substring(8, 12), 16));\n\n }\n\n else {\n\n var TempC_SHT = parseFloat(((parseInt(data.substring(14, 18), 16)) / 10).toFixed(2));\n\n var Hum_SHT = parseFloat((((parseInt(data.substring(18, 22), 16))) / 10).toFixed(1));\n\n }\n \n}\n\nelse if (mode == 1) {\n\n var Work_mode = \" Distance\";\n\n var Distance_cm = parseFloat((((parseInt(data.substring(14, 18), 16))) / 10).toFixed(1));\n\n if (((parseInt(data.substring(18, 22), 16))) != 65535){\n\n var Distance_signal_strength = parseFloat(((parseInt(data.substring(18, 22), 16))).toFixed(0));\n\n }\n\n}\n\nelse if (mode == 2) {\n\n var Work_mode = \" 3ADC\";\n\n var BatV = (parseInt(data.substring(18, 22), 16)) / 10;\n\n var ADC_CH0V = ((parseInt(data.substring(0, 4), 16))) / 1000;\n\n var ADC_CH1V = ((parseInt(data.substring(4, 8), 16))) / 1000;\n\n var ADC_CH4V = ((parseInt(data.substring(8, 12), 16))) / 1000;\n\n var Digital_IStatus = ((parseInt(data.substring(12, 14), 16)) & 0x02) ? \"H\" : \"L\";\n\n var EXTI_Trigger = ((parseInt(data.substring(12, 14), 16)) & 0x01) ? \"TRUE\" : \"FALSE\";\n\n var Door_status = ((parseInt(data.substring(13, 14), 16)) & 0x80) ? \"CLOSE\" : \"OPEN\";\n\n if ((parseInt(data.substring(18, 22), 16) === 0)) {\n\n var Illum = ((parseInt(data.substring(14, 18), 16)));\n\n }\n\n else {\n\n var TempC_SHT = parseFloat((((parseInt(data.substring(14, 18), 16))) / 10).toFixed(2));\n\n var Hum_SHT = parseFloat((((parseInt(data.substring(18, 24), 16))) / 10).toFixed(1));\n\n }\n\n}\n\nelse if (mode == 3) {\n\n var Work_mode = \"3DS18B20\";\n\n var TempC2 = parseFloat((((parseInt(data.substring(14, 18), 16))) / 10).toFixed(2));\n\n var TempC3 = parseFloat((((parseInt(data.substring(18, 24), 16))) / 10).toFixed(1));\n\n\n\n}\n\nelse if (mode == 4) {\n\n var Work_mode = \"Weight\";\n\n var Weight = ((parseInt(data.substring(14, 18), 16)));\n\n}\n\nelse if (mode == 5) {\n\n var Work_mode = \"Count\";\n\n var Count = ((parseInt(data.substring(14, 22), 16)));\n\n}\n\n\n\nvar b = { payload: bat }, c = { payload: TempC1 }, d = { payload: ADC_CH0V }, e = { payload: Digital_IStatus }, f = { payload: EXTI_Trigger }, g = { payload: Door_status }, j = { payload: TempC_SHT }, s = { payload: Hum_SHT }, k = { payload: Work_mode };\nreturn [b,c,d,e,f,g,j,k,s];", 36 - "outputs": 9, 37 - "noerr": 0, 38 - "initialize": "", 39 - "finalize": "", 40 - "libs": [], 41 - "x": 660, 42 - "y": 300, 43 - "wires": [ 44 - [ 45 - "fd22b92d2b8de0fb" 46 - ], 47 - [ 48 - "3307256a4e1ea53a" 49 - ], 50 - [ 51 - "a3fd8302ec399e31" 52 - ], 53 - [ 54 - "c7d1f63ff5f0026a" 55 - ], 56 - [ 57 - "159967056da52706" 58 - ], 59 - [ 60 - "a21581a41adc1714" 61 - ], 62 - [ 63 - "7bb78b78445ac9e3" 64 - ], 65 - [ 66 - "0364752170ed6228" 67 - ], 68 - [ 69 - "65293155d71d54b9" 70 - ] 71 - ] 72 - }, 73 - { 74 - "id": "e763b293d42dbdd5", 75 - "type": "change", 76 - "z": "5e07f5eeeb2a969b", 77 - "name": "", 78 - "rules": [ 79 - { 80 - "t": "change", 81 - "p": "payload", 82 - "pt": "msg", 83 - "from": "Data: (HEX:)", 84 - "fromt": "str", 85 - "to": "", 86 - "tot": "str" 87 - }, 88 - { 89 - "t": "change", 90 - "p": "payload", 91 - "pt": "msg", 92 - "from": " ", 93 - "fromt": "str", 94 - "to": "", 95 - "tot": "str" 96 - } 97 - ], 98 - "action": "", 99 - "property": "", 100 - "from": "", 101 - "to": "", 102 - "reg": false, 103 - "x": 420, 104 - "y": 60, 105 - "wires": [ 106 - [ 107 - "9c26fa2f19e2b556", 108 - "416a930e89291528" 109 - ] 110 - ] 111 - }, 112 - { 113 - "id": "075bc9172a4c6570", 114 - "type": "lorawan-packet-decrypt-nwkey-appkey", 115 - "z": "5e07f5eeeb2a969b", 116 - "name": "FFFFF111", 117 - "nsw": "CCFFFFFFFFFFFFFFFFFFFFFFFFFFFFAA", 118 - "asw": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCC", 119 - "x": 510, 120 - "y": 160, 121 - "wires": [ 122 - [ 123 - "ee0480c81e66d657" 124 - ] 125 - ] 126 - }, 127 - { 128 - "id": "13dc77a4e2bb4f72", 129 - "type": "serial in", 130 - "z": "5e07f5eeeb2a969b", 131 - "name": "", 132 - "serial": "bb1c0e81fd51fa9e", 133 - "x": 190, 134 - "y": 60, 135 - "wires": [ 136 - [ 137 - "e763b293d42dbdd5" 138 - ] 139 - ] 140 - }, 141 - { 142 - "id": "3307256a4e1ea53a", 143 - "type": "ui_chart", 144 - "z": "5e07f5eeeb2a969b", 145 - "name": "", 146 - "group": "c1fddd37879528e5", 147 - "order": 1, 148 - "width": 0, 149 - "height": 0, 150 - "label": "TempC1", 151 - "chartType": "line", 152 - "legend": "false", 153 - "xformat": "HH:mm:ss", 154 - "interpolate": "linear", 155 - "nodata": "", 156 - "dot": false, 157 - "ymin": "", 158 - "ymax": "", 159 - "removeOlder": 1, 160 - "removeOlderPoints": "", 161 - "removeOlderUnit": "3600", 162 - "cutout": 0, 163 - "useOneColor": false, 164 - "useUTC": false, 165 - "colors": [ 166 - "#1f77b4", 167 - "#aec7e8", 168 - "#ff7f0e", 169 - "#2ca02c", 170 - "#98df8a", 171 - "#d62728", 172 - "#ff9896", 173 - "#9467bd", 174 - "#c5b0d5" 175 - ], 176 - "outputs": 1, 177 - "useDifferentColor": false, 178 - "className": "", 179 - "x": 940, 180 - "y": 160, 181 - "wires": [ 182 - [] 183 - ] 184 - }, 185 - { 186 - "id": "a3fd8302ec399e31", 187 - "type": "ui_chart", 188 - "z": "5e07f5eeeb2a969b", 189 - "name": "", 190 - "group": "6d46fdae9f413f7b", 191 - "order": 1, 192 - "width": 0, 193 - "height": 0, 194 - "label": "ADC_CH0V", 195 - "chartType": "line", 196 - "legend": "false", 197 - "xformat": "HH:mm:ss", 198 - "interpolate": "linear", 199 - "nodata": "", 200 - "dot": false, 201 - "ymin": "", 202 - "ymax": "", 203 - "removeOlder": 1, 204 - "removeOlderPoints": "", 205 - "removeOlderUnit": "3600", 206 - "cutout": 0, 207 - "useOneColor": false, 208 - "useUTC": false, 209 - "colors": [ 210 - "#1f77b4", 211 - "#aec7e8", 212 - "#ff7f0e", 213 - "#2ca02c", 214 - "#98df8a", 215 - "#d62728", 216 - "#ff9896", 217 - "#9467bd", 218 - "#c5b0d5" 219 - ], 220 - "outputs": 1, 221 - "useDifferentColor": false, 222 - "className": "", 223 - "x": 950, 224 - "y": 200, 225 - "wires": [ 226 - [] 227 - ] 228 - }, 229 - { 230 - "id": "fd22b92d2b8de0fb", 231 - "type": "ui_chart", 232 - "z": "5e07f5eeeb2a969b", 233 - "name": "", 234 - "group": "bb5657c2a8c290a3", 235 - "order": 1, 236 - "width": 0, 237 - "height": 0, 238 - "label": "BatV", 239 - "chartType": "line", 240 - "legend": "false", 241 - "xformat": "HH:mm:ss", 242 - "interpolate": "linear", 243 - "nodata": "", 244 - "dot": false, 245 - "ymin": "", 246 - "ymax": "", 247 - "removeOlder": 1, 248 - "removeOlderPoints": "", 249 - "removeOlderUnit": "3600", 250 - "cutout": 0, 251 - "useOneColor": false, 252 - "useUTC": false, 253 - "colors": [ 254 - "#1f77b4", 255 - "#aec7e8", 256 - "#ff7f0e", 257 - "#2ca02c", 258 - "#98df8a", 259 - "#d62728", 260 - "#ff9896", 261 - "#9467bd", 262 - "#c5b0d5" 263 - ], 264 - "outputs": 1, 265 - "useDifferentColor": false, 266 - "className": "", 267 - "x": 930, 268 - "y": 120, 269 - "wires": [ 270 - [] 271 - ] 272 - }, 273 - { 274 - "id": "c7d1f63ff5f0026a", 275 - "type": "ui_text", 276 - "z": "5e07f5eeeb2a969b", 277 - "group": "528e965cef294158", 278 - "order": 0, 279 - "width": "6", 280 - "height": "4", 281 - "name": "", 282 - "label": "Digital_IStatus", 283 - "format": "{{msg.payload}}", 284 - "layout": "col-center", 285 - "className": "", 286 - "x": 960, 287 - "y": 240, 288 - "wires": [] 289 - }, 290 - { 291 - "id": "159967056da52706", 292 - "type": "ui_text", 293 - "z": "5e07f5eeeb2a969b", 294 - "group": "5e615e3edb5999a0", 295 - "order": 0, 296 - "width": "6", 297 - "height": "4", 298 - "name": "", 299 - "label": "EXTI_Trigger", 300 - "format": "{{msg.payload}}", 301 - "layout": "col-center", 302 - "className": "", 303 - "x": 950, 304 - "y": 280, 305 - "wires": [] 306 - }, 307 - { 308 - "id": "7bb78b78445ac9e3", 309 - "type": "ui_chart", 310 - "z": "5e07f5eeeb2a969b", 311 - "name": "", 312 - "group": "5f7fec85295a7f7c", 313 - "order": 0, 314 - "width": 0, 315 - "height": 0, 316 - "label": "TempC_SHT", 317 - "chartType": "line", 318 - "legend": "false", 319 - "xformat": "HH:mm:ss", 320 - "interpolate": "linear", 321 - "nodata": "", 322 - "dot": false, 323 - "ymin": "", 324 - "ymax": "", 325 - "removeOlder": 1, 326 - "removeOlderPoints": "", 327 - "removeOlderUnit": "3600", 328 - "cutout": 0, 329 - "useOneColor": false, 330 - "useUTC": false, 331 - "colors": [ 332 - "#1f77b4", 333 - "#aec7e8", 334 - "#ff7f0e", 335 - "#2ca02c", 336 - "#98df8a", 337 - "#d62728", 338 - "#ff9896", 339 - "#9467bd", 340 - "#c5b0d5" 341 - ], 342 - "outputs": 1, 343 - "useDifferentColor": false, 344 - "className": "", 345 - "x": 950, 346 - "y": 360, 347 - "wires": [ 348 - [] 349 - ] 350 - }, 351 - { 352 - "id": "0364752170ed6228", 353 - "type": "ui_text", 354 - "z": "5e07f5eeeb2a969b", 355 - "group": "3cb616f18674c42a", 356 - "order": 0, 357 - "width": "6", 358 - "height": "4", 359 - "name": "", 360 - "label": "Work_mode", 361 - "format": "{{msg.payload}}", 362 - "layout": "col-center", 363 - "className": "", 364 - "x": 950, 365 - "y": 400, 366 - "wires": [] 367 - }, 368 - { 369 - "id": "65293155d71d54b9", 370 - "type": "ui_chart", 371 - "z": "5e07f5eeeb2a969b", 372 - "name": "", 373 - "group": "bb2e35e7a931c198", 374 - "order": 0, 375 - "width": 0, 376 - "height": 0, 377 - "label": "Hum_SHT", 378 - "chartType": "line", 379 - "legend": "false", 380 - "xformat": "HH:mm:ss", 381 - "interpolate": "linear", 382 - "nodata": "", 383 - "dot": false, 384 - "ymin": "", 385 - "ymax": "", 386 - "removeOlder": 1, 387 - "removeOlderPoints": "", 388 - "removeOlderUnit": "3600", 389 - "cutout": 0, 390 - "useOneColor": false, 391 - "useUTC": false, 392 - "colors": [ 393 - "#1f77b4", 394 - "#aec7e8", 395 - "#ff7f0e", 396 - "#2ca02c", 397 - "#98df8a", 398 - "#d62728", 399 - "#ff9896", 400 - "#9467bd", 401 - "#c5b0d5" 402 - ], 403 - "outputs": 1, 404 - "useDifferentColor": false, 405 - "className": "", 406 - "x": 950, 407 - "y": 440, 408 - "wires": [ 409 - [] 410 - ] 411 - }, 412 - { 413 - "id": "a21581a41adc1714", 414 - "type": "ui_text", 415 - "z": "5e07f5eeeb2a969b", 416 - "group": "9109ae41eee353df", 417 - "order": 0, 418 - "width": "6", 419 - "height": "4", 420 - "name": "", 421 - "label": "Door_status", 422 - "format": "{{msg.payload}}", 423 - "layout": "col-center", 424 - "className": "", 425 - "x": 950, 426 - "y": 320, 427 - "wires": [] 428 - }, 429 - { 430 - "id": "416a930e89291528", 431 - "type": "debug", 432 - "z": "5e07f5eeeb2a969b", 433 - "name": "debug 2", 434 - "active": true, 435 - "tosidebar": true, 436 - "console": false, 437 - "tostatus": false, 438 - "complete": "false", 439 - "statusVal": "", 440 - "statusType": "auto", 441 - "x": 660, 442 - "y": 60, 443 - "wires": [] 444 - }, 445 - { 446 - "id": "3601a98894805fbe", 447 - "type": "debug", 448 - "z": "5e07f5eeeb2a969b", 449 - "name": "debug 3", 450 - "active": true, 451 - "tosidebar": true, 452 - "console": false, 453 - "tostatus": false, 454 - "complete": "false", 455 - "statusVal": "", 456 - "statusType": "auto", 457 - "x": 380, 458 - "y": 240, 459 - "wires": [] 460 - }, 461 - { 462 - "id": "bb1c0e81fd51fa9e", 463 - "type": "serial-port", 464 - "serialport": "/dev/ttyUSB0", 465 - "serialbaud": "9600", 466 - "databits": "8", 467 - "parity": "none", 468 - "stopbits": "1", 469 - "waitfor": "", 470 - "dtr": "none", 471 - "rts": "none", 472 - "cts": "none", 473 - "dsr": "none", 474 - "newline": "\\n", 475 - "bin": "false", 476 - "out": "char", 477 - "addchar": "\\r\\n", 478 - "responsetimeout": "10000" 479 - }, 480 - { 481 - "id": "c1fddd37879528e5", 482 - "type": "ui_group", 483 - "name": "BatV", 484 - "tab": "abb98f80600a5448", 485 - "order": 1, 486 - "disp": true, 487 - "width": "6", 488 - "collapse": false, 489 - "className": "" 490 - }, 491 - { 492 - "id": "6d46fdae9f413f7b", 493 - "type": "ui_group", 494 - "name": "ADC_CH0V", 495 - "tab": "abb98f80600a5448", 496 - "order": 1, 497 - "disp": true, 498 - "width": "6", 499 - "collapse": false, 500 - "className": "" 501 - }, 502 - { 503 - "id": "bb5657c2a8c290a3", 504 - "type": "ui_group", 505 - "name": "BatV", 506 - "tab": "abb98f80600a5448", 507 - "order": 3, 508 - "disp": true, 509 - "width": "6", 510 - "collapse": false, 511 - "className": "" 512 - }, 513 - { 514 - "id": "528e965cef294158", 515 - "type": "ui_group", 516 - "name": "Digital_IStatus", 517 - "tab": "abb98f80600a5448", 518 - "order": 4, 519 - "disp": true, 520 - "width": "6", 521 - "collapse": false, 522 - "className": "" 523 - }, 524 - { 525 - "id": "5e615e3edb5999a0", 526 - "type": "ui_group", 527 - "name": "EXTI_Trigger", 528 - "tab": "abb98f80600a5448", 529 - "order": 5, 530 - "disp": true, 531 - "width": "6", 532 - "collapse": false, 533 - "className": "" 534 - }, 535 - { 536 - "id": "5f7fec85295a7f7c", 537 - "type": "ui_group", 538 - "name": "TempC_SHT", 539 - "tab": "abb98f80600a5448", 540 - "order": 6, 541 - "disp": true, 542 - "width": "6", 543 - "collapse": false, 544 - "className": "" 545 - }, 546 - { 547 - "id": "3cb616f18674c42a", 548 - "type": "ui_group", 549 - "name": "Work_mode", 550 - "tab": "abb98f80600a5448", 551 - "order": 7, 552 - "disp": true, 553 - "width": "6", 554 - "collapse": false, 555 - "className": "" 556 - }, 557 - { 558 - "id": "bb2e35e7a931c198", 559 - "type": "ui_group", 560 - "name": "Hum_SHT", 561 - "tab": "abb98f80600a5448", 562 - "order": 8, 563 - "disp": true, 564 - "width": "6", 565 - "collapse": false, 566 - "className": "" 567 - }, 568 - { 569 - "id": "9109ae41eee353df", 570 - "type": "ui_group", 571 - "name": "Door_status", 572 - "tab": "abb98f80600a5448", 573 - "order": 9, 574 - "disp": true, 575 - "width": "6", 576 - "collapse": false, 577 - "className": "" 578 - }, 579 - { 580 - "id": "abb98f80600a5448", 581 - "type": "ui_tab", 582 - "name": "LSN50v2 S31", 583 - "icon": "LSN50v2 S31", 584 - "disabled": false, 585 - "hidden": false 586 - } 587 -]
- LoRa_send_trial.ino
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -3.4 KB - Content
-
... ... @@ -1,124 +1,0 @@ 1 -#include "LoRaWan_APP.h" 2 -#include "Arduino.h" 3 - 4 - 5 -#define RF_FREQUENCY 868100000 // Hz 6 - 7 -#define TX_OUTPUT_POWER 5 // dBm 8 - 9 -#define LORA_BANDWIDTH 0 // [0: 125 kHz, 10 - // 1: 250 kHz, 11 - // 2: 500 kHz, 12 - // 3: Reserved] 13 -#define LORA_SPREADING_FACTOR 12 // [SF7..SF12] 14 -#define LORA_CODINGRATE 1 // [1: 4/5, 15 - // 2: 4/6, 16 - // 3: 4/7, 17 - // 4: 4/8] 18 -#define LORA_PREAMBLE_LENGTH 8 // Same for Tx and Rx 19 -#define LORA_SYMBOL_TIMEOUT 0 // Symbols 20 -#define LORA_FIX_LENGTH_PAYLOAD_ON false 21 -#define LORA_IQ_INVERSION_ON false 22 - 23 - 24 -#define RX_TIMEOUT_VALUE 1000 25 -#define BUFFER_SIZE 30 // Define the payload size here 26 - 27 -float tem,hum; 28 -char tem_1[8]={"\0"},hum_1[8]={"\0"}; 29 -char *node_id = "<GW01>"; //From LG01 via web Local Channel settings on MQTT.Please refer <> dataformat in here. 30 - 31 -char txpacket[BUFFER_SIZE]; 32 -char rxpacket[BUFFER_SIZE]; 33 - 34 -double txNumber; 35 - 36 -bool lora_idle=true; 37 - 38 -static RadioEvents_t RadioEvents; 39 -void OnTxDone( void ); 40 -void OnTxTimeout( void ); 41 - 42 -void dhtTem() 43 -{ 44 - tem = random(15,40); 45 - hum = random(40,80); 46 - Serial.println(F("The temperature and humidity:")); 47 - Serial.print("["); 48 - Serial.print(tem); 49 - Serial.print("℃"); 50 - Serial.print(","); 51 - Serial.print(hum); 52 - Serial.print("%"); 53 - Serial.print("]"); 54 - Serial.println(""); 55 -} 56 - 57 -void dhtWrite() 58 -{ 59 - char data[50] = "\0"; 60 - for(int i = 0; i < 50; i++) 61 - { 62 - data[i] = node_id[i]; 63 - } 64 - 65 - dtostrf(tem,0,1,tem_1); 66 - dtostrf(hum,0,1,hum_1); 67 - 68 - strcat(data,"tem_a="); 69 - strcat(data,tem_1); 70 - strcat(data,"&hum_a="); 71 - strcat(data,hum_1); 72 - strcpy((char *)txpacket,data); 73 - 74 - Serial.println((char *)txpacket); 75 -} 76 - 77 -void setup() { 78 - Serial.begin(115200); 79 - Mcu.begin(); 80 - 81 - txNumber=0; 82 - 83 - RadioEvents.TxDone = OnTxDone; 84 - RadioEvents.TxTimeout = OnTxTimeout; 85 - 86 - Radio.Init( &RadioEvents ); 87 - Radio.SetChannel( RF_FREQUENCY ); 88 - Radio.SetTxConfig( MODEM_LORA, TX_OUTPUT_POWER, 0, LORA_BANDWIDTH, 89 - LORA_SPREADING_FACTOR, LORA_CODINGRATE, 90 - LORA_PREAMBLE_LENGTH, LORA_FIX_LENGTH_PAYLOAD_ON, 91 - true, 0, 0, LORA_IQ_INVERSION_ON, 3000 ); 92 - } 93 - 94 - 95 - 96 -void loop() 97 -{ 98 - if(lora_idle == true) 99 - { 100 - delay(5000); 101 - txNumber += 0.01; 102 - Serial.println(txNumber); 103 - 104 - dhtTem(); 105 - dhtWrite(); 106 - Radio.Send( (uint8_t *)txpacket, strlen(txpacket) ); //send the package out 107 - lora_idle = false; 108 - } 109 - Radio.IrqProcess( ); 110 -} 111 - 112 -void OnTxDone( void ) 113 -{ 114 - Serial.println("TX done......"); 115 - lora_idle = true; 116 -} 117 - 118 -void OnTxTimeout( void ) 119 -{ 120 - Radio.Sleep( ); 121 - Serial.println("TX Timeout......"); 122 - lora_idle = true; 123 -} 124 -
- Log-Temperature-Sensor-and-send-data-to-Node-red.ino
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -3.6 KB - Content
-
... ... @@ -1,150 +1,0 @@ 1 -#include <SoftwareSerial.h> 2 -#include <Adafruit_Sensor.h> 3 -#include <DHT.h> 4 -#include <DHT_U.h> 5 -/* 6 - 7 -*/ 8 -#define DHTPIN 8 // Digital pin connected to the DHT sensor 9 -#define DHTTYPE DHT11 // DHT 11 10 -DHT_Unified dht(DHTPIN, DHTTYPE); 11 - 12 -String inputString = ""; // a String to hold incoming data 13 -bool stringComplete = false; // whether the string is complete 14 - 15 -long old_time=millis(); 16 -long new_time; 17 - 18 -long uplink_interval=30000; //ms 19 - 20 -float DHT11_temp; 21 -float DHT11_hum; 22 - 23 -SoftwareSerial ss(10, 11); // Arduino RX, TX , 24 - 25 -char rxbuff[128]; 26 -uint8_t rxbuff_index=0; 27 - 28 -void setup() { 29 - // initialize serial 30 - Serial.begin(9600); 31 - 32 - ss.begin(9600); 33 - ss.listen(); 34 - 35 - // reserve 200 bytes for the inputString: 36 - inputString.reserve(200); 37 - 38 - dht.begin(); 39 - sensor_t sensor; 40 - dht.temperature().getSensor(&sensor); 41 - dht.humidity().getSensor(&sensor); 42 - 43 - ss.println("ATZ");//reset LA66 44 -} 45 - 46 -void loop() { 47 - 48 - while ( ss.available()) { 49 - // get the new byte: 50 - char inChar = (char) ss.read(); 51 - // add it to the inputString: 52 - inputString += inChar; 53 - 54 - rxbuff[rxbuff_index++]=inChar; 55 - 56 - if(rxbuff_index>128) 57 - { 58 - rxbuff[rxbuff_index]='\0'; 59 - rxbuff_index=0; 60 - break; 61 - } 62 - 63 - // if the incoming character is a newline, set a flag so the main loop can 64 - // do something about it: 65 - if (inChar == '\n' || inChar == '\r') { 66 - stringComplete = true; 67 - rxbuff[rxbuff_index]='\0'; 68 - rxbuff_index=0; 69 - } 70 - } 71 - 72 - while ( Serial.available()) { 73 - // get the new byte: 74 - char inChar = (char) Serial.read(); 75 - // add it to the inputString: 76 - inputString += inChar; 77 - // if the incoming character is a newline, set a flag so the main loop can 78 - // do something about it: 79 - if (inChar == '\n' || inChar == '\r') { 80 - ss.print(inputString); 81 - inputString = "\0"; 82 - } 83 - } 84 - 85 - // print the string when a newline arrives: 86 - if (stringComplete) { 87 - Serial.print(inputString); 88 - 89 - // clear the string: 90 - inputString = "\0"; 91 - stringComplete = false; 92 - } 93 - 94 - new_time = millis(); 95 - 96 - if(new_time-old_time>=uplink_interval){ 97 - old_time = new_time; 98 - 99 - Serial.print(F("\r\n")); 100 - // Get temperature event and print its value. 101 - sensors_event_t event; 102 - dht.temperature().getEvent(&event); 103 - if (isnan(event.temperature)) { 104 - Serial.println(F("Error reading temperature!")); 105 - DHT11_temp=327.67; 106 - } 107 - else { 108 - DHT11_temp=event.temperature; 109 - 110 - if(DHT11_temp>60){ 111 - DHT11_temp=60; 112 - } 113 - else if(DHT11_temp<-20){ 114 - DHT11_temp=-20; 115 - } 116 - } 117 - // Get humidity event and print its value. 118 - dht.humidity().getEvent(&event); 119 - if (isnan(event.relative_humidity)) { 120 - DHT11_hum=327.67; 121 - Serial.println(F("Error reading humidity!")); 122 - } 123 - else { 124 - DHT11_hum=event.relative_humidity; 125 - 126 - if(DHT11_hum>100){ 127 - DHT11_hum=100; 128 - } 129 - else if(DHT11_hum<0){ 130 - DHT11_hum=0; 131 - } 132 - } 133 - 134 - Serial.print(F("Temperature: ")); 135 - Serial.print(DHT11_temp); 136 - Serial.println(F("°C")); 137 - Serial.print(F("Humidity: ")); 138 - Serial.print(DHT11_hum); 139 - Serial.println(F("%")); 140 - Serial.print(F("\r\n")); 141 - 142 - char sensor_data_buff[128]="\0"; 143 - 144 - //confirm status,Fport,payload length,payload(HEX) 145 - snprintf(sensor_data_buff,128,"AT+SEND=0,%02X%02X%02X%02X,0,0",(short)(DHT11_temp*100)>>8 & 0xFF,(short)(DHT11_temp*100) & 0xFF,(short)(DHT11_hum*10)>>8 & 0xFF,(short)(DHT11_hum*10) & 0xFF); 146 - ss.print(sensor_data_buff); 147 - ss.print('\r'); 148 - } 149 -} 150 -
- Log-Temperature-Sensor-and-send-data-to-Node-red.json
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -10.3 KB - Content
-
... ... @@ -1,443 +1,0 @@ 1 -[ 2 - { 3 - "id": "0a211e08511c4bdd", 4 - "type": "tab", 5 - "label": "serial USB", 6 - "disabled": false, 7 - "info": "", 8 - "env": [] 9 - }, 10 - { 11 - "id": "4a97eeb54bf57a6d", 12 - "type": "serial in", 13 - "z": "0a211e08511c4bdd", 14 - "name": "", 15 - "serial": "bb1c0e81fd51fa9e", 16 - "x": 210, 17 - "y": 60, 18 - "wires": [ 19 - [ 20 - "d2493fb9752dbcab", 21 - "d183c255973c979e" 22 - ] 23 - ] 24 - }, 25 - { 26 - "id": "12f1eeb8049675c1", 27 - "type": "inject", 28 - "z": "0a211e08511c4bdd", 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 - "a5d2f5df63a2148e" 47 - ] 48 - ] 49 - }, 50 - { 51 - "id": "a5d2f5df63a2148e", 52 - "type": "serial out", 53 - "z": "0a211e08511c4bdd", 54 - "name": "", 55 - "serial": "bb1c0e81fd51fa9e", 56 - "x": 540, 57 - "y": 260, 58 - "wires": [] 59 - }, 60 - { 61 - "id": "dc04c04a0bc0e5db", 62 - "type": "inject", 63 - "z": "0a211e08511c4bdd", 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 - "a5d2f5df63a2148e" 82 - ] 83 - ] 84 - }, 85 - { 86 - "id": "3de96a220e28e8f0", 87 - "type": "inject", 88 - "z": "0a211e08511c4bdd", 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 - "a5d2f5df63a2148e" 107 - ] 108 - ] 109 - }, 110 - { 111 - "id": "638725a47a1e4365", 112 - "type": "inject", 113 - "z": "0a211e08511c4bdd", 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 - "a5d2f5df63a2148e" 132 - ] 133 - ] 134 - }, 135 - { 136 - "id": "85ba9868d1f3e82c", 137 - "type": "inject", 138 - "z": "0a211e08511c4bdd", 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 - "a5d2f5df63a2148e" 157 - ] 158 - ] 159 - }, 160 - { 161 - "id": "144b2749013ffe57", 162 - "type": "inject", 163 - "z": "0a211e08511c4bdd", 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 - "a5d2f5df63a2148e" 182 - ] 183 - ] 184 - }, 185 - { 186 - "id": "bfb2e9df89dc5e2f", 187 - "type": "inject", 188 - "z": "0a211e08511c4bdd", 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 - "a5d2f5df63a2148e" 207 - ] 208 - ] 209 - }, 210 - { 211 - "id": "d2493fb9752dbcab", 212 - "type": "function", 213 - "z": "0a211e08511c4bdd", 214 - "name": "function 1", 215 - "func": "var data = msg.payload\nif (data.substring(0, 4) == \"Data\") {\n if (data.substring(6, 12) == \"(HEX:)\") {\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 if (data.substring(6, 15) == \"(String:)\") {\n var temp = data.substring(20, 24)\n var hum = data.substring(29, 34)\n a1 = { payload: temp }, a2 = { payload: hum }\n }\n}\nif (data.substring(0, 4) == \"Rssi\") {\n var rssi = data.substring(6)\n var a3 = { payload: rssi }\n}\nreturn [a1, a2, a3];", 216 - "outputs": 3, 217 - "noerr": 0, 218 - "initialize": "", 219 - "finalize": "", 220 - "libs": [], 221 - "x": 420, 222 - "y": 60, 223 - "wires": [ 224 - [ 225 - "c17d94be4317ae6c" 226 - ], 227 - [ 228 - "20c5b1c7f42fa6bb" 229 - ], 230 - [ 231 - "39a8462f3d748eef" 232 - ] 233 - ] 234 - }, 235 - { 236 - "id": "39a8462f3d748eef", 237 - "type": "ui_chart", 238 - "z": "0a211e08511c4bdd", 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": "c17d94be4317ae6c", 281 - "type": "ui_chart", 282 - "z": "0a211e08511c4bdd", 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": "20c5b1c7f42fa6bb", 325 - "type": "ui_chart", 326 - "z": "0a211e08511c4bdd", 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": "d183c255973c979e", 369 - "type": "debug", 370 - "z": "0a211e08511c4bdd", 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 -]
- Log-Temperature-Sensor-and-send-data-to-node-red.json
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -10.1 KB - Content
-
... ... @@ -1,443 +1,0 @@ 1 -[ 2 - { 3 - "id": "5f10779accc05655", 4 - "type": "tab", 5 - "label": "serial USB", 6 - "disabled": false, 7 - "info": "", 8 - "env": [] 9 - }, 10 - { 11 - "id": "4ea60ce4df40717c", 12 - "type": "serial in", 13 - "z": "5f10779accc05655", 14 - "name": "", 15 - "serial": "bb1c0e81fd51fa9e", 16 - "x": 210, 17 - "y": 60, 18 - "wires": [ 19 - [ 20 - "40eac96a52733f7a", 21 - "79722a224bb22c96" 22 - ] 23 - ] 24 - }, 25 - { 26 - "id": "fe5a93a52b6adcf1", 27 - "type": "inject", 28 - "z": "5f10779accc05655", 29 - "name": "AT+SEND=1,hello world,0,3", 30 - "props": [ 31 - { 32 - "p": "payload" 33 - } 34 - ], 35 - "repeat": "", 36 - "crontab": "", 37 - "once": false, 38 - "onceDelay": 0.1, 39 - "topic": "", 40 - "payload": "AT+SEND=1,hello world,0,3", 41 - "payloadType": "str", 42 - "x": 220, 43 - "y": 260, 44 - "wires": [ 45 - [ 46 - "3f8add7e2e1d1d17" 47 - ] 48 - ] 49 - }, 50 - { 51 - "id": "3f8add7e2e1d1d17", 52 - "type": "serial out", 53 - "z": "5f10779accc05655", 54 - "name": "", 55 - "serial": "bb1c0e81fd51fa9e", 56 - "x": 540, 57 - "y": 260, 58 - "wires": [] 59 - }, 60 - { 61 - "id": "16e7d3d83d9e9415", 62 - "type": "inject", 63 - "z": "5f10779accc05655", 64 - "name": "", 65 - "props": [ 66 - { 67 - "p": "payload" 68 - } 69 - ], 70 - "repeat": "", 71 - "crontab": "", 72 - "once": false, 73 - "onceDelay": 0.1, 74 - "topic": "", 75 - "payload": "ATZ", 76 - "payloadType": "str", 77 - "x": 290, 78 - "y": 320, 79 - "wires": [ 80 - [ 81 - "3f8add7e2e1d1d17" 82 - ] 83 - ] 84 - }, 85 - { 86 - "id": "09ea381519629dae", 87 - "type": "inject", 88 - "z": "5f10779accc05655", 89 - "name": "AT+FRE", 90 - "props": [ 91 - { 92 - "p": "payload" 93 - } 94 - ], 95 - "repeat": "", 96 - "crontab": "", 97 - "once": false, 98 - "onceDelay": 0.1, 99 - "topic": "", 100 - "payload": "AT+FRE=868.100,868.100", 101 - "payloadType": "str", 102 - "x": 280, 103 - "y": 380, 104 - "wires": [ 105 - [ 106 - "3f8add7e2e1d1d17" 107 - ] 108 - ] 109 - }, 110 - { 111 - "id": "5167a7f904013ffd", 112 - "type": "inject", 113 - "z": "5f10779accc05655", 114 - "name": "AT+BW", 115 - "props": [ 116 - { 117 - "p": "payload" 118 - } 119 - ], 120 - "repeat": "", 121 - "crontab": "", 122 - "once": false, 123 - "onceDelay": 0.1, 124 - "topic": "", 125 - "payload": "AT+BW=0,0", 126 - "payloadType": "str", 127 - "x": 290, 128 - "y": 440, 129 - "wires": [ 130 - [ 131 - "3f8add7e2e1d1d17" 132 - ] 133 - ] 134 - }, 135 - { 136 - "id": "dbe4abbc730c76e6", 137 - "type": "inject", 138 - "z": "5f10779accc05655", 139 - "name": "AT+SF", 140 - "props": [ 141 - { 142 - "p": "payload" 143 - } 144 - ], 145 - "repeat": "", 146 - "crontab": "", 147 - "once": false, 148 - "onceDelay": 0.1, 149 - "topic": "", 150 - "payload": "AT+SF=12,12", 151 - "payloadType": "str", 152 - "x": 290, 153 - "y": 500, 154 - "wires": [ 155 - [ 156 - "3f8add7e2e1d1d17" 157 - ] 158 - ] 159 - }, 160 - { 161 - "id": "3be3ab296a75d512", 162 - "type": "inject", 163 - "z": "5f10779accc05655", 164 - "name": "AT+RXMOD", 165 - "props": [ 166 - { 167 - "p": "payload" 168 - } 169 - ], 170 - "repeat": "", 171 - "crontab": "", 172 - "once": false, 173 - "onceDelay": 0.1, 174 - "topic": "", 175 - "payload": "AT+RXMOD=65535,2", 176 - "payloadType": "str", 177 - "x": 270, 178 - "y": 560, 179 - "wires": [ 180 - [ 181 - "3f8add7e2e1d1d17" 182 - ] 183 - ] 184 - }, 185 - { 186 - "id": "7a03d1413c60ea1c", 187 - "type": "inject", 188 - "z": "5f10779accc05655", 189 - "name": "AT+SYNCWORD", 190 - "props": [ 191 - { 192 - "p": "payload" 193 - } 194 - ], 195 - "repeat": "", 196 - "crontab": "", 197 - "once": false, 198 - "onceDelay": 0.1, 199 - "topic": "", 200 - "payload": "AT+SYNCWORD=0", 201 - "payloadType": "str", 202 - "x": 260, 203 - "y": 620, 204 - "wires": [ 205 - [ 206 - "3f8add7e2e1d1d17" 207 - ] 208 - ] 209 - }, 210 - { 211 - "id": "40eac96a52733f7a", 212 - "type": "function", 213 - "z": "5f10779accc05655", 214 - "name": "function 1", 215 - "func": "var data = msg.payload\nif (data.substring(0, 4) == \"Data\")\n{\n if (data.substring(6, 12) == \"(HEX:)\")\n {\n var temp = data.substring(13, 15) + data.substring(16, 18)\n var hum = data.substring(19, 21) + data.substring(22, 24)\n var temp1 = parseInt(temp, 16)/100\n var hum1 = parseInt(hum, 16)/10\n var a1 = { payload: temp1 }, a2 = { payload: hum1 }\n }\n}\nif (data.substring(0, 4) == \"Rssi\")\n{\n var rssi = data.substring(6)\n var a3 = { payload: rssi }\n}\nreturn [a1,a2,a3];\n \n\n", 216 - "outputs": 3, 217 - "noerr": 0, 218 - "initialize": "", 219 - "finalize": "", 220 - "libs": [], 221 - "x": 420, 222 - "y": 60, 223 - "wires": [ 224 - [ 225 - "81edb003937f1a92" 226 - ], 227 - [ 228 - "c63593404a60d9dc" 229 - ], 230 - [ 231 - "61ca71032888887b" 232 - ] 233 - ] 234 - }, 235 - { 236 - "id": "61ca71032888887b", 237 - "type": "ui_chart", 238 - "z": "5f10779accc05655", 239 - "name": "", 240 - "group": "ef41b39771110fa5", 241 - "order": 1, 242 - "width": 0, 243 - "height": 0, 244 - "label": "RSSI", 245 - "chartType": "line", 246 - "legend": "false", 247 - "xformat": "dd HH:mm", 248 - "interpolate": "linear", 249 - "nodata": "", 250 - "dot": true, 251 - "ymin": "", 252 - "ymax": "", 253 - "removeOlder": 1, 254 - "removeOlderPoints": "", 255 - "removeOlderUnit": "3600", 256 - "cutout": 0, 257 - "useOneColor": false, 258 - "useUTC": false, 259 - "colors": [ 260 - "#1f77b4", 261 - "#aec7e8", 262 - "#ff7f0e", 263 - "#2ca02c", 264 - "#98df8a", 265 - "#d62728", 266 - "#ff9896", 267 - "#9467bd", 268 - "#c5b0d5" 269 - ], 270 - "outputs": 1, 271 - "useDifferentColor": false, 272 - "className": "", 273 - "x": 670, 274 - "y": 180, 275 - "wires": [ 276 - [] 277 - ] 278 - }, 279 - { 280 - "id": "81edb003937f1a92", 281 - "type": "ui_chart", 282 - "z": "5f10779accc05655", 283 - "name": "", 284 - "group": "7e1d1c102cf74e6b", 285 - "order": 1, 286 - "width": 0, 287 - "height": 0, 288 - "label": "Temperature", 289 - "chartType": "line", 290 - "legend": "false", 291 - "xformat": "HH:mm:ss", 292 - "interpolate": "linear", 293 - "nodata": "", 294 - "dot": true, 295 - "ymin": "", 296 - "ymax": "", 297 - "removeOlder": 1, 298 - "removeOlderPoints": "", 299 - "removeOlderUnit": "3600", 300 - "cutout": 0, 301 - "useOneColor": false, 302 - "useUTC": false, 303 - "colors": [ 304 - "#1f77b4", 305 - "#aec7e8", 306 - "#ff7f0e", 307 - "#2ca02c", 308 - "#98df8a", 309 - "#d62728", 310 - "#ff9896", 311 - "#9467bd", 312 - "#c5b0d5" 313 - ], 314 - "outputs": 1, 315 - "useDifferentColor": false, 316 - "className": "", 317 - "x": 690, 318 - "y": 100, 319 - "wires": [ 320 - [] 321 - ] 322 - }, 323 - { 324 - "id": "c63593404a60d9dc", 325 - "type": "ui_chart", 326 - "z": "5f10779accc05655", 327 - "name": "", 328 - "group": "3f5d139f158d7c1c", 329 - "order": 2, 330 - "width": 0, 331 - "height": 0, 332 - "label": "Humidity", 333 - "chartType": "line", 334 - "legend": "false", 335 - "xformat": "HH:mm:ss", 336 - "interpolate": "linear", 337 - "nodata": "", 338 - "dot": true, 339 - "ymin": "", 340 - "ymax": "", 341 - "removeOlder": 1, 342 - "removeOlderPoints": "", 343 - "removeOlderUnit": "3600", 344 - "cutout": 0, 345 - "useOneColor": false, 346 - "useUTC": false, 347 - "colors": [ 348 - "#1f77b4", 349 - "#aec7e8", 350 - "#ff7f0e", 351 - "#2ca02c", 352 - "#98df8a", 353 - "#d62728", 354 - "#ff9896", 355 - "#9467bd", 356 - "#c5b0d5" 357 - ], 358 - "outputs": 1, 359 - "useDifferentColor": false, 360 - "className": "", 361 - "x": 680, 362 - "y": 140, 363 - "wires": [ 364 - [] 365 - ] 366 - }, 367 - { 368 - "id": "79722a224bb22c96", 369 - "type": "debug", 370 - "z": "5f10779accc05655", 371 - "name": "debug 1", 372 - "active": true, 373 - "tosidebar": true, 374 - "console": false, 375 - "tostatus": false, 376 - "complete": "false", 377 - "statusVal": "", 378 - "statusType": "auto", 379 - "x": 420, 380 - "y": 180, 381 - "wires": [] 382 - }, 383 - { 384 - "id": "bb1c0e81fd51fa9e", 385 - "type": "serial-port", 386 - "serialport": "/dev/ttyUSB0", 387 - "serialbaud": "9600", 388 - "databits": "8", 389 - "parity": "none", 390 - "stopbits": "1", 391 - "waitfor": "", 392 - "dtr": "none", 393 - "rts": "none", 394 - "cts": "none", 395 - "dsr": "none", 396 - "newline": "\\n", 397 - "bin": "false", 398 - "out": "char", 399 - "addchar": "\\r\\n", 400 - "responsetimeout": "10000" 401 - }, 402 - { 403 - "id": "ef41b39771110fa5", 404 - "type": "ui_group", 405 - "name": "rssi", 406 - "tab": "abb98f80600a5448", 407 - "order": 3, 408 - "disp": true, 409 - "width": "6", 410 - "collapse": false, 411 - "className": "" 412 - }, 413 - { 414 - "id": "7e1d1c102cf74e6b", 415 - "type": "ui_group", 416 - "name": "TEM", 417 - "tab": "abb98f80600a5448", 418 - "order": 4, 419 - "disp": true, 420 - "width": "6", 421 - "collapse": false, 422 - "className": "" 423 - }, 424 - { 425 - "id": "3f5d139f158d7c1c", 426 - "type": "ui_group", 427 - "name": "HUM", 428 - "tab": "abb98f80600a5448", 429 - "order": 2, 430 - "disp": true, 431 - "width": "6", 432 - "collapse": false, 433 - "className": "" 434 - }, 435 - { 436 - "id": "abb98f80600a5448", 437 - "type": "ui_tab", 438 - "name": "LG01v2", 439 - "icon": "LG01v2", 440 - "disabled": false, 441 - "hidden": false 442 - } 443 -]
- image-20221104155928-5.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -49.5 KB - Content
- image-20221104155949-6.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -46.0 KB - Content
- image-20221108164337-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -17.5 KB - Content
- image-20221108164413-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -27.1 KB - Content
- image-20221108170314-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -34.6 KB - Content
- image-20221108170621-4.jpeg
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -544.6 KB - Content
- image-20221108170731-5.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -2.5 MB - Content
- image-20221108172149-6.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -17.5 KB - Content
- image-20221108172432-7.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -45.9 KB - Content
- image-20221108174840-8.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -52.1 KB - Content
- image-20221108175113-9.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -72.6 KB - Content
- image-20221108180334-10.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -159.3 KB - Content
- image-20221108180458-11.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -52.4 KB - Content
- image-20221112161031-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -35.1 KB - Content
- image-20221112161111-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -34.8 KB - Content
- image-20221112162733-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -78.7 KB - Content
- image-20221112163119-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -32.6 KB - Content
- image-20230504095457-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -412.6 KB - Content
- image-20230504095502-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -412.6 KB - Content
- image-20230504100722-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -21.5 KB - Content
- image-20230506110646-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -383.1 KB - Content
- image-20230506113332-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -28.6 KB - Content
- image-20230506113432-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -36.5 KB - Content
- image-20230506113531-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -403.2 KB - Content
- image-20230506113602-5.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -26.7 KB - Content
- image-20230506113623-6.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -35.4 KB - Content
- image-20230506113705-7.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -40.9 KB - Content
- image-20230506113722-8.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -33.2 KB - Content
- image-20230506113737-9.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -25.2 KB - Content
- image-20230506113813-10.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -39.5 KB - Content
- image-20230506113831-11.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -32.2 KB - Content
- image-20230506114127-12.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -56.1 KB - Content
- image-20230506115438-13.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -413.6 KB - Content
- image-20230620103153-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -127.6 KB - Content
- image-20230620103535-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -156.3 KB - Content
- image-20230620103923-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -72.7 KB - Content
- image-20231014092843-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -596 bytes - Content
- image-20231014092934-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -620 bytes - Content
- image-20231014092954-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -618 bytes - Content
- image-20231014092959-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Kilight - Size
-
... ... @@ -1,1 +1,0 @@ 1 -563 bytes - Content