Changes for page RS485-LN – RS485 to LoRaWAN Converter User Manual
Last modified by Bei Jinggeng on 2025/01/16 11:36
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 15 removed)
- image-20220929111027-1.png
- image-20221130104310-1.png
- image-20221130104310-10.png
- image-20221130104310-11.png
- image-20221130104310-12.png
- image-20221130104310-13.png
- image-20221130104310-14.png
- image-20221130104310-2.png
- image-20221130104310-3.png
- image-20221130104310-4.png
- image-20221130104310-5.png
- image-20221130104310-6.png
- image-20221130104310-7.png
- image-20221130104310-8.png
- image-20221130104310-9.png
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Bei1 +XWiki.Xiaoling - Content
-
... ... @@ -28,51 +28,69 @@ 28 28 29 29 30 30 31 -= 1. 31 += 1.Introduction = 32 32 33 + 33 33 == 1.1 What is RS485-LN RS485 to LoRaWAN Converter == 34 34 35 - 36 36 ((( 37 +((( 38 +((( 39 + 40 + 37 37 The Dragino RS485-LN is a (% style="color:blue" %)**RS485 to LoRaWAN Converter**(%%). It converts the RS485 signal into LoRaWAN wireless signal which simplify the IoT installation and reduce the installation/maintaining cost. 38 38 ))) 43 +))) 39 39 40 40 ((( 46 +((( 41 41 RS485-LN allows user to (% style="color:blue" %)**monitor / control RS485 devices**(%%) and reach extremely long ranges. It provides ultra-long range spread spectrum communication and high interference immunity whilst minimizing current consumption. It targets professional wireless sensor network applications such as irrigation systems, smart metering, smart cities, smartphone detection, building automation, and so on. 42 42 ))) 49 +))) 43 43 44 44 ((( 52 +((( 45 45 (% style="color:blue" %)**For data uplink**(%%), RS485-LN sends user-defined commands to RS485 devices and gets the return from the RS485 devices. RS485-LN will process these returns according to user-define rules to get the final payload and upload to LoRaWAN server. 46 46 ))) 55 +))) 47 47 48 48 ((( 58 +((( 49 49 (% style="color:blue" %)**For data downlink**(%%), RS485-LN runs in LoRaWAN Class C. When there downlink commands from LoRaWAN server, RS485-LN will forward the commands from LoRaWAN server to RS485 devices. 50 50 ))) 51 51 52 52 ((( 53 53 (% style="color:blue" %)**Demo Dashboard for RS485-LN**(%%) connect to two energy meters: [[https:~~/~~/app.datacake.de/dashboard/d/58844a26-378d-4c5a-aaf5-b5b5b153447a>>url:https://app.datacake.de/dashboard/d/58844a26-378d-4c5a-aaf5-b5b5b153447a]] 64 + 65 + 54 54 ))) 67 +))) 68 +))) 55 55 56 - 57 57 (% aria-label="1653267211009-519.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1653267211009-519.png||data-widget="image" height="419" width="724"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 58 58 59 59 73 + 60 60 == 1.2 Specifications == 61 61 62 62 63 63 (% style="color:#037691" %)**Hardware System:** 64 64 65 -* STM32L072 xxxxMCU79 +* STM32L072CZT6 MCU 66 66 * SX1276/78 Wireless Chip 67 67 * Power Consumption (exclude RS485 device): 68 68 ** Idle: 32mA@12v 69 69 ** 20dB Transmit: 65mA@12v 70 70 85 + 86 + 71 71 (% style="color:#037691" %)**Interface for Model:** 72 72 73 73 * RS485 74 74 * Power Input 7~~ 24V DC. 75 75 92 + 93 + 76 76 (% style="color:#037691" %)**LoRa Spec:** 77 77 78 78 * Frequency Range: ... ... @@ -95,6 +95,8 @@ 95 95 * Packet engine up to 256 bytes with CRC 96 96 97 97 116 + 117 + 98 98 == 1.3 Features == 99 99 100 100 ... ... @@ -108,6 +108,8 @@ 108 108 * Support Interrupt uplink (Since hardware version v1.2) 109 109 110 110 131 + 132 + 111 111 == 1.4 Applications == 112 112 113 113 ... ... @@ -119,6 +119,8 @@ 119 119 * Smart Factory 120 120 121 121 144 + 145 + 122 122 == 1.5 Firmware Change log == 123 123 124 124 ... ... @@ -139,6 +139,7 @@ 139 139 v1.0: Release 140 140 ))) 141 141 166 + 142 142 143 143 ))) 144 144 ))) ... ... @@ -158,11 +158,13 @@ 158 158 159 159 (% aria-label="1653268091319-405.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1653268091319-405.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 160 160 186 + 161 161 162 162 ))) 163 163 164 164 = 3. Operation Mode = 165 165 192 + 166 166 == 3.1 How it works? == 167 167 168 168 ... ... @@ -171,6 +171,7 @@ 171 171 The RS485-LN is configured as LoRaWAN OTAA Class C 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-LN. It will auto join the network via OTAA. 172 172 ))) 173 173 201 + 174 174 175 175 ))) 176 176 ... ... @@ -259,6 +259,7 @@ 259 259 (% aria-label="1652953568895-172.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1652953568895-172.png||data-widget="image" height="232" width="724"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 260 260 261 261 290 + 262 262 == 3.3 Configure Commands to read data == 263 263 264 264 ... ... @@ -276,6 +276,7 @@ 276 276 (% style="color:red" %)**Note: below description and commands are for firmware version >v1.1, if you have firmware version v1.0. Please check the [[user manual v1.0>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/&file=RS485-LN_UserManual_v1.0.1.pdf]] or upgrade the firmware to v1.1** 277 277 ))) 278 278 308 + 279 279 280 280 ))) 281 281 ))) ... ... @@ -286,10 +286,10 @@ 286 286 To use RS485-LN to read data from RS485 sensors, connect the RS485-LN A/B traces to the sensors. And user need to make sure RS485-LN use the match UART setting to access the sensors. The related commands for UART settings are: 287 287 288 288 289 -(% border="1" cellspacing=" 5" style="background-color:#ffffcc; color:green; width:510px" %)319 +(% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %) 290 290 |=(% style="width: 110px;" %)((( 291 291 **AT Commands** 292 -)))|=(% style="width: 210px;" %)(((322 +)))|=(% style="width: 190px;" %)((( 293 293 **Description** 294 294 )))|=(% style="width: 190px;" %)((( 295 295 **Example** ... ... @@ -345,6 +345,8 @@ 345 345 ))) 346 346 347 347 378 + 379 + 348 348 === 3.3.2 Configure sensors === 349 349 350 350 ... ... @@ -356,8 +356,8 @@ 356 356 ))) 357 357 ))) 358 358 359 -(% border="1" cellspacing=" 5" style="background-color:#ffffcc; color:green; width:510px" %)360 -|=(% style="width: 110px;" %)**AT Commands**|=(% style="width: 210px;" %)**Description**|=(% style="width: 190px;" %)**Example**391 +(% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %) 392 +|=(% style="width: 110px;" %)**AT Commands**|=(% style="width: 190px;" %)**Description**|=(% style="width: 190px;" %)**Example** 361 361 |AT+CFGDEV|(% style="width:110px" %)((( 362 362 ((( 363 363 This command is used to configure the RS485/TTL devices; they won’t be used during sampling. ... ... @@ -373,6 +373,8 @@ 373 373 )))|(% style="width:190px" %)AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m 374 374 375 375 408 + 409 + 376 376 === 3.3.3 Configure read commands for each sampling === 377 377 378 378 ... ... @@ -388,7 +388,6 @@ 388 388 389 389 (% style="color:#037691" %)**Each RS485 commands include two parts:** 390 390 391 - 392 392 ~1. What commands RS485-LN will send to the RS485 sensors. There are total 15 commands from **AT+COMMAD1**, **ATCOMMAND2**,…, to **AT+COMMANDF**. All commands are of same grammar. 393 393 394 394 2. How to get wanted value the from RS485 sensors returns from by 1). There are total 15 AT Commands to handle the return, commands are **AT+DATACUT1**,**AT+DATACUT2**,…, **AT+DATACUTF** corresponding to the commands from 1). All commands are of same grammar. ... ... @@ -405,7 +405,7 @@ 405 405 406 406 (% border="1" style="background-color:#4bacc6; color:white; width:499px" %) 407 407 |(% style="width:496px" %)((( 408 -**AT+COMMANDx=xx xx xx xx xx xx xx xx xx xx xx xx,m** 441 +(% style="color:#037691" %)**AT+COMMANDx=xx xx xx xx xx xx xx xx xx xx xx xx,m** 409 409 410 410 **xx xx xx xx xx xx xx xx xx xx xx xx: The RS485 command to be sent** 411 411 ... ... @@ -430,7 +430,6 @@ 430 430 431 431 **Examples:** 432 432 433 - 434 434 * (% style="color:#037691" %)**Grab bytes** 435 435 436 436 (% aria-label="image-20220602153621-1.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602153621-1.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) ... ... @@ -447,6 +447,7 @@ 447 447 448 448 (% aria-label="image-20220602153621-3.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602153621-3.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 449 449 482 + 450 450 451 451 ))) 452 452 ... ... @@ -470,16 +470,18 @@ 470 470 ))) 471 471 472 472 ((( 473 -Final Payload is (% style="color:#4f81bd" %)**Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx**506 +Final Payload is 474 474 ))) 475 475 476 476 ((( 477 -Where PAYVER is defined by AT+PAYVER, below is an example screen shot. 510 +(% style="color:#4f81bd" %)**Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx** 511 +))) 478 478 479 - 513 +((( 514 +Where PAYVER is defined by AT+PAYVER, below is an example screen shot. 480 480 ))) 481 481 482 -[[image:image-20220 929111027-1.png||height="509" width="685"]](% title="Click and drag to resize" %)517 +(% aria-label="1653269759169-150.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1653269759169-150.png||data-widget="image" height="513" width="716"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 483 483 484 484 485 485 (% style="color:#037691" %)**Examples: AT+DATAUP=1** ... ... @@ -487,18 +487,16 @@ 487 487 488 488 Compose the uplink payload with value returns in sequence and send with (% style="color:red" %)**Multiply UPLINKs**. 489 489 490 -Final Payload is (% style="color:#4f81bd" %)**PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA**525 +Final Payload is 491 491 527 +(% style="color:#4f81bd" %)**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA** 492 492 493 -~1. PAYVER: Defined by AT+PAYVER 494 494 495 -2. PAYLOAD COUNT: Total how many uplinks of this sampling. 530 +1. PAYVER: Defined by AT+PAYVER 531 +1. PAYLOAD COUNT: Total how many uplinks of this sampling. 532 +1. PAYLOAD#: Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT) 533 +1. DATA: Valid value: max 8 bytes for each uplink so each uplink <= 11 bytes. For the last uplink, DATA will might less than 8 bytes 496 496 497 -3. PAYLOAD#: Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT) 498 - 499 -4. DATA: Valid value: max 8 bytes for each uplink so each uplink <= 11 bytes. For the last uplink, DATA will might less than 8 bytes 500 - 501 - 502 502 (% aria-label="image-20220602155039-4.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602155039-4.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 503 503 504 504 ... ... @@ -513,7 +513,6 @@ 513 513 514 514 (% style="color:red" %)**Notice: In firmware v1.3, the Max bytes has been changed according to the max bytes in different Frequency Bands for lowest SF. As below:** 515 515 516 - 517 517 ~* For AU915/AS923 bands, if UplinkDwell time=0, max 51 bytes for each uplink. 518 518 519 519 * For AU915/AS923 bands, if UplinkDwell time=0, max 11 bytes for each uplink. ... ... @@ -522,70 +522,61 @@ 522 522 523 523 ~* For all other bands: max 51 bytes for each uplink. 524 524 557 +(% style="color:red" %)*** When AT+DATAUP=1, the maximum number of segments is 15, and the maximum total number of bytes is 1500;** 525 525 526 -(% style="color:red" %)** When AT+DATAUP=1, the maximum number of segmentsis15,and theaximum totalnumberofbytesis1500;**559 +(% style="color:red" %)** When AT+DATAUP=1 and AT+ADR=0, the maximum number of bytes of each payload is determined by the DR value. (Since v1.4.0)** 527 527 528 -(% style="color:red" %)** When AT+DATAUP=1 and AT+ADR=0, the maximum number of bytes of each payload is determined by the DR value. (Since v1.4.0)** 529 529 562 +(% style="color:#4f81bd" %)**If the data is empty, return to the display(Since v1.4.0)** 530 530 564 +1)When AT+MOD=1, if the data intercepted by AT+DATACUT or AT+MBFUN is empty, it will display NULL, and the payload will be filled with n FFs. 531 531 532 - Belowheuplinkpayloads:566 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/test/WebHome/image-20220824114359-3.png?width=1106&height=297&rev=1.1||alt="image-20220824114359-3.png" height="297" width="1106"]] 533 533 568 +2)When AT+MOD=2, if the data intercepted by AT+DATACUT or AT+MBFUN is empty, it will display NULL, and the payload will be filled with n 00s. 534 534 570 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/test/WebHome/image-20220824114330-2.png?rev=1.1||alt="image-20220824114330-2.png"]] 571 + 572 + 573 +Below are the uplink payloads: 574 + 535 535 (% aria-label="1654157178836-407.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1654157178836-407.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 536 536 537 537 578 + 538 538 === 3.3.5 Uplink on demand === 539 539 540 540 541 541 Except uplink periodically, RS485-LN is able to uplink on demand. The server send downlink command to RS485-LN and RS485 will uplink data base on the command. 542 542 543 - (% style="color:blue" %)**Downlink control command:**584 +Downlink control command: 544 544 545 - (% style="color:#4472c4" %)**(%%): Poll an uplink with current command set in RS485-LN.586 +**0x08 command**: Poll an uplink with current command set in RS485-LN. 546 546 547 - (% style="color:#4472c4" %)**(%%): Send a command to RS485-LN and uplink the output from sensors.588 +**0xA8 command**: Send a command to RS485-LN and uplink the output from sensors. 548 548 549 549 591 + 550 550 === 3.3.6 Uplink on Interrupt === 551 551 552 552 553 553 RS485-LN support external Interrupt uplink since hardware v1.2 release. 554 554 555 - 556 556 (% aria-label="1654157342174-798.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1654157342174-798.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 557 557 558 558 Connect the Interrupt pin to RS485-LN INT port and connect the GND pin to V- port. When there is a high voltage (Max 24v) on INT pin. Device will send an uplink packet. 559 559 560 560 602 + 561 561 == 3.4 Uplink Payload == 562 562 563 563 564 -(% border="1" cellspacing="5" style="background-color:#ffffcc; color:green; width:500px" %) 565 -|=(% scope="row" style="width: 60px;" %)((( 566 -Size(bytes) 567 -)))|(% style="width:80px" %)1|(% style="width:360px" %)((( 568 -Length depends on the return from the commands 569 -))) 570 -|=(% style="width: 90px;" %)((( 571 -Value 572 -)))|(% style="width:114px" %)((( 573 -PAYLOAD_VER 574 -)))|(% style="width:353px" %)((( 575 -If the valid payload is too long and exceed the maximum 606 +(% aria-label="image-20220606110929-1.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220606110929-1.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 576 576 577 -support payload length in server, server will show payload not 578 - 579 -provided in the LoRaWAN server. 580 -))) 581 - 582 -(% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]] 583 - 584 -(% title="Click and drag to resize" %) 585 - 586 586 Below is the decoder for the first 3 bytes. The rest bytes are dynamic depends on different RS485 sensors. 587 587 588 588 611 + 589 589 == 3.5 Configure RS485-LN via AT or Downlink == 590 590 591 591 ... ... @@ -610,6 +610,7 @@ 610 610 ))) 611 611 612 612 636 + 613 613 === 3.5.1 Common Commands === 614 614 615 615 ... ... @@ -616,35 +616,35 @@ 616 616 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]] 617 617 618 618 643 + 619 619 === 3.5.2 Downlink Response(Since firmware v1.4) === 620 620 621 621 622 622 Response feature is added to the server's downlink, a special package with a FPort of 200 will be uploaded immediately after receiving the data sent by the server. 623 623 649 +(% aria-label="image-20220602163333-5.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602163333-5.png||data-widget="image" height="263" width="1160"]](% title="Click and drag to resize" %) 624 624 625 -(% aria-label="image-20220602163333-5.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602163333-5.png||data-widget="image" height="263" width="1160"]] 626 - 627 -(% title="Click and drag to resize" %) 628 - 629 629 The first byte of this package represents whether the configuration is successful, 00 represents failure, 01 represents success. Except for the first byte, the other is the previous downlink. (All commands except A8 type commands are applicable) 630 630 631 631 654 + 632 632 === 3.5.3 Sensor related commands === 633 633 634 634 635 635 659 + 636 636 ==== (% style="color:blue" %)**RS485 Debug Command**(%%) ==== 637 637 638 638 639 639 ((( 640 -This command is used to configure the RS485 devices; they won't be used during sampling. Max Length of AT+CFGDEV is **40 bytes**.664 +This command is used to configure the RS485 devices; they won't be used during sampling. 641 641 ))) 642 642 643 -((( 644 - *(% style="color:#037691" %)**AT Command**667 +* ((( 668 +(% style="color:#037691" %)**AT Command** 645 645 646 646 ((( 647 - (% style="color:#4472c4" %)**(%%)m: 0: no CRC, 1: add CRC-16/MODBUS in the end of this command671 +**AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m** m: 0: no CRC, 1: add CRC-16/MODBUS in the end of this command 648 648 ))) 649 649 ))) 650 650 ... ... @@ -657,7 +657,7 @@ 657 657 ))) 658 658 659 659 ((( 660 -Format: (% style="color:#4472c4" %)**A8 MM NN XX XX XX XX YY**684 +Format: A8 MM NN XX XX XX XX YY 661 661 ))) 662 662 663 663 ((( ... ... @@ -755,6 +755,7 @@ 755 755 756 756 757 757 782 + 758 758 ==== (% style="color:blue" %)**Set Payload version**(%%) ==== 759 759 760 760 ... ... @@ -762,41 +762,34 @@ 762 762 This is the first byte of the uplink payload. RS485-LN can connect to different sensors. User can set the PAYVER field to tell server how to decode the current payload. 763 763 ))) 764 764 765 -((( 766 - *(% style="color:#037691" %)**AT Command:**790 +* ((( 791 +(% style="color:#037691" %)**AT Command:** 767 767 768 - (% style="color:#4472c4" %)**(%%)Set PAYVER field = 1793 +**AT+PAYVER: **Set PAYVER field = 1 769 769 770 770 771 771 ))) 772 - 773 773 * ((( 774 774 (% style="color:#037691" %)**Downlink Payload:** 775 775 ))) 776 776 777 777 ((( 778 - (% style="color:#4472c4" %)**(%%)802 +**0xAE 01** ~-~-> Set PAYVER field = 0x01 779 779 ))) 780 780 781 781 ((( 782 - (% style="color:#4472c4" %)**(%%)~-~-> Set PAYVER field = 0x0F806 +**0xAE 0F** ~-~-> Set PAYVER field = 0x0F 783 783 ))) 784 784 785 785 786 - **1**810 +1)Add the interrupt flag at the highest bit of the Payver byte, that is, Byte7 of the first byte. (Since v1.4.0)[[image:image-20220824145428-2.png||height="168" width="1300"]] 787 787 788 788 789 - [[image:image-20220824145428-2.png||height="168"width="1300"]]813 +2)if the data intercepted by AT+DATACUT or AT+MBFUN is empty, it will display NULL, and the payload will be filled with n FFs. 790 790 791 - 792 - 793 -**2 ) if the data intercepted by AT+DATACUT or AT+MBFUN is empty, it will display NULL, and the payload will be filled with n FFs.** 794 - 795 - 796 796 [[image:image-20220824145428-3.png||height="308" width="1200"]] 797 797 798 798 799 - 800 800 ==== (% style="color:blue" %)**Set RS485 Sampling Commands**(%%) ==== 801 801 802 802 ... ... @@ -816,9 +816,9 @@ 816 816 (% style="color:#037691" %)**AT Command:** 817 817 ))) 818 818 819 - (% style="color:#4472c4" %)**(%%)Configure RS485 read command to sensor.837 +**AT+COMMANDx: **Configure RS485 read command to sensor. 820 820 821 - (% style="color:#4472c4" %)**(%%)Configure how to handle return from RS485 devices.839 +**AT+DATACUTx: **Configure how to handle return from RS485 devices. 822 822 823 823 824 824 * ((( ... ... @@ -826,19 +826,19 @@ 826 826 ))) 827 827 828 828 ((( 829 - (% style="color:#4472c4" %)**(%%)847 +**0xAF** downlink command can be used to set AT+COMMANDx or AT+DATACUTx. 830 830 831 831 832 832 ))) 833 833 834 834 ((( 835 -(% style="color:red" %)**Note **853 +(% style="color:red" %)**Note**(%%): if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink. 836 836 837 837 838 838 ))) 839 839 840 840 ((( 841 -Format: (% style="color:#4472c4" %)**AF MM NN LL XX XX XX XX YY**859 +Format: AF MM NN LL XX XX XX XX YY 842 842 ))) 843 843 844 844 ((( ... ... @@ -881,11 +881,12 @@ 881 881 882 882 883 883 902 + 884 884 ==== (% style="color:blue" %)**Fast command to handle MODBUS device**(%%) ==== 885 885 886 886 887 887 ((( 888 - (% style="color:#4472c4" %)**(%%)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]].907 +**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]]. 889 889 ))) 890 890 891 891 ((( ... ... @@ -916,14 +916,13 @@ 916 916 917 917 ))) 918 918 919 -(% aria-label="image-20220602165351-6.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602165351-6.png||data-widget="image"]] 938 +(% aria-label="image-20220602165351-6.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602165351-6.png||data-widget="image"]](% title="Click and drag to resize" %) 920 920 921 -(% title="Click and drag to resize" %) 922 - 923 923 (% aria-label="image-20220602165351-7.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602165351-7.png||data-widget="image"]](% title="Click and drag to resize" %) 924 924 925 925 926 926 944 + 927 927 ==== (% style="color:blue" %)**RS485 command timeout**(%%) ==== 928 928 929 929 ... ... @@ -935,10 +935,10 @@ 935 935 Default value: 0, range: 0 ~~ 65 seconds 936 936 ))) 937 937 938 -((( 939 - *(% style="color:#037691" %)** AT Command:**956 +* ((( 957 +(% style="color:#037691" %)** AT Command:** 940 940 941 - (% style="color:#4472c4" %)**959 +**AT+CMDDLaa=hex(bb cc)*1000** 942 942 ))) 943 943 944 944 ((( ... ... @@ -948,7 +948,7 @@ 948 948 ))) 949 949 950 950 ((( 951 - (% style="color:#4472c4" %)**(%%)to send the open time to 1000ms969 +**AT+CMDDL1=1000** to send the open time to 1000ms 952 952 ))) 953 953 954 954 ((( ... ... @@ -960,21 +960,22 @@ 960 960 ))) 961 961 962 962 ((( 963 - (% style="color:#4472c4" %)**(%%) Same as: AT+CMDDLaa=hex (bb cc)981 +**0x AA aa bb cc** 964 964 ))) 965 965 966 966 ((( 967 - 985 +Same as: AT+CMDDLaa=hex(bb cc)*1000 986 +))) 968 968 988 +((( 969 969 **Example:** 970 970 ))) 971 971 972 972 ((( 973 -**0xAA 01 0 3E8** ~-~-> Same as **AT+CMDDL1=1000 ms**993 +**0xAA 01 00 01** ~-~-> Same as **AT+CMDDL1=1000 ms** 974 974 ))) 975 975 976 976 977 - 978 978 ==== (% style="color:blue" %)**Uplink payload mode**(%%) ==== 979 979 980 980 ... ... @@ -988,17 +988,17 @@ 988 988 989 989 ))) 990 990 991 -((( 992 - *(% style="color:#037691" %)** AT Command:**1010 +* ((( 1011 +(% style="color:#037691" %)** AT Command:** 993 993 994 - (% style="color:#4472c4" %)**1013 +**AT+DATAUP=0** 995 995 996 - (% style="color:#4472c4" %)**1015 +**AT+DATAUP=1** 997 997 998 998 999 999 ))) 1000 1000 1001 - (% style="color:#4472c4" %)**(%%)1020 +**0xAD 01 00 00 14** **~-~->** Same as AT+DATAUP=1,20000 ~/~/(00 00 14 is 20 seconds) 1002 1002 1003 1003 Each uplink is sent to the server at 20-second intervals when segmented. 1004 1004 ... ... @@ -1007,9 +1007,9 @@ 1007 1007 (% style="color:#037691" %)** Downlink Payload:** 1008 1008 ))) 1009 1009 1010 - (% style="color:#4472c4" %)**(%%)1029 +**0xAD 00** **~-~->** Same as AT+DATAUP=0 1011 1011 1012 - (% style="color:#4472c4" %)**(%%)**~-~->** Same as AT+DATAUP=1 ~/~/Each uplink is sent to the server one after the other as it is segmented.1031 +**0xAD 01** **~-~->** Same as AT+DATAUP=1 ~/~/Each uplink is sent to the server one after the other as it is segmented. 1013 1013 1014 1014 1015 1015 * ((( ... ... @@ -1016,7 +1016,7 @@ 1016 1016 (% style="color:#037691" %)** AT Command:** 1017 1017 ))) 1018 1018 1019 - (% style="color:#4472c4" %)**1038 +**AT+DATAUP=1,Timeout** 1020 1020 1021 1021 1022 1022 * ((( ... ... @@ -1023,12 +1023,10 @@ 1023 1023 (% style="color:#037691" %)** Downlink Payload:** 1024 1024 ))) 1025 1025 1026 - (% style="color:#4472c4" %)**(%%)1045 +**0xAD 01 00 00 14** **~-~->** Same as AT+DATAUP=1,20000 ~/~/(00 00 14 is 20 seconds) 1027 1027 1028 1028 Each uplink is sent to the server at 20-second intervals when segmented. 1029 1029 1030 - 1031 - 1032 1032 ==== (% style="color:blue" %)**Manually trigger an Uplink**(%%) ==== 1033 1033 1034 1034 ... ... @@ -1053,11 +1053,12 @@ 1053 1053 ))) 1054 1054 1055 1055 ((( 1056 - (% style="color:#4472c4" %)**(%%), RS485-LN will immediately send an uplink.1073 +**0x08 FF**, RS485-LN will immediately send an uplink. 1057 1057 ))) 1058 1058 1059 1059 1060 1060 1078 + 1061 1061 ==== (% style="color:blue" %)**Clear RS485 Command**(%%) ==== 1062 1062 1063 1063 ... ... @@ -1072,12 +1072,10 @@ 1072 1072 ))) 1073 1073 1074 1074 ((( 1075 - (% style="color:#4472c4" %)**(%%)mm: start position of erase ,nn: stop position of erase1093 +**AT+CMDEAR=mm,nn** mm: start position of erase ,nn: stop position of erase 1076 1076 ))) 1077 1077 1078 1078 ((( 1079 - 1080 - 1081 1081 Etc. AT+CMDEAR=1,10 means erase AT+COMMAND1/AT+DATACUT1 to AT+COMMAND10/AT+DATACUT10 1082 1082 ))) 1083 1083 ... ... @@ -1101,20 +1101,23 @@ 1101 1101 ))) 1102 1102 1103 1103 ((( 1104 - (% style="color:#4472c4" %)**(%%)same as AT+CMDEAR=aa,bb1120 +**0x09 aa bb** same as AT+CMDEAR=aa,bb 1105 1105 ))) 1106 1106 1107 1107 1108 1108 1125 + 1109 1109 ==== (% style="color:blue" %)**Set Serial Communication Parameters**(%%) ==== 1110 1110 1111 1111 1112 1112 ((( 1113 1113 Set the Rs485 serial communication parameters: 1131 + 1132 + 1114 1114 ))) 1115 1115 1116 -((( 1117 -(% style="color:#037691" %)**AT Command:** 1135 +* ((( 1136 +(% style="color:#037691" %)** AT Command:** 1118 1118 ))) 1119 1119 1120 1120 ((( ... ... @@ -1121,7 +1121,7 @@ 1121 1121 * Set Baud Rate 1122 1122 ))) 1123 1123 1124 - (% style="color:#4472c4" %)**(%%)~/~/1143 +**AT+BAUDR=9600** ~/~/ Options: (200~~115200) When using low baud rate or receiving multiple bytes, you need to use AT+CMDDL to increase the receive timeout (the default receive timeout is 400ms), otherwise data will be lost 1125 1125 1126 1126 1127 1127 ((( ... ... @@ -1128,7 +1128,7 @@ 1128 1128 * Set UART Parity 1129 1129 ))) 1130 1130 1131 - (% style="color:#4472c4" %)**(%%)~/~/1150 +**AT+PARITY=0** ~/~/ Option: 0: no parity, 1: odd parity, 2: even parity 1132 1132 1133 1133 1134 1134 ((( ... ... @@ -1135,15 +1135,16 @@ 1135 1135 * Set STOPBIT 1136 1136 ))) 1137 1137 1138 - (% style="color:#4472c4" %)**(%%)~/~/1157 +**AT+STOPBIT=0** ~/~/ Option: 0 for 1bit; 1 for 1.5 bit ; 2 for 2 bits 1139 1139 1140 1140 1141 -((( 1142 -(% style="color:#037691" %)**Downlink Payload:** 1160 + 1161 +* ((( 1162 +(% style="color:#037691" %)** Downlink Payload:** 1143 1143 ))) 1144 1144 1145 1145 ((( 1146 - (% style="color:#4472c4" %)**(%%)Same AT+BAUDR=hex(aa bb)*1001166 +**A7 01 aa bb**: Same AT+BAUDR=hex(aa bb)*100 1147 1147 ))) 1148 1148 1149 1149 ((( ... ... @@ -1151,7 +1151,7 @@ 1151 1151 ))) 1152 1152 1153 1153 * ((( 1154 -A7 01 00 60 1174 +A7 01 00 60 same as AT+BAUDR=9600 1155 1155 ))) 1156 1156 * ((( 1157 1157 A7 01 04 80 same as AT+BAUDR=115200 ... ... @@ -1158,37 +1158,14 @@ 1158 1158 ))) 1159 1159 1160 1160 ((( 1161 - *A7 02 aa: Same as AT+PARITY=aa (aa value: 00 , 01 or 02)1181 +A7 02 aa: Same as AT+PARITY=aa (aa value: 00 , 01 or 02) 1162 1162 ))) 1163 1163 1164 1164 ((( 1165 - *A7 03 aa: Same as AT+STOPBIT=aa (aa value: 00 , 01 or 02)1185 +A7 03 aa: Same as AT+STOPBIT=aa (aa value: 00 , 01 or 02) 1166 1166 ))) 1167 1167 1168 1168 1169 - 1170 - 1171 -==== (% style="color:blue" %)**Configure Databit (Since Version 1.4.0)**(%%) ==== 1172 - 1173 - 1174 -* ((( 1175 -(% style="color:#037691" %)** AT Command:** 1176 -))) 1177 - 1178 -(% style="color:#4472c4" %)** AT+DATABIT=7 **(%%)~/~/ Set the data bits to 7 1179 - 1180 -(% style="color:#4472c4" %)** AT+DATABIT=8 **(%%)~/~/ Set the data bits to 8 1181 - 1182 -* ((( 1183 -(% style="color:#037691" %)**Downlink Payload:** 1184 -))) 1185 - 1186 -(% style="color:#4472c4" %)** A7 04 07**(%%): Same as AT+DATABIT=7 1187 - 1188 -(% style="color:#4472c4" %)** A7 04 08**(%%): Same as AT+DATABIT=8 1189 - 1190 - 1191 - 1192 1192 ==== (% style="color:blue" %)**Encrypted payload**(%%) ==== 1193 1193 1194 1194 ((( ... ... @@ -1199,12 +1199,11 @@ 1199 1199 (% style="color:#037691" %)** AT Command:** 1200 1200 ))) 1201 1201 1202 - (% style="color:#4472c4" %)**(%%)~/~/ The payload is uploaded without encryption1199 +**AT+DECRYPT=1 **~/~/ The payload is uploaded without encryption 1203 1203 1204 - (% style="color:#4472c4" %)**(%%)~/~/1201 +**AT+DECRYPT=0 **~/~/Encrypt when uploading payload (default) 1205 1205 1206 1206 1207 - 1208 1208 ==== (% style="color:blue" %)**Get sensor value**(%%) ==== 1209 1209 1210 1210 ... ... @@ -1212,12 +1212,11 @@ 1212 1212 (% style="color:#037691" %)** AT Command:** 1213 1213 ))) 1214 1214 1215 - (% style="color:#4472c4" %)**(%%)~/~/ The serial port gets the reading of the current sensor1211 +**AT+GETSENSORVALUE=0 **~/~/ The serial port gets the reading of the current sensor 1216 1216 1217 - (% style="color:#4472c4" %)**(%%)~/~/1213 +**AT+GETSENSORVALUE=1 **~/~/The serial port gets the current sensor reading and uploads it. 1218 1218 1219 1219 1220 - 1221 1221 ==== (% style="color:blue" %)**Resets the downlink packet count**(%%) ==== 1222 1222 1223 1223 ... ... @@ -1225,12 +1225,11 @@ 1225 1225 (% style="color:#037691" %)** AT Command:** 1226 1226 ))) 1227 1227 1228 - (% style="color:#4472c4" %)**(%%)~/~/1223 +**AT+DISFCNTCHECK=0 **~/~/ When the downlink packet count sent by the server is less than the node downlink packet count or exceeds 16384, the node will no longer receive downlink packets (default) 1229 1229 1230 - (% style="color:#4472c4" %)**(%%)~/~/1225 +**AT+DISFCNTCHECK=1 **~/~/When the downlink packet count sent by the server is less than the node downlink packet count or exceeds 16384, the node resets the downlink packet count and keeps it consistent with the server downlink packet count. 1231 1231 1232 1232 1233 - 1234 1234 ==== (% style="color:blue" %)**When the limit bytes are exceeded, upload in batches**(%%) ==== 1235 1235 1236 1236 ... ... @@ -1238,9 +1238,9 @@ 1238 1238 (% style="color:#037691" %)** AT Command:** 1239 1239 ))) 1240 1240 1241 - (% style="color:#4472c4" %)**(%%)~/~/1235 + **AT+DISMACANS=0** ~/~/ When the MACANS of the reply server plus the payload exceeds the maximum number of bytes of 11 bytes (DR0 of US915, DR2 of AS923, DR2 of AU195), the node will send a packet with a payload of 00 and a port of 4. (default) 1242 1242 1243 - (% style="color:#4472c4" %)**(%%)~/~/1237 + **AT+DISMACANS=1** ~/~/ When the MACANS of the reply server plus the payload exceeds the maximum number of bytes of the DR, the node will ignore the MACANS and not reply, and only upload the payload part. 1244 1244 1245 1245 1246 1246 * ((( ... ... @@ -1247,51 +1247,44 @@ 1247 1247 (% style="color:#037691" %)** Downlink Payload:** 1248 1248 ))) 1249 1249 1250 - (% style="color:#4472c4" %)**(%%)~/~/ Set the DISMACANS=11244 +**0x21 00 01 ** ~/~/ Set the DISMACANS=1 1251 1251 1252 1252 1247 +==== (% style="color:blue" %)** Copy downlink to uplink **(%%) ==== 1253 1253 1254 -==== (% style="color:blue" %)**Copy downlink to uplink **(%%) ==== 1255 1255 1256 - 1257 1257 * ((( 1258 1258 (% style="color:#037691" %)** AT Command:** 1259 1259 ))) 1260 1260 1261 - (% style="color:#4472c4" %)**(%%)~/~/ After receiving the package from the server, it will immediately upload the content of the package to the server, the port number is 100.1254 +**AT+RPL=5** ~/~/ After receiving the package from the server, it will immediately upload the content of the package to the server, the port number is 100. 1262 1262 1263 1263 Example:**aa xx xx xx xx** ~/~/ aa indicates whether the configuration has changed, 00 is yes, 01 is no; xx xx xx xx are the bytes sent. 1264 1264 1265 - 1266 1266 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/image-20220823173747-6.png?width=1124&height=165&rev=1.1||alt="image-20220823173747-6.png"]] 1267 1267 1268 1268 For example, sending 11 22 33 44 55 66 77 will return invalid configuration 00 11 22 33 44 55 66 77. 1269 1269 1270 - 1271 - 1272 1272 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/image-20220823173833-7.png?width=1124&height=149&rev=1.1||alt="image-20220823173833-7.png"]] 1273 1273 1274 1274 For example, if 01 00 02 58 is issued, a valid configuration of 01 01 00 02 58 will be returned. 1275 1275 1276 1276 1277 - 1278 1278 ==== (% style="color:blue" %)**Query version number and frequency band 、TDC**(%%) ==== 1279 1279 1280 1280 1281 -((( 1282 - *(% style="color:#037691" %)**Downlink Payload:**1270 +* ((( 1271 +(% style="color:#037691" %)**Downlink Payload:** 1283 1283 1284 - (% style="color:#4472c4" %)**(%%)~/~/1273 +**26 01 ** ~/~/ Downlink 26 01 can query device upload frequency, frequency band, software version number, TDC time. 1285 1285 ))) 1286 1286 1287 - 1288 1288 Example: 1289 1289 1290 - 1291 1291 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/image-20220823173929-8.png?width=1205&height=76&rev=1.1||alt="image-20220823173929-8.png"]] 1292 1292 1280 +==== ==== 1293 1293 1294 - 1295 1295 ==== (% style="color:blue" %)** Monitor RS485 communication of other devices**(%%) ==== 1296 1296 1297 1297 ... ... @@ -1299,11 +1299,11 @@ 1299 1299 (% style="color:#037691" %)** AT Command:** 1300 1300 ))) 1301 1301 1302 - (% style="color:#4472c4" %)**AT+RXMODE=1,10**(%%)~/~/ When the RS485-LN receives more than 10 bytes from the RS485, it immediately sends the uplink of the received data.1289 +**~ AT+RXMODE=1,10** ~/~/ When the RS485-LN receives more than 10 bytes from the RS485, it immediately sends the uplink of the received data. 1303 1303 1304 - (% style="color:#4472c4" %)**AT+RXMODE=2,500 **(%%)~/~/1291 +**~ AT+RXMODE=2,500 ** ~/~/RS485-LN uploads data as uplink from the first byte received by RS485 to the data received within 500ms after that. 1305 1305 1306 - (%style="color:#4472c4" %)**AT+RXMODE=0,0 **(%%)~/~/1293 + **AT+RXMODE=0,0 ** ~/~/Disable this mode (default) 1307 1307 1308 1308 1309 1309 * ((( ... ... @@ -1310,11 +1310,12 @@ 1310 1310 (% style="color:#037691" %)**Downlink Payload:** 1311 1311 ))) 1312 1312 1313 - (% style="color:#4472c4" %)**(%%)~/~/1300 +**A6 aa bb bb ** ~/~/same as AT+RXMODE=aa,bb 1314 1314 1315 1315 [[image:image-20220824144240-1.png]] 1316 1316 1317 1317 1305 + 1318 1318 == 3.6 Listening mode for RS485 network == 1319 1319 1320 1320 ... ... @@ -1328,12 +1328,10 @@ 1328 1328 1329 1329 ))) 1330 1330 1331 -(% aria-label="image-20220602171200-8.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602171200-8.png||data-widget="image" height="567" width="1007"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]] 1319 +(% aria-label="image-20220602171200-8.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602171200-8.png||data-widget="image" height="567" width="1007"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 1332 1332 1333 -(% title="Click and drag to resize" %) 1334 - 1335 1335 ((( 1336 -To enable the listening mode, use can run the command (% style="color:#4472c4" %)**AT+RXMODE**.1322 +To enable the listening mode, use can run the command AT+RXMODE. 1337 1337 ))) 1338 1338 1339 1339 ((( ... ... @@ -1368,13 +1368,11 @@ 1368 1368 ))) 1369 1369 1370 1370 ((( 1371 - 1372 - 1373 -(% style="color:#037691" %)**Downlink Command:** 1357 +(% style="color:#037691" %)** Downlink Command:** 1374 1374 ))) 1375 1375 1376 1376 ((( 1377 - (% style="color:#4472c4" %)**(%%)same as AT+RXMODE=aa,(bb<<8 | cc)1361 +**0xA6 aa bb cc ** same as AT+RXMODE=aa,(bb<<8 | cc) 1378 1378 ))) 1379 1379 1380 1380 ((( ... ... @@ -1394,17 +1394,15 @@ 1394 1394 ))) 1395 1395 1396 1396 ((( 1397 -The Modbus master send a command: (% style="background-color:#ffc000" %) **01 03 00 00 00 02 c4 0b**1381 +The Modbus master send a command: (% style="background-color:#ffc000" %)01 03 00 00 00 02 c4 0b 1398 1398 ))) 1399 1399 1400 1400 ((( 1401 -And Modbus slave reply with: (% style="background-color:green" %) **01 03 04 00 00 00 00 fa 33**1385 +And Modbus slave reply with: (% style="background-color:green" %)01 03 04 00 00 00 00 fa 33 1402 1402 ))) 1403 1403 1404 1404 ((( 1405 -RS485-LN will capture both and send the uplink: (% style="background-color:#ffc000" %)**01 03 00 00 00 02 c4 0b **(% style="background-color:green" %)**01 03 04 00 00 00 00 fa 33** 1406 - 1407 - 1389 +RS485-LN will capture both and send the uplink: (% style="background-color:#ffc000" %)01 03 00 00 00 02 c4 0b (% style="background-color:green" %)01 03 04 00 00 00 00 fa 33 1408 1408 ))) 1409 1409 1410 1410 ((( ... ... @@ -1422,25 +1422,24 @@ 1422 1422 ))) 1423 1423 1424 1424 1407 + 1425 1425 == 3.7 Buttons == 1426 1426 1427 1427 1428 -(% border="1 .5" cellspacing="4" style="background-color:#ffffcc; width:430px" %)1429 -|=(% style="width: 50px;" %)**Button**|=(% style="width: 3 80px;" %)**Feature**1411 +(% border="1" cellspacing="10" style="background-color:#f7faff; width:430px" %) 1412 +|=(% style="width: 50px;" %)**Button**|=(% style="width: 361px;" %)**Feature** 1430 1430 |(% style="width:50px" %)**ACT**|(% style="width:361px" %)If RS485 joined in network, press this button for more than 1 second, RS485 will upload a packet, and the SYS LED will give a (% style="color:blue" %)**Blue blink** 1431 1431 |(% style="width:50px" %)**RST**|(% style="width:361px" %)Reboot RS485 1432 1432 |(% style="width:50px" %)**PRO**|(% style="width:361px" %)Use for upload image, see [[How to Update Image>>||anchor="H6.1Howtoupgradetheimage3F"]] 1433 1433 1434 - 1435 1435 == 3.8 LEDs == 1436 1436 1437 1437 1438 -(% border="1 .5" cellspacing="4" style="background-color:#ffffcc; width:430px" %)1420 +(% border="1" cellspacing="10" style="background-color:#f7faff; width:430px" %) 1439 1439 |=(% style="width: 50px;" %)**LEDs**|=(% style="width: 380px;" %)**Feature** 1440 1440 |**PWR**|Always on if there is power 1441 1441 |**SYS**|After device is powered on, the SYS will (% style="color:green" %)**fast blink in GREEN**(%%) for 5 times, means RS485-LN start to join LoRaWAN network. If join success, SYS will be (% style="color:green" %)**on GREEN for 5 seconds** (%%)**. **SYS will (% style="color:green" %)**blink Blue**(%%) on every upload and (% style="color:green" %)**blink Green**(%%) once receive a downlink message. 1442 1442 1443 - 1444 1444 = 4. Case Study = 1445 1445 1446 1446 ... ... @@ -1447,25 +1447,22 @@ 1447 1447 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]] 1448 1448 1449 1449 1431 + 1450 1450 = 5. Use AT Command = 1451 1451 1434 + 1452 1452 == 5.1 Access AT Command == 1453 1453 1454 1454 1455 1455 ((( 1456 1456 RS485-LN supports AT Command set. User can use a USB to TTL adapter plus the 3.5mm Program Cable to connect to RS485-LN to use AT command, as below. 1457 - 1458 - 1459 1459 ))) 1460 1460 1461 1461 (% aria-label="1654162355560-817.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1654162355560-817.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 1462 1462 1463 1463 1464 - 1465 1465 ((( 1466 1466 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-LN. The default password is 123456. Below is the output for reference: 1467 - 1468 - 1469 1469 ))) 1470 1470 1471 1471 (% aria-label="1654162368066-342.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1654162368066-342.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) ... ... @@ -1476,8 +1476,10 @@ 1476 1476 ))) 1477 1477 1478 1478 1457 + 1479 1479 == 5.2 Common AT Command Sequence == 1480 1480 1460 + 1481 1481 === 5.2.1 Multi-channel ABP mode (Use with SX1301/LG308) === 1482 1482 1483 1483 ... ... @@ -1494,6 +1494,8 @@ 1494 1494 1495 1495 * (% style="color:#037691" %)**AT+NJM=0** 1496 1496 * (% style="color:#037691" %)**ATZ** 1477 + 1478 + 1497 1497 ))) 1498 1498 1499 1499 ... ... @@ -1536,8 +1536,10 @@ 1536 1536 (% aria-label="1654162478620-421.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1654162478620-421.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 1537 1537 1538 1538 1521 + 1539 1539 = 6. FAQ = 1540 1540 1524 + 1541 1541 == 6.1 How to upgrade the image? == 1542 1542 1543 1543 ... ... @@ -1565,20 +1565,14 @@ 1565 1565 1566 1566 ((( 1567 1567 (% style="color:blue" %)**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]]. 1568 - 1569 - 1570 1570 ))) 1571 1571 1572 1572 ((( 1573 1573 (% style="color:blue" %)**Step2**(%%)**:** Download the [[LT Image files>>url:https://www.dropbox.com/sh/g99v0fxcltn9r1y/AACP33wo_ZQLsxW2MJ70oUoba/RS485-LN/Firmware?dl=0&subfolder_nav_tracking=1]]. 1574 - 1575 - 1576 1576 ))) 1577 1577 1578 1578 ((( 1579 1579 (% style="color:blue" %)**Step3**(%%)**: **Open flashloader; choose the correct COM port to update. 1580 - 1581 - 1582 1582 ))) 1583 1583 1584 1584 ((( ... ... @@ -1604,6 +1604,7 @@ 1604 1604 (% aria-label="image-20220602175638-10.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602175638-10.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %) 1605 1605 1606 1606 1585 + 1607 1607 == 6.2 How to change the LoRa Frequency Bands/Region? == 1608 1608 1609 1609 ... ... @@ -1610,6 +1610,7 @@ 1610 1610 User can follow the introduction for [[how to upgrade image>>||anchor="H6.1Howtoupgradetheimage3F"]]. When download the images, choose the required image file for download. 1611 1611 1612 1612 1592 + 1613 1613 == 6.3 How many RS485-Slave can RS485-LN connects? == 1614 1614 1615 1615 ... ... @@ -1616,6 +1616,7 @@ 1616 1616 The RS485-LN can support max 32 RS485 devices. Each uplink command of RS485-LN can support max 16 different RS485 command. So RS485-LN 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"]]. 1617 1617 1618 1618 1599 + 1619 1619 == 6.4 Compatible question to ChirpStack and TTI LoRaWAN server ? == 1620 1620 1621 1621 ... ... @@ -1624,12 +1624,14 @@ 1624 1624 Detail info check this link: [[Set Packet Receiving Response Level>>doc:Main.End Device AT Commands and Downlink Command.WebHome||anchor="H7.23SetPacketReceivingResponseLevel"]] 1625 1625 1626 1626 1608 + 1627 1627 == 6.5 Can i use point to point communication for RS485-LN? == 1628 1628 1629 1629 1630 -Yes, please updating point-to-point [[firmware>>https://www.dropbox.com/sh/g99v0fxcltn9r1y/AACP33wo_ZQLsxW2MJ70oUoba/RS485-LN/Firmware?dl=0&subfolder_nav_tracking=1]],thenrefer[[Point to Point Communication for RS485-LN>>Point to Point Communication for RS485-LN]].1612 +Yes, please refer [[Point to Point Communication for RS485-LN>>Point to Point Communication for RS485-LN]]. 1631 1631 1632 1632 1615 + 1633 1633 == 6.6 How to Use RS485-LN to connect to RS232 devices? == 1634 1634 1635 1635 ... ... @@ -1636,123 +1636,10 @@ 1636 1636 [[Use RS485-BL or RS485-LN to connect to RS232 devices. - DRAGINO>>url:http://8.211.40.43:8080/xwiki/bin/view/Main/RS485%20to%20RS232/]] 1637 1637 1638 1638 1639 -== 6.7 How to judge whether there is a problem with the set COMMAND == 1640 1640 1641 -=== 6.7.1 Introduce: === 1642 - 1643 - 1644 -Users can use below the structure to fast debug the communication between RS485BL and RS485-LN. The principle is to put the PC in the RS485 network and sniff the packet between Modbus MTU and RS485-BL/LN. We can use this way to: 1645 - 1646 -1. Test if Modbus-MTU works with PC commands. 1647 -1. Check if RS485-LN sent the expected command to Mobus-MTU 1648 -1. Check if Modbus-MTU return back the expected result to RS485-LN. 1649 -1. If both b) and c) has issue, we can compare PC’s output and RS485-LN output. 1650 - 1651 -[[image:image-20221130104310-1.png||height="380" width="680"]] 1652 - 1653 - 1654 -Example Connection: 1655 - 1656 -[[image:image-20221130104310-2.png]] 1657 - 1658 - 1659 -=== 6.7.2 Set up PC to monitor RS485 network With Serial tool === 1660 - 1661 - 1662 -(% style="color:red" %)**Note: Receive and send set to hex mode** 1663 - 1664 -[[image:image-20221130104310-3.png||height="616" width="714"]] 1665 - 1666 - 1667 -=== 6.7.3 With ModRSsim2: === 1668 - 1669 - 1670 -(% style="color:blue" %)**(1) Select serial port MODBUS RS-232** 1671 - 1672 -[[image:image-20221130104310-4.png||height="390" width="865"]] 1673 - 1674 - 1675 -(% style="color:blue" %)**(2) Click the serial port icon** 1676 - 1677 -[[image:image-20221130104310-5.png||height="392" width="870"]] 1678 - 1679 - 1680 -(% style="color:blue" %)**(3) After selecting the correct serial port and baud rate, click ok** 1681 - 1682 -[[image:image-20221130104310-6.png]] 1683 - 1684 - 1685 -(% style="color:blue" %)**(4) Click the comms.** 1686 - 1687 -[[image:image-20221130104310-7.png||height="376" width="835"]] 1688 - 1689 -(% class="wikigeneratedid" id="HRunRS485-LN2FBLcommandandmonitorifitiscorrect." %) 1690 -**Run RS485-LN/BL command and monitor if it is correct.** 1691 - 1692 - 1693 -=== 6.7.4 Example – Test the CFGDEV command === 1694 - 1695 - 1696 -RS485-LN sent below command: 1697 - 1698 -(% style="color:blue" %)**AT+CFGDEV=01 03 20 00 01 85 c0,1**(%%) to RS485 network, and PC is able to get this command and return commands from MTU to show in the serial tool. 1699 - 1700 - 1701 -We can see the output from the Serial port tool to analyze. And check if they are expected result. 1702 - 1703 -[[image:image-20221130104310-8.png||height="214" width="797"]] 1704 - 1705 - 1706 -We can also use (% style="color:blue" %)**ModRSsim2**(%%) to see the output. 1707 - 1708 -[[image:image-20221130104310-9.png||height="531" width="729"]] 1709 - 1710 - 1711 -=== 6.7.5 Example – Test CMD command sets. === 1712 - 1713 - 1714 -Run (% style="color:blue" %)**AT+SENSORVALUE=1**(%%) to test the CMD commands set in RS485-LN. 1715 - 1716 - 1717 -(% style="color:blue" %)**Serial port tool:** 1718 - 1719 -[[image:image-20221130104310-10.png||height="339" width="844"]] 1720 - 1721 - 1722 -(% style="color:blue" %)**ModRSsim2:** 1723 - 1724 -[[image:image-20221130104310-11.png||height="281" width="962"]] 1725 - 1726 - 1727 -=== 6.7.6 Test with PC === 1728 - 1729 - 1730 -If there is still have problem to set up correctly the commands between RS485-LN and MTU. User can test the correct RS485 command set in PC and compare with the RS485 command sent out via RS485-LN. as long as both commands are the same, the MTU should return correct result. 1731 - 1732 - 1733 -Or User can send the working commands set in PC serial tool to Dragino Support to check what should be configured in RS485-LN. 1734 - 1735 -(% style="color:blue" %)**Connection method:** 1736 - 1737 -[[image:image-20221130104310-12.png]] 1738 - 1739 - 1740 -(% style="color:blue" %)**Link situation:** 1741 - 1742 -[[image:image-20221130104310-13.png||height="458" width="486"]] 1743 - 1744 - 1745 -[[image:image-20221130104310-14.png||height="371" width="823"]] 1746 - 1747 - 1748 -== 6.8 Where to get the decoder for RS485-LN? == 1749 - 1750 - 1751 -The decoder for RS485-LN needs to be written by yourself. Because the sensor to which the user is connected is custom, the read device data bytes also need custom parsing, so there is no universal decoder. We can only provide [[templates>>https://github.com/dragino/dragino-end-node-decoder/tree/main/RS485-LN]] for decoders (no intermediate data parsing part involved) 1752 - 1753 - 1754 1754 = 7. Trouble Shooting = 1755 1755 1625 + 1756 1756 == 7.1 Downlink doesn't work, how to solve it? == 1757 1757 1758 1758 ... ... @@ -1759,6 +1759,7 @@ 1759 1759 Please see this link for debug: [[LoRaWAN Communication Debug>>doc:Main.LoRaWAN Communication Debug.WebHome]] 1760 1760 1761 1761 1632 + 1762 1762 == 7.2 Why I can't join TTN V3 in US915 /AU915 bands? == 1763 1763 1764 1764 ... ... @@ -1765,6 +1765,7 @@ 1765 1765 It might about the channels mapping. Please see for detail: [[Notice of Frequency band>>doc:Main.LoRaWAN Communication Debug.WebHome||anchor="H2.NoticeofUS9152FCN4702FAU915Frequencyband"]] 1766 1766 1767 1767 1639 + 1768 1768 = 8. Order Info = 1769 1769 1770 1770 ... ... @@ -1783,10 +1783,9 @@ 1783 1783 * (% style="color:red" %)**RU864**(%%): frequency bands RU864 1784 1784 * (% style="color:red" %)**KZ865**(%%): frequency bands KZ865 1785 1785 1658 += 9.Packing Info = 1786 1786 1787 -= 9. Packing Info = 1788 1788 1789 - 1790 1790 **Package Includes**: 1791 1791 1792 1792 * RS485-LN x 1 ... ... @@ -1800,7 +1800,6 @@ 1800 1800 * Package Size / pcs : 14.5 x 8 x 5 cm 1801 1801 * Weight / pcs : 170g 1802 1802 1803 - 1804 1804 = 10. FCC Caution for RS485LN-US915 = 1805 1805 1806 1806 ... ... @@ -1853,6 +1853,7 @@ 1853 1853 ))) 1854 1854 1855 1855 1726 + 1856 1856 = 11. Support = 1857 1857 1858 1858
- image-20220929111027-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -240.0 KB - Content
- image-20221130104310-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -82.0 KB - Content
- image-20221130104310-10.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -17.4 KB - Content
- image-20221130104310-11.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -27.7 KB - Content
- image-20221130104310-12.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -392.9 KB - Content
- image-20221130104310-13.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -23.3 KB - Content
- image-20221130104310-14.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -25.4 KB - Content
- image-20221130104310-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -392.9 KB - Content
- image-20221130104310-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -30.4 KB - Content
- image-20221130104310-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -25.8 KB - Content
- image-20221130104310-5.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -22.9 KB - Content
- image-20221130104310-6.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -12.9 KB - Content
- image-20221130104310-7.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -25.1 KB - Content
- image-20221130104310-8.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -9.9 KB - Content
- image-20221130104310-9.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -29.1 KB - Content