Changes for page RS485-LN – RS485 to LoRaWAN Converter User Manual
Last modified by Bei Jinggeng on 2025/01/16 11:36
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -422,7 +422,6 @@ 422 422 423 423 (% style="color:#037691" %)**Each RS485 commands include two parts:** 424 424 425 - 426 426 ~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. 427 427 428 428 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. ... ... @@ -462,10 +462,8 @@ 462 462 * **c: define the position for valid value. ** 463 463 ))) 464 464 465 - 466 466 **Examples:** 467 467 468 - 469 469 * (% style="color:#037691" %)**Grab bytes** 470 470 471 471 (% 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" %) ... ... @@ -506,13 +506,15 @@ 506 506 ))) 507 507 508 508 ((( 509 -Final Payload is (% style="color:#4f81bd" %)**Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx**506 +Final Payload is 510 510 ))) 511 511 512 512 ((( 513 -Where PAYVER is defined by AT+PAYVER, below is an example screen shot. 510 +(% style="color:#4f81bd" %)**Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx** 511 +))) 514 514 515 - 513 +((( 514 +Where PAYVER is defined by AT+PAYVER, below is an example screen shot. 516 516 ))) 517 517 518 518 (% aria-label="1653269759169-150.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1653269759169-150.png||data-widget="image" height="513" width="716"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) ... ... @@ -523,16 +523,16 @@ 523 523 524 524 Compose the uplink payload with value returns in sequence and send with (% style="color:red" %)**Multiply UPLINKs**. 525 525 526 -Final Payload is (% style="color:#4f81bd" %)**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA**525 +Final Payload is 527 527 527 +(% style="color:#4f81bd" %)**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA** 528 528 529 + 529 529 1. PAYVER: Defined by AT+PAYVER 530 530 1. PAYLOAD COUNT: Total how many uplinks of this sampling. 531 531 1. PAYLOAD#: Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT) 532 532 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 533 533 534 - 535 - 536 536 (% 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" %) 537 537 538 538 ... ... @@ -547,7 +547,6 @@ 547 547 548 548 (% 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:** 549 549 550 - 551 551 ~* For AU915/AS923 bands, if UplinkDwell time=0, max 51 bytes for each uplink. 552 552 553 553 * For AU915/AS923 bands, if UplinkDwell time=0, max 11 bytes for each uplink. ... ... @@ -563,23 +563,17 @@ 563 563 564 564 (% style="color:#4f81bd" %)**If the data is empty, return to the display(Since v1.4.0)** 565 565 566 -1 **(% style="color:blue" %)AT+MOD=1**(%%), 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**.564 +1)When AT+MOD=1, 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. 567 567 568 - 569 569 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/test/WebHome/image-20220824114359-3.png?width=1106&height=297&rev=1.1||alt="image-20220824114359-3.png" height="297" width="1106"]] 570 570 568 +2)When AT+MOD=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 00s. 571 571 572 - 573 -2 ) When **(% style="color:blue" %)AT+MOD=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 00s**. 574 - 575 - 576 576 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/test/WebHome/image-20220824114330-2.png?rev=1.1||alt="image-20220824114330-2.png"]] 577 577 578 578 579 - 580 580 Below are the uplink payloads: 581 581 582 - 583 583 (% 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" %) 584 584 585 585 ... ... @@ -589,11 +589,11 @@ 589 589 590 590 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. 591 591 592 - **(% style="color:blue" %)Downlink control command:**584 +Downlink control command: 593 593 594 -** (% style="color:#4472C4" %)0x08 command**(%%): Poll an uplink with current command set in RS485-LN.586 +**0x08 command**: Poll an uplink with current command set in RS485-LN. 595 595 596 -** (% style="color:#4472C4" %)0xA8 command**(%%): Send a command to RS485-LN and uplink the output from sensors.588 +**0xA8 command**: Send a command to RS485-LN and uplink the output from sensors. 597 597 598 598 599 599 ... ... @@ -602,7 +602,6 @@ 602 602 603 603 RS485-LN support external Interrupt uplink since hardware v1.2 release. 604 604 605 - 606 606 (% 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" %) 607 607 608 608 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. ... ... @@ -612,10 +612,8 @@ 612 612 == 3.4 Uplink Payload == 613 613 614 614 615 -(% aria-label="image-20220606110929-1.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220606110929-1.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]] 606 +(% aria-label="image-20220606110929-1.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220606110929-1.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 616 616 617 -(% title="Click and drag to resize" %) 618 - 619 619 Below is the decoder for the first 3 bytes. The rest bytes are dynamic depends on different RS485 sensors. 620 620 621 621 ... ... @@ -679,7 +679,7 @@ 679 679 (% style="color:#037691" %)**AT Command** 680 680 681 681 ((( 682 -** (% 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 command671 +**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 683 683 ))) 684 684 ))) 685 685 ... ... @@ -692,7 +692,7 @@ 692 692 ))) 693 693 694 694 ((( 695 -Format: (%%)**(% style="color:#4472C4" %)A8 MM NN XX XX XX XX YY**684 +Format: A8 MM NN XX XX XX XX YY 696 696 ))) 697 697 698 698 ((( ... ... @@ -801,7 +801,7 @@ 801 801 * ((( 802 802 (% style="color:#037691" %)**AT Command:** 803 803 804 -** (% style="color:#4472C4" %)AT+PAYVER: **(%%)Set PAYVER field = 1793 +**AT+PAYVER: **Set PAYVER field = 1 805 805 806 806 807 807 ))) ... ... @@ -810,18 +810,18 @@ 810 810 ))) 811 811 812 812 ((( 813 -** (% style="color:#4472C4" %)0xAE 01**(%%)~-~-> Set PAYVER field = 0x01802 +**0xAE 01** ~-~-> Set PAYVER field = 0x01 814 814 ))) 815 815 816 816 ((( 817 -** (% style="color:#4472C4" %)0xAE 0F**(%%)~-~-> Set PAYVER field = 0x0F806 +**0xAE 0F** ~-~-> Set PAYVER field = 0x0F 818 818 ))) 819 819 820 820 821 -1) 810 +1)Add the interrupt flag at the highest bit of the Payver byte, that is, Byte7 of the first byte. (Since v1.4.0)[[image:image-20220824145428-2.png||height="168" width="1300"]] 822 822 823 823 824 -2) 813 +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. 825 825 826 826 [[image:image-20220824145428-3.png||height="308" width="1200"]] 827 827 ... ... @@ -845,9 +845,9 @@ 845 845 (% style="color:#037691" %)**AT Command:** 846 846 ))) 847 847 848 -** (% style="color:#4472C4" %)AT+COMMANDx: **(%%)Configure RS485 read command to sensor.837 +**AT+COMMANDx: **Configure RS485 read command to sensor. 849 849 850 -** (% style="color:#4472C4" %)AT+DATACUTx: **(%%)Configure how to handle return from RS485 devices.839 +**AT+DATACUTx: **Configure how to handle return from RS485 devices. 851 851 852 852 853 853 * ((( ... ... @@ -855,19 +855,19 @@ 855 855 ))) 856 856 857 857 ((( 858 -** (% style="color:#4472C4" %)0xAF**(%%)847 +**0xAF** downlink command can be used to set AT+COMMANDx or AT+DATACUTx. 859 859 860 860 861 861 ))) 862 862 863 863 ((( 864 -(% style="color:red" %)**Note **853 +(% style="color:red" %)**Note**(%%): if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink. 865 865 866 866 867 867 ))) 868 868 869 869 ((( 870 -Format: (%%)**(% style="color:#4472C4" %)AF MM NN LL XX XX XX XX YY**859 +Format: AF MM NN LL XX XX XX XX YY 871 871 ))) 872 872 873 873 ((( ... ... @@ -915,7 +915,7 @@ 915 915 916 916 917 917 ((( 918 -** (% 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]].907 +**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]]. 919 919 ))) 920 920 921 921 ((( ... ... @@ -967,7 +967,7 @@ 967 967 * ((( 968 968 (% style="color:#037691" %)** AT Command:** 969 969 970 -** (% style="color:#4472C4" %)AT+CMDDLaa=hex(bb cc)*1000**959 +**AT+CMDDLaa=hex(bb cc)*1000** 971 971 ))) 972 972 973 973 ((( ... ... @@ -977,7 +977,7 @@ 977 977 ))) 978 978 979 979 ((( 980 -** (% style="color:#4472C4" %)AT+CMDDL1=1000**(%%)to send the open time to 1000ms969 +**AT+CMDDL1=1000** to send the open time to 1000ms 981 981 ))) 982 982 983 983 ((( ... ... @@ -989,7 +989,7 @@ 989 989 ))) 990 990 991 991 ((( 992 -** (% style="color:#4472C4" %)0x AA aa bb cc**981 +**0x AA aa bb cc** 993 993 ))) 994 994 995 995 ((( ... ... @@ -1021,14 +1021,14 @@ 1021 1021 * ((( 1022 1022 (% style="color:#037691" %)** AT Command:** 1023 1023 1024 -** (% style="color:#4472C4" %)AT+DATAUP=0**1013 +**AT+DATAUP=0** 1025 1025 1026 -** (% style="color:#4472C4" %)AT+DATAUP=1**1015 +**AT+DATAUP=1** 1027 1027 1028 1028 1029 1029 ))) 1030 1030 1031 -** (% style="color:#4472C4" %)0xAD 01 00 00 14**(%%)**~-~->** Same as AT+DATAUP=1,20000 ~/~/(00 00 14 is 20 seconds)1020 +**0xAD 01 00 00 14** **~-~->** Same as AT+DATAUP=1,20000 ~/~/(00 00 14 is 20 seconds) 1032 1032 1033 1033 Each uplink is sent to the server at 20-second intervals when segmented. 1034 1034 ... ... @@ -1037,9 +1037,9 @@ 1037 1037 (% style="color:#037691" %)** Downlink Payload:** 1038 1038 ))) 1039 1039 1040 -** (% style="color:#4472C4" %)0xAD 00**(%%)**~-~->** Same as AT+DATAUP=01029 +**0xAD 00** **~-~->** Same as AT+DATAUP=0 1041 1041 1042 -** (% 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.1031 +**0xAD 01** **~-~->** Same as AT+DATAUP=1 ~/~/Each uplink is sent to the server one after the other as it is segmented. 1043 1043 1044 1044 1045 1045 * ((( ... ... @@ -1046,7 +1046,7 @@ 1046 1046 (% style="color:#037691" %)** AT Command:** 1047 1047 ))) 1048 1048 1049 -** (% style="color:#4472C4" %)AT+DATAUP=1,Timeout**1038 +**AT+DATAUP=1,Timeout** 1050 1050 1051 1051 1052 1052 * ((( ... ... @@ -1053,12 +1053,10 @@ 1053 1053 (% style="color:#037691" %)** Downlink Payload:** 1054 1054 ))) 1055 1055 1056 -** (% style="color:#4472C4" %)0xAD 01 00 00 14**(%%)**~-~->** Same as AT+DATAUP=1,20000 ~/~/(00 00 14 is 20 seconds)1045 +**0xAD 01 00 00 14** **~-~->** Same as AT+DATAUP=1,20000 ~/~/(00 00 14 is 20 seconds) 1057 1057 1058 1058 Each uplink is sent to the server at 20-second intervals when segmented. 1059 1059 1060 - 1061 - 1062 1062 ==== (% style="color:blue" %)**Manually trigger an Uplink**(%%) ==== 1063 1063 1064 1064 ... ... @@ -1083,7 +1083,7 @@ 1083 1083 ))) 1084 1084 1085 1085 ((( 1086 -** (% style="color:#4472C4" %)0x08 FF**(%%), RS485-LN will immediately send an uplink.1073 +**0x08 FF**, RS485-LN will immediately send an uplink. 1087 1087 ))) 1088 1088 1089 1089 ... ... @@ -1103,7 +1103,7 @@ 1103 1103 ))) 1104 1104 1105 1105 ((( 1106 -** (% style="color:#4472C4" %)AT+CMDEAR=mm,nn**(%%)mm: start position of erase ,nn: stop position of erase1093 +**AT+CMDEAR=mm,nn** mm: start position of erase ,nn: stop position of erase 1107 1107 ))) 1108 1108 1109 1109 ((( ... ... @@ -1130,7 +1130,7 @@ 1130 1130 ))) 1131 1131 1132 1132 ((( 1133 -** (% style="color:#4472C4" %)0x09 aa bb**(%%)same as AT+CMDEAR=aa,bb1120 +**0x09 aa bb** same as AT+CMDEAR=aa,bb 1134 1134 ))) 1135 1135 1136 1136 ... ... @@ -1153,7 +1153,7 @@ 1153 1153 * Set Baud Rate 1154 1154 ))) 1155 1155 1156 -** (% 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 lost1143 +**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 1157 1157 1158 1158 1159 1159 ((( ... ... @@ -1160,7 +1160,7 @@ 1160 1160 * Set UART Parity 1161 1161 ))) 1162 1162 1163 -** (% style="color:#4472C4" %)AT+PARITY=0**(%%)~/~/ Option: 0: no parity, 1: odd parity, 2: even parity1150 +**AT+PARITY=0** ~/~/ Option: 0: no parity, 1: odd parity, 2: even parity 1164 1164 1165 1165 1166 1166 (((