Changes for page RS485-LN – RS485 to LoRaWAN Converter User Manual
Last modified by Bei Jinggeng on 2025/01/16 11:36
Change comment:
Uploaded new attachment "image-20220824145428-2.png", version {1}
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 1 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Xiaoling1 +XWiki.Bei - Content
-
... ... @@ -30,7 +30,6 @@ 30 30 31 31 = 1.Introduction = 32 32 33 - 34 34 == 1.1 What is RS485-LN RS485 to LoRaWAN Converter == 35 35 36 36 ((( ... ... @@ -82,11 +82,13 @@ 82 82 ** Idle: 32mA@12v 83 83 ** 20dB Transmit: 65mA@12v 84 84 84 + 85 85 (% style="color:#037691" %)**Interface for Model:** 86 86 87 87 * RS485 88 88 * Power Input 7~~ 24V DC. 89 89 90 + 90 90 (% style="color:#037691" %)**LoRa Spec:** 91 91 92 92 * Frequency Range: ... ... @@ -114,7 +114,7 @@ 114 114 115 115 116 116 * LoRaWAN Class A & Class C protocol (default Class C) 117 -* Frequency Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865/RU864 /MA869118 +* Frequency Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865/RU864 118 118 * AT Commands to change parameters 119 119 * Remote configure parameters via LoRa Downlink 120 120 * Firmware upgradable via program port ... ... @@ -182,7 +182,6 @@ 182 182 183 183 = 3. Operation Mode = 184 184 185 - 186 186 == 3.1 How it works? == 187 187 188 188 ... ... @@ -200,7 +200,6 @@ 200 200 201 201 Here shows an example for how to join the TTN V3 Network. Below is the network structure, we use [[LG308>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/140-lg308.html]] as LoRaWAN gateway here. 202 202 203 - 204 204 (% aria-label="1653268155545-638.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1653268155545-638.png||data-widget="image" height="334" 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" %) 205 205 206 206 ... ... @@ -211,8 +211,6 @@ 211 211 212 212 ((( 213 213 485A+ and 485B- of the sensor are connected to RS485A and RA485B of RS485-LN respectively. 214 - 215 - 216 216 ))) 217 217 218 218 (% aria-label="1653268227651-549.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1653268227651-549.png||data-widget="image" height="592" width="720"]](% 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" %) ... ... @@ -239,8 +239,6 @@ 239 239 ((( 240 240 ((( 241 241 User can enter this key in their LoRaWAN Server portal. Below is TTN V3 screen shot: 242 - 243 - 244 244 ))) 245 245 246 246 ((( ... ... @@ -254,11 +254,8 @@ 254 254 255 255 (% aria-label="image-20220519174512-3.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220519174512-3.png||data-widget="image" height="556" 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" %) 256 256 257 -(% aria-label="image-20220519174512-4.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220519174512-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"]] 252 +(% aria-label="image-20220519174512-4.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220519174512-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" %) 258 258 259 - 260 -(% title="Click and drag to resize" %) 261 - 262 262 You can also choose to create the device manually. 263 263 264 264 (% aria-label="1652953542269-423.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1652953542269-423.png||data-widget="image" height="710" width="723"]](% 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" %) ... ... @@ -270,11 +270,8 @@ 270 270 (% aria-label="1652953553383-907.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1652953553383-907.png||data-widget="image" height="514" 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" %) 271 271 272 272 273 - 274 274 ((( 275 275 (% style="color:blue" %)**Step 2**(%%): Power on RS485-LN and it will auto join to the TTN V3 network. After join success, it will start to upload message to TTN V3 and user can see in the panel. 276 - 277 - 278 278 ))) 279 279 280 280 (% 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" %) ... ... @@ -288,8 +288,6 @@ 288 288 ((( 289 289 ((( 290 290 There are plenty of RS485 devices in the market and each device has different command to read the valid data. To support these devices in flexible, RS485-LN supports flexible command set. User can use [[AT Commands>>||anchor="H3.5ConfigureRS485-LNviaATorDownlink"]] or LoRaWAN Downlink Command to configure what commands RS485-LN should send for each sampling and how to handle the return from RS485 devices. 291 - 292 - 293 293 ))) 294 294 ))) 295 295 ... ... @@ -308,7 +308,6 @@ 308 308 309 309 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: 310 310 311 - 312 312 (% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %) 313 313 |=(% style="width: 110px;" %)((( 314 314 **AT Commands** ... ... @@ -369,7 +369,6 @@ 369 369 370 370 371 371 372 - 373 373 === 3.3.2 Configure sensors === 374 374 375 375 ... ... @@ -399,7 +399,6 @@ 399 399 400 400 401 401 402 - 403 403 === 3.3.3 Configure read commands for each sampling === 404 404 405 405 ... ... @@ -415,7 +415,6 @@ 415 415 416 416 (% style="color:#037691" %)**Each RS485 commands include two parts:** 417 417 418 - 419 419 ~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. 420 420 421 421 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. ... ... @@ -444,7 +444,7 @@ 444 444 In the RS485-LN, we should use this command AT+COMMAND1=01 03 0B B8 00 02,1 for the same. 445 445 446 446 447 -(% style="color:#037691" %)**AT+DATACUTx **(%%)**: **This command defines how to handle the return from AT+COMMANDx, max return length is 100bytes.430 +(% style="color:#037691" %)**AT+DATACUTx **(%%)**: **This command defines how to handle the return from AT+COMMANDx, max return length is 45 bytes. 448 448 449 449 (% border="1" style="background-color:#4bacc6; color:white; width:510px" %) 450 450 |(% style="width:510px" %)((( ... ... @@ -457,7 +457,6 @@ 457 457 458 458 **Examples:** 459 459 460 - 461 461 * (% style="color:#037691" %)**Grab bytes** 462 462 463 463 (% 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" %) ... ... @@ -498,13 +498,15 @@ 498 498 ))) 499 499 500 500 ((( 501 -Final Payload is (% style="color:#4f81bd" %)**Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx**483 +Final Payload is 502 502 ))) 503 503 504 504 ((( 505 -Where PAYVER is defined by AT+PAYVER, below is an example screen shot. 487 +(% style="color:#4f81bd" %)**Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx** 488 +))) 506 506 507 - 490 +((( 491 +Where PAYVER is defined by AT+PAYVER, below is an example screen shot. 508 508 ))) 509 509 510 510 (% 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" %) ... ... @@ -515,9 +515,11 @@ 515 515 516 516 Compose the uplink payload with value returns in sequence and send with (% style="color:red" %)**Multiply UPLINKs**. 517 517 518 -Final Payload is (% style="color:#4f81bd" %)**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA**502 +Final Payload is 519 519 504 +(% style="color:#4f81bd" %)**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA** 520 520 506 + 521 521 1. PAYVER: Defined by AT+PAYVER 522 522 1. PAYLOAD COUNT: Total how many uplinks of this sampling. 523 523 1. PAYLOAD#: Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT) ... ... @@ -537,7 +537,6 @@ 537 537 538 538 (% 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:** 539 539 540 - 541 541 ~* For AU915/AS923 bands, if UplinkDwell time=0, max 51 bytes for each uplink. 542 542 543 543 * For AU915/AS923 bands, if UplinkDwell time=0, max 11 bytes for each uplink. ... ... @@ -546,30 +546,9 @@ 546 546 547 547 ~* For all other bands: max 51 bytes for each uplink. 548 548 549 -(% style="color:red" %)*** When AT+DATAUP=1, the maximum number of segments is 15, and the maximum total number of bytes is 1500;** 550 550 551 -(% 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)** 552 - 553 - 554 -(% style="color:#4f81bd" %)**If the data is empty, return to the display(Since v1.4.0)** 555 - 556 -1 ) When (% style="color:blue" %)**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**. 557 - 558 - 559 -[[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"]] 560 - 561 - 562 - 563 -2 ) When (% style="color:blue" %)**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**. 564 - 565 - 566 -[[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"]] 567 - 568 - 569 - 570 570 Below are the uplink payloads: 571 571 572 - 573 573 (% 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" %) 574 574 575 575 ... ... @@ -579,11 +579,11 @@ 579 579 580 580 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. 581 581 582 - (% style="color:blue" %)**Downlink control command:**546 +Downlink control command: 583 583 584 - (% style="color:#4472c4" %)**(%%): Poll an uplink with current command set in RS485-LN.548 +**0x08 command**: Poll an uplink with current command set in RS485-LN. 585 585 586 - (% style="color:#4472c4" %)**(%%): Send a command to RS485-LN and uplink the output from sensors.550 +**0xA8 command**: Send a command to RS485-LN and uplink the output from sensors. 587 587 588 588 589 589 ... ... @@ -592,7 +592,6 @@ 592 592 593 593 RS485-LN support external Interrupt uplink since hardware v1.2 release. 594 594 595 - 596 596 (% 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" %) 597 597 598 598 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. ... ... @@ -602,10 +602,8 @@ 602 602 == 3.4 Uplink Payload == 603 603 604 604 605 -(% 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"]] 568 +(% 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" %) 606 606 607 -(% title="Click and drag to resize" %) 608 - 609 609 Below is the decoder for the first 3 bytes. The rest bytes are dynamic depends on different RS485 sensors. 610 610 611 611 ... ... @@ -647,11 +647,8 @@ 647 647 648 648 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. 649 649 611 +(% 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" %) 650 650 651 -(% 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"]] 652 - 653 -(% title="Click and drag to resize" %) 654 - 655 655 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) 656 656 657 657 ... ... @@ -668,11 +668,11 @@ 668 668 This command is used to configure the RS485 devices; they won't be used during sampling. 669 669 ))) 670 670 671 -((( 672 - *(% style="color:#037691" %)**AT Command**629 +* ((( 630 +(% style="color:#037691" %)**AT Command** 673 673 674 674 ((( 675 - (% style="color:#4472c4" %)**(%%)m: 0: no CRC, 1: add CRC-16/MODBUS in the end of this command633 +**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 676 676 ))) 677 677 ))) 678 678 ... ... @@ -685,7 +685,7 @@ 685 685 ))) 686 686 687 687 ((( 688 -Format: (% style="color:#4472c4" %)**A8 MM NN XX XX XX XX YY**646 +Format: A8 MM NN XX XX XX XX YY 689 689 ))) 690 690 691 691 ((( ... ... @@ -791,40 +791,28 @@ 791 791 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. 792 792 ))) 793 793 794 -((( 795 - *(% style="color:#037691" %)**AT Command:**752 +* ((( 753 +(% style="color:#037691" %)**AT Command:** 796 796 797 - (% style="color:#4472c4" %)**(%%)Set PAYVER field = 1755 +**AT+PAYVER: **Set PAYVER field = 1 798 798 799 799 800 800 ))) 801 - 802 802 * ((( 803 803 (% style="color:#037691" %)**Downlink Payload:** 804 804 ))) 805 805 806 806 ((( 807 - (% style="color:#4472c4" %)**(%%)764 +**0xAE 01** ~-~-> Set PAYVER field = 0x01 808 808 ))) 809 809 810 810 ((( 811 - (% style="color:#4472c4" %)**(%%)~-~-> Set PAYVER field = 0x0F768 +**0xAE 0F** ~-~-> Set PAYVER field = 0x0F 812 812 ))) 813 813 814 814 815 -1 ) Add the interrupt flag at the highest bit of the Payver byte, that is, Byte7 of the first byte. (Since v1.4.0) 816 816 817 -[[image:image-20220824145428-2.png||height="168" width="1300"]] 818 818 819 - 820 -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. 821 - 822 - 823 -[[image:image-20220824145428-3.png||height="308" width="1200"]] 824 - 825 - 826 - 827 - 828 828 ==== (% style="color:blue" %)**Set RS485 Sampling Commands**(%%) ==== 829 829 830 830 ... ... @@ -844,9 +844,9 @@ 844 844 (% style="color:#037691" %)**AT Command:** 845 845 ))) 846 846 847 - (% style="color:#4472c4" %)**(%%)Configure RS485 read command to sensor.793 +**AT+COMMANDx: **Configure RS485 read command to sensor. 848 848 849 - (% style="color:#4472c4" %)**(%%)Configure how to handle return from RS485 devices.795 +**AT+DATACUTx: **Configure how to handle return from RS485 devices. 850 850 851 851 852 852 * ((( ... ... @@ -854,19 +854,19 @@ 854 854 ))) 855 855 856 856 ((( 857 - (% style="color:#4472c4" %)**(%%)803 +**0xAF** downlink command can be used to set AT+COMMANDx or AT+DATACUTx. 858 858 859 859 860 860 ))) 861 861 862 862 ((( 863 -(% style="color:red" %)**Note **809 +(% style="color:red" %)**Note**(%%): if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink. 864 864 865 865 866 866 ))) 867 867 868 868 ((( 869 -Format: (% style="color:#4472c4" %)**AF MM NN LL XX XX XX XX YY**815 +Format: AF MM NN LL XX XX XX XX YY 870 870 ))) 871 871 872 872 ((( ... ... @@ -914,7 +914,7 @@ 914 914 915 915 916 916 ((( 917 - (% 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]].863 +**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]]. 918 918 ))) 919 919 920 920 ((( ... ... @@ -963,10 +963,10 @@ 963 963 Default value: 0, range: 0 ~~ 65 seconds 964 964 ))) 965 965 966 -((( 967 - *(% style="color:#037691" %)** AT Command:**912 +* ((( 913 +(% style="color:#037691" %)** AT Command:** 968 968 969 - (% style="color:#4472c4" %)**915 +**AT+CMDDLaa=hex(bb cc)*1000** 970 970 ))) 971 971 972 972 ((( ... ... @@ -976,7 +976,7 @@ 976 976 ))) 977 977 978 978 ((( 979 - (% style="color:#4472c4" %)**(%%)to send the open time to 1000ms925 +**AT+CMDDL1=1000** to send the open time to 1000ms 980 980 ))) 981 981 982 982 ((( ... ... @@ -988,12 +988,14 @@ 988 988 ))) 989 989 990 990 ((( 991 - (% style="color:#4472c4" %)**(%%) Same as: AT+CMDDLaa=hex(bb cc)*1000937 +**0x AA aa bb cc** 992 992 ))) 993 993 994 994 ((( 995 - 941 +Same as: AT+CMDDLaa=hex(bb cc)*1000 942 +))) 996 996 944 +((( 997 997 **Example:** 998 998 ))) 999 999 ... ... @@ -1017,19 +1017,13 @@ 1017 1017 1018 1018 ))) 1019 1019 1020 -((( 1021 -* (% style="color:#037691" %)** AT Command:** 1022 - 1023 -(% style="color:#4472c4" %)** AT+DATAUP=0** 1024 - 1025 -(% style="color:#4472c4" %)** AT+DATAUP=1** 1026 - 1027 - 968 +* ((( 969 +(% style="color:#037691" %)** AT Command:** 1028 1028 ))) 1029 1029 1030 - (% style="color:#4472c4" %)**0xAD 01 00 00 14** (%%) **~-~->** Same as AT+DATAUP=1,20000 ~/~/ (00 00 14 is 20 seconds)972 +**AT+DATAUP=0** 1031 1031 1032 - Each uplink is sent to the server at 20-second intervals when segmented.974 +**AT+DATAUP=1** 1033 1033 1034 1034 1035 1035 * ((( ... ... @@ -1036,29 +1036,17 @@ 1036 1036 (% style="color:#037691" %)** Downlink Payload:** 1037 1037 ))) 1038 1038 1039 -(% style="color:#4472c4" %)** 0xAD 00** (%%) **~-~->** Same as AT+DATAUP=0 1040 - 1041 -(% style="color:#4472c4" %)** 0xAD 01** (%%) **~-~->** Same as AT+DATAUP=1 ~/~/Each uplink is sent to the server one after the other as it is segmented. 1042 - 1043 - 1044 -* ((( 1045 -(% style="color:#037691" %)** AT Command:** 981 +((( 982 +**0xAD 00** **~-~->** Same as AT+DATAUP=0 1046 1046 ))) 1047 1047 1048 -(% style="color:#4472c4" %)** AT+DATAUP=1,Timeout** 1049 - 1050 - 1051 -* ((( 1052 -(% style="color:#037691" %)** Downlink Payload:** 985 +((( 986 +**0xAD 01** **~-~->** Same as AT+DATAUP=1 1053 1053 ))) 1054 1054 1055 -(% style="color:#4472c4" %)** 0xAD 01 00 00 14** (%%) **~-~->** Same as AT+DATAUP=1,20000 ~/~/ (00 00 14 is 20 seconds) 1056 1056 1057 -Each uplink is sent to the server at 20-second intervals when segmented. 1058 1058 1059 1059 1060 - 1061 - 1062 1062 ==== (% style="color:blue" %)**Manually trigger an Uplink**(%%) ==== 1063 1063 1064 1064 ... ... @@ -1083,7 +1083,7 @@ 1083 1083 ))) 1084 1084 1085 1085 ((( 1086 - (% style="color:#4472c4" %)**(%%), RS485-LN will immediately send an uplink.1016 +**0x08 FF**, RS485-LN will immediately send an uplink. 1087 1087 ))) 1088 1088 1089 1089 ... ... @@ -1103,12 +1103,10 @@ 1103 1103 ))) 1104 1104 1105 1105 ((( 1106 - (% style="color:#4472c4" %)**(%%)mm: start position of erase ,nn: stop position of erase1036 +**AT+CMDEAR=mm,nn** mm: start position of erase ,nn: stop position of erase 1107 1107 ))) 1108 1108 1109 1109 ((( 1110 - 1111 - 1112 1112 Etc. AT+CMDEAR=1,10 means erase AT+COMMAND1/AT+DATACUT1 to AT+COMMAND10/AT+DATACUT10 1113 1113 ))) 1114 1114 ... ... @@ -1132,7 +1132,7 @@ 1132 1132 ))) 1133 1133 1134 1134 ((( 1135 - (% style="color:#4472c4" %)**(%%)same as AT+CMDEAR=aa,bb1063 +**0x09 aa bb** same as AT+CMDEAR=aa,bb 1136 1136 ))) 1137 1137 1138 1138 ... ... @@ -1143,22 +1143,19 @@ 1143 1143 1144 1144 ((( 1145 1145 Set the Rs485 serial communication parameters: 1146 - 1147 - 1148 1148 ))) 1149 1149 1150 1150 * ((( 1151 1151 (% style="color:#037691" %)** AT Command:** 1152 - 1153 - 1154 - 1155 1155 ))) 1156 1156 1157 1157 ((( 1081 + 1082 + 1158 1158 * Set Baud Rate 1159 1159 ))) 1160 1160 1161 - (% style="color:#4472c4" %)**(%%)~/~/~~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 lost1086 +**AT+BAUDR=9600** ~/~/ Options: (1200,2400,4800,14400,19200,115200) 1162 1162 1163 1163 1164 1164 ((( ... ... @@ -1165,7 +1165,7 @@ 1165 1165 * Set UART Parity 1166 1166 ))) 1167 1167 1168 - (% style="color:#4472c4" %)**(%%)~/~/1093 +**AT+PARITY=0** ~/~/ Option: 0: no parity, 1: odd parity, 2: even parity 1169 1169 1170 1170 1171 1171 ((( ... ... @@ -1172,7 +1172,7 @@ 1172 1172 * Set STOPBIT 1173 1173 ))) 1174 1174 1175 - (% style="color:#4472c4" %)**(%%)~/~/1100 +**AT+STOPBIT=0** ~/~/ Option: 0 for 1bit; 1 for 1.5 bit ; 2 for 2 bits 1176 1176 1177 1177 1178 1178 ... ... @@ -1181,17 +1181,15 @@ 1181 1181 ))) 1182 1182 1183 1183 ((( 1184 - (% style="color:#4472c4" %)**(%%)Same AT+BAUDR=hex(aa bb)*1001109 +**A7 01 aa bb**: Same AT+BAUDR=hex(aa bb)*100 1185 1185 ))) 1186 1186 1187 1187 ((( 1188 - 1189 - 1190 1190 **Example:** 1191 1191 ))) 1192 1192 1193 1193 * ((( 1194 -A7 01 00 60 1117 +A7 01 00 60 same as AT+BAUDR=9600 1195 1195 ))) 1196 1196 * ((( 1197 1197 A7 01 04 80 same as AT+BAUDR=115200 ... ... @@ -1198,153 +1198,16 @@ 1198 1198 ))) 1199 1199 1200 1200 ((( 1201 - *A7 02 aa: Same as AT+PARITY=aa (aa value: 00 , 01 or 02)1124 +A7 02 aa: Same as AT+PARITY=aa (aa value: 00 , 01 or 02) 1202 1202 ))) 1203 1203 1204 1204 ((( 1205 - *A7 03 aa: Same as AT+STOPBIT=aa (aa value: 00 , 01 or 02)1128 +A7 03 aa: Same as AT+STOPBIT=aa (aa value: 00 , 01 or 02) 1206 1206 ))) 1207 1207 1208 1208 1209 1209 1210 1210 1211 - 1212 -==== (% style="color:blue" %)**Encrypted payload**(%%) ==== 1213 - 1214 -((( 1215 - 1216 -))) 1217 - 1218 -* ((( 1219 -(% style="color:#037691" %)** AT Command:** 1220 -))) 1221 - 1222 -(% style="color:#4472c4" %)** AT+DECRYPT=1 ** (%%) ~/~/ The payload is uploaded without encryption 1223 - 1224 -(% style="color:#4472c4" %)** AT+DECRYPT=0 ** (%%) ~/~/ Encrypt when uploading payload (default) 1225 - 1226 - 1227 - 1228 - 1229 -==== (% style="color:blue" %)**Get sensor value**(%%) ==== 1230 - 1231 - 1232 -* ((( 1233 -(% style="color:#037691" %)** AT Command:** 1234 -))) 1235 - 1236 -(% style="color:#4472c4" %)** AT+GETSENSORVALUE=0 **(%%) ~/~/ The serial port gets the reading of the current sensor 1237 - 1238 -(% style="color:#4472c4" %)** AT+GETSENSORVALUE=1 **(%%) ~/~/ The serial port gets the current sensor reading and uploads it. 1239 - 1240 - 1241 - 1242 - 1243 -==== (% style="color:blue" %)**Resets the downlink packet count**(%%) ==== 1244 - 1245 - 1246 -* ((( 1247 -(% style="color:#037691" %)** AT Command:** 1248 -))) 1249 - 1250 -(% style="color:#4472c4" %)** 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) 1251 - 1252 -(% style="color:#4472c4" %)** 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. 1253 - 1254 - 1255 - 1256 - 1257 -==== (% style="color:blue" %)**When the limit bytes are exceeded, upload in batches**(%%) ==== 1258 - 1259 - 1260 -* ((( 1261 -(% style="color:#037691" %)** AT Command:** 1262 -))) 1263 - 1264 - (% style="color:#4472c4" %)** 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) 1265 - 1266 - (% style="color:#4472c4" %)** 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. 1267 - 1268 - 1269 -* ((( 1270 -(% style="color:#037691" %)** Downlink Payload:** 1271 -))) 1272 - 1273 -(% style="color:#4472c4" %)** 0x21 00 01 ** (%%) ~/~/ Set the DISMACANS=1 1274 - 1275 - 1276 - 1277 - 1278 -==== (% style="color:blue" %)** Copy downlink to uplink **(%%) ==== 1279 - 1280 - 1281 -* ((( 1282 -(% style="color:#037691" %)** AT Command:** 1283 -))) 1284 - 1285 -(% style="color:#4472c4" %)** 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. 1286 - 1287 - 1288 -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. 1289 - 1290 - 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-20220823173747-6.png?width=1124&height=165&rev=1.1||alt="image-20220823173747-6.png"]] 1292 - 1293 - 1294 - 1295 -For example, sending 11 22 33 44 55 66 77 will return invalid configuration 00 11 22 33 44 55 66 77. 1296 - 1297 - 1298 -[[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"]] 1299 - 1300 - 1301 -For example, if 01 00 02 58 is issued, a valid configuration of 01 01 00 02 58 will be returned. 1302 - 1303 - 1304 - 1305 - 1306 -==== (% style="color:blue" %)**Query version number and frequency band 、TDC**(%%) ==== 1307 - 1308 - 1309 -((( 1310 -* (% style="color:#037691" %)**Downlink Payload:** 1311 - 1312 -(% style="color:#4472c4" %)** 26 01 ** (%%) ~/~/ Downlink 26 01 can query device upload frequency, frequency band, software version number, TDC time. 1313 -))) 1314 - 1315 - 1316 -Example: 1317 - 1318 - 1319 -[[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"]] 1320 - 1321 - 1322 - 1323 - 1324 -==== (% style="color:blue" %)** Monitor RS485 communication of other devices**(%%) ==== 1325 - 1326 - 1327 -* ((( 1328 -(% style="color:#037691" %)** AT Command:** 1329 -))) 1330 - 1331 -(% 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. 1332 - 1333 -(% style="color:#4472c4" %)**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. 1334 - 1335 -(% style="color:#4472c4" %)**AT+RXMODE=0,0 ** (%%) ~/~/ Disable this mode (default) 1336 - 1337 - 1338 -* ((( 1339 -(% style="color:#037691" %)**Downlink Payload:** 1340 -))) 1341 - 1342 -(% style="color:#4472c4" %)** A6 aa bb bb ** (%%) ~/~/same as AT+RXMODE=aa,bb 1343 - 1344 -[[image:image-20220824144240-1.png]] 1345 - 1346 - 1347 - 1348 1348 == 3.6 Listening mode for RS485 network == 1349 1349 1350 1350 ... ... @@ -1358,12 +1358,10 @@ 1358 1358 1359 1359 ))) 1360 1360 1361 -(% 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"]] 1147 +(% 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" %) 1362 1362 1363 -(% title="Click and drag to resize" %) 1364 - 1365 1365 ((( 1366 -To enable the listening mode, use can run the command (% style="color:#4472c4" %)**AT+RXMODE**.1150 +To enable the listening mode, use can run the command AT+RXMODE. 1367 1367 ))) 1368 1368 1369 1369 ((( ... ... @@ -1398,13 +1398,11 @@ 1398 1398 ))) 1399 1399 1400 1400 ((( 1401 - 1402 - 1403 -(% style="color:#037691" %)**Downlink Command:** 1185 +(% style="color:#037691" %)** Downlink Command:** 1404 1404 ))) 1405 1405 1406 1406 ((( 1407 - (% style="color:#4472c4" %)**(%%)same as AT+RXMODE=aa,(bb<<8 | cc)1189 +**0xA6 aa bb cc ** same as AT+RXMODE=aa,(bb<<8 | cc) 1408 1408 ))) 1409 1409 1410 1410 ((( ... ... @@ -1462,6 +1462,7 @@ 1462 1462 1463 1463 1464 1464 1247 + 1465 1465 == 3.8 LEDs == 1466 1466 1467 1467 ... ... @@ -1472,6 +1472,7 @@ 1472 1472 1473 1473 1474 1474 1258 + 1475 1475 = 4. Case Study = 1476 1476 1477 1477 ... ... @@ -1487,18 +1487,13 @@ 1487 1487 1488 1488 ((( 1489 1489 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. 1490 - 1491 - 1492 1492 ))) 1493 1493 1494 1494 (% 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" %) 1495 1495 1496 1496 1497 - 1498 1498 ((( 1499 1499 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: 1500 - 1501 - 1502 1502 ))) 1503 1503 1504 1504 (% 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" %) ... ... @@ -1604,20 +1604,14 @@ 1604 1604 1605 1605 ((( 1606 1606 (% 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]]. 1607 - 1608 - 1609 1609 ))) 1610 1610 1611 1611 ((( 1612 -(% 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]]. 1613 - 1614 - 1389 +(% style="color:blue" %)**Step2**(%%)**:** Download the [[LT Image files>>url:https://www.dragino.com/downloads/index.php?dir=RS485-LN/Firmware/]]. 1615 1615 ))) 1616 1616 1617 1617 ((( 1618 1618 (% style="color:blue" %)**Step3**(%%)**: **Open flashloader; choose the correct COM port to update. 1619 - 1620 - 1621 1621 ))) 1622 1622 1623 1623 ((( ... ... @@ -1718,6 +1718,7 @@ 1718 1718 1719 1719 1720 1720 1494 + 1721 1721 = 9.Packing Info = 1722 1722 1723 1723 ... ... @@ -1736,6 +1736,7 @@ 1736 1736 1737 1737 1738 1738 1513 + 1739 1739 = 10. FCC Caution for RS485LN-US915 = 1740 1740 1741 1741
- image-20220824145428-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -17.7 KB - Content