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

From version 41.16
edited by Xiaoling
on 2022/06/06 11:03
Change comment: There is no comment for this version
To version 40.49
edited by Xiaoling
on 2022/06/06 10:39
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -383,7 +383,6 @@
383 383  )))
384 384  
385 385  
386 -
387 387  === 3.3.2 Configure sensors ===
388 388  
389 389  (((
... ... @@ -395,8 +395,8 @@
395 395  )))
396 396  
397 397  (% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %)
398 -|=(% style="width: 120px;" %)**AT Commands**|=(% style="width: 190px;" %)**Description**|=(% style="width: 190px;" %)**Example**
399 -|AT+CFGDEV|(% style="width:120px" %)(((
397 +|=**AT Commands**|=(% style="width: 110px;" %)**Description**|=(% style="width: 190px;" %)**Example**
398 +|AT+CFGDEV|(% style="width:190px" %)(((
400 400  This command is used to configure the RS485/TTL devices; they won’t be used during sampling.
401 401  
402 402  AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,
... ... @@ -407,7 +407,6 @@
407 407  Detail of AT+CFGDEV command see [[AT+CFGDEV detail>>||anchor="HRS485DebugCommand28AT2BCFGDEV29"]].
408 408  
409 409  
410 -
411 411  === 3.3.3 Configure read commands for each sampling ===
412 412  
413 413  (((
... ... @@ -474,213 +474,117 @@
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 -(((
478 478  **Examples:**
479 -)))
480 480  
481 -(((
482 482  Below are examples for the how above AT Commands works.
483 -)))
484 484  
485 -(((
486 486  **AT+COMMANDx : **This command will be sent to RS485/TTL devices during each sampling, Max command length is 14 bytes. The grammar is:
487 -)))
488 488  
489 489  (% border="1" class="table-bordered" style="background-color:#4f81bd; color:white; width:500px" %)
490 490  |(% style="width:498px" %)(((
491 -(((
492 492  **AT+COMMANDx=xx xx xx xx xx xx xx xx xx xx xx xx,m**
493 -)))
494 494  
495 -(((
496 496  **xx xx xx xx xx xx xx xx xx xx xx xx: The RS485 command to be sent**
497 -)))
498 498  
499 -(((
500 500  **m: 0: no CRC, 1: add CRC-16/MODBUS in the end of this command**
501 501  )))
502 -)))
503 503  
504 -(((
505 505  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 -)))
507 507  
508 -(((
509 509  In the RS485-BL, we should use this command AT+COMMAND1=01 03 0B B8 00 02,1 for the same.
510 -)))
511 511  
512 -(((
513 -
514 -)))
515 -
516 -(((
517 517  **AT+SEARCHx**: This command defines how to handle the return from AT+COMMANDx.
518 -)))
519 519  
520 520  (% border="1" class="table-bordered" style="background-color:#4f81bd; color:white; width:500px" %)
521 521  |(% style="width:577px" %)(((
522 -(((
523 523  **AT+SEARCHx=aa,xx xx xx xx xx**
524 -)))
525 525  
526 -* (((
527 -**aa: 1: prefix match mode; 2: prefix and suffix match mode**
500 +* **aa: 1: prefix match mode; 2: prefix and suffix match mode**
501 +* **xx xx xx xx xx: match string. Max 5 bytes for prefix and 5 bytes for suffix**
528 528  )))
529 -* (((
530 -**xx xx xx xx xx: match string. Max 5 bytes for prefix and 5 bytes for suffix**
531 -)))
532 -)))
533 533  
534 -(((
535 535  **Examples:**
536 -)))
537 537  
538 -(((
539 539  1)For a return string from AT+COMMAND1: 16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49
540 -)))
541 541  
542 -(((
543 543  If we set AT+SEARCH1=1,1E 56 34.      (max 5 bytes for prefix)
544 -)))
545 545  
546 -(((
547 547  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 -)))
549 549  
550 -(((
551 551  [[image:1653271044481-711.png]]
552 -)))
553 553  
554 -(((
555 555  2)For a return string from AT+COMMAND1:  16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49
556 -)))
557 557  
558 -(((
559 559  If we set AT+SEARCH1=2, 1E 56 34+31 00 49
560 -)))
561 561  
562 -(((
563 563  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 -)))
565 565  
566 -(((
567 567  [[image:1653271276735-972.png]]
568 -)))
569 569  
570 -(((
571 571  **AT+DATACUTx : **This command defines how to handle the return from AT+COMMANDx, max return length is 45 bytes.
572 -)))
573 573  
574 574  (% style="background-color:#4f81bd; color:white; width:510px" %)
575 575  |(% style="width:726px" %)(((
576 -(((
577 577  **AT+DATACUTx=a,b,c**
578 -)))
579 579  
580 -* (((
581 -**a: length for the return of AT+COMMAND**
528 +* **a: length for the return of AT+COMMAND**
529 +* **b:1: grab valid value by byte, max 6 bytes. 2: grab valid value by bytes section, max 3 sections.**
530 +* **c: define the position for valid value.  **
582 582  )))
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 -)))
590 590  
591 -(((
592 592  **Examples:**
593 -)))
594 594  
595 -* (((
596 -Grab bytes:
597 -)))
535 +* Grab bytes:
598 598  
599 -(((
600 600  [[image:1653271581490-837.png||height="313" width="722"]]
601 -)))
602 602  
603 -(((
604 -
605 -)))
606 606  
607 -* (((
608 -Grab a section.
609 -)))
540 +* Grab a section.
610 610  
611 -(((
612 612  [[image:1653271648378-342.png||height="326" width="720"]]
613 -)))
614 614  
615 -(((
616 -
617 -)))
618 618  
619 -* (((
620 -Grab different sections.
621 -)))
545 +* Grab different sections.
622 622  
623 -(((
624 624  [[image:1653271657255-576.png||height="305" width="730"]]
625 -)))
626 626  
627 627  (((
628 -(((
629 629  (% style="color:red" %)**Note:**
630 630  )))
631 -)))
632 632  
633 633  (((
634 -(((
635 635  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.
636 636  )))
637 -)))
638 638  
639 639  (((
640 -(((
641 641  **Example:**
642 642  )))
643 -)))
644 644  
645 645  (((
646 -(((
647 647  (% style="color:red" %)AT+COMMAND1=11 01 1E D0,0
648 648  )))
649 -)))
650 650  
651 651  (((
652 -(((
653 653  (% style="color:red" %)AT+SEARCH1=1,1E 56 34
654 654  )))
655 -)))
656 656  
657 657  (((
658 -(((
659 659  (% style="color:red" %)AT+DATACUT1=0,2,1~~5
660 660  )))
661 -)))
662 662  
663 663  (((
664 -(((
665 665  (% style="color:red" %)Return string from AT+COMMAND1: 16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49
666 666  )))
667 -)))
668 668  
669 669  (((
670 -(((
671 671  (% style="color:red" %)String after SEARCH command: 2e 30 58 5f 36 41 30 31 00 49
672 672  )))
673 -)))
674 674  
675 675  (((
676 -(((
677 677  (% style="color:red" %)Valid payload after DataCUT command: 2e 30 58 5f 36
678 678  )))
679 -)))
680 680  
681 -(((
682 682  [[image:1653271763403-806.png]]
683 -)))
684 684  
685 685  
686 686  === 3.3.4 Compose the uplink payload ===
... ... @@ -687,14 +687,10 @@
687 687  
688 688  (((
689 689  Through AT+COMMANDx and AT+DATACUTx we got valid value from each RS485 commands, Assume these valid value are RETURN1, RETURN2, .., to RETURNx. The next step is how to compose the LoRa Uplink Payload by these RETURNs. The command is **AT+DATAUP.**
690 -
691 -
692 692  )))
693 693  
694 694  (((
695 695  (% style="color:#037691" %)**Examples: AT+DATAUP=0**
696 -
697 -
698 698  )))
699 699  
700 700  (((
... ... @@ -827,8 +827,26 @@
827 827  
828 828  == 3.4 Uplink Payload ==
829 829  
830 -[[image:image-20220606105412-1.png]]
728 +(% border="1" style="background-color:#4f81bd; color:white; width:850px" %)
729 +|**Size(bytes)**|(% style="width:130px" %)**2**|(% style="width:93px" %)**1**|(% style="width:509px" %)**Length depends on the return from the commands**
730 +|Value|(% style="width:130px" %)(((
731 +(((
732 +Battery(mV)
733 +)))
831 831  
735 +(((
736 +&
737 +)))
738 +
739 +(((
740 +Interrupt _Flag
741 +)))
742 +)))|(% style="width:93px" %)(((
743 +PAYLOAD_VER
744 +
745 +
746 +)))|(% 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.
747 +
832 832  Below is the decoder for the first 3 bytes. The rest bytes are dynamic depends on different RS485 sensors.
833 833  
834 834  (((
... ... @@ -894,8 +894,6 @@
894 894  
895 895  * (% style="color:#4f81bd" %)**Sensor Related Commands**(%%): These commands are special designed for RS485-BL.  User can see these commands below:
896 896  
897 -
898 -
899 899  === 3.5.1 Common Commands: ===
900 900  
901 901  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]]
... ... @@ -904,7 +904,6 @@
904 904  === 3.5.2 Sensor related commands: ===
905 905  
906 906  
907 -
908 908  ==== **Choose Device Type (RS485 or TTL)** ====
909 909  
910 910  RS485-BL can connect to either RS485 sensors or TTL sensor. User need to specify what type of sensor need to connect.
... ... @@ -928,7 +928,6 @@
928 928  
929 929  
930 930  
931 -
932 932  ==== **RS485 Debug Command (AT+CFGDEV)** ====
933 933  
934 934  This command is used to configure the RS485 or TTL sensors; they won’t be used during sampling.
... ... @@ -980,7 +980,6 @@
980 980  
981 981  
982 982  
983 -
984 984  ==== **Set Payload version** ====
985 985  
986 986  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.
... ... @@ -1001,7 +1001,6 @@
1001 1001  
1002 1002  
1003 1003  
1004 -
1005 1005  ==== **Set RS485 Sampling Commands** ====
1006 1006  
1007 1007  AT+COMMANDx, AT+DATACUTx and AT+SEARCHx
... ... @@ -1063,7 +1063,6 @@
1063 1063  
1064 1064  
1065 1065  
1066 -
1067 1067  ==== **Fast command to handle MODBUS device** ====
1068 1068  
1069 1069  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]].
... ... @@ -1097,7 +1097,6 @@
1097 1097  
1098 1098  
1099 1099  
1100 -
1101 1101  ==== **RS485 command timeout** ====
1102 1102  
1103 1103  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.
... ... @@ -1129,7 +1129,6 @@
1129 1129  
1130 1130  
1131 1131  
1132 -
1133 1133  ==== **Uplink payload mode** ====
1134 1134  
1135 1135  Define to use one uplink or multiple uplinks for the sampling.
... ... @@ -1176,9 +1176,7 @@
1176 1176  
1177 1177  * **AT Command:**
1178 1178  
1179 -(((
1180 1180  (% 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
1181 -)))
1182 1182  
1183 1183  Example screen shot after clear all RS485 commands. 
1184 1184  
... ... @@ -1194,7 +1194,6 @@
1194 1194  
1195 1195  
1196 1196  
1197 -
1198 1198  ==== **Set Serial Communication Parameters** ====
1199 1199  
1200 1200  Set the Rs485 serial communication parameters:
... ... @@ -1238,7 +1238,6 @@
1238 1238  
1239 1239  
1240 1240  
1241 -
1242 1242  ==== **Control output power duration** ====
1243 1243  
1244 1244  User can set the output power duration before each sampling.
... ... @@ -1266,8 +1266,6 @@
1266 1266  |=(% style="width: 89px;" %)**Button**|=(% style="width: 141px;" %)**Feature**
1267 1267  |(% style="width:89px" %)**RST**|(% style="width:141px" %)Reboot RS485-BL
1268 1268  
1269 -
1270 -
1271 1271  == 3.7 +3V3 Output ==
1272 1272  
1273 1273  RS485-BL has a Controllable +3V3 output, user can use this output to power external sensor.
image-20220606105412-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -13.9 KB
Content