Changes for page RS485-BL – Waterproof RS485 to LoRaWAN Converter
Last modified by Xiaoling on 2025/04/23 15:57
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -94,7 +94,6 @@ 94 94 * 127 dB Dynamic Range RSSI. 95 95 * Automatic RF Sense and CAD with ultra-fast AFC. 96 96 97 - 98 98 == 1.3 Features == 99 99 100 100 * LoRaWAN Class A & Class C protocol (default Class A) ... ... @@ -106,7 +106,6 @@ 106 106 * Support Modbus protocol 107 107 * Support Interrupt uplink 108 108 109 - 110 110 == 1.4 Applications == 111 111 112 112 * Smart Buildings & Home Automation ... ... @@ -116,7 +116,6 @@ 116 116 * Smart Cities 117 117 * Smart Factory 118 118 119 - 120 120 == 1.5 Firmware Change log == 121 121 122 122 [[RS485-BL Image files – Download link and Change log>>url:http://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/RS485-BL/Firmware/||style="background-color: rgb(255, 255, 255);"]] ... ... @@ -127,29 +127,47 @@ 127 127 ((( 128 128 129 129 127 +((( 130 130 v1.4 131 131 ))) 130 +))) 132 132 133 133 ((( 133 +((( 134 134 ~1. Change Power IC to TPS22916 135 135 ))) 136 +))) 136 136 138 +((( 139 + 140 +))) 137 137 138 138 ((( 143 +((( 139 139 v1.3 140 140 ))) 146 +))) 141 141 142 142 ((( 149 +((( 143 143 ~1. Change JP3 from KF350-8P to KF350-11P, Add one extra interface for I2C and one extra interface for one-wire 144 144 ))) 152 +))) 145 145 154 +((( 155 + 156 +))) 146 146 147 147 ((( 159 +((( 148 148 v1.2 149 149 ))) 162 +))) 150 150 151 151 ((( 165 +((( 152 152 Release version 167 +))) 153 153 154 154 155 155 ))) ... ... @@ -243,83 +243,132 @@ 243 243 244 244 === 3.3.1 onfigure UART settings for RS485 or TTL communication === 245 245 261 +((( 246 246 RS485-BL can connect to either RS485 sensors or TTL sensor. User need to specify what type of sensor need to connect. 263 +))) 247 247 265 +((( 248 248 **~1. RS485-MODBUS mode:** 267 +))) 249 249 269 +((( 250 250 AT+MOD=1 ~/~/ Support RS485-MODBUS type sensors. User can connect multiply RS485 , Modbus sensors to the A / B pins. 271 +))) 251 251 273 +((( 252 252 **2. TTL mode:** 275 +))) 253 253 277 +((( 254 254 AT+MOD=2 ~/~/ Support TTL Level sensors, User can connect one TTL Sensor to the TXD/RXD/GND pins. 279 +))) 255 255 281 +((( 256 256 RS485-BL default UART settings is **9600, no parity, stop bit 1**. If the sensor has a different settings, user can change the RS485-BL setting to match. 283 +))) 257 257 258 -(% border="1" style="background-color:#ffffcc; color:green; width:795px" %) 259 -|((( 285 +(% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %) 286 +|=(% style="width: 120px;" %)((( 287 +((( 260 260 **AT Commands** 261 -)))|(% style="width:285px" %)((( 289 +))) 290 +)))|=(% style="width: 190px;" %)((( 291 +((( 262 262 **Description** 263 -)))|(% style="width:347px" %)((( 293 +))) 294 +)))|=(% style="width: 190px;" %)((( 295 +((( 264 264 **Example** 265 265 ))) 266 -|((( 298 +))) 299 +|(% style="width:120px" %)((( 300 +((( 267 267 AT+BAUDR 268 -)))|(% style="width:285px" %)((( 302 +))) 303 +)))|(% style="width:190px" %)((( 304 +((( 269 269 Set the baud rate (for RS485 connection). Default Value is: 9600. 270 -)))|(% style="width:347px" %)((( 306 +))) 307 +)))|(% style="width:190px" %)((( 271 271 ((( 309 +((( 272 272 AT+BAUDR=9600 273 273 ))) 312 +))) 274 274 275 275 ((( 315 +((( 276 276 Options: (1200,2400,4800,14400,19200,115200) 277 277 ))) 278 278 ))) 279 -|((( 319 +))) 320 +|(% style="width:120px" %)((( 321 +((( 280 280 AT+PARITY 281 -)))|(% style="width:285px" %)((( 323 +))) 324 +)))|(% style="width:190px" %)((( 282 282 ((( 326 +((( 283 283 Set UART parity (for RS485 connection) 284 284 ))) 329 +))) 285 285 286 286 ((( 332 +((( 287 287 Default Value is: no parity. 288 288 ))) 289 -)))|(% style="width:347px" %)((( 335 +))) 336 +)))|(% style="width:190px" %)((( 290 290 ((( 338 +((( 291 291 AT+PARITY=0 292 292 ))) 341 +))) 293 293 294 294 ((( 344 +((( 295 295 Option: 0: no parity, 1: odd parity, 2: even parity 296 296 ))) 297 297 ))) 298 -|((( 348 +))) 349 +|(% style="width:120px" %)((( 350 +((( 299 299 AT+STOPBIT 300 -)))|(% style="width:285px" %)((( 352 +))) 353 +)))|(% style="width:190px" %)((( 301 301 ((( 355 +((( 302 302 Set serial stopbit (for RS485 connection) 303 303 ))) 358 +))) 304 304 305 305 ((( 361 +((( 306 306 Default Value is: 1bit. 307 307 ))) 308 -)))|(% style="width:347px" %)((( 364 +))) 365 +)))|(% style="width:190px" %)((( 309 309 ((( 367 +((( 310 310 AT+STOPBIT=0 for 1bit 311 311 ))) 370 +))) 312 312 313 313 ((( 373 +((( 314 314 AT+STOPBIT=1 for 1.5 bit 315 315 ))) 376 +))) 316 316 317 317 ((( 379 +((( 318 318 AT+STOPBIT=2 for 2 bits 319 319 ))) 320 320 ))) 383 +))) 321 321 322 322 386 + 323 323 === 3.3.2 Configure sensors === 324 324 325 325 ((( ... ... @@ -330,19 +330,20 @@ 330 330 When user issue an (% style="color:#4f81bd" %)**AT+CFGDEV**(%%) command, Each (% style="color:#4f81bd" %)**AT+CFGDEV**(%%) equals to send a command to the RS485 or TTL sensors. This command will only run when user input it and won’t run during each sampling. 331 331 ))) 332 332 333 -(% border="1" style="background-color:#ffffcc; color:green; width: 806px" %)334 -|**AT Commands**|(% style="width: 418px" %)**Description**|(% style="width:256px" %)**Example**335 -|AT+CFGDEV|(% style="width: 418px" %)(((397 +(% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %) 398 +|=(% style="width: 120px;" %)**AT Commands**|=(% style="width: 190px;" %)**Description**|=(% style="width: 190px;" %)**Example** 399 +|AT+CFGDEV|(% style="width:120px" %)((( 336 336 This command is used to configure the RS485/TTL devices; they won’t be used during sampling. 337 337 338 338 AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx, 339 339 340 340 mm: 0: no CRC, 1: add CRC-16/MODBUS in the end of this command 341 -)))|(% style="width: 256px" %)AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m405 +)))|(% style="width:190px" %)AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m 342 342 343 343 Detail of AT+CFGDEV command see [[AT+CFGDEV detail>>||anchor="HRS485DebugCommand28AT2BCFGDEV29"]]. 344 344 345 345 410 + 346 346 === 3.3.3 Configure read commands for each sampling === 347 347 348 348 ((( ... ... @@ -409,117 +409,209 @@ 409 409 After we got the valid value from each RS485 commands, we need to combine them together with the command **AT+DATAUP**. 410 410 ))) 411 411 477 +((( 412 412 **Examples:** 479 +))) 413 413 481 +((( 414 414 Below are examples for the how above AT Commands works. 483 +))) 415 415 485 +((( 416 416 **AT+COMMANDx : **This command will be sent to RS485/TTL devices during each sampling, Max command length is 14 bytes. The grammar is: 487 +))) 417 417 418 -(% border="1" class="table-bordered" style="background-color:#4f81bd; color:white; width:50 1px" %)489 +(% border="1" class="table-bordered" style="background-color:#4f81bd; color:white; width:500px" %) 419 419 |(% style="width:498px" %)((( 491 +((( 420 420 **AT+COMMANDx=xx xx xx xx xx xx xx xx xx xx xx xx,m** 493 +))) 421 421 495 +((( 422 422 **xx xx xx xx xx xx xx xx xx xx xx xx: The RS485 command to be sent** 497 +))) 423 423 499 +((( 424 424 **m: 0: no CRC, 1: add CRC-16/MODBUS in the end of this command** 425 425 ))) 502 +))) 426 426 504 +((( 427 427 For example, if we have a RS485 sensor. The command to get sensor value is: 01 03 0B B8 00 02 46 0A. Where 01 03 0B B8 00 02 is the Modbus command to read the register 0B B8 where stored the sensor value. The 46 0A is the CRC-16/MODBUS which calculate manually. 506 +))) 428 428 508 +((( 429 429 In the RS485-BL, we should use this command AT+COMMAND1=01 03 0B B8 00 02,1 for the same. 510 +))) 430 430 512 +((( 431 431 **AT+SEARCHx**: This command defines how to handle the return from AT+COMMANDx. 514 +))) 432 432 433 -(% border="1" class="table-bordered" style="background-color:#4f81bd; color:white; width:5 80px" %)516 +(% border="1" class="table-bordered" style="background-color:#4f81bd; color:white; width:500px" %) 434 434 |(% style="width:577px" %)((( 518 +((( 435 435 **AT+SEARCHx=aa,xx xx xx xx xx** 520 +))) 436 436 437 -* **aa: 1: prefix match mode; 2: prefix and suffix match mode**438 -* *xxxxxxxx xx:matchstring. Max 5 bytesforprefix and5 bytesfor suffix**522 +* ((( 523 +**aa: 1: prefix match mode; 2: prefix and suffix match mode** 439 439 ))) 525 +* ((( 526 +**xx xx xx xx xx: match string. Max 5 bytes for prefix and 5 bytes for suffix** 527 +))) 528 +))) 440 440 530 +((( 441 441 **Examples:** 532 +))) 442 442 534 +((( 443 443 1)For a return string from AT+COMMAND1: 16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49 536 +))) 444 444 538 +((( 445 445 If we set AT+SEARCH1=1,1E 56 34. (max 5 bytes for prefix) 540 +))) 446 446 542 +((( 447 447 The valid data will be all bytes after 1E 56 34 , so it is (% style="background-color:yellow" %)**2e 30 58 5f 36 41 30 31 00 49** 544 +))) 448 448 546 +((( 449 449 [[image:1653271044481-711.png]] 548 +))) 450 450 550 +((( 451 451 2)For a return string from AT+COMMAND1: 16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49 552 +))) 452 452 554 +((( 453 453 If we set AT+SEARCH1=2, 1E 56 34+31 00 49 556 +))) 454 454 558 +((( 455 455 Device will search the bytes between 1E 56 34 and 31 00 49. So it is(% style="background-color:yellow" %) **2e 30 58 5f 36 41 30** 560 +))) 456 456 562 +((( 457 457 [[image:1653271276735-972.png]] 564 +))) 458 458 566 +((( 459 459 **AT+DATACUTx : **This command defines how to handle the return from AT+COMMANDx, max return length is 45 bytes. 568 +))) 460 460 461 -(% style="background-color:#4f81bd; color:white; width: 729px" %)570 +(% style="background-color:#4f81bd; color:white; width:510px" %) 462 462 |(% style="width:726px" %)((( 572 +((( 463 463 **AT+DATACUTx=a,b,c** 574 +))) 464 464 465 -* **a: length for the return of AT+COMMAND** 466 -* **b:1: grab valid value by byte, max 6 bytes. 2: grab valid value by bytes section, max 3 sections.** 467 -* **c: define the position for valid value. ** 576 +* ((( 577 +**a: length for the return of AT+COMMAND** 468 468 ))) 579 +* ((( 580 +**b:1: grab valid value by byte, max 6 bytes. 2: grab valid value by bytes section, max 3 sections.** 581 +))) 582 +* ((( 583 +**c: define the position for valid value. ** 584 +))) 585 +))) 469 469 587 +((( 470 470 **Examples:** 589 +))) 471 471 472 -* Grab bytes: 591 +* ((( 592 +Grab bytes: 593 +))) 473 473 595 +((( 474 474 [[image:1653271581490-837.png||height="313" width="722"]] 597 +))) 475 475 599 +((( 600 + 601 +))) 476 476 477 -* Grab a section. 603 +* ((( 604 +Grab a section. 605 +))) 478 478 607 +((( 479 479 [[image:1653271648378-342.png||height="326" width="720"]] 609 +))) 480 480 611 +((( 612 + 613 +))) 481 481 482 -* Grab different sections. 615 +* ((( 616 +Grab different sections. 617 +))) 483 483 619 +((( 484 484 [[image:1653271657255-576.png||height="305" width="730"]] 621 +))) 485 485 486 486 ((( 624 +((( 487 487 (% style="color:red" %)**Note:** 488 488 ))) 627 +))) 489 489 490 490 ((( 630 +((( 491 491 AT+SEARCHx and AT+DATACUTx can be used together, if both commands are set, RS485-BL will first process AT+SEARCHx on the return string and get a temporary string, and then process AT+DATACUTx on this temporary string to get the final payload. In this case, AT+DATACUTx need to set to format AT+DATACUTx=0,xx,xx where the return bytes set to 0. 492 492 ))) 633 +))) 493 493 494 494 ((( 636 +((( 495 495 **Example:** 496 496 ))) 639 +))) 497 497 498 498 ((( 642 +((( 499 499 (% style="color:red" %)AT+COMMAND1=11 01 1E D0,0 500 500 ))) 645 +))) 501 501 502 502 ((( 648 +((( 503 503 (% style="color:red" %)AT+SEARCH1=1,1E 56 34 504 504 ))) 651 +))) 505 505 506 506 ((( 654 +((( 507 507 (% style="color:red" %)AT+DATACUT1=0,2,1~~5 508 508 ))) 657 +))) 509 509 510 510 ((( 660 +((( 511 511 (% style="color:red" %)Return string from AT+COMMAND1: 16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49 512 512 ))) 663 +))) 513 513 514 514 ((( 666 +((( 515 515 (% style="color:red" %)String after SEARCH command: 2e 30 58 5f 36 41 30 31 00 49 516 516 ))) 669 +))) 517 517 518 518 ((( 672 +((( 519 519 (% style="color:red" %)Valid payload after DataCUT command: 2e 30 58 5f 36 520 520 ))) 675 +))) 521 521 677 +((( 522 522 [[image:1653271763403-806.png]] 679 +))) 523 523 524 524 525 525 === 3.3.4 Compose the uplink payload === ... ... @@ -526,10 +526,14 @@ 526 526 527 527 ((( 528 528 Through AT+COMMANDx and AT+DATACUTx we got valid value from each RS485 commands, Assume these valid value are RETURN1, RETURN2, .., to RETURNx. The next step is how to compose the LoRa Uplink Payload by these RETURNs. The command is **AT+DATAUP.** 686 + 687 + 529 529 ))) 530 530 531 531 ((( 532 532 (% style="color:#037691" %)**Examples: AT+DATAUP=0** 692 + 693 + 533 533 ))) 534 534 535 535 ((( ... ... @@ -747,7 +747,6 @@ 747 747 748 748 * (% style="color:#4f81bd" %)**Sensor Related Commands**(%%): These commands are special designed for RS485-BL. User can see these commands below: 749 749 750 - 751 751 === 3.5.1 Common Commands: === 752 752 753 753 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]] ... ... @@ -1107,7 +1107,6 @@ 1107 1107 |=(% style="width: 89px;" %)**Button**|=(% style="width: 141px;" %)**Feature** 1108 1108 |(% style="width:89px" %)**RST**|(% style="width:141px" %)Reboot RS485-BL 1109 1109 1110 - 1111 1111 == 3.7 +3V3 Output == 1112 1112 1113 1113 RS485-BL has a Controllable +3V3 output, user can use this output to power external sensor. ... ... @@ -1148,7 +1148,6 @@ 1148 1148 |=**LEDs**|=(% style="width: 274px;" %)**Feature** 1149 1149 |**LED1**|(% style="width:274px" %)Blink when device transmit a packet. 1150 1150 1151 - 1152 1152 == 3.10 Switch Jumper == 1153 1153 1154 1154 (% border="1" style="background-color:#ffffcc; color:green; width:515px" %) ... ... @@ -1292,13 +1292,17 @@ 1292 1292 1293 1293 == 6.2 How to change the LoRa Frequency Bands/Region? == 1294 1294 1453 +((( 1295 1295 User can follow the introduction for [[how to upgrade image>>||anchor="H6.1Howtoupgradetheimage3F"]]. When download the images, choose the required image file for download. 1455 +))) 1296 1296 1297 1297 1298 1298 1299 1299 == 6.3 How many RS485-Slave can RS485-BL connects? == 1300 1300 1461 +((( 1301 1301 The RS485-BL can support max 32 RS485 devices. Each uplink command of RS485-BL can support max 16 different RS485 command. So RS485-BL can support max 16 RS485 devices pre-program in the device for uplink. For other devices no pre-program, user can use the [[downlink message (type code 0xA8) to poll their info>>||anchor="H3.3.3Configurereadcommandsforeachsampling"]]. 1463 +))) 1302 1302 1303 1303 1304 1304 ... ... @@ -1332,8 +1332,6 @@ 1332 1332 * (% style="color:blue" %)**RU864**(%%): frequency bands RU864 1333 1333 * (% style="color:blue" %)**KZ865**(%%): frequency bands KZ865 1334 1334 1335 - 1336 - 1337 1337 = 9. Packing Info = 1338 1338 1339 1339 (((