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

From version 40.10
edited by Xiaoling
on 2022/06/06 09:18
Change comment: There is no comment for this version
To version 17.1
edited by Xiaoling
on 2022/05/19 18:04
Change comment: Uploaded new attachment "1652954654347-831.png", version {1}

Summary

Details

Page properties
Content
... ... @@ -7,15 +7,12 @@
7 7  **RS485-BL – Waterproof RS485 to LoRaWAN Converter User Manual**
8 8  
9 9  
10 -
11 11  **Table of Contents:**
12 12  
13 -{{toc/}}
14 14  
15 15  
16 16  
17 17  
18 -
19 19  = 1.Introduction =
20 20  
21 21  == 1.1 What is RS485-BL RS485 to LoRaWAN Converter ==
... ... @@ -25,19 +25,19 @@
25 25  )))
26 26  
27 27  (((
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.
25 +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.
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 (% 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.
29 +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.
33 33  )))
34 34  
35 35  (((
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.
33 +RS485-BL is IP67 **waterproof** and powered by **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 (% 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.
37 +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.
41 41  )))
42 42  
43 43  (((
... ... @@ -54,11 +54,8 @@
54 54  
55 55  [[image:1652953304999-717.png||height="424" width="733"]]
56 56  
57 -
58 -
59 59  == 1.2 Specifications ==
60 60  
61 -
62 62  **Hardware System:**
63 63  
64 64  * STM32L072CZT6 MCU
... ... @@ -65,6 +65,8 @@
65 65  * SX1276/78 Wireless Chip 
66 66  * Power Consumption (exclude RS485 device):
67 67  ** Idle: 6uA@3.3v
62 +
63 +*
68 68  ** 20dB Transmit: 130mA@3.3v
69 69  
70 70  **Interface for Model:**
... ... @@ -118,12 +118,9 @@
118 118  
119 119  [[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);"]]
120 120  
121 -
122 122  == 1.6 Hardware Change log ==
123 123  
124 124  (((
125 -
126 -
127 127  v1.4
128 128  )))
129 129  
... ... @@ -147,8 +147,6 @@
147 147  
148 148  (((
149 149  Release version ​​​​​
150 -
151 -
152 152  )))
153 153  
154 154  = 2. Pin mapping and Power ON Device =
... ... @@ -162,7 +162,6 @@
162 162  
163 163  The Left TXD and RXD are TTL interface for external sensor. TTL level is controlled by 3.3/5v Jumper.
164 164  
165 -
166 166  = 3. Operation Mode =
167 167  
168 168  == 3.1 How it works? ==
... ... @@ -169,8 +169,6 @@
169 169  
170 170  (((
171 171  The RS485-BL is configured as LoRaWAN OTAA Class A mode by default. It has OTAA keys to join network. To connect a local LoRaWAN network, user just need to input the OTAA keys in the network server and power on the RS485-BL. It will auto join the network via OTAA.
172 -
173 -
174 174  )))
175 175  
176 176  == 3.2 Example to join LoRaWAN network ==
... ... @@ -206,6 +206,8 @@
206 206  )))
207 207  
208 208  
197 +
198 +
209 209  [[image:image-20220519174512-1.png]]
210 210  
211 211  [[image:image-20220519174512-2.png||height="328" width="731"]]
... ... @@ -229,13 +229,10 @@
229 229  
230 230  [[image:1652953568895-172.png||height="232" width="724"]]
231 231  
232 -
233 233  == 3.3 Configure Commands to read data ==
234 234  
235 235  (((
236 -There are plenty of RS485 and TTL level devices in the market and each device has different command to read the valid data. To support these devices in flexible, RS485-BL supports flexible command set. User can use [[AT Commands or LoRaWAN Downlink>>||anchor="H3.5ConfigureRS485-BLviaATorDownlink"]] Command to configure how RS485-BL should read the sensor and how to handle the return from RS485 or TTL sensors.
237 -
238 -
225 +There are plenty of RS485 and TTL level devices in the market and each device has different command to read the valid data. To support these devices in flexible, RS485-BL supports flexible command set. User can use [[AT Commands or LoRaWAN Downlink>>path:#AT_COMMAND]] Command to configure how RS485-BL should read the sensor and how to handle the return from RS485 or TTL sensors.
239 239  )))
240 240  
241 241  === 3.3.1 onfigure UART settings for RS485 or TTL communication ===
... ... @@ -336,9 +336,8 @@
336 336  mm: 0: no CRC, 1: add CRC-16/MODBUS in the end of this command
337 337  )))|(% style="width:256px" %)AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m
338 338  
339 -Detail of AT+CFGDEV command see [[AT+CFGDEV detail>>||anchor="HRS485DebugCommand28AT2BCFGDEV29"]].
326 +Detail of AT+CFGDEV command see [[AT+CFGDEV detail>>path:#AT_CFGDEV]].
340 340  
341 -
342 342  === 3.3.3 Configure read commands for each sampling ===
343 343  
344 344  (((
... ... @@ -411,8 +411,8 @@
411 411  
412 412  **AT+COMMANDx : **This command will be sent to RS485/TTL devices during each sampling, Max command length is 14 bytes. The grammar is:
413 413  
414 -(% border="1" class="table-bordered" style="background-color:#4f81bd; color:white; width:501px" %)
415 -|(% style="width:498px" %)(((
400 +(% border="1" class="table-bordered" %)
401 +|(((
416 416  **AT+COMMANDx=xx xx xx xx xx xx xx xx xx xx xx xx,m**
417 417  
418 418  **xx xx xx xx xx xx xx xx xx xx xx xx: The RS485 command to be sent**
... ... @@ -426,36 +426,39 @@
426 426  
427 427  **AT+SEARCHx**: This command defines how to handle the return from AT+COMMANDx.
428 428  
429 -(% border="1" class="table-bordered" style="background-color:#4f81bd; color:white; width:580px" %)
430 -|(% style="width:577px" %)(((
415 +(% border="1" class="table-bordered" %)
416 +|(((
431 431  **AT+SEARCHx=aa,xx xx xx xx xx**
432 432  
433 433  * **aa: 1: prefix match mode; 2: prefix and suffix match mode**
434 434  * **xx xx xx xx xx: match string. Max 5 bytes for prefix and 5 bytes for suffix**
421 +
422 +
435 435  )))
436 436  
437 -**Examples:**
425 +Examples:
438 438  
439 -1For a return string from AT+COMMAND1: 16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49
427 +1. For a return string from AT+COMMAND1: 16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49
440 440  
441 441  If we set AT+SEARCH1=1,1E 56 34.      (max 5 bytes for prefix)
442 442  
443 -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**
431 +The valid data will be all bytes after 1E 56 34 , so it is 2e 30 58 5f 36 41 30 31 00 49
444 444  
445 -[[image:1653271044481-711.png]]
433 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image013.png]]
446 446  
447 -2)For a return string from AT+COMMAND1:  16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49
448 448  
436 +1. For a return string from AT+COMMAND1:  16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49
437 +
449 449  If we set AT+SEARCH1=2, 1E 56 34+31 00 49
450 450  
451 -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**
440 +Device will search the bytes between 1E 56 34 and 31 00 49. So it is 2e 30 58 5f 36 41 30
452 452  
453 -[[image:1653271276735-972.png]]
442 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image014.png]]
454 454  
444 +
455 455  **AT+DATACUTx : **This command defines how to handle the return from AT+COMMANDx, max return length is 45 bytes.
456 456  
457 -(% style="background-color:#4f81bd; color:white; width:729px" %)
458 -|(% style="width:726px" %)(((
447 +|(((
459 459  **AT+DATACUTx=a,b,c**
460 460  
461 461  * **a: length for the return of AT+COMMAND**
... ... @@ -463,143 +463,98 @@
463 463  * **c: define the position for valid value.  **
464 464  )))
465 465  
466 -**Examples:**
455 +Examples:
467 467  
468 468  * Grab bytes:
469 469  
470 -[[image:1653271581490-837.png||height="313" width="722"]]
459 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image015.png]]
471 471  
472 -
473 473  * Grab a section.
474 474  
475 -[[image:1653271648378-342.png||height="326" width="720"]]
463 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image016.png]]
476 476  
477 -
478 478  * Grab different sections.
479 479  
480 -[[image:1653271657255-576.png||height="305" width="730"]]
467 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image017.png]]
481 481  
482 -(((
483 -(% style="color:red" %)**Note:**
484 -)))
485 485  
486 -(((
470 +Note:
471 +
487 487  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.
488 -)))
489 489  
490 -(((
491 -**Example:**
492 -)))
474 +Example:
493 493  
494 -(((
495 -(% style="color:red" %)AT+COMMAND1=11 01 1E D0,0
496 -)))
476 +AT+COMMAND1=11 01 1E D0,0
497 497  
498 -(((
499 -(% style="color:red" %)AT+SEARCH1=1,1E 56 34
500 -)))
478 +AT+SEARCH1=1,1E 56 34
501 501  
502 -(((
503 -(% style="color:red" %)AT+DATACUT1=0,2,1~~5
504 -)))
480 +AT+DATACUT1=0,2,1~~5
505 505  
506 -(((
507 -(% style="color:red" %)Return string from AT+COMMAND1: 16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49
508 -)))
482 +Return string from AT+COMMAND1: 16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49
509 509  
510 -(((
511 -(% style="color:red" %)String after SEARCH command: 2e 30 58 5f 36 41 30 31 00 49
512 -)))
484 +String after SEARCH command: 2e 30 58 5f 36 41 30 31 00 49
513 513  
514 -(((
515 -(% style="color:red" %)Valid payload after DataCUT command: 2e 30 58 5f 36
516 -)))
486 +Valid payload after DataCUT command: 2e 30 58 5f 36
517 517  
518 -[[image:1653271763403-806.png]]
488 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image018.png]]
519 519  
520 520  
521 -=== 3.3.4 Compose the uplink payload ===
522 522  
523 -(((
492 +
493 +1.
494 +11.
495 +111. Compose the uplink payload
496 +
524 524  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.**
525 -)))
526 526  
527 -(((
528 -(% style="color:#037691" %)**Examples: AT+DATAUP=0**
529 -)))
530 530  
531 -(((
532 -Compose the uplink payload with value returns in sequence and send with (% style="color:red" %)**A SIGNLE UPLINK**.
533 -)))
500 +**Examples: AT+DATAUP=0**
534 534  
535 -(((
502 +Compose the uplink payload with value returns in sequence and send with **A SIGNLE UPLINK**.
503 +
536 536  Final Payload is
537 -)))
538 538  
539 -(((
540 -(% style="color:#4f81bd" %)**Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx**
541 -)))
506 +Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx
542 542  
543 -(((
544 544  Where PAYVER is defined by AT+PAYVER, below is an example screen shot.
545 -)))
546 546  
547 -[[image:1653272787040-634.png||height="515" width="719"]]
510 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image019.png]]
548 548  
549 549  
550 550  
551 -(((
552 -(% style="color:#037691" %)**Examples: AT+DATAUP=1**
514 +**Examples: AT+DATAUP=1**
553 553  
554 -
555 -)))
516 +Compose the uplink payload with value returns in sequence and send with **Multiply UPLINKs**.
556 556  
557 -(((
558 -Compose the uplink payload with value returns in sequence and send with (% style="color:red" %)**Multiply UPLINKs**.
559 -)))
560 -
561 -(((
562 562  Final Payload is
563 -)))
564 564  
565 -(((
566 -(% style="color:#4f81bd" %)**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA**
567 -)))
520 +Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA
568 568  
569 -1. (((
570 -Battery Info (2 bytes): Battery voltage
571 -)))
572 -1. (((
573 -PAYVER (1 byte): Defined by AT+PAYVER
574 -)))
575 -1. (((
576 -PAYLOAD COUNT (1 byte): Total how many uplinks of this sampling.
577 -)))
578 -1. (((
579 -PAYLOAD# (1 byte): Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT)
580 -)))
581 -1. (((
582 -DATA: Valid value: max 6 bytes(US915 version here, Notice*!) for each uplink so each uplink <= 11 bytes. For the last uplink, DATA will might less than 6 bytes
583 -)))
522 +1. Battery Info (2 bytes): Battery voltage
523 +1. PAYVER (1 byte): Defined by AT+PAYVER
524 +1. PAYLOAD COUNT (1 byte): Total how many uplinks of this sampling.
525 +1. PAYLOAD# (1 byte): Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT)
526 +1. DATA: Valid value: max 6 bytes(US915 version here, [[Notice*!>>path:#max_byte]]) for each uplink so each uplink <= 11 bytes. For the last uplink, DATA will might less than 6 bytes
584 584  
585 -[[image:1653272817147-600.png||height="437" width="717"]]
528 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image020.png]]
586 586  
530 +
587 587  So totally there will be 3 uplinks for this sampling, each uplink includes 6 bytes DATA
588 588  
533 +DATA1=RETURN1 Valid Value = 20 20 0a 33 90 41
589 589  
590 -DATA1=RETURN1 Valid Value = (% style="background-color:#4f81bd; color:white" %) 20 20 0a 33 90 41
535 +DATA2=1^^st^^ ~~ 6^^th^^ byte of Valid value of RETURN10= 02 aa 05 81 0a 20
591 591  
592 -DATA2=1^^st^^ ~~ 6^^th^^ byte of Valid value of RETURN10= (% style="background-color:#4f81bd; color:white" %)02 aa 05 81 0a 20
537 +DATA3=7^^th^^ ~~ 11^^th^^ bytes of Valid value of RETURN10 = 20 20 20 2d 30
593 593  
594 -DATA3=7^^th^^ ~~ 11^^th^^ bytes of Valid value of RETURN10 =(% style="background-color:#4f81bd; color:white" %) 20 20 20 2d 30
595 595  
596 596  
597 597  Below are the uplink payloads:
598 598  
599 -[[image:1653272901032-107.png]]
543 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image021.png]]
600 600  
601 601  
602 -(% style="color:red" %)Notice: the Max bytes is according to the max support bytes in different Frequency Bands for lowest SF. As below:
546 +Notice: the Max bytes is according to the max support bytes in different Frequency Bands for lowest SF. As below:
603 603  
604 604   ~* For AU915/AS923 bands, if UplinkDwell time=0, max 51 bytes for each uplink ( so 51 -5 = 46 max valid date)
605 605  
... ... @@ -611,187 +611,139 @@
611 611  
612 612  
613 613  
614 -=== 3.3.5 Uplink on demand ===
558 +1.
559 +11.
560 +111. Uplink on demand
615 615  
616 -(((
617 617  Except uplink periodically, RS485-BL is able to uplink on demand. The server sends downlink command to RS485-BL and RS485 will uplink data base on the command.
618 -)))
619 619  
620 -(((
621 621  Downlink control command:
622 -)))
623 623  
624 -(((
625 -**0x08 command**: Poll an uplink with current command set in RS485-BL.
626 -)))
566 +[[0x08 command>>path:#downlink_08]]: Poll an uplink with current command set in RS485-BL.
627 627  
628 -(((
629 -**0xA8 command**: Send a command to RS485-BL and uplink the output from sensors.
568 +[[0xA8 command>>path:#downlink_A8]]: Send a command to RS485-BL and uplink the output from sensors.
630 630  
631 -
632 -)))
633 633  
634 -=== 3.3.6 Uplink on Interrupt ===
635 635  
636 -Put the interrupt sensor between 3.3v_out and GPIO ext.
572 +1.
573 +11.
574 +111. Uplink on Interrupt
637 637  
638 -[[image:1653273818896-432.png]]
576 +Put the interrupt sensor between 3.3v_out and GPIO ext.[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image022.png]]
639 639  
640 -
641 -(((
642 642  AT+INTMOD=0  Disable Interrupt
643 -)))
644 644  
645 -(((
646 646  AT+INTMOD=1  Interrupt trigger by rising or falling edge.
647 -)))
648 648  
649 -(((
650 650  AT+INTMOD=2  Interrupt trigger by falling edge. ( Default Value)
651 -)))
652 652  
653 -(((
654 654  AT+INTMOD=3  Interrupt trigger by rising edge.
655 655  
656 -
657 -)))
658 658  
659 -== 3.4 Uplink Payload ==
587 +1.
588 +11. Uplink Payload
660 660  
661 -(% border="1" style="background-color:#4f81bd; color:white; width:850px" %)
662 -|**Size(bytes)**|(% style="width:130px" %)**2**|(% style="width:93px" %)**1**|(% style="width:509px" %)**Length depends on the return from the commands**
663 -|Value|(% style="width:130px" %)(((
664 -(((
590 +|**Size(bytes)**|**2**|**1**|**Length depends on the return from the commands**
591 +|Value|(((
665 665  Battery(mV)
666 -)))
667 667  
668 -(((
669 669  &
670 -)))
671 671  
672 -(((
673 673  Interrupt _Flag
674 -)))
675 -)))|(% style="width:93px" %)(((
597 +)))|(((
676 676  PAYLOAD_VER
677 677  
678 678  
679 -)))|(% 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.
601 +)))|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.
680 680  
681 681  Below is the decoder for the first 3 bytes. The rest bytes are dynamic depends on different RS485 sensors.
682 682  
683 -(((
684 -{{{function Decoder(bytes, port) {}}}
685 -)))
686 686  
687 -(((
688 -{{{//Payload Formats of RS485-BL Deceive}}}
689 -)))
606 +function Decoder(bytes, port) {
690 690  
691 -(((
692 -{{{return {}}}
693 -)))
608 +~/~/Payload Formats of RS485-BL Deceive
694 694  
695 -(((
696 -{{{ //Battery,units:V}}}
697 -)))
610 +return {
698 698  
699 -(((
700 -{{{ BatV:((bytes[0]<<8 | bytes[1])&0x7fff)/1000,}}}
701 -)))
612 + ~/~/Battery,units:V
702 702  
703 -(((
704 -{{{ //GPIO_EXTI }}}
705 -)))
614 + BatV:((bytes[0]<<8 | bytes[1])&0x7fff)/1000,
706 706  
707 -(((
708 -{{{ EXTI_Trigger:(bytes[0] & 0x80)? "TRUE":"FALSE",}}}
709 -)))
616 + ~/~/GPIO_EXTI 
710 710  
711 -(((
712 -{{{ //payload of version}}}
713 -)))
618 + EXTI_Trigger:(bytes[0] & 0x80)? "TRUE":"FALSE",
714 714  
715 -(((
716 -{{{ Pay_ver:bytes[2],}}}
717 -)))
620 + ~/~/payload of version
718 718  
719 -(((
720 -{{{ }; }}}
721 -)))
622 + Pay_ver:bytes[2],
722 722  
723 -(((
724 -}
624 + };
725 725  
726 -
727 -)))
626 + }
728 728  
729 -(((
730 -TTN V3 uplink screen shot.
731 -)))
732 732  
733 -[[image:1653274001211-372.png||height="192" width="732"]]
734 734  
735 735  
736 -== 3.5 Configure RS485-BL via AT or Downlink ==
737 737  
738 -User can configure RS485-BL via AT Commands or LoRaWAN Downlink Commands
739 739  
740 -There are two kinds of Commands:
741 741  
742 -* (% 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]]
634 +TTN V3 uplink screen shot.
743 743  
744 -* (% style="color:#4f81bd" %)**Sensor Related Commands**(%%): These commands are special designed for RS485-BL.  User can see these commands below:
636 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image023.png]]
745 745  
638 +1.
639 +11. Configure RS485-BL via AT or Downlink
746 746  
641 +User can configure RS485-BL via [[AT Commands >>path:#_​Using_the_AT]]or LoRaWAN Downlink Commands
747 747  
748 -=== 3.5.1 Common Commands: ===
643 +There are two kinds of Commands:
749 749  
750 -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]]
645 +* **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_Commands
751 751  
647 +* **Sensor Related Commands**: These commands are special designed for RS485-BL.  User can see these commands below:
752 752  
753 -=== 3.5.2 Sensor related commands: ===
649 +1.
650 +11.
651 +111. Common Commands:
754 754  
653 +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: [[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]]
755 755  
756 -==== **Choose Device Type (RS485 or TTL)** ====
757 757  
656 +1.
657 +11.
658 +111. Sensor related commands:
659 +
660 +==== Choose Device Type (RS485 or TTL) ====
661 +
758 758  RS485-BL can connect to either RS485 sensors or TTL sensor. User need to specify what type of sensor need to connect.
759 759  
760 -* **AT Command**
664 +* AT Command
761 761  
762 -(% class="box infomessage" %)
763 -(((
764 764  **AT+MOD=1** ~/~/ Set to support RS485-MODBUS type sensors. User can connect multiply RS485 , Modbus sensors to the A / B pins.
765 -)))
766 766  
767 -(% class="box infomessage" %)
768 -(((
769 769  **AT+MOD=2** ~/~/ Set to support TTL Level sensors, User can connect one TTL Sensor to the TXD/RXD/GND pins.
770 -)))
771 771  
772 772  
773 -* **Downlink Payload**
671 +* Downlink Payload
774 774  
775 -**0A aa**  ~-~->  same as AT+MOD=aa
673 +**0A aa**     à same as AT+MOD=aa
776 776  
777 777  
778 778  
779 -==== **RS485 Debug Command (AT+CFGDEV)** ====
677 +==== [[RS485 Debug Command>>path:#downlink_A8]] (AT+CFGDEV) ====
780 780  
781 781  This command is used to configure the RS485 or TTL sensors; they won’t be used during sampling.
782 782  
783 -* **AT Command**
681 +* AT Command
784 784  
785 -(% class="box infomessage" %)
786 -(((
787 -**AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m**
788 -)))
683 +AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m
789 789  
790 790  m: 0: no CRC; 1: add CRC-16/MODBUS in the end of this command.
791 791  
792 792  
793 -* **Downlink Payload**
794 794  
689 +* Downlink Payload
690 +
795 795  Format: A8 MM NN XX XX XX XX YY
796 796  
797 797  Where:
... ... @@ -805,15 +805,15 @@
805 805  
806 806  To connect a Modbus Alarm with below commands.
807 807  
808 -* The command to active alarm is: 0A 05 00 04 00 01 **4C B0**. Where 0A 05 00 04 00 01 is the Modbus command to read the register 00 40 where stored the DI status. The 4C B0 is the CRC-16/MODBUS which calculate manually.
704 +* The command to active alarm is: 0A 05 00 04 00 01 4C B0. Where 0A 05 00 04 00 01 is the Modbus command to read the register 00 40 where stored the DI status. The 4C B0 is the CRC-16/MODBUS which calculate manually.
809 809  
810 -* The command to deactivate alarm is: 0A 05 00 04 00 00 **8D 70**. Where 0A 05 00 04 00 00 is the Modbus command to read the register 00 40 where stored the DI status. The 8D 70 is the CRC-16/MODBUS which calculate manually.
706 +* The command to deactivate alarm is: 0A 05 00 04 00 00 8D 70. Where 0A 05 00 04 00 00 is the Modbus command to read the register 00 40 where stored the DI status. The 8D 70 is the CRC-16/MODBUS which calculate manually.
811 811  
812 812  So if user want to use downlink command to control to RS485 Alarm, he can use:
813 813  
814 -(% style="color:#037691" %)**A8 01 06 0A 05 00 04 00 01 00**(%%): to activate the RS485 Alarm
710 +**A8 01 06 0A 05 00 04 00 01 00**: to activate the RS485 Alarm
815 815  
816 -(% style="color:#037691" %)**A8 01 06 0A 05 00 04 00 00 00**(%%): to deactivate the RS485 Alarm
712 +**A8 01 06 0A 05 00 04 00 00 00**: to deactivate the RS485 Alarm
817 817  
818 818  A8 is type code and 01 means add CRC-16/MODBUS at the end, the 3^^rd^^ byte is 06, means the next 6 bytes are the command to be sent to the RS485 network, the final byte 00 means this command don’t need to acquire output.
819 819  
... ... @@ -822,61 +822,48 @@
822 822  
823 823  Check TTL Sensor return:
824 824  
825 -[[image:1654132684752-193.png]]
721 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image024.png]]
826 826  
827 827  
828 828  
829 829  
830 -==== **Set Payload version** ====
726 +==== Set Payload version ====
831 831  
832 832  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.
833 833  
834 -* **AT Command:**
730 +* AT Command:
835 835  
836 -(% class="box infomessage" %)
837 -(((
838 -**AT+PAYVER: Set PAYVER field = 1**
839 -)))
732 +AT+PAYVER: Set PAYVER field = 1
840 840  
841 841  
842 -* **Downlink Payload:**
735 +* Downlink Payload:
843 843  
844 -**0xAE 01**  ~-~-> Set PAYVER field =  0x01
737 +0xAE 01   à Set PAYVER field =  0x01
845 845  
846 -**0xAE 0F**   ~-~-> Set PAYVER field =  0x0F
739 +0xAE 0F   à Set PAYVER field =  0x0F
847 847  
848 848  
742 +==== Set RS485 Sampling Commands ====
849 849  
850 -==== **Set RS485 Sampling Commands** ====
851 -
852 852  AT+COMMANDx, AT+DATACUTx and AT+SEARCHx
853 853  
854 -These three commands are used to configure how the RS485-BL polling data from Modbus device. Detail of usage please see : [[polling RS485 device>>||anchor="H3.3.3Configurereadcommandsforeachsampling"]].
746 +These three commands are used to configure how the RS485-BL polling data from Modbus device. Detail of usage please see : [[polling RS485 device>>path:#polling_485]].
855 855  
856 856  
857 -* **AT Command:**
749 +* AT Command:
858 858  
859 -(% class="box infomessage" %)
860 -(((
861 -**AT+COMMANDx: Configure RS485 read command to sensor.**
862 -)))
751 +AT+COMMANDx: Configure RS485 read command to sensor.
863 863  
864 -(% class="box infomessage" %)
865 -(((
866 -**AT+DATACUTx: Configure how to handle return from RS485 devices.**
867 -)))
753 +AT+DATACUTx: Configure how to handle return from RS485 devices.
868 868  
869 -(% class="box infomessage" %)
870 -(((
871 -**AT+SEARCHx: Configure search command**
872 -)))
755 +AT+SEARCHx: Configure search command
873 873  
874 874  
875 -* **Downlink Payload:**
758 +* Downlink Payload:
876 876  
877 -**0xAF** downlink command can be used to set AT+COMMANDx or AT+DATACUTx.
760 +0xAF downlink command can be used to set AT+COMMANDx or AT+DATACUTx.
878 878  
879 -(% style="color:red" %)**Note**(%%): if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink.
762 +Note: if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink.
880 880  
881 881  Format: AF MM NN LL XX XX XX XX YY
882 882  
... ... @@ -883,23 +883,23 @@
883 883  Where:
884 884  
885 885  * MM: the ATCOMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F,
886 -* NN:  0: no CRC; 1: add CRC-16/MODBUS ; 2: set the AT+DATACUT value.
887 -* LL:  The length of AT+COMMAND or AT+DATACUT command
769 +* NN: 0: no CRC; 1: add CRC-16/MODBUS ; 2: set the AT+DATACUT value.
770 +* LL: The length of AT+COMMAND or AT+DATACUT command
888 888  * XX XX XX XX: AT+COMMAND or AT+DATACUT command
889 -* YY:  If YY=0, RS485-BL will execute the downlink command without uplink; if YY=1, RS485-BL will execute an uplink after got this command.
772 +* YY: If YY=0, RS485-BL will execute the downlink command without uplink; if YY=1, RS485-BL will execute an uplink after got this command.
890 890  
891 -**Example:**
774 +Example:
892 892  
893 -(% style="color:#037691" %)**AF 03 01 06 0A 05 00 04 00 01 00**(%%): Same as AT+COMMAND3=0A 05 00 04 00 01,1
776 +**AF 03 01 06 0A 05 00 04 00 01 00**: Same as AT+COMMAND3=0A 05 00 04 00 01,1
894 894  
895 -(% style="color:#037691" %)**AF 03 02 06**(% style="color:orange" %)** 10 **(% style="color:red" %)**01 **(% style="color:green" %)**05 06 09 0A**(% style="color:#037691" %)** 00**(%%): Same as AT+DATACUT3=(% style="color:orange" %)**16**(%%),(% style="color:red" %)**1**(%%),(% style="color:green" %)**5+6+9+10**
778 +**AF 03 02 06 10 01 05 06 09 0A 00**: Same as AT+DATACUT3=**16**,**1**,**5+6+9+10**
896 896  
897 -(% style="color:#037691" %)**AF 03 02 06 **(% style="color:orange" %)**0B**(% style="color:red" %)** 02 **(% style="color:green" %)**05 07 08 0A **(% style="color:#037691" %)**00**(%%): Same as AT+DATACUT3=(% style="color:orange" %)**11**(%%),(% style="color:red" %)**2**(%%),(% style="color:green" %)**5~~7+8~~10**
780 +**AF 03 02 06 0B 02 05 07 08 0A 00**: Same as AT+DATACUT3=**11**,**2**,**5~~7+8~~10**
898 898  
899 899  
900 -**0xAB** downlink command can be used for set AT+SEARCHx
783 +0xAB downlink command can be used for set AT+SEARCHx
901 901  
902 -**Example:** **AB aa 01 03 xx xx xx** (03 here means there are total 3 bytes after 03) So
785 +Example: **AB aa 01 03 xx xx xx** (03 here means there are total 3 bytes after 03) So
903 903  
904 904  * AB aa 01 03 xx xx xx  same as AT+SEARCHaa=1,xx xx xx
905 905  * AB aa 02 03 xx xx xx 02 yy yy(03 means there are 3 bytes after 03, they are xx xx xx;02 means there are 2 bytes after 02, they are yy yy) so the commands
... ... @@ -907,164 +907,145 @@
907 907  **AB aa 02 03 xx xx xx 02 yy yy**  same as **AT+SEARCHaa=2,xx xx xx+yy yy**
908 908  
909 909  
793 +==== Fast command to handle MODBUS device ====
910 910  
911 -==== **Fast command to handle MODBUS device** ====
912 -
913 913  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]].
914 914  
915 915  This command is valid since v1.3 firmware version
916 916  
917 917  
918 -**AT+MBFUN has only two value:**
800 +AT+MBFUN has only two value:
919 919  
920 -* **AT+MBFUN=1**: Enable Modbus reading. And get response base on the MODBUS return
802 +* AT+MBFUN=1: Enable Modbus reading. And get response base on the MODBUS return
921 921  
922 922  AT+MBFUN=1, device can auto read the Modbus function code: 01, 02, 03 or 04. AT+MBFUN has lower priority vs AT+DATACUT command. If AT+DATACUT command is configured, AT+MBFUN will be ignore.
923 923  
924 -* **AT+MBFUN=0**: Disable Modbus fast reading.
806 +* AT+MBFUN=0: Disable Modbus fast reading.
925 925  
926 -**Example:**
808 +Example:
927 927  
928 928  * AT+MBFUN=1 and AT+DATACUT1/AT+DATACUT2 are not configure (0,0,0).
929 929  * AT+COMMAND1= 01 03 00 10 00 08,1 ~-~-> read slave address 01 , function code 03, start address 00 01, quantity of registers 00 08.
930 930  * AT+COMMAND2= 01 02 00 40 00 10,1 ~-~-> read slave address 01 , function code 02, start address 00 40, quantity of inputs 00 10.
931 931  
932 -[[image:1654133913295-597.png]]
814 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image025.png]]
933 933  
934 934  
935 -[[image:1654133954153-643.png]]
817 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image026.png]]
936 936  
937 937  
938 -* **Downlink Commands:**
820 +* Downlink Commands:
939 939  
940 -**A9 aa** ~-~-> Same as AT+MBFUN=aa
822 +A9 aa -à Same as AT+MBFUN=aa
941 941  
942 942  
825 +==== RS485 command timeout ====
943 943  
944 -==== **RS485 command timeout** ====
945 -
946 946  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.
947 947  
948 948  Default value: 0, range:  0 ~~ 5 seconds
949 949  
950 950  
951 -* **AT Command:**
832 +* AT Command:
952 952  
953 -(% class="box infomessage" %)
954 -(((
955 -**AT+CMDDLaa=hex(bb cc)**
956 -)))
834 +AT+CMDDLaa=hex(bb cc)
957 957  
958 -**Example:**
836 +Example:
959 959  
960 960  **AT+CMDDL1=1000** to send the open time to 1000ms
961 961  
962 962  
963 -* **Downlink Payload:**
841 +* Downlink Payload:
964 964  
965 965  0x AA aa bb cc
966 966  
967 967  Same as: AT+CMDDLaa=hex(bb cc)
968 968  
969 - **Example:**
847 + Example:
970 970  
971 - **0xAA 01 03 E8**  ~-~-> Same as **AT+CMDDL1=1000 ms**
849 + 0xAA 01 03 E8  à Same as **AT+CMDDL1=1000 ms**
972 972  
973 973  
852 +==== [[Uplink>>path:#downlink_A8]] payload mode ====
974 974  
975 -==== **Uplink payload mode** ====
976 -
977 977  Define to use one uplink or multiple uplinks for the sampling.
978 978  
979 -The use of this command please see: [[Compose Uplink payload>>||anchor="H3.3.4Composetheuplinkpayload"]]
856 +The use of this command please see: [[Compose Uplink payload>>path:#DataUP]]
980 980  
981 -* **AT Command:**
858 +* AT Command:
982 982  
983 -(% class="box infomessage" %)
984 -(((
985 -**AT+DATAUP=0**
986 -)))
860 +AT+DATAUP=0
987 987  
988 -(% class="box infomessage" %)
989 -(((
990 -**AT+DATAUP=1**
991 -)))
862 +AT+DATAUP=1
992 992  
993 993  
994 -* **Downlink Payload:**
865 +* Downlink Payload:
995 995  
996 -**0xAD 00**  **~-~->** Same as AT+DATAUP=0
867 +0xAD 00   à Same as AT+DATAUP=0
997 997  
998 -**0xAD 01**  **~-~->** Same as AT+DATAUP=1
869 +0xAD 01   à Same as AT+DATAUP=1
999 999  
1000 1000  
872 +==== Manually trigger an Uplink ====
1001 1001  
1002 -==== **Manually trigger an Uplink** ====
1003 -
1004 1004  Ask device to send an uplink immediately.
1005 1005  
1006 -* **Downlink Payload:**
876 +* Downlink Payload:
1007 1007  
1008 -**0x08 FF**, RS485-BL will immediately send an uplink.
878 +0x08 FF, RS485-BL will immediately send an uplink.
1009 1009  
1010 1010  
881 +==== Clear RS485 Command ====
1011 1011  
1012 -==== **Clear RS485 Command** ====
1013 -
1014 1014  The AT+COMMANDx and AT+DATACUTx settings are stored in special location, user can use below command to clear them.
1015 1015  
1016 1016  
1017 -* **AT Command:**
886 +* AT Command:
1018 1018  
1019 -(% 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
888 +**AT+CMDEAR=mm,nn**   mm: start position of erase ,nn: stop position of erase
1020 1020  
890 +Etc. AT+CMDEAR=1,10 means erase AT+COMMAND1/AT+DATACUT1 to AT+COMMAND10/AT+DATACUT10
891 +
1021 1021  Example screen shot after clear all RS485 commands. 
1022 1022  
1023 1023  
895 +
1024 1024  The uplink screen shot is:
1025 1025  
1026 -[[image:1654134704555-320.png]]
898 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image023.png]]
1027 1027  
1028 1028  
1029 -* **Downlink Payload:**
901 +* Downlink Payload:
1030 1030  
1031 -**0x09 aa bb** same as AT+CMDEAR=aa,bb
903 +0x09 aa bb same as AT+CMDEAR=aa,bb
1032 1032  
1033 1033  
906 +==== Set Serial Communication Parameters ====
1034 1034  
1035 -==== **Set Serial Communication Parameters** ====
1036 -
1037 1037  Set the Rs485 serial communication parameters:
1038 1038  
1039 -* **AT Command:**
910 +* AT Command:
1040 1040  
1041 1041  Set Baud Rate:
1042 1042  
1043 -(% class="box infomessage" %)
1044 -(((
1045 -**AT+BAUDR=9600**    ~/~/ Options: (1200,2400,4800,14400,19200,115200)
1046 -)))
914 +AT+BAUDR=9600    ~/~/ Options: (1200,2400,4800,14400,19200,115200)
1047 1047  
1048 -Set UART Parity
1049 1049  
1050 -(% class="box infomessage" %)
1051 -(((
1052 -**AT+PARITY=0**    ~/~/ Option: 0: no parity, 1: odd parity, 2: even parity
1053 -)))
917 +Set UART parity
1054 1054  
919 +AT+PARITY=0    ~/~/ Option: 0: no parity, 1: odd parity, 2: even parity
920 +
921 +
1055 1055  Set STOPBIT
1056 1056  
1057 -(% class="box infomessage" %)
1058 -(((
1059 -**AT+STOPBIT=0**    ~/~/ Option: 0 for 1bit; 1 for 1.5 bit ; 2 for 2 bits
1060 -)))
924 +AT+STOPBIT=0    ~/~/ Option: 0 for 1bit; 1 for 1.5 bit ; 2 for 2 bits
1061 1061  
1062 1062  
1063 -* **Downlink Payload:**
927 +* Downlink Payload:
1064 1064  
1065 -**A7 01 aa bb**: Same  AT+BAUDR=hex(aa bb)*100
929 +A7 01 aa bb: Same  AT+BAUDR=hex(aa bb)*100
1066 1066  
1067 -**Example:**
931 +Example:
1068 1068  
1069 1069  * A7 01 00 60   same as AT+BAUDR=9600
1070 1070  * A7 01 04 80  same as AT+BAUDR=115200
... ... @@ -1074,188 +1074,180 @@
1074 1074  A7 03 aa: Same as  AT+STOPBIT=aa  (aa value: 00 , 01 or 02)
1075 1075  
1076 1076  
941 +==== Control output power duration ====
1077 1077  
1078 -==== **Control output power duration** ====
1079 -
1080 1080  User can set the output power duration before each sampling.
1081 1081  
1082 -* **AT Command:**
945 +* AT Command:
1083 1083  
1084 -**Example:**
947 +Example:
1085 1085  
1086 -**AT+3V3T=1000**  ~/~/ 3V3 output power will open 1s before each sampling.
949 +AT+3V3T=1000 ~/~/ 3V3 output power will open 1s before each sampling.
1087 1087  
1088 -**AT+5VT=1000**  ~/~/ +5V output power will open 1s before each sampling.
951 +AT+5VT=1000 ~/~/ +5V output power will open 1s before each sampling.
1089 1089  
1090 1090  
1091 -* **LoRaWAN Downlink Command:**
954 +* LoRaWAN Downlink Command:
1092 1092  
1093 -**07 01 aa bb**  Same as AT+5VT=(aa bb)
956 +07 01 aa bb  Same as AT+5VT=(aa bb)
1094 1094  
1095 -**07 02 aa bb**  Same as AT+3V3T=(aa bb)
958 +07 02 aa bb  Same as AT+3V3T=(aa bb)
1096 1096  
1097 1097  
1098 -== 3.6 Buttons ==
1099 1099  
1100 -(% border="1" style="background-color:#ffffcc; color:green; width:233px" %)
1101 -|=(% style="width: 89px;" %)**Button**|=(% style="width: 141px;" %)**Feature**
1102 -|(% style="width:89px" %)**RST**|(% style="width:141px" %)Reboot RS485-BL
1103 1103  
1104 -== 3.7 +3V3 Output ==
963 +1.
964 +11. Buttons
1105 1105  
966 +|**Button**|**Feature**
967 +|**RST**|Reboot RS485-BL
968 +
969 +1.
970 +11. +3V3 Output
971 +
1106 1106  RS485-BL has a Controllable +3V3 output, user can use this output to power external sensor.
1107 1107  
1108 1108  The +3V3 output will be valid for every sampling. RS485-BL will enable +3V3 output before all sampling and disable the +3V3 after all sampling. 
1109 1109  
976 +
1110 1110  The +3V3 output time can be controlled by AT Command.
1111 1111  
979 +**AT+3V3T=1000**
1112 1112  
1113 -(% style="color:#037691" %)**AT+3V3T=1000**
1114 -
1115 -
1116 1116  Means set +3v3 valid time to have 1000ms. So, the real +3v3 output will actually have 1000ms + sampling time for other sensors.
1117 1117  
983 +
1118 1118  By default, the AT+3V3T=0. This is a special case, means the +3V3 output is always on at any time
1119 1119  
1120 1120  
1121 -== 3.8 +5V Output ==
987 +1.
988 +11. +5V Output
1122 1122  
1123 1123  RS485-BL has a Controllable +5V output, user can use this output to power external sensor.
1124 1124  
1125 1125  The +5V output will be valid for every sampling. RS485-BL will enable +5V output before all sampling and disable the +5v after all sampling. 
1126 1126  
994 +
1127 1127  The 5V output time can be controlled by AT Command.
1128 1128  
997 +**AT+5VT=1000**
1129 1129  
1130 -(% style="color:#037691" %)**AT+5VT=1000**
1131 -
1132 -
1133 1133  Means set 5V valid time to have 1000ms. So, the real 5V output will actually have 1000ms + sampling time for other sensors.
1134 1134  
1001 +
1135 1135  By default, the AT+5VT=0. If the external sensor which require 5v and require more time to get stable state, user can use this command to increase the power ON duration for this sensor.
1136 1136  
1137 1137  
1138 -== 3.9 LEDs ==
1139 1139  
1140 -(% border="1" style="background-color:#ffffcc; color:green; width:332px" %)
1141 -|=**LEDs**|=(% style="width: 274px;" %)**Feature**
1142 -|**LED1**|(% style="width:274px" %)Blink when device transmit a packet.
1143 1143  
1144 -== 3.10 Switch Jumper ==
1007 +1.
1008 +11. LEDs
1145 1145  
1146 -(% border="1" style="background-color:#ffffcc; color:green; width:515px" %)
1147 -|=(% style="width: 124px;" %)**Switch Jumper**|=(% style="width: 388px;" %)**Feature**
1148 -|(% style="width:124px" %)**SW1**|(% style="width:388px" %)(((
1010 +|**LEDs**|**Feature**
1011 +|**LED1**|Blink when device transmit a packet.
1012 +
1013 +1.
1014 +11. Switch Jumper
1015 +
1016 +|**Switch Jumper**|**Feature**
1017 +|**SW1**|(((
1149 1149  ISP position: Upgrade firmware via UART
1150 1150  
1151 1151  Flash position: Configure device, check running status.
1152 1152  )))
1153 -|(% style="width:124px" %)**SW2**|(% style="width:388px" %)(((
1022 +|**SW2**|(((
1154 1154  5V position: set to compatible with 5v I/O.
1155 1155  
1156 1156  3.3v position: set to compatible with 3.3v I/O.,
1157 1157  )))
1158 1158  
1159 -**+3.3V**: is always ON
1028 ++3.3V: is always ON
1160 1160  
1161 -**+5V**: Only open before every sampling. The time is by default, it is AT+5VT=0.  Max open time. 5000 ms.
1030 ++5V: Only open before every sampling. The time is by default, it is AT+5VT=0.  Max open time. 5000 ms.
1162 1162  
1032 +1. Case Study
1163 1163  
1164 -= 4. Case Study =
1034 +User can check this URL for some case studies.
1165 1165  
1166 -User can check this URL for some case studies: [[APP RS485 COMMUNICATE WITH SENSORS>>doc:Main.Application Note \: Communicate with Different Sensors ----- RS485-LN RS485-BL.WebHome]]
1036 +[[http:~~/~~/wiki.dragino.com/index.php?title=APP_RS485_COMMUNICATE_WITH_SENSORS>>url:http://wiki.dragino.com/index.php?title=APP_RS485_COMMUNICATE_WITH_SENSORS]]
1167 1167  
1168 1168  
1169 -= 5. Use AT Command =
1170 1170  
1171 -== 5.1 Access AT Command ==
1172 1172  
1041 +1. Use AT Command
1042 +11. Access AT Command
1043 +
1173 1173  RS485-BL supports AT Command set. User can use a USB to TTL adapter plus the 3.5mm Program Cable to connect to RS485-BL to use AT command, as below.
1174 1174  
1175 -[[image:1654135840598-282.png]]
1046 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image027.png]]
1176 1176  
1177 1177  
1178 -In PC, User needs to set (% style="color:blue" %)**serial tool**(%%)(such as [[putty>>url:https://www.chiark.greenend.org.uk/~~sgtatham/putty/latest.html]], SecureCRT) baud rate to (% style="color:green" %)**9600**(%%) to access to access serial console of RS485-BL. The default password is 123456. Below is the output for reference:
1049 +In PC, User needs to set **serial tool**(such as [[putty>>url:https://www.chiark.greenend.org.uk/~~sgtatham/putty/latest.html]], SecureCRT) baud rate to **9600** to access to access serial console of RS485-BL. The default password is 123456. Below is the output for reference:
1179 1179  
1180 -[[image:1654136105500-922.png]]
1051 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image028.png]]
1181 1181  
1182 1182  
1183 -More detail AT Command manual can be found at [[AT Command Manual>>||anchor="3.5ConfigureRS485-BLviaATorDownlink"]]
1184 1184  
1055 +More detail AT Command manual can be found at [[AT Command Manual>>path:#AT_COMMAND]]
1185 1185  
1186 -== 5.2 Common AT Command Sequence ==
1187 1187  
1188 -=== 5.2.1 Multi-channel ABP mode (Use with SX1301/LG308) ===
1189 1189  
1059 +1.
1060 +11. Common AT Command Sequence
1061 +111. Multi-channel ABP mode (Use with SX1301/LG308)
1062 +
1190 1190  If device has not joined network yet:
1191 1191  
1192 -(% class="box infomessage" %)
1193 -(((
1194 -**AT+FDR**
1195 -)))
1065 +AT+FDR
1196 1196  
1197 -(% class="box infomessage" %)
1198 -(((
1199 -**AT+NJM=0**
1200 -)))
1067 +AT+NJM=0
1201 1201  
1202 -(% class="box infomessage" %)
1203 -(((
1204 -**ATZ**
1205 -)))
1069 +ATZ
1206 1206  
1207 1207  
1208 1208  If device already joined network:
1209 1209  
1210 -(% class="box infomessage" %)
1211 -(((
1212 -**AT+NJM=0**
1213 -)))
1074 +AT+NJM=0
1214 1214  
1215 -(% class="box infomessage" %)
1216 -(((
1217 -**ATZ**
1218 -)))
1076 +ATZ
1219 1219  
1078 +1.
1079 +11.
1080 +111. Single-channel ABP mode (Use with LG01/LG02)
1220 1220  
1221 -=== 5.5.2 Single-channel ABP mode (Use with LG01/LG02) ===
1082 +AT+FDR   Reset Parameters to Factory Default, Keys Reserve
1222 1222  
1084 +AT+NJM=0 Set to ABP mode
1223 1223  
1224 -(% style="background-color:#dcdcdc" %)**AT+FDR** (%%) Reset Parameters to Factory Default, Keys Reserve
1086 +AT+ADR=0 Set the Adaptive Data Rate Off
1225 1225  
1226 -(% style="background-color:#dcdcdc" %)**AT+NJM=0 **(%%)Set to ABP mode
1088 +AT+DR= Set Data Rate
1227 1227  
1228 -(% style="background-color:#dcdcdc" %)**AT+ADR=0** (%%)Set the Adaptive Data Rate Off
1090 +AT+TDC=60000  Set transmit interval to 60 seconds
1229 1229  
1230 -(% style="background-color:#dcdcdc" %)**AT+DR=5**  (%%)Set Data Rate
1092 +AT+CHS=868400000 Set transmit frequency to 868.4Mhz
1231 1231  
1232 -(% style="background-color:#dcdcdc" %)**AT+TDC=60000** (%%) Set transmit interval to 60 seconds
1094 +AT+RX2FQ=868400000 Set RX2Frequency to 868.4Mhz (according to the result from server)
1233 1233  
1234 -(% style="background-color:#dcdcdc" %)**AT+CHS=868400000**(%%) Set transmit frequency to 868.4Mhz
1096 +AT+RX2DR= Set RX2DR to match the downlink DR from server. see below
1235 1235  
1236 -(% style="background-color:#dcdcdc" %)**AT+RX2FQ=868400000** (%%) Set RX2Frequency to 868.4Mhz (according to the result from server)
1098 +AT+DADDR=26 01 1A F1 Set Device Address to 26 01 1A F1, this ID can be found in the LoRa Server portal.
1237 1237  
1238 -(% style="background-color:#dcdcdc" %)**AT+RX2DR=5**  (%%) Set RX2DR to match the downlink DR from server. see below
1100 +ATZ          Reset MCU
1239 1239  
1240 -(% style="background-color:#dcdcdc" %)**AT+DADDR=26** (%%) 01 1A F1 Set Device Address to 26 01 1A F1, this ID can be found in the LoRa Server portal.
1102 +**Note:**
1241 1241  
1242 -(% style="background-color:#dcdcdc" %)**ATZ**       (%%) Reset MCU
1104 +1. Make sure the device is set to ABP mode in the IoT Server.
1105 +1. Make sure the LG01/02 gateway RX frequency is exactly the same as AT+CHS setting.
1106 +1. Make sure SF / bandwidth setting in LG01/LG02 match the settings of AT+DR. refer [[this link>>url:http://www.dragino.com/downloads/index.php?dir=LoRa_Gateway/&file=LoRaWAN%201.0.3%20Regional%20Parameters.xlsx]] to see what DR means.
1107 +1. The command AT+RX2FQ and AT+RX2DR is to let downlink work. to set the correct parameters, user can check the actually downlink parameters to be used. As below. Which shows the RX2FQ should use 868400000 and RX2DR should be 5
1243 1243  
1109 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image029.png]]
1244 1244  
1245 -(% style="color:red" %)**Note:**
1246 1246  
1247 -(% style="color:red" %)1. Make sure the device is set to ABP mode in the IoT Server.
1248 -2. Make sure the LG01/02 gateway RX frequency is exactly the same as AT+CHS setting.
1249 -3. Make sure SF / bandwidth setting in LG01/LG02 match the settings of AT+DR. refer [[this link>>url:http://www.dragino.com/downloads/index.php?dir=LoRa_Gateway/&file=LoRaWAN%201.0.3%20Regional%20Parameters.xlsx]] to see what DR means.
1250 -4. The command AT+RX2FQ and AT+RX2DR is to let downlink work. to set the correct parameters, user can check the actually downlink parameters to be used. As below. Which shows the RX2FQ should use 868400000 and RX2DR should be 5
1112 +1. FAQ
1113 +11. How to upgrade the image?
1251 1251  
1252 -[[image:1654136435598-589.png]]
1253 -
1254 -
1255 -= 6. FAQ =
1256 -
1257 -== 6.1 How to upgrade the image? ==
1258 -
1259 1259  The RS485-BL LoRaWAN Controller is shipped with a 3.5mm cable, the cable is used to upload image to RS485-BL to:
1260 1260  
1261 1261  * Support new features
... ... @@ -1264,7 +1264,7 @@
1264 1264  
1265 1265  Below shows the hardware connection for how to upload an image to RS485-BL:
1266 1266  
1267 -[[image:1654136646995-976.png]]
1123 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image030.png]]
1268 1268  
1269 1269  **Step1:** Download [[flash loader>>url:https://www.st.com/content/st_com/en/products/development-tools/software-development-tools/stm32-software-development-tools/stm32-programmers/flasher-stm32.html]].
1270 1270  
... ... @@ -1272,95 +1272,97 @@
1272 1272  
1273 1273  **Step3: **Open flashloader; choose the correct COM port to update.
1274 1274  
1275 -[[image:image-20220602102605-1.png]]
1276 1276  
1132 +|(((
1133 +HOLD PRO then press the RST button, SYS will be ON, then click next
1134 +)))
1277 1277  
1278 -[[image:image-20220602102637-2.png]]
1136 +|(((
1137 +Board detected
1138 +)))
1279 1279  
1140 +|(((
1141 +
1142 +)))
1280 1280  
1281 -[[image:image-20220602102715-3.png]]
1144 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image031.png]] [[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image032.png]]
1282 1282  
1283 1283  
1284 1284  
1285 -== 6.2 How to change the LoRa Frequency Bands/Region? ==
1148 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image033.png]] [[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image034.png]]
1286 1286  
1287 -User can follow the introduction for [[how to upgrade image>>||anchor="H6.1Howtoupgradetheimage3F"]]. When download the images, choose the required image file for download.
1288 1288  
1151 +[[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]]
1289 1289  
1290 1290  
1291 -== 6.3 How many RS485-Slave can RS485-BL connects? ==
1154 +1.
1155 +11. How to change the LoRa Frequency Bands/Region?
1292 1292  
1293 -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>>||anchor="H3.3.3Configurereadcommandsforeachsampling"]].
1157 +User can follow the introduction for [[how to upgrade image>>path:#upgrade_image]]. When download the images, choose the required image file for download.
1294 1294  
1295 1295  
1296 1296  
1297 -= 7. Trouble Shooting =
1161 +1.
1162 +11. How many RS485-Slave can RS485-BL connects?
1298 1298  
1164 +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]].
1299 1299  
1300 -== 7.1 Downlink doesn’t work, how to solve it? ==
1301 1301  
1302 -Please see this link for debug: [[LoRaWAN Communication Debug>>doc:Main.LoRaWAN Communication Debug.WebHome]]
1303 1303  
1304 1304  
1305 -== 7.2 Why I can’t join TTN V3 in US915 /AU915 bands? ==
1169 +1. Trouble Shooting     
1170 +11. Downlink doesn’t work, how to solve it?
1306 1306  
1307 -It might about the channels mapping. Please see for detail: [[Notice of Frequency band>>doc:Main.LoRaWAN Communication Debug.WebHome||anchor="H2.NoticeofUS9152FCN4702FAU915Frequencyband"]]
1172 +Please see this link for debug:
1308 1308  
1174 +[[http:~~/~~/wiki.dragino.com/index.php?title=Main_Page#LoRaWAN_Communication_Debug>>url:http://wiki.dragino.com/index.php?title=Main_Page#LoRaWAN_Communication_Debug]] 
1309 1309  
1310 -= 8. Order Info =
1311 1311  
1312 -(% style="color:blue" %)**Part Number: RS485-BL-XXX**
1313 1313  
1314 -(% style="color:blue" %)**XXX:**
1178 +1.
1179 +11. Why I can’t join TTN V3 in US915 /AU915 bands?
1315 1315  
1316 -* (% style="color:blue" %)**EU433**(%%): frequency bands EU433
1317 -* (% style="color:blue" %)**EU868**(%%): frequency bands EU868
1318 -* (% style="color:blue" %)**KR920**(%%): frequency bands KR920
1319 -* (% style="color:blue" %)**CN470**(%%): frequency bands CN470
1320 -* (% style="color:blue" %)**AS923**(%%): frequency bands AS923
1321 -* (% style="color:blue" %)**AU915**(%%): frequency bands AU915
1322 -* (% style="color:blue" %)**US915**(%%): frequency bands US915
1323 -* (% style="color:blue" %)**IN865**(%%): frequency bands IN865
1324 -* (% style="color:blue" %)**RU864**(%%): frequency bands RU864
1325 -* (% style="color:blue" %)**KZ865**(%%): frequency bands KZ865
1181 +It might about the channels mapping. Please see for detail.
1326 1326  
1183 +[[http:~~/~~/wiki.dragino.com/index.php?title=LoRaWAN_Communication_Debug#Notice_of_US915.2FCN470.2FAU915_Frequency_band>>url:http://wiki.dragino.com/index.php?title=LoRaWAN_Communication_Debug#Notice_of_US915.2FCN470.2FAU915_Frequency_band]]
1327 1327  
1328 -= 9. Packing Info =
1329 1329  
1330 -(((
1186 +
1187 +1. Order Info
1188 +
1189 +**Part Number: RS485-BL-XXX**
1190 +
1191 +**XXX:**
1192 +
1193 +* **EU433**: frequency bands EU433
1194 +* **EU868**: frequency bands EU868
1195 +* **KR920**: frequency bands KR920
1196 +* **CN470**: frequency bands CN470
1197 +* **AS923**: frequency bands AS923
1198 +* **AU915**: frequency bands AU915
1199 +* **US915**: frequency bands US915
1200 +* **IN865**: frequency bands IN865
1201 +* **RU864**: frequency bands RU864
1202 +* **KZ865: **frequency bands KZ865
1203 +
1204 +1. Packing Info
1205 +
1331 1331  **Package Includes**:
1332 -)))
1333 1333  
1334 -* (((
1335 -RS485-BL x 1
1336 -)))
1337 -* (((
1338 -Stick Antenna for LoRa RF part x 1
1339 -)))
1340 -* (((
1341 -Program cable x 1
1342 -)))
1208 +* RS485-BL x 1
1209 +* Stick Antenna for LoRa RF part x 1
1210 +* Program cable x 1
1343 1343  
1344 -(((
1345 1345  **Dimension and weight**:
1346 -)))
1347 1347  
1348 -* (((
1349 -Device Size: 13.5 x 7 x 3 cm
1350 -)))
1351 -* (((
1352 -Device Weight: 105g
1353 -)))
1354 -* (((
1355 -Package Size / pcs : 14.5 x 8 x 5 cm
1356 -)))
1357 -* (((
1358 -Weight / pcs : 170g
1214 +* Device Size: 13.5 x 7 x 3 cm
1215 +* Device Weight: 105g
1216 +* Package Size / pcs : 14.5 x 8 x 5 cm
1217 +* Weight / pcs : 170g
1359 1359  
1360 -
1361 -)))
1219 +1. Support
1362 1362  
1363 -= 10. Support =
1364 -
1365 1365  * Support is provided Monday to Friday, from 09:00 to 18:00 GMT+8. Due to different timezones we cannot offer live support. However, your questions will be answered as soon as possible in the before-mentioned schedule.
1366 -* Provide as much information as possible regarding your enquiry (product models, accurately describe your problem and steps to replicate it etc) and send a mail to [[support@dragino.com>>url:file:///D:/市场资料/说明书/LoRa/LT系列/support@dragino.com]]
1222 +* Provide as much information as possible regarding your enquiry (product models, accurately describe your problem and steps to replicate it etc) and send a mail to
1223 +
1224 +[[support@dragino.com>>url:file:///D:/市场资料/说明书/LoRa/LT系列/support@dragino.com]]
1653271044481-711.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -27.8 KB
Content
1653271276735-972.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -26.6 KB
Content
1653271581490-837.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -138.7 KB
Content
1653271648378-342.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -131.4 KB
Content
1653271657255-576.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -142.6 KB
Content
1653271763403-806.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -27.7 KB
Content
1653272787040-634.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -294.0 KB
Content
1653272817147-600.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -143.3 KB
Content
1653272901032-107.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -197.8 KB
Content
1653273818896-432.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -31.6 KB
Content
1653274001211-372.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -91.4 KB
Content
1654132684752-193.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -22.8 KB
Content
1654133913295-597.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -116.2 KB
Content
1654133954153-643.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -91.2 KB
Content
1654134704555-320.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -91.4 KB
Content
1654135840598-282.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -1.3 MB
Content
1654136105500-922.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -203.7 KB
Content
1654136435598-589.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -158.9 KB
Content
1654136646995-976.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -1.3 MB
Content
image-20220602102605-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -102.6 KB
Content
image-20220602102637-2.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -250.8 KB
Content
image-20220602102715-3.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -176.2 KB
Content