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
-
... ... @@ -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 ((( ... ... @@ -58,6 +58,7 @@ 58 58 59 59 == 1.2 Specifications == 60 60 61 + 61 61 **Hardware System:** 62 62 63 63 * STM32L072CZT6 MCU ... ... @@ -64,8 +64,6 @@ 64 64 * SX1276/78 Wireless Chip 65 65 * Power Consumption (exclude RS485 device): 66 66 ** Idle: 6uA@3.3v 67 - 68 -* 69 69 ** 20dB Transmit: 130mA@3.3v 70 70 71 71 **Interface for Model:** ... ... @@ -95,8 +95,6 @@ 95 95 * 127 dB Dynamic Range RSSI. 96 96 * Automatic RF Sense and CAD with ultra-fast AFC. 97 97 98 - 99 - 100 100 == 1.3 Features == 101 101 102 102 * LoRaWAN Class A & Class C protocol (default Class A) ... ... @@ -108,8 +108,6 @@ 108 108 * Support Modbus protocol 109 109 * Support Interrupt uplink 110 110 111 - 112 - 113 113 == 1.4 Applications == 114 114 115 115 * Smart Buildings & Home Automation ... ... @@ -119,8 +119,6 @@ 119 119 * Smart Cities 120 120 * Smart Factory 121 121 122 - 123 - 124 124 == 1.5 Firmware Change log == 125 125 126 126 [[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);"]] ... ... @@ -129,6 +129,8 @@ 129 129 == 1.6 Hardware Change log == 130 130 131 131 ((( 125 + 126 + 132 132 v1.4 133 133 ))) 134 134 ... ... @@ -211,8 +211,6 @@ 211 211 ))) 212 212 213 213 214 - 215 - 216 216 [[image:image-20220519174512-1.png]] 217 217 218 218 [[image:image-20220519174512-2.png||height="328" width="731"]] ... ... @@ -236,6 +236,7 @@ 236 236 237 237 [[image:1652953568895-172.png||height="232" width="724"]] 238 238 232 + 239 239 == 3.3 Configure Commands to read data == 240 240 241 241 ((( ... ... @@ -342,8 +342,9 @@ 342 342 mm: 0: no CRC, 1: add CRC-16/MODBUS in the end of this command 343 343 )))|(% style="width:256px" %)AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m 344 344 345 -Detail of AT+CFGDEV command see [[AT+CFGDEV detail>> path:#AT_CFGDEV]].339 +Detail of AT+CFGDEV command see [[AT+CFGDEV detail>>||anchor="HRS485DebugCommand28AT2BCFGDEV29"]]. 346 346 341 + 347 347 === 3.3.3 Configure read commands for each sampling === 348 348 349 349 ((( ... ... @@ -441,7 +441,7 @@ 441 441 442 442 **Examples:** 443 443 444 -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 445 445 446 446 If we set AT+SEARCH1=1,1E 56 34. (max 5 bytes for prefix) 447 447 ... ... @@ -449,7 +449,7 @@ 449 449 450 450 [[image:1653271044481-711.png]] 451 451 452 - 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 453 453 454 454 If we set AT+SEARCH1=2, 1E 56 34+31 00 49 455 455 ... ... @@ -468,16 +468,18 @@ 468 468 * **c: define the position for valid value. ** 469 469 ))) 470 470 471 -Examples: 466 +**Examples:** 472 472 473 473 * Grab bytes: 474 474 475 475 [[image:1653271581490-837.png||height="313" width="722"]] 476 476 472 + 477 477 * Grab a section. 478 478 479 479 [[image:1653271648378-342.png||height="326" width="720"]] 480 480 477 + 481 481 * Grab different sections. 482 482 483 483 [[image:1653271657255-576.png||height="305" width="730"]] ... ... @@ -520,6 +520,7 @@ 520 520 521 521 [[image:1653271763403-806.png]] 522 522 520 + 523 523 === 3.3.4 Compose the uplink payload === 524 524 525 525 ((( ... ... @@ -527,7 +527,7 @@ 527 527 ))) 528 528 529 529 ((( 530 -(% style="color:# 4f81bd" %)**Examples: AT+DATAUP=0**528 +(% style="color:#037691" %)**Examples: AT+DATAUP=0** 531 531 ))) 532 532 533 533 ((( ... ... @@ -539,7 +539,7 @@ 539 539 ))) 540 540 541 541 ((( 542 -(% 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** 543 543 ))) 544 544 545 545 ((( ... ... @@ -548,8 +548,12 @@ 548 548 549 549 [[image:1653272787040-634.png||height="515" width="719"]] 550 550 549 + 550 + 551 551 ((( 552 -(% style="color:#4f81bd" %)**Examples: AT+DATAUP=1** 552 +(% style="color:#037691" %)**Examples: AT+DATAUP=1** 553 + 554 + 553 553 ))) 554 554 555 555 ((( ... ... @@ -561,7 +561,7 @@ 561 561 ))) 562 562 563 563 ((( 564 -(% style="color:#4f81bd" %)Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA 566 +(% style="color:#4f81bd" %)**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA** 565 565 ))) 566 566 567 567 1. ((( ... ... @@ -584,6 +584,7 @@ 584 584 585 585 So totally there will be 3 uplinks for this sampling, each uplink includes 6 bytes DATA 586 586 589 + 587 587 DATA1=RETURN1 Valid Value = (% style="background-color:#4f81bd; color:white" %) 20 20 0a 33 90 41 588 588 589 589 DATA2=1^^st^^ ~~ 6^^th^^ byte of Valid value of RETURN10= (% style="background-color:#4f81bd; color:white" %)02 aa 05 81 0a 20 ... ... @@ -590,10 +590,12 @@ 590 590 591 591 DATA3=7^^th^^ ~~ 11^^th^^ bytes of Valid value of RETURN10 =(% style="background-color:#4f81bd; color:white" %) 20 20 20 2d 30 592 592 596 + 593 593 Below are the uplink payloads: 594 594 595 595 [[image:1653272901032-107.png]] 596 596 601 + 597 597 (% style="color:red" %)Notice: the Max bytes is according to the max support bytes in different Frequency Bands for lowest SF. As below: 598 598 599 599 ~* For AU915/AS923 bands, if UplinkDwell time=0, max 51 bytes for each uplink ( so 51 -5 = 46 max valid date) ... ... @@ -604,6 +604,8 @@ 604 604 605 605 ~* For all other bands: max 51 bytes for each uplink ( so 51 -5 = 46 max valid date). 606 606 612 + 613 + 607 607 === 3.3.5 Uplink on demand === 608 608 609 609 ((( ... ... @@ -620,6 +620,8 @@ 620 620 621 621 ((( 622 622 **0xA8 command**: Send a command to RS485-BL and uplink the output from sensors. 630 + 631 + 623 623 ))) 624 624 625 625 === 3.3.6 Uplink on Interrupt === ... ... @@ -628,6 +628,7 @@ 628 628 629 629 [[image:1653273818896-432.png]] 630 630 640 + 631 631 ((( 632 632 AT+INTMOD=0 Disable Interrupt 633 633 ))) ... ... @@ -642,6 +642,8 @@ 642 642 643 643 ((( 644 644 AT+INTMOD=3 Interrupt trigger by rising edge. 655 + 656 + 645 645 ))) 646 646 647 647 == 3.4 Uplink Payload == ... ... @@ -669,47 +669,49 @@ 669 669 Below is the decoder for the first 3 bytes. The rest bytes are dynamic depends on different RS485 sensors. 670 670 671 671 ((( 672 -function Decoder(bytes, port) { 684 +{{{function Decoder(bytes, port) {}}} 673 673 ))) 674 674 675 675 ((( 676 - ~/~/Payload Formats of RS485-BL Deceive688 +{{{//Payload Formats of RS485-BL Deceive}}} 677 677 ))) 678 678 679 679 ((( 680 -return { 692 +{{{return {}}} 681 681 ))) 682 682 683 683 ((( 684 - ~/~/Battery,units:V696 +{{{ //Battery,units:V}}} 685 685 ))) 686 686 687 687 ((( 688 - BatV:((bytes[0]<<8 | bytes[1])&0x7fff)/1000, 700 +{{{ BatV:((bytes[0]<<8 | bytes[1])&0x7fff)/1000,}}} 689 689 ))) 690 690 691 691 ((( 692 - ~/~/GPIO_EXTI704 +{{{ //GPIO_EXTI }}} 693 693 ))) 694 694 695 695 ((( 696 - EXTI_Trigger:(bytes[0] & 0x80)? "TRUE":"FALSE", 708 +{{{ EXTI_Trigger:(bytes[0] & 0x80)? "TRUE":"FALSE",}}} 697 697 ))) 698 698 699 699 ((( 700 - ~/~/payload of version712 +{{{ //payload of version}}} 701 701 ))) 702 702 703 703 ((( 704 - Pay_ver:bytes[2], 716 +{{{ Pay_ver:bytes[2],}}} 705 705 ))) 706 706 707 707 ((( 708 - }; 720 +{{{ }; }}} 709 709 ))) 710 710 711 711 ((( 712 - } 724 +} 725 + 726 + 713 713 ))) 714 714 715 715 ((( ... ... @@ -718,32 +718,33 @@ 718 718 719 719 [[image:1653274001211-372.png||height="192" width="732"]] 720 720 735 + 721 721 == 3.5 Configure RS485-BL via AT or Downlink == 722 722 723 -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 724 724 725 725 There are two kinds of Commands: 726 726 727 -* **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]] 728 728 729 -* **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: 730 730 731 -1. 732 -11. 733 -111. Common Commands: 734 734 735 - 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: === 736 736 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]] 737 737 738 -1. 739 -11. 740 -111. Sensor related commands: 741 741 742 -=== =ChooseDeviceType (RS485orTTL)====752 +=== 3.5.2 Sensor related commands: === 743 743 754 +(% class="wikigeneratedid" %) 755 +==== ==== 756 + 757 +==== **Choose Device Type (RS485 or TTL)** ==== 758 + 744 744 RS485-BL can connect to either RS485 sensors or TTL sensor. User need to specify what type of sensor need to connect. 745 745 746 -* AT Command 761 +* **AT Command** 747 747 748 748 **AT+MOD=1** ~/~/ Set to support RS485-MODBUS type sensors. User can connect multiply RS485 , Modbus sensors to the A / B pins. 749 749 ... ... @@ -750,17 +750,17 @@ 750 750 **AT+MOD=2** ~/~/ Set to support TTL Level sensors, User can connect one TTL Sensor to the TXD/RXD/GND pins. 751 751 752 752 753 -* Downlink Payload 768 +* **Downlink Payload** 754 754 755 -**0A aa** àsame as AT+MOD=aa770 +**0A aa** ~-~-> same as AT+MOD=aa 756 756 757 757 758 758 759 -==== [[RS485 Debug Command>>path:#downlink_A8]](AT+CFGDEV) ====774 +==== **RS485 Debug Command (AT+CFGDEV)** ==== 760 760 761 761 This command is used to configure the RS485 or TTL sensors; they won’t be used during sampling. 762 762 763 -* AT Command 778 +* **AT Command** 764 764 765 765 AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m 766 766 ... ... @@ -767,9 +767,8 @@ 767 767 m: 0: no CRC; 1: add CRC-16/MODBUS in the end of this command. 768 768 769 769 785 +* **Downlink Payload** 770 770 771 -* Downlink Payload 772 - 773 773 Format: A8 MM NN XX XX XX XX YY 774 774 775 775 Where: ... ... @@ -779,6 +779,7 @@ 779 779 * XX XX XX XX: RS485 command total NN bytes 780 780 * 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 781 781 796 + 782 782 **Example 1:** 783 783 784 784 To connect a Modbus Alarm with below commands. ... ... @@ -1042,13 +1042,13 @@ 1042 1042 1043 1043 1044 1044 1045 -1. 1060 +1. 1046 1046 11. Buttons 1047 1047 1048 1048 |**Button**|**Feature** 1049 1049 |**RST**|Reboot RS485-BL 1050 1050 1051 -1. 1066 +1. 1052 1052 11. +3V3 Output 1053 1053 1054 1054 RS485-BL has a Controllable +3V3 output, user can use this output to power external sensor. ... ... @@ -1066,7 +1066,7 @@ 1066 1066 By default, the AT+3V3T=0. This is a special case, means the +3V3 output is always on at any time 1067 1067 1068 1068 1069 -1. 1084 +1. 1070 1070 11. +5V Output 1071 1071 1072 1072 RS485-BL has a Controllable +5V output, user can use this output to power external sensor. ... ... @@ -1086,13 +1086,13 @@ 1086 1086 1087 1087 1088 1088 1089 -1. 1104 +1. 1090 1090 11. LEDs 1091 1091 1092 1092 |**LEDs**|**Feature** 1093 1093 |**LED1**|Blink when device transmit a packet. 1094 1094 1095 -1. 1110 +1. 1096 1096 11. Switch Jumper 1097 1097 1098 1098 |**Switch Jumper**|**Feature** ... ... @@ -1138,7 +1138,7 @@ 1138 1138 1139 1139 1140 1140 1141 -1. 1156 +1. 1142 1142 11. Common AT Command Sequence 1143 1143 111. Multi-channel ABP mode (Use with SX1301/LG308) 1144 1144 ... ... @@ -1157,8 +1157,8 @@ 1157 1157 1158 1158 ATZ 1159 1159 1160 -1. 1161 -11. 1175 +1. 1176 +11. 1162 1162 111. Single-channel ABP mode (Use with LG01/LG02) 1163 1163 1164 1164 AT+FDR Reset Parameters to Factory Default, Keys Reserve ... ... @@ -1233,7 +1233,7 @@ 1233 1233 [[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]] 1234 1234 1235 1235 1236 -1. 1251 +1. 1237 1237 11. How to change the LoRa Frequency Bands/Region? 1238 1238 1239 1239 User can follow the introduction for [[how to upgrade image>>path:#upgrade_image]]. When download the images, choose the required image file for download. ... ... @@ -1240,7 +1240,7 @@ 1240 1240 1241 1241 1242 1242 1243 -1. 1258 +1. 1244 1244 11. How many RS485-Slave can RS485-BL connects? 1245 1245 1246 1246 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]]. ... ... @@ -1257,7 +1257,7 @@ 1257 1257 1258 1258 1259 1259 1260 -1. 1275 +1. 1261 1261 11. Why I can’t join TTN V3 in US915 /AU915 bands? 1262 1262 1263 1263 It might about the channels mapping. Please see for detail.