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
-
... ... @@ -103,7 +103,6 @@ 103 103 * Support Modbus protocol 104 104 * Support Interrupt uplink (Since hardware version v1.2) 105 105 106 - 107 107 == 1.4 Applications == 108 108 109 109 * Smart Buildings & Home Automation ... ... @@ -113,7 +113,6 @@ 113 113 * Smart Cities 114 114 * Smart Factory 115 115 116 - 117 117 == 1.5 Firmware Change log == 118 118 119 119 [[RS485-LN Image files – Download link and Change log>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/]] ... ... @@ -307,8 +307,6 @@ 307 307 ))) 308 308 ))) 309 309 310 - 311 - 312 312 === 3.3.2 Configure sensors === 313 313 314 314 ((( ... ... @@ -327,8 +327,6 @@ 327 327 mm: 0: no CRC, 1: add CRC-16/MODBUS in the end of this command 328 328 )))|(% style="width:190px" %)AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m 329 329 330 - 331 - 332 332 === 3.3.3 Configure read commands for each sampling === 333 333 334 334 ((( ... ... @@ -548,6 +548,7 @@ 548 548 549 549 550 550 545 + 551 551 ==== **RS485 Debug Command** ==== 552 552 553 553 ((( ... ... @@ -668,85 +668,161 @@ 668 668 669 669 670 670 666 + 671 671 ==== **Set Payload version** ==== 672 672 669 +((( 673 673 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. 671 +))) 674 674 675 -* **AT Command:** 673 +* ((( 674 +**AT Command:** 675 +))) 676 676 677 677 (% class="box infomessage" %) 678 678 ((( 679 +((( 679 679 **AT+PAYVER: Set PAYVER field = 1** 680 680 ))) 682 +))) 681 681 682 -* **Downlink Payload:** 684 +* ((( 685 +**Downlink Payload:** 686 +))) 683 683 688 +((( 684 684 **0xAE 01** ~-~-> Set PAYVER field = 0x01 690 +))) 685 685 692 +((( 686 686 **0xAE 0F** ~-~-> Set PAYVER field = 0x0F 694 +))) 687 687 688 688 689 689 698 + 690 690 ==== **Set RS485 Sampling Commands** ==== 691 691 701 +((( 692 692 AT+COMMANDx or AT+DATACUTx 703 +))) 693 693 705 +((( 694 694 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"]]. 707 +))) 695 695 709 +((( 710 + 711 +))) 696 696 697 -* **AT Command:** 713 +* ((( 714 +**AT Command:** 715 +))) 698 698 699 699 (% class="box infomessage" %) 700 700 ((( 719 +((( 701 701 **AT+COMMANDx: Configure RS485 read command to sensor.** 702 702 ))) 722 +))) 703 703 704 704 (% class="box infomessage" %) 705 705 ((( 726 +((( 706 706 **AT+DATACUTx: Configure how to handle return from RS485 devices.** 707 707 ))) 729 +))) 708 708 731 +((( 732 + 733 +))) 709 709 710 -* **Downlink Payload:** 735 +* ((( 736 +**Downlink Payload:** 737 +))) 711 711 739 +((( 712 712 **0xAF** downlink command can be used to set AT+COMMANDx or AT+DATACUTx. 741 +))) 713 713 743 +((( 714 714 (% style="color:red" %)**Note**(%%): if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink. 745 +))) 715 715 747 +((( 716 716 Format: AF MM NN LL XX XX XX XX YY 749 +))) 717 717 751 +((( 718 718 Where: 753 +))) 719 719 720 -* MM: the ATCOMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F, 721 -* NN: 0: no CRC; 1: add CRC-16/MODBUS ; 2: set the AT+DATACUT value. 722 -* LL: The length of AT+COMMAND or AT+DATACUT command 723 -* XX XX XX XX: AT+COMMAND or AT+DATACUT command 724 -* 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. 755 +* ((( 756 +MM: the ATCOMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F, 757 +))) 758 +* ((( 759 +NN: 0: no CRC; 1: add CRC-16/MODBUS ; 2: set the AT+DATACUT value. 760 +))) 761 +* ((( 762 +LL: The length of AT+COMMAND or AT+DATACUT command 763 +))) 764 +* ((( 765 +XX XX XX XX: AT+COMMAND or AT+DATACUT command 766 +))) 767 +* ((( 768 +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. 769 +))) 725 725 771 +((( 726 726 **Example:** 773 +))) 727 727 775 +((( 728 728 (% 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 777 +))) 729 729 779 +((( 730 730 (% 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** 781 +))) 731 731 783 +((( 732 732 (% 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** 785 +))) 733 733 734 734 735 735 789 + 736 736 ==== **Fast command to handle MODBUS device** ==== 737 737 792 +((( 738 738 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]]. 794 +))) 739 739 796 +((( 740 740 This command is valid since v1.3 firmware version 798 +))) 741 741 800 +((( 742 742 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. 802 +))) 743 743 804 +((( 805 + 806 +))) 744 744 808 +((( 745 745 **Example:** 810 +))) 746 746 747 -* AT+MBFUN=1 and AT+DATACUT1/AT+DATACUT2 are not configure (0,0,0). So RS485-LN. 748 -* 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. 749 -* 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. 812 +* ((( 813 +AT+MBFUN=1 and AT+DATACUT1/AT+DATACUT2 are not configure (0,0,0). So RS485-LN. 814 +))) 815 +* ((( 816 +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. 817 +))) 818 +* ((( 819 +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. 820 +))) 750 750 751 751 [[image:image-20220602165351-6.png]] 752 752 ... ... @@ -754,200 +754,373 @@ 754 754 755 755 756 756 828 + 757 757 ==== **RS485 command timeout** ==== 758 758 831 +((( 759 759 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. 833 +))) 760 760 835 +((( 761 761 Default value: 0, range: 0 ~~ 65 seconds 837 +))) 762 762 763 -* **AT Command:** 839 +* ((( 840 +**AT Command:** 841 +))) 764 764 765 765 (% class="box infomessage" %) 766 766 ((( 845 +((( 767 767 **AT+CMDDLaa=hex(bb cc)*1000** 768 768 ))) 848 +))) 769 769 850 +((( 770 770 **Example:** 852 +))) 771 771 854 +((( 772 772 **AT+CMDDL1=1000** to send the open time to 1000ms 856 +))) 773 773 858 +((( 859 + 860 +))) 774 774 775 -* **Downlink Payload:** 862 +* ((( 863 +**Downlink Payload:** 864 +))) 776 776 866 +((( 777 777 **0x AA aa bb cc** 868 +))) 778 778 870 +((( 779 779 Same as: AT+CMDDLaa=hex(bb cc)*1000 872 +))) 780 780 874 +((( 781 781 **Example:** 876 +))) 782 782 878 +((( 783 783 0xAA 01 00 01 ~-~-> Same as **AT+CMDDL1=1000 ms** 880 +))) 784 784 785 785 786 786 884 + 787 787 ==== **Uplink payload mode** ==== 788 788 887 +((( 789 789 Define to use one uplink or multiple uplinks for the sampling. 889 +))) 790 790 891 +((( 791 791 The use of this command please see: [[Compose Uplink payload>>||anchor="H3.3.4Composetheuplinkpayload"]] 893 +))) 792 792 793 -* **AT Command:** 895 +* ((( 896 +**AT Command:** 897 +))) 794 794 795 795 (% class="box infomessage" %) 796 796 ((( 901 +((( 797 797 **AT+DATAUP=0** 798 798 ))) 904 +))) 799 799 800 800 (% class="box infomessage" %) 801 801 ((( 908 +((( 802 802 **AT+DATAUP=1** 803 803 ))) 911 +))) 804 804 913 +((( 914 + 915 +))) 805 805 806 -* **Downlink Payload:** 917 +* ((( 918 +**Downlink Payload:** 919 +))) 807 807 921 +((( 808 808 **0xAD 00** **~-~->** Same as AT+DATAUP=0 923 +))) 809 809 925 +((( 810 810 **0xAD 01** **~-~->** Same as AT+DATAUP=1 927 +))) 811 811 812 812 813 813 931 + 814 814 ==== **Manually trigger an Uplink** ==== 815 815 934 +((( 816 816 Ask device to send an uplink immediately. 936 +))) 817 817 818 -* **AT Command:** 938 +* ((( 939 +**AT Command:** 940 +))) 819 819 942 +((( 820 820 No AT Command for this, user can press the [[ACT button>>||anchor="H3.7Buttons"]] for 1 second for the same. 944 +))) 821 821 946 +((( 947 + 948 +))) 822 822 823 -* **Downlink Payload:** 950 +* ((( 951 +**Downlink Payload:** 952 +))) 824 824 954 +((( 825 825 **0x08 FF**, RS485-LN will immediately send an uplink. 956 +))) 826 826 827 827 828 828 960 + 829 829 ==== **Clear RS485 Command** ==== 830 830 963 +((( 831 831 The AT+COMMANDx and AT+DATACUTx settings are stored in special location, user can use below command to clear them. 965 +))) 832 832 833 -* **AT Command:** 967 +* ((( 968 +**AT Command:** 969 +))) 834 834 971 +((( 835 835 **AT+CMDEAR=mm,nn** mm: start position of erase ,nn: stop position of erase 973 +))) 836 836 975 +((( 837 837 Etc. AT+CMDEAR=1,10 means erase AT+COMMAND1/AT+DATACUT1 to AT+COMMAND10/AT+DATACUT10 977 +))) 838 838 979 +((( 839 839 Example screen shot after clear all RS485 commands. 981 +))) 840 840 983 +((( 984 + 985 +))) 841 841 987 +((( 842 842 The uplink screen shot is: 989 +))) 843 843 844 844 [[image:1654160691922-496.png]] 845 845 846 846 847 -* **Downlink Payload:** 994 +* ((( 995 +**Downlink Payload:** 996 +))) 848 848 998 +((( 849 849 **0x09 aa bb** same as AT+CMDEAR=aa,bb 1000 +))) 850 850 851 851 852 852 1004 + 853 853 ==== **Set Serial Communication Parameters** ==== 854 854 1007 +((( 855 855 Set the Rs485 serial communication parameters: 1009 +))) 856 856 857 -* **AT Command:** 1011 +* ((( 1012 +**AT Command:** 1013 +))) 858 858 1015 +((( 859 859 Set Baud Rate: 1017 +))) 860 860 861 861 (% class="box infomessage" %) 862 862 ((( 1021 +((( 863 863 **AT+BAUDR=9600** ~/~/ Options: (1200,2400,4800,14400,19200,115200) 864 864 ))) 1024 +))) 865 865 1026 +((( 866 866 Set UART Parity 1028 +))) 867 867 868 868 (% class="box infomessage" %) 869 869 ((( 1032 +((( 870 870 **AT+PARITY=0** ~/~/ Option: 0: no parity, 1: odd parity, 2: even parity 871 871 ))) 1035 +))) 872 872 1037 +((( 873 873 Set STOPBIT 1039 +))) 874 874 875 875 (% class="box infomessage" %) 876 876 ((( 1043 +((( 877 877 **AT+STOPBIT=0** ~/~/ Option: 0 for 1bit; 1 for 1.5 bit ; 2 for 2 bits 878 878 ))) 1046 +))) 879 879 1048 +((( 1049 + 1050 +))) 880 880 881 -* **Downlink Payload:** 1052 +* ((( 1053 +**Downlink Payload:** 1054 +))) 882 882 1056 +((( 883 883 **A7 01 aa bb**: Same AT+BAUDR=hex(aa bb)*100 1058 +))) 884 884 1060 +((( 885 885 **Example:** 1062 +))) 886 886 887 -* A7 01 00 60 same as AT+BAUDR=9600 888 -* A7 01 04 80 same as AT+BAUDR=115200 1064 +* ((( 1065 +A7 01 00 60 same as AT+BAUDR=9600 1066 +))) 1067 +* ((( 1068 +A7 01 04 80 same as AT+BAUDR=115200 1069 +))) 889 889 1071 +((( 890 890 A7 02 aa: Same as AT+PARITY=aa (aa value: 00 , 01 or 02) 1073 +))) 891 891 1075 +((( 892 892 A7 03 aa: Same as AT+STOPBIT=aa (aa value: 00 , 01 or 02) 1077 +))) 893 893 894 894 1080 + 1081 + 895 895 == 3.6 Listening mode for RS485 network == 896 896 1084 +((( 897 897 This feature support since firmware v1.4 1086 +))) 898 898 1088 +((( 899 899 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. 1090 +))) 900 900 901 901 [[image:image-20220602171200-8.png||height="567" width="1007"]] 902 902 1094 +((( 903 903 To enable the listening mode, use can run the command AT+RXMODE. 1096 +))) 904 904 1098 +((( 1099 + 1100 +))) 905 905 906 -(% border="1" style="background-color:#ffffcc; width:500px" %) 907 -|=(% style="width: 161px;" %)**Command example:**|=(% style="width: 337px;" %)**Function** 908 -|(% 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. 909 -|(% 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 910 -|(% style="width:161px" %)AT+RXMODE=0,0|(% style="width:337px" %)Disable listening mode. This is the default settings. 911 -|(% style="width:161px" %) |(% style="width:337px" %)A6 aa bb cc same as AT+RXMODE=aa,(bb<<8 ~| cc) 1102 +(% border="1" cellspacing="10" style="background-color:#ffffcc; width:500px" %) 1103 +|=(% style="width: 161px;" %)((( 1104 +**Command example:** 1105 +)))|=(% style="width: 337px;" %)((( 1106 +**Function** 1107 +))) 1108 +|(% style="width:161px" %)((( 1109 +AT+RXMODE=1,10 1110 +)))|(% style="width:337px" %)((( 1111 +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. 1112 +))) 1113 +|(% style="width:161px" %)((( 1114 +AT+RXMODE=2,500 1115 +)))|(% style="width:337px" %)((( 1116 +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 1117 +))) 1118 +|(% style="width:161px" %)((( 1119 +AT+RXMODE=0,0 1120 +)))|(% style="width:337px" %)((( 1121 +Disable listening mode. This is the default settings. 1122 +))) 1123 +|(% style="width:161px" %)((( 1124 + 1125 +)))|(% style="width:337px" %)((( 1126 +A6 aa bb cc same as AT+RXMODE=aa,(bb<<8 | cc) 1127 +))) 912 912 1129 +((( 913 913 **Downlink Command:** 1131 +))) 914 914 1133 +((( 915 915 **0xA6 aa bb cc ** same as AT+RXMODE=aa,(bb<<8 | cc) 1135 +))) 916 916 1137 +((( 1138 + 1139 +))) 917 917 1141 +((( 918 918 **Example**: 1143 +))) 919 919 1145 +((( 920 920 The RS485-LN is set to AT+RXMODE=2,1000 1147 +))) 921 921 1149 +((( 922 922 There is a two Modbus commands in the RS485 network as below: 1151 +))) 923 923 1153 +((( 924 924 The Modbus master send a command: (% style="background-color:#ffc000" %)01 03 00 00 00 02 c4 0b 1155 +))) 925 925 1157 +((( 926 926 And Modbus slave reply with: (% style="background-color:green" %)01 03 04 00 00 00 00 fa 33 1159 +))) 927 927 1161 +((( 928 928 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 1163 +))) 929 929 1165 +((( 930 930 [[image:image-20220602171200-9.png]] 1167 +))) 931 931 1169 +((( 1170 + 1171 +))) 932 932 1173 +((( 933 933 (% 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. 1175 +))) 934 934 935 935 936 936 == 3.7 Buttons == 937 937 938 938 939 -(% border="1" style="background-color:#f7faff; width: 500px" %)940 -|=**Button**|=(% style="width: 1420px;" %)**Feature**941 -|**ACT**|(% style="width: 1420px" %)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**942 -|**RST**|(% style="width: 1420px" %)Reboot RS485943 -|**PRO**|(% style="width: 1420px" %)Use for upload image, see [[How to Update Image>>||anchor="H6.1Howtoupgradetheimage3F"]]1181 +(% border="1" cellspacing="10" style="background-color:#f7faff; width:430px" %) 1182 +|=(% style="width: 30px;" %)**Button**|=(% style="width: 355px;" %)**Feature** 1183 +|=(% style="width: 30px;" %)**ACT**|(% style="width:355px" %)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** 1184 +|=(% style="width: 30px;" %)**RST**|(% style="width:355px" %)Reboot RS485 1185 +|=(% style="width: 30px;" %)**PRO**|(% style="width:355px" %)Use for upload image, see [[How to Update Image>>||anchor="H6.1Howtoupgradetheimage3F"]] 944 944 1187 + 1188 + 945 945 == 3.8 LEDs == 946 946 947 -(% border="1" style="background-color:#f7faff; width:500px" %) 948 -|=**LEDs**|=**Feature** 949 -|**PWR**|Always on if there is power 950 -|**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.1191 +(% border="1" cellspacing="10" style="background-color:#f7faff; width:500px" %) 1192 +|=(% style="width: 30px;" %)**LEDs**|=(% style="width: 400px;" %)**Feature** 1193 +|(% style="width:30px" %)**PWR**|=(% style="width: 400px;" %)Always on if there is power 1194 +|(% style="width:30px" %)**SYS**|=(% style="width: 400px;" %)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. 951 951 952 952 = 4. Case Study = 953 953 ... ... @@ -958,19 +958,26 @@ 958 958 959 959 == 5.1 Access AT Command == 960 960 1205 +((( 961 961 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. 1207 +))) 962 962 963 963 [[image:1654162355560-817.png]] 964 964 965 965 1212 +((( 966 966 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-BL. The default password is 123456. Below is the output for reference: 1214 +))) 967 967 968 968 [[image:1654162368066-342.png]] 969 969 970 970 1219 +((( 971 971 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/]] 1221 +))) 972 972 973 973 1224 + 974 974 == 5.2 Common AT Command Sequence == 975 975 976 976 === 5.2.1 Multi-channel ABP mode (Use with SX1301/LG308) === ... ... @@ -1125,7 +1125,6 @@ 1125 1125 * (% style="color:blue" %)**RU864**(%%): frequency bands RU864 1126 1126 * (% style="color:blue" %)**KZ865**(%%): frequency bands KZ865 1127 1127 1128 - 1129 1129 = 9.Packing Info = 1130 1130 1131 1131 ... ... @@ -1142,7 +1142,6 @@ 1142 1142 * Package Size / pcs : 14.5 x 8 x 5 cm 1143 1143 * Weight / pcs : 170g 1144 1144 1145 - 1146 1146 = 10. FCC Caution for RS485LN-US915 = 1147 1147 1148 1148 (((