Changes for page RS485-BL – Waterproof RS485 to LoRaWAN Converter
Last modified by Xiaoling on 2025/04/23 15:57
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 1 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -316,7 +316,6 @@ 316 316 ))) 317 317 ))) 318 318 319 - 320 320 === 3.3.2 Configure sensors === 321 321 322 322 ((( ... ... @@ -587,6 +587,7 @@ 587 587 588 588 So totally there will be 3 uplinks for this sampling, each uplink includes 6 bytes DATA 589 589 589 + 590 590 DATA1=RETURN1 Valid Value = (% style="background-color:#4f81bd; color:white" %) 20 20 0a 33 90 41 591 591 592 592 DATA2=1^^st^^ ~~ 6^^th^^ byte of Valid value of RETURN10= (% style="background-color:#4f81bd; color:white" %)02 aa 05 81 0a 20 ... ... @@ -593,10 +593,12 @@ 593 593 594 594 DATA3=7^^th^^ ~~ 11^^th^^ bytes of Valid value of RETURN10 =(% style="background-color:#4f81bd; color:white" %) 20 20 20 2d 30 595 595 596 + 596 596 Below are the uplink payloads: 597 597 598 598 [[image:1653272901032-107.png]] 599 599 601 + 600 600 (% style="color:red" %)Notice: the Max bytes is according to the max support bytes in different Frequency Bands for lowest SF. As below: 601 601 602 602 ~* For AU915/AS923 bands, if UplinkDwell time=0, max 51 bytes for each uplink ( so 51 -5 = 46 max valid date) ... ... @@ -607,6 +607,8 @@ 607 607 608 608 ~* For all other bands: max 51 bytes for each uplink ( so 51 -5 = 46 max valid date). 609 609 612 + 613 + 610 610 === 3.3.5 Uplink on demand === 611 611 612 612 ((( ... ... @@ -623,6 +623,8 @@ 623 623 624 624 ((( 625 625 **0xA8 command**: Send a command to RS485-BL and uplink the output from sensors. 630 + 631 + 626 626 ))) 627 627 628 628 === 3.3.6 Uplink on Interrupt === ... ... @@ -631,6 +631,7 @@ 631 631 632 632 [[image:1653273818896-432.png]] 633 633 640 + 634 634 ((( 635 635 AT+INTMOD=0 Disable Interrupt 636 636 ))) ... ... @@ -645,6 +645,8 @@ 645 645 646 646 ((( 647 647 AT+INTMOD=3 Interrupt trigger by rising edge. 655 + 656 + 648 648 ))) 649 649 650 650 == 3.4 Uplink Payload == ... ... @@ -672,47 +672,49 @@ 672 672 Below is the decoder for the first 3 bytes. The rest bytes are dynamic depends on different RS485 sensors. 673 673 674 674 ((( 675 -function Decoder(bytes, port) { 684 +{{{function Decoder(bytes, port) {}}} 676 676 ))) 677 677 678 678 ((( 679 - ~/~/Payload Formats of RS485-BL Deceive688 +{{{//Payload Formats of RS485-BL Deceive}}} 680 680 ))) 681 681 682 682 ((( 683 -return { 692 +{{{return {}}} 684 684 ))) 685 685 686 686 ((( 687 - ~/~/Battery,units:V696 +{{{ //Battery,units:V}}} 688 688 ))) 689 689 690 690 ((( 691 - BatV:((bytes[0]<<8 | bytes[1])&0x7fff)/1000, 700 +{{{ BatV:((bytes[0]<<8 | bytes[1])&0x7fff)/1000,}}} 692 692 ))) 693 693 694 694 ((( 695 - ~/~/GPIO_EXTI704 +{{{ //GPIO_EXTI }}} 696 696 ))) 697 697 698 698 ((( 699 - EXTI_Trigger:(bytes[0] & 0x80)? "TRUE":"FALSE", 708 +{{{ EXTI_Trigger:(bytes[0] & 0x80)? "TRUE":"FALSE",}}} 700 700 ))) 701 701 702 702 ((( 703 - ~/~/payload of version712 +{{{ //payload of version}}} 704 704 ))) 705 705 706 706 ((( 707 - Pay_ver:bytes[2], 716 +{{{ Pay_ver:bytes[2],}}} 708 708 ))) 709 709 710 710 ((( 711 - }; 720 +{{{ }; }}} 712 712 ))) 713 713 714 714 ((( 715 - } 724 +} 725 + 726 + 716 716 ))) 717 717 718 718 ((( ... ... @@ -721,58 +721,67 @@ 721 721 722 722 [[image:1653274001211-372.png||height="192" width="732"]] 723 723 735 + 724 724 == 3.5 Configure RS485-BL via AT or Downlink == 725 725 726 -User can configure RS485-BL via [[AT Commands>>path:#_Using_the_AT]]or LoRaWAN Downlink Commands738 +User can configure RS485-BL via AT Commands or LoRaWAN Downlink Commands 727 727 728 728 There are two kinds of Commands: 729 729 730 -* **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: http:~/~/wiki.dragino.com/index.php?title=End_Device_AT_Commands_and_Downlink_Commands742 +* (% 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]] 731 731 732 -* **Sensor Related Commands**: These commands are special designed for RS485-BL. User can see these commands below: 744 +* (% style="color:#4f81bd" %)**Sensor Related Commands**(%%): These commands are special designed for RS485-BL. User can see these commands below: 733 733 734 -1. 735 -11. 736 -111. Common Commands: 737 737 738 -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: [[http:~~/~~/wiki.dragino.com/index.php?title=End_Device_AT_Commands_and_Downlink_Commands>>url:http://wiki.dragino.com/index.php?title=End_Device_AT_Commands_and_Downlink_Commands]] 739 739 748 +=== 3.5.1 Common Commands: === 740 740 741 -1. 742 -11. 743 -111. Sensor related commands: 750 +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]] 744 744 745 -==== Choose Device Type (RS485 or TTL) ==== 746 746 753 +=== 3.5.2 Sensor related commands: === 754 + 755 +==== ==== 756 + 757 +==== **Choose Device Type (RS485 or TTL)** ==== 758 + 747 747 RS485-BL can connect to either RS485 sensors or TTL sensor. User need to specify what type of sensor need to connect. 748 748 749 -* AT Command 761 +* **AT Command** 750 750 763 +(% class="box infomessage" %) 764 +((( 751 751 **AT+MOD=1** ~/~/ Set to support RS485-MODBUS type sensors. User can connect multiply RS485 , Modbus sensors to the A / B pins. 766 +))) 752 752 768 +(% class="box infomessage" %) 769 +((( 753 753 **AT+MOD=2** ~/~/ Set to support TTL Level sensors, User can connect one TTL Sensor to the TXD/RXD/GND pins. 771 +))) 754 754 755 755 756 -* Downlink Payload 774 +* **Downlink Payload** 757 757 758 -**0A aa** àsame as AT+MOD=aa776 +**0A aa** ~-~-> same as AT+MOD=aa 759 759 760 760 761 761 762 -==== [[RS485 Debug Command>>path:#downlink_A8]](AT+CFGDEV) ====780 +==== **RS485 Debug Command (AT+CFGDEV)** ==== 763 763 764 764 This command is used to configure the RS485 or TTL sensors; they won’t be used during sampling. 765 765 766 -* AT Command 784 +* **AT Command** 767 767 768 -AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m 786 +(% class="box infomessage" %) 787 +((( 788 +**AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m** 789 +))) 769 769 770 770 m: 0: no CRC; 1: add CRC-16/MODBUS in the end of this command. 771 771 772 772 794 +* **Downlink Payload** 773 773 774 -* Downlink Payload 775 - 776 776 Format: A8 MM NN XX XX XX XX YY 777 777 778 778 Where: ... ... @@ -782,19 +782,20 @@ 782 782 * XX XX XX XX: RS485 command total NN bytes 783 783 * YY: How many bytes will be uplink from the return of this RS485 command, if YY=0, RS485-BL will execute the downlink command without uplink; if YY>0, RS485-BL will uplink total YY bytes from the output of this RS485 command 784 784 805 + 785 785 **Example 1:** 786 786 787 787 To connect a Modbus Alarm with below commands. 788 788 789 -* 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. 810 +* 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. 790 790 791 -* 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. 812 +* 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. 792 792 793 793 So if user want to use downlink command to control to RS485 Alarm, he can use: 794 794 795 -**A8 01 06 0A 05 00 04 00 01 00**: to activate the RS485 Alarm 816 +(% style="color:#037691" %)**A8 01 06 0A 05 00 04 00 01 00**(%%): to activate the RS485 Alarm 796 796 797 -**A8 01 06 0A 05 00 04 00 00 00**: to deactivate the RS485 Alarm 818 +(% style="color:#037691" %)**A8 01 06 0A 05 00 04 00 00 00**(%%): to deactivate the RS485 Alarm 798 798 799 799 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. 800 800 ... ... @@ -803,25 +803,27 @@ 803 803 804 804 Check TTL Sensor return: 805 805 806 -[[image: file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image024.png]]827 +[[image:1654132684752-193.png]] 807 807 808 808 809 809 831 +==== **Set Payload version** ==== 810 810 811 -==== Set Payload version ==== 812 - 813 813 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. 814 814 815 -* AT Command: 835 +* **AT Command:** 816 816 817 -AT+PAYVER: Set PAYVER field = 1 837 +(% class="box infomessage" %) 838 +((( 839 +**AT+PAYVER: Set PAYVER field = 1** 840 +))) 818 818 819 819 820 -* Downlink Payload: 843 +* **Downlink Payload:** 821 821 822 -0xAE 01 àSet PAYVER field = 0x01845 +0xAE 01 ~-~-> Set PAYVER field = 0x01 823 823 824 -0xAE 0F àSet PAYVER field = 0x0F847 +0xAE 0F ~-~-> Set PAYVER field = 0x0F 825 825 826 826 827 827 ==== Set RS485 Sampling Commands ====
- 1654132684752-193.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +22.8 KB - Content