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, 4 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -25,19 +25,19 @@ 25 25 ))) 26 26 27 27 ((( 28 -The Dragino RS485-BL is a **RS485 / UART to LoRaWAN Converter** for Internet of Things solutions. User can connect RS485 or UART sensor to RS485-BL converter, and configure RS485-BL to periodically read sensor data and upload via LoRaWAN network to IoT server. 28 +The Dragino RS485-BL is a (% style="color:blue" %)**RS485 / UART to LoRaWAN Converter**(%%) for Internet of Things solutions. User can connect RS485 or UART sensor to RS485-BL converter, and configure RS485-BL to periodically read sensor data and upload via LoRaWAN network to IoT server. 29 29 ))) 30 30 31 31 ((( 32 -RS485-BL can interface to RS485 sensor, 3.3v/5v UART sensor or interrupt sensor. RS485-BL provides **a 3.3v output** and** a 5v output** to power external sensors. Both output voltages are controllable to minimize the total system power consumption. 32 +RS485-BL can interface to RS485 sensor, 3.3v/5v UART sensor or interrupt sensor. RS485-BL provides (% style="color:blue" %)**a 3.3v output**(%%) and** (% style="color:blue" %)a 5v output(%%)** to power external sensors. Both output voltages are controllable to minimize the total system power consumption. 33 33 ))) 34 34 35 35 ((( 36 -RS485-BL is IP67 **waterproof** and powered by **8500mAh Li-SOCI2 battery**, it is designed for long term use for several years. 36 +RS485-BL is IP67 (% style="color:blue" %)**waterproof**(%%) and powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long term use for several years. 37 37 ))) 38 38 39 39 ((( 40 -RS485-BL runs standard **LoRaWAN 1.0.3 in Class A**. It can reach long transfer range and easy to integrate with LoRaWAN compatible gateway and IoT server. 40 +RS485-BL runs standard (% style="color:blue" %)**LoRaWAN 1.0.3 in Class A**(%%). It can reach long transfer range and easy to integrate with LoRaWAN compatible gateway and IoT server. 41 41 ))) 42 42 43 43 ((( ... ... @@ -54,8 +54,11 @@ 54 54 55 55 [[image:1652953304999-717.png||height="424" width="733"]] 56 56 57 + 58 + 57 57 == 1.2 Specifications == 58 58 61 + 59 59 **Hardware System:** 60 60 61 61 * STM32L072CZT6 MCU ... ... @@ -62,8 +62,6 @@ 62 62 * SX1276/78 Wireless Chip 63 63 * Power Consumption (exclude RS485 device): 64 64 ** Idle: 6uA@3.3v 65 - 66 -* 67 67 ** 20dB Transmit: 130mA@3.3v 68 68 69 69 **Interface for Model:** ... ... @@ -117,9 +117,12 @@ 117 117 118 118 [[RS485-BL Image files – Download link and Change log>>url:http://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/RS485-BL/Firmware/||style="background-color: rgb(255, 255, 255);"]] 119 119 121 + 120 120 == 1.6 Hardware Change log == 121 121 122 122 ((( 125 + 126 + 123 123 v1.4 124 124 ))) 125 125 ... ... @@ -143,6 +143,8 @@ 143 143 144 144 ((( 145 145 Release version 150 + 151 + 146 146 ))) 147 147 148 148 = 2. Pin mapping and Power ON Device = ... ... @@ -200,8 +200,6 @@ 200 200 ))) 201 201 202 202 203 - 204 - 205 205 [[image:image-20220519174512-1.png]] 206 206 207 207 [[image:image-20220519174512-2.png||height="328" width="731"]] ... ... @@ -225,6 +225,7 @@ 225 225 226 226 [[image:1652953568895-172.png||height="232" width="724"]] 227 227 232 + 228 228 == 3.3 Configure Commands to read data == 229 229 230 230 ((( ... ... @@ -331,8 +331,9 @@ 331 331 mm: 0: no CRC, 1: add CRC-16/MODBUS in the end of this command 332 332 )))|(% style="width:256px" %)AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m 333 333 334 -Detail of AT+CFGDEV command see [[AT+CFGDEV detail>> path:#AT_CFGDEV]].339 +Detail of AT+CFGDEV command see [[AT+CFGDEV detail>>||anchor="HRS485DebugCommand28AT2BCFGDEV29"]]. 335 335 341 + 336 336 === 3.3.3 Configure read commands for each sampling === 337 337 338 338 ((( ... ... @@ -430,7 +430,7 @@ 430 430 431 431 **Examples:** 432 432 433 -1 .For a return string from AT+COMMAND1: 16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49439 +1)For a return string from AT+COMMAND1: 16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49 434 434 435 435 If we set AT+SEARCH1=1,1E 56 34. (max 5 bytes for prefix) 436 436 ... ... @@ -438,7 +438,7 @@ 438 438 439 439 [[image:1653271044481-711.png]] 440 440 441 - 1.For a return string from AT+COMMAND1: 16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49447 +2)For a return string from AT+COMMAND1: 16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49 442 442 443 443 If we set AT+SEARCH1=2, 1E 56 34+31 00 49 444 444 ... ... @@ -457,16 +457,18 @@ 457 457 * **c: define the position for valid value. ** 458 458 ))) 459 459 460 -Examples: 466 +**Examples:** 461 461 462 462 * Grab bytes: 463 463 464 464 [[image:1653271581490-837.png||height="313" width="722"]] 465 465 472 + 466 466 * Grab a section. 467 467 468 468 [[image:1653271648378-342.png||height="326" width="720"]] 469 469 477 + 470 470 * Grab different sections. 471 471 472 472 [[image:1653271657255-576.png||height="305" width="730"]] ... ... @@ -509,6 +509,7 @@ 509 509 510 510 [[image:1653271763403-806.png]] 511 511 520 + 512 512 === 3.3.4 Compose the uplink payload === 513 513 514 514 ((( ... ... @@ -516,7 +516,7 @@ 516 516 ))) 517 517 518 518 ((( 519 -(% style="color:# 4f81bd" %)**Examples: AT+DATAUP=0**528 +(% style="color:#037691" %)**Examples: AT+DATAUP=0** 520 520 ))) 521 521 522 522 ((( ... ... @@ -528,7 +528,7 @@ 528 528 ))) 529 529 530 530 ((( 531 -(% style="color:#4f81bd" %)Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx 540 +(% style="color:#4f81bd" %)**Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx** 532 532 ))) 533 533 534 534 ((( ... ... @@ -537,8 +537,12 @@ 537 537 538 538 [[image:1653272787040-634.png||height="515" width="719"]] 539 539 549 + 550 + 540 540 ((( 541 -(% style="color:#4f81bd" %)**Examples: AT+DATAUP=1** 552 +(% style="color:#037691" %)**Examples: AT+DATAUP=1** 553 + 554 + 542 542 ))) 543 543 544 544 ((( ... ... @@ -550,7 +550,7 @@ 550 550 ))) 551 551 552 552 ((( 553 -(% style="color:#4f81bd" %)Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA 566 +(% style="color:#4f81bd" %)**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA** 554 554 ))) 555 555 556 556 1. ((( ... ... @@ -573,6 +573,7 @@ 573 573 574 574 So totally there will be 3 uplinks for this sampling, each uplink includes 6 bytes DATA 575 575 589 + 576 576 DATA1=RETURN1 Valid Value = (% style="background-color:#4f81bd; color:white" %) 20 20 0a 33 90 41 577 577 578 578 DATA2=1^^st^^ ~~ 6^^th^^ byte of Valid value of RETURN10= (% style="background-color:#4f81bd; color:white" %)02 aa 05 81 0a 20 ... ... @@ -579,10 +579,12 @@ 579 579 580 580 DATA3=7^^th^^ ~~ 11^^th^^ bytes of Valid value of RETURN10 =(% style="background-color:#4f81bd; color:white" %) 20 20 20 2d 30 581 581 596 + 582 582 Below are the uplink payloads: 583 583 584 584 [[image:1653272901032-107.png]] 585 585 601 + 586 586 (% style="color:red" %)Notice: the Max bytes is according to the max support bytes in different Frequency Bands for lowest SF. As below: 587 587 588 588 ~* For AU915/AS923 bands, if UplinkDwell time=0, max 51 bytes for each uplink ( so 51 -5 = 46 max valid date) ... ... @@ -593,6 +593,8 @@ 593 593 594 594 ~* For all other bands: max 51 bytes for each uplink ( so 51 -5 = 46 max valid date). 595 595 612 + 613 + 596 596 === 3.3.5 Uplink on demand === 597 597 598 598 ((( ... ... @@ -609,6 +609,8 @@ 609 609 610 610 ((( 611 611 **0xA8 command**: Send a command to RS485-BL and uplink the output from sensors. 630 + 631 + 612 612 ))) 613 613 614 614 === 3.3.6 Uplink on Interrupt === ... ... @@ -617,6 +617,7 @@ 617 617 618 618 [[image:1653273818896-432.png]] 619 619 640 + 620 620 ((( 621 621 AT+INTMOD=0 Disable Interrupt 622 622 ))) ... ... @@ -631,6 +631,8 @@ 631 631 632 632 ((( 633 633 AT+INTMOD=3 Interrupt trigger by rising edge. 655 + 656 + 634 634 ))) 635 635 636 636 == 3.4 Uplink Payload == ... ... @@ -658,47 +658,49 @@ 658 658 Below is the decoder for the first 3 bytes. The rest bytes are dynamic depends on different RS485 sensors. 659 659 660 660 ((( 661 -function Decoder(bytes, port) { 684 +{{{function Decoder(bytes, port) {}}} 662 662 ))) 663 663 664 664 ((( 665 - ~/~/Payload Formats of RS485-BL Deceive688 +{{{//Payload Formats of RS485-BL Deceive}}} 666 666 ))) 667 667 668 668 ((( 669 -return { 692 +{{{return {}}} 670 670 ))) 671 671 672 672 ((( 673 - ~/~/Battery,units:V696 +{{{ //Battery,units:V}}} 674 674 ))) 675 675 676 676 ((( 677 - BatV:((bytes[0]<<8 | bytes[1])&0x7fff)/1000, 700 +{{{ BatV:((bytes[0]<<8 | bytes[1])&0x7fff)/1000,}}} 678 678 ))) 679 679 680 680 ((( 681 - ~/~/GPIO_EXTI704 +{{{ //GPIO_EXTI }}} 682 682 ))) 683 683 684 684 ((( 685 - EXTI_Trigger:(bytes[0] & 0x80)? "TRUE":"FALSE", 708 +{{{ EXTI_Trigger:(bytes[0] & 0x80)? "TRUE":"FALSE",}}} 686 686 ))) 687 687 688 688 ((( 689 - ~/~/payload of version712 +{{{ //payload of version}}} 690 690 ))) 691 691 692 692 ((( 693 - Pay_ver:bytes[2], 716 +{{{ Pay_ver:bytes[2],}}} 694 694 ))) 695 695 696 696 ((( 697 - }; 720 +{{{ }; }}} 698 698 ))) 699 699 700 700 ((( 701 - } 724 +} 725 + 726 + 702 702 ))) 703 703 704 704 ((( ... ... @@ -707,58 +707,65 @@ 707 707 708 708 [[image:1653274001211-372.png||height="192" width="732"]] 709 709 735 + 710 710 == 3.5 Configure RS485-BL via AT or Downlink == 711 711 712 -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 713 713 714 714 There are two kinds of Commands: 715 715 716 -* **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]] 717 717 718 -* **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: 719 719 720 -1. 721 -11. 722 -111. Common Commands: 746 +=== 3.5.1 Common Commands: === 723 723 724 -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]]748 +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]] 725 725 726 726 727 -1. 728 -11. 729 -111. Sensor related commands: 751 +=== 3.5.2 Sensor related commands: === 730 730 731 -==== ChooseDeviceType (RS485 or TTL)====753 +==== ==== 732 732 755 +==== **Choose Device Type (RS485 or TTL)** ==== 756 + 733 733 RS485-BL can connect to either RS485 sensors or TTL sensor. User need to specify what type of sensor need to connect. 734 734 735 -* AT Command 759 +* **AT Command** 736 736 761 +(% class="box infomessage" %) 762 +((( 737 737 **AT+MOD=1** ~/~/ Set to support RS485-MODBUS type sensors. User can connect multiply RS485 , Modbus sensors to the A / B pins. 764 +))) 738 738 766 +(% class="box infomessage" %) 767 +((( 739 739 **AT+MOD=2** ~/~/ Set to support TTL Level sensors, User can connect one TTL Sensor to the TXD/RXD/GND pins. 769 +))) 740 740 741 741 742 -* Downlink Payload 772 +* **Downlink Payload** 743 743 744 -**0A aa** àsame as AT+MOD=aa774 +**0A aa** ~-~-> same as AT+MOD=aa 745 745 746 746 747 747 748 -==== [[RS485 Debug Command>>path:#downlink_A8]](AT+CFGDEV) ====778 +==== **RS485 Debug Command (AT+CFGDEV)** ==== 749 749 750 750 This command is used to configure the RS485 or TTL sensors; they won’t be used during sampling. 751 751 752 -* AT Command 782 +* **AT Command** 753 753 754 -AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m 784 +(% class="box infomessage" %) 785 +((( 786 +**AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m** 787 +))) 755 755 756 756 m: 0: no CRC; 1: add CRC-16/MODBUS in the end of this command. 757 757 758 758 792 +* **Downlink Payload** 759 759 760 -* Downlink Payload 761 - 762 762 Format: A8 MM NN XX XX XX XX YY 763 763 764 764 Where: ... ... @@ -772,15 +772,15 @@ 772 772 773 773 To connect a Modbus Alarm with below commands. 774 774 775 -* 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. 807 +* 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. 776 776 777 -* 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. 809 +* 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. 778 778 779 779 So if user want to use downlink command to control to RS485 Alarm, he can use: 780 780 781 -**A8 01 06 0A 05 00 04 00 01 00**: to activate the RS485 Alarm 813 +(% style="color:#037691" %)**A8 01 06 0A 05 00 04 00 01 00**(%%): to activate the RS485 Alarm 782 782 783 -**A8 01 06 0A 05 00 04 00 00 00**: to deactivate the RS485 Alarm 815 +(% style="color:#037691" %)**A8 01 06 0A 05 00 04 00 00 00**(%%): to deactivate the RS485 Alarm 784 784 785 785 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. 786 786 ... ... @@ -789,48 +789,60 @@ 789 789 790 790 Check TTL Sensor return: 791 791 792 -[[image: file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image024.png]]824 +[[image:1654132684752-193.png]] 793 793 794 794 795 795 828 +==== **Set Payload version** ==== 796 796 797 -==== Set Payload version ==== 798 - 799 799 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. 800 800 801 -* AT Command: 832 +* **AT Command:** 802 802 803 -AT+PAYVER: Set PAYVER field = 1 834 +(% class="box infomessage" %) 835 +((( 836 +**AT+PAYVER: Set PAYVER field = 1** 837 +))) 804 804 805 805 806 -* Downlink Payload: 840 +* **Downlink Payload:** 807 807 808 -0xAE 01 àSet PAYVER field = 0x01842 +**0xAE 01** ~-~-> Set PAYVER field = 0x01 809 809 810 -0xAE 0F àSet PAYVER field = 0x0F844 +**0xAE 0F** ~-~-> Set PAYVER field = 0x0F 811 811 812 812 813 -==== Set RS485 Sampling Commands ==== 814 814 848 +==== **Set RS485 Sampling Commands** ==== 849 + 815 815 AT+COMMANDx, AT+DATACUTx and AT+SEARCHx 816 816 817 -These three commands are used to configure how the RS485-BL polling data from Modbus device. Detail of usage please see : [[polling RS485 device>> path:#polling_485]].852 +These three commands are used to configure how the RS485-BL polling data from Modbus device. Detail of usage please see : [[polling RS485 device>>||anchor="H3.3.3Configurereadcommandsforeachsampling"]]. 818 818 819 819 820 -* AT Command: 855 +* **AT Command:** 821 821 822 -AT+COMMANDx: Configure RS485 read command to sensor. 857 +(% class="box infomessage" %) 858 +((( 859 +**AT+COMMANDx: Configure RS485 read command to sensor.** 860 +))) 823 823 824 -AT+DATACUTx: Configure how to handle return from RS485 devices. 862 +(% class="box infomessage" %) 863 +((( 864 +**AT+DATACUTx: Configure how to handle return from RS485 devices.** 865 +))) 825 825 826 -AT+SEARCHx: Configure search command 867 +(% class="box infomessage" %) 868 +((( 869 +**AT+SEARCHx: Configure search command** 870 +))) 827 827 828 828 829 -* Downlink Payload: 873 +* **Downlink Payload:** 830 830 831 -0xAF downlink command can be used to set AT+COMMANDx or AT+DATACUTx. 875 +**0xAF** downlink command can be used to set AT+COMMANDx or AT+DATACUTx. 832 832 833 -Note: if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink. 877 +(% style="color:red" %)**Note**(%%): if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink. 834 834 835 835 Format: AF MM NN LL XX XX XX XX YY 836 836 ... ... @@ -837,23 +837,23 @@ 837 837 Where: 838 838 839 839 * MM: the ATCOMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F, 840 -* NN: 0: no CRC; 1: add CRC-16/MODBUS ; 2: set the AT+DATACUT value. 841 -* LL: The length of AT+COMMAND or AT+DATACUT command 884 +* NN: 0: no CRC; 1: add CRC-16/MODBUS ; 2: set the AT+DATACUT value. 885 +* LL: The length of AT+COMMAND or AT+DATACUT command 842 842 * XX XX XX XX: AT+COMMAND or AT+DATACUT command 843 -* YY: If YY=0, RS485-BL will execute the downlink command without uplink; if YY=1, RS485-BL will execute an uplink after got this command. 887 +* YY: If YY=0, RS485-BL will execute the downlink command without uplink; if YY=1, RS485-BL will execute an uplink after got this command. 844 844 845 -Example: 889 +**Example:** 846 846 847 -**AF 03 01 06 0A 05 00 04 00 01 00**: Same as AT+COMMAND3=0A 05 00 04 00 01,1 891 +(% 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 848 848 849 -**AF 03 02 06 10 01 05 06 09 0A 00**: Same as AT+DATACUT3=**16**,**1**,**5+6+9+10** 893 +(% 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** 850 850 851 -**AF 03 02 06 0B 02 05 07 08 0A 00**: Same as AT+DATACUT3=**11**,**2**,**5~~7+8~~10** 895 +(% 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** 852 852 853 853 854 -0xAB downlink command can be used for set AT+SEARCHx 898 +**0xAB** downlink command can be used for set AT+SEARCHx 855 855 856 -Example: **AB aa 01 03 xx xx xx** (03 here means there are total 3 bytes after 03) So 900 +**Example:** **AB aa 01 03 xx xx xx** (03 here means there are total 3 bytes after 03) So 857 857 858 858 * AB aa 01 03 xx xx xx same as AT+SEARCHaa=1,xx xx xx 859 859 * AB aa 02 03 xx xx xx 02 yy yy(03 means there are 3 bytes after 03, they are xx xx xx;02 means there are 2 bytes after 02, they are yy yy) so the commands ... ... @@ -861,96 +861,110 @@ 861 861 **AB aa 02 03 xx xx xx 02 yy yy** same as **AT+SEARCHaa=2,xx xx xx+yy yy** 862 862 863 863 864 -==== Fast command to handle MODBUS device ==== 865 865 909 +==== **Fast command to handle MODBUS device** ==== 910 + 866 866 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]]. 867 867 868 868 This command is valid since v1.3 firmware version 869 869 870 870 871 -AT+MBFUN has only two value: 916 +**AT+MBFUN has only two value:** 872 872 873 -* AT+MBFUN=1: Enable Modbus reading. And get response base on the MODBUS return 918 +* **AT+MBFUN=1**: Enable Modbus reading. And get response base on the MODBUS return 874 874 875 875 AT+MBFUN=1, device 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. 876 876 877 -* AT+MBFUN=0: Disable Modbus fast reading. 922 +* **AT+MBFUN=0**: Disable Modbus fast reading. 878 878 879 -Example: 924 +**Example:** 880 880 881 881 * AT+MBFUN=1 and AT+DATACUT1/AT+DATACUT2 are not configure (0,0,0). 882 882 * 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. 883 883 * 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. 884 884 885 -[[image: file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image025.png]]930 +[[image:1654133913295-597.png]] 886 886 887 887 888 -[[image: file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image026.png]]933 +[[image:1654133954153-643.png]] 889 889 890 890 891 -* Downlink Commands: 936 +* **Downlink Commands:** 892 892 893 -A9 aa - àSame as AT+MBFUN=aa938 +**A9 aa** ~-~-> Same as AT+MBFUN=aa 894 894 895 895 896 -==== RS485 command timeout ==== 897 897 942 +==== **RS485 command timeout** ==== 943 + 898 898 Some Modbus device has slow action to send replies. This command is used to configure the RS485-BL to use longer time to wait for their action. 899 899 900 900 Default value: 0, range: 0 ~~ 5 seconds 901 901 902 902 903 -* AT Command: 949 +* **AT Command:** 904 904 905 -AT+CMDDLaa=hex(bb cc) 951 +(% class="box infomessage" %) 952 +((( 953 +**AT+CMDDLaa=hex(bb cc)** 954 +))) 906 906 907 -Example: 956 +**Example:** 908 908 909 909 **AT+CMDDL1=1000** to send the open time to 1000ms 910 910 911 911 912 -* Downlink Payload: 961 +* **Downlink Payload:** 913 913 914 914 0x AA aa bb cc 915 915 916 916 Same as: AT+CMDDLaa=hex(bb cc) 917 917 918 - Example: 967 + **Example:** 919 919 920 - 0xAA 01 03 E8 àSame as **AT+CMDDL1=1000 ms**969 + **0xAA 01 03 E8** ~-~-> Same as **AT+CMDDL1=1000 ms** 921 921 922 922 923 -==== [[Uplink>>path:#downlink_A8]] payload mode ==== 924 924 973 +==== **Uplink payload mode** ==== 974 + 925 925 Define to use one uplink or multiple uplinks for the sampling. 926 926 927 -The use of this command please see: [[Compose Uplink payload>> path:#DataUP]]977 +The use of this command please see: [[Compose Uplink payload>>||anchor="H3.3.4Composetheuplinkpayload"]] 928 928 929 -* AT Command: 979 +* **AT Command:** 930 930 931 -AT+DATAUP=0 981 +(% class="box infomessage" %) 982 +((( 983 +**AT+DATAUP=0** 984 +))) 932 932 933 -AT+DATAUP=1 986 +(% class="box infomessage" %) 987 +((( 988 +**AT+DATAUP=1** 989 +))) 934 934 935 935 936 -* Downlink Payload: 992 +* **Downlink Payload:** 937 937 938 -0xAD 00 àSame as AT+DATAUP=0994 +**0xAD 00** **~-~->** Same as AT+DATAUP=0 939 939 940 -0xAD 01 àSame as AT+DATAUP=1996 +**0xAD 01** **~-~->** Same as AT+DATAUP=1 941 941 942 942 943 -==== Manually trigger an Uplink ==== 944 944 1000 +==== **Manually trigger an Uplink** ==== 1001 + 945 945 Ask device to send an uplink immediately. 946 946 947 -* Downlink Payload: 1004 +* **Downlink Payload:** 948 948 949 -0x08 FF, RS485-BL will immediately send an uplink. 1006 +**0x08 FF**, RS485-BL will immediately send an uplink. 950 950 951 951 952 -==== Clear RS485 Command ==== 953 953 1010 +==== **Clear RS485 Command** ==== 1011 + 954 954 The AT+COMMANDx and AT+DATACUTx settings are stored in special location, user can use below command to clear them. 955 955 956 956 ... ... @@ -1031,13 +1031,13 @@ 1031 1031 1032 1032 1033 1033 1034 -1. 1092 +1. 1035 1035 11. Buttons 1036 1036 1037 1037 |**Button**|**Feature** 1038 1038 |**RST**|Reboot RS485-BL 1039 1039 1040 -1. 1098 +1. 1041 1041 11. +3V3 Output 1042 1042 1043 1043 RS485-BL has a Controllable +3V3 output, user can use this output to power external sensor. ... ... @@ -1055,7 +1055,7 @@ 1055 1055 By default, the AT+3V3T=0. This is a special case, means the +3V3 output is always on at any time 1056 1056 1057 1057 1058 -1. 1116 +1. 1059 1059 11. +5V Output 1060 1060 1061 1061 RS485-BL has a Controllable +5V output, user can use this output to power external sensor. ... ... @@ -1075,13 +1075,13 @@ 1075 1075 1076 1076 1077 1077 1078 -1. 1136 +1. 1079 1079 11. LEDs 1080 1080 1081 1081 |**LEDs**|**Feature** 1082 1082 |**LED1**|Blink when device transmit a packet. 1083 1083 1084 -1. 1142 +1. 1085 1085 11. Switch Jumper 1086 1086 1087 1087 |**Switch Jumper**|**Feature** ... ... @@ -1127,7 +1127,7 @@ 1127 1127 1128 1128 1129 1129 1130 -1. 1188 +1. 1131 1131 11. Common AT Command Sequence 1132 1132 111. Multi-channel ABP mode (Use with SX1301/LG308) 1133 1133 ... ... @@ -1146,8 +1146,8 @@ 1146 1146 1147 1147 ATZ 1148 1148 1149 -1. 1150 -11. 1207 +1. 1208 +11. 1151 1151 111. Single-channel ABP mode (Use with LG01/LG02) 1152 1152 1153 1153 AT+FDR Reset Parameters to Factory Default, Keys Reserve ... ... @@ -1222,7 +1222,7 @@ 1222 1222 [[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image035.png]] [[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image036.png]] 1223 1223 1224 1224 1225 -1. 1283 +1. 1226 1226 11. How to change the LoRa Frequency Bands/Region? 1227 1227 1228 1228 User can follow the introduction for [[how to upgrade image>>path:#upgrade_image]]. When download the images, choose the required image file for download. ... ... @@ -1229,7 +1229,7 @@ 1229 1229 1230 1230 1231 1231 1232 -1. 1290 +1. 1233 1233 11. How many RS485-Slave can RS485-BL connects? 1234 1234 1235 1235 The RS485-BL can support max 32 RS485 devices. Each uplink command of RS485-BL can support max 16 different RS485 command. So RS485-BL can support max 16 RS485 devices pre-program in the device for uplink. For other devices no pre-program, user can use the [[downlink message (type code 0xA8) to poll their info>>path:#downlink_A8]]. ... ... @@ -1246,7 +1246,7 @@ 1246 1246 1247 1247 1248 1248 1249 -1. 1307 +1. 1250 1250 11. Why I can’t join TTN V3 in US915 /AU915 bands? 1251 1251 1252 1252 It might about the channels mapping. Please see for detail.
- 1654132684752-193.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +22.8 KB - Content
- 1654133913295-597.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +116.2 KB - Content
- 1654133954153-643.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +91.2 KB - Content
- 1654134704555-320.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +91.4 KB - Content