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
-
... ... @@ -474,117 +474,213 @@ 474 474 After we got the valid value from each RS485 commands, we need to combine them together with the command **AT+DATAUP**. 475 475 ))) 476 476 477 +((( 477 477 **Examples:** 479 +))) 478 478 481 +((( 479 479 Below are examples for the how above AT Commands works. 483 +))) 480 480 485 +((( 481 481 **AT+COMMANDx : **This command will be sent to RS485/TTL devices during each sampling, Max command length is 14 bytes. The grammar is: 487 +))) 482 482 483 483 (% border="1" class="table-bordered" style="background-color:#4f81bd; color:white; width:500px" %) 484 484 |(% style="width:498px" %)((( 491 +((( 485 485 **AT+COMMANDx=xx xx xx xx xx xx xx xx xx xx xx xx,m** 493 +))) 486 486 495 +((( 487 487 **xx xx xx xx xx xx xx xx xx xx xx xx: The RS485 command to be sent** 497 +))) 488 488 499 +((( 489 489 **m: 0: no CRC, 1: add CRC-16/MODBUS in the end of this command** 490 490 ))) 502 +))) 491 491 504 +((( 492 492 For example, if we have a RS485 sensor. The command to get sensor value is: 01 03 0B B8 00 02 46 0A. Where 01 03 0B B8 00 02 is the Modbus command to read the register 0B B8 where stored the sensor value. The 46 0A is the CRC-16/MODBUS which calculate manually. 506 +))) 493 493 508 +((( 494 494 In the RS485-BL, we should use this command AT+COMMAND1=01 03 0B B8 00 02,1 for the same. 510 +))) 495 495 512 +((( 513 + 514 +))) 515 + 516 +((( 496 496 **AT+SEARCHx**: This command defines how to handle the return from AT+COMMANDx. 518 +))) 497 497 498 498 (% border="1" class="table-bordered" style="background-color:#4f81bd; color:white; width:500px" %) 499 499 |(% style="width:577px" %)((( 522 +((( 500 500 **AT+SEARCHx=aa,xx xx xx xx xx** 524 +))) 501 501 502 -* **aa: 1: prefix match mode; 2: prefix and suffix match mode**503 -* *xxxxxxxx xx:matchstring. Max 5 bytesforprefix and5 bytesfor suffix**526 +* ((( 527 +**aa: 1: prefix match mode; 2: prefix and suffix match mode** 504 504 ))) 529 +* ((( 530 +**xx xx xx xx xx: match string. Max 5 bytes for prefix and 5 bytes for suffix** 531 +))) 532 +))) 505 505 534 +((( 506 506 **Examples:** 536 +))) 507 507 538 +((( 508 508 1)For a return string from AT+COMMAND1: 16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49 540 +))) 509 509 542 +((( 510 510 If we set AT+SEARCH1=1,1E 56 34. (max 5 bytes for prefix) 544 +))) 511 511 546 +((( 512 512 The valid data will be all bytes after 1E 56 34 , so it is (% style="background-color:yellow" %)**2e 30 58 5f 36 41 30 31 00 49** 548 +))) 513 513 550 +((( 514 514 [[image:1653271044481-711.png]] 552 +))) 515 515 554 +((( 516 516 2)For a return string from AT+COMMAND1: 16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49 556 +))) 517 517 558 +((( 518 518 If we set AT+SEARCH1=2, 1E 56 34+31 00 49 560 +))) 519 519 562 +((( 520 520 Device will search the bytes between 1E 56 34 and 31 00 49. So it is(% style="background-color:yellow" %) **2e 30 58 5f 36 41 30** 564 +))) 521 521 566 +((( 522 522 [[image:1653271276735-972.png]] 568 +))) 523 523 570 +((( 524 524 **AT+DATACUTx : **This command defines how to handle the return from AT+COMMANDx, max return length is 45 bytes. 572 +))) 525 525 526 526 (% style="background-color:#4f81bd; color:white; width:510px" %) 527 527 |(% style="width:726px" %)((( 576 +((( 528 528 **AT+DATACUTx=a,b,c** 578 +))) 529 529 530 -* **a: length for the return of AT+COMMAND** 531 -* **b:1: grab valid value by byte, max 6 bytes. 2: grab valid value by bytes section, max 3 sections.** 532 -* **c: define the position for valid value. ** 580 +* ((( 581 +**a: length for the return of AT+COMMAND** 533 533 ))) 583 +* ((( 584 +**b:1: grab valid value by byte, max 6 bytes. 2: grab valid value by bytes section, max 3 sections.** 585 +))) 586 +* ((( 587 +**c: define the position for valid value. ** 588 +))) 589 +))) 534 534 591 +((( 535 535 **Examples:** 593 +))) 536 536 537 -* Grab bytes: 595 +* ((( 596 +Grab bytes: 597 +))) 538 538 599 +((( 539 539 [[image:1653271581490-837.png||height="313" width="722"]] 601 +))) 540 540 603 +((( 604 + 605 +))) 541 541 542 -* Grab a section. 607 +* ((( 608 +Grab a section. 609 +))) 543 543 611 +((( 544 544 [[image:1653271648378-342.png||height="326" width="720"]] 613 +))) 545 545 615 +((( 616 + 617 +))) 546 546 547 -* Grab different sections. 619 +* ((( 620 +Grab different sections. 621 +))) 548 548 623 +((( 549 549 [[image:1653271657255-576.png||height="305" width="730"]] 625 +))) 550 550 551 551 ((( 628 +((( 552 552 (% style="color:red" %)**Note:** 553 553 ))) 631 +))) 554 554 555 555 ((( 634 +((( 556 556 AT+SEARCHx and AT+DATACUTx can be used together, if both commands are set, RS485-BL will first process AT+SEARCHx on the return string and get a temporary string, and then process AT+DATACUTx on this temporary string to get the final payload. In this case, AT+DATACUTx need to set to format AT+DATACUTx=0,xx,xx where the return bytes set to 0. 557 557 ))) 637 +))) 558 558 559 559 ((( 640 +((( 560 560 **Example:** 561 561 ))) 643 +))) 562 562 563 563 ((( 646 +((( 564 564 (% style="color:red" %)AT+COMMAND1=11 01 1E D0,0 565 565 ))) 649 +))) 566 566 567 567 ((( 652 +((( 568 568 (% style="color:red" %)AT+SEARCH1=1,1E 56 34 569 569 ))) 655 +))) 570 570 571 571 ((( 658 +((( 572 572 (% style="color:red" %)AT+DATACUT1=0,2,1~~5 573 573 ))) 661 +))) 574 574 575 575 ((( 664 +((( 576 576 (% style="color:red" %)Return string from AT+COMMAND1: 16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49 577 577 ))) 667 +))) 578 578 579 579 ((( 670 +((( 580 580 (% style="color:red" %)String after SEARCH command: 2e 30 58 5f 36 41 30 31 00 49 581 581 ))) 673 +))) 582 582 583 583 ((( 676 +((( 584 584 (% style="color:red" %)Valid payload after DataCUT command: 2e 30 58 5f 36 585 585 ))) 679 +))) 586 586 681 +((( 587 587 [[image:1653271763403-806.png]] 683 +))) 588 588 589 589 590 590 === 3.3.4 Compose the uplink payload === ... ... @@ -731,26 +731,8 @@ 731 731 732 732 == 3.4 Uplink Payload == 733 733 734 -(% border="1" style="background-color:#4f81bd; color:white; width:850px" %) 735 -|**Size(bytes)**|(% style="width:130px" %)**2**|(% style="width:93px" %)**1**|(% style="width:509px" %)**Length depends on the return from the commands** 736 -|Value|(% style="width:130px" %)((( 737 -((( 738 -Battery(mV) 739 -))) 830 +[[image:image-20220606105412-1.png]] 740 740 741 -((( 742 -& 743 -))) 744 - 745 -((( 746 -Interrupt _Flag 747 -))) 748 -)))|(% style="width:93px" %)((( 749 -PAYLOAD_VER 750 - 751 - 752 -)))|(% style="width:509px" %)If the valid payload is too long and exceed the maximum support payload length in server, server will show payload not provided in the LoRaWAN server. 753 - 754 754 Below is the decoder for the first 3 bytes. The rest bytes are dynamic depends on different RS485 sensors. 755 755 756 756 ((( ... ... @@ -808,14 +808,24 @@ 808 808 809 809 == 3.5 Configure RS485-BL via AT or Downlink == 810 810 889 +((( 811 811 User can configure RS485-BL via AT Commands or LoRaWAN Downlink Commands 891 +))) 812 812 893 +((( 813 813 There are two kinds of Commands: 895 +))) 814 814 815 -* (% 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: [[AT Commands and Downlink Command>>doc:Main.End Device AT Commands and Downlink Command.WebHome]] 897 +* ((( 898 +(% 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: [[AT Commands and Downlink Command>>doc:Main.End Device AT Commands and Downlink Command.WebHome]] 899 +))) 816 816 817 -* (% style="color:#4f81bd" %)**Sensor Related Commands**(%%): These commands are special designed for RS485-BL. User can see these commands below: 901 +* ((( 902 +(% style="color:#4f81bd" %)**Sensor Related Commands**(%%): These commands are special designed for RS485-BL. User can see these commands below: 903 +))) 818 818 905 + 906 + 819 819 === 3.5.1 Common Commands: === 820 820 821 821 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]] ... ... @@ -824,6 +824,7 @@ 824 824 === 3.5.2 Sensor related commands: === 825 825 826 826 915 + 827 827 ==== **Choose Device Type (RS485 or TTL)** ==== 828 828 829 829 RS485-BL can connect to either RS485 sensors or TTL sensor. User need to specify what type of sensor need to connect. ... ... @@ -847,6 +847,7 @@ 847 847 848 848 849 849 939 + 850 850 ==== **RS485 Debug Command (AT+CFGDEV)** ==== 851 851 852 852 This command is used to configure the RS485 or TTL sensors; they won’t be used during sampling. ... ... @@ -898,6 +898,7 @@ 898 898 899 899 900 900 991 + 901 901 ==== **Set Payload version** ==== 902 902 903 903 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. ... ... @@ -918,6 +918,7 @@ 918 918 919 919 920 920 1012 + 921 921 ==== **Set RS485 Sampling Commands** ==== 922 922 923 923 AT+COMMANDx, AT+DATACUTx and AT+SEARCHx ... ... @@ -979,6 +979,7 @@ 979 979 980 980 981 981 1074 + 982 982 ==== **Fast command to handle MODBUS device** ==== 983 983 984 984 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]]. ... ... @@ -1012,6 +1012,7 @@ 1012 1012 1013 1013 1014 1014 1108 + 1015 1015 ==== **RS485 command timeout** ==== 1016 1016 1017 1017 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. ... ... @@ -1043,6 +1043,7 @@ 1043 1043 1044 1044 1045 1045 1140 + 1046 1046 ==== **Uplink payload mode** ==== 1047 1047 1048 1048 Define to use one uplink or multiple uplinks for the sampling. ... ... @@ -1089,7 +1089,9 @@ 1089 1089 1090 1090 * **AT Command:** 1091 1091 1187 +((( 1092 1092 (% style="color:#037691" %)**AT+CMDEAR=mm,nn** (%%) mm: start position of erase ,nn: stop position of erase Etc. AT+CMDEAR=1,10 means erase AT+COMMAND1/AT+DATACUT1 to AT+COMMAND10/AT+DATACUT10 1189 +))) 1093 1093 1094 1094 Example screen shot after clear all RS485 commands. 1095 1095 ... ... @@ -1105,6 +1105,7 @@ 1105 1105 1106 1106 1107 1107 1205 + 1108 1108 ==== **Set Serial Communication Parameters** ==== 1109 1109 1110 1110 Set the Rs485 serial communication parameters: ... ... @@ -1148,6 +1148,7 @@ 1148 1148 1149 1149 1150 1150 1249 + 1151 1151 ==== **Control output power duration** ==== 1152 1152 1153 1153 User can set the output power duration before each sampling. ... ... @@ -1175,6 +1175,8 @@ 1175 1175 |=(% style="width: 89px;" %)**Button**|=(% style="width: 141px;" %)**Feature** 1176 1176 |(% style="width:89px" %)**RST**|(% style="width:141px" %)Reboot RS485-BL 1177 1177 1277 + 1278 + 1178 1178 == 3.7 +3V3 Output == 1179 1179 1180 1180 RS485-BL has a Controllable +3V3 output, user can use this output to power external sensor.
- image-20220606105412-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +13.9 KB - Content