Last modified by Xiaoling on 2025/04/23 15:57

From version 40.53
edited by Xiaoling
on 2022/06/06 10:50
Change comment: There is no comment for this version
To version 41.17
edited by Xiaoling
on 2022/06/06 11:05
Change comment: There is no comment for this version

Summary

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 -* **xx xx xx xx xx: match string. Max 5 bytes for prefix and 5 bytes for 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