Changes for page RS485-LN – RS485 to LoRaWAN Converter User Manual
Last modified by Karry Zhuang on 2025/03/06 16:34
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 19 added, 0 removed)
- image-20220606110929-1.png
- 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
-
- Title
-
... ... @@ -1,1 +1,1 @@ 1 -RS485-LN – RS485 to LoRaWAN Converter 1 +RS485-LN – RS485 to LoRaWAN Converter User Manual - Content
-
... ... @@ -1,29 +1,39 @@ 1 -(% style="text-align:center" %) 2 -[[image:1653266934636-343.png||height="385" width="385"]] 1 +(% aria-label="1653266934636-343.png image widget" contenteditable="false" role="region" tabindex="-1" %) 2 +((( 3 +(% data-widget="image" style="text-align:center" %) 4 +[[image:1653266934636-343.png||height="385" width="385"]](% title="Click and drag to resize" %) 3 3 6 +(% 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==||height="15" role="presentation" title="Click and drag to move" width="15"]] 7 +))) 4 4 5 5 6 -**RS485-LN – RS485 to LoRaWAN Converter User Manual** 7 7 8 8 9 9 10 10 14 + 11 11 **Table of Contents:** 12 12 13 13 {{toc/}} 14 14 15 15 20 +(% aria-label="macro:toc widget" contenteditable="false" role="region" tabindex="-1" %) 21 +((( 22 +(% 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==||height="15" role="presentation" title="Click and drag to move" width="15"]] 23 +))) 16 16 17 17 18 18 19 19 20 20 21 -= 1.Introduction = 22 22 30 + 31 += 1. Introduction = 32 + 23 23 == 1.1 What is RS485-LN RS485 to LoRaWAN Converter == 24 24 35 + 25 25 ((( 26 -((( 27 27 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. 28 28 ))) 29 29 ... ... @@ -37,31 +37,33 @@ 37 37 38 38 ((( 39 39 (% 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. 50 +))) 40 40 52 +((( 41 41 (% 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]] 42 42 ))) 43 -))) 44 44 45 -[[image:1653267211009-519.png||height="419" width="724"]] 46 46 57 +(% 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" %) 47 47 59 + 48 48 == 1.2 Specifications == 49 49 50 50 51 -**Hardware System:** 63 +(% style="color:#037691" %)**Hardware System:** 52 52 53 -* STM32L072 CZT6MCU65 +* STM32L072xxxx MCU 54 54 * SX1276/78 Wireless Chip 55 55 * Power Consumption (exclude RS485 device): 56 56 ** Idle: 32mA@12v 57 57 ** 20dB Transmit: 65mA@12v 58 58 59 -**Interface for Model:** 71 +(% style="color:#037691" %)**Interface for Model:** 60 60 61 61 * RS485 62 62 * Power Input 7~~ 24V DC. 63 63 64 -**LoRa Spec:** 76 +(% style="color:#037691" %)**LoRa Spec:** 65 65 66 66 * Frequency Range: 67 67 ** Band 1 (HF): 862 ~~ 1020 Mhz ... ... @@ -82,11 +82,11 @@ 82 82 * Automatic RF Sense and CAD with ultra-fast AFC. 83 83 * Packet engine up to 256 bytes with CRC 84 84 85 - 86 86 == 1.3 Features == 87 87 99 + 88 88 * LoRaWAN Class A & Class C protocol (default Class C) 89 -* Frequency Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865/RU864 101 +* Frequency Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865/RU864/MA869 90 90 * AT Commands to change parameters 91 91 * Remote configure parameters via LoRa Downlink 92 92 * Firmware upgradable via program port ... ... @@ -94,9 +94,9 @@ 94 94 * Support Modbus protocol 95 95 * Support Interrupt uplink (Since hardware version v1.2) 96 96 97 - 98 98 == 1.4 Applications == 99 99 111 + 100 100 * Smart Buildings & Home Automation 101 101 * Logistics and Supply Chain Management 102 102 * Smart Metering ... ... @@ -104,19 +104,24 @@ 104 104 * Smart Cities 105 105 * Smart Factory 106 106 107 - 108 108 == 1.5 Firmware Change log == 109 109 121 + 110 110 [[RS485-LN Image files – Download link and Change log>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/]] 111 111 112 112 113 113 == 1.6 Hardware Change log == 114 114 127 + 115 115 ((( 116 116 ((( 130 +((( 117 117 v1.2: Add External Interrupt Pin. 132 +))) 118 118 134 +((( 119 119 v1.0: Release 136 +))) 120 120 121 121 122 122 ))) ... ... @@ -124,6 +124,7 @@ 124 124 125 125 = 2. Power ON Device = 126 126 144 + 127 127 ((( 128 128 The RS485-LN can be powered by 7 ~~ 24V DC power source. Connection as below 129 129 ... ... @@ -134,7 +134,7 @@ 134 134 Once there is power, the RS485-LN will be on. 135 135 ))) 136 136 137 -[[image:1653268091319-405.png]] 155 +(% aria-label="1653268091319-405.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1653268091319-405.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" %) 138 138 139 139 140 140 ))) ... ... @@ -143,8 +143,11 @@ 143 143 144 144 == 3.1 How it works? == 145 145 164 + 146 146 ((( 166 +((( 147 147 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. 168 +))) 148 148 149 149 150 150 ))) ... ... @@ -151,11 +151,13 @@ 151 151 152 152 == 3.2 Example to join LoRaWAN network == 153 153 175 + 154 154 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. 155 155 156 -[[image:1653268155545-638.png||height="334" width="724"]] 157 157 179 +(% 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" %) 158 158 181 + 159 159 ((( 160 160 ((( 161 161 The RS485-LN in this example connected to two RS485 devices for demonstration, user can connect to other RS485 devices via the same method. The connection is as below: ... ... @@ -163,16 +163,21 @@ 163 163 164 164 ((( 165 165 485A+ and 485B- of the sensor are connected to RS485A and RA485B of RS485-LN respectively. 189 + 190 + 166 166 ))) 167 167 168 -[[image:1653268227651-549.png||height="592" width="720"]] 193 +(% 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" %) 169 169 195 + 170 170 ((( 171 171 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 + 172 172 ))) 173 173 174 174 ((( 175 -**Step 1**: Create a device in TTN V3 with the OTAA keys from RS485-LN. 203 +(% style="color:blue" %)**Step 1**(%%): Create a device in TTN V3 with the OTAA keys from RS485-LN. 176 176 ))) 177 177 178 178 ((( ... ... @@ -180,73 +180,93 @@ 180 180 ))) 181 181 ))) 182 182 183 -[[image:1652953462722-299.png]] 211 +(% aria-label="1652953462722-299.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1652953462722-299.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" %) 184 184 213 + 185 185 ((( 186 186 ((( 187 187 User can enter this key in their LoRaWAN Server portal. Below is TTN V3 screen shot: 217 + 218 + 188 188 ))) 189 189 190 190 ((( 191 -Add APP EUI in the application. 222 +**Add APP EUI in the application.** 192 192 ))) 193 193 ))) 194 194 195 -[[image:image-20220519174512-1.png]] 226 +(% aria-label="image-20220519174512-1.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220519174512-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" %) 196 196 197 -[[image:image-20220519174512-2.png||height="323" width="720"]] 228 +(% aria-label="image-20220519174512-2.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220519174512-2.png||data-widget="image" height="323" 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" %) 198 198 199 -[[image:image-20220519174512-3.png||height="556" width="724"]] 230 +(% 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" %) 200 200 201 -[[image:image-20220519174512-4.png]] 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"]] 202 202 234 + 235 +(% title="Click and drag to resize" %) 236 + 203 203 You can also choose to create the device manually. 204 204 205 -[[image:1652953542269-423.png||height="710" width="723"]] 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" %) 206 206 207 -Add APP KEY and DEV EUI 208 208 209 -[[image:1652953553383-907.png||height="514" width="724"]] 210 210 243 +**Add APP KEY and DEV EUI** 211 211 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 + 247 + 248 + 212 212 ((( 213 -**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. 250 +(% 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 + 214 214 ))) 215 215 216 -[[image:1652953568895-172.png||height="232" width="724"]] 255 +(% 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" %) 217 217 218 218 219 219 == 3.3 Configure Commands to read data == 220 220 260 + 221 221 ((( 222 222 ((( 223 -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-BLviaATorDownlink"]] or LoRaWAN Downlink Command to configure what commands RS485-LN should send for each sampling and how to handle the return from RS485 devices. 263 +((( 264 +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 + 224 224 ))) 268 +))) 225 225 226 226 ((( 227 -(% 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 271 +((( 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** 273 +))) 228 228 229 229 230 230 ))) 231 231 ))) 232 232 233 -=== 3.3.1 onfigure UART settings for RS485 or TTL communication === 279 +=== 3.3.1 Configure UART settings for RS485 or TTL communication === 234 234 281 + 235 235 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: 236 236 237 -(% border="1" style="background-color:#ffffcc; color:green; width:782px" %) 238 -|(% style="width:128px" %)((( 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);" %)((( 239 239 **AT Commands** 240 -)))|(% style="width: 305px" %)(((288 +)))|=(% style="width: 116px; background-color: rgb(217, 226, 243); color: rgb(0, 112, 192);" %)((( 241 241 **Description** 242 -)))|(% style="width: 346px" %)(((290 +)))|=(% style="width: 190px;background-color:#D9E2F3;color:#0070C0" %)((( 243 243 **Example** 244 244 ))) 245 -|(% style="width:1 28px" %)(((293 +|(% style="width:119px" %)((( 246 246 AT+BAUDR 247 -)))|(% style="width: 305px" %)(((295 +)))|(% style="width:116px" %)((( 248 248 Set the baud rate (for RS485 connection). Default Value is: 9600. 249 -)))|(% style="width: 346px" %)(((297 +)))|(% style="width:190px" %)((( 250 250 ((( 251 251 AT+BAUDR=9600 252 252 ))) ... ... @@ -255,11 +255,11 @@ 255 255 Options: (1200,2400,4800,14400,19200,115200) 256 256 ))) 257 257 ))) 258 -|(% style="width:1 28px" %)(((306 +|(% style="width:119px" %)((( 259 259 AT+PARITY 260 -)))|(% style="width: 305px" %)(((308 +)))|(% style="width:116px" %)((( 261 261 Set UART parity (for RS485 connection) 262 -)))|(% style="width: 346px" %)(((310 +)))|(% style="width:190px" %)((( 263 263 ((( 264 264 AT+PARITY=0 265 265 ))) ... ... @@ -268,9 +268,9 @@ 268 268 Option: 0: no parity, 1: odd parity, 2: even parity 269 269 ))) 270 270 ))) 271 -|(% style="width:1 28px" %)(((319 +|(% style="width:119px" %)((( 272 272 AT+STOPBIT 273 -)))|(% style="width: 305px" %)(((321 +)))|(% style="width:116px" %)((( 274 274 ((( 275 275 Set serial stopbit (for RS485 connection) 276 276 ))) ... ... @@ -278,7 +278,7 @@ 278 278 ((( 279 279 280 280 ))) 281 -)))|(% style="width: 346px" %)(((329 +)))|(% style="width:190px" %)((( 282 282 ((( 283 283 AT+STOPBIT=0 for 1bit 284 284 ))) ... ... @@ -292,28 +292,36 @@ 292 292 ))) 293 293 ))) 294 294 295 - 296 - 297 297 === 3.3.2 Configure sensors === 298 298 345 + 299 299 ((( 300 300 ((( 301 -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 + 302 302 ))) 303 303 ))) 304 304 305 -(% border="1" style="background-color:#ffffcc; color:green; width:806px" %) 306 -|**AT Commands**|(% style="width:418px" %)**Description**|(% style="width:256px" %)**Example** 307 -|AT+CFGDEV|(% style="width:418px" %)((( 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" %)((( 357 +((( 308 308 This command is used to configure the RS485/TTL devices; they won’t be used during sampling. 359 +))) 309 309 361 +((( 310 310 AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx, 363 +))) 311 311 365 +((( 312 312 mm: 0: no CRC, 1: add CRC-16/MODBUS in the end of this command 313 -)))|(% style="width:256px" %)AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m 367 +))) 368 +)))|(% style="width:190px" %)AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m 314 314 315 315 === 3.3.3 Configure read commands for each sampling === 316 316 372 + 317 317 ((( 318 318 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. 319 319 ... ... @@ -324,8 +324,9 @@ 324 324 During each sampling, the RS485-LN can support 15 commands to read sensors. And combine the return to one or several uplink payloads. 325 325 326 326 327 -**Each RS485 commands include two parts:** 383 +(% style="color:#037691" %)**Each RS485 commands include two parts:** 328 328 385 + 329 329 ~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. 330 330 331 331 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. ... ... @@ -335,15 +335,14 @@ 335 335 336 336 After we got the valid value from each RS485 commands, we need to combine them together with the command **AT+DATAUP**. 337 337 338 - 339 339 Below are examples for the how above AT Commands works. 340 340 341 341 342 -**AT+COMMANDx : **This command will be sent to RS485 devices during each sampling, Max command length is 14 bytes. The grammar is: 398 +(% 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: 343 343 344 -(% border="1" style="background-color:# 4bacc6;color:white; width:499px" %)400 +(% border="1" style="background-color:#f2f2f2; width:499px" %) 345 345 |(% style="width:496px" %)((( 346 -**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** 347 347 348 348 **xx xx xx xx xx xx xx xx xx xx xx xx: The RS485 command to be sent** 349 349 ... ... @@ -355,10 +355,10 @@ 355 355 In the RS485-LN, we should use this command AT+COMMAND1=01 03 0B B8 00 02,1 for the same. 356 356 357 357 358 -**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. 359 359 360 -(% border="1" style="background-color:# 4bacc6;color:white; width:725px" %)361 -|(% style="width: 722px" %)(((416 +(% border="1" style="background-color:#f2f2f2; width:510px" %) 417 +|(% style="width:510px" %)((( 362 362 **AT+DATACUTx=a,b,c** 363 363 364 364 * **a: length for the return of AT+COMMAND** ... ... @@ -368,25 +368,29 @@ 368 368 369 369 **Examples:** 370 370 371 -* Grab bytes: 372 372 373 - [[image:image-20220602153621-1.png]]428 +* (% style="color:#037691" %)**Grab bytes** 374 374 430 +(% 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" %) 375 375 376 -* Grab a section. 377 377 378 -[[image:image-20220602153621-2.png]] 379 379 434 +* (% style="color:#037691" %)**Grab a section** 380 380 381 - *Grab different sections.436 +(% 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" %) 382 382 383 -[[image:image-20220602153621-3.png]] 384 384 439 + 440 +* (% style="color:#037691" %)**Grab different sections** 441 + 442 +(% 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" %) 443 + 385 385 386 386 ))) 387 387 388 388 === 3.3.4 Compose the uplink payload === 389 389 449 + 390 390 ((( 391 391 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.** 392 392 ... ... @@ -404,18 +404,16 @@ 404 404 ))) 405 405 406 406 ((( 407 -Final Payload is 467 +Final Payload is (% style="color:#4f81bd" %)**Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx** 408 408 ))) 409 409 410 410 ((( 411 -(% style="color:#4f81bd" %)**Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx** 412 -))) 413 - 414 -((( 415 415 Where PAYVER is defined by AT+PAYVER, below is an example screen shot. 472 + 473 + 416 416 ))) 417 417 418 -[[image: 1653269759169-150.png||height="513" width="716"]]476 +[[image:image-20220929111027-1.png||height="509" width="685"]](% title="Click and drag to resize" %) 419 419 420 420 421 421 (% style="color:#037691" %)**Examples: AT+DATAUP=1** ... ... @@ -423,18 +423,21 @@ 423 423 424 424 Compose the uplink payload with value returns in sequence and send with (% style="color:red" %)**Multiply UPLINKs**. 425 425 426 -Final Payload is 484 +Final Payload is (% style="color:#4f81bd" %)**PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA** 427 427 428 -(% style="color:#4f81bd" %)**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA** 429 429 430 -1. PAYVER: Defined by AT+PAYVER 431 -1. PAYLOAD COUNT: Total how many uplinks of this sampling. 432 -1. PAYLOAD#: Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT) 433 -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 487 +~1. PAYVER: Defined by AT+PAYVER 434 434 435 - [[image:image-20220602155039-4.png]]489 +2. PAYLOAD COUNT: Total how many uplinks of this sampling. 436 436 491 +3. PAYLOAD#: Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT) 437 437 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 + 496 +(% 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" %) 497 + 498 + 438 438 So totally there will be 3 uplinks for this sampling, each uplink include 8 bytes DATA 439 439 440 440 DATA1=RETURN1 Valid Value + the first two of Valid value of RETURN10= **20 20 0a 33 90 41 02 aa** ... ... @@ -444,8 +444,9 @@ 444 444 DATA3=the rest of Valid value of RETURN10= **30** 445 445 446 446 447 -(% 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:** 448 448 510 + 449 449 ~* For AU915/AS923 bands, if UplinkDwell time=0, max 51 bytes for each uplink. 450 450 451 451 * For AU915/AS923 bands, if UplinkDwell time=0, max 11 bytes for each uplink. ... ... @@ -455,72 +455,109 @@ 455 455 ~* For all other bands: max 51 bytes for each uplink. 456 456 457 457 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 + 458 458 Below are the uplink payloads: 459 459 460 -[[image:1654157178836-407.png]] 461 461 529 +(% 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" %) 462 462 531 + 463 463 === 3.3.5 Uplink on demand === 464 464 534 + 465 465 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. 466 466 467 -Downlink control command: 537 +(% style="color:blue" %)**Downlink control command:** 468 468 469 -**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. 470 470 471 -**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. 472 472 473 473 474 - 475 475 === 3.3.6 Uplink on Interrupt === 476 476 546 + 477 477 RS485-LN support external Interrupt uplink since hardware v1.2 release. 478 478 479 -[[image:1654157342174-798.png]] 480 480 550 +(% 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" %) 551 + 481 481 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. 482 482 483 483 484 484 == 3.4 Uplink Payload == 485 485 486 -(% border="1" style="background-color:#4bacc6; color:white; width:734px" %) 487 -|**Size(bytes)**|(% style="width:120px" %)**2**|(% style="width:116px" %)**1**|(% style="width:386px" %)**Length depends on the return from the commands** 488 -|Value|(% style="width:120px" %)((( 489 -Battery(mV) 490 490 491 -& 492 - 493 -Interrupt _Flag 494 -)))|(% style="width:116px" %)((( 558 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %) 559 +|=(% scope="row" style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)((( 560 +Size(bytes) 561 +)))|(% style="background-color:#d9e2f3; color:#0070c0; width:80px" %)**1**|(% style="background-color:#d9e2f3; color:#0070c0; width:360px" %)((( 562 +**Length depends on the return from the commands** 563 +))) 564 +|=(% style="width: 90px;" %)((( 565 +Value 566 +)))|(% style="width:114px" %)((( 495 495 PAYLOAD_VER 568 +)))|(% style="width:353px" %)((( 569 +If the valid payload is too long and exceed the maximum 496 496 497 - 498 -)))|(% style="width:386px" %)If the valid payload is too long and exceed the maximum support payload length in server, server will show payload not provided in the LoRaWAN server. 571 +support payload length in server, server will show payload not 499 499 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 + 500 500 Below is the decoder for the first 3 bytes. The rest bytes are dynamic depends on different RS485 sensors. 501 501 502 502 503 -== 3.5 Configure RS485- BL via AT or Downlink ==583 +== 3.5 Configure RS485-LN via AT or Downlink == 504 504 585 + 586 +((( 505 505 User can configure RS485-LN via AT Commands or LoRaWAN Downlink Commands 588 +))) 506 506 590 +((( 507 507 There are two kinds of Commands: 592 +))) 508 508 509 -* (% style="color:#4f81bd" %)**Common Commands**(%%): They should be available for each sensor, 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]] 594 +* ((( 595 +(% style="color:#4f81bd" %)**Common Commands**(%%): They should be available for each sensor, such as: change uplink interval, reset device. For firmware v1.3, user can find what common commands it supports: [[AT Commands and Downlink Command>>doc:Main.End Device AT Commands and Downlink Command.WebHome]] 596 +))) 510 510 511 -* (% style="color:#4f81bd" %)**Sensor Related Commands**(%%): These commands are special designed for RS485-LN. User can see these commands below: 598 +* ((( 599 +(% style="color:#4f81bd" %)**Sensor Related Commands**(%%): These commands are special designed for RS485-LN. User can see these commands below: 600 +))) 512 512 602 +((( 603 + 604 +))) 605 + 606 + 513 513 === 3.5.1 Common Commands === 514 514 609 + 515 515 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]] 516 516 517 517 518 -=== 3.5.2 Sensor relatedcommands===613 +=== 3.5.2 Downlink Response(Since firmware v1.4) === 519 519 615 + 520 520 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. 521 521 522 -[[image:image-20220602163333-5.png||height="263" width="1160"]] 523 523 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 + 524 524 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) 525 525 526 526 ... ... @@ -528,348 +528,815 @@ 528 528 529 529 530 530 531 -==== **RS485 Debug Command** ==== 630 +==== (% style="color:blue" %)**RS485 Debug Command**(%%) ==== 532 532 533 -This command is used to configure the RS485 devices; they won’t be used during sampling. 534 534 535 -* **AT Command** 633 +((( 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**. 635 +))) 536 536 537 -(% class="box infomessage" %) 538 538 ((( 539 -**AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m** 638 +* (% style="color:#037691" %)**AT Command** 639 + 640 +((( 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 540 540 ))) 643 +))) 541 541 542 -m: 0: no CRC, 1: add CRC-16/MODBUS in the end of this command 645 +((( 646 + 647 +))) 543 543 544 -* **Downlink Payload** 649 +* ((( 650 +(% style="color:#037691" %)**Downlink Payload** 651 +))) 545 545 546 -Format: A8 MM NN XX XX XX XX YY 653 +((( 654 +Format: (% style="color:#4472c4" %)** A8 MM NN XX XX XX XX YY** 655 +))) 547 547 657 +((( 548 548 Where: 659 +))) 549 549 550 -* MM: 1: add CRC-16/MODBUS ; 0: no CRC 551 -* NN: The length of RS485 command 552 -* XX XX XX XX: RS485 command total NN bytes 553 -* YY: How many bytes will be uplink from the return of this RS485 command, 554 -** if YY=0, RS485-LN will execute the downlink command without uplink; 555 -** if YY>0, RS485-LN will uplink total YY bytes from the output of this RS485 command; Fport=200 556 -** if YY=FF, RS485-LN will uplink RS485 output with the downlink command content; Fport=200. 661 +* ((( 662 +MM: 1: add CRC-16/MODBUS ; 0: no CRC 663 +))) 664 +* ((( 665 +NN: The length of RS485 command 666 +))) 667 +* ((( 668 +XX XX XX XX: RS485 command total NN bytes 669 +))) 670 +* ((( 671 +((( 672 +YY: How many bytes will be uplink from the return of this RS485 command, 673 +))) 557 557 558 -**Example 1** ~-~-> Configure without ask for uplink (YY=0) 675 +* ((( 676 +if YY=0, RS485-LN will execute the downlink command without uplink; 677 +))) 678 +* ((( 679 +if YY>0, RS485-LN will uplink total YY bytes from the output of this RS485 command; Fport=200 680 +))) 681 +* ((( 682 +if YY=FF, RS485-LN will uplink RS485 output with the downlink command content; Fport=200. 683 +))) 684 +))) 559 559 686 +((( 687 + 688 + 689 +(% style="color:blue" %)**Example 1:** (%%) ~-~-> Configure without ask for uplink (YY=0) 690 +))) 691 + 692 +((( 560 560 To connect a Modbus Alarm with below commands. 694 +))) 561 561 562 -* The command to active alarm is: 0A 05 00 04 00 01 4C B0. Where 0A 05 00 04 00 01 is the Modbus command to read the register 00 40 where stored the DI status. The 4C B0 is the CRC-16/MODBUS which calculate manually. 696 +* ((( 697 +The command to active alarm is: 0A 05 00 04 00 01 4C B0. Where 0A 05 00 04 00 01 is the Modbus command to read the register 00 40 where stored the DI status. The 4C B0 is the CRC-16/MODBUS which calculate manually. 698 +))) 563 563 564 -* The command to deactivate alarm is: 0A 05 00 04 00 00 8D 70. Where 0A 05 00 04 00 00 is the Modbus command to read the register 00 40 where stored the DI status. The 8D 70 is the CRC-16/MODBUS which calculate manually. 700 +* ((( 701 +The command to deactivate alarm is: 0A 05 00 04 00 00 8D 70. Where 0A 05 00 04 00 00 is the Modbus command to read the register 00 40 where stored the DI status. The 8D 70 is the CRC-16/MODBUS which calculate manually. 702 +))) 565 565 704 +((( 705 + 706 + 566 566 So if user want to use downlink command to control to RS485 Alarm, he can use: 708 +))) 567 567 710 +((( 568 568 (% style="color:#4f81bd" %)**A8 01 06 0A 05 00 04 00 01 00**(%%): to activate the RS485 Alarm 712 +))) 569 569 714 +((( 570 570 (% style="color:#4f81bd" %)**A8 01 06 0A 05 00 04 00 00 00**(%%): to deactivate the RS485 Alarm 716 +))) 571 571 718 +((( 572 572 A8 is type code and 01 means add CRC-16/MODBUS at the end, the 3^^rd^^ byte is 06, means the next 6 bytes are the command to be sent to the RS485 network, the final byte 00 means this command don’t need to acquire output. 720 +))) 573 573 722 +((( 723 + 724 +))) 574 574 575 -**Example 2** ~-~-> Configure with requesting uplink and original downlink command (**YY=FF**) 726 +((( 727 +(% style="color:blue" %)**Example 2:** (%%) ~-~-> Configure with requesting uplink and original downlink command (**YY=FF**) 728 +))) 576 576 730 +((( 577 577 User in IoT server send a downlink command: (% style="color:#4f81bd" %)**A8 01 06 0A 08 00 04 00 01 YY** 732 +))) 578 578 734 +((( 735 + 736 +))) 579 579 580 -RS485-LN got this downlink command and send (% style="color:#4f81bd" %)**0A 08 00 04 00 01 **(%%)to Modbus network. One of the RS485 sensor in the network send back Modbus reply **0A 08 00 04 00 00**. RS485-LN get this reply and combine with the original downlink command and uplink. The uplink message is: 738 +((( 739 +((( 740 +RS485-LN got this downlink command and send (% style="color:#4f81bd" %)**0A 08 00 04 00 01 **(%%)to Modbus network. One of the RS485 sensor in the network send back Modbus reply **0A 08 00 04 00 00**. RS485-LN get this reply and combine with the original downlink command and uplink. The uplink message is: **A8** (% style="color:#4f81bd" %)**0A 08 00 04 00 **(% style="color:red" %)**01 06** ** **(% style="color:green" %)**0A 08 00 04 00 00** 741 +))) 581 581 582 - **A8** (% style="color:#4f81bd" %)**0A 08 00 04 00 **(% style="color:red" %)**01 06** ** **(% style="color:green" %)**0A 08 00 04 00 00** 743 + 744 +))) 583 583 584 - [[image:1654159460680-153.png]] 746 +((( 747 + (% aria-label="1654159460680-153.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1654159460680-153.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" %) 748 +))) 585 585 586 586 587 587 588 -==== **Set Payload version** ==== 752 +==== (% style="color:blue" %)**Set Payload version**(%%) ==== 589 589 590 -This is the first byte of the uplink payload. RS485-BL can connect to different sensors. User can set the PAYVER field to tell server how to decode the current payload. 591 591 592 -* **AT Command:** 755 +((( 756 +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. 757 +))) 593 593 594 -(% class="box infomessage" %) 595 595 ((( 596 -**AT+PAYVER: Set PAYVER field = 1** 760 +* (% style="color:#037691" %)**AT Command:** 761 + 762 +(% style="color:#4472c4" %)** AT+PAYVER: ** (%%) Set PAYVER field = 1 763 + 764 + 597 597 ))) 598 598 599 -* **Downlink Payload:** 767 +* ((( 768 +(% style="color:#037691" %)**Downlink Payload:** 769 +))) 600 600 601 -**0xAE 01** ~-~-> Set PAYVER field = 0x01 771 +((( 772 +(% style="color:#4472c4" %)** 0xAE 01** (%%) ~-~-> Set PAYVER field = 0x01 773 +))) 602 602 603 -**0xAE 0F** ~-~-> Set PAYVER field = 0x0F 775 +((( 776 +(% style="color:#4472c4" %)** 0xAE 0F** (%%) ~-~-> Set PAYVER field = 0x0F 777 +))) 604 604 605 605 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)** 606 606 607 -==== **Set RS485 Sampling Commands** ==== 608 608 609 - AT+COMMANDxor AT+DATACUTx783 +[[image:image-20220824145428-2.png||height="168" width="1300"]] 610 610 611 -These three commands are used to configure how the RS485-LN polling data from Modbus device. Detail of usage please see : [[polling RS485 device>>||anchor="H3.3.3Configurereadcommandsforeachsampling"]]. 612 612 613 613 614 -* *ATmand:**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.** 615 615 616 -(% class="box infomessage" %) 789 + 790 +[[image:image-20220824145428-3.png||height="308" width="1200"]] 791 + 792 + 793 + 794 +==== (% style="color:blue" %)**Set RS485 Sampling Commands**(%%) ==== 795 + 796 + 617 617 ((( 618 - **AT+COMMANDx:ConfigureRS485read command to sensor.**798 +AT+COMMANDx or AT+DATACUTx 619 619 ))) 620 620 621 -(% class="box infomessage" %) 622 622 ((( 623 - **AT+DATACUTx:Configure how tohandlereturnfromRS485 devices.**802 +These three commands are used to configure how the RS485-LN polling data from Modbus device. Detail of usage please see : [[polling RS485 device>>||anchor="H3.3.3Configurereadcommandsforeachsampling"]]. 624 624 ))) 625 625 805 +((( 806 + 807 +))) 626 626 627 -* **Downlink Payload:** 809 +* ((( 810 +(% style="color:#037691" %)**AT Command:** 811 +))) 628 628 629 -** 0xAF**downlinkcommandcan be usedto set AT+COMMANDxorAT+DATACUTx.813 +(% style="color:#4472c4" %)** AT+COMMANDx: ** (%%) Configure RS485 read command to sensor. 630 630 631 -(% style="color: red" %)**Note**(%%):ifuseruseAT+COMMANDx toadd a newcommand,healsoneedto sendAT+DATACUTxdownlink.815 +(% style="color:#4472c4" %)** AT+DATACUTx: **(%%) Configure how to handle return from RS485 devices. 632 632 633 -Format: AF MM NN LL XX XX XX XX YY 634 634 818 +* ((( 819 +(% style="color:#037691" %)**Downlink Payload:** 820 +))) 821 + 822 +((( 823 +(% style="color:#4472c4" %)** 0xAF**(%%) downlink command can be used to set AT+COMMANDx or AT+DATACUTx. 824 + 825 + 826 +))) 827 + 828 +((( 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 + 832 +))) 833 + 834 +((( 835 +Format: (% style="color:#4472c4" %)** AF MM NN LL XX XX XX XX YY** 836 +))) 837 + 838 +((( 635 635 Where: 840 +))) 636 636 637 -* MM: the ATCOMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F, 638 -* NN: 0: no CRC; 1: add CRC-16/MODBUS ; 2: set the AT+DATACUT value. 639 -* LL: The length of AT+COMMAND or AT+DATACUT command 640 -* XX XX XX XX: AT+COMMAND or AT+DATACUT command 641 -* YY: If YY=0, RS485-BL will execute the downlink command without uplink; if YY=1, RS485-LN will execute an uplink after got this command. 842 +* ((( 843 +MM: the ATCOMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F, 844 +))) 845 +* ((( 846 +NN: 0: no CRC; 1: add CRC-16/MODBUS ; 2: set the AT+DATACUT value. 847 +))) 848 +* ((( 849 +LL: The length of AT+COMMAND or AT+DATACUT command 850 +))) 851 +* ((( 852 +XX XX XX XX: AT+COMMAND or AT+DATACUT command 853 +))) 854 +* ((( 855 +YY: If YY=0, RS485-LN will execute the downlink command without uplink; if YY=1, RS485-LN will execute an uplink after got this command. 856 +))) 642 642 858 +((( 859 + 860 + 643 643 **Example:** 862 +))) 644 644 864 +((( 645 645 (% style="color:#037691" %)**AF 03 01 06 0A 05 00 04 00 01 00**(%%): Same as AT+COMMAND3=0A 05 00 04 00 01,1 866 +))) 646 646 868 +((( 647 647 (% style="color:#037691" %)**AF 03 02 06**(% style="color:orange" %)** 10 **(% style="color:red" %)**01 **(% style="color:green" %)**05 06 09 0A**(% style="color:#037691" %)** 00**(%%): Same as AT+DATACUT3=(% style="color:orange" %)**16**(%%),(% style="color:red" %)**1**(%%),(% style="color:green" %)**5+6+9+10** 870 +))) 648 648 872 +((( 649 649 (% style="color:#037691" %)**AF 03 02 06 **(% style="color:orange" %)**0B**(% style="color:red" %)** 02 **(% style="color:green" %)**05 07 08 0A **(% style="color:#037691" %)**00**(%%): Same as AT+DATACUT3=(% style="color:orange" %)**11**(%%),(% style="color:red" %)**2**(%%),(% style="color:green" %)**5~~7+8~~10** 874 +))) 650 650 651 651 652 652 653 -==== **Fast command to handle MODBUS device** ==== 878 +==== (% style="color:blue" %)**Fast command to handle MODBUS device**(%%) ==== 654 654 655 -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]]. 656 656 881 +((( 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]]. 883 +))) 884 + 885 +((( 657 657 This command is valid since v1.3 firmware version 887 +))) 658 658 889 +((( 659 659 AT+MBFUN can auto read the Modbus function code: 01, 02, 03 or 04. AT+MBFUN has lower priority vs AT+DATACUT command. If AT+DATACUT command is configured, AT+MBFUN will be ignore. 891 +))) 660 660 893 +((( 894 + 895 +))) 661 661 897 +((( 662 662 **Example:** 899 +))) 663 663 664 -* AT+MBFUN=1 and AT+DATACUT1/AT+DATACUT2 are not configure (0,0,0). So RS485-LN. 665 -* AT+COMMAND1= 01 03 00 10 00 08,1 ~-~-> read slave address 01 , function code 03, start address 00 01, quantity of registers 00 08. 666 -* AT+COMMAND2= 01 02 00 40 00 10,1 ~-~-> read slave address 01 , function code 02, start address 00 40, quantity of inputs 00 10. 901 +* ((( 902 +AT+MBFUN=1 and AT+DATACUT1/AT+DATACUT2 are not configure (0,0,0). So RS485-LN. 903 +))) 904 +* ((( 905 +AT+COMMAND1= 01 03 00 10 00 08,1 ~-~-> read slave address 01 , function code 03, start address 00 01, quantity of registers 00 08. 906 +))) 907 +* ((( 908 +AT+COMMAND2= 01 02 00 40 00 10,1 ~-~-> read slave address 01 , function code 02, start address 00 40, quantity of inputs 00 10. 667 667 668 -[[image:image-20220602165351-6.png]] 910 + 911 +))) 669 669 670 -[[image:image-20220602165351- 7.png]]913 +(% aria-label="image-20220602165351-6.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602165351-6.png||data-widget="image"]] 671 671 915 +(% title="Click and drag to resize" %) 672 672 917 +(% 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" %) 673 673 674 -==== **RS485 command timeout** ==== 675 675 920 + 921 +==== (% style="color:blue" %)**RS485 command timeout**(%%) ==== 922 + 923 + 924 +((( 676 676 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. 926 +))) 677 677 928 +((( 678 678 Default value: 0, range: 0 ~~ 65 seconds 930 +))) 679 679 680 -* **AT Command:** 681 - 682 -(% class="box infomessage" %) 683 683 ((( 684 -**AT+CMDDLaa=hex(bb cc)*1000** 933 +* (% style="color:#037691" %)** AT Command:** 934 + 935 +(% style="color:#4472c4" %)** AT+CMDDLaa=hex(bb cc)*1000** 685 685 ))) 686 686 938 +((( 939 + 940 + 687 687 **Example:** 942 +))) 688 688 689 -**AT+CMDDL1=1000** to send the open time to 1000ms 944 +((( 945 +(% style="color:#4472c4" %)** AT+CMDDL1=1000** (%%)to send the open time to 1000ms 946 +))) 690 690 948 +((( 949 + 950 +))) 691 691 692 -* **Downlink Payload:** 952 +* ((( 953 +(% style="color:#037691" %)** Downlink Payload:** 954 +))) 693 693 694 -**0x AA aa bb cc** 956 +((( 957 +(% style="color:#4472c4" %)** 0x AA aa bb cc**(%%) Same as: AT+CMDDLaa=hex (bb cc) 958 +))) 695 695 696 -Same as: AT+CMDDLaa=hex(bb cc)*1000 960 +((( 961 + 697 697 698 - **Example:** 963 +**Example:** 964 +))) 699 699 700 - 0xAA 01 00 01 ~-~-> Same as **AT+CMDDL1=1000 ms** 966 +((( 967 +**0xAA 01 03 E8** ~-~-> Same as **AT+CMDDL1=1000 ms** 968 +))) 701 701 702 702 703 703 704 -==== **Uplink payload mode** ==== 972 +==== (% style="color:blue" %)**Uplink payload mode**(%%) ==== 705 705 974 + 975 +((( 706 706 Define to use one uplink or multiple uplinks for the sampling. 977 +))) 707 707 979 +((( 708 708 The use of this command please see: [[Compose Uplink payload>>||anchor="H3.3.4Composetheuplinkpayload"]] 709 709 710 -* **AT Command:** 982 + 983 +))) 711 711 712 -(% class="box infomessage" %) 713 713 ((( 714 -**AT+DATAUP=0** 986 +* (% style="color:#037691" %)** AT Command:** 987 + 988 +(% style="color:#4472c4" %)** AT+DATAUP=0** 989 + 990 +(% style="color:#4472c4" %)** AT+DATAUP=1** 991 + 992 + 715 715 ))) 716 716 717 -(% class="box infomessage" %) 718 -((( 719 -**AT+DATAUP=1** 995 +(% style="color:#4472c4" %)** 0xAD 01 00 00 14** (%%) **~-~->** Same as AT+DATAUP=1,20000 ~/~/ (00 00 14 is 20 seconds) 996 + 997 +Each uplink is sent to the server at 20-second intervals when segmented. 998 + 999 + 1000 +* ((( 1001 +(% style="color:#037691" %)** Downlink Payload:** 720 720 ))) 721 721 1004 +(% style="color:#4472c4" %)** 0xAD 00** (%%) **~-~->** Same as AT+DATAUP=0 722 722 723 -* **D ownlinkPayload:**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. 724 724 725 -**0xAD 00** **~-~->** Same as AT+DATAUP=0 726 726 727 -**0xAD 01** **~-~->** Same as AT+DATAUP=1 1009 +* ((( 1010 +(% style="color:#037691" %)** AT Command:** 1011 +))) 728 728 1013 +(% style="color:#4472c4" %)** AT+DATAUP=1,Timeout** 729 729 730 730 731 -==== **Manually trigger an Uplink** ==== 1016 +* ((( 1017 +(% style="color:#037691" %)** Downlink Payload:** 1018 +))) 732 732 1020 +(% style="color:#4472c4" %)** 0xAD 01 00 00 14** (%%) **~-~->** Same as AT+DATAUP=1,20000 ~/~/ (00 00 14 is 20 seconds) 1021 + 1022 +Each uplink is sent to the server at 20-second intervals when segmented. 1023 + 1024 + 1025 + 1026 +==== (% style="color:blue" %)**Manually trigger an Uplink**(%%) ==== 1027 + 1028 + 1029 +((( 733 733 Ask device to send an uplink immediately. 1031 +))) 734 734 735 -* **AT Command:** 1033 +* ((( 1034 +(% style="color:#037691" %)** AT Command:** 1035 +))) 736 736 737 -No AT Command for this, user can press the [[ACT button>>path:#Button]] for 1 second for the same. 1037 +((( 1038 +No AT Command for this, user can press the [[ACT button>>||anchor="H3.7Buttons"]] for 1 second for the same. 1039 +))) 738 738 1041 +((( 1042 + 1043 +))) 739 739 740 -* **Downlink Payload:** 1045 +* ((( 1046 +(% style="color:#037691" %)** Downlink Payload:** 1047 +))) 741 741 742 -**0x08 FF**, RS485-LN will immediately send an uplink. 1049 +((( 1050 +(% style="color:#4472c4" %)** 0x08 FF**(%%), RS485-LN will immediately send an uplink. 1051 +))) 743 743 744 744 745 745 746 -==== **Clear RS485 Command** ==== 1055 +==== (% style="color:blue" %)**Clear RS485 Command**(%%) ==== 747 747 1057 + 1058 +((( 748 748 The AT+COMMANDx and AT+DATACUTx settings are stored in special location, user can use below command to clear them. 749 749 750 -* **AT Command:** 1061 + 1062 +))) 751 751 752 -**AT+CMDEAR=mm,nn** mm: start position of erase ,nn: stop position of erase 1064 +* ((( 1065 +(% style="color:#037691" %)** AT Command:** 1066 +))) 753 753 1068 +((( 1069 +(% style="color:#4472c4" %)** AT+CMDEAR=mm,nn** (%%) mm: start position of erase ,nn: stop position of erase 1070 +))) 1071 + 1072 +((( 1073 + 1074 + 754 754 Etc. AT+CMDEAR=1,10 means erase AT+COMMAND1/AT+DATACUT1 to AT+COMMAND10/AT+DATACUT10 1076 +))) 755 755 1078 +((( 756 756 Example screen shot after clear all RS485 commands. 1080 +))) 757 757 1082 +((( 1083 + 1084 +))) 758 758 1086 +((( 759 759 The uplink screen shot is: 1088 +))) 760 760 761 -[[image:1654160691922-496.png]] [[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png]]1090 +(% aria-label="1654160691922-496.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1654160691922-496.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" %) 762 762 763 763 764 -* **Downlink Payload:** 1093 +* ((( 1094 +(% style="color:#037691" %)** Downlink Payload:** 1095 +))) 765 765 766 -**0x09 aa bb** same as AT+CMDEAR=aa,bb 1097 +((( 1098 +(% style="color:#4472c4" %)** 0x09 aa bb** (%%) same as AT+CMDEAR=aa,bb 1099 +))) 767 767 768 768 769 769 770 -==== **Set Serial Communication Parameters** ==== 1103 +==== (% style="color:blue" %)**Set Serial Communication Parameters**(%%) ==== 771 771 1105 + 1106 +((( 772 772 Set the Rs485 serial communication parameters: 1108 +))) 773 773 774 -* **AT Command:** 1110 +((( 1111 +(% style="color:#037691" %)**AT Command:** 1112 +))) 775 775 776 -Set Baud Rate: 777 - 778 -(% class="box infomessage" %) 779 779 ((( 780 -* *AT+BAUDR=9600**~/~/ Options:(1200,2400,4800,14400,19200,115200)1115 +* Set Baud Rate 781 781 ))) 782 782 783 - SetUARTParity1118 +(% 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 784 784 785 - (% class="box infomessage" %)1120 + 786 786 ((( 787 -* *AT+PARITY=0**~/~/ Option: 0: no parity, 1: odd parity, 2: even parity1122 +* Set UART Parity 788 788 ))) 789 789 790 - SetSTOPBIT1125 +(% style="color:#4472c4" %)** AT+PARITY=0** (%%) ~/~/ Option: 0: no parity, 1: odd parity, 2: even parity 791 791 792 - (% class="box infomessage" %)1127 + 793 793 ((( 794 -* *AT+STOPBIT=0** ~/~/ Option: 0 for 1bit; 1 for 1.5 bit ; 2 for 2 bits1129 +* Set STOPBIT 795 795 ))) 796 796 1132 +(% style="color:#4472c4" %)** AT+STOPBIT=0** (%%) ~/~/ Option: 0 for 1bit; 1 for 1.5 bit ; 2 for 2 bits 797 797 798 -* **Downlink Payload:** 799 799 800 -**A7 01 aa bb**: Same AT+BAUDR=hex(aa bb)*100 1135 +((( 1136 +(% style="color:#037691" %)**Downlink Payload:** 1137 +))) 801 801 1139 +((( 1140 +(% style="color:#4472c4" %)** A7 01 aa bb**: (%%) Same AT+BAUDR=hex(aa bb)*100 1141 +))) 1142 + 1143 +((( 802 802 **Example:** 1145 +))) 803 803 804 -* A7 01 00 60 same as AT+BAUDR=9600 805 -* A7 01 04 80 same as AT+BAUDR=115200 1147 +* ((( 1148 +A7 01 00 60 same as AT+BAUDR=9600 1149 +))) 1150 +* ((( 1151 +A7 01 04 80 same as AT+BAUDR=115200 1152 +))) 806 806 807 -A7 02 aa: Same as AT+PARITY=aa (aa value: 00 , 01 or 02) 1154 +((( 1155 +* A7 02 aa: Same as AT+PARITY=aa (aa value: 00 , 01 or 02) 1156 +))) 808 808 809 -A7 03 aa: Same as AT+STOPBIT=aa (aa value: 00 , 01 or 02) 1158 +((( 1159 +* A7 03 aa: Same as AT+STOPBIT=aa (aa value: 00 , 01 or 02) 1160 +))) 810 810 811 811 1163 + 1164 + 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 + 812 812 == 3.6 Listening mode for RS485 network == 813 813 1314 + 1315 +((( 814 814 This feature support since firmware v1.4 1317 +))) 815 815 1319 +((( 816 816 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. 817 817 818 -[[image:image-20220602171200-8.png||height="567" width="1007"]] 1322 + 1323 +))) 819 819 820 - Toenable thelistening,usecan runthecommandAT+RXMODE.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"]] 821 821 1327 +(% title="Click and drag to resize" %) 822 822 823 -(% border="1" style="background-color:#ffffcc; width:500px" %) 824 -|=(% style="width: 161px;" %)**Command example:**|=(% style="width: 337px;" %)**Function** 825 -|(% style="width:161px" %)AT+RXMODE=1,10 |(% style="width:337px" %)Enable listening mode 1, if RS485-LN has received more than 10 RS485 commands from the network. RS485-LN will send these commands via LoRaWAN uplinks. 826 -|(% style="width:161px" %)AT+RXMODE=2,500|(% style="width:337px" %)Enable listening mode 2, RS485-LN will capture and send a 500ms content once from the first detect of character. Max value is 65535 ms 827 -|(% style="width:161px" %)AT+RXMODE=0,0|(% style="width:337px" %)Disable listening mode. This is the default settings. 828 -|(% style="width:161px" %) |(% style="width:337px" %)A6 aa bb cc same as AT+RXMODE=aa,(bb<<8 ~| cc) 1329 +((( 1330 +To enable the listening mode, use can run the command (% style="color:#4472c4" %)** AT+RXMODE**. 1331 +))) 829 829 830 -**Downlink Command:** 1333 +((( 1334 + 1335 +))) 831 831 832 -**0xA6 aa bb cc ** same as AT+RXMODE=aa,(bb<<8 | cc) 1337 +(% border="1" cellspacing="10" style="background-color:#ffffcc; width:500px" %) 1338 +|=(% style="width: 100px;" %)((( 1339 +**Command example** 1340 +)))|=(% style="width: 400px;" %)((( 1341 +**Function** 1342 +))) 1343 +|(% style="width:100px" %)((( 1344 +AT+RXMODE=1,10 1345 +)))|(% style="width:400px" %)((( 1346 +Enable listening mode 1, if RS485-LN has received more than 10 RS485 commands from the network. RS485-LN will send these commands via LoRaWAN uplinks. 1347 +))) 1348 +|(% style="width:100px" %)((( 1349 +AT+RXMODE=2,500 1350 +)))|(% style="width:400px" %)((( 1351 +Enable listening mode 2, RS485-LN will capture and send a 500ms content once from the first detect of character. Max value is 65535 ms 1352 +))) 1353 +|(% style="width:100px" %)((( 1354 +AT+RXMODE=0,0 1355 +)))|(% style="width:400px" %)((( 1356 +Disable listening mode. This is the default settings. 1357 +))) 1358 +|(% style="width:100px" %)((( 1359 + 1360 +)))|(% style="width:400px" %)((( 1361 +A6 aa bb cc same as AT+RXMODE=aa,(bb<<8 | cc) 1362 +))) 833 833 1364 +((( 1365 + 834 834 1367 +(% style="color:#037691" %)**Downlink Command:** 1368 +))) 1369 + 1370 +((( 1371 +(% style="color:#4472c4" %)** 0xA6 aa bb cc **(%%) same as AT+RXMODE=aa,(bb<<8 | cc) 1372 +))) 1373 + 1374 +((( 1375 + 1376 +))) 1377 + 1378 +((( 835 835 **Example**: 1380 +))) 836 836 1382 +((( 837 837 The RS485-LN is set to AT+RXMODE=2,1000 1384 +))) 838 838 1386 +((( 839 839 There is a two Modbus commands in the RS485 network as below: 1388 +))) 840 840 841 -The Modbus master send a command: (% style="background-color:#ffc000" %)01 03 00 00 00 02 c4 0b 1390 +((( 1391 +The Modbus master send a command: (% style="background-color:#ffc000" %)**01 03 00 00 00 02 c4 0b** 1392 +))) 842 842 843 -And Modbus slave reply with: (% style="background-color:green" %)01 03 04 00 00 00 00 fa 33 1394 +((( 1395 +And Modbus slave reply with: (% style="background-color:green" %)**01 03 04 00 00 00 00 fa 33** 1396 +))) 844 844 845 -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 1398 +((( 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** 846 846 847 -[[image:image-20220602171200-9.png]] 1401 + 1402 +))) 848 848 1404 +((( 1405 +(% aria-label="image-20220602171200-9.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602171200-9.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" %) 1406 +))) 849 849 850 -(% 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. 1408 +((( 1409 + 1410 +))) 851 851 1412 +((( 1413 +((( 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.** 1415 +))) 1416 +))) 852 852 1418 + 853 853 == 3.7 Buttons == 854 854 855 855 856 -(% border="1" style="background-color:#f 7faff; width:500px" %)857 -|=**Button**|=(% style="width: 1420px;" %)**Feature**858 -|**ACT**|(% style="width:1 420px" %)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**859 -|**RST**|(% style="width:1 420px" %)Reboot RS485860 -|**PRO**|(% style="width:1 420px" %)Use for upload image, see [[How to Update Image>>path:#upgrade_image]]1422 +(% border="1.5" cellspacing="4" style="background-color:#ffffcc; width:430px" %) 1423 +|=(% style="width: 50px;" %)**Button**|=(% style="width: 380px;" %)**Feature** 1424 +|(% 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** 1425 +|(% style="width:50px" %)**RST**|(% style="width:361px" %)Reboot RS485 1426 +|(% style="width:50px" %)**PRO**|(% style="width:361px" %)Use for upload image, see [[How to Update Image>>||anchor="H6.1Howtoupgradetheimage3F"]] 861 861 862 - 863 863 == 3.8 LEDs == 864 864 865 -(% border="1" style="background-color:#f7faff; width:500px" %) 866 -|=**LEDs**|=**Feature** 1430 + 1431 +(% border="1.5" cellspacing="4" style="background-color:#ffffcc; width:430px" %) 1432 +|=(% style="width: 50px;" %)**LEDs**|=(% style="width: 380px;" %)**Feature** 867 867 |**PWR**|Always on if there is power 868 -|**SYS**|After device is powered on, the SYS will (% style="color:green" %)**fast blink 1434 +|**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. 869 869 870 - 871 871 = 4. Case Study = 872 872 1438 + 873 873 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]] 874 874 875 875 ... ... @@ -877,175 +877,341 @@ 877 877 878 878 == 5.1 Access AT Command == 879 879 880 -RS485-BL supports AT Command set. User can use a USB to TTL adapter plus the 3.5mm Program Cable to connect to RS485-BL to use AT command, as below. 881 881 882 -[[image:1654162355560-817.png]] 1447 +((( 1448 +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. 883 883 1450 + 1451 +))) 884 884 885 - InPC,Userneedstoset(% style="color:blue" %)**serialtool**(%%)(suchas[[putty>>url:https://www.chiark.greenend.org.uk/~~sgtatham/putty/latest.html]], SecureCRT) baudte to(%style="color:green" %)**9600**(%%) toaccesstoaccess serial consoleof RS485-BL.Thedefaultpasswordis123456.Belowistheoutputfor reference:1453 +(% 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" %) 886 886 887 -[[image:1654162368066-342.png]] 888 888 889 889 890 -More detail AT Command manual can be found at [[AT Command Manual>>||anchor="3.5ConfigureRS485-BLviaATorDownlink"]] 1457 +((( 1458 +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: 891 891 1460 + 1461 +))) 892 892 1463 +(% 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" %) 1464 + 1465 + 1466 +((( 1467 +More detail AT Command manual can be found at [[AT Command Manual>>https://www.dragino.com/downloads/index.php?dir=LT_LoRa_IO_Controller/LT33222-L/]] 1468 +))) 1469 + 1470 + 893 893 == 5.2 Common AT Command Sequence == 894 894 895 895 === 5.2.1 Multi-channel ABP mode (Use with SX1301/LG308) === 896 896 1475 + 897 897 If device has not joined network yet: 898 898 899 -(% class="box infomessage" %) 900 -((( 901 -**AT+FDR** 902 -))) 1478 +* (% style="color:#037691" %)**AT+FDR** 1479 +* (% style="color:#037691" %)**AT+NJM=0** 1480 +* (% style="color:#037691" %)**ATZ** 903 903 904 -(% class="box infomessage" %) 905 905 ((( 906 -**AT+NJM=0** 907 -))) 1483 + 908 908 909 -(% class="box infomessage" %) 910 -((( 911 -**ATZ** 912 -))) 913 - 914 - 915 915 If device already joined network: 916 916 917 -(% class="box infomessage" %) 918 -((( 919 -**AT+NJM=0** 1487 +* (% style="color:#037691" %)**AT+NJM=0** 1488 +* (% style="color:#037691" %)**ATZ** 920 920 ))) 921 921 922 -(% class="box infomessage" %) 923 -((( 924 -**ATZ** 925 -))) 926 926 927 927 928 928 === 5.5.2 Single-channel ABP mode (Use with LG01/LG02) === 929 929 930 930 931 -(% style="background-color:#dcdcdc" %)**AT+FDR** (%%) Reset Parameters to Factory Default, Keys Reserve 1496 +(% style="background-color:#dcdcdc" %)**AT+FDR** (%%) Reset Parameters to Factory Default, Keys Reserve 932 932 933 -(% style="background-color:#dcdcdc" %)**AT+NJM=0 **(%%)Set to ABP mode 1498 +(% style="background-color:#dcdcdc" %)**AT+NJM=0 **(%%) Set to ABP mode 934 934 935 -(% style="background-color:#dcdcdc" %)**AT+ADR=0** (%%)Set the Adaptive Data Rate Off 1500 +(% style="background-color:#dcdcdc" %)**AT+ADR=0** (%%) Set the Adaptive Data Rate Off 936 936 937 -(% style="background-color:#dcdcdc" %)**AT+DR=5** (%%)Set Data Rate 1502 +(% style="background-color:#dcdcdc" %)**AT+DR=5** (%%) Set Data Rate 938 938 939 -(% style="background-color:#dcdcdc" %)**AT+TDC=60000** (%%) Set transmit interval to 60 seconds 1504 +(% style="background-color:#dcdcdc" %)**AT+TDC=60000** (%%) Set transmit interval to 60 seconds 940 940 941 -(% style="background-color:#dcdcdc" %)**AT+CHS=868400000**(%%) Set transmit frequency to 868.4Mhz 1506 +(% style="background-color:#dcdcdc" %)**AT+CHS=868400000**(%%) Set transmit frequency to 868.4Mhz 942 942 943 -(% style="background-color:#dcdcdc" %)**AT+RX2FQ=868400000** (%%) Set RX2Frequency to 868.4Mhz (according to the result from server) 1508 +(% style="background-color:#dcdcdc" %)**AT+RX2FQ=868400000** (%%) Set RX2Frequency to 868.4Mhz (according to the result from server) 944 944 945 -(% style="background-color:#dcdcdc" %)**AT+RX2DR=5** (%%) Set RX2DR to match the downlink DR from server. see below 1510 +(% style="background-color:#dcdcdc" %)**AT+RX2DR=5** (%%) Set RX2DR to match the downlink DR from server. see below 946 946 947 -(% style="background-color:#dcdcdc" %)**AT+DADDR=26** (%%) 01 1A F1 Set Device Address to 26 01 1A F1, this ID can be found in the LoRa Server portal. 1512 +(% style="background-color:#dcdcdc" %)**AT+DADDR=26** (%%) 01 1A F1 Set Device Address to 26 01 1A F1, this ID can be found in the LoRa Server portal. 948 948 949 -(% style="background-color:#dcdcdc" %)**ATZ** (%%) Reset MCU 1514 +(% style="background-color:#dcdcdc" %)**ATZ** (%%) Reset MCU 950 950 951 951 952 952 (% style="color:red" %)**Note:** 953 953 1519 +((( 954 954 (% style="color:red" %)1. Make sure the device is set to ABP mode in the IoT Server. 955 955 2. Make sure the LG01/02 gateway RX frequency is exactly the same as AT+CHS setting. 956 956 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. 957 957 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 958 958 959 -[[image:1654162478620-421.png]] 1525 + 1526 +))) 960 960 1528 +(% 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" %) 961 961 1530 + 962 962 = 6. FAQ = 963 963 964 964 == 6.1 How to upgrade the image? == 965 965 1535 + 1536 +((( 966 966 The RS485-LN LoRaWAN Controller is shipped with a 3.5mm cable, the cable is used to upload image to RS485-LN to: 1538 +))) 967 967 968 -* Support new features 969 -* For bug fix 970 -* Change LoRaWAN bands. 1540 +* ((( 1541 +Support new features 1542 +))) 1543 +* ((( 1544 +For bug fix 1545 +))) 1546 +* ((( 1547 +Change LoRaWAN bands. 1548 +))) 971 971 1550 +((( 972 972 Below shows the hardware connection for how to upload an image to RS485-LN: 1552 +))) 973 973 974 -[[image:1654162535040-878.png]] 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"]] 975 975 976 - **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]].1556 +(% title="Click and drag to resize" %) 977 977 978 -**Step2**: Download the [[LT Image files>>url:http://www.dragino.com/downloads/index.php?dir=LT_LoRa_IO_Controller/LT33222-L/image/]]. 1558 +((( 1559 +(% 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]]. 979 979 980 -**Step3: **Open flashloader; choose the correct COM port to update. 1561 + 1562 +))) 981 981 1564 +((( 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 + 1568 +))) 1569 + 1570 +((( 1571 +(% style="color:blue" %)**Step3**(%%)**: **Open flashloader; choose the correct COM port to update. 1572 + 1573 + 1574 +))) 1575 + 1576 +((( 1577 +((( 1578 +((( 982 982 (% style="color:blue" %) Hold down the PRO button and then momentarily press the RST reset button and the SYS led will change from OFF to ON, While SYS LED is RED ON, it means the RS485-LN is ready to be program. 1580 +))) 1581 +))) 1582 +))) 983 983 984 984 985 -[[image:image-20220602175818-12.png]] 1585 +(% aria-label="image-20220602175818-12.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602175818-12.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" %) 986 986 987 987 988 -[[image:image-20220602175848-13.png]] 1588 +(% aria-label="image-20220602175848-13.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602175848-13.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" %) 989 989 990 990 991 -[[image:image-20220602175912-14.png]] 1591 +(% 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" %) 992 992 993 993 994 -**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:** 995 995 996 -[[image:image-20220602175638-10.png]] 1596 +(% 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" %) 997 997 998 998 999 999 == 6.2 How to change the LoRa Frequency Bands/Region? == 1000 1000 1601 + 1001 1001 User can follow the introduction for [[how to upgrade image>>||anchor="H6.1Howtoupgradetheimage3F"]]. When download the images, choose the required image file for download. 1002 1002 1003 1003 1004 -== 6.3 How many RS485-Slave can RS485- BL connects? ==1605 +== 6.3 How many RS485-Slave can RS485-LN connects? == 1005 1005 1006 -The RS485-BL can support max 32 RS485 devices. Each uplink command of RS485-BL can support max 16 different RS485 command. So RS485-BL 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"]]. 1007 1007 1608 +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"]]. 1008 1008 1610 + 1009 1009 == 6.4 Compatible question to ChirpStack and TTI LoRaWAN server ? == 1010 1010 1613 + 1011 1011 When user need to use with ChirpStack or TTI. Please set AT+RPL=4. 1012 1012 1013 1013 Detail info check this link: [[Set Packet Receiving Response Level>>doc:Main.End Device AT Commands and Downlink Command.WebHome||anchor="H7.23SetPacketReceivingResponseLevel"]] 1014 1014 1015 1015 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 + 1016 1016 = 7. Trouble Shooting = 1017 1017 1018 -== 7.1 Downlink doesn ’t work, how to solve it? ==1748 +== 7.1 Downlink doesn't work, how to solve it? == 1019 1019 1750 + 1020 1020 Please see this link for debug: [[LoRaWAN Communication Debug>>doc:Main.LoRaWAN Communication Debug.WebHome]] 1021 1021 1022 1022 1023 -== 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? == 1024 1024 1756 + 1025 1025 It might about the channels mapping. Please see for detail: [[Notice of Frequency band>>doc:Main.LoRaWAN Communication Debug.WebHome||anchor="H2.NoticeofUS9152FCN4702FAU915Frequencyband"]] 1026 1026 1027 1027 1028 1028 = 8. Order Info = 1029 1029 1762 + 1030 1030 (% style="color:blue" %)**Part Number: RS485-LN-XXX** 1031 1031 1032 1032 (% style="color:blue" %)**XXX:** 1033 1033 1034 -* (% style="color: blue" %)**EU433**(%%): frequency bands EU4331035 -* (% style="color: blue" %)**EU868**(%%): frequency bands EU8681036 -* (% style="color: blue" %)**KR920**(%%): frequency bands KR9201037 -* (% style="color: blue" %)**CN470**(%%): frequency bands CN4701038 -* (% style="color: blue" %)**AS923**(%%): frequency bands AS9231039 -* (% style="color: blue" %)**AU915**(%%): frequency bands AU9151040 -* (% style="color: blue" %)**US915**(%%): frequency bands US9151041 -* (% style="color: blue" %)**IN865**(%%): frequency bands IN8651042 -* (% style="color: blue" %)**RU864**(%%): frequency bands RU8641043 -* (% style="color: blue" %)**KZ865**(%%): frequency bands KZ8651767 +* (% style="color:red" %)**EU433**(%%): frequency bands EU433 1768 +* (% style="color:red" %)**EU868**(%%): frequency bands EU868 1769 +* (% style="color:red" %)**KR920**(%%): frequency bands KR920 1770 +* (% style="color:red" %)**CN470**(%%): frequency bands CN470 1771 +* (% style="color:red" %)**AS923**(%%): frequency bands AS923 1772 +* (% style="color:red" %)**AU915**(%%): frequency bands AU915 1773 +* (% style="color:red" %)**US915**(%%): frequency bands US915 1774 +* (% style="color:red" %)**IN865**(%%): frequency bands IN865 1775 +* (% style="color:red" %)**RU864**(%%): frequency bands RU864 1776 +* (% style="color:red" %)**KZ865**(%%): frequency bands KZ865 1044 1044 1778 += 9. Packing Info = 1045 1045 1046 -= 9.Packing Info = 1047 1047 1048 - 1049 1049 **Package Includes**: 1050 1050 1051 1051 * RS485-LN x 1 ... ... @@ -1059,33 +1059,67 @@ 1059 1059 * Package Size / pcs : 14.5 x 8 x 5 cm 1060 1060 * Weight / pcs : 170g 1061 1061 1062 - 1063 1063 = 10. FCC Caution for RS485LN-US915 = 1064 1064 1796 + 1797 +((( 1065 1065 Any Changes or modifications not expressly approved by the party responsible for compliance could void the user's authority to operate the equipment. 1799 +))) 1066 1066 1801 +((( 1067 1067 This device complies with part 15 of the FCC Rules. Operation is subject to the following two conditions: (1) This device may not cause harmful interference, and (2) this device must accept any interference received, including interference that may cause undesired operation. 1803 +))) 1068 1068 1805 +((( 1806 + 1807 +))) 1069 1069 1070 -**IMPORTANT NOTE:** 1809 +((( 1810 +(% style="color:red" %)**IMPORTANT NOTE:** 1811 +))) 1071 1071 1072 -**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: 1813 +((( 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: 1815 +))) 1073 1073 1817 +((( 1074 1074 —Reorient or relocate the receiving antenna. 1819 +))) 1075 1075 1821 +((( 1076 1076 —Increase the separation between the equipment and receiver. 1823 +))) 1077 1077 1825 +((( 1078 1078 —Connect the equipment into an outlet on a circuit different from that to which the receiver is connected. 1827 +))) 1079 1079 1829 +((( 1080 1080 —Consult the dealer or an experienced radio/TV technician for help. 1831 +))) 1081 1081 1833 +((( 1834 + 1835 +))) 1082 1082 1083 -**FCC Radiation Exposure Statement:** 1837 +((( 1838 +(% style="color:red" %)**FCC Radiation Exposure Statement:** 1839 +))) 1084 1084 1841 +((( 1085 1085 This equipment complies with FCC radiation exposure limits set forth for an uncontrolled environment.This equipment should be installed and operated with minimum distance 20cm between the radiator& your body. 1843 +))) 1086 1086 1087 1087 1088 1088 = 11. Support = 1089 1089 1090 -* 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. 1091 -* 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]]. 1848 + 1849 +* ((( 1850 +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. 1851 +))) 1852 +* ((( 1853 +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 + 1857 +)))
- image-20220606110929-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +13.9 KB - Content
- 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