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)
-
Attachments (0 modified, 0 added, 20 removed)
- 1652953414711-647.png
- 1652953462722-299.png
- 1652953542269-423.png
- 1652953553383-907.png
- 1652953568895-172.png
- 1652954654347-831.png
- 1653271044481-711.png
- 1653271276735-972.png
- 1653271581490-837.png
- 1653271648378-342.png
- 1653271657255-576.png
- 1653271763403-806.png
- 1653272787040-634.png
- 1653272817147-600.png
- 1653272901032-107.png
- 1653273818896-432.png
- image-20220519174512-1.png
- image-20220519174512-2.png
- image-20220519174512-3.png
- image-20220519174512-4.png
Details
- Page properties
-
- Content
-
... ... @@ -1,6 +1,7 @@ 1 1 (% style="text-align:center" %) 2 2 [[image:1652947681187-144.png||height="385" width="385"]] 3 3 4 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.jpg]] 4 4 5 5 6 6 ... ... @@ -26,7 +26,7 @@ 26 26 ))) 27 27 28 28 ((( 29 -RS485-BL can interface to RS485 sensor, 3.3v/5v UART sensor or interrupt sensor. RS485-BL provides **a 3.3v output** and** 30 +RS485-BL can interface to RS485 sensor, 3.3v/5v UART sensor or interrupt sensor. RS485-BL provides **a 3.3v output** and** a 5v output** to power external sensors. Both output voltages are controllable to minimize the total system power consumption. 30 30 ))) 31 31 32 32 ((( ... ... @@ -49,7 +49,7 @@ 49 49 Each RS485-BL pre-load with a set of unique keys for LoRaWAN registration, register these keys to LoRaWAN server and it will auto connect after power on. 50 50 ))) 51 51 52 -[[image: 1652953304999-717.png||height="424" width="733"]]53 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image002.png]] 53 53 54 54 == 1.2 Specifications == 55 55 ... ... @@ -56,7 +56,7 @@ 56 56 **Hardware System:** 57 57 58 58 * STM32L072CZT6 MCU 59 -* SX1276/78 Wireless Chip 60 +* SX1276/78 Wireless Chip 60 60 * Power Consumption (exclude RS485 device): 61 61 ** Idle: 6uA@3.3v 62 62 ... ... @@ -110,7 +110,7 @@ 110 110 * Smart Cities 111 111 * Smart Factory 112 112 113 -== 1.5 Firmware Change log == 114 +== 1.5 Firmware Change log == 114 114 115 115 [[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);"]] 116 116 ... ... @@ -144,261 +144,229 @@ 144 144 145 145 = 2. Pin mapping and Power ON Device = 146 146 147 -((( 148 148 The RS485-BL is powered on by 8500mAh battery. To save battery life, RS485-BL is shipped with power off. User can put the jumper to power on RS485-BL. 149 -))) 150 150 151 151 [[image:1652953055962-143.png||height="387" width="728"]] 152 152 152 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image003.png]] 153 153 154 154 The Left TXD and RXD are TTL interface for external sensor. TTL level is controlled by 3.3/5v Jumper. 155 155 156 -= 3. Operation Mode = 157 157 158 -== 3.1 How it works? == 159 159 160 -((( 158 +3. Operation Mode 159 +3.1 How it works? 160 + 161 161 The RS485-BL is configured as LoRaWAN OTAA Class A mode by default. It has OTAA keys to join network. To connect a local LoRaWAN network, user just need to input the OTAA keys in the network server and power on the RS485-BL. It will auto join the network via OTAA. 162 -))) 163 163 164 -== 3.2 Example to join LoRaWAN network == 165 165 166 -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. 164 +1. 165 +11. Example to join LoRaWAN network 167 167 168 - [[image:1652953414711-647.png||height="337"width="723"]]167 +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. 169 169 170 -((( 169 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image004.png]] 170 + 171 + 171 171 The RS485-BL in this example connected to two RS485 devices for demonstration, user can connect to other RS485 devices via the same method. 172 -))) 173 173 174 - (((174 + 175 175 The LG308 is already set to connect to [[TTN V3 network >>url:https://www.thethingsnetwork.org/]]. So what we need to now is only configure the TTN V3: 176 -))) 177 177 178 -((( 179 179 **Step 1**: Create a device in TTN V3 with the OTAA keys from RS485-BL. 180 -))) 181 181 182 -((( 183 183 Each RS485-BL is shipped with a sticker with unique device EUI: 184 -))) 185 185 186 -[[image: 1652953462722-299.png]]181 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image005.png]] 187 187 188 -((( 183 + 184 + 185 + 189 189 User can enter this key in their LoRaWAN Server portal. Below is TTN V3 screen shot: 190 -))) 191 191 192 -((( 193 193 Add APP EUI in the application. 194 -))) 195 195 190 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image006.png]] 196 196 192 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image007.png]] 197 197 194 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image008.png]] 198 198 199 -[[image:image -20220519174512-1.png]]196 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image009.png]] 200 200 201 -[[image:image-20220519174512-2.png||height="328" width="731"]] 202 202 203 -[[image:image-20220519174512-3.png||height="556" width="724"]] 204 204 205 -[[image:image-20220519174512-4.png]] 206 206 201 + 202 + 203 + 204 + 205 + 206 + 207 + 208 + 209 + 210 + 211 + 212 + 213 + 207 207 You can also choose to create the device manually. 208 208 209 -[[image:1652953542269-423.png||height="710" width="723"]] 216 +|((( 217 + 218 +))) 210 210 220 + 221 + 222 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image010.png]] 223 + 211 211 Add APP KEY and DEV EUI 212 212 213 -[[image: 1652953553383-907.png||height="514" width="724"]]226 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image011.png]] 214 214 215 215 216 -((( 217 217 **Step 2**: Power on RS485-BL 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. 218 -))) 219 219 220 -[[image: 1652953568895-172.png||height="232" width="724"]]231 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image012.png]] 221 221 222 -== 3.3 Configure Commands to read data == 223 223 224 -((( 234 + 235 + 236 +1. 237 +11. Configure Commands to read data 238 + 225 225 There are plenty of RS485 and TTL level devices in the market and each device has different command to read the valid data. To support these devices in flexible, RS485-BL supports flexible command set. User can use [[AT Commands or LoRaWAN Downlink>>path:#AT_COMMAND]] Command to configure how RS485-BL should read the sensor and how to handle the return from RS485 or TTL sensors. 226 -))) 227 227 228 -=== 3.3.1 onfigure UART settings for RS485 or TTL communication === 229 229 242 +1. 243 +11. 244 +111. Configure UART settings for RS485 or TTL communication 245 + 230 230 RS485-BL can connect to either RS485 sensors or TTL sensor. User need to specify what type of sensor need to connect. 231 231 232 - **~1. RS485-MODBUS mode:**248 +1. RS485-MODBUS mode: 233 233 234 234 AT+MOD=1 ~/~/ Support RS485-MODBUS type sensors. User can connect multiply RS485 , Modbus sensors to the A / B pins. 235 235 236 -**2. TTL mode:** 237 237 253 +1. TTL mode: 254 + 238 238 AT+MOD=2 ~/~/ Support TTL Level sensors, User can connect one TTL Sensor to the TXD/RXD/GND pins. 239 239 257 + 240 240 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. 241 241 242 -(% border="1" style="background-color:#ffffcc; color:green; width:795px" %) 243 -|((( 244 -**AT Commands** 245 -)))|(% style="width:285px" %)((( 246 -**Description** 247 -)))|(% style="width:347px" %)((( 248 -**Example** 249 -))) 250 -|((( 251 -AT+BAUDR 252 -)))|(% style="width:285px" %)((( 253 -Set the baud rate (for RS485 connection). Default Value is: 9600. 254 -)))|(% style="width:347px" %)((( 255 -((( 260 + 261 +|**AT Commands**|**Description**|**Example** 262 +|AT+BAUDR|Set the baud rate (for RS485 connection). Default Value is: 9600.|((( 256 256 AT+BAUDR=9600 257 -))) 258 258 259 -((( 260 260 Options: (1200,2400,4800,14400,19200,115200) 261 261 ))) 262 -))) 263 -|((( 264 -AT+PARITY 265 -)))|(% style="width:285px" %)((( 266 -((( 267 +|AT+PARITY|((( 267 267 Set UART parity (for RS485 connection) 268 -))) 269 269 270 -((( 271 271 Default Value is: no parity. 272 -))) 273 -)))|(% style="width:347px" %)((( 274 -((( 271 +)))|((( 275 275 AT+PARITY=0 276 -))) 277 277 278 -((( 279 279 Option: 0: no parity, 1: odd parity, 2: even parity 280 280 ))) 281 -))) 282 -|((( 283 -AT+STOPBIT 284 -)))|(% style="width:285px" %)((( 285 -((( 276 +|AT+STOPBIT|((( 286 286 Set serial stopbit (for RS485 connection) 287 -))) 288 288 289 -((( 290 290 Default Value is: 1bit. 291 -))) 292 -)))|(% style="width:347px" %)((( 293 -((( 280 +)))|((( 294 294 AT+STOPBIT=0 for 1bit 295 -))) 296 296 297 -((( 298 298 AT+STOPBIT=1 for 1.5 bit 299 -))) 300 300 301 -((( 302 302 AT+STOPBIT=2 for 2 bits 303 303 ))) 304 -))) 305 305 306 -=== 3.3.2 Configure sensors === 307 307 308 -((( 309 -Some sensors might need to configure before normal operation. User can configure such sensor via PC or through RS485-BL AT Commands (% style="color:#4f81bd" %)**AT+CFGDEV**. 310 -))) 311 311 312 -((( 313 -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. 314 -))) 315 315 316 -(% border="1" style="background-color:#ffffcc; color:green; width:806px" %) 317 -|**AT Commands**|(% style="width:418px" %)**Description**|(% style="width:256px" %)**Example** 318 -|AT+CFGDEV|(% style="width:418px" %)((( 291 + 292 +1. 293 +11. 294 +111. Configure sensors 295 + 296 +Some sensors might need to configure before normal operation. User can configure such sensor via PC or through RS485-BL AT Commands AT+CFGDEV. 297 + 298 + 299 +When user issue an AT+CFGDEV command, Each 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. 300 + 301 +|**AT Commands**|**Description**|**Example** 302 +|AT+CFGDEV|((( 319 319 This command is used to configure the RS485/TTL devices; they won’t be used during sampling. 320 320 321 -AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx, 305 +AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m 322 322 323 -m m: 0: no CRC, 1: add CRC-16/MODBUS in the end of this command324 -)))| (% style="width:256px" %)AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m307 +m: 0: no CRC, 1: add CRC-16/MODBUS in the end of this command 308 +)))|AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m 325 325 326 326 Detail of AT+CFGDEV command see [[AT+CFGDEV detail>>path:#AT_CFGDEV]]. 327 327 328 -=== 3.3.3 Configure read commands for each sampling === 329 329 330 -((( 313 + 314 + 315 + 316 +1. 317 +11. 318 +111. Configure read commands for each sampling 319 + 331 331 RS485-BL is a battery powered device; it will sleep most of time. And wake up on each period and read RS485 / TTL sensor data and uplink. 332 -))) 333 333 334 - (((322 + 335 335 During each sampling, we need to confirm what commands we need to send to the sensors to read data. After the RS485/TTL sensors send back the value, it normally includes some bytes and we only need a few from them for a shorten payload. 336 -))) 337 337 338 - (((325 + 339 339 To save the LoRaWAN network bandwidth, we might need to read data from different sensors and combine their valid value into a short payload. 340 -))) 341 341 342 - (((328 + 343 343 This section describes how to achieve above goals. 344 -))) 345 345 346 - (((331 + 347 347 During each sampling, the RS485-BL can support 15 commands to read sensors. And combine the return to one or several uplink payloads. 348 -))) 349 349 350 - (((334 + 351 351 **Command from RS485-BL to Sensor:** 352 -))) 353 353 354 -((( 355 355 RS485-BL can send out pre-set max 15 strings via **AT+COMMAD1**, **ATCOMMAND2**,…, to **AT+COMMANDF** . All commands are of same grammar. 356 -))) 357 357 358 - (((339 + 359 359 **Handle return from sensors to RS485-BL**: 360 -))) 361 361 362 -((( 363 363 After RS485-BL send out a string to sensor, RS485-BL will wait for the return from RS485 or TTL sensor. And user can specify how to handle the return, by **AT+DATACUT or AT+SEARCH commands** 364 -))) 365 365 366 -* ((( 367 -**AT+DATACUT** 368 -))) 369 369 370 -((( 345 +* **AT+DATACUT** 346 + 371 371 When the return value from sensor have fix length and we know which position the valid value we should get, we can use AT+DATACUT command. 372 -))) 373 373 374 -* ((( 375 -**AT+SEARCH** 376 -))) 377 377 378 -((( 350 +* **AT+SEARCH** 351 + 379 379 When the return value from sensor is dynamic length and we are not sure which bytes the valid data is, instead, we know what value the valid value following. We can use AT+SEARCH to search the valid value in the return string. 380 -))) 381 381 382 - (((354 + 383 383 **Define wait timeout:** 384 -))) 385 385 386 -((( 387 387 Some RS485 device might has longer delay on reply, so user can use AT+CMDDL to set the timeout for getting reply after the RS485 command is sent. For example, AT+CMDDL1=1000 to send the open time to 1000ms 388 -))) 389 389 390 - (((359 + 391 391 After we got the valid value from each RS485 commands, we need to combine them together with the command **AT+DATAUP**. 392 -))) 393 393 362 + 394 394 **Examples:** 395 395 396 396 Below are examples for the how above AT Commands works. 397 397 367 + 398 398 **AT+COMMANDx : **This command will be sent to RS485/TTL devices during each sampling, Max command length is 14 bytes. The grammar is: 399 399 400 -(% border="1" class="table-bordered" style="background-color:#4f81bd; color:white; width:501px" %) 401 -|(% style="width:498px" %)((( 370 +|((( 402 402 **AT+COMMANDx=xx xx xx xx xx xx xx xx xx xx xx xx,m** 403 403 404 404 **xx xx xx xx xx xx xx xx xx xx xx xx: The RS485 command to be sent** ... ... @@ -410,43 +410,46 @@ 410 410 411 411 In the RS485-BL, we should use this command AT+COMMAND1=01 03 0B B8 00 02,1 for the same. 412 412 382 + 413 413 **AT+SEARCHx**: This command defines how to handle the return from AT+COMMANDx. 414 414 415 -(% border="1" class="table-bordered" style="background-color:#4f81bd; color:white; width:580px" %) 416 -|(% style="width:577px" %)((( 385 +|((( 417 417 **AT+SEARCHx=aa,xx xx xx xx xx** 418 418 419 419 * **aa: 1: prefix match mode; 2: prefix and suffix match mode** 420 420 * **xx xx xx xx xx: match string. Max 5 bytes for prefix and 5 bytes for suffix** 390 + 391 + 421 421 ))) 422 422 423 - **Examples:**394 +Examples: 424 424 425 425 1. For a return string from AT+COMMAND1: 16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49 426 426 427 427 If we set AT+SEARCH1=1,1E 56 34. (max 5 bytes for prefix) 428 428 429 -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**400 +The valid data will be all bytes after 1E 56 34 , so it is 2e 30 58 5f 36 41 30 31 00 49 430 430 431 -[[image: 1653271044481-711.png]]402 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image013.png]] 432 432 404 + 433 433 1. For a return string from AT+COMMAND1: 16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49 434 434 435 435 If we set AT+SEARCH1=2, 1E 56 34+31 00 49 436 436 437 -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**409 +Device will search the bytes between 1E 56 34 and 31 00 49. So it is 2e 30 58 5f 36 41 30 438 438 439 -[[image: 1653271276735-972.png]]411 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image014.png]] 440 440 413 + 441 441 **AT+DATACUTx : **This command defines how to handle the return from AT+COMMANDx, max return length is 45 bytes. 442 442 443 -(% style="background-color:#4f81bd; color:white; width:729px" %) 444 -|(% style="width:726px" %)((( 416 +|((( 445 445 **AT+DATACUTx=a,b,c** 446 446 447 447 * **a: length for the return of AT+COMMAND** 448 448 * **b:1: grab valid value by byte, max 6 bytes. 2: grab valid value by bytes section, max 3 sections.** 449 -* **c: define the position for valid value. 421 +* **c: define the position for valid value. ** 450 450 ))) 451 451 452 452 Examples: ... ... @@ -453,130 +453,95 @@ 453 453 454 454 * Grab bytes: 455 455 456 -[[image: 1653271581490-837.png||height="313" width="722"]]428 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image015.png]] 457 457 458 458 * Grab a section. 459 459 460 -[[image: 1653271648378-342.png||height="326" width="720"]]432 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image016.png]] 461 461 462 462 * Grab different sections. 463 463 464 -[[image: 1653271657255-576.png||height="305" width="730"]]436 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image017.png]] 465 465 466 -((( 467 -(% style="color:red" %)**Note:** 468 -))) 469 469 470 -((( 439 +Note: 440 + 471 471 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. 472 -))) 473 473 474 -((( 475 -**Example:** 476 -))) 443 +Example: 477 477 478 -((( 479 -(% style="color:red" %)AT+COMMAND1=11 01 1E D0,0 480 -))) 445 +AT+COMMAND1=11 01 1E D0,0 481 481 482 -((( 483 -(% style="color:red" %)AT+SEARCH1=1,1E 56 34 484 -))) 447 +AT+SEARCH1=1,1E 56 34 485 485 486 -((( 487 -(% style="color:red" %)AT+DATACUT1=0,2,1~~5 488 -))) 449 +AT+DATACUT1=0,2,1~~5 489 489 490 -((( 491 -(% style="color:red" %)Return string from AT+COMMAND1: 16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49 492 -))) 451 +Return string from AT+COMMAND1: 16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49 493 493 494 -((( 495 -(% style="color:red" %)String after SEARCH command: 2e 30 58 5f 36 41 30 31 00 49 496 -))) 453 +String after SEARCH command: 2e 30 58 5f 36 41 30 31 00 49 497 497 498 -((( 499 -(% style="color:red" %)Valid payload after DataCUT command: 2e 30 58 5f 36 500 -))) 455 +Valid payload after DataCUT command: 2e 30 58 5f 36 501 501 502 -[[image: 1653271763403-806.png]]457 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image018.png]] 503 503 504 -=== 3.3.4 Compose the uplink payload === 505 505 506 -((( 460 + 461 + 462 +1. 463 +11. 464 +111. Compose the uplink payload 465 + 507 507 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.** 508 -))) 509 509 510 -((( 511 -(% style="color:#4f81bd" %)**Examples: AT+DATAUP=0** 512 -))) 513 513 514 -((( 515 -Compose the uplink payload with value returns in sequence and send with (% style="color:red" %)**A SIGNLE UPLINK**. 516 -))) 469 +**Examples: AT+DATAUP=0** 517 517 518 -((( 471 +Compose the uplink payload with value returns in sequence and send with **A SIGNLE UPLINK**. 472 + 519 519 Final Payload is 520 -))) 521 521 522 -((( 523 -(% style="color:#4f81bd" %)Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx 524 -))) 475 +Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx 525 525 526 -((( 527 527 Where PAYVER is defined by AT+PAYVER, below is an example screen shot. 528 -))) 529 529 530 -[[image: 1653272787040-634.png||height="515" width="719"]]479 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image019.png]] 531 531 532 -((( 533 -(% style="color:#4f81bd" %)**Examples: AT+DATAUP=1** 534 -))) 535 535 536 -((( 537 -Compose the uplink payload with value returns in sequence and send with (% style="color:red" %)**Multiply UPLINKs**. 538 -))) 539 539 540 -((( 483 +**Examples: AT+DATAUP=1** 484 + 485 +Compose the uplink payload with value returns in sequence and send with **Multiply UPLINKs**. 486 + 541 541 Final Payload is 542 -))) 543 543 544 -((( 545 -(% style="color:#4f81bd" %)Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA 546 -))) 489 +Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA 547 547 548 -1. ((( 549 -Battery Info (2 bytes): Battery voltage 550 -))) 551 -1. ((( 552 -PAYVER (1 byte): Defined by AT+PAYVER 553 -))) 554 -1. ((( 555 -PAYLOAD COUNT (1 byte): Total how many uplinks of this sampling. 556 -))) 557 -1. ((( 558 -PAYLOAD# (1 byte): Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT) 559 -))) 560 -1. ((( 561 -DATA: Valid value: max 6 bytes(US915 version here, Notice*!) for each uplink so each uplink <= 11 bytes. For the last uplink, DATA will might less than 6 bytes 562 -))) 491 +1. Battery Info (2 bytes): Battery voltage 492 +1. PAYVER (1 byte): Defined by AT+PAYVER 493 +1. PAYLOAD COUNT (1 byte): Total how many uplinks of this sampling. 494 +1. PAYLOAD# (1 byte): Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT) 495 +1. DATA: Valid value: max 6 bytes(US915 version here, [[Notice*!>>path:#max_byte]]) for each uplink so each uplink <= 11 bytes. For the last uplink, DATA will might less than 6 bytes 563 563 564 -[[image: 1653272817147-600.png||height="437" width="717"]]497 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image020.png]] 565 565 499 + 566 566 So totally there will be 3 uplinks for this sampling, each uplink includes 6 bytes DATA 567 567 568 -DATA1=RETURN1 Valid Value = (% style="background-color:#4f81bd; color:white" %)20 20 0a 33 90 41502 +DATA1=RETURN1 Valid Value = 20 20 0a 33 90 41 569 569 570 -DATA2=1^^st^^ ~~ 6^^th^^ byte of Valid value of RETURN10= (% style="background-color:#4f81bd; color:white" %)02 aa 05 81 0a 20504 +DATA2=1^^st^^ ~~ 6^^th^^ byte of Valid value of RETURN10= 02 aa 05 81 0a 20 571 571 572 -DATA3=7^^th^^ ~~ 11^^th^^ bytes of Valid value of RETURN10 = (%style="background-color:#4f81bd; color:white" %)20 20 20 2d 30506 +DATA3=7^^th^^ ~~ 11^^th^^ bytes of Valid value of RETURN10 = 20 20 20 2d 30 573 573 508 + 509 + 574 574 Below are the uplink payloads: 575 575 576 -[[image: 1653272901032-107.png]]512 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image021.png]] 577 577 578 -(% style="color:red" %)Notice: the Max bytes is according to the max support bytes in different Frequency Bands for lowest SF. As below: 579 579 515 +Notice: the Max bytes is according to the max support bytes in different Frequency Bands for lowest SF. As below: 516 + 580 580 ~* For AU915/AS923 bands, if UplinkDwell time=0, max 51 bytes for each uplink ( so 51 -5 = 46 max valid date) 581 581 582 582 * For AU915/AS923 bands, if UplinkDwell time=1, max 11 bytes for each uplink ( so 11 -5 = 6 max valid date). ... ... @@ -585,30 +585,28 @@ 585 585 586 586 ~* For all other bands: max 51 bytes for each uplink ( so 51 -5 = 46 max valid date). 587 587 588 -=== 3.3.5 Uplink on demand === 589 589 590 -((( 526 + 527 +1. 528 +11. 529 +111. Uplink on demand 530 + 591 591 Except uplink periodically, RS485-BL is able to uplink on demand. The server sends downlink command to RS485-BL and RS485 will uplink data base on the command. 592 -))) 593 593 594 -((( 595 595 Downlink control command: 596 -))) 597 597 598 -((( 599 -**0x08 command**: Poll an uplink with current command set in RS485-BL. 600 -))) 535 +[[0x08 command>>path:#downlink_08]]: Poll an uplink with current command set in RS485-BL. 601 601 602 -((( 603 -**0xA8 command**: Send a command to RS485-BL and uplink the output from sensors. 604 -))) 537 +[[0xA8 command>>path:#downlink_A8]]: Send a command to RS485-BL and uplink the output from sensors. 605 605 606 -=== 3.3.6 Uplink on Interrupt === 607 607 608 -Put the interrupt sensor between 3.3v_out and GPIO ext. 609 609 610 -[[image:1653273818896-432.png]] 541 +1. 542 +11. 543 +111. Uplink on Interrupt 611 611 545 +Put the interrupt sensor between 3.3v_out and GPIO ext.[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image022.png]] 546 + 612 612 AT+INTMOD=0 Disable Interrupt 613 613 614 614 AT+INTMOD=1 Interrupt trigger by rising or falling edge. ... ... @@ -617,8 +617,11 @@ 617 617 618 618 AT+INTMOD=3 Interrupt trigger by rising edge. 619 619 620 -== 3.4 Uplink Payload == 621 621 556 +1. 557 +11. Uplink Payload 558 + 559 + 622 622 |**Size(bytes)**|**2**|**1**|**Length depends on the return from the commands** 623 623 |Value|((( 624 624 Battery(mV) ... ... @@ -667,7 +667,7 @@ 667 667 668 668 [[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image023.png]] 669 669 670 -1. 608 +1. 671 671 11. Configure RS485-BL via AT or Downlink 672 672 673 673 User can configure RS485-BL via [[AT Commands >>path:#_Using_the_AT]]or LoRaWAN Downlink Commands ... ... @@ -678,10 +678,12 @@ 678 678 679 679 * **Sensor Related Commands**: These commands are special designed for RS485-BL. User can see these commands below: 680 680 619 + 681 681 1. 682 682 11. 683 683 111. Common Commands: 684 684 624 + 685 685 They should be available for each of Dragino Sensors, such as: change uplink interval, reset device. For firmware v1.3, user can find what common commands it supports: [[http:~~/~~/wiki.dragino.com/index.php?title=End_Device_AT_Commands_and_Downlink_Commands>>url:http://wiki.dragino.com/index.php?title=End_Device_AT_Commands_and_Downlink_Commands]] 686 686 687 687 ... ... @@ -689,6 +689,7 @@ 689 689 11. 690 690 111. Sensor related commands: 691 691 632 + 692 692 ==== Choose Device Type (RS485 or TTL) ==== 693 693 694 694 RS485-BL can connect to either RS485 sensors or TTL sensor. User need to specify what type of sensor need to connect. ... ... @@ -729,6 +729,7 @@ 729 729 * XX XX XX XX: RS485 command total NN bytes 730 730 * YY: How many bytes will be uplink from the return of this RS485 command, if YY=0, RS485-BL will execute the downlink command without uplink; if YY>0, RS485-BL will uplink total YY bytes from the output of this RS485 command 731 731 673 + 732 732 **Example 1:** 733 733 734 734 To connect a Modbus Alarm with below commands. ... ... @@ -837,6 +837,7 @@ 837 837 838 838 * AT+MBFUN=0: Disable Modbus fast reading. 839 839 782 + 840 840 Example: 841 841 842 842 * AT+MBFUN=1 and AT+DATACUT1/AT+DATACUT2 are not configure (0,0,0). ... ... @@ -921,7 +921,7 @@ 921 921 922 922 Etc. AT+CMDEAR=1,10 means erase AT+COMMAND1/AT+DATACUT1 to AT+COMMAND10/AT+DATACUT10 923 923 924 -Example screen shot after clear all RS485 commands. 867 +Example screen shot after clear all RS485 commands. 925 925 926 926 927 927 ... ... @@ -965,6 +965,7 @@ 965 965 * A7 01 00 60 same as AT+BAUDR=9600 966 966 * A7 01 04 80 same as AT+BAUDR=115200 967 967 911 + 968 968 A7 02 aa: Same as AT+PARITY=aa (aa value: 00 , 01 or 02) 969 969 970 970 A7 03 aa: Same as AT+STOPBIT=aa (aa value: 00 , 01 or 02) ... ... @@ -995,15 +995,17 @@ 995 995 1. 996 996 11. Buttons 997 997 942 + 998 998 |**Button**|**Feature** 999 999 |**RST**|Reboot RS485-BL 1000 1000 946 + 1001 1001 1. 1002 1002 11. +3V3 Output 1003 1003 1004 1004 RS485-BL has a Controllable +3V3 output, user can use this output to power external sensor. 1005 1005 1006 -The +3V3 output will be valid for every sampling. RS485-BL will enable +3V3 output before all sampling and disable the +3V3 after all sampling. 952 +The +3V3 output will be valid for every sampling. RS485-BL will enable +3V3 output before all sampling and disable the +3V3 after all sampling. 1007 1007 1008 1008 1009 1009 The +3V3 output time can be controlled by AT Command. ... ... @@ -1021,7 +1021,7 @@ 1021 1021 1022 1022 RS485-BL has a Controllable +5V output, user can use this output to power external sensor. 1023 1023 1024 -The +5V output will be valid for every sampling. RS485-BL will enable +5V output before all sampling and disable the +5v after all sampling. 970 +The +5V output will be valid for every sampling. RS485-BL will enable +5V output before all sampling and disable the +5v after all sampling. 1025 1025 1026 1026 1027 1027 The 5V output time can be controlled by AT Command. ... ... @@ -1042,6 +1042,7 @@ 1042 1042 |**LEDs**|**Feature** 1043 1043 |**LED1**|Blink when device transmit a packet. 1044 1044 991 + 1045 1045 1. 1046 1046 11. Switch Jumper 1047 1047 ... ... @@ -1063,6 +1063,7 @@ 1063 1063 1064 1064 1. Case Study 1065 1065 1013 + 1066 1066 User can check this URL for some case studies. 1067 1067 1068 1068 [[http:~~/~~/wiki.dragino.com/index.php?title=APP_RS485_COMMUNICATE_WITH_SENSORS>>url:http://wiki.dragino.com/index.php?title=APP_RS485_COMMUNICATE_WITH_SENSORS]] ... ... @@ -1150,6 +1150,7 @@ 1150 1150 * For bug fix 1151 1151 * Change LoRaWAN bands. 1152 1152 1101 + 1153 1153 Below shows the hardware connection for how to upload an image to RS485-BL: 1154 1154 1155 1155 [[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image030.png]] ... ... @@ -1193,6 +1193,7 @@ 1193 1193 1. 1194 1194 11. How many RS485-Slave can RS485-BL connects? 1195 1195 1145 + 1196 1196 The RS485-BL can support max 32 RS485 devices. Each uplink command of RS485-BL can support max 16 different RS485 command. So RS485-BL can support max 16 RS485 devices pre-program in the device for uplink. For other devices no pre-program, user can use the [[downlink message (type code 0xA8) to poll their info>>path:#downlink_A8]]. 1197 1197 1198 1198 ... ... @@ -1203,7 +1203,7 @@ 1203 1203 1204 1204 Please see this link for debug: 1205 1205 1206 -[[http:~~/~~/wiki.dragino.com/index.php?title=Main_Page#LoRaWAN_Communication_Debug>>url:http://wiki.dragino.com/index.php?title=Main_Page#LoRaWAN_Communication_Debug]] 1156 +[[http:~~/~~/wiki.dragino.com/index.php?title=Main_Page#LoRaWAN_Communication_Debug>>url:http://wiki.dragino.com/index.php?title=Main_Page#LoRaWAN_Communication_Debug]] 1207 1207 1208 1208 1209 1209 ... ... @@ -1218,6 +1218,7 @@ 1218 1218 1219 1219 1. Order Info 1220 1220 1171 + 1221 1221 **Part Number: RS485-BL-XXX** 1222 1222 1223 1223 **XXX:** ... ... @@ -1233,6 +1233,7 @@ 1233 1233 * **RU864**: frequency bands RU864 1234 1234 * **KZ865: **frequency bands KZ865 1235 1235 1187 + 1236 1236 1. Packing Info 1237 1237 1238 1238 **Package Includes**: ... ... @@ -1241,6 +1241,7 @@ 1241 1241 * Stick Antenna for LoRa RF part x 1 1242 1242 * Program cable x 1 1243 1243 1196 + 1244 1244 **Dimension and weight**: 1245 1245 1246 1246 * Device Size: 13.5 x 7 x 3 cm ... ... @@ -1248,6 +1248,7 @@ 1248 1248 * Package Size / pcs : 14.5 x 8 x 5 cm 1249 1249 * Weight / pcs : 170g 1250 1250 1204 + 1251 1251 1. Support 1252 1252 1253 1253 * Support is provided Monday to Friday, from 09:00 to 18:00 GMT+8. Due to different timezones we cannot offer live support. However, your questions will be answered as soon as possible in the before-mentioned schedule.
- 1652953414711-647.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -119.3 KB - Content
- 1652953462722-299.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -202.7 KB - Content
- 1652953542269-423.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -118.5 KB - Content
- 1652953553383-907.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -94.0 KB - Content
- 1652953568895-172.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -109.3 KB - Content
- 1652954654347-831.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -138.7 KB - Content
- 1653271044481-711.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -27.8 KB - Content
- 1653271276735-972.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -26.6 KB - Content
- 1653271581490-837.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -138.7 KB - Content
- 1653271648378-342.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -131.4 KB - Content
- 1653271657255-576.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -142.6 KB - Content
- 1653271763403-806.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -27.7 KB - Content
- 1653272787040-634.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -294.0 KB - Content
- 1653272817147-600.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -143.3 KB - Content
- 1653272901032-107.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -197.8 KB - Content
- 1653273818896-432.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -31.6 KB - Content
- image-20220519174512-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -32.2 KB - Content
- image-20220519174512-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -42.7 KB - Content
- image-20220519174512-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -36.3 KB - Content
- image-20220519174512-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -19.1 KB - Content