Changes for page SDI-12-LB/LS -- SDI-12 to LoRaWAN Converter User Manual
Last modified by Xiaoling on 2025/04/25 08:58
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -139,6 +139,7 @@ 139 139 ))) 140 140 |(% style="width:167px" %)Fast press ACT 5 times.|(% style="width:117px" %)Deactivate Device|(% style="width:225px" %)(% style="color:red" %)**Red led**(%%) will solid on for 5 seconds. Means PS-LB is in Deep Sleep Mode. 141 141 142 + 142 142 == 1.7 Pin Mapping == 143 143 144 144 ... ... @@ -162,9 +162,6 @@ 162 162 == 1.9 Mechanical == 163 163 164 164 165 - 166 - 167 - 168 168 [[image:image-20230201090139-2.png]] 169 169 170 170 [[image:image-20230201090139-3.png]] ... ... @@ -177,7 +177,7 @@ 177 177 == 2.1 How it works == 178 178 179 179 180 -The SDI-12-LB is configured as **LoRaWAN OTAA Class A** mode by default. It has OTAA keys to join LoRaWAN network. To connect a local LoRaWAN network, you need to input the OTAA keys in the LoRaWAN IoT server and activate the SDI-12-LB. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 20 minutes. 178 +The SDI-12-LB is configured as **(% style="color:#037691" %)LoRaWAN OTAA Class A**(%%) mode by default. It has OTAA keys to join LoRaWAN network. To connect a local LoRaWAN network, you need to input the OTAA keys in the LoRaWAN IoT server and activate the SDI-12-LB. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 20 minutes. 181 181 182 182 183 183 == 2.2 Quick guide to connect to LoRaWAN server (OTAA) == ... ... @@ -192,7 +192,7 @@ 192 192 The LPS8V2 is already set to connected to [[TTN network >>url:https://console.cloud.thethings.network/]], so what we need to now is configure the TTN server. 193 193 194 194 195 -**Step 1**: Create a device in TTN with the OTAA keys from SDI-12-LB. 193 +**(% style="color:blue" %)Step 1**(%%): Create a device in TTN with the OTAA keys from SDI-12-LB. 196 196 197 197 Each SDI-12-LB is shipped with a sticker with the default device EUI as below: 198 198 ... ... @@ -206,35 +206,35 @@ 206 206 You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot: 207 207 208 208 209 -**Register the device** 207 +**(% style="color:blue" %)Register the device** 210 210 211 211 [[image:1675213652444-622.png]] 212 212 213 213 214 -**Add APP EUI and DEV EUI** 212 +**(% style="color:blue" %)Add APP EUI and DEV EUI** 215 215 216 216 217 217 [[image:1675213661769-223.png]] 218 218 219 219 220 -**Add APP EUI in the application** 218 +**(% style="color:blue" %)Add APP EUI in the application** 221 221 222 222 223 223 [[image:1675213675852-577.png]] 224 224 225 225 226 -**Add APP KEY** 224 +**(% style="color:blue" %)Add APP KEY** 227 227 228 228 [[image:1675213686734-883.png]] 229 229 230 230 231 -**Step 2**: Activate on SDI-12-LB 229 +**(% style="color:blue" %)Step 2**(%%): Activate on SDI-12-LB 232 232 233 233 234 234 Press the button for 5 seconds to activate the SDI-12-LB. 235 235 236 236 237 -**Green led** will fast blink 5 times, device will enter **OTA mode** for 3 seconds. And then start to JOIN LoRaWAN network. **Green led** will solidly turn on for 5 seconds after joined in network. 235 +**(% style="color:green" %)Green led**(%%) will fast blink 5 times, device will enter **(% style="color:blue" %)OTA mode** (%%)for 3 seconds. And then start to JOIN LoRaWAN network. **(% style="color:green" %)Green led**(%%) will solidly turn on for 5 seconds after joined in network. 238 238 239 239 240 240 [[image:1675213704414-644.png]] ... ... @@ -263,15 +263,15 @@ 263 263 [[image:image-20230201091027-7.png||height="261" width="1179"]] 264 264 265 265 266 -==== **al! ~-~- Get SDI-12 sensor Identification** ==== 264 +==== **(% style="color:blue" %)al! ~-~- Get SDI-12 sensor Identification** ==== 267 267 268 268 269 269 * AT Command: AT+ADDRI=aa 270 270 * LoRaWAN Downlink(prefix 0xAA00): AA 00 aa 271 271 272 -**Parameter: **aa: ASCII value of SDI-12 sensor address in downlink or HEX value in AT Command) 270 +**(% style="color:#037691" %)Parameter: **(%%)aa: ASCII value of SDI-12 sensor address in downlink or HEX value in AT Command) 273 273 274 -**Example : **AT+ADDRI=0 ( Equal to downlink: 0x AA 00 30) 272 +**(% style="color:blue" %)Example : **AT+ADDRI=0 ( Equal to downlink: 0x AA 00 30) 275 275 276 276 277 277 The following is the display information on the serial port and the server. ... ... @@ -283,30 +283,31 @@ 283 283 [[image:image-20230201091257-9.png||height="225" width="1242"]] 284 284 285 285 286 -==== **aM!,aMC!, aM1!- aM9!, aMC1!- aMC9!** ==== 284 +==== **(% style="color:blue" %)aM!,aMC!, aM1!- aM9!, aMC1!- aMC9!** ==== 287 287 288 288 289 -**aM! **: Start Non-Concurrent Measurement 287 +**(% style="color:red" %)aM! **(%%): Start Non-Concurrent Measurement 290 290 291 -**aMC! **: Start Non-Concurrent Measurement – Request CRC 289 +**(% style="color:red" %)aMC! **(%%): Start Non-Concurrent Measurement – Request CRC 292 292 293 -**aM1!- aM9! **: Additional Measurements 291 +**(% style="color:red" %)aM1!- aM9! **(%%): Additional Measurements 294 294 295 -**aMC1!- aMC9!** : Additional Measurements – Request CRC 293 +**(% style="color:red" %)aMC1!- aMC9!**(%%) : Additional Measurements – Request CRC 296 296 297 297 298 298 * AT Command : AT+ADDRM=0,1,0,1 297 + 299 299 * LoRaWAN Downlink(prefix 0xAA01): 0xAA 01 30 01 00 01 300 300 301 301 Downlink:AA 01 aa bb cc dd 302 302 303 -**aa**: SDI-12 sensor address. 302 +**(% style="color:#037691" %)aa**(%%): SDI-12 sensor address. 304 304 305 -**bb**: 0: no CRC, 1: request CRC 304 +**(% style="color:#037691" %)bb**(%%): 0: no CRC, 1: request CRC 306 306 307 -**cc**: 1-9: Additional Measurement, 0: no additional measurement 306 +**(% style="color:#037691" %)cc**(%%): 1-9: Additional Measurement, 0: no additional measurement 308 308 309 -**dd**: delay (in second) to send **aD0!** to get return. 308 +**(% style="color:#037691" %)dd**(%%): delay (in second) to send **(% style="color:#037691" %)aD0!**(%%) to get return. 310 310 311 311 312 312 The following is the display information on the serial port and the server. ... ... @@ -319,16 +319,16 @@ 319 319 320 320 321 321 322 -==== **aC!, aCC!, aC1!- aC9!, aCC1!- aCC9! ** ==== 321 +==== **(% style="color:blue" %)aC!, aCC!, aC1!- aC9!, aCC1!- aCC9! ** ==== 323 323 324 324 325 -**aC!** : Start Concurrent Measurement 324 +**(% style="color:red" %)aC!**(%%) : Start Concurrent Measurement 326 326 327 -**aCC!** : Start Concurrent Measurement – Request CRC 326 +**(% style="color:red" %)aCC!** (%%): Start Concurrent Measurement – Request CRC 328 328 329 -**aC1!- aC9!** : Start Additional Concurrent Measurements 328 +**(% style="color:red" %)aC1!- aC9!**(%%) : Start Additional Concurrent Measurements 330 330 331 -**aCC1!- aCC9!** : Start Additional Concurrent Measurements – Request CRC 330 +**(% style="color:red" %)aCC1!- aCC9!**(%%) : Start Additional Concurrent Measurements – Request CRC 332 332 333 333 334 334 * AT Command : AT+ADDRC=0,1,0,1 ... ... @@ -337,13 +337,13 @@ 337 337 338 338 Downlink: AA 02 aa bb cc dd 339 339 340 -**aa**: SDI-12 sensor address. 339 +**(% style="color:#037691" %)aa**(%%): SDI-12 sensor address. 341 341 342 -**bb**: 0: no CRC, 1: request CRC 341 +**(% style="color:#037691" %)bb**(%%): 0: no CRC, 1: request CRC 343 343 344 -**cc**: 1-9: Additional Measurement, 0: no additional measurement 343 +**(% style="color:#037691" %)cc**(%%): 1-9: Additional Measurement, 0: no additional measurement 345 345 346 -**dd**: delay (in second) to send **aD0!** to get return. 345 +**(% style="color:#037691" %)dd**(%%): delay (in second) to send **(% style="color:#037691" %)aD0!**(%%) to get return. 347 347 348 348 349 349 The following is the display information on the serial port and the server. ... ... @@ -355,11 +355,11 @@ 355 355 [[image:image-20230201091954-13.png||height="203" width="1117"]] 356 356 357 357 358 -(% style="display:none" %) (%%) 359 359 360 -==== **aR0!- aR9!, aRC0!- aRC9!** ==== 361 361 359 +==== **(% style="color:blue" %)aR0!- aR9!, aRC0!- aRC9!** ==== 362 362 361 + 363 363 Start Continuous Measurement 364 364 365 365 Start Continuous Measurement – Request CRC ... ... @@ -370,13 +370,13 @@ 370 370 371 371 Downlink: AA 03 aa bb cc dd 372 372 373 -**aa**: SDI-12 sensor address. 372 +**(% style="color:#037691" %)aa**(%%): SDI-12 sensor address. 374 374 375 -**bb**: 0: no CRC, 1: request CRC 374 +**(% style="color:#037691" %)bb**(%%): 0: no CRC, 1: request CRC 376 376 377 -**cc**: 1-9: Additional Measurement, 0: no additional measurement 376 +**(% style="color:#037691" %)cc**(%%): 1-9: Additional Measurement, 0: no additional measurement 378 378 379 -**dd**: delay (in second) to send **aD0!** to get return. 378 +**(% style="color:#037691" %)dd**(%%): delay (in second) to send **(% style="color:#037691" %)aD0!**(%%) to get return. 380 380 381 381 382 382 The following is the display information on the serial port and the server. ... ... @@ -397,20 +397,20 @@ 397 397 398 398 LoRaWAN Downlink: A8 aa xx xx xx xx bb cc 399 399 400 -**aa **: total SDI-12 command length 399 +**(% style="color:#037691" %)aa **(%%): total SDI-12 command length 401 401 402 -**xx **: SDI-12 command 401 +**(% style="color:#037691" %)xx **(%%): SDI-12 command 403 403 404 -**bb **: Delay to wait for return 403 +**(% style="color:#037691" %)bb **(%%): Delay to wait for return 405 405 406 -**cc **: 0: don't uplink return to LoRaWAN, 1: Uplink return to LoRaWAN on FPORT=100 405 +**(% style="color:#037691" %)cc **(%%): 0: don't uplink return to LoRaWAN, 1: Uplink return to LoRaWAN on FPORT=100 407 407 408 408 409 -**Example: **AT+CFGDEV =0RC0!,1 408 +**(% style="color:blue" %)Example: **(%%) AT+CFGDEV =0RC0!,1 410 410 411 -**0RC0! **: SDI-12 Command, 410 +**(% style="color:#037691" %)0RC0! **(%%): SDI-12 Command, 412 412 413 -**1 **: Delay 1 second. ( 0: 810 mini-second) 412 +**(% style="color:#037691" %)1 **(%%): Delay 1 second. ( 0: 810 mini-second) 414 414 415 415 Equal Downlink: 0xA8 05 30 52 43 30 21 01 01 416 416 ... ... @@ -432,7 +432,7 @@ 432 432 AT+CONVFORM ( Max length: 80 bytes) 433 433 434 434 435 -**Example:** 434 +**(% style="color:blue" %)Example:** 436 436 437 437 1) AT+CONVFORM=0, string Convert String from String to ASCII 438 438 ... ... @@ -452,31 +452,31 @@ 452 452 User can define max 15 SDI-12 Commands (AT+COMMAND1 ~~ AT+COMMANDF). On each uplink period (TDC time, default 20 minutes), SDI-12-LB will send these SDI-12 commands and wait for return from SDI-12 sensors. SDI-12-LB will then combine these returns and uplink via LoRaWAN. 453 453 454 454 455 -* ** AT Command:** 454 +* ** (% style="color:blue" %)AT Command:** 456 456 457 -**AT+COMMANDx=var1,var2,var3,var4.** 456 +**(% style="color:#037691" %)AT+COMMANDx=var1,var2,var3,var4.** 458 458 459 -**var1**: SDI-12 command , for example: 0RC0! 458 +**(% style="color:red" %)var1**(%%): SDI-12 command , for example: 0RC0! 460 460 461 -**var2**: Wait timeout for return. (unit: second) 460 +**(% style="color:red" %)var2**(%%): Wait timeout for return. (unit: second) 462 462 463 -**var3**: Whether to send //addrD0!// to get return after var2 timeout. 0: Don't Send //addrD0! //; 1: Send //addrD0!//. 462 +**(% style="color:red" %)var3**(%%): Whether to send //addrD0!// to get return after var2 timeout. 0: Don't Send //addrD0! //; 1: Send //addrD0!//. 464 464 465 -**var4**: validation check for return. If return invalid, SDI-12-LB will resend this command. Max 2 retries. 464 +**(% style="color:red" %)var4**(%%): validation check for return. If return invalid, SDI-12-LB will resend this command. Max 2 retries. 466 466 467 -**0 ** No validation check; 466 +**(% style="color:red" %)0 **(%%) No validation check; 468 468 469 -**1** Check if return chars are printable char(0x20 ~~ 0x7E); 468 +**(% style="color:red" %)1** (%%) Check if return chars are printable char(0x20 ~~ 0x7E); 470 470 471 -**2** Check if there is return from SDI-12 sensor 470 +**(% style="color:#red" %)2**(%%) Check if there is return from SDI-12 sensor 472 472 473 -**3** Check if return pass CRC check ( SDI-12 command var1 must include CRC request); 472 +**(% style="color:red" %)3** (%%) Check if return pass CRC check ( SDI-12 command var1 must include CRC request); 474 474 475 475 476 -Each AT+COMMANDx is followed by a **AT+DATACUT** command. AT+DATACUT command is used to take the useful string from the SDI-12 sensor so the final payload will have the minimum length to uplink. 475 +Each AT+COMMANDx is followed by a **(% style="color:blue" %)AT+DATACUT**(%%) command. AT+DATACUT command is used to take the useful string from the SDI-12 sensor so the final payload will have the minimum length to uplink. 477 477 478 478 479 -**AT+DATACUTx** : This command defines how to handle the return from AT+COMMANDx, max return length is 100 bytes. 478 +**(% style="color:blue" %)AT+DATACUTx**(%%) : This command defines how to handle the return from AT+COMMANDx, max return length is 100 bytes. 480 480 481 481 (% border="1" style="background-color:#f7faff; width:436px" %) 482 482 |(% style="width:433px" %)((( ... ... @@ -484,7 +484,7 @@ 484 484 485 485 **a**: length for the return of AT+COMMAND 486 486 487 -**b**: 1: grab valid value by byte, max 6 bytes. 2: grab valid value by bytes section, max 3 sections. 486 +**b**: 1: grab valid value by byte, max 6 bytes. 2: grab valid value by bytes section, max 3 sections. 488 488 489 489 **c**: define the position for valid value. 490 490 ))) ... ... @@ -498,49 +498,49 @@ 498 498 |(% style="width:170px" %)34,2,1~~8+12~~16|(% style="width:338px" %)0D 00 01 30 31 33 4D 45 54 45 52 54 45 52 31 32 499 499 |(% style="width:170px" %)34,2,1~~34|(% style="width:338px" %)0D 00 01 30 31 33 4D 45 54 45 52 20 20 20 54 45 52 31 32 20 31 31 32 54 31 32 2D 30 30 30 32 34 38 39 35 0D 0A 500 500 501 -* ** Downlink Payload:** 500 +* **(% style="color:blue" %) Downlink Payload:** 502 502 503 -**0xAF** downlink command can be used to set AT+COMMANDx or AT+DATACUTx. 502 +**(% style="color:blue" %)0xAF**(%%) downlink command can be used to set AT+COMMANDx or AT+DATACUTx. 504 504 505 505 506 -**Note : if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink.** 505 +**(% style="color:red" %)Note : if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink.** 507 507 508 508 509 -Format: ** AF MM NN LL XX XX XX XX YY** 508 +Format: ** (% style="color:#037691" %)AF MM NN LL XX XX XX XX YY** 510 510 511 511 Where: 512 512 513 -* **MM **: the AT+COMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F, 514 -* **NN **: 1: set the AT+DATACUT value ; 2: set the AT+DATACUT value. 515 -* **LL **: The length of AT+COMMAND or AT+DATACUT command 516 -* **XX XX XX XX **: AT+COMMAND or AT+DATACUT command 517 -* **YY **: If YY=0, RS485-LN will execute the downlink command without uplink; if YY=1, RS485-LN will execute an uplink after got this command. 512 +* **(% style="color:#037691" %)MM **(%%): the AT+COMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F, 513 +* **(% style="color:#037691" %)NN **(%%): 1: set the AT+DATACUT value ; 2: set the AT+DATACUT value. 514 +* **(% style="color:#037691" %)LL **(%%): The length of AT+COMMAND or AT+DATACUT command 515 +* **(% style="color:#037691" %)XX XX XX XX **(%%): AT+COMMAND or AT+DATACUT command 516 +* **(% style="color:#037691" %)YY **(%%): If YY=0, RS485-LN will execute the downlink command without uplink; if YY=1, RS485-LN will execute an uplink after got this command. 518 518 519 -**Example:** 518 +**(% style="color:blue" %)Example:** 520 520 521 521 [[image:image-20230201094129-18.png]] 522 522 523 523 524 -**Clear SDI12 Command** 523 +**(% style="color:blue" %)Clear SDI12 Command** 525 525 526 526 The AT+COMMANDx and AT+DATACUTx settings are stored in special location, user can use below command to clear them. 527 527 528 528 529 -* ** AT Command:** 528 +* ** (% style="color:#037691" %)AT Command:** 530 530 531 -** ~AT+CMDEAR=mm,nn** mm: start position of erase ,nn: stop position of erase530 +**(% style="color:#4F81BD" %)AT+CMDEAR=mm,nn** (%%) mm: start position of erase ,nn: stop position of erase 532 532 533 533 534 534 Etc. AT+CMDEAR=1,10 means erase AT+COMMAND1/AT+DATACUT1 to AT+COMMAND10/AT+DATACUT10 535 535 536 536 537 -* ** Downlink Payload:** 536 +* **(% style="color:#037691" %) Downlink Payload:** 538 538 539 -** ~0x09 aa bb** same as AT+CMDEAR=aa,bb538 +**(% style="color:#4F81BD" %)0x09 aa bb**(%%) same as AT+CMDEAR=aa,bb 540 540 541 541 542 542 543 -**command combination** 542 +**(% style="color:blue" %)command combination** 544 544 545 545 Below shows a screen shot how the results combines together to a uplink payload. 546 546