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,8 +343,9 @@ 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>> path:#AT_CFGDEV]].339 +Detail of AT+CFGDEV command see [[AT+CFGDEV detail>>||anchor="HRS485DebugCommand28AT2BCFGDEV29"]]. 347 347 341 + 348 348 === 3.3.3 Configure read commands for each sampling === 349 349 350 350 ((( ... ... @@ -442,7 +442,7 @@ 442 442 443 443 **Examples:** 444 444 445 -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 446 446 447 447 If we set AT+SEARCH1=1,1E 56 34. (max 5 bytes for prefix) 448 448 ... ... @@ -450,7 +450,7 @@ 450 450 451 451 [[image:1653271044481-711.png]] 452 452 453 - 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 454 454 455 455 If we set AT+SEARCH1=2, 1E 56 34+31 00 49 456 456 ... ... @@ -469,16 +469,18 @@ 469 469 * **c: define the position for valid value. ** 470 470 ))) 471 471 472 -Examples: 466 +**Examples:** 473 473 474 474 * Grab bytes: 475 475 476 476 [[image:1653271581490-837.png||height="313" width="722"]] 477 477 472 + 478 478 * Grab a section. 479 479 480 480 [[image:1653271648378-342.png||height="326" width="720"]] 481 481 477 + 482 482 * Grab different sections. 483 483 484 484 [[image:1653271657255-576.png||height="305" width="730"]] ... ... @@ -521,6 +521,7 @@ 521 521 522 522 [[image:1653271763403-806.png]] 523 523 520 + 524 524 === 3.3.4 Compose the uplink payload === 525 525 526 526 ((( ... ... @@ -528,7 +528,7 @@ 528 528 ))) 529 529 530 530 ((( 531 -(% style="color:# 4f81bd" %)**Examples: AT+DATAUP=0**528 +(% style="color:#037691" %)**Examples: AT+DATAUP=0** 532 532 ))) 533 533 534 534 ((( ... ... @@ -540,7 +540,7 @@ 540 540 ))) 541 541 542 542 ((( 543 -(% 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** 544 544 ))) 545 545 546 546 ((( ... ... @@ -549,8 +549,12 @@ 549 549 550 550 [[image:1653272787040-634.png||height="515" width="719"]] 551 551 549 + 550 + 552 552 ((( 553 -(% style="color:#4f81bd" %)**Examples: AT+DATAUP=1** 552 +(% style="color:#037691" %)**Examples: AT+DATAUP=1** 553 + 554 + 554 554 ))) 555 555 556 556 ((( ... ... @@ -562,7 +562,7 @@ 562 562 ))) 563 563 564 564 ((( 565 -(% style="color:#4f81bd" %)Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA 566 +(% style="color:#4f81bd" %)**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA** 566 566 ))) 567 567 568 568 1. ((( ... ... @@ -585,6 +585,7 @@ 585 585 586 586 So totally there will be 3 uplinks for this sampling, each uplink includes 6 bytes DATA 587 587 589 + 588 588 DATA1=RETURN1 Valid Value = (% style="background-color:#4f81bd; color:white" %) 20 20 0a 33 90 41 589 589 590 590 DATA2=1^^st^^ ~~ 6^^th^^ byte of Valid value of RETURN10= (% style="background-color:#4f81bd; color:white" %)02 aa 05 81 0a 20 ... ... @@ -591,10 +591,12 @@ 591 591 592 592 DATA3=7^^th^^ ~~ 11^^th^^ bytes of Valid value of RETURN10 =(% style="background-color:#4f81bd; color:white" %) 20 20 20 2d 30 593 593 596 + 594 594 Below are the uplink payloads: 595 595 596 596 [[image:1653272901032-107.png]] 597 597 601 + 598 598 (% style="color:red" %)Notice: the Max bytes is according to the max support bytes in different Frequency Bands for lowest SF. As below: 599 599 600 600 ~* For AU915/AS923 bands, if UplinkDwell time=0, max 51 bytes for each uplink ( so 51 -5 = 46 max valid date) ... ... @@ -605,6 +605,8 @@ 605 605 606 606 ~* For all other bands: max 51 bytes for each uplink ( so 51 -5 = 46 max valid date). 607 607 612 + 613 + 608 608 === 3.3.5 Uplink on demand === 609 609 610 610 ((( ... ... @@ -621,6 +621,8 @@ 621 621 622 622 ((( 623 623 **0xA8 command**: Send a command to RS485-BL and uplink the output from sensors. 630 + 631 + 624 624 ))) 625 625 626 626 === 3.3.6 Uplink on Interrupt === ... ... @@ -629,6 +629,7 @@ 629 629 630 630 [[image:1653273818896-432.png]] 631 631 640 + 632 632 ((( 633 633 AT+INTMOD=0 Disable Interrupt 634 634 ))) ... ... @@ -643,6 +643,8 @@ 643 643 644 644 ((( 645 645 AT+INTMOD=3 Interrupt trigger by rising edge. 655 + 656 + 646 646 ))) 647 647 648 648 == 3.4 Uplink Payload == ... ... @@ -670,47 +670,49 @@ 670 670 Below is the decoder for the first 3 bytes. The rest bytes are dynamic depends on different RS485 sensors. 671 671 672 672 ((( 673 -function Decoder(bytes, port) { 684 +{{{function Decoder(bytes, port) {}}} 674 674 ))) 675 675 676 676 ((( 677 - ~/~/Payload Formats of RS485-BL Deceive688 +{{{//Payload Formats of RS485-BL Deceive}}} 678 678 ))) 679 679 680 680 ((( 681 -return { 692 +{{{return {}}} 682 682 ))) 683 683 684 684 ((( 685 - ~/~/Battery,units:V696 +{{{ //Battery,units:V}}} 686 686 ))) 687 687 688 688 ((( 689 - BatV:((bytes[0]<<8 | bytes[1])&0x7fff)/1000, 700 +{{{ BatV:((bytes[0]<<8 | bytes[1])&0x7fff)/1000,}}} 690 690 ))) 691 691 692 692 ((( 693 - ~/~/GPIO_EXTI704 +{{{ //GPIO_EXTI }}} 694 694 ))) 695 695 696 696 ((( 697 - EXTI_Trigger:(bytes[0] & 0x80)? "TRUE":"FALSE", 708 +{{{ EXTI_Trigger:(bytes[0] & 0x80)? "TRUE":"FALSE",}}} 698 698 ))) 699 699 700 700 ((( 701 - ~/~/payload of version712 +{{{ //payload of version}}} 702 702 ))) 703 703 704 704 ((( 705 - Pay_ver:bytes[2], 716 +{{{ Pay_ver:bytes[2],}}} 706 706 ))) 707 707 708 708 ((( 709 - }; 720 +{{{ }; }}} 710 710 ))) 711 711 712 712 ((( 713 - } 724 +} 725 + 726 + 714 714 ))) 715 715 716 716 ((( ... ... @@ -719,32 +719,33 @@ 719 719 720 720 [[image:1653274001211-372.png||height="192" width="732"]] 721 721 735 + 722 722 == 3.5 Configure RS485-BL via AT or Downlink == 723 723 724 -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 725 725 726 726 There are two kinds of Commands: 727 727 728 -* **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]] 729 729 730 -* **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: 731 731 732 -1. 733 -11. 734 -111. Common Commands: 735 735 736 - 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: === 737 737 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]] 738 738 739 -1. 740 -11. 741 -111. Sensor related commands: 742 742 743 -=== =ChooseDeviceType (RS485orTTL)====752 +=== 3.5.2 Sensor related commands: === 744 744 754 +(% class="wikigeneratedid" %) 755 +==== ==== 756 + 757 +==== **Choose Device Type (RS485 or TTL)** ==== 758 + 745 745 RS485-BL can connect to either RS485 sensors or TTL sensor. User need to specify what type of sensor need to connect. 746 746 747 -* AT Command 761 +* **AT Command** 748 748 749 749 **AT+MOD=1** ~/~/ Set to support RS485-MODBUS type sensors. User can connect multiply RS485 , Modbus sensors to the A / B pins. 750 750 ... ... @@ -751,9 +751,9 @@ 751 751 **AT+MOD=2** ~/~/ Set to support TTL Level sensors, User can connect one TTL Sensor to the TXD/RXD/GND pins. 752 752 753 753 754 -* Downlink Payload 768 +* **Downlink Payload** 755 755 756 -**0A aa** àsame as AT+MOD=aa770 +**0A aa** ~-~-> same as AT+MOD=aa 757 757 758 758 759 759