Changes for page LG01v2 -- LoRa Gateway User Manual
Last modified by Kilight Cao on 2024/10/12 08:58
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 72 added, 0 removed)
- 1667456058832-484.png
- LG01v2_LSN50v2_S31.json
- LoRa_Shield_Sketch_For_MQTT.ino
- 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
- arduino-LoRa-master.zip
- image-20221101160705-1.png
- image-20221101161318-2.png
- image-20221101161951-3.png
- image-20221101162527-4.png
- image-20221102105419-1.png
- image-20221102110604-2.png
- image-20221102114002-3.png
- image-20221102140053-4.png
- image-20221103140645-1.png
- image-20221103142228-2.png
- image-20221103142416-3.png
- image-20221103143528-4.png
- image-20221103143618-5.png
- image-20221103144405-6.png
- image-20221103152033-7.png
- image-20221103152238-8.png
- image-20221104100344-1.png
- image-20221104100520-2.png
- image-20221104102736-3.png
- image-20221104155612-1.png
- image-20221104155654-2.png
- image-20221104155724-3.png
- image-20221104155907-4.png
- image-20221104155928-5.png
- image-20221104155949-6.png
- image-20221108164337-1.png
- image-20221108164413-2.png
- image-20221108170314-3.png
- image-20221108170621-4.jpeg
- image-20221108170731-5.png
- image-20221108172149-6.png
- image-20221108172432-7.png
- image-20221108174840-8.png
- 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
- serial USB.json
Details
- Page properties
-
- Content
-
... ... @@ -7,30 +7,39 @@ 7 7 8 8 ))) 9 9 10 -**Table of Contents :**10 +**Table of Contents:** 11 11 12 12 {{toc/}} 13 13 14 -= **1. Introduction** = 15 15 16 16 17 -== **1.1 What is LG01v2** == 18 18 19 19 18 + 19 += 1. Introduction = 20 + 21 +== 1.1 What is LG01v2 == 22 + 23 + 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. 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 designed for (% style="color:blue" %)**peer-to-peer LoRa**(%%) protocol instead of LoRaWAN protocol. The LG01v2 uses a single-channel LoRa module to minimize the deployment cost for a private p2p LoRa wireless network. 29 + 30 +(% style="color:red" %)**Note: The LG01v2 can't register and connect to the LoRaWAN server(Such as The Things NetWork, AWS, or Chirpstack..)** 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. 34 +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. 35 + 36 +LG01v2 supports (% style="color:blue" %)**remote management**(%%). System Integrator can easy to remote monitor the gateway and maintain it. 27 27 ))) 28 28 29 29 40 +== 1.2 Specifications == 30 30 31 -== **1.2 Specifications** == 32 32 33 - 34 34 (% style="color:#037691" %)**Hardware System:** 35 35 36 36 * CPU: Quad-core Cortex-A7 1.2Ghz ... ... @@ -48,7 +48,7 @@ 48 48 * Storage Temperature: -20 ~~ 65°C 49 49 * Power Input: 5V, 2A, DC 50 50 51 -== **1.3 Features**==60 +== 1.3 Features == 52 52 53 53 54 54 * Open Source Debian system ... ... @@ -56,69 +56,59 @@ 56 56 * Remote Management 57 57 * Auto-provisioning for batch deployment and management 58 58 * LoRa Gateway 59 -* Built-in (% style="color:#037691" %)//**The Things Network**//(%%) local LoRaWAN server 60 60 * Built-in (% style="color:#037691" %)//**Node-Red**// (%%)local Application server 61 61 62 -== **1.4 Block Diagram**==70 +== 1.4 Block Diagram == 63 63 64 64 65 65 66 -== **1.5 LED Indicators**==74 +== 1.5 LED Indicators == 67 67 68 68 69 69 LG01-V2 has totally four LEDs, They are: 70 70 71 71 72 -(% style="color:blue" %) //**➢ Power LED**//(%%)//: This RED LED will be solid if the device is properly powered//80 +(% style="color:blue" %)**➢ Power LED**[[image:image-20231014092959-4.png]](%%): This RED LED will be solid if the device is properly powered 73 73 74 -(% style="color:blue" %) //**➢ ETH LED**//(%%)//: This RGB LED will blink GREEN when the ETH port is connecting//82 +(% style="color:blue" %)**➢ ETH LED**[[image:image-20231014092934-2.png]](%%): This RGB LED will blink GREEN when the ETH port is connecting 75 75 76 -(% style="color:blue" %) //**➢ SYS LED**//(%%)//:This RGB LED will showdifferent colorsinifferentstates~://84 +(% style="color:blue" %)**➢ SYS LED**[[image:image-20231014092954-3.png]](%%): Undefined yet. 77 77 78 - //✓**SOLIDGREEN:**Thedevicealivewitha LoRaWANserverconnection.//86 +(% style="color:blue" %)**➢ WIFI LED**[[image:image-20231014092843-1.png]](%%): This LED shows the WIFI interface connection status. 79 79 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// 81 81 82 - //✓** SOLID RED:** Device doesn'thave anInternetconnection.//89 +== 1.6 Button Intruction == 83 83 84 -(% style="color:blue" %)//**➢ WIFI LED**//(%%)//: This LED shows the WIFI interface connection status.// 85 85 86 - 87 - 88 -== **1.6 Button Intruction** == 89 - 90 - 91 91 LG01-V2 has a black toggle button, which is: 92 92 93 93 94 -(% style="color:blue" %)** //➢//Long press 4-5s : **(%%)the gateway will reload the Network and Initialize wifi configuration95 +(% style="color:blue" %)**➢ Long press 4-5s : **(%%)the gateway will reload the Network and Initialize wifi configuration 95 95 96 - //**LED status: ** ETH LED will BLINKIND BULE Until the reload is finished.//97 + **LED status: ** ETH LED will BLINKIND BULE Until the reload is finished. 97 97 98 98 99 -(% style="color:blue" %) //**➢**//**Long press more than 10s:**(%%)** **//the gateway will restore the factory settings.//100 +(% style="color:blue" %)**➢ Long press more than 10s:**(%%)** **the gateway will restore the factory settings. 100 100 101 - //**LED status: ** ETH LED will SOLID BULE Until the restore is finished.//102 + **LED status: ** ETH LED will SOLID BULE Until the restore is finished. 102 102 103 103 105 += 2. Quick Start = 104 104 105 -= ** 2. Quick Start** = 106 106 107 - 108 108 The LG01-V2 supports network access via Ethernet or Wi-Fi connection and runs without a network. 109 109 110 110 In most cases, the first thing you need to do is make the LG01-v2 accessible to the network. 111 111 112 112 113 -== **2.1Connectsto the networkandaccesses thegatewayWebUI**==113 +== 2.1 Access and Configure LG01-v2 == 114 114 115 +=== 2.1.1 Find IP address of LG01-v2 === 115 115 116 -== **2.1.1 connect the network.** == 117 117 118 +==== (% style="color:blue" %)**Method 1**(%%): Connect via Ethernet with DHCP IP from the router ==== 118 118 119 -=== (% style="color:blue" %)**Method 1**(%%): Connect via Ethernet with DHCP IP from the router === 120 120 121 - 122 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. ... ... @@ -126,107 +126,195 @@ 126 126 127 127 [[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"]] 128 128 128 +==== (% style="color:blue" %)**Method 2**(%%): Connect via LG01v2 Fallback IP ==== 129 129 130 - === (% style="color:blue"%)**Method2**(%%):Connect viaWiFiwithDHCP IP fromtherouter===130 +[[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"]] 131 131 132 132 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"]]133 +**Steps to connect via fallback IP:** 134 134 135 - The LG01-V2has a fall-back IP addressonitsWAN port. youhaveto accessthegateway Web-UItoconfiguretheWiFi connectionviathefallback IP address.135 +~1. Connect the PC's Ethernet port to LG01v2's WAN port 136 136 137 +2. Configure PC's Ethernet port has IP: 172.31.255.253 and Netmask: 255.255.255.252 137 137 138 - (% style="color:#037691" %)**Steps toconnect viafallback IP:**139 +**Settings ~-~-> Network & Internet ~-~-> Ethernet ~-~-> Change advanced sharing options ~-~-> Double-click"Ethernet" ~-~-> Internet Protocol Version 4 (TCP/IPv4)** 139 139 140 -~1. Connect PC's Ethernet port to LG01-V2's WAN port 141 141 142 - 2.ConfigurePC's Ethernetporthas IP:172.31.255.253 and Netmask: 255.255.255.252142 +As in the below photo: 143 143 144 +[[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"]] 144 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 146 147 +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]]** 147 147 148 -an dthen OnthePC,usetheIPaddress**http:~/~/172.31.255.254** toccessthe-V2viaWebole.149 +If you still can't access the LG01v2 fallback ip, follow this connection to debug : **[[Trouble Shooting>>http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20All%20Gateway%20models/LG01v2/#H10.1A0FallbackIPdoesnotwork2Chowcanuserscheck]]** 149 149 151 +3. In the PC, use IP address 172.31.255.254 to access the LG01v2 via Web or Console. 150 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"]]153 +[[image:image-20230506115438-13.png||height="554" width="1047"]] 152 152 153 153 156 + 157 +==== (% style="color:blue" %)**Method 3**(%%): Connect via WiFi with DHCP IP from the router ==== 158 + 159 + 160 +[[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"]] 161 + 162 + 154 154 Fill in the WiFi information by checking the box and clicking (% style="color:red" %)**Save&Apply** 155 155 156 156 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"]]166 +[[image:image-20230506113332-2.png]] 158 158 159 159 160 160 **Wi-Fi configuration successful** 161 161 162 162 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"]]172 +[[image:image-20230506113432-3.png||height="397" width="855"]] 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 175 +=== 2.1.2 Access Configure Web UI === 167 167 168 -= **3. Web Configure Pages** = 169 169 170 - ==**3.1Home**==178 +**Web Interface** 171 171 172 - //Shows thesystemrunningstatus~://180 +Open a browser on the PC and type the LG01v2 ip address (depends on your connect method) 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"]] 175 175 183 +[[(% 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) 176 176 177 - ==**3.2NetworkSettings**==185 +You will see the login interface of LG01v2 as shown below. 178 178 187 +The account details for Web Login are: 179 179 180 -= ==**3.2.1Network~-~-> WiFi**===189 +(% style="color:#4f81bd" %)**User Name: root** 181 181 191 +(% style="color:#4f81bd" %)**Password: dragino** 182 182 183 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-202 20616114756-4.png?width=669&height=251&rev=1.1||alt="image-20220616114756-4.png"]]193 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20230106153501-1.png?width=894&height=367&rev=1.1||alt="image-20230106153501-1.png"]] 184 184 185 185 196 += 3. Web Configure Pages = 186 186 187 -== =**3.4.2Network ~-~-> SystemStatus**===198 +== 3.1 Home == 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"]]201 +Shows the system running status: 191 191 203 +[[image:image-20230506113531-4.png||height="430" width="818"]] 192 192 193 193 194 -== =**3.4.3Network~-~-> Firewall**===206 +== 3.2 Network Settings == 195 195 208 +=== 3.2.1 Network ~-~-> WiFi === 196 196 197 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220616115351-6.png?width=661&height=244&rev=1.1||alt="image-20220616115351-6.png"]] 198 198 211 +[[image:image-20230506113602-5.png]] 199 199 200 200 201 -== **3.5System**==214 +=== 3.4.2 Network ~-~-> System Status === 202 202 203 203 204 - === **3.5.1System ~-~-> System Overview**===217 +[[image:image-20230506113623-6.png||height="511" width="672"]] 205 205 206 206 220 +== 3.5 System == 221 + 222 +=== 3.5.1 System ~-~-> System Overview === 223 + 224 + 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"]]227 +[[image:image-20230506113705-7.png]] 210 210 211 211 230 +=== 3.5.2 System ~-~-> Backup/Restore === 212 212 213 -=== **3.5.2 System ~-~-> Backup/Restore** === 214 214 233 +[[image:image-20230506113722-8.png||height="254" width="797"]] 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"]] 217 217 236 +=== 3.5.3 System ~-~-> System General === 218 218 219 219 220 - ==239 +In the **System-> System General** interface, Users can customize the configuration System Password and set Timezone. 221 221 222 - =**4. Howto configure theLA66module** =241 +In addition, Users can customize the FallBack IP address. 223 223 243 +[[image:image-20230506113813-10.png||height="659" width="749"]] 224 224 225 -== **4.1 Access the LA66 module** == 226 226 246 +=== 3.5.4 System ~-~-> Remoteit === 227 227 228 -Users can access the LA66 module by running the following command, then select the option **''serial port setup"**: 229 229 249 +In the **System-> Remoteit** interface, users can configure the gateway to be accessed remotely via Remote.it. 250 + 251 +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.]]** 252 + 253 +[[image:image-20230506113831-11.png||height="567" width="748"]] 254 + 255 + 256 +=== 3.5.5 System ~-~-> Package Management === 257 + 258 + 259 +In the **System ~-~-> Package Management** interface, Users can check the current version of Core Packages. 260 + 261 +[[image:image-20230506114127-12.png||height="803" width="762"]] 262 + 263 + 264 += (% id="cke_bm_1978S" style="display:none" %) (%%)4. Build in Server = 265 + 266 + 267 +The default factory version of LG01-V2 is installed with the built-in Applicant server: (% style="color:blue" %)**Node-Red** 268 + 269 + 270 +[[image:image-20230506113737-9.png]] 271 + 272 + 273 +(% style="color:red" %)**Note:** 274 + 275 + **Path**: System ~-~-> Built-in Server 276 + 277 + 278 +(% style="color:blue" %)**Troubleshooting:** 279 + 280 +**~ 1. URL does not jump properly** 281 + 282 + For the Node-Red, you can use the local IP address and the port is 1880 to access it. 283 + 284 + 285 +== 4.1 Application Server ~-~- Node-Red == 286 + 287 + 288 +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. 289 + 290 + 291 +Such as (% style="background-color:yellow" %)__**//http:~/~/dragino-54ff12:1880 or http:~/~/<Local-IPV4-Address>//**__ 292 + 293 + 294 +[[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"]] 295 + 296 + 297 += 5. How to configure the Lora Gateway = 298 + 299 +== 5.1 Configure and Debug LoRa wireless of LG01v2 == 300 + 301 + 302 +First, the user needs to access the Linux console of LG01v2 via ssh 303 + 304 +**IP address: (% style="color:blue" %)IP address of LG01v2(%%)** 305 + 306 +**Port: (% style="color:blue" %)22(%%)** 307 + 308 +**User Name: (% style="color:blue" %)root(%%)** 309 + 310 +**Password: (% style="color:blue" %)dragino(default)(%%)** 311 + 312 +[[image:image-20230504100722-3.png||height="228" width="908"]] 313 + 314 + 315 +Users can access the Lora configuration page by running the following command, then select the option **''serial port setup"**: 316 + 230 230 (% class="box infomessage" %) 231 231 ((( 232 232 **root@dragino-2406ef:~~# minicom -s** ... ... @@ -245,190 +245,426 @@ 245 245 ))) 246 246 247 247 248 -(% style="color:red" %)**Note: Enter the corresponding letter to change the configuration, like A,B,C**(%%) 335 +(% style="color:red" %)**Note: Enter the corresponding letter to change the configuration, like A,B,C** 336 + 337 + 249 249 (% style="color:red" %)[[image:image-20221029174703-3.png]] 250 250 251 251 252 252 Enter **AT+CFG **in the interface to get the configuration, 253 253 254 -[[image:image-20221029172156-1.png||height="315" width="358"]] 255 255 344 +(% class="box infomessage" %) 345 +((( 346 +**AT+FRE=868.100,868.100 ~-~--> TX and RX frequency 347 +AT+GROUPMOD=0,0 ~-~--> TX and RX group 348 +AT+BW=0,0 ~-~--> TX and RX Bandwidth 349 +AT+SF=12,12 ~-~--> TX and RX Spreading Factor 350 +AT+POWER=14 ~-~--> TX Power Range 351 +AT+CRC=1,1 ~-~--> TX and RX CRC Type 352 +AT+HEADER=0,0 ~-~--> TX and RX Header Type 353 +AT+CR=1,1 ~-~--> TX and RX Coding Rate 354 +AT+IQ=0,0 ~-~--> TX and RX InvertIQ 355 +AT+PREAMBLE=8,8 ~-~--> TX and RX Preamble Length 356 +AT+SYNCWORD=0 ~-~--> Syncword(0: private,1: public) 357 +AT+RXMOD=65535,0 ~-~--> Rx Timeout and Reply mode 358 +AT+RXDAFORM=1** 359 +))) 256 256 257 -LG01v2 Peer-to-Peer example: 258 258 259 - (%style="color:red"%)**LG01v2as Receiver: (configured as AT+RXMOD=65535,2)**362 +== 5.2 Example: LG01v2 == 260 260 261 - [[image:image-20221031091652-2.png]]364 +=== 5.2.1 Introduce for the example: === 262 262 263 263 264 - (% style="color:red"%)**Sender:**367 +[[image:image-20221104102736-3.png||height="282" width="723"]] 265 265 266 266 267 - [[image:image-20221031092053-4.png]]370 +In this example, there are two devices: 268 268 372 +* **LA66 Shield + UNO + DHT11**: The UNO will get the temperature and humidity and broadcast the value via LoRa protocol. 373 +* **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. 269 269 270 -Instruction for LA66 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/]] 375 +=== 5.2.2 Set Up LA66 Shield + UNO === 376 + 377 + 378 +==== **Set up LA66 Module** ==== 379 + 380 + 381 +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: 382 + 383 +((( 384 +(% style="color:red" %)**LA66 Shield as Sender: ** 385 + 386 +(% class="box infomessage" %) 387 +((( 388 +**LA66 Shield configuration:** 389 + 390 +AT+FRE=868.100,868.100 ~-~--> TX and RX frequency set: 868100000 391 +AT+BW=0,0 ~-~--> TX and RX Bandwidth set: 125kHz 392 +AT+SF=12,12 ~-~--> TX and RX Spreading Factor set: SF12 393 +AT+POWER=14 ~-~--> TX Power Range set: 14dBm 394 +AT+CRC=1,1 ~-~--> TX and RX CRC Type 395 +AT+HEADER=0,0 ~-~--> TX and RX Header Type 396 +AT+CR=1,1 ~-~--> TX and RX Coding Rate 397 +AT+IQ=0,0 ~-~--> TX and RX InvertIQ 398 +AT+PREAMBLE=8,8 ~-~--> TX and RX Preamble Length set: 8 399 +AT+SYNCWORD=0 ~-~--> Syncword**(0: private,1: public)** 400 +AT+RXMOD=6,0 ~-~--> Rx Timeout and Reply mode 271 271 ))) 402 +))) 272 272 273 273 274 -= (% id="cke_bm_262449S" style="display:none" %)** **(%%)**5. Build-in Server** = 275 275 406 +==== **Set up Arduino UNO** ==== 276 276 277 - Thedefault factory version of LG01-V2isinstalledwith the built-in Applicant server: (% style="color:blue" %)**Node-Red, and**(%%) LoRaWAN Server: (% style="color:blue"%)**TheThings Network - Stack (Open Source 3.19 Version).**408 +(% id="cke_bm_1033249S" style="display:none" %)** ** 278 278 410 +**Hardware Connection** 279 279 280 -[[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"]] 412 +(% class="box infomessage" %) 413 +((( 414 +**The DHT11 sensor connects to the LA66 Shield:** 281 281 416 +**VCC <~-~--> 3.3V (Red line)** 417 +**DATA <~-~--> PIN8 (Purple line)** 418 +**GND <~-~--> GND (White line)** 419 +))) 282 282 283 - (% style="color:red"%)**Note:**421 +[[image:image-20221108170731-5.png||height="588" width="441"]] 284 284 285 - **Path**: System ~-~-> Built-in Server 286 286 287 287 288 -** Troubleshooting:**425 +===== **1. Open Arduino IDE** ===== 289 289 290 290 291 - **~1.URL doesnotjump properly**428 +[[image:image-20221108172149-6.png||height="650" width="542"]] 292 292 293 - For the ttn-stack, you can click the update the URL which will update the configuration where change the hostname to the current local IP address as the URL. 294 294 295 - For the Node-Red, you can use the local IP address and the port is 1880 to access it. 296 296 432 +===== **2. Open project** ===== 297 297 298 298 299 - ==**5.1 LoRaWANNetworkServer~-~- TheThings Network-ck (TTN-V3)**==435 +Users can download Arduino files from this link: [[attach:Log-Temperature-Sensor-and-send-data-to-Node-red.ino||target="_blank"]] 300 300 437 +Then click Compile and Upload to LA66 Shield, 301 301 302 - You can access thegateway's built-in LNS server of (% style="color:blue" %)**The Things Network - Stack **(%%)via the URL( (% style="background-color:yellow" %)__**//http:~/~/<hostname>:8080or http:~/~/<local-IPV4-address> //**__(%%)) in your browser.439 +[[image:image-20221108172432-7.png]] 303 303 304 -Such as (% style="background-color:yellow" %)__**//http:~/~/dragino-54ff12:8080 or http:~/~/<Local-IPV4-Address>//**__ 305 305 306 306 307 - Login account:443 +===== **3. Open the Serial Monitor to check the LA66 Shield data** ===== 308 308 309 -**User ID: ** ** (% style="background-color:yellow" %)admin(%%)** 310 310 311 - **Password:**** (%style="background-color:yellow"%)dragino(%%)**446 +The UNO will now reads the temperature and humidity data from the sensor and broadcast it via LoRa wireless, 312 312 448 +[[image:image-20221108174840-8.png||height="731" width="671"]] 313 313 314 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220725171719-1.png?width=769&height=570&rev=1.1||alt="image-20220725171719-1.png"]] 315 315 316 316 452 +Sending out data as below. 317 317 318 - == **5.2 Application Server ~-~-Node-Red**==454 +[[image:image-20221108175113-9.png||height="556" width="998"]] 319 319 320 320 321 - Youcanaccess the gateway's built-in ASserver of (% style="color:blue"%)**Node-Red **(%%)via theURL((% style="background-color:yellow" %)__**//http:~/~/<hostname>:1880orhttp:~/~/<local-IPV4-address>//**__(%%)) in your browser.457 +=== 5.2.3 Set Up LG01v2 === 322 322 323 323 324 - Suchas (%style="background-color:yellow"%)__**//http:~/~/dragino-54ff12:1880orhttp:~/~/<Local-IPV4-Address>//**__460 +Configure LG01v2 LoRa channel parameters so it can get data from LA66 Shield 325 325 462 +(% style="color:red; font-weight:bold" %)**LG01v**(% style="color:red" %)**2 as Receiver: (configured as AT+RXMOD=65535,2)** 326 326 327 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220725172124-3.png?width=843&height=610&rev=1.1||alt="image-20220725172124-3.png"]] 464 +(% class="box infomessage" %) 465 +((( 466 +**LG01-V2 configuration:** 328 328 468 +AT+FRE=868.100,868.100 ~-~--> TX and RX frequency set: 868100000 469 +AT+BW=0,0 ~-~--> TX and RX Bandwidth set: 125kHz 470 +AT+SF=12,12 ~-~--> TX and RX Spreading Factor set: SF12 471 +AT+POWER=14 ~-~--> TX Power Range set: 14dBm 472 +AT+CRC=1,1 ~-~--> TX and RX CRC Type 473 +AT+HEADER=0,0 ~-~--> TX and RX Header Type 474 +AT+CR=1,1 ~-~--> TX and RX Coding Rate 475 +AT+IQ=0,0 ~-~--> TX and RX InvertIQ 476 +AT+PREAMBLE=8,8 ~-~--> TX and RX Preamble Length set: 8 477 +AT+SYNCWORD=0 ~-~--> Syncword**(0: private,1: public)** 478 +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 )** 479 +))) 329 329 330 -= (% id="cke_bm_265781S" style="display:none" %)** **(%%)**6. How users can access LG01v2 using serial USB** = 331 331 482 +=== 5.2.4 Test result === 332 332 333 -(% style="color:blue" %)**USB TTL to LG01v2 Connection:** 334 334 485 +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).** 486 +))) 335 335 336 - Port1oftheUARTon theLG01v2isGND488 +When LG01v2 replies with ACK when it receives a packet sent by LA66 sheild. 337 337 490 +[[image:image-20221108164413-2.png]] 491 + 492 + 493 + 494 +In the real-time log of LG01v2: 495 + 496 +[[image:image-20221108170314-3.png]] 497 + 498 + 499 +=== 5.2.5 Plot data chart in LG01v2 === 500 + 501 + 502 +User can plot the temperature and humidity chat via LG01v2 built-in IoT server. 503 + 504 +User can import this example in Node-Red: [[attach:Log-Temperature-Sensor-and-send-data-to-Node-red.json||target="_blank"]] 505 + 506 +[[image:image-20221108180334-10.png||height="651" width="1141"]] 507 + 508 + 509 +The temperature and humidity chart is displayed in the built-in node-red UI 510 + 511 +**Browser input: (% style="background-color:yellow" %)__//http:~/~/<local-IPV4-address>//__(%%)** 512 + 513 +[[image:image-20221108180458-11.png||height="402" width="1137"]] 514 + 515 + 516 + 517 += 6. OTA System Update = 518 + 519 + 520 +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. 521 + 522 + 523 += 7. FAQ = 524 + 525 +== 7.1 How does LG01v2 communicate with Lora shield (LoRa.h) == 526 + 527 + 528 +This example describes how to use LG01v2, LoRa Shield to set up a LoRa network, 529 + 530 +[[image:image-20221103152238-8.png||height="251" width="654"]] 531 + 532 + 533 +(% style="color:red" %)**Prerequisites: The configurations of LG01v2 and Lora shield must match** 534 + 535 +**LG01v2 configuration:** 536 + 338 338 (% class="box infomessage" %) 339 339 ((( 340 -**TXD <~-~--> UART RXD (Gray line)** 539 +AT+FRE=868.100,868.100 ~-~--> TX and RX frequency set: 868100000 540 +AT+BW=0,0 ~-~--> TX and RX Bandwidth set: 125kHz 541 +AT+SF=12,12 ~-~--> TX and RX Spreading Factor set: SF12 542 +AT+POWER=14 ~-~--> TX Power Range 543 +AT+CRC=1,1 ~-~--> TX and RX CRC Type 544 +AT+HEADER=0,0 ~-~--> TX and RX Header Type 545 +AT+CR=1,1 ~-~--> TX and RX Coding Rate 546 +AT+IQ=0,0 ~-~--> TX and RX InvertIQ 547 +AT+PREAMBLE=8,8 ~-~--> TX and RX Preamble Length set: 8 548 +AT+SYNCWORD=0 ~-~--> Syncword**(0: private,1: public), **the corresponding Lora shield syncword is 0x12 549 +AT+RXMOD=65535,0 ~-~--> Rx Timeout and Reply mode,RX window always open 550 +AT+RXDAFORM=1 551 +))) 341 341 342 -**RXD <~-~--> UART TXD (White line)** 343 343 344 -**GND <~-~--> GND (Black line)** 554 + 555 +**Lora shield configuration:** 556 + 557 +Lora Shield example: [[attach:LoRa_Shield_Sketch_For_MQTT.ino||target="_blank"]] , [[attach:arduino-LoRa-master.zip||target="_blank"]] 558 + 559 +[[image:image-20221101161318-2.png]] 560 + 561 + 562 + 563 +**Test LG01v2 to receive Lora Shield data:** 564 + 565 +[[image:image-20221101161951-3.png]] 566 + 567 + 568 + 569 +**Test the LG01v2 to send data:** 570 + 571 +[[image:image-20221101162527-4.png]] 572 + 573 + 574 +== 7.2 How does LG01v2 communicate with Heltec LoRa Node == 575 + 576 + 577 +This example describes how to use LG01v2 and Heltec LoRa Node to set up a LoRa network, 578 + 579 +[[image:image-20221112161111-2.png||height="258" width="692"]] 580 + 581 +(% style="color:red" %)**Prerequisites: The configurations of LG01v2 and Lora shield must match** 582 + 583 + 584 +**LG01v2 configuration:** 585 + 586 +(% class="box infomessage" %) 587 +((( 588 +AT+FRE=868.100,868.100 ~-~--> TX and RX frequency set: 868100000 589 +AT+BW=0,0 ~-~--> TX and RX Bandwidth set: 125kHz 590 +AT+SF=12,12 ~-~--> TX and RX Spreading Factor set: SF12 591 +AT+POWER=14 ~-~--> TX Power Range 592 +AT+CRC=1,1 ~-~--> TX and RX CRC Type 593 +AT+HEADER=0,0 ~-~--> TX and RX Header Type 594 +AT+CR=1,1 ~-~--> TX and RX Coding Rate 595 +AT+IQ=0,0 ~-~--> TX and RX InvertIQ 596 +AT+PREAMBLE=8,8 ~-~--> TX and RX Preamble Length set: 8 597 +AT+SYNCWORD=0 ~-~--> Syncword**(0: private,1: public), **the corresponding Lora shield syncword is 0x12 598 +AT+RXMOD=65535,0 ~-~--> Rx Timeout and Reply mode,RX window always open 599 +AT+RXDAFORM=1 ~-~--> RX data format**(0: Hex ,1: String)** 345 345 ))) 346 346 347 347 348 - **LG01v2 UARTconnectionphoto**603 +After we upload the sketch to Heltec LoRa Node, we can see below output from Arduino. 349 349 350 - [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20All%20Gateway%20models/HP0C/WebHome/image-20220804163015-1.png?width=466&height=621&rev=1.1||alt="image-20220804163015-1.png"]]605 +Lora Shield example: [[attach:LoRa_send_trial.ino||target="_blank"]] 351 351 607 +[[image:image-20221112162733-3.png||height="524" width="927"]] 352 352 353 353 354 - InthePC, youcanuse theserialport tool(such as [[putty>>url:http://www.chiark.greenend.org.uk/~~sgtatham/putty/download.html]] in Windows),youneed tosetthe serialbaud rateto (% style="color:blue"%)**115200**(%%) to accesstheserialconsoleforLG01v2. LG01v2 will output systeminfo once power onas below:610 +And we can see the logread of gateway as below, means the packet arrive gateway: 355 355 612 +[[image:image-20221112163119-4.png||height="808" width="560"]] 356 356 357 -[[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"]] 358 358 359 - [[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"]]615 +== 7.3 How does LG01v2 communicate with LoRaWAN node == 360 360 361 361 362 - =**7.TroubleShooting**=618 +This example describes how to use LG01v2 and LSN50 to set up a network, 363 363 620 +In this case, users need to set LSN50 to work in ABP mode and transmit in only one frequency. 364 364 365 - ==7.1Ican'tlog in to thebuilt-in Server TTN Stackwhichshows'**Loginfailed**'.==622 +Assume we have a LG01v2 working in the frequency 868100000 now, below is the steps. 366 366 367 367 625 +**Step1: **Configure the LG01v2 368 368 627 +(% class="box infomessage" %) 628 +((( 629 +AT+FRE=868.100,868.100 ~-~--> TX and RX frequency set: 868100000 630 +AT+BW=0,0 ~-~--> TX and RX Bandwidth set: 125kHz 631 +AT+SF=12,12 ~-~--> TX and RX Spreading Factor set: SF12 632 +AT+SYNCWORD=1 ~-~--> Syncword**(0: private,1: public), **the corresponding Lora shield syncword is 0x12 633 +))) 369 369 370 - This is caused bytheinconsistencybetweenthebuilt-in TTN-Stackdomainconfiguration andyourlogin URL.635 +**Step2: **Run AT commands to make the LSN50 work in Single frequency and ABP mode. 371 371 372 - Bydefault,ttn-stackusesthegateway's domain name forURL resolution,but in some networks, they prefer toolve IP-v4addresses.637 +For more information on how to use AT commands in LSN50v2, please refer to this link: [[LSN50v2-S31-S31B Use AT Command>>http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/#H4.A0UseATCommand]] 373 373 639 +Below are the AT commands: 374 374 375 -So you can change the domain name of the TTN-Stack configuration to the IPv4 address. 641 +(% class="box infomessage" %) 642 +((( 643 +AT+FDR ~-~--> Reset Parameters to Factory Default, Keys Reserve 644 +AT+NJM=0 ~-~--> Set to ABP mode 645 +AT+ADR=0 ~-~--> Set the Adaptive Data Rate Off 646 +AT+DR=0 ~-~--> Set Data Rate (Set AT+DR=3 for 915 band) 647 +AT+TDC=300000 ~-~--> Set transmit interval to 5 minutes 648 +AT+CHS=868100000 ~-~--> Set transmit frequency to 868.1Mhz 649 +AT+DADDR=FFFFF111 ~-~--> Set Device Address to 26 01 1A F1 650 +ATZ ~-~--> Reset MCU 651 +))) 376 376 377 -** ClicktheupdateURL button to configure theURL with thecurrenteth port address.**653 +**Step3: **Check result 378 378 379 379 380 380 657 +User can plot the temperature and humidity chat via LG01v2 built-in IoT server. 381 381 659 +User can import this example in Node-Red: [[attach:LG01v2_LSN50v2_S31.json||target="_blank"]] 382 382 383 -= (% style="color:inherit; font-family:inherit; font-size:29px" %)**8. Supports**(%%) = 384 384 662 +First the user needs to fill in the NwkSkey and AppSkey in the LoraWan Packet Decrypter node. 385 385 664 +[[image:image-20230620103535-2.png||height="591" width="1138"]] 665 + 666 +[[image:image-20230620103153-1.png||height="610" width="1141"]] 667 + 668 + 669 +The data will be displayed in the built-in node-red UI 670 + 671 +**Browser input: (% style="background-color:yellow" %)__//http:~/~/<local-IPV4-address>//__(%%)** 672 + 673 +[[image:image-20230620103923-3.png||height="476" width="1138"]] 674 + 675 + 676 +== 7.4 How can users factory reset LG01v2 == 677 + 678 + 679 +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]] 680 + 681 + 682 +Then follow the steps in the link below to restore factory Settings to LG01v2: 683 + 684 +[[How to flash a new image(OS) to the gateway>>url:https://wiki.dragino.com/xwiki/bin/view/Main/Armbian%20OS%20instruction/#H2.3A0Howtoflashanewimage28OS29tothegateway28LPS8V229]] 685 + 686 + 687 += 8. Trouble Shooting = 688 + 689 +== 8.1 Fallback IP does not work, how can users check == 690 + 691 + 692 +When the computer has completed the above fallback IP configuration,the LG01v2 Web UI is still not accessible via fallback IP. 693 + 694 + 695 +**1.Check whether the configuration is correct** 696 + 697 +Run the CMD command to ipconfig and ping 172.31.255.254. 698 + 699 +If this fails, the user needs to reconfigure. 700 + 701 +[[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"]] 702 + 703 +[[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"]] 704 + 705 + 706 +**2. Check whether the firewall is disabled** 707 + 708 +If the firewall is not down, this will affect access to the gateway. 709 + 710 + 711 += (% style="color:inherit; font-family:inherit; font-size:29px" %)9. Supports(%%) = 712 + 713 + 386 386 ((( 387 - **//If you are experiencing issues and can't solve them, you can send mail to [[support@dragino.com>>mailto:support@dragino.com]].//**715 +If you are experiencing issues and can't solve them, you can send mail to [[support@dragino.com>>mailto:support@dragino.com]]. 388 388 ))) 389 389 390 390 ((( 391 - **//With your question as detailed as possible. We will reply and help you in the shortest.//**719 +With your question as detailed as possible. We will reply and help you in the shortest. 392 392 393 393 722 += 10. Reference = 394 394 395 -= **9. Reference** = 396 396 725 +* Install Tago Core: Refer **Install Tago Core in LG01v2** in[[ Instruction>>doc:Main.Tago\.IO.WebHome]]. 397 397 398 -* Install Tago Core: Refer **Install Tago Core in LPS8v2** in[[ Instruction>>doc:Main.Tago\.IO.WebHome]]. 399 -* [[Advance OS Reference Guide for LPS8v2>>doc:Main.Armbian OS instruction.WebHome]]. 727 +* [[Advance OS Reference Guide for L>>doc:Main.Armbian OS instruction.WebHome]]G01v2. 400 400 401 401 402 402 ))) 403 403 404 -= **10. Order Info**=732 += 11. Order Info = 405 405 406 406 407 -(% style="color:#0000ff" %)**L PS8v2-XXX-YYY**735 +(% style="color:#0000ff" %)**LG01v2-XXX-YYY** 408 408 409 409 (% style="color:#0000ff" %)**XXX**(% style="color:black" %): Frequency Band 410 410 411 -* (% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band 412 -* (% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band 413 -* (% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band 414 -* (% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band 415 -* (% style="color:red" %)**US915**(%%): LoRaWAN US915 band 416 -* (% style="color:red" %)**IN865**(%%): LoRaWAN IN865 band 739 +* (% style="color:red" %)**868**(%%): For frequency : 863 ~~ 870Mhz 740 +* (% style="color:red" %)**915**(%%): For frequency : 902 ~~ 928Mhz 417 417 418 418 (% style="color:#0000ff" %)**YYY**(% style="color:black" %): 4G Cellular Option 419 419 420 -* (% style="color:red" %)**E**(%%): EMEA, Korea, Thailand, India .421 -* (% style="color:red" %)**A**(%%): NorthAmerica/Rogers/AT&T/T-Mobile.422 -* (% style="color:red" %)**AU**(%%): Latin America, New Zeland, Taiwan 423 -* (% style="color:red" %)**J**(%%): Japan, DOCOMO /SoftBank/KDDI744 +* (% style="color:red" %)**EC25-E**(% style="color:black" %): EMEA, Korea, Thailand, India 745 +* (% style="color:red" %)**EC25-AFX**(% style="color:black" %): America: Verizon, AT&T(FirstNet), U.S.Cellular; Canada: Telus 746 +* (% style="color:red" %)**EC25-AUX**(% style="color:black" %): Latin America, New Zeland, Taiwan 747 +* (% style="color:red" %)**EC25-J**(% style="color:black" %): Japan, DOCOMO, SoftBank, KDDI 424 424 425 425 More info about valid bands, please see [[EC25-E product page>>url:https://www.quectel.com/product/ec25.htm]]. 426 426 427 427 752 += 12. Manufacturer Info = 428 428 429 -= **10. Manufacturer Info** = 430 430 431 - 432 432 **Shenzhen Dragino Technology Development co. LTD** 433 433 434 434 Room 202, Block B, BCT Incubation Bases (BaoChengTai), No.8 CaiYunRoad ... ... @@ -436,10 +436,9 @@ 436 436 LongCheng Street, LongGang District ; Shenzhen 518116,China 437 437 438 438 762 += 13. FCC Warning = 439 439 440 -= **11. FCC Warning** = 441 441 442 - 443 443 ((( 444 444 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: 445 445 ))) ... ... @@ -469,7 +469,6 @@ 469 469 ((( 470 470 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. 471 471 794 + 472 472 473 473 ))) 474 - 475 -~)~)~)
- 1667456058832-484.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +21.0 KB - Content
- LG01v2_LSN50v2_S31.json
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +16.5 KB - Content
-
... ... @@ -1,0 +1,587 @@ 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_Shield_Sketch_For_MQTT.ino
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +2.9 KB - Content
-
... ... @@ -1,0 +1,118 @@ 1 +#include <SPI.h> 2 +#include <LoRa.h> 3 + 4 +// This is the LoRa Node side sketch for the MQTT example: http://wiki.dragino.com/index.php?title=MQTT_Forward_Instruction#Example_to_communicate_to_a_simple_MQTT_server 5 + 6 +float tem,hum; 7 +char tem_1[8]={"\0"},hum_1[8]={"\0"}; 8 +char *node_id = "<4567>"; //From LG01 via web Local Channel settings on MQTT.Please refer <> dataformat in here. 9 +uint8_t datasend[36]; 10 +unsigned int count = 1; 11 +unsigned long new_time,old_time=0; 12 + 13 +void setup() 14 +{ 15 + Serial.begin(9600); 16 + while (!Serial); 17 + Serial.println(F("Start MQTT Example")); 18 + if (!LoRa.begin(868100000)) //868000000 is frequency 19 + { 20 + Serial.println("Starting LoRa failed!"); 21 + while (1); 22 + } 23 + // Setup Spreading Factor (6 ~ 12) 24 + LoRa.setSpreadingFactor(12); 25 + 26 + // Setup BandWidth, option: 7800,10400,15600,20800,31250,41700,62500,125000,250000,500000 27 + //Lower BandWidth for longer distance. 28 + LoRa.setSignalBandwidth(125000); 29 + 30 + // Setup Coding Rate:5(4/5),6(4/6),7(4/7),8(4/8) 31 + LoRa.setCodingRate4(5); 32 + LoRa.setSyncWord(0x12); 33 + void disableCrc(); 34 + LoRa.disableInvertIQ(); 35 + LoRa.explicitHeaderMode(); 36 + Serial.println("LoRa init succeeded."); 37 + LoRa.onReceive(onReceive); 38 + LoRa.receive(); 39 +} 40 + 41 +void dhtTem() 42 +{ 43 + tem = random(15,40); 44 + hum = random(40,80); 45 + Serial.println(F("The temperature and humidity:")); 46 + Serial.print("["); 47 + Serial.print(tem); 48 + Serial.print("℃"); 49 + Serial.print(","); 50 + Serial.print(hum); 51 + Serial.print("%"); 52 + Serial.print("]"); 53 + Serial.println(""); 54 +} 55 +void dhtWrite() 56 +{ 57 + char data[50] = "\0"; 58 + //for(int i = 0; i < 50; i++) 59 + //{ 60 + // data[i] = node_id[i]; 61 + //} 62 + 63 + dtostrf(tem,0,1,tem_1); 64 + dtostrf(hum,0,1,hum_1); 65 + 66 + // Serial.println(tem_1); 67 + strcat(data,"tem="); 68 + strcat(data,tem_1); 69 + strcat(data,"&hum="); 70 + strcat(data,hum_1); 71 + strcpy((char *)datasend,data); 72 + 73 + //Serial.println((char *)datasend); 74 + //Serial.println(sizeof datasend); 75 + 76 +} 77 + 78 + 79 +void SendData() 80 +{ 81 + LoRa.beginPacket(); 82 + LoRa.print((char *)datasend); 83 + LoRa.endPacket(); 84 + Serial.println("Packet Sent"); 85 +} 86 + 87 + 88 + 89 +void loop() 90 +{ 91 + new_time=millis(); 92 + if (new_time - old_time >= 30000 || old_time == 0) 93 + { 94 + old_time = new_time; 95 + Serial.print("########### "); 96 + Serial.print("COUNT="); 97 + Serial.print(count); 98 + Serial.println(" ###########"); 99 + count++; 100 + dhtTem(); 101 + dhtWrite(); 102 + SendData(); 103 + LoRa.receive(); 104 + } 105 +} 106 + 107 +void onReceive(int packetSize) { 108 + 109 + // received a packet 110 + Serial.print("Received packet : "); 111 + 112 + // read packet 113 + for (int i = 0; i < packetSize; i++) { 114 + Serial.print((char)LoRa.read()); 115 + } 116 + Serial.print("\n\r"); 117 +} 118 +
- LoRa_send_trial.ino
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +3.4 KB - Content
-
... ... @@ -1,0 +1,124 @@ 1 +#include "LoRaWan_APP.h" 2 +#include "Arduino.h" 3 + 4 + 5 +#define RF_FREQUENCY 868100000 // Hz 6 + 7 +#define TX_OUTPUT_POWER 5 // dBm 8 + 9 +#define LORA_BANDWIDTH 0 // [0: 125 kHz, 10 + // 1: 250 kHz, 11 + // 2: 500 kHz, 12 + // 3: Reserved] 13 +#define LORA_SPREADING_FACTOR 12 // [SF7..SF12] 14 +#define LORA_CODINGRATE 1 // [1: 4/5, 15 + // 2: 4/6, 16 + // 3: 4/7, 17 + // 4: 4/8] 18 +#define LORA_PREAMBLE_LENGTH 8 // Same for Tx and Rx 19 +#define LORA_SYMBOL_TIMEOUT 0 // Symbols 20 +#define LORA_FIX_LENGTH_PAYLOAD_ON false 21 +#define LORA_IQ_INVERSION_ON false 22 + 23 + 24 +#define RX_TIMEOUT_VALUE 1000 25 +#define BUFFER_SIZE 30 // Define the payload size here 26 + 27 +float tem,hum; 28 +char tem_1[8]={"\0"},hum_1[8]={"\0"}; 29 +char *node_id = "<GW01>"; //From LG01 via web Local Channel settings on MQTT.Please refer <> dataformat in here. 30 + 31 +char txpacket[BUFFER_SIZE]; 32 +char rxpacket[BUFFER_SIZE]; 33 + 34 +double txNumber; 35 + 36 +bool lora_idle=true; 37 + 38 +static RadioEvents_t RadioEvents; 39 +void OnTxDone( void ); 40 +void OnTxTimeout( void ); 41 + 42 +void dhtTem() 43 +{ 44 + tem = random(15,40); 45 + hum = random(40,80); 46 + Serial.println(F("The temperature and humidity:")); 47 + Serial.print("["); 48 + Serial.print(tem); 49 + Serial.print("℃"); 50 + Serial.print(","); 51 + Serial.print(hum); 52 + Serial.print("%"); 53 + Serial.print("]"); 54 + Serial.println(""); 55 +} 56 + 57 +void dhtWrite() 58 +{ 59 + char data[50] = "\0"; 60 + for(int i = 0; i < 50; i++) 61 + { 62 + data[i] = node_id[i]; 63 + } 64 + 65 + dtostrf(tem,0,1,tem_1); 66 + dtostrf(hum,0,1,hum_1); 67 + 68 + strcat(data,"tem_a="); 69 + strcat(data,tem_1); 70 + strcat(data,"&hum_a="); 71 + strcat(data,hum_1); 72 + strcpy((char *)txpacket,data); 73 + 74 + Serial.println((char *)txpacket); 75 +} 76 + 77 +void setup() { 78 + Serial.begin(115200); 79 + Mcu.begin(); 80 + 81 + txNumber=0; 82 + 83 + RadioEvents.TxDone = OnTxDone; 84 + RadioEvents.TxTimeout = OnTxTimeout; 85 + 86 + Radio.Init( &RadioEvents ); 87 + Radio.SetChannel( RF_FREQUENCY ); 88 + Radio.SetTxConfig( MODEM_LORA, TX_OUTPUT_POWER, 0, LORA_BANDWIDTH, 89 + LORA_SPREADING_FACTOR, LORA_CODINGRATE, 90 + LORA_PREAMBLE_LENGTH, LORA_FIX_LENGTH_PAYLOAD_ON, 91 + true, 0, 0, LORA_IQ_INVERSION_ON, 3000 ); 92 + } 93 + 94 + 95 + 96 +void loop() 97 +{ 98 + if(lora_idle == true) 99 + { 100 + delay(5000); 101 + txNumber += 0.01; 102 + Serial.println(txNumber); 103 + 104 + dhtTem(); 105 + dhtWrite(); 106 + Radio.Send( (uint8_t *)txpacket, strlen(txpacket) ); //send the package out 107 + lora_idle = false; 108 + } 109 + Radio.IrqProcess( ); 110 +} 111 + 112 +void OnTxDone( void ) 113 +{ 114 + Serial.println("TX done......"); 115 + lora_idle = true; 116 +} 117 + 118 +void OnTxTimeout( void ) 119 +{ 120 + Radio.Sleep( ); 121 + Serial.println("TX Timeout......"); 122 + lora_idle = true; 123 +} 124 +
- Log-Temperature-Sensor-and-send-data-to-Node-red.ino
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +3.6 KB - Content
-
... ... @@ -1,0 +1,150 @@ 1 +#include <SoftwareSerial.h> 2 +#include <Adafruit_Sensor.h> 3 +#include <DHT.h> 4 +#include <DHT_U.h> 5 +/* 6 + 7 +*/ 8 +#define DHTPIN 8 // Digital pin connected to the DHT sensor 9 +#define DHTTYPE DHT11 // DHT 11 10 +DHT_Unified dht(DHTPIN, DHTTYPE); 11 + 12 +String inputString = ""; // a String to hold incoming data 13 +bool stringComplete = false; // whether the string is complete 14 + 15 +long old_time=millis(); 16 +long new_time; 17 + 18 +long uplink_interval=30000; //ms 19 + 20 +float DHT11_temp; 21 +float DHT11_hum; 22 + 23 +SoftwareSerial ss(10, 11); // Arduino RX, TX , 24 + 25 +char rxbuff[128]; 26 +uint8_t rxbuff_index=0; 27 + 28 +void setup() { 29 + // initialize serial 30 + Serial.begin(9600); 31 + 32 + ss.begin(9600); 33 + ss.listen(); 34 + 35 + // reserve 200 bytes for the inputString: 36 + inputString.reserve(200); 37 + 38 + dht.begin(); 39 + sensor_t sensor; 40 + dht.temperature().getSensor(&sensor); 41 + dht.humidity().getSensor(&sensor); 42 + 43 + ss.println("ATZ");//reset LA66 44 +} 45 + 46 +void loop() { 47 + 48 + while ( ss.available()) { 49 + // get the new byte: 50 + char inChar = (char) ss.read(); 51 + // add it to the inputString: 52 + inputString += inChar; 53 + 54 + rxbuff[rxbuff_index++]=inChar; 55 + 56 + if(rxbuff_index>128) 57 + { 58 + rxbuff[rxbuff_index]='\0'; 59 + rxbuff_index=0; 60 + break; 61 + } 62 + 63 + // if the incoming character is a newline, set a flag so the main loop can 64 + // do something about it: 65 + if (inChar == '\n' || inChar == '\r') { 66 + stringComplete = true; 67 + rxbuff[rxbuff_index]='\0'; 68 + rxbuff_index=0; 69 + } 70 + } 71 + 72 + while ( Serial.available()) { 73 + // get the new byte: 74 + char inChar = (char) Serial.read(); 75 + // add it to the inputString: 76 + inputString += inChar; 77 + // if the incoming character is a newline, set a flag so the main loop can 78 + // do something about it: 79 + if (inChar == '\n' || inChar == '\r') { 80 + ss.print(inputString); 81 + inputString = "\0"; 82 + } 83 + } 84 + 85 + // print the string when a newline arrives: 86 + if (stringComplete) { 87 + Serial.print(inputString); 88 + 89 + // clear the string: 90 + inputString = "\0"; 91 + stringComplete = false; 92 + } 93 + 94 + new_time = millis(); 95 + 96 + if(new_time-old_time>=uplink_interval){ 97 + old_time = new_time; 98 + 99 + Serial.print(F("\r\n")); 100 + // Get temperature event and print its value. 101 + sensors_event_t event; 102 + dht.temperature().getEvent(&event); 103 + if (isnan(event.temperature)) { 104 + Serial.println(F("Error reading temperature!")); 105 + DHT11_temp=327.67; 106 + } 107 + else { 108 + DHT11_temp=event.temperature; 109 + 110 + if(DHT11_temp>60){ 111 + DHT11_temp=60; 112 + } 113 + else if(DHT11_temp<-20){ 114 + DHT11_temp=-20; 115 + } 116 + } 117 + // Get humidity event and print its value. 118 + dht.humidity().getEvent(&event); 119 + if (isnan(event.relative_humidity)) { 120 + DHT11_hum=327.67; 121 + Serial.println(F("Error reading humidity!")); 122 + } 123 + else { 124 + DHT11_hum=event.relative_humidity; 125 + 126 + if(DHT11_hum>100){ 127 + DHT11_hum=100; 128 + } 129 + else if(DHT11_hum<0){ 130 + DHT11_hum=0; 131 + } 132 + } 133 + 134 + Serial.print(F("Temperature: ")); 135 + Serial.print(DHT11_temp); 136 + Serial.println(F("°C")); 137 + Serial.print(F("Humidity: ")); 138 + Serial.print(DHT11_hum); 139 + Serial.println(F("%")); 140 + Serial.print(F("\r\n")); 141 + 142 + char sensor_data_buff[128]="\0"; 143 + 144 + //confirm status,Fport,payload length,payload(HEX) 145 + snprintf(sensor_data_buff,128,"AT+SEND=0,%02X%02X%02X%02X,0,0",(short)(DHT11_temp*100)>>8 & 0xFF,(short)(DHT11_temp*100) & 0xFF,(short)(DHT11_hum*10)>>8 & 0xFF,(short)(DHT11_hum*10) & 0xFF); 146 + ss.print(sensor_data_buff); 147 + ss.print('\r'); 148 + } 149 +} 150 +
- Log-Temperature-Sensor-and-send-data-to-Node-red.json
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +10.3 KB - Content
-
... ... @@ -1,0 +1,443 @@ 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,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +10.1 KB - Content
-
... ... @@ -1,0 +1,443 @@ 1 +[ 2 + { 3 + "id": "5f10779accc05655", 4 + "type": "tab", 5 + "label": "serial USB", 6 + "disabled": false, 7 + "info": "", 8 + "env": [] 9 + }, 10 + { 11 + "id": "4ea60ce4df40717c", 12 + "type": "serial in", 13 + "z": "5f10779accc05655", 14 + "name": "", 15 + "serial": "bb1c0e81fd51fa9e", 16 + "x": 210, 17 + "y": 60, 18 + "wires": [ 19 + [ 20 + "40eac96a52733f7a", 21 + "79722a224bb22c96" 22 + ] 23 + ] 24 + }, 25 + { 26 + "id": "fe5a93a52b6adcf1", 27 + "type": "inject", 28 + "z": "5f10779accc05655", 29 + "name": "AT+SEND=1,hello world,0,3", 30 + "props": [ 31 + { 32 + "p": "payload" 33 + } 34 + ], 35 + "repeat": "", 36 + "crontab": "", 37 + "once": false, 38 + "onceDelay": 0.1, 39 + "topic": "", 40 + "payload": "AT+SEND=1,hello world,0,3", 41 + "payloadType": "str", 42 + "x": 220, 43 + "y": 260, 44 + "wires": [ 45 + [ 46 + "3f8add7e2e1d1d17" 47 + ] 48 + ] 49 + }, 50 + { 51 + "id": "3f8add7e2e1d1d17", 52 + "type": "serial out", 53 + "z": "5f10779accc05655", 54 + "name": "", 55 + "serial": "bb1c0e81fd51fa9e", 56 + "x": 540, 57 + "y": 260, 58 + "wires": [] 59 + }, 60 + { 61 + "id": "16e7d3d83d9e9415", 62 + "type": "inject", 63 + "z": "5f10779accc05655", 64 + "name": "", 65 + "props": [ 66 + { 67 + "p": "payload" 68 + } 69 + ], 70 + "repeat": "", 71 + "crontab": "", 72 + "once": false, 73 + "onceDelay": 0.1, 74 + "topic": "", 75 + "payload": "ATZ", 76 + "payloadType": "str", 77 + "x": 290, 78 + "y": 320, 79 + "wires": [ 80 + [ 81 + "3f8add7e2e1d1d17" 82 + ] 83 + ] 84 + }, 85 + { 86 + "id": "09ea381519629dae", 87 + "type": "inject", 88 + "z": "5f10779accc05655", 89 + "name": "AT+FRE", 90 + "props": [ 91 + { 92 + "p": "payload" 93 + } 94 + ], 95 + "repeat": "", 96 + "crontab": "", 97 + "once": false, 98 + "onceDelay": 0.1, 99 + "topic": "", 100 + "payload": "AT+FRE=868.100,868.100", 101 + "payloadType": "str", 102 + "x": 280, 103 + "y": 380, 104 + "wires": [ 105 + [ 106 + "3f8add7e2e1d1d17" 107 + ] 108 + ] 109 + }, 110 + { 111 + "id": "5167a7f904013ffd", 112 + "type": "inject", 113 + "z": "5f10779accc05655", 114 + "name": "AT+BW", 115 + "props": [ 116 + { 117 + "p": "payload" 118 + } 119 + ], 120 + "repeat": "", 121 + "crontab": "", 122 + "once": false, 123 + "onceDelay": 0.1, 124 + "topic": "", 125 + "payload": "AT+BW=0,0", 126 + "payloadType": "str", 127 + "x": 290, 128 + "y": 440, 129 + "wires": [ 130 + [ 131 + "3f8add7e2e1d1d17" 132 + ] 133 + ] 134 + }, 135 + { 136 + "id": "dbe4abbc730c76e6", 137 + "type": "inject", 138 + "z": "5f10779accc05655", 139 + "name": "AT+SF", 140 + "props": [ 141 + { 142 + "p": "payload" 143 + } 144 + ], 145 + "repeat": "", 146 + "crontab": "", 147 + "once": false, 148 + "onceDelay": 0.1, 149 + "topic": "", 150 + "payload": "AT+SF=12,12", 151 + "payloadType": "str", 152 + "x": 290, 153 + "y": 500, 154 + "wires": [ 155 + [ 156 + "3f8add7e2e1d1d17" 157 + ] 158 + ] 159 + }, 160 + { 161 + "id": "3be3ab296a75d512", 162 + "type": "inject", 163 + "z": "5f10779accc05655", 164 + "name": "AT+RXMOD", 165 + "props": [ 166 + { 167 + "p": "payload" 168 + } 169 + ], 170 + "repeat": "", 171 + "crontab": "", 172 + "once": false, 173 + "onceDelay": 0.1, 174 + "topic": "", 175 + "payload": "AT+RXMOD=65535,2", 176 + "payloadType": "str", 177 + "x": 270, 178 + "y": 560, 179 + "wires": [ 180 + [ 181 + "3f8add7e2e1d1d17" 182 + ] 183 + ] 184 + }, 185 + { 186 + "id": "7a03d1413c60ea1c", 187 + "type": "inject", 188 + "z": "5f10779accc05655", 189 + "name": "AT+SYNCWORD", 190 + "props": [ 191 + { 192 + "p": "payload" 193 + } 194 + ], 195 + "repeat": "", 196 + "crontab": "", 197 + "once": false, 198 + "onceDelay": 0.1, 199 + "topic": "", 200 + "payload": "AT+SYNCWORD=0", 201 + "payloadType": "str", 202 + "x": 260, 203 + "y": 620, 204 + "wires": [ 205 + [ 206 + "3f8add7e2e1d1d17" 207 + ] 208 + ] 209 + }, 210 + { 211 + "id": "40eac96a52733f7a", 212 + "type": "function", 213 + "z": "5f10779accc05655", 214 + "name": "function 1", 215 + "func": "var data = msg.payload\nif (data.substring(0, 4) == \"Data\")\n{\n if (data.substring(6, 12) == \"(HEX:)\")\n {\n var temp = data.substring(13, 15) + data.substring(16, 18)\n var hum = data.substring(19, 21) + data.substring(22, 24)\n var temp1 = parseInt(temp, 16)/100\n var hum1 = parseInt(hum, 16)/10\n var a1 = { payload: temp1 }, a2 = { payload: hum1 }\n }\n}\nif (data.substring(0, 4) == \"Rssi\")\n{\n var rssi = data.substring(6)\n var a3 = { payload: rssi }\n}\nreturn [a1,a2,a3];\n \n\n", 216 + "outputs": 3, 217 + "noerr": 0, 218 + "initialize": "", 219 + "finalize": "", 220 + "libs": [], 221 + "x": 420, 222 + "y": 60, 223 + "wires": [ 224 + [ 225 + "81edb003937f1a92" 226 + ], 227 + [ 228 + "c63593404a60d9dc" 229 + ], 230 + [ 231 + "61ca71032888887b" 232 + ] 233 + ] 234 + }, 235 + { 236 + "id": "61ca71032888887b", 237 + "type": "ui_chart", 238 + "z": "5f10779accc05655", 239 + "name": "", 240 + "group": "ef41b39771110fa5", 241 + "order": 1, 242 + "width": 0, 243 + "height": 0, 244 + "label": "RSSI", 245 + "chartType": "line", 246 + "legend": "false", 247 + "xformat": "dd HH:mm", 248 + "interpolate": "linear", 249 + "nodata": "", 250 + "dot": true, 251 + "ymin": "", 252 + "ymax": "", 253 + "removeOlder": 1, 254 + "removeOlderPoints": "", 255 + "removeOlderUnit": "3600", 256 + "cutout": 0, 257 + "useOneColor": false, 258 + "useUTC": false, 259 + "colors": [ 260 + "#1f77b4", 261 + "#aec7e8", 262 + "#ff7f0e", 263 + "#2ca02c", 264 + "#98df8a", 265 + "#d62728", 266 + "#ff9896", 267 + "#9467bd", 268 + "#c5b0d5" 269 + ], 270 + "outputs": 1, 271 + "useDifferentColor": false, 272 + "className": "", 273 + "x": 670, 274 + "y": 180, 275 + "wires": [ 276 + [] 277 + ] 278 + }, 279 + { 280 + "id": "81edb003937f1a92", 281 + "type": "ui_chart", 282 + "z": "5f10779accc05655", 283 + "name": "", 284 + "group": "7e1d1c102cf74e6b", 285 + "order": 1, 286 + "width": 0, 287 + "height": 0, 288 + "label": "Temperature", 289 + "chartType": "line", 290 + "legend": "false", 291 + "xformat": "HH:mm:ss", 292 + "interpolate": "linear", 293 + "nodata": "", 294 + "dot": true, 295 + "ymin": "", 296 + "ymax": "", 297 + "removeOlder": 1, 298 + "removeOlderPoints": "", 299 + "removeOlderUnit": "3600", 300 + "cutout": 0, 301 + "useOneColor": false, 302 + "useUTC": false, 303 + "colors": [ 304 + "#1f77b4", 305 + "#aec7e8", 306 + "#ff7f0e", 307 + "#2ca02c", 308 + "#98df8a", 309 + "#d62728", 310 + "#ff9896", 311 + "#9467bd", 312 + "#c5b0d5" 313 + ], 314 + "outputs": 1, 315 + "useDifferentColor": false, 316 + "className": "", 317 + "x": 690, 318 + "y": 100, 319 + "wires": [ 320 + [] 321 + ] 322 + }, 323 + { 324 + "id": "c63593404a60d9dc", 325 + "type": "ui_chart", 326 + "z": "5f10779accc05655", 327 + "name": "", 328 + "group": "3f5d139f158d7c1c", 329 + "order": 2, 330 + "width": 0, 331 + "height": 0, 332 + "label": "Humidity", 333 + "chartType": "line", 334 + "legend": "false", 335 + "xformat": "HH:mm:ss", 336 + "interpolate": "linear", 337 + "nodata": "", 338 + "dot": true, 339 + "ymin": "", 340 + "ymax": "", 341 + "removeOlder": 1, 342 + "removeOlderPoints": "", 343 + "removeOlderUnit": "3600", 344 + "cutout": 0, 345 + "useOneColor": false, 346 + "useUTC": false, 347 + "colors": [ 348 + "#1f77b4", 349 + "#aec7e8", 350 + "#ff7f0e", 351 + "#2ca02c", 352 + "#98df8a", 353 + "#d62728", 354 + "#ff9896", 355 + "#9467bd", 356 + "#c5b0d5" 357 + ], 358 + "outputs": 1, 359 + "useDifferentColor": false, 360 + "className": "", 361 + "x": 680, 362 + "y": 140, 363 + "wires": [ 364 + [] 365 + ] 366 + }, 367 + { 368 + "id": "79722a224bb22c96", 369 + "type": "debug", 370 + "z": "5f10779accc05655", 371 + "name": "debug 1", 372 + "active": true, 373 + "tosidebar": true, 374 + "console": false, 375 + "tostatus": false, 376 + "complete": "false", 377 + "statusVal": "", 378 + "statusType": "auto", 379 + "x": 420, 380 + "y": 180, 381 + "wires": [] 382 + }, 383 + { 384 + "id": "bb1c0e81fd51fa9e", 385 + "type": "serial-port", 386 + "serialport": "/dev/ttyUSB0", 387 + "serialbaud": "9600", 388 + "databits": "8", 389 + "parity": "none", 390 + "stopbits": "1", 391 + "waitfor": "", 392 + "dtr": "none", 393 + "rts": "none", 394 + "cts": "none", 395 + "dsr": "none", 396 + "newline": "\\n", 397 + "bin": "false", 398 + "out": "char", 399 + "addchar": "\\r\\n", 400 + "responsetimeout": "10000" 401 + }, 402 + { 403 + "id": "ef41b39771110fa5", 404 + "type": "ui_group", 405 + "name": "rssi", 406 + "tab": "abb98f80600a5448", 407 + "order": 3, 408 + "disp": true, 409 + "width": "6", 410 + "collapse": false, 411 + "className": "" 412 + }, 413 + { 414 + "id": "7e1d1c102cf74e6b", 415 + "type": "ui_group", 416 + "name": "TEM", 417 + "tab": "abb98f80600a5448", 418 + "order": 4, 419 + "disp": true, 420 + "width": "6", 421 + "collapse": false, 422 + "className": "" 423 + }, 424 + { 425 + "id": "3f5d139f158d7c1c", 426 + "type": "ui_group", 427 + "name": "HUM", 428 + "tab": "abb98f80600a5448", 429 + "order": 2, 430 + "disp": true, 431 + "width": "6", 432 + "collapse": false, 433 + "className": "" 434 + }, 435 + { 436 + "id": "abb98f80600a5448", 437 + "type": "ui_tab", 438 + "name": "LG01v2", 439 + "icon": "LG01v2", 440 + "disabled": false, 441 + "hidden": false 442 + } 443 +]
- arduino-LoRa-master.zip
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +28.6 KB - Content
- image-20221101160705-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +6.1 KB - Content
- image-20221101161318-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +46.3 KB - Content
- image-20221101161951-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +131.0 KB - Content
- image-20221101162527-4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +290.1 KB - Content
- image-20221102105419-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +37.3 KB - Content
- image-20221102110604-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +35.9 KB - Content
- image-20221102114002-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +50.1 KB - Content
- image-20221102140053-4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +45.6 KB - Content
- image-20221103140645-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +39.1 KB - Content
- image-20221103142228-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +37.7 KB - Content
- image-20221103142416-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +325.9 KB - Content
- image-20221103143528-4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +25.2 KB - Content
- image-20221103143618-5.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +25.1 KB - Content
- image-20221103144405-6.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +32.8 KB - Content
- image-20221103152033-7.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +25.3 KB - Content
- image-20221103152238-8.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +32.8 KB - Content
- image-20221104100344-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +137.0 KB - Content
- image-20221104100520-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +140.7 KB - Content
- image-20221104102736-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +325.9 KB - Content
- image-20221104155612-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +384.2 KB - Content
- image-20221104155654-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +35.5 KB - Content
- image-20221104155724-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +42.4 KB - Content
- image-20221104155907-4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +66.7 KB - Content
- image-20221104155928-5.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +49.5 KB - Content
- image-20221104155949-6.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +46.0 KB - Content
- image-20221108164337-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +17.5 KB - Content
- image-20221108164413-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +27.1 KB - Content
- image-20221108170314-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +34.6 KB - Content
- image-20221108170621-4.jpeg
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +544.6 KB - Content
- image-20221108170731-5.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +2.5 MB - Content
- image-20221108172149-6.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +17.5 KB - Content
- image-20221108172432-7.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +45.9 KB - Content
- image-20221108174840-8.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +52.1 KB - Content
- image-20221108175113-9.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +72.6 KB - Content
- image-20221108180334-10.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +159.3 KB - Content
- image-20221108180458-11.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +52.4 KB - Content
- image-20221112161031-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +35.1 KB - Content
- image-20221112161111-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +34.8 KB - Content
- image-20221112162733-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +78.7 KB - Content
- image-20221112163119-4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +32.6 KB - Content
- image-20230504095457-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +412.6 KB - Content
- image-20230504095502-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +412.6 KB - Content
- image-20230504100722-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +21.5 KB - Content
- image-20230506110646-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +383.1 KB - Content
- image-20230506113332-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +28.6 KB - Content
- image-20230506113432-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +36.5 KB - Content
- image-20230506113531-4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +403.2 KB - Content
- image-20230506113602-5.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +26.7 KB - Content
- image-20230506113623-6.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +35.4 KB - Content
- image-20230506113705-7.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +40.9 KB - Content
- image-20230506113722-8.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +33.2 KB - Content
- image-20230506113737-9.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +25.2 KB - Content
- image-20230506113813-10.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +39.5 KB - Content
- image-20230506113831-11.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +32.2 KB - Content
- image-20230506114127-12.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +56.1 KB - Content
- image-20230506115438-13.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +413.6 KB - Content
- image-20230620103153-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +127.6 KB - Content
- image-20230620103535-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +156.3 KB - Content
- image-20230620103923-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +72.7 KB - Content
- image-20231014092843-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +596 bytes - Content
- image-20231014092934-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +620 bytes - Content
- image-20231014092954-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +618 bytes - Content
- image-20231014092959-4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Kilight - Size
-
... ... @@ -1,0 +1,1 @@ 1 +563 bytes - 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 +]