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)
Details
- Page properties
-
- Content
-
... ... @@ -67,7 +67,6 @@ 67 67 ** Idle: 6uA@3.3v 68 68 ** 20dB Transmit: 130mA@3.3v 69 69 70 - 71 71 **Interface for Model:** 72 72 73 73 * 1 x RS485 Interface ... ... @@ -77,7 +77,6 @@ 77 77 * 1 x Interrupt Interface 78 78 * 1 x Controllable 5V output, max 79 79 80 - 81 81 **LoRa Spec:** 82 82 83 83 * Frequency Range: ... ... @@ -96,7 +96,6 @@ 96 96 * 127 dB Dynamic Range RSSI. 97 97 * Automatic RF Sense and CAD with ultra-fast AFC. 98 98 99 - 100 100 == 1.3 Features == 101 101 102 102 * LoRaWAN Class A & Class C protocol (default Class A) ... ... @@ -108,7 +108,6 @@ 108 108 * Support Modbus protocol 109 109 * Support Interrupt uplink 110 110 111 - 112 112 == 1.4 Applications == 113 113 114 114 * Smart Buildings & Home Automation ... ... @@ -118,7 +118,6 @@ 118 118 * Smart Cities 119 119 * Smart Factory 120 120 121 - 122 122 == 1.5 Firmware Change log == 123 123 124 124 [[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);"]] ... ... @@ -321,8 +321,6 @@ 321 321 ))) 322 322 ))) 323 323 324 - 325 - 326 326 === 3.3.2 Configure sensors === 327 327 328 328 ((( ... ... @@ -343,7 +343,7 @@ 343 343 mm: 0: no CRC, 1: add CRC-16/MODBUS in the end of this command 344 344 )))|(% style="width:256px" %)AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m 345 345 346 -Detail of AT+CFGDEV command see [[AT+CFGDEV detail>>||anchor="HRS485DebugCommand28AT2BCFGDEV29]]. 339 +Detail of AT+CFGDEV command see [[AT+CFGDEV detail>>||anchor="HRS485DebugCommand28AT2BCFGDEV29"]]. 347 347 348 348 349 349 === 3.3.3 Configure read commands for each sampling === ... ... @@ -443,7 +443,7 @@ 443 443 444 444 **Examples:** 445 445 446 -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 447 447 448 448 If we set AT+SEARCH1=1,1E 56 34. (max 5 bytes for prefix) 449 449 ... ... @@ -451,7 +451,7 @@ 451 451 452 452 [[image:1653271044481-711.png]] 453 453 454 - 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 455 455 456 456 If we set AT+SEARCH1=2, 1E 56 34+31 00 49 457 457 ... ... @@ -470,16 +470,18 @@ 470 470 * **c: define the position for valid value. ** 471 471 ))) 472 472 473 -Examples: 466 +**Examples:** 474 474 475 475 * Grab bytes: 476 476 477 477 [[image:1653271581490-837.png||height="313" width="722"]] 478 478 472 + 479 479 * Grab a section. 480 480 481 481 [[image:1653271648378-342.png||height="326" width="720"]] 482 482 477 + 483 483 * Grab different sections. 484 484 485 485 [[image:1653271657255-576.png||height="305" width="730"]] ... ... @@ -522,6 +522,7 @@ 522 522 523 523 [[image:1653271763403-806.png]] 524 524 520 + 525 525 === 3.3.4 Compose the uplink payload === 526 526 527 527 ((( ... ... @@ -529,7 +529,7 @@ 529 529 ))) 530 530 531 531 ((( 532 -(% style="color:# 4f81bd" %)**Examples: AT+DATAUP=0**528 +(% style="color:#037691" %)**Examples: AT+DATAUP=0** 533 533 ))) 534 534 535 535 ((( ... ... @@ -541,7 +541,7 @@ 541 541 ))) 542 542 543 543 ((( 544 -(% 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** 545 545 ))) 546 546 547 547 ((( ... ... @@ -550,8 +550,12 @@ 550 550 551 551 [[image:1653272787040-634.png||height="515" width="719"]] 552 552 549 + 550 + 553 553 ((( 554 -(% style="color:#4f81bd" %)**Examples: AT+DATAUP=1** 552 +(% style="color:#037691" %)**Examples: AT+DATAUP=1** 553 + 554 + 555 555 ))) 556 556 557 557 ((( ... ... @@ -563,7 +563,7 @@ 563 563 ))) 564 564 565 565 ((( 566 -(% style="color:#4f81bd" %)Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA 566 +(% style="color:#4f81bd" %)**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA** 567 567 ))) 568 568 569 569 1. ((( ... ... @@ -586,6 +586,7 @@ 586 586 587 587 So totally there will be 3 uplinks for this sampling, each uplink includes 6 bytes DATA 588 588 589 + 589 589 DATA1=RETURN1 Valid Value = (% style="background-color:#4f81bd; color:white" %) 20 20 0a 33 90 41 590 590 591 591 DATA2=1^^st^^ ~~ 6^^th^^ byte of Valid value of RETURN10= (% style="background-color:#4f81bd; color:white" %)02 aa 05 81 0a 20 ... ... @@ -592,10 +592,12 @@ 592 592 593 593 DATA3=7^^th^^ ~~ 11^^th^^ bytes of Valid value of RETURN10 =(% style="background-color:#4f81bd; color:white" %) 20 20 20 2d 30 594 594 596 + 595 595 Below are the uplink payloads: 596 596 597 597 [[image:1653272901032-107.png]] 598 598 601 + 599 599 (% style="color:red" %)Notice: the Max bytes is according to the max support bytes in different Frequency Bands for lowest SF. As below: 600 600 601 601 ~* For AU915/AS923 bands, if UplinkDwell time=0, max 51 bytes for each uplink ( so 51 -5 = 46 max valid date) ... ... @@ -606,6 +606,8 @@ 606 606 607 607 ~* For all other bands: max 51 bytes for each uplink ( so 51 -5 = 46 max valid date). 608 608 612 + 613 + 609 609 === 3.3.5 Uplink on demand === 610 610 611 611 ((( ... ... @@ -622,6 +622,8 @@ 622 622 623 623 ((( 624 624 **0xA8 command**: Send a command to RS485-BL and uplink the output from sensors. 630 + 631 + 625 625 ))) 626 626 627 627 === 3.3.6 Uplink on Interrupt === ... ... @@ -630,6 +630,7 @@ 630 630 631 631 [[image:1653273818896-432.png]] 632 632 640 + 633 633 ((( 634 634 AT+INTMOD=0 Disable Interrupt 635 635 ))) ... ... @@ -644,6 +644,8 @@ 644 644 645 645 ((( 646 646 AT+INTMOD=3 Interrupt trigger by rising edge. 655 + 656 + 647 647 ))) 648 648 649 649 == 3.4 Uplink Payload == ... ... @@ -671,47 +671,49 @@ 671 671 Below is the decoder for the first 3 bytes. The rest bytes are dynamic depends on different RS485 sensors. 672 672 673 673 ((( 674 -function Decoder(bytes, port) { 684 +{{{function Decoder(bytes, port) {}}} 675 675 ))) 676 676 677 677 ((( 678 - ~/~/Payload Formats of RS485-BL Deceive688 +{{{//Payload Formats of RS485-BL Deceive}}} 679 679 ))) 680 680 681 681 ((( 682 -return { 692 +{{{return {}}} 683 683 ))) 684 684 685 685 ((( 686 - ~/~/Battery,units:V696 +{{{ //Battery,units:V}}} 687 687 ))) 688 688 689 689 ((( 690 - BatV:((bytes[0]<<8 | bytes[1])&0x7fff)/1000, 700 +{{{ BatV:((bytes[0]<<8 | bytes[1])&0x7fff)/1000,}}} 691 691 ))) 692 692 693 693 ((( 694 - ~/~/GPIO_EXTI704 +{{{ //GPIO_EXTI }}} 695 695 ))) 696 696 697 697 ((( 698 - EXTI_Trigger:(bytes[0] & 0x80)? "TRUE":"FALSE", 708 +{{{ EXTI_Trigger:(bytes[0] & 0x80)? "TRUE":"FALSE",}}} 699 699 ))) 700 700 701 701 ((( 702 - ~/~/payload of version712 +{{{ //payload of version}}} 703 703 ))) 704 704 705 705 ((( 706 - Pay_ver:bytes[2], 716 +{{{ Pay_ver:bytes[2],}}} 707 707 ))) 708 708 709 709 ((( 710 - }; 720 +{{{ }; }}} 711 711 ))) 712 712 713 713 ((( 714 - } 724 +} 725 + 726 + 715 715 ))) 716 716 717 717 ((( ... ... @@ -720,32 +720,33 @@ 720 720 721 721 [[image:1653274001211-372.png||height="192" width="732"]] 722 722 735 + 723 723 == 3.5 Configure RS485-BL via AT or Downlink == 724 724 725 -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 726 726 727 727 There are two kinds of Commands: 728 728 729 -* **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]] 730 730 731 -* **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: 732 732 733 -1. 734 -11. 735 -111. Common Commands: 736 736 737 - Theyshould be available for each of Dragino Sensors, such as: change uplink interval, reset device.For firmware v1.3,user can find what commoncommandsit 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]]747 +=== 3.5.1 Common Commands: === 738 738 749 +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]] 739 739 740 -1. 741 -11. 742 -111. Sensor related commands: 743 743 744 -=== =ChooseDeviceType (RS485orTTL)====752 +=== 3.5.2 Sensor related commands: === 745 745 754 +(% class="wikigeneratedid" %) 755 +==== ==== 756 + 757 +==== **Choose Device Type (RS485 or TTL)** ==== 758 + 746 746 RS485-BL can connect to either RS485 sensors or TTL sensor. User need to specify what type of sensor need to connect. 747 747 748 -* AT Command 761 +* **AT Command** 749 749 750 750 **AT+MOD=1** ~/~/ Set to support RS485-MODBUS type sensors. User can connect multiply RS485 , Modbus sensors to the A / B pins. 751 751 ... ... @@ -752,17 +752,17 @@ 752 752 **AT+MOD=2** ~/~/ Set to support TTL Level sensors, User can connect one TTL Sensor to the TXD/RXD/GND pins. 753 753 754 754 755 -* Downlink Payload 768 +* **Downlink Payload** 756 756 757 -**0A aa** àsame as AT+MOD=aa770 +**0A aa** ~-~-> same as AT+MOD=aa 758 758 759 759 760 760 761 -==== [[RS485 Debug Command>>path:#downlink_A8]](AT+CFGDEV) ====774 +==== **RS485 Debug Command (AT+CFGDEV)** ==== 762 762 763 763 This command is used to configure the RS485 or TTL sensors; they won’t be used during sampling. 764 764 765 -* AT Command 778 +* **AT Command** 766 766 767 767 AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m 768 768 ... ... @@ -769,9 +769,8 @@ 769 769 m: 0: no CRC; 1: add CRC-16/MODBUS in the end of this command. 770 770 771 771 785 +* **Downlink Payload** 772 772 773 -* Downlink Payload 774 - 775 775 Format: A8 MM NN XX XX XX XX YY 776 776 777 777 Where: ... ... @@ -781,6 +781,7 @@ 781 781 * XX XX XX XX: RS485 command total NN bytes 782 782 * 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 783 783 796 + 784 784 **Example 1:** 785 785 786 786 To connect a Modbus Alarm with below commands.