Changes for page RS485-LN – RS485 to LoRaWAN Converter User Manual
Last modified by Bei Jinggeng on 2025/01/16 11:36
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 18 added, 0 removed)
- image-20220824144240-1.png
- image-20220824145428-2.png
- image-20220824145428-3.png
- image-20220929111027-1.png
- image-20221130104310-1.png
- image-20221130104310-10.png
- image-20221130104310-11.png
- image-20221130104310-12.png
- image-20221130104310-13.png
- image-20221130104310-14.png
- image-20221130104310-2.png
- image-20221130104310-3.png
- image-20221130104310-4.png
- image-20221130104310-5.png
- image-20221130104310-6.png
- image-20221130104310-7.png
- image-20221130104310-8.png
- image-20221130104310-9.png
Details
- Page properties
-
- Content
-
... ... @@ -12,11 +12,6 @@ 12 12 13 13 14 14 15 - 16 - 17 - 18 - 19 - 20 20 **Table of Contents:** 21 21 22 22 {{toc/}} ... ... @@ -33,44 +33,32 @@ 33 33 34 34 35 35 36 -= 1.Introduction = 31 += 1. Introduction = 37 37 38 38 == 1.1 What is RS485-LN RS485 to LoRaWAN Converter == 39 39 40 -((( 41 -((( 42 -((( 43 - 44 44 36 +((( 45 45 The Dragino RS485-LN is a (% style="color:blue" %)**RS485 to LoRaWAN Converter**(%%). It converts the RS485 signal into LoRaWAN wireless signal which simplify the IoT installation and reduce the installation/maintaining cost. 46 46 ))) 47 -))) 48 48 49 49 ((( 50 -((( 51 51 RS485-LN allows user to (% style="color:blue" %)**monitor / control RS485 devices**(%%) and reach extremely long ranges. It provides ultra-long range spread spectrum communication and high interference immunity whilst minimizing current consumption. It targets professional wireless sensor network applications such as irrigation systems, smart metering, smart cities, smartphone detection, building automation, and so on. 52 52 ))) 53 -))) 54 54 55 55 ((( 56 -((( 57 57 (% style="color:blue" %)**For data uplink**(%%), RS485-LN sends user-defined commands to RS485 devices and gets the return from the RS485 devices. RS485-LN will process these returns according to user-define rules to get the final payload and upload to LoRaWAN server. 58 58 ))) 59 -))) 60 60 61 61 ((( 62 -((( 63 63 (% style="color:blue" %)**For data downlink**(%%), RS485-LN runs in LoRaWAN Class C. When there downlink commands from LoRaWAN server, RS485-LN will forward the commands from LoRaWAN server to RS485 devices. 64 64 ))) 65 65 66 66 ((( 67 67 (% style="color:blue" %)**Demo Dashboard for RS485-LN**(%%) connect to two energy meters: [[https:~~/~~/app.datacake.de/dashboard/d/58844a26-378d-4c5a-aaf5-b5b5b153447a>>url:https://app.datacake.de/dashboard/d/58844a26-378d-4c5a-aaf5-b5b5b153447a]] 68 - 69 - 70 70 ))) 71 -))) 72 -))) 73 73 56 + 74 74 (% aria-label="1653267211009-519.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1653267211009-519.png||data-widget="image" height="419" width="724"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 75 75 76 76 ... ... @@ -77,20 +77,20 @@ 77 77 == 1.2 Specifications == 78 78 79 79 80 -**Hardware System:** 63 +(% style="color:#037691" %)**Hardware System:** 81 81 82 -* STM32L072 CZT6MCU65 +* STM32L072xxxx MCU 83 83 * SX1276/78 Wireless Chip 84 84 * Power Consumption (exclude RS485 device): 85 85 ** Idle: 32mA@12v 86 86 ** 20dB Transmit: 65mA@12v 87 87 88 -**Interface for Model:** 71 +(% style="color:#037691" %)**Interface for Model:** 89 89 90 90 * RS485 91 91 * Power Input 7~~ 24V DC. 92 92 93 -**LoRa Spec:** 76 +(% style="color:#037691" %)**LoRa Spec:** 94 94 95 95 * Frequency Range: 96 96 ** Band 1 (HF): 862 ~~ 1020 Mhz ... ... @@ -113,8 +113,9 @@ 113 113 114 114 == 1.3 Features == 115 115 99 + 116 116 * LoRaWAN Class A & Class C protocol (default Class C) 117 -* Frequency Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865/RU864 101 +* Frequency Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865/RU864/MA869 118 118 * AT Commands to change parameters 119 119 * Remote configure parameters via LoRa Downlink 120 120 * Firmware upgradable via program port ... ... @@ -124,6 +124,7 @@ 124 124 125 125 == 1.4 Applications == 126 126 111 + 127 127 * Smart Buildings & Home Automation 128 128 * Logistics and Supply Chain Management 129 129 * Smart Metering ... ... @@ -133,11 +133,13 @@ 133 133 134 134 == 1.5 Firmware Change log == 135 135 121 + 136 136 [[RS485-LN Image files – Download link and Change log>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/]] 137 137 138 138 139 139 == 1.6 Hardware Change log == 140 140 127 + 141 141 ((( 142 142 ((( 143 143 ((( ... ... @@ -154,6 +154,7 @@ 154 154 155 155 = 2. Power ON Device = 156 156 144 + 157 157 ((( 158 158 The RS485-LN can be powered by 7 ~~ 24V DC power source. Connection as below 159 159 ... ... @@ -173,6 +173,7 @@ 173 173 174 174 == 3.1 How it works? == 175 175 164 + 176 176 ((( 177 177 ((( 178 178 The RS485-LN is configured as LoRaWAN OTAA Class C mode by default. It has OTAA keys to join network. To connect a local LoRaWAN network, user just need to input the OTAA keys in the network server and power on the RS485-LN. It will auto join the network via OTAA. ... ... @@ -183,8 +183,10 @@ 183 183 184 184 == 3.2 Example to join LoRaWAN network == 185 185 175 + 186 186 Here shows an example for how to join the TTN V3 Network. Below is the network structure, we use [[LG308>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/140-lg308.html]] as LoRaWAN gateway here. 187 187 178 + 188 188 (% aria-label="1653268155545-638.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1653268155545-638.png||data-widget="image" height="334" width="724"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 189 189 190 190 ... ... @@ -195,6 +195,8 @@ 195 195 196 196 ((( 197 197 485A+ and 485B- of the sensor are connected to RS485A and RA485B of RS485-LN respectively. 189 + 190 + 198 198 ))) 199 199 200 200 (% aria-label="1653268227651-549.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1653268227651-549.png||data-widget="image" height="592" width="720"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) ... ... @@ -202,6 +202,8 @@ 202 202 203 203 ((( 204 204 The LG308 is already set to connect to [[TTN V3 network >>path:https://www.thethingsnetwork.org/]]. So what we need to now is only configure the TTN V3: 198 + 199 + 205 205 ))) 206 206 207 207 ((( ... ... @@ -219,6 +219,8 @@ 219 219 ((( 220 220 ((( 221 221 User can enter this key in their LoRaWAN Server portal. Below is TTN V3 screen shot: 217 + 218 + 222 222 ))) 223 223 224 224 ((( ... ... @@ -232,8 +232,11 @@ 232 232 233 233 (% aria-label="image-20220519174512-3.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220519174512-3.png||data-widget="image" height="556" width="724"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 234 234 235 -(% aria-label="image-20220519174512-4.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220519174512-4.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]] (% title="Click and drag to resize" %)232 +(% aria-label="image-20220519174512-4.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220519174512-4.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]] 236 236 234 + 235 +(% title="Click and drag to resize" %) 236 + 237 237 You can also choose to create the device manually. 238 238 239 239 (% aria-label="1652953542269-423.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1652953542269-423.png||data-widget="image" height="710" width="723"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) ... ... @@ -245,8 +245,11 @@ 245 245 (% aria-label="1652953553383-907.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1652953553383-907.png||data-widget="image" height="514" width="724"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 246 246 247 247 248 + 248 248 ((( 249 249 (% style="color:blue" %)**Step 2**(%%): Power on RS485-LN and it will auto join to the TTN V3 network. After join success, it will start to upload message to TTN V3 and user can see in the panel. 251 + 252 + 250 250 ))) 251 251 252 252 (% aria-label="1652953568895-172.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1652953568895-172.png||data-widget="image" height="232" width="724"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) ... ... @@ -254,16 +254,19 @@ 254 254 255 255 == 3.3 Configure Commands to read data == 256 256 260 + 257 257 ((( 258 258 ((( 259 259 ((( 260 260 There are plenty of RS485 devices in the market and each device has different command to read the valid data. To support these devices in flexible, RS485-LN supports flexible command set. User can use [[AT Commands>>||anchor="H3.5ConfigureRS485-LNviaATorDownlink"]] or LoRaWAN Downlink Command to configure what commands RS485-LN should send for each sampling and how to handle the return from RS485 devices. 265 + 266 + 261 261 ))) 262 262 ))) 263 263 264 264 ((( 265 265 ((( 266 -(% style="color:red" %)Note: below description and commands are for firmware version >v1.1, if you have firmware version v1.0. Please check the [[user manual v1.0>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/&file=RS485-LN_UserManual_v1.0.1.pdf]] or upgrade the firmware to v1.1 272 +(% style="color:red" %)**Note: below description and commands are for firmware version >v1.1, if you have firmware version v1.0. Please check the [[user manual v1.0>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/&file=RS485-LN_UserManual_v1.0.1.pdf]] or upgrade the firmware to v1.1** 267 267 ))) 268 268 269 269 ... ... @@ -270,21 +270,23 @@ 270 270 ))) 271 271 ))) 272 272 273 -=== 3.3.1 onfigure UART settings for RS485 or TTL communication === 279 +=== 3.3.1 Configure UART settings for RS485 or TTL communication === 274 274 281 + 275 275 To use RS485-LN to read data from RS485 sensors, connect the RS485-LN A/B traces to the sensors. And user need to make sure RS485-LN use the match UART setting to access the sensors. The related commands for UART settings are: 276 276 277 -(% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %) 278 -|=(% style="width: 110px;" %)((( 284 + 285 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %) 286 +|=(% style="width: 119px; background-color: rgb(217, 226, 243); color: rgb(0, 112, 192);" %)((( 279 279 **AT Commands** 280 -)))|=(% style="width: 1 90px;" %)(((288 +)))|=(% style="width: 116px; background-color: rgb(217, 226, 243); color: rgb(0, 112, 192);" %)((( 281 281 **Description** 282 -)))|=(% style="width: 190px;" %)((( 290 +)))|=(% style="width: 190px;background-color:#D9E2F3;color:#0070C0" %)((( 283 283 **Example** 284 284 ))) 285 -|(% style="width:11 0px" %)(((293 +|(% style="width:119px" %)((( 286 286 AT+BAUDR 287 -)))|(% style="width:1 90px" %)(((295 +)))|(% style="width:116px" %)((( 288 288 Set the baud rate (for RS485 connection). Default Value is: 9600. 289 289 )))|(% style="width:190px" %)((( 290 290 ((( ... ... @@ -295,9 +295,9 @@ 295 295 Options: (1200,2400,4800,14400,19200,115200) 296 296 ))) 297 297 ))) 298 -|(% style="width:11 0px" %)(((306 +|(% style="width:119px" %)((( 299 299 AT+PARITY 300 -)))|(% style="width:1 90px" %)(((308 +)))|(% style="width:116px" %)((( 301 301 Set UART parity (for RS485 connection) 302 302 )))|(% style="width:190px" %)((( 303 303 ((( ... ... @@ -308,9 +308,9 @@ 308 308 Option: 0: no parity, 1: odd parity, 2: even parity 309 309 ))) 310 310 ))) 311 -|(% style="width:11 0px" %)(((319 +|(% style="width:119px" %)((( 312 312 AT+STOPBIT 313 -)))|(% style="width:1 90px" %)(((321 +)))|(% style="width:116px" %)((( 314 314 ((( 315 315 Set serial stopbit (for RS485 connection) 316 316 ))) ... ... @@ -332,18 +332,20 @@ 332 332 ))) 333 333 ))) 334 334 335 - 336 336 === 3.3.2 Configure sensors === 337 337 345 + 338 338 ((( 339 339 ((( 340 -Some sensors might need to configure before normal operation. User can configure such sensor via PC and RS485 adapter or through RS485-LN AT Commands (% style="color:#4f81bd" %)**AT+CFGDEV**(%%). Each (% style="color:#4f81bd" %)**AT+CFGDEV **(%%)equals to send a RS485 command to sensors. This command will only run when user input it and won’t run during each sampling. 348 +Some sensors might need to configure before normal operation. User can configure such sensor via PC and RS485 adapter or through RS485-LN AT Commands (% style="color:#4f81bd" %)**AT+CFGDEV**(%%). Each (% style="color:#4f81bd" %)**AT+CFGDEV **(%%)equals to send a RS485 command to sensors. This command will only run when user input it and won't run during each sampling. 349 + 350 + 341 341 ))) 342 342 ))) 343 343 344 -(% border="1" cellspacing=" 10" style="background-color:#ffffcc;color:green;width:510px" %)345 -|=(% style="width: 1 10px;" %)**AT Commands**|=(% style="width: 190px;" %)**Description**|=(% style="width: 190px;" %)**Example**346 -|AT+CFGDEV|(% style="width:1 10px" %)(((354 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %) 355 +|=(% style="width: 122px; background-color:#D9E2F3;color:#0070C0" %)**AT Commands**|=(% style="width: 198px; background-color:#D9E2F3;color:#0070C0" %)**Description**|=(% style="width: 190px;background-color:#D9E2F3;color:#0070C0" %)**Example** 356 +|(% style="width:122px" %)AT+CFGDEV|(% style="width:196px" %)((( 347 347 ((( 348 348 This command is used to configure the RS485/TTL devices; they won’t be used during sampling. 349 349 ))) ... ... @@ -357,10 +357,9 @@ 357 357 ))) 358 358 )))|(% style="width:190px" %)AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m 359 359 360 - 361 - 362 362 === 3.3.3 Configure read commands for each sampling === 363 363 372 + 364 364 ((( 365 365 During each sampling, we need confirm what commands we need to send to the RS485 sensors to read data. After the RS485 sensors send back the value, it normally include some bytes and we only need a few from them for a shorten payload. 366 366 ... ... @@ -373,6 +373,7 @@ 373 373 374 374 (% style="color:#037691" %)**Each RS485 commands include two parts:** 375 375 385 + 376 376 ~1. What commands RS485-LN will send to the RS485 sensors. There are total 15 commands from **AT+COMMAD1**, **ATCOMMAND2**,…, to **AT+COMMANDF**. All commands are of same grammar. 377 377 378 378 2. How to get wanted value the from RS485 sensors returns from by 1). There are total 15 AT Commands to handle the return, commands are **AT+DATACUT1**,**AT+DATACUT2**,…, **AT+DATACUTF** corresponding to the commands from 1). All commands are of same grammar. ... ... @@ -387,9 +387,9 @@ 387 387 388 388 (% style="color:#037691" %)**AT+COMMANDx **(%%)**: **This command will be sent to RS485 devices during each sampling, Max command length is 14 bytes. The grammar is: 389 389 390 -(% border="1" style="background-color:# 4bacc6;color:white; width:499px" %)400 +(% border="1" style="background-color:#f2f2f2; width:499px" %) 391 391 |(% style="width:496px" %)((( 392 - (% style="color:#037691" %)**AT+COMMANDx=xx xx xx xx xx xx xx xx xx xx xx xx,m**402 +**AT+COMMANDx=xx xx xx xx xx xx xx xx xx xx xx xx,m** 393 393 394 394 **xx xx xx xx xx xx xx xx xx xx xx xx: The RS485 command to be sent** 395 395 ... ... @@ -401,9 +401,9 @@ 401 401 In the RS485-LN, we should use this command AT+COMMAND1=01 03 0B B8 00 02,1 for the same. 402 402 403 403 404 -(% style="color:#037691" %)**AT+DATACUTx **(%%)**: **This command defines how to handle the return from AT+COMMANDx, max return length is 45bytes.414 +(% style="color:#037691" %)**AT+DATACUTx **(%%)**: **This command defines how to handle the return from AT+COMMANDx, max return length is 100 bytes. 405 405 406 -(% border="1" style="background-color:# 4bacc6;color:white; width:510px" %)416 +(% border="1" style="background-color:#f2f2f2; width:510px" %) 407 407 |(% style="width:510px" %)((( 408 408 **AT+DATACUTx=a,b,c** 409 409 ... ... @@ -414,26 +414,29 @@ 414 414 415 415 **Examples:** 416 416 427 + 417 417 * (% style="color:#037691" %)**Grab bytes** 418 418 419 419 (% aria-label="image-20220602153621-1.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602153621-1.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 420 420 421 421 433 + 422 422 * (% style="color:#037691" %)**Grab a section** 423 423 424 424 (% aria-label="image-20220602153621-2.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602153621-2.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 425 425 426 426 439 + 427 427 * (% style="color:#037691" %)**Grab different sections** 428 428 429 429 (% aria-label="image-20220602153621-3.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602153621-3.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 430 430 431 - 432 432 433 433 ))) 434 434 435 435 === 3.3.4 Compose the uplink payload === 436 436 449 + 437 437 ((( 438 438 Through AT+COMMANDx and AT+DATACUTx we got valid value from each RS485 commands, Assume these valid value are RETURN1, RETURN2, .., to RETURNx. The next step is how to compose the LoRa Uplink Payload by these RETURNs. The command is **AT+DATAUP.** 439 439 ... ... @@ -451,18 +451,16 @@ 451 451 ))) 452 452 453 453 ((( 454 -Final Payload is 467 +Final Payload is (% style="color:#4f81bd" %)**Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx** 455 455 ))) 456 456 457 457 ((( 458 -(% style="color:#4f81bd" %)**Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx** 459 -))) 460 - 461 -((( 462 462 Where PAYVER is defined by AT+PAYVER, below is an example screen shot. 472 + 473 + 463 463 ))) 464 464 465 - (% aria-label="1653269759169-150.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1653269759169-150.png||data-widget="image" height="513" width="716"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true"height="15"role="presentation" title="Click and drag to move"width="15"]](% title="Click and drag to resize" %)476 +[[image:image-20220929111027-1.png||height="509" width="685"]](% title="Click and drag to resize" %) 466 466 467 467 468 468 (% style="color:#037691" %)**Examples: AT+DATAUP=1** ... ... @@ -470,16 +470,18 @@ 470 470 471 471 Compose the uplink payload with value returns in sequence and send with (% style="color:red" %)**Multiply UPLINKs**. 472 472 473 -Final Payload is 484 +Final Payload is (% style="color:#4f81bd" %)**PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA** 474 474 475 -(% style="color:#4f81bd" %)**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA** 476 476 487 +~1. PAYVER: Defined by AT+PAYVER 477 477 478 -1. PAYVER: Defined by AT+PAYVER 479 -1. PAYLOAD COUNT: Total how many uplinks of this sampling. 480 -1. PAYLOAD#: Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT) 481 -1. DATA: Valid value: max 8 bytes for each uplink so each uplink <= 11 bytes. For the last uplink, DATA will might less than 8 bytes 489 +2. PAYLOAD COUNT: Total how many uplinks of this sampling. 482 482 491 +3. PAYLOAD#: Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT) 492 + 493 +4. DATA: Valid value: max 8 bytes for each uplink so each uplink <= 11 bytes. For the last uplink, DATA will might less than 8 bytes 494 + 495 + 483 483 (% aria-label="image-20220602155039-4.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602155039-4.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 484 484 485 485 ... ... @@ -492,8 +492,9 @@ 492 492 DATA3=the rest of Valid value of RETURN10= **30** 493 493 494 494 495 -(% style="color:red" %)Notice: In firmware v1.3, the Max bytes has been changed according to the max bytes in different Frequency Bands for lowest SF. As below: 508 +(% style="color:red" %)**Notice: In firmware v1.3, the Max bytes has been changed according to the max bytes in different Frequency Bands for lowest SF. As below:** 496 496 510 + 497 497 ~* For AU915/AS923 bands, if UplinkDwell time=0, max 51 bytes for each uplink. 498 498 499 499 * For AU915/AS923 bands, if UplinkDwell time=0, max 11 bytes for each uplink. ... ... @@ -503,28 +503,36 @@ 503 503 ~* For all other bands: max 51 bytes for each uplink. 504 504 505 505 520 +(% style="color:red" %)** When AT+DATAUP=1, the maximum number of segments is 15, and the maximum total number of bytes is 1500;** 521 + 522 +(% style="color:red" %)** When AT+DATAUP=1 and AT+ADR=0, the maximum number of bytes of each payload is determined by the DR value. (Since v1.4.0)** 523 + 524 + 525 + 506 506 Below are the uplink payloads: 507 507 528 + 508 508 (% aria-label="1654157178836-407.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1654157178836-407.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 509 509 510 510 511 - 512 512 === 3.3.5 Uplink on demand === 513 513 534 + 514 514 Except uplink periodically, RS485-LN is able to uplink on demand. The server send downlink command to RS485-LN and RS485 will uplink data base on the command. 515 515 516 -Downlink control command: 537 +(% style="color:blue" %)**Downlink control command:** 517 517 518 -**0x08 command**: Poll an uplink with current command set in RS485-LN. 539 +(% style="color:#4472c4" %)** 0x08 command**(%%): Poll an uplink with current command set in RS485-LN. 519 519 520 -**0xA8 command**: Send a command to RS485-LN and uplink the output from sensors. 541 +(% style="color:#4472c4" %)** 0xA8 command**(%%): Send a command to RS485-LN and uplink the output from sensors. 521 521 522 522 523 - 524 524 === 3.3.6 Uplink on Interrupt === 525 525 546 + 526 526 RS485-LN support external Interrupt uplink since hardware v1.2 release. 527 527 549 + 528 528 (% aria-label="1654157342174-798.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1654157342174-798.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 529 529 530 530 Connect the Interrupt pin to RS485-LN INT port and connect the GND pin to V- port. When there is a high voltage (Max 24v) on INT pin. Device will send an uplink packet. ... ... @@ -533,13 +533,34 @@ 533 533 == 3.4 Uplink Payload == 534 534 535 535 536 -(% aria-label="image-20220606110929-1.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220606110929-1.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 558 +(% border="1" cellspacing="5" style="background-color:#ffffcc; color:green; width:500px" %) 559 +|=(% scope="row" style="width: 60px;" %)((( 560 +Size(bytes) 561 +)))|(% style="width:80px" %)1|(% style="width:360px" %)((( 562 +Length depends on the return from the commands 563 +))) 564 +|=(% style="width: 90px;" %)((( 565 +Value 566 +)))|(% style="width:114px" %)((( 567 +PAYLOAD_VER 568 +)))|(% style="width:353px" %)((( 569 +If the valid payload is too long and exceed the maximum 537 537 571 +support payload length in server, server will show payload not 572 + 573 +provided in the LoRaWAN server. 574 +))) 575 + 576 +(% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]] 577 + 578 +(% title="Click and drag to resize" %) 579 + 538 538 Below is the decoder for the first 3 bytes. The rest bytes are dynamic depends on different RS485 sensors. 539 539 540 540 541 541 == 3.5 Configure RS485-LN via AT or Downlink == 542 542 585 + 543 543 ((( 544 544 User can configure RS485-LN via AT Commands or LoRaWAN Downlink Commands 545 545 ))) ... ... @@ -563,15 +563,20 @@ 563 563 564 564 === 3.5.1 Common Commands === 565 565 609 + 566 566 They should be available for each of Dragino Sensors, such as: change uplink interval, reset device. For firmware v1.3, user can find what common commands it supports: [[End Device AT Commands and Downlink Command>>doc:Main.End Device AT Commands and Downlink Command.WebHome]] 567 567 568 568 569 -=== 3.5.2 Sensor relatedcommands===613 +=== 3.5.2 Downlink Response(Since firmware v1.4) === 570 570 615 + 571 571 Response feature is added to the server's downlink, a special package with a FPort of 200 will be uploaded immediately after receiving the data sent by the server. 572 572 573 -(% aria-label="image-20220602163333-5.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602163333-5.png||data-widget="image" height="263" width="1160"]](% style="background:url(~"http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png~") rgba(220, 220, 220, 0.5); left:0px; top:-15px" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 574 574 619 +(% aria-label="image-20220602163333-5.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602163333-5.png||data-widget="image" height="263" width="1160"]] 620 + 621 +(% title="Click and drag to resize" %) 622 + 575 575 The first byte of this package represents whether the configuration is successful, 00 represents failure, 01 represents success. Except for the first byte, the other is the previous downlink. (All commands except A8 type commands are applicable) 576 576 577 577 ... ... @@ -579,18 +579,18 @@ 579 579 580 580 581 581 630 +==== (% style="color:blue" %)**RS485 Debug Command**(%%) ==== 582 582 583 -==== (% style="color:#037691" %)**RS485 Debug Command**(%%) ==== 584 584 585 585 ((( 586 -This command is used to configure the RS485 devices; they won ’t be used during sampling.634 +This command is used to configure the RS485 devices; they won't be used during sampling. Max Length of AT+CFGDEV is **40 bytes**. 587 587 ))) 588 588 589 - *(((590 -(% style="color:#037691" %)**AT Command** 637 +((( 638 +* (% style="color:#037691" %)**AT Command** 591 591 592 592 ((( 593 -**AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m** m: 0: no CRC, 1: add CRC-16/MODBUS in the end of this command 641 +(% style="color:#4472c4" %)** AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m** (%%) m: 0: no CRC, 1: add CRC-16/MODBUS in the end of this command 594 594 ))) 595 595 ))) 596 596 ... ... @@ -603,7 +603,7 @@ 603 603 ))) 604 604 605 605 ((( 606 -Format: A8 MM NN XX XX XX XX YY 654 +Format: (% style="color:#4472c4" %)** A8 MM NN XX XX XX XX YY** 607 607 ))) 608 608 609 609 ((( ... ... @@ -638,7 +638,7 @@ 638 638 ((( 639 639 640 640 641 -**Example 1** ~-~-> Configure without ask for uplink (YY=0) 689 +(% style="color:blue" %)**Example 1:** (%%) ~-~-> Configure without ask for uplink (YY=0) 642 642 ))) 643 643 644 644 ((( ... ... @@ -676,7 +676,7 @@ 676 676 ))) 677 677 678 678 ((( 679 -**Example 2** ~-~-> Configure with requesting uplink and original downlink command (**YY=FF**) 727 +(% style="color:blue" %)**Example 2:** (%%) ~-~-> Configure with requesting uplink and original downlink command (**YY=FF**) 680 680 ))) 681 681 682 682 ((( ... ... @@ -701,37 +701,51 @@ 701 701 702 702 703 703 704 - 705 705 ==== (% style="color:blue" %)**Set Payload version**(%%) ==== 706 706 754 + 707 707 ((( 708 708 This is the first byte of the uplink payload. RS485-LN can connect to different sensors. User can set the PAYVER field to tell server how to decode the current payload. 709 709 ))) 710 710 711 - *(((712 -(% style="color:#037691" %)**AT Command:** 759 +((( 760 +* (% style="color:#037691" %)**AT Command:** 713 713 714 -**AT+PAYVER: **Set PAYVER field = 1 762 +(% style="color:#4472c4" %)** AT+PAYVER: ** (%%) Set PAYVER field = 1 715 715 716 716 717 717 ))) 766 + 718 718 * ((( 719 719 (% style="color:#037691" %)**Downlink Payload:** 720 720 ))) 721 721 722 722 ((( 723 -**0xAE 01** 772 +(% style="color:#4472c4" %)** 0xAE 01** (%%) ~-~-> Set PAYVER field = 0x01 724 724 ))) 725 725 726 726 ((( 727 -**0xAE 0F** ~-~-> Set PAYVER field = 0x0F 776 +(% style="color:#4472c4" %)** 0xAE 0F** (%%) ~-~-> Set PAYVER field = 0x0F 728 728 ))) 729 729 730 730 780 +**1 ) Add the interrupt flag at the highest bit of the Payver byte, that is, Byte7 of the first byte. (Since v1.4.0)** 731 731 732 732 783 +[[image:image-20220824145428-2.png||height="168" width="1300"]] 784 + 785 + 786 + 787 +**2 ) if the data intercepted by AT+DATACUT or AT+MBFUN is empty, it will display NULL, and the payload will be filled with n FFs.** 788 + 789 + 790 +[[image:image-20220824145428-3.png||height="308" width="1200"]] 791 + 792 + 793 + 733 733 ==== (% style="color:blue" %)**Set RS485 Sampling Commands**(%%) ==== 734 734 796 + 735 735 ((( 736 736 AT+COMMANDx or AT+DATACUTx 737 737 ))) ... ... @@ -748,9 +748,9 @@ 748 748 (% style="color:#037691" %)**AT Command:** 749 749 ))) 750 750 751 -**AT+COMMANDx: **Configure RS485 read command to sensor. 813 +(% style="color:#4472c4" %)** AT+COMMANDx: ** (%%) Configure RS485 read command to sensor. 752 752 753 -**AT+DATACUTx: **Configure how to handle return from RS485 devices. 815 +(% style="color:#4472c4" %)** AT+DATACUTx: **(%%) Configure how to handle return from RS485 devices. 754 754 755 755 756 756 * ((( ... ... @@ -758,15 +758,19 @@ 758 758 ))) 759 759 760 760 ((( 761 -**0xAF** downlink command can be used to set AT+COMMANDx or AT+DATACUTx. 823 +(% style="color:#4472c4" %)** 0xAF**(%%) downlink command can be used to set AT+COMMANDx or AT+DATACUTx. 824 + 825 + 762 762 ))) 763 763 764 764 ((( 765 -(% style="color:red" %)**Note**(%%): if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink. 829 +(% style="color:red" %)**Note : if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink.** 830 + 831 + 766 766 ))) 767 767 768 768 ((( 769 -Format: AF MM NN LL XX XX XX XX YY 835 +Format: (% style="color:#4472c4" %)** AF MM NN LL XX XX XX XX YY** 770 770 ))) 771 771 772 772 ((( ... ... @@ -809,11 +809,11 @@ 809 809 810 810 811 811 812 - 813 813 ==== (% style="color:blue" %)**Fast command to handle MODBUS device**(%%) ==== 814 814 880 + 815 815 ((( 816 -**AT+MBFUN** is valid since v1.3 firmware version. The command is for fast configure to read Modbus devices. It is only valid for the devices which follow the [[MODBUS-RTU protocol>>url:https://www.modbustools.com/modbus.html]]. 882 +(% style="color:#4472c4" %)** AT+MBFUN**(%%) is valid since v1.3 firmware version. The command is for fast configure to read Modbus devices. It is only valid for the devices which follow the [[MODBUS-RTU protocol>>url:https://www.modbustools.com/modbus.html]]. 817 817 ))) 818 818 819 819 ((( ... ... @@ -844,15 +844,17 @@ 844 844 845 845 ))) 846 846 847 -(% aria-label="image-20220602165351-6.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602165351-6.png||data-widget="image"]] (% title="Click and drag to resize" %)913 +(% aria-label="image-20220602165351-6.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602165351-6.png||data-widget="image"]] 848 848 915 +(% title="Click and drag to resize" %) 916 + 849 849 (% aria-label="image-20220602165351-7.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602165351-7.png||data-widget="image"]](% title="Click and drag to resize" %) 850 850 851 851 852 852 853 - 854 854 ==== (% style="color:blue" %)**RS485 command timeout**(%%) ==== 855 855 923 + 856 856 ((( 857 857 Some Modbus device has slow action to send replies. This command is used to configure the RS485-LN to use longer time to wait for their action. 858 858 ))) ... ... @@ -861,10 +861,10 @@ 861 861 Default value: 0, range: 0 ~~ 65 seconds 862 862 ))) 863 863 864 - *(((865 -(% style="color:#037691" %)** AT Command:** 932 +((( 933 +* (% style="color:#037691" %)** AT Command:** 866 866 867 -**AT+CMDDLaa=hex(bb cc)*1000** 935 +(% style="color:#4472c4" %)** AT+CMDDLaa=hex(bb cc)*1000** 868 868 ))) 869 869 870 870 ((( ... ... @@ -874,7 +874,7 @@ 874 874 ))) 875 875 876 876 ((( 877 -**AT+CMDDL1=1000** to send the open time to 1000ms 945 +(% style="color:#4472c4" %)** AT+CMDDL1=1000** (%%)to send the open time to 1000ms 878 878 ))) 879 879 880 880 ((( ... ... @@ -886,26 +886,24 @@ 886 886 ))) 887 887 888 888 ((( 889 -**0x AA aa bb cc** 957 +(% style="color:#4472c4" %)** 0x AA aa bb cc**(%%) Same as: AT+CMDDLaa=hex (bb cc) 890 890 ))) 891 891 892 892 ((( 893 -Same as: AT+CMDDLaa=hex(bb cc)*1000 894 -))) 961 + 895 895 896 -((( 897 897 **Example:** 898 898 ))) 899 899 900 900 ((( 901 -**0xAA 01 0 001** ~-~-> Same as **AT+CMDDL1=1000 ms**967 +**0xAA 01 03 E8** ~-~-> Same as **AT+CMDDL1=1000 ms** 902 902 ))) 903 903 904 904 905 905 906 - 907 907 ==== (% style="color:blue" %)**Uplink payload mode**(%%) ==== 908 908 974 + 909 909 ((( 910 910 Define to use one uplink or multiple uplinks for the sampling. 911 911 ))) ... ... @@ -916,13 +916,19 @@ 916 916 917 917 ))) 918 918 919 -* ((( 920 -(% style="color:#037691" %)** AT Command:** 985 +((( 986 +* (% style="color:#037691" %)** AT Command:** 987 + 988 +(% style="color:#4472c4" %)** AT+DATAUP=0** 989 + 990 +(% style="color:#4472c4" %)** AT+DATAUP=1** 991 + 992 + 921 921 ))) 922 922 923 -**AT+DATAUP=0 **995 +(% style="color:#4472c4" %)** 0xAD 01 00 00 14** (%%) **~-~->** Same as AT+DATAUP=1,20000 ~/~/ (00 00 14 is 20 seconds) 924 924 925 - **AT+DATAUP=1**997 +Each uplink is sent to the server at 20-second intervals when segmented. 926 926 927 927 928 928 * ((( ... ... @@ -929,19 +929,31 @@ 929 929 (% style="color:#037691" %)** Downlink Payload:** 930 930 ))) 931 931 932 -((( 933 -**0xAD 00** **~-~->** Same as AT+DATAUP=0 1004 +(% style="color:#4472c4" %)** 0xAD 00** (%%) **~-~->** Same as AT+DATAUP=0 1005 + 1006 +(% style="color:#4472c4" %)** 0xAD 01** (%%) **~-~->** Same as AT+DATAUP=1 ~/~/Each uplink is sent to the server one after the other as it is segmented. 1007 + 1008 + 1009 +* ((( 1010 +(% style="color:#037691" %)** AT Command:** 934 934 ))) 935 935 936 -((( 937 -**0xAD 01** **~-~->** Same as AT+DATAUP=1 1013 +(% style="color:#4472c4" %)** AT+DATAUP=1,Timeout** 1014 + 1015 + 1016 +* ((( 1017 +(% style="color:#037691" %)** Downlink Payload:** 938 938 ))) 939 939 1020 +(% style="color:#4472c4" %)** 0xAD 01 00 00 14** (%%) **~-~->** Same as AT+DATAUP=1,20000 ~/~/ (00 00 14 is 20 seconds) 940 940 1022 +Each uplink is sent to the server at 20-second intervals when segmented. 941 941 942 942 1025 + 943 943 ==== (% style="color:blue" %)**Manually trigger an Uplink**(%%) ==== 944 944 1028 + 945 945 ((( 946 946 Ask device to send an uplink immediately. 947 947 ))) ... ... @@ -963,14 +963,14 @@ 963 963 ))) 964 964 965 965 ((( 966 -**0x08 FF**, RS485-LN will immediately send an uplink. 1050 +(% style="color:#4472c4" %)** 0x08 FF**(%%), RS485-LN will immediately send an uplink. 967 967 ))) 968 968 969 969 970 970 971 - 972 972 ==== (% style="color:blue" %)**Clear RS485 Command**(%%) ==== 973 973 1057 + 974 974 ((( 975 975 The AT+COMMANDx and AT+DATACUTx settings are stored in special location, user can use below command to clear them. 976 976 ... ... @@ -982,10 +982,12 @@ 982 982 ))) 983 983 984 984 ((( 985 -**AT+CMDEAR=mm,nn** 1069 +(% style="color:#4472c4" %)** AT+CMDEAR=mm,nn** (%%) mm: start position of erase ,nn: stop position of erase 986 986 ))) 987 987 988 988 ((( 1073 + 1074 + 989 989 Etc. AT+CMDEAR=1,10 means erase AT+COMMAND1/AT+DATACUT1 to AT+COMMAND10/AT+DATACUT10 990 990 ))) 991 991 ... ... @@ -1009,29 +1009,27 @@ 1009 1009 ))) 1010 1010 1011 1011 ((( 1012 -**0x09 aa bb** same as AT+CMDEAR=aa,bb 1098 +(% style="color:#4472c4" %)** 0x09 aa bb** (%%) same as AT+CMDEAR=aa,bb 1013 1013 ))) 1014 1014 1015 1015 1016 1016 1017 - 1018 1018 ==== (% style="color:blue" %)**Set Serial Communication Parameters**(%%) ==== 1019 1019 1105 + 1020 1020 ((( 1021 1021 Set the Rs485 serial communication parameters: 1022 1022 ))) 1023 1023 1024 - *(((1025 -(% style="color:#037691" %)** 1110 +((( 1111 +(% style="color:#037691" %)**AT Command:** 1026 1026 ))) 1027 1027 1028 1028 ((( 1029 - 1030 - 1031 1031 * Set Baud Rate 1032 1032 ))) 1033 1033 1034 -**AT+BAUDR=9600** 1200,2400,4800,14400,19200,115200)1118 +(% style="color:#4472c4" %)** AT+BAUDR=9600** (%%) ~/~/ Options: (200~~115200) When using low baud rate or receiving multiple bytes, you need to use AT+CMDDL to increase the receive timeout (the default receive timeout is 400ms), otherwise data will be lost 1035 1035 1036 1036 1037 1037 ((( ... ... @@ -1038,7 +1038,7 @@ 1038 1038 * Set UART Parity 1039 1039 ))) 1040 1040 1041 -**AT+PARITY=0** 1125 +(% style="color:#4472c4" %)** AT+PARITY=0** (%%) ~/~/ Option: 0: no parity, 1: odd parity, 2: even parity 1042 1042 1043 1043 1044 1044 ((( ... ... @@ -1045,16 +1045,15 @@ 1045 1045 * Set STOPBIT 1046 1046 ))) 1047 1047 1048 -**AT+STOPBIT=0** 1132 +(% style="color:#4472c4" %)** AT+STOPBIT=0** (%%) ~/~/ Option: 0 for 1bit; 1 for 1.5 bit ; 2 for 2 bits 1049 1049 1050 1050 1051 - 1052 -* ((( 1053 -(% style="color:#037691" %)** Downlink Payload:** 1135 +((( 1136 +(% style="color:#037691" %)**Downlink Payload:** 1054 1054 ))) 1055 1055 1056 1056 ((( 1057 -**A7 01 aa bb**: 1140 +(% style="color:#4472c4" %)** A7 01 aa bb**: (%%) Same AT+BAUDR=hex(aa bb)*100 1058 1058 ))) 1059 1059 1060 1060 ((( ... ... @@ -1062,7 +1062,7 @@ 1062 1062 ))) 1063 1063 1064 1064 * ((( 1065 -A7 01 00 60 1148 +A7 01 00 60 same as AT+BAUDR=9600 1066 1066 ))) 1067 1067 * ((( 1068 1068 A7 01 04 80 same as AT+BAUDR=115200 ... ... @@ -1069,18 +1069,166 @@ 1069 1069 ))) 1070 1070 1071 1071 ((( 1072 -A7 02 aa: Same as AT+PARITY=aa (aa value: 00 , 01 or 02) 1155 +* A7 02 aa: Same as AT+PARITY=aa (aa value: 00 , 01 or 02) 1073 1073 ))) 1074 1074 1075 1075 ((( 1076 -A7 03 aa: Same as AT+STOPBIT=aa (aa value: 00 , 01 or 02) 1159 +* A7 03 aa: Same as AT+STOPBIT=aa (aa value: 00 , 01 or 02) 1077 1077 ))) 1078 1078 1079 1079 1080 1080 1081 1081 1165 +==== (% style="color:blue" %)**Configure Databit (Since Version 1.4.0)**(%%) ==== 1166 + 1167 + 1168 +* ((( 1169 +(% style="color:#037691" %)** AT Command:** 1170 +))) 1171 + 1172 +(% style="color:#4472c4" %)** AT+DATABIT=7 **(%%)~/~/ Set the data bits to 7 1173 + 1174 +(% style="color:#4472c4" %)** AT+DATABIT=8 **(%%)~/~/ Set the data bits to 8 1175 + 1176 +* ((( 1177 +(% style="color:#037691" %)**Downlink Payload:** 1178 +))) 1179 + 1180 +(% style="color:#4472c4" %)** A7 04 07**(%%): Same as AT+DATABIT=7 1181 + 1182 +(% style="color:#4472c4" %)** A7 04 08**(%%): Same as AT+DATABIT=8 1183 + 1184 + 1185 + 1186 +==== (% style="color:blue" %)**Encrypted payload(Since Version 1.4.0)**(%%) ==== 1187 + 1188 +((( 1189 + 1190 +))) 1191 + 1192 +* ((( 1193 +(% style="color:#037691" %)** AT Command:** 1194 +))) 1195 + 1196 +(% style="color:#4472c4" %)** AT+DECRYPT=1 ** (%%) ~/~/ The payload is uploaded without encryption 1197 + 1198 +(% style="color:#4472c4" %)** AT+DECRYPT=0 ** (%%) ~/~/ Encrypt when uploading payload (default) 1199 + 1200 + 1201 + 1202 +==== (% style="color:blue" %)**Get sensor value(Since Version 1.4.0)**(%%) ==== 1203 + 1204 + 1205 +* ((( 1206 +(% style="color:#037691" %)** AT Command:** 1207 +))) 1208 + 1209 +(% style="color:#4472c4" %)** AT+GETSENSORVALUE=0 **(%%) ~/~/ The serial port gets the reading of the current sensor 1210 + 1211 +(% style="color:#4472c4" %)** AT+GETSENSORVALUE=1 **(%%) ~/~/ The serial port gets the current sensor reading and uploads it. 1212 + 1213 + 1214 + 1215 +==== (% style="color:blue" %)**Resets the downlink packet count(Since Version 1.4.0)**(%%) ==== 1216 + 1217 + 1218 +* ((( 1219 +(% style="color:#037691" %)** AT Command:** 1220 +))) 1221 + 1222 +(% style="color:#4472c4" %)** AT+DISFCNTCHECK=0 **(%%) ~/~/ When the downlink packet count sent by the server is less than the node downlink packet count or exceeds 16384, the node will no longer receive downlink packets (default) 1223 + 1224 +(% style="color:#4472c4" %)** AT+DISFCNTCHECK=1 **(%%) ~/~/ When the downlink packet count sent by the server is less than the node downlink packet count or exceeds 16384, the node resets the downlink packet count and keeps it consistent with the server downlink packet count. 1225 + 1226 + 1227 + 1228 +==== (% style="color:blue" %)**When the limit bytes are exceeded, upload in batches(Since Version 1.4.0)**(%%) ==== 1229 + 1230 + 1231 +* ((( 1232 +(% style="color:#037691" %)** AT Command:** 1233 +))) 1234 + 1235 + (% style="color:#4472c4" %)** AT+DISMACANS=0** (%%) ~/~/ When the MACANS of the reply server plus the payload exceeds the maximum number of bytes of 11 bytes (DR0 of US915, DR2 of AS923, DR2 of AU195), the node will send a packet with a payload of 00 and a port of 4. (default) 1236 + 1237 + (% style="color:#4472c4" %)** AT+DISMACANS=1** (%%) ~/~/ When the MACANS of the reply server plus the payload exceeds the maximum number of bytes of the DR, the node will ignore the MACANS and not reply, and only upload the payload part. 1238 + 1239 + 1240 +* ((( 1241 +(% style="color:#037691" %)** Downlink Payload:** 1242 +))) 1243 + 1244 +(% style="color:#4472c4" %)** 0x21 00 01 ** (%%) ~/~/ Set the DISMACANS=1 1245 + 1246 + 1247 + 1248 +==== (% style="color:blue" %)**Copy downlink to uplink (Since Version 1.4.0)**(%%) ==== 1249 + 1250 + 1251 +* ((( 1252 +(% style="color:#037691" %)** AT Command:** 1253 +))) 1254 + 1255 +(% style="color:#4472c4" %)** AT+RPL=5** (%%) ~/~/ After receiving the package from the server, it will immediately upload the content of the package to the server, the port number is 100. 1256 + 1257 +Example:**aa xx xx xx xx** ~/~/ aa indicates whether the configuration has changed, 00 is yes, 01 is no; xx xx xx xx are the bytes sent. 1258 + 1259 + 1260 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/image-20220823173747-6.png?width=1124&height=165&rev=1.1||alt="image-20220823173747-6.png"]] 1261 + 1262 +For example, sending 11 22 33 44 55 66 77 will return invalid configuration 00 11 22 33 44 55 66 77. 1263 + 1264 + 1265 + 1266 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/image-20220823173833-7.png?width=1124&height=149&rev=1.1||alt="image-20220823173833-7.png"]] 1267 + 1268 +For example, if 01 00 02 58 is issued, a valid configuration of 01 01 00 02 58 will be returned. 1269 + 1270 + 1271 + 1272 +==== (% style="color:blue" %)**Query version number and frequency band 、TDC(Since Version 1.4.0)**(%%) ==== 1273 + 1274 + 1275 +((( 1276 +* (% style="color:#037691" %)**Downlink Payload:** 1277 + 1278 +(% style="color:#4472c4" %)** 26 01 ** (%%) ~/~/ Downlink 26 01 can query device upload frequency, frequency band, software version number, TDC time. 1279 +))) 1280 + 1281 + 1282 +Example: 1283 + 1284 + 1285 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/image-20220823173929-8.png?width=1205&height=76&rev=1.1||alt="image-20220823173929-8.png"]] 1286 + 1287 + 1288 + 1289 +==== (% style="color:blue" %)** Monitor RS485 communication of other devices(Since Version 1.4.0)**(%%) ==== 1290 + 1291 + 1292 +* ((( 1293 +(% style="color:#037691" %)** AT Command:** 1294 +))) 1295 + 1296 +(% style="color:#4472c4" %)**AT+RXMODE=1,10** (%%) ~/~/ When the RS485-LN receives more than 10 bytes from the RS485, it immediately sends the uplink of the received data. 1297 + 1298 +(% style="color:#4472c4" %)**AT+RXMODE=2,500 ** (%%) ~/~/ RS485-LN uploads data as uplink from the first byte received by RS485 to the data received within 500ms after that. 1299 + 1300 +(% style="color:#4472c4" %)**AT+RXMODE=0,0 ** (%%) ~/~/ Disable this mode (default) 1301 + 1302 + 1303 +* ((( 1304 +(% style="color:#037691" %)**Downlink Payload:** 1305 +))) 1306 + 1307 +(% style="color:#4472c4" %)** A6 aa bb bb ** (%%) ~/~/ same as AT+RXMODE=aa,bb 1308 + 1309 +[[image:image-20220824144240-1.png]] 1310 + 1311 + 1082 1082 == 3.6 Listening mode for RS485 network == 1083 1083 1314 + 1084 1084 ((( 1085 1085 This feature support since firmware v1.4 1086 1086 ))) ... ... @@ -1087,12 +1087,16 @@ 1087 1087 1088 1088 ((( 1089 1089 RS485-LN supports listening mode, it can listen the RS485 network packets and send them via LoRaWAN uplink. Below is the structure. The blue arrow shows the RS485 network packets to RS485-LN. 1321 + 1322 + 1090 1090 ))) 1091 1091 1092 -(% aria-label="image-20220602171200-8.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602171200-8.png||data-widget="image" height="567" width="1007"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]] (% title="Click and drag to resize" %)1325 +(% aria-label="image-20220602171200-8.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602171200-8.png||data-widget="image" height="567" width="1007"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]] 1093 1093 1327 +(% title="Click and drag to resize" %) 1328 + 1094 1094 ((( 1095 -To enable the listening mode, use can run the command AT+RXMODE. 1330 +To enable the listening mode, use can run the command (% style="color:#4472c4" %)** AT+RXMODE**. 1096 1096 ))) 1097 1097 1098 1098 ((( ... ... @@ -1127,11 +1127,13 @@ 1127 1127 ))) 1128 1128 1129 1129 ((( 1130 -(% style="color:#037691" %)** Downlink Command:** 1365 + 1366 + 1367 +(% style="color:#037691" %)**Downlink Command:** 1131 1131 ))) 1132 1132 1133 1133 ((( 1134 -**0xA6 aa bb cc ** same as AT+RXMODE=aa,(bb<<8 | cc) 1371 +(% style="color:#4472c4" %)** 0xA6 aa bb cc **(%%) same as AT+RXMODE=aa,(bb<<8 | cc) 1135 1135 ))) 1136 1136 1137 1137 ((( ... ... @@ -1151,15 +1151,17 @@ 1151 1151 ))) 1152 1152 1153 1153 ((( 1154 -The Modbus master send a command: (% style="background-color:#ffc000" %)01 03 00 00 00 02 c4 0b 1391 +The Modbus master send a command: (% style="background-color:#ffc000" %)**01 03 00 00 00 02 c4 0b** 1155 1155 ))) 1156 1156 1157 1157 ((( 1158 -And Modbus slave reply with: (% style="background-color:green" %)01 03 04 00 00 00 00 fa 33 1395 +And Modbus slave reply with: (% style="background-color:green" %)**01 03 04 00 00 00 00 fa 33** 1159 1159 ))) 1160 1160 1161 1161 ((( 1162 -RS485-LN will capture both and send the uplink: (% style="background-color:#ffc000" %)01 03 00 00 00 02 c4 0b (% style="background-color:green" %)01 03 04 00 00 00 00 fa 33 1399 +RS485-LN will capture both and send the uplink: (% style="background-color:#ffc000" %)**01 03 00 00 00 02 c4 0b **(% style="background-color:green" %)**01 03 04 00 00 00 00 fa 33** 1400 + 1401 + 1163 1163 ))) 1164 1164 1165 1165 ((( ... ... @@ -1172,7 +1172,7 @@ 1172 1172 1173 1173 ((( 1174 1174 ((( 1175 -(% style="color:red" %)Notice: Listening mode can work with the default polling mode of RS485-LN. When RS485-LN is in to send the RS485 commands (from AT+COMMANDx), the listening mode will be interrupt for a while. 1414 +(% style="color:red" %)**Notice: Listening mode can work with the default polling mode of RS485-LN. When RS485-LN is in to send the RS485 commands (from AT+COMMANDx), the listening mode will be interrupt for a while.** 1176 1176 ))) 1177 1177 ))) 1178 1178 ... ... @@ -1180,24 +1180,23 @@ 1180 1180 == 3.7 Buttons == 1181 1181 1182 1182 1183 -(% border="1" cellspacing=" 10" style="background-color:#f7faff; width:430px" %)1184 -|=(% style="width: 50px;" %)**Button**|=(% style="width: 3 61px;" %)**Feature**1422 +(% border="1.5" cellspacing="4" style="background-color:#ffffcc; width:430px" %) 1423 +|=(% style="width: 50px;" %)**Button**|=(% style="width: 380px;" %)**Feature** 1185 1185 |(% style="width:50px" %)**ACT**|(% style="width:361px" %)If RS485 joined in network, press this button for more than 1 second, RS485 will upload a packet, and the SYS LED will give a (% style="color:blue" %)**Blue blink** 1186 1186 |(% style="width:50px" %)**RST**|(% style="width:361px" %)Reboot RS485 1187 1187 |(% style="width:50px" %)**PRO**|(% style="width:361px" %)Use for upload image, see [[How to Update Image>>||anchor="H6.1Howtoupgradetheimage3F"]] 1188 1188 1189 - 1190 1190 == 3.8 LEDs == 1191 1191 1192 1192 1193 -(% border="1" cellspacing=" 10" style="background-color:#f7faff; width:430px" %)1431 +(% border="1.5" cellspacing="4" style="background-color:#ffffcc; width:430px" %) 1194 1194 |=(% style="width: 50px;" %)**LEDs**|=(% style="width: 380px;" %)**Feature** 1195 1195 |**PWR**|Always on if there is power 1196 1196 |**SYS**|After device is powered on, the SYS will (% style="color:green" %)**fast blink in GREEN**(%%) for 5 times, means RS485-LN start to join LoRaWAN network. If join success, SYS will be (% style="color:green" %)**on GREEN for 5 seconds** (%%)**. **SYS will (% style="color:green" %)**blink Blue**(%%) on every upload and (% style="color:green" %)**blink Green**(%%) once receive a downlink message. 1197 1197 1198 - 1199 1199 = 4. Case Study = 1200 1200 1438 + 1201 1201 User can check this URL for some case studies: [[APP RS485 COMMUNICATE WITH SENSORS>>doc:Main.Application Note \: Communicate with Different Sensors ----- RS485-LN RS485-BL.WebHome]] 1202 1202 1203 1203 ... ... @@ -1205,15 +1205,21 @@ 1205 1205 1206 1206 == 5.1 Access AT Command == 1207 1207 1446 + 1208 1208 ((( 1209 1209 RS485-LN supports AT Command set. User can use a USB to TTL adapter plus the 3.5mm Program Cable to connect to RS485-LN to use AT command, as below. 1449 + 1450 + 1210 1210 ))) 1211 1211 1212 1212 (% aria-label="1654162355560-817.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1654162355560-817.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 1213 1213 1214 1214 1456 + 1215 1215 ((( 1216 1216 In PC, User needs to set (% style="color:blue" %)**serial tool**(%%)(such as [[putty>>url:https://www.chiark.greenend.org.uk/~~sgtatham/putty/latest.html]], SecureCRT) baud rate to (% style="color:green" %)**9600**(%%) to access to access serial console of RS485-LN. The default password is 123456. Below is the output for reference: 1459 + 1460 + 1217 1217 ))) 1218 1218 1219 1219 (% aria-label="1654162368066-342.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1654162368066-342.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) ... ... @@ -1224,12 +1224,11 @@ 1224 1224 ))) 1225 1225 1226 1226 1227 - 1228 1228 == 5.2 Common AT Command Sequence == 1229 1229 1230 - 1231 1231 === 5.2.1 Multi-channel ABP mode (Use with SX1301/LG308) === 1232 1232 1475 + 1233 1233 If device has not joined network yet: 1234 1234 1235 1235 * (% style="color:#037691" %)**AT+FDR** ... ... @@ -1243,11 +1243,10 @@ 1243 1243 1244 1244 * (% style="color:#037691" %)**AT+NJM=0** 1245 1245 * (% style="color:#037691" %)**ATZ** 1246 - 1247 - 1248 1248 ))) 1249 1249 1250 1250 1492 + 1251 1251 === 5.5.2 Single-channel ABP mode (Use with LG01/LG02) === 1252 1252 1253 1253 ... ... @@ -1279,6 +1279,8 @@ 1279 1279 2. Make sure the LG01/02 gateway RX frequency is exactly the same as AT+CHS setting. 1280 1280 3. Make sure SF / bandwidth setting in LG01/LG02 match the settings of AT+DR. refer [[this link>>url:http://www.dragino.com/downloads/index.php?dir=LoRa_Gateway/&file=LoRaWAN%201.0.3%20Regional%20Parameters.xlsx]] to see what DR means. 1281 1281 4. The command AT+RX2FQ and AT+RX2DR is to let downlink work. to set the correct parameters, user can check the actually downlink parameters to be used. As below. Which shows the RX2FQ should use 868400000 and RX2DR should be 5 1524 + 1525 + 1282 1282 ))) 1283 1283 1284 1284 (% aria-label="1654162478620-421.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1654162478620-421.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) ... ... @@ -1288,6 +1288,7 @@ 1288 1288 1289 1289 == 6.1 How to upgrade the image? == 1290 1290 1535 + 1291 1291 ((( 1292 1292 The RS485-LN LoRaWAN Controller is shipped with a 3.5mm cable, the cable is used to upload image to RS485-LN to: 1293 1293 ))) ... ... @@ -1306,18 +1306,26 @@ 1306 1306 Below shows the hardware connection for how to upload an image to RS485-LN: 1307 1307 ))) 1308 1308 1309 -(% aria-label="1654162535040-878.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1654162535040-878.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]] (% title="Click and drag to resize" %)1554 +(% aria-label="1654162535040-878.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1654162535040-878.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]] 1310 1310 1556 +(% title="Click and drag to resize" %) 1557 + 1311 1311 ((( 1312 1312 (% style="color:blue" %)**Step1**(%%)**:** Download [[flash loader>>url:https://www.st.com/content/st_com/en/products/development-tools/software-development-tools/stm32-software-development-tools/stm32-programmers/flasher-stm32.html]]. 1560 + 1561 + 1313 1313 ))) 1314 1314 1315 1315 ((( 1316 -(% style="color:blue" %)**Step2**(%%)**:** Download the [[LT Image files>>url:http://www.dragino.com/downloads/index.php?dir=LT_LoRa_IO_Controller/LT33222-L/image/]]. 1565 +(% style="color:blue" %)**Step2**(%%)**:** Download the [[LT Image files>>url:https://www.dropbox.com/sh/g99v0fxcltn9r1y/AACP33wo_ZQLsxW2MJ70oUoba/RS485-LN/Firmware?dl=0&subfolder_nav_tracking=1]]. 1566 + 1567 + 1317 1317 ))) 1318 1318 1319 1319 ((( 1320 1320 (% style="color:blue" %)**Step3**(%%)**: **Open flashloader; choose the correct COM port to update. 1572 + 1573 + 1321 1321 ))) 1322 1322 1323 1323 ((( ... ... @@ -1338,7 +1338,7 @@ 1338 1338 (% aria-label="image-20220602175912-14.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602175912-14.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 1339 1339 1340 1340 1341 -(% style="color:red" %)**Notice**: In case user has lost the program cable. User can hand made one from a 3.5mm cable. The pin mapping is: 1594 +(% style="color:red" %)**Notice**: **In case user has lost the program cable. User can hand made one from a 3.5mm cable. The pin mapping is:** 1342 1342 1343 1343 (% aria-label="image-20220602175638-10.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602175638-10.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 1344 1344 ... ... @@ -1345,35 +1345,168 @@ 1345 1345 1346 1346 == 6.2 How to change the LoRa Frequency Bands/Region? == 1347 1347 1601 + 1348 1348 User can follow the introduction for [[how to upgrade image>>||anchor="H6.1Howtoupgradetheimage3F"]]. When download the images, choose the required image file for download. 1349 1349 1350 1350 1351 1351 == 6.3 How many RS485-Slave can RS485-LN connects? == 1352 1352 1607 + 1353 1353 The RS485-LN can support max 32 RS485 devices. Each uplink command of RS485-LN can support max 16 different RS485 command. So RS485-LN can support max 16 RS485 devices pre-program in the device for uplink. For other devices no pre-program, user can use the [[downlink message (type code 0xA8) to poll their info>>||anchor="H3.3.3Configurereadcommandsforeachsampling"]]. 1354 1354 1355 1355 1356 1356 == 6.4 Compatible question to ChirpStack and TTI LoRaWAN server ? == 1357 1357 1613 + 1358 1358 When user need to use with ChirpStack or TTI. Please set AT+RPL=4. 1359 1359 1360 1360 Detail info check this link: [[Set Packet Receiving Response Level>>doc:Main.End Device AT Commands and Downlink Command.WebHome||anchor="H7.23SetPacketReceivingResponseLevel"]] 1361 1361 1362 1362 1619 +== 6.5 Can i use point to point communication for RS485-LN? == 1620 + 1621 + 1622 +Yes, please updating point-to-point [[firmware>>https://www.dropbox.com/sh/g99v0fxcltn9r1y/AACP33wo_ZQLsxW2MJ70oUoba/RS485-LN/Firmware?dl=0&subfolder_nav_tracking=1]],then refer [[Point to Point Communication for RS485-LN>>Point to Point Communication for RS485-LN]]. 1623 + 1624 + 1625 +== 6.6 How to Use RS485-LN to connect to RS232 devices? == 1626 + 1627 + 1628 +[[Use RS485-BL or RS485-LN to connect to RS232 devices. - DRAGINO>>url:http://8.211.40.43:8080/xwiki/bin/view/Main/RS485%20to%20RS232/]] 1629 + 1630 + 1631 +== 6.7 How to judge whether there is a problem with the set COMMAND == 1632 + 1633 +=== 6.7.1 Introduce: === 1634 + 1635 + 1636 +Users can use below the structure to fast debug the communication between RS485BL and RS485-LN. The principle is to put the PC in the RS485 network and sniff the packet between Modbus MTU and RS485-BL/LN. We can use this way to: 1637 + 1638 +1. Test if Modbus-MTU works with PC commands. 1639 +1. Check if RS485-LN sent the expected command to Mobus-MTU 1640 +1. Check if Modbus-MTU return back the expected result to RS485-LN. 1641 +1. If both b) and c) has issue, we can compare PC’s output and RS485-LN output. 1642 + 1643 +[[image:image-20221130104310-1.png||height="380" width="680"]] 1644 + 1645 + 1646 +Example Connection: 1647 + 1648 +[[image:image-20221130104310-2.png]] 1649 + 1650 + 1651 +=== 6.7.2 Set up PC to monitor RS485 network With Serial tool === 1652 + 1653 + 1654 +(% style="color:red" %)**Note: Receive and send set to hex mode** 1655 + 1656 +[[image:image-20221130104310-3.png||height="616" width="714"]] 1657 + 1658 + 1659 +=== 6.7.3 With ModRSsim2: === 1660 + 1661 + 1662 +(% style="color:blue" %)**(1) Select serial port MODBUS RS-232** 1663 + 1664 +[[image:image-20221130104310-4.png||height="390" width="865"]] 1665 + 1666 + 1667 +(% style="color:blue" %)**(2) Click the serial port icon** 1668 + 1669 +[[image:image-20221130104310-5.png||height="392" width="870"]] 1670 + 1671 + 1672 +(% style="color:blue" %)**(3) After selecting the correct serial port and baud rate, click ok** 1673 + 1674 +[[image:image-20221130104310-6.png]] 1675 + 1676 + 1677 +(% style="color:blue" %)**(4) Click the comms.** 1678 + 1679 +[[image:image-20221130104310-7.png||height="376" width="835"]] 1680 + 1681 +(% class="wikigeneratedid" id="HRunRS485-LN2FBLcommandandmonitorifitiscorrect." %) 1682 +**Run RS485-LN/BL command and monitor if it is correct.** 1683 + 1684 + 1685 +=== 6.7.4 Example – Test the CFGDEV command === 1686 + 1687 + 1688 +RS485-LN sent below command: 1689 + 1690 +(% style="color:blue" %)**AT+CFGDEV=01 03 00 20 00 01,1**(%%) to RS485 network, and PC is able to get this command and return commands from MTU to show in the serial tool. 1691 + 1692 + 1693 +We can see the output from the Serial port tool to analyze. And check if they are expected result. 1694 + 1695 +[[image:image-20221130104310-8.png||height="214" width="797"]] 1696 + 1697 + 1698 +We can also use (% style="color:blue" %)**ModRSsim2**(%%) to see the output. 1699 + 1700 +[[image:image-20221130104310-9.png||height="531" width="729"]] 1701 + 1702 + 1703 +=== 6.7.5 Example – Test CMD command sets. === 1704 + 1705 + 1706 +Run (% style="color:blue" %)**AT+SENSORVALUE=1**(%%) to test the CMD commands set in RS485-LN. 1707 + 1708 + 1709 +(% style="color:blue" %)**Serial port tool:** 1710 + 1711 +[[image:image-20221130104310-10.png||height="339" width="844"]] 1712 + 1713 + 1714 +(% style="color:blue" %)**ModRSsim2:** 1715 + 1716 +[[image:image-20221130104310-11.png||height="281" width="962"]] 1717 + 1718 + 1719 +=== 6.7.6 Test with PC === 1720 + 1721 + 1722 +If there is still have problem to set up correctly the commands between RS485-LN and MTU. User can test the correct RS485 command set in PC and compare with the RS485 command sent out via RS485-LN. as long as both commands are the same, the MTU should return correct result. 1723 + 1724 + 1725 +Or User can send the working commands set in PC serial tool to Dragino Support to check what should be configured in RS485-LN. 1726 + 1727 +(% style="color:blue" %)**Connection method:** 1728 + 1729 +[[image:image-20221130104310-12.png]] 1730 + 1731 + 1732 +(% style="color:blue" %)**Link situation:** 1733 + 1734 +[[image:image-20221130104310-13.png||height="458" width="486"]] 1735 + 1736 + 1737 +[[image:image-20221130104310-14.png||height="371" width="823"]] 1738 + 1739 + 1740 +== 6.8 Where to get the decoder for RS485-LN? == 1741 + 1742 + 1743 +The decoder for RS485-LN needs to be written by yourself. Because the sensor to which the user is connected is custom, the read device data bytes also need custom parsing, so there is no universal decoder. We can only provide [[templates>>https://github.com/dragino/dragino-end-node-decoder/tree/main/RS485-LN]] for decoders (no intermediate data parsing part involved) 1744 + 1745 + 1363 1363 = 7. Trouble Shooting = 1364 1364 1365 -== 7.1 Downlink doesn ’t work, how to solve it? ==1748 +== 7.1 Downlink doesn't work, how to solve it? == 1366 1366 1750 + 1367 1367 Please see this link for debug: [[LoRaWAN Communication Debug>>doc:Main.LoRaWAN Communication Debug.WebHome]] 1368 1368 1369 1369 1370 -== 7.2 Why I can ’t join TTN V3 in US915 /AU915 bands? ==1754 +== 7.2 Why I can't join TTN V3 in US915 /AU915 bands? == 1371 1371 1756 + 1372 1372 It might about the channels mapping. Please see for detail: [[Notice of Frequency band>>doc:Main.LoRaWAN Communication Debug.WebHome||anchor="H2.NoticeofUS9152FCN4702FAU915Frequencyband"]] 1373 1373 1374 1374 1375 1375 = 8. Order Info = 1376 1376 1762 + 1377 1377 (% style="color:blue" %)**Part Number: RS485-LN-XXX** 1378 1378 1379 1379 (% style="color:blue" %)**XXX:** ... ... @@ -1389,10 +1389,9 @@ 1389 1389 * (% style="color:red" %)**RU864**(%%): frequency bands RU864 1390 1390 * (% style="color:red" %)**KZ865**(%%): frequency bands KZ865 1391 1391 1778 += 9. Packing Info = 1392 1392 1393 -= 9.Packing Info = 1394 1394 1395 - 1396 1396 **Package Includes**: 1397 1397 1398 1398 * RS485-LN x 1 ... ... @@ -1406,9 +1406,9 @@ 1406 1406 * Package Size / pcs : 14.5 x 8 x 5 cm 1407 1407 * Weight / pcs : 170g 1408 1408 1409 - 1410 1410 = 10. FCC Caution for RS485LN-US915 = 1411 1411 1796 + 1412 1412 ((( 1413 1413 Any Changes or modifications not expressly approved by the party responsible for compliance could void the user's authority to operate the equipment. 1414 1414 ))) ... ... @@ -1426,7 +1426,7 @@ 1426 1426 ))) 1427 1427 1428 1428 ((( 1429 -**Note: **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: 1814 +(% style="color:red" %)**Note: **(%%)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: 1430 1430 ))) 1431 1431 1432 1432 ((( ... ... @@ -1460,9 +1460,13 @@ 1460 1460 1461 1461 = 11. Support = 1462 1462 1848 + 1463 1463 * ((( 1464 1464 Support is provided Monday to Friday, from 09:00 to 18:00 GMT+8. Due to different timezones we cannot offer live support. However, your questions will be answered as soon as possible in the before-mentioned schedule. 1465 1465 ))) 1466 1466 * ((( 1467 1467 Provide as much information as possible regarding your enquiry (product models, accurately describe your problem and steps to replicate it etc) and send a mail to [[support@dragino.com>>url:file:///D:/市场资料/说明书/LoRa/LT系列/support@dragino.com]]. 1854 + 1855 + 1856 + 1468 1468 )))
- image-20220824144240-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +110.9 KB - Content
- image-20220824145428-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +12.6 KB - Content
- image-20220824145428-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +17.7 KB - Content
- image-20220929111027-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +240.0 KB - Content
- image-20221130104310-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +82.0 KB - Content
- image-20221130104310-10.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +17.4 KB - Content
- image-20221130104310-11.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +27.7 KB - Content
- image-20221130104310-12.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +392.9 KB - Content
- image-20221130104310-13.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +23.3 KB - Content
- image-20221130104310-14.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +25.4 KB - Content
- image-20221130104310-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +392.9 KB - Content
- image-20221130104310-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +30.4 KB - Content
- image-20221130104310-4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +25.8 KB - Content
- image-20221130104310-5.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +22.9 KB - Content
- image-20221130104310-6.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +12.9 KB - Content
- image-20221130104310-7.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +25.1 KB - Content
- image-20221130104310-8.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +9.9 KB - Content
- image-20221130104310-9.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +29.1 KB - Content