<
From version < 102.16 >
edited by Xiaoling
on 2023/04/25 14:05
To version < 108.1 >
edited by Bei Jinggeng
on 2023/11/27 15:23
>
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.Xiaoling
1 +XWiki.Bei
Content
... ... @@ -38,7 +38,7 @@
38 38  )))
39 39  
40 40  (((
41 -RS485-LN allows user to (% style="color:blue" %)**monitor / control RS485 devices**(%%) and reach extremely long ranges. It provides ultra-long range spread spectrum communication and high interference immunity whilst minimizing current consumption. It targets professional wireless sensor network applications such as irrigation systems, smart metering, smart cities, smartphone detection, building automation, and so on.
41 +RS485-LN allows user to (% style="color:blue" %)**monitor / control RS485 devices**(%%) and reach extremely long ranges. It provides ultra-long range spread spectrum communication and high interference immunity whilst minimizing current consumption. It targets professional wireless sensor network applications such as irrigation systems, smart metering, smart cities, building automation, and so on.
42 42  )))
43 43  
44 44  (((
... ... @@ -208,7 +208,7 @@
208 208  )))
209 209  )))
210 210  
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" %)​
211 +(% 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"]][[image:image-20230425175410-2.png]](% title="Click and drag to resize" %)​
212 212  
213 213  
214 214  (((
... ... @@ -255,29 +255,37 @@
255 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" %)​
256 256  
257 257  
258 -== 3.3 Configure Commands to read data ==
258 +== 3.3 Configure Device to Read RS485 Sensors ==
259 259  
260 260  
261 -(((
262 -(((
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.
261 +There are plenty of RS485 and TTL level devices in the market and each device has different commands to read the valid data. To support these devices in most flexible, RS485-LN supports flexible command set. User can use [[Dragino RS485 Tool>>url:https://www.dropbox.com/sh/us9qecn39fwt8n1/AABREdqUCzEmJMRrfuWuXasoa?dl=0]],  [[AT Commands or LoRaWAN Downlink>>url:http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/RS485-LB_Waterproof_RS485UART_to_LoRaWAN_Converter/#H3.5ConfigureRS485-LBviaATorDownlink]] Command to configure how RS485-LN should read the sensor and how to handle the return from RS485 or TTL sensors.
265 265  
266 -
267 -)))
268 -)))
269 269  
270 270  (((
271 271  (((
266 +(((
272 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 273  )))
274 274  
275 -
270 +=== ===
271 +
272 +=== 3.3.1 Method 1 ~-~- via RS485 Configure Tool ===
273 +
274 +Use the RS485 Configure tool is the recommand method. Please see the instruction of how to use the tool:
275 +
276 +* **[[RS485 Configure Tool Instruction>>url:http://wiki.dragino.com/xwiki/bin/view/Main/RS485_Configure_Tool/]]**
277 +
278 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/RS485-LB_Waterproof_RS485UART_to_LoRaWAN_Converter/WebHome/image-20231127144411-1.png?width=494&height=368&rev=1.1||alt="image-20231127144411-1.png" height="368" width="494"]]
279 +
280 +=== ===
281 +
282 +=== 3.3.2  Method 2 ~-~- via AT Commands ===
276 276  )))
277 277  )))
278 278  
279 -=== 3.3.1 Configure UART settings for RS485 or TTL communication ===
286 +==== 3.3.2.1 Configure UART settings for RS485 or TTL communication ====
280 280  
288 +RS485-LN can connect to either RS485 sensors or TTL sensor. User need to specify what type of sensor need to connect.
281 281  
282 282  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:
283 283  
... ... @@ -304,7 +304,6 @@
304 304  
305 305  (((
306 306  Options: (1200,2400,4800,
307 -
308 308  14400,19200,115200)
309 309  )))
310 310  )))
... ... @@ -319,9 +319,7 @@
319 319  
320 320  (((
321 321  Option: 0: no parity,
322 -
323 323  1: odd parity,
324 -
325 325  2: even parity
326 326  )))
327 327  )))
... ... @@ -331,10 +331,6 @@
331 331  (((
332 332  Set serial stopbit (for RS485 connection)
333 333  )))
334 -
335 -(((
336 -
337 -)))
338 338  )))|(% style="width:193px" %)(((
339 339  (((
340 340  AT+STOPBIT=0 for 1bit
... ... @@ -349,10 +349,9 @@
349 349  )))
350 350  )))
351 351  
353 +=== 3.3.3 Configure sensors ===
352 352  
353 -=== 3.3.2 Configure sensors ===
354 354  
355 -
356 356  (((
357 357  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.
358 358  )))
... ... @@ -373,7 +373,7 @@
373 373  )))
374 374  )))|(% style="width:190px" %)AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m
375 375  
376 -=== 3.3.3 Configure read commands for each sampling ===
376 +=== 3.3.4 Configure read commands for each sampling ===
377 377  
378 378  
379 379  (((
... ... @@ -417,6 +417,20 @@
417 417  In the RS485-LN, we should use this command AT+COMMAND1=01 03 0B B8 00 02,1 for the same.
418 418  
419 419  
420 +If a single command exceeds 14 bytes, you can use the command splicing function.
421 +
422 +When AT+CMDDLx=1, the commands of AT+COMMANDx and AT+COMMAND(x+1) will be merged.
423 +
424 +
425 +**Examples:** To send 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F data it should be configured:
426 +
427 + AT+COMMAND1=00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D,0
428 +
429 + AT+COMMAND1=1
430 +
431 + AT+COMMAND2=0E 0F,0
432 +
433 +
420 420  (% style="color:#037691" %)**AT+DATACUTx **(%%)**: **This command defines how to handle the return from AT+COMMANDx, max return length is 100 bytes.
421 421  
422 422  (% border="1" style="background-color:#f2f2f2; width:510px" %)
... ... @@ -450,7 +450,7 @@
450 450  
451 451  )))
452 452  
453 -=== 3.3.4 Compose the uplink payload ===
467 +=== 3.3.5 Compose the uplink payload ===
454 454  
455 455  
456 456  (((
... ... @@ -535,7 +535,7 @@
535 535  (% 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" %)​
536 536  
537 537  
538 -=== 3.3.5 Uplink on demand ===
552 +=== 3.3.6 Uplink on demand ===
539 539  
540 540  
541 541  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.
... ... @@ -547,7 +547,7 @@
547 547  (% style="color:#4472c4" %)** 0xA8 command**(%%): Send a command to RS485-LN and uplink the output from sensors.
548 548  
549 549  
550 -=== 3.3.6 Uplink on Interrupt ===
564 +=== 3.3.7 Uplink on Interrupt ===
551 551  
552 552  
553 553  RS485-LN support external Interrupt uplink since hardware v1.2 release.
... ... @@ -562,7 +562,7 @@
562 562  
563 563  
564 564  (% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %)
565 -|=(% scope="row" style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)(((
579 +|=(% scope="row" style="width: 70px;background-color:#D9E2F3;color:#0070C0" %)(((
566 566  Size(bytes)
567 567  )))|(% style="background-color:#d9e2f3; color:#0070c0; width:80px" %)**1**|(% style="background-color:#d9e2f3; color:#0070c0; width:360px" %)(((
568 568  **Length depends on the return from the commands**
... ... @@ -1012,6 +1012,8 @@
1012 1012  (% 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.
1013 1013  
1014 1014  
1029 +(Since firmware v1.4.0)
1030 +
1015 1015  * (((
1016 1016  (% style="color:#037691" %)** AT Command:**
1017 1017  )))
... ... @@ -1028,7 +1028,44 @@
1028 1028  Each uplink is sent to the server at 20-second intervals when segmented.
1029 1029  
1030 1030  
1047 +==== (% style="color:blue" %)**Cut data separation processing(Since Version 1.4.2)**(%%) ====
1031 1031  
1049 +
1050 +AT+NEWLINE command, which only takes effect when AT+DATAUP=1 or AT+DATAUP=1, timeout.
1051 +
1052 +When not set, each part of AT+DATAUP is sent according to the maximum number of bytes of DR.
1053 +
1054 +When setting, each part of AT+DATAUP is sent according to the value set by AT+NEWLINE.
1055 +
1056 +
1057 +* (((
1058 +(% style="color:#037691" %)** AT Command:**
1059 +)))
1060 +
1061 +(% style="color:#4472c4" %)//**AT+NEWLINE=ALL**//(%%)//   //The data cut out by each AT+COMMANDx command is sent separately as an uplink.
1062 +
1063 +(% style="color:#4472c4" %)//**AT+NEWLINE=ALL**//(%%)//   equal:  (% style="color:#4472c4" %)**AT+NEWLINE=1+2+3+4+5+6+7+8+9+10+11+12+13+14+15**//
1064 +
1065 +
1066 +(% style="color:#4472c4" %)//**AT+NEWLINE=a+b+c**//(%%)//  //The data returned by all commands is divided into three parts, COMMAND(1~~a) is the first part, COMMAND(a+1~~b) is the second part,COMMAND(b+1~~c) is the third part.
1067 +
1068 +
1069 +(% style="color:#4472c4" %)//**AT+NEWLINE=NULL**//(%%)//  //Turn off the functionality of this AT command.
1070 +
1071 +
1072 +* (((
1073 +(% style="color:#037691" %)** Downlink Payload:**
1074 +)))
1075 +
1076 +//AT+NEWLINE=ALL  ~-~-->  (% style="color:#4472c4" %)**0xAC 01**//
1077 +
1078 +// AT+NEWLINE= NULL  ~-~-->  (% style="color:#4472c4" %)**0xAC 00**//
1079 +
1080 +//AT+NEWLINE= a+b+c   ~-~-->  (% style="color:#4472c4" %)**0xAC number of bytes a b c**//
1081 +
1082 +//AT+NEWLINE= 1+5+15 ~-~-->  (% style="color:#4472c4" %)**0xAC 03 01 05 0F**//
1083 +
1084 +
1032 1032  ==== (% style="color:blue" %)**Manually trigger an Uplink**(%%) ====
1033 1033  
1034 1034  
... ... @@ -1591,6 +1591,13 @@
1591 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" %)​
1592 1592  
1593 1593  
1647 +
1648 +(% style="color:red" %)**Users can select the new burning software STM32Cubeprogramer for firmware upgrade and follow the same connection steps to enter burning mode (until SYS LED is RED ON):**
1649 +
1650 +[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20Upgrade%20Instruction%20for%20STM32%20base%20products/#H4.2.FirmwareupgradeusingSTM32Cubeprogramer>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20Upgrade%20Instruction%20for%20STM32%20base%20products/#H4.2.FirmwareupgradeusingSTM32Cubeprogramer]]
1651 +
1652 +
1653 +
1594 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:**
1595 1595  
1596 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" %)​
... ... @@ -1743,6 +1743,18 @@
1743 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 1744  
1745 1745  
1806 +== 6.9 How to configure RS485 commands more conveniently? ==
1807 +
1808 +
1809 +Dragino has developed an application for the RS485 series of products.
1810 +
1811 +It can help you configure RS485 sensors more conveniently
1812 +Please refer to the link below for specific usage:
1813 +
1814 +[[RS485 Configure Tool - DRAGINO>>url:http://wiki.dragino.com/xwiki/bin/view/Main/RS485_Configure_Tool/#HTableofContentsFF1A]]
1815 +
1816 +
1817 +
1746 1746  = 7. Trouble Shooting =
1747 1747  
1748 1748  == 7.1 Downlink doesn't work, how to solve it? ==
image-20230425175403-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +150.1 KB
Content
image-20230425175410-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +150.1 KB
Content
Copyright ©2010-2024 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0