<
From version < 58.19 >
edited by Xiaoling
on 2022/06/06 11:24
To version < 58.2 >
edited by Xiaoling
on 2022/06/06 11:09
>
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -509,27 +509,14 @@
509 509  
510 510  == 3.5 Configure RS485-BL via AT or Downlink ==
511 511  
512 -(((
513 513  User can configure RS485-LN via AT Commands or LoRaWAN Downlink Commands
514 -)))
515 515  
516 -(((
517 517  There are two kinds of Commands:
518 -)))
519 519  
520 -* (((
521 -(% 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]]
522 -)))
516 +* (% 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]]
523 523  
524 -* (((
525 -(% style="color:#4f81bd" %)**Sensor Related Commands**(%%): These commands are special designed for RS485-LN.  User can see these commands below:
526 -)))
518 +* (% style="color:#4f81bd" %)**Sensor Related Commands**(%%): These commands are special designed for RS485-LN.  User can see these commands below:
527 527  
528 -(((
529 -
530 -)))
531 -
532 -
533 533  === 3.5.1 Common Commands ===
534 534  
535 535  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]]
... ... @@ -548,282 +548,142 @@
548 548  
549 549  
550 550  
551 -
552 552  ==== **RS485 Debug Command** ====
553 553  
554 -(((
555 555  This command is used to configure the RS485 devices; they won’t be used during sampling.
556 -)))
557 557  
558 -* (((
559 -**AT Command**
560 -)))
542 +* **AT Command**
561 561  
562 562  (% class="box infomessage" %)
563 563  (((
564 -(((
565 565  **AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m**
566 566  )))
567 -)))
568 568  
569 -(((
570 570  m: 0: no CRC, 1: add CRC-16/MODBUS in the end of this command
571 -)))
572 572  
573 -* (((
574 -**Downlink Payload**
575 -)))
551 +* **Downlink Payload**
576 576  
577 -(((
578 578  Format: A8 MM NN XX XX XX XX YY
579 -)))
580 580  
581 -(((
582 582  Where:
583 -)))
584 584  
585 -* (((
586 -MM: 1: add CRC-16/MODBUS ; 0: no CRC
587 -)))
588 -* (((
589 -NN: The length of RS485 command
590 -)))
591 -* (((
592 -XX XX XX XX: RS485 command total NN bytes
593 -)))
594 -* (((
595 -(((
596 -YY: How many bytes will be uplink from the return of this RS485 command,
597 -)))
557 +* MM: 1: add CRC-16/MODBUS ; 0: no CRC
558 +* NN: The length of RS485 command
559 +* XX XX XX XX: RS485 command total NN bytes
560 +* YY: How many bytes will be uplink from the return of this RS485 command,
561 +** if YY=0, RS485-LN will execute the downlink command without uplink;
562 +** if YY>0, RS485-LN will uplink total YY bytes from the output of this RS485 command; Fport=200
563 +** if YY=FF, RS485-LN will uplink RS485 output with the downlink command content; Fport=200.
598 598  
599 -* (((
600 -if YY=0, RS485-LN will execute the downlink command without uplink;
601 -)))
602 -* (((
603 -if YY>0, RS485-LN will uplink total YY bytes from the output of this RS485 command; Fport=200
604 -)))
605 -* (((
606 -if YY=FF, RS485-LN will uplink RS485 output with the downlink command content; Fport=200.
607 -)))
608 -)))
609 -
610 -(((
611 611  **Example 1** ~-~-> Configure without ask for uplink (YY=0)
612 -)))
613 613  
614 -(((
615 615  To connect a Modbus Alarm with below commands.
616 -)))
617 617  
618 -* (((
619 -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.
620 -)))
569 +* 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.
621 621  
622 -* (((
623 -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.
624 -)))
571 +* 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.
625 625  
626 -(((
627 627  So if user want to use downlink command to control to RS485 Alarm, he can use:
628 -)))
629 629  
630 -(((
631 631  (% style="color:#4f81bd" %)**A8 01 06 0A 05 00 04 00 01 00**(%%): to activate the RS485 Alarm
632 -)))
633 633  
634 -(((
635 635  (% style="color:#4f81bd" %)**A8 01 06 0A 05 00 04 00 00 00**(%%): to deactivate the RS485 Alarm
636 -)))
637 637  
638 -(((
639 639  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.
640 -)))
641 641  
642 -(((
643 -
644 -)))
645 645  
646 -(((
647 647  **Example 2** ~-~-> Configure with requesting uplink and original downlink command (**YY=FF**)
648 -)))
649 649  
650 -(((
651 651  User in IoT server send a downlink command: (% style="color:#4f81bd" %)**A8 01 06 0A 08 00 04 00 01 YY**
652 -)))
653 653  
654 -(((
655 -
656 -)))
657 657  
658 -(((
659 659  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:
660 -)))
661 661  
662 -(((
663 663   **A8** (% style="color:#4f81bd" %)**0A 08 00 04 00  **(% style="color:red" %)**01 06** ** **(% style="color:green" %)**0A 08 00 04 00 00**
664 -)))
665 665  
666 -(((
667 667   [[image:1654159460680-153.png]]
668 -)))
669 669  
670 670  
671 671  
672 -
673 673  ==== **Set Payload version** ====
674 674  
675 -(((
676 676  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.
677 -)))
678 678  
679 -* (((
680 -**AT Command:**
681 -)))
599 +* **AT Command:**
682 682  
683 683  (% class="box infomessage" %)
684 684  (((
685 -(((
686 686  **AT+PAYVER: Set PAYVER field = 1**
687 687  )))
688 -)))
689 689  
690 -* (((
691 -**Downlink Payload:**
692 -)))
606 +* **Downlink Payload:**
693 693  
694 -(((
695 695  **0xAE 01**  ~-~-> Set PAYVER field =  0x01
696 -)))
697 697  
698 -(((
699 699  **0xAE 0F**   ~-~-> Set PAYVER field =  0x0F
700 -)))
701 701  
702 702  
703 703  
704 -
705 705  ==== **Set RS485 Sampling Commands** ====
706 706  
707 -(((
708 708  AT+COMMANDx or AT+DATACUTx
709 -)))
710 710  
711 -(((
712 712  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"]].
713 -)))
714 714  
715 -(((
716 -
717 -)))
718 718  
719 -* (((
720 -**AT Command:**
721 -)))
621 +* **AT Command:**
722 722  
723 723  (% class="box infomessage" %)
724 724  (((
725 -(((
726 726  **AT+COMMANDx: Configure RS485 read command to sensor.**
727 727  )))
728 -)))
729 729  
730 730  (% class="box infomessage" %)
731 731  (((
732 -(((
733 733  **AT+DATACUTx: Configure how to handle return from RS485 devices.**
734 734  )))
735 -)))
736 736  
737 -(((
738 -
739 -)))
740 740  
741 -* (((
742 -**Downlink Payload:**
743 -)))
634 +* **Downlink Payload:**
744 744  
745 -(((
746 746  **0xAF** downlink command can be used to set AT+COMMANDx or AT+DATACUTx.
747 -)))
748 748  
749 -(((
750 750  (% style="color:red" %)**Note**(%%): if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink.
751 -)))
752 752  
753 -(((
754 754  Format: AF MM NN LL XX XX XX XX YY
755 -)))
756 756  
757 -(((
758 758  Where:
759 -)))
760 760  
761 -* (((
762 -MM: the ATCOMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F,
763 -)))
764 -* (((
765 -NN:  0: no CRC; 1: add CRC-16/MODBUS ; 2: set the AT+DATACUT value.
766 -)))
767 -* (((
768 -LL:  The length of AT+COMMAND or AT+DATACUT command
769 -)))
770 -* (((
771 -XX XX XX XX: AT+COMMAND or AT+DATACUT command
772 -)))
773 -* (((
774 -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.
775 -)))
644 +* MM: the ATCOMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F,
645 +* NN:  0: no CRC; 1: add CRC-16/MODBUS ; 2: set the AT+DATACUT value.
646 +* LL:  The length of AT+COMMAND or AT+DATACUT command
647 +* XX XX XX XX: AT+COMMAND or AT+DATACUT command
648 +* 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.
776 776  
777 -(((
778 778  **Example:**
779 -)))
780 780  
781 -(((
782 782  (% 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
783 -)))
784 784  
785 -(((
786 786  (% 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**
787 -)))
788 788  
789 -(((
790 790  (% 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**
791 -)))
792 792  
793 793  
794 794  
795 -
796 796  ==== **Fast command to handle MODBUS device** ====
797 797  
798 -(((
799 799  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]].
800 -)))
801 801  
802 -(((
803 803  This command is valid since v1.3 firmware version
804 -)))
805 805  
806 -(((
807 807  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.
808 -)))
809 809  
810 -(((
811 -
812 -)))
813 813  
814 -(((
815 815  **Example:**
816 -)))
817 817  
818 -* (((
819 -AT+MBFUN=1 and AT+DATACUT1/AT+DATACUT2 are not configure (0,0,0). So RS485-LN.
820 -)))
821 -* (((
822 -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.
823 -)))
824 -* (((
825 -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.
826 -)))
671 +* AT+MBFUN=1 and AT+DATACUT1/AT+DATACUT2 are not configure (0,0,0). So RS485-LN.
672 +* 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.
673 +* 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.
827 827  
828 828  [[image:image-20220602165351-6.png]]
829 829  
... ... @@ -831,260 +831,144 @@
831 831  
832 832  
833 833  
834 -
835 835  ==== **RS485 command timeout** ====
836 836  
837 -(((
838 838  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.
839 -)))
840 840  
841 -(((
842 842  Default value: 0, range:  0 ~~ 65 seconds
843 -)))
844 844  
845 -* (((
846 -**AT Command:**
847 -)))
687 +* **AT Command:**
848 848  
849 849  (% class="box infomessage" %)
850 850  (((
851 -(((
852 852  **AT+CMDDLaa=hex(bb cc)*1000**
853 853  )))
854 -)))
855 855  
856 -(((
857 857  **Example:**
858 -)))
859 859  
860 -(((
861 861  **AT+CMDDL1=1000** to send the open time to 1000ms
862 -)))
863 863  
864 -(((
865 -
866 -)))
867 867  
868 -* (((
869 -**Downlink Payload:**
870 -)))
699 +* **Downlink Payload:**
871 871  
872 -(((
873 873  **0x AA aa bb cc**
874 -)))
875 875  
876 -(((
877 877  Same as: AT+CMDDLaa=hex(bb cc)*1000
878 -)))
879 879  
880 -(((
881 881   **Example:**
882 -)))
883 883  
884 -(((
885 885   0xAA 01 00 01  ~-~-> Same as **AT+CMDDL1=1000 ms**
886 -)))
887 887  
888 888  
889 889  
890 -
891 891  ==== **Uplink payload mode** ====
892 892  
893 -(((
894 894  Define to use one uplink or multiple uplinks for the sampling.
895 -)))
896 896  
897 -(((
898 898  The use of this command please see: [[Compose Uplink payload>>||anchor="H3.3.4Composetheuplinkpayload"]]
899 -)))
900 900  
901 -* (((
902 -**AT Command:**
903 -)))
717 +* **AT Command:**
904 904  
905 905  (% class="box infomessage" %)
906 906  (((
907 -(((
908 908  **AT+DATAUP=0**
909 909  )))
910 -)))
911 911  
912 912  (% class="box infomessage" %)
913 913  (((
914 -(((
915 915  **AT+DATAUP=1**
916 916  )))
917 -)))
918 918  
919 -(((
920 -
921 -)))
922 922  
923 -* (((
924 -**Downlink Payload:**
925 -)))
730 +* **Downlink Payload:**
926 926  
927 -(((
928 928  **0xAD 00**  **~-~->** Same as AT+DATAUP=0
929 -)))
930 930  
931 -(((
932 932  **0xAD 01**  **~-~->** Same as AT+DATAUP=1
933 -)))
934 934  
935 935  
936 936  
937 -
938 938  ==== **Manually trigger an Uplink** ====
939 939  
940 -(((
941 941  Ask device to send an uplink immediately.
942 -)))
943 943  
944 -* (((
945 -**AT Command:**
946 -)))
742 +* **AT Command:**
947 947  
948 -(((
949 949  No AT Command for this, user can press the [[ACT button>>||anchor="H3.7Buttons"]] for 1 second for the same.
950 -)))
951 951  
952 -(((
953 -
954 -)))
955 955  
956 -* (((
957 -**Downlink Payload:**
958 -)))
747 +* **Downlink Payload:**
959 959  
960 -(((
961 961  **0x08 FF**, RS485-LN will immediately send an uplink.
962 -)))
963 963  
964 964  
965 965  
966 -
967 967  ==== **Clear RS485 Command** ====
968 968  
969 -(((
970 970  The AT+COMMANDx and AT+DATACUTx settings are stored in special location, user can use below command to clear them.
971 -)))
972 972  
973 -* (((
974 -**AT Command:**
975 -)))
757 +* **AT Command:**
976 976  
977 -(((
978 978  **AT+CMDEAR=mm,nn**   mm: start position of erase ,nn: stop position of erase
979 -)))
980 980  
981 -(((
982 982  Etc. AT+CMDEAR=1,10 means erase AT+COMMAND1/AT+DATACUT1 to AT+COMMAND10/AT+DATACUT10
983 -)))
984 984  
985 -(((
986 986  Example screen shot after clear all RS485 commands. 
987 -)))
988 988  
989 -(((
990 -
991 -)))
992 992  
993 -(((
994 994  The uplink screen shot is:
995 -)))
996 996  
997 997  [[image:1654160691922-496.png]]
998 998  
999 999  
1000 -* (((
1001 -**Downlink Payload:**
1002 -)))
771 +* **Downlink Payload:**
1003 1003  
1004 -(((
1005 1005  **0x09 aa bb** same as AT+CMDEAR=aa,bb
1006 -)))
1007 1007  
1008 1008  
1009 1009  
1010 -
1011 1011  ==== **Set Serial Communication Parameters** ====
1012 1012  
1013 -(((
1014 1014  Set the Rs485 serial communication parameters:
1015 -)))
1016 1016  
1017 -* (((
1018 -**AT Command:**
1019 -)))
781 +* **AT Command:**
1020 1020  
1021 -(((
1022 1022  Set Baud Rate:
1023 -)))
1024 1024  
1025 1025  (% class="box infomessage" %)
1026 1026  (((
1027 -(((
1028 1028  **AT+BAUDR=9600**    ~/~/ Options: (1200,2400,4800,14400,19200,115200)
1029 1029  )))
1030 -)))
1031 1031  
1032 -(((
1033 1033  Set UART Parity
1034 -)))
1035 1035  
1036 1036  (% class="box infomessage" %)
1037 1037  (((
1038 -(((
1039 1039  **AT+PARITY=0**    ~/~/ Option: 0: no parity, 1: odd parity, 2: even parity
1040 1040  )))
1041 -)))
1042 1042  
1043 -(((
1044 1044  Set STOPBIT
1045 -)))
1046 1046  
1047 1047  (% class="box infomessage" %)
1048 1048  (((
1049 -(((
1050 1050  **AT+STOPBIT=0**    ~/~/ Option: 0 for 1bit; 1 for 1.5 bit ; 2 for 2 bits
1051 1051  )))
1052 -)))
1053 1053  
1054 -(((
1055 -
1056 -)))
1057 1057  
1058 -* (((
1059 -**Downlink Payload:**
1060 -)))
805 +* **Downlink Payload:**
1061 1061  
1062 -(((
1063 1063  **A7 01 aa bb**: Same  AT+BAUDR=hex(aa bb)*100
1064 -)))
1065 1065  
1066 -(((
1067 1067  **Example:**
1068 -)))
1069 1069  
1070 -* (((
1071 -A7 01 00 60   same as AT+BAUDR=9600
1072 -)))
1073 -* (((
1074 -A7 01 04 80  same as AT+BAUDR=115200
1075 -)))
811 +* A7 01 00 60   same as AT+BAUDR=9600
812 +* A7 01 04 80  same as AT+BAUDR=115200
1076 1076  
1077 -(((
1078 1078  A7 02 aa: Same as  AT+PARITY=aa  (aa value: 00 , 01 or 02)
1079 -)))
1080 1080  
1081 -(((
1082 1082  A7 03 aa: Same as  AT+STOPBIT=aa  (aa value: 00 , 01 or 02)
1083 -)))
1084 1084  
1085 1085  
1086 -
1087 -
1088 1088  == 3.6 Listening mode for RS485 network ==
1089 1089  
1090 1090  This feature support since firmware v1.4
Copyright ©2010-2024 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0