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)
-
Attachments (0 modified, 2 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -3,6 +3,7 @@ 3 3 4 4 **Table of Contents:** 5 5 6 +{{toc/}} 6 6 7 7 8 8 ... ... @@ -16,22 +16,23 @@ 16 16 17 17 18 18 20 + 19 19 = 1. Introduction = 20 20 21 21 == 1.1 What is SDI-12 to LoRaWAN Converter == 22 22 23 23 24 -The Dragino **SDI-12-LB** is a **SDI-12 to LoRaWAN Converter **designed for Smart Agriculture solution. 26 +The Dragino **(% style="color:blue" %)SDI-12-LB**(%%) is a **(% style="color:blue" %)SDI-12 to LoRaWAN Converter **(%%)designed for Smart Agriculture solution. 25 25 26 26 SDI-12 (Serial Digital Interface at 1200 baud) is an asynchronous [[serial communications>>url:https://en.wikipedia.org/wiki/Serial_communication]] protocol for intelligent sensors that monitor environment data. SDI-12 protocol is widely used in Agriculture sensor and Weather Station sensors. 27 27 28 - **SDI-12-LB**has SDI-12 interface and support 12v output to power external SDI-12 sensor. It can get the environment data from SDI-12 sensor and sends out the data via LoRaWAN wireless protocol.30 +SDI-12-LB has SDI-12 interface and support 12v output to power external SDI-12 sensor. It can get the environment data from SDI-12 sensor and sends out the data via LoRaWAN wireless protocol. 29 29 30 -The LoRa wireless technology used in **SDI-12-LB**allows device to send data and reach extremely long ranges at low data-rates. It provides ultra-long range spread spectrum communication and high interference immunity whilst minimizing current consumption.32 +The LoRa wireless technology used in SDI-12-LB allows device to send data and reach extremely long ranges at low data-rates. It provides ultra-long range spread spectrum communication and high interference immunity whilst minimizing current consumption. 31 31 32 - **SDI-12-LB**is powered by **8500mAh Li-SOCI2 battery**, it is designed for long term use up to 5 years.34 +SDI-12-LB is powered by **(% style="color:blue" %)8500mAh Li-SOCI2 battery**(%%), it is designed for long term use up to 5 years. 33 33 34 -Each **SDI-12-LB**is pre-load with a set of unique keys for LoRaWAN registrations, register these keys to local LoRaWAN server and it will auto connect after power on.36 +Each SDI-12-LB is pre-load with a set of unique keys for LoRaWAN registrations, register these keys to local LoRaWAN server and it will auto connect after power on. 35 35 36 36 37 37 [[image:image-20230201084414-1.png||height="464" width="1108"]] ... ... @@ -39,8 +39,6 @@ 39 39 40 40 41 41 42 - 43 - 44 44 == 1.2 Features == 45 45 46 46 ... ... @@ -56,21 +56,22 @@ 56 56 * Downlink to change configure 57 57 * 8500mAh Battery for long term use 58 58 59 + 59 59 == 1.3 Specification == 60 60 61 61 62 -**Micro Controller:** 63 +**(% style="color:#037691" %)Micro Controller:** 63 63 64 64 * MCU: 48Mhz ARM 65 65 * Flash: 256KB 66 66 * RAM: 64KB 67 67 68 -**Common DC Characteristics:** 69 +**(% style="color:#037691" %)Common DC Characteristics:** 69 69 70 70 * Supply Voltage: 2.5v ~~ 3.6v 71 71 * Operating Temperature: -40 ~~ 85°C 72 72 73 -**LoRa Spec:** 74 +**(% style="color:#037691" %)LoRa Spec:** 74 74 75 75 * Frequency Range, Band 1 (HF): 862 ~~ 1020 Mhz 76 76 * Max +22 dBm constant RF output vs. ... ... @@ -77,19 +77,19 @@ 77 77 * RX sensitivity: down to -139 dBm. 78 78 * Excellent blocking immunity 79 79 80 -**Current Input Measuring :** 81 +**(% style="color:#037691" %)Current Input Measuring :** 81 81 82 82 * Range: 0 ~~ 20mA 83 83 * Accuracy: 0.02mA 84 84 * Resolution: 0.001mA 85 85 86 -**Voltage Input Measuring:** 87 +**(% style="color:#037691" %)Voltage Input Measuring:** 87 87 88 88 * Range: 0 ~~ 30v 89 89 * Accuracy: 0.02v 90 90 * Resolution: 0.001v 91 91 92 -**Battery:** 93 +**(% style="color:#037691" %)Battery:** 93 93 94 94 * Li/SOCI2 un-chargeable battery 95 95 * Capacity: 8500mAh ... ... @@ -97,11 +97,12 @@ 97 97 * Max continuously current: 130mA 98 98 * Max boost current: 2A, 1 second 99 99 100 -**Power Consumption** 101 +**(% style="color:#037691" %)Power Consumption** 101 101 102 102 * Sleep Mode: 5uA @ 3.3v 103 103 * LoRa Transmit Mode: 125mA @ 20dBm, 82mA @ 14dBm 104 104 106 + 105 105 == 1.4 Connect to SDI-12 Sensor == 106 106 107 107 ... ... @@ -112,9 +112,9 @@ 112 112 == 1.5 Sleep mode and working mode == 113 113 114 114 115 -**Deep Sleep Mode: **Sensor doesn't have any LoRaWAN activate. This mode is used for storage and shipping to save battery life. 117 +**(% style="color:blue" %)Deep Sleep Mode: **(%%)Sensor doesn't have any LoRaWAN activate. This mode is used for storage and shipping to save battery life. 116 116 117 -**Working Mode: **In this mode, Sensor will work as LoRaWAN Sensor to Join LoRaWAN network and send out sensor data to server. Between each sampling/tx/rx periodically, sensor will be in IDLE mode), in IDLE mode, sensor has the same power consumption as Deep Sleep mode. 119 +**(% style="color:blue" %)Working Mode: **(%%)In this mode, Sensor will work as LoRaWAN Sensor to Join LoRaWAN network and send out sensor data to server. Between each sampling/tx/rx periodically, sensor will be in IDLE mode), in IDLE mode, sensor has the same power consumption as Deep Sleep mode. 118 118 119 119 120 120 == 1.6 Button & LEDs == ... ... @@ -137,6 +137,7 @@ 137 137 ))) 138 138 |(% 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. 139 139 142 + 140 140 == 1.7 Pin Mapping == 141 141 142 142 ... ... @@ -160,9 +160,6 @@ 160 160 == 1.9 Mechanical == 161 161 162 162 163 - 164 - 165 - 166 166 [[image:image-20230201090139-2.png]] 167 167 168 168 [[image:image-20230201090139-3.png]] ... ... @@ -175,7 +175,7 @@ 175 175 == 2.1 How it works == 176 176 177 177 178 -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. 179 179 180 180 181 181 == 2.2 Quick guide to connect to LoRaWAN server (OTAA) == ... ... @@ -190,7 +190,7 @@ 190 190 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. 191 191 192 192 193 -**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. 194 194 195 195 Each SDI-12-LB is shipped with a sticker with the default device EUI as below: 196 196 ... ... @@ -204,35 +204,35 @@ 204 204 You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot: 205 205 206 206 207 -**Register the device** 207 +**(% style="color:blue" %)Register the device** 208 208 209 209 [[image:1675213652444-622.png]] 210 210 211 211 212 -**Add APP EUI and DEV EUI** 212 +**(% style="color:blue" %)Add APP EUI and DEV EUI** 213 213 214 214 215 215 [[image:1675213661769-223.png]] 216 216 217 217 218 -**Add APP EUI in the application** 218 +**(% style="color:blue" %)Add APP EUI in the application** 219 219 220 220 221 221 [[image:1675213675852-577.png]] 222 222 223 223 224 -**Add APP KEY** 224 +**(% style="color:blue" %)Add APP KEY** 225 225 226 226 [[image:1675213686734-883.png]] 227 227 228 228 229 -**Step 2**: Activate on SDI-12-LB 229 +**(% style="color:blue" %)Step 2**(%%): Activate on SDI-12-LB 230 230 231 231 232 232 Press the button for 5 seconds to activate the SDI-12-LB. 233 233 234 234 235 -**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. 236 236 237 237 238 238 [[image:1675213704414-644.png]] ... ... @@ -261,15 +261,15 @@ 261 261 [[image:image-20230201091027-7.png||height="261" width="1179"]] 262 262 263 263 264 -==== **al! ~-~- Get SDI-12 sensor Identification** ==== 264 +==== **(% style="color:blue" %)al! ~-~- Get SDI-12 sensor Identification** ==== 265 265 266 266 267 267 * AT Command: AT+ADDRI=aa 268 268 * LoRaWAN Downlink(prefix 0xAA00): AA 00 aa 269 269 270 -**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) 271 271 272 -**Example : 272 +**(% style="color:blue" %)Example : **AT+ADDRI=0 ( Equal to downlink: 0x AA 00 30) 273 273 274 274 275 275 The following is the display information on the serial port and the server. ... ... @@ -281,30 +281,31 @@ 281 281 [[image:image-20230201091257-9.png||height="225" width="1242"]] 282 282 283 283 284 -==== **aM!,aMC!, aM1!- aM9!, aMC1!- aMC9!** ==== 284 +==== **(% style="color:blue" %)aM!,aMC!, aM1!- aM9!, aMC1!- aMC9!** ==== 285 285 286 286 287 -**aM! **: Start Non-Concurrent Measurement 287 +**(% style="color:red" %)aM! **(%%): Start Non-Concurrent Measurement 288 288 289 -**aMC! **: Start Non-Concurrent Measurement – Request CRC 289 +**(% style="color:red" %)aMC! **(%%): Start Non-Concurrent Measurement – Request CRC 290 290 291 -**aM1!- aM9! **: Additional Measurements 291 +**(% style="color:red" %)aM1!- aM9! **(%%): Additional Measurements 292 292 293 -**aMC1!- aMC9!** : Additional Measurements – Request CRC 293 +**(% style="color:red" %)aMC1!- aMC9!**(%%) : Additional Measurements – Request CRC 294 294 295 295 296 296 * AT Command : AT+ADDRM=0,1,0,1 297 + 297 297 * LoRaWAN Downlink(prefix 0xAA01): 0xAA 01 30 01 00 01 298 298 299 299 Downlink:AA 01 aa bb cc dd 300 300 301 -**aa**: SDI-12 sensor address. 302 +**(% style="color:#037691" %)aa**(%%): SDI-12 sensor address. 302 302 303 -**bb**: 0: no CRC, 1: request CRC 304 +**(% style="color:#037691" %)bb**(%%): 0: no CRC, 1: request CRC 304 304 305 -**cc**: 1-9: Additional Measurement, 0: no additional measurement 306 +**(% style="color:#037691" %)cc**(%%): 1-9: Additional Measurement, 0: no additional measurement 306 306 307 -**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. 308 308 309 309 310 310 The following is the display information on the serial port and the server. ... ... @@ -317,16 +317,16 @@ 317 317 318 318 319 319 320 -==== **aC!, aCC!, aC1!- aC9!, aCC1!- aCC9! ** ==== 321 +==== **(% style="color:blue" %)aC!, aCC!, aC1!- aC9!, aCC1!- aCC9! ** ==== 321 321 322 322 323 -**aC!** : Start Concurrent Measurement 324 +**(% style="color:red" %)aC!**(%%) : Start Concurrent Measurement 324 324 325 -**aCC!** : Start Concurrent Measurement – Request CRC 326 +**(% style="color:red" %)aCC!** (%%): Start Concurrent Measurement – Request CRC 326 326 327 -**aC1!- aC9!** : Start Additional Concurrent Measurements 328 +**(% style="color:red" %)aC1!- aC9!**(%%) : Start Additional Concurrent Measurements 328 328 329 -**aCC1!- aCC9!** : Start Additional Concurrent Measurements – Request CRC 330 +**(% style="color:red" %)aCC1!- aCC9!**(%%) : Start Additional Concurrent Measurements – Request CRC 330 330 331 331 332 332 * AT Command : AT+ADDRC=0,1,0,1 ... ... @@ -335,13 +335,13 @@ 335 335 336 336 Downlink: AA 02 aa bb cc dd 337 337 338 -**aa**: SDI-12 sensor address. 339 +**(% style="color:#037691" %)aa**(%%): SDI-12 sensor address. 339 339 340 -**bb**: 0: no CRC, 1: request CRC 341 +**(% style="color:#037691" %)bb**(%%): 0: no CRC, 1: request CRC 341 341 342 -**cc**: 1-9: Additional Measurement, 0: no additional measurement 343 +**(% style="color:#037691" %)cc**(%%): 1-9: Additional Measurement, 0: no additional measurement 343 343 344 -**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. 345 345 346 346 347 347 The following is the display information on the serial port and the server. ... ... @@ -353,11 +353,11 @@ 353 353 [[image:image-20230201091954-13.png||height="203" width="1117"]] 354 354 355 355 356 -(% style="display:none" %) (%%) 357 357 358 -==== **aR0!- aR9!, aRC0!- aRC9!** ==== 359 359 359 +==== **(% style="color:blue" %)aR0!- aR9!, aRC0!- aRC9!** ==== 360 360 361 + 361 361 Start Continuous Measurement 362 362 363 363 Start Continuous Measurement – Request CRC ... ... @@ -368,13 +368,13 @@ 368 368 369 369 Downlink: AA 03 aa bb cc dd 370 370 371 -**aa**: SDI-12 sensor address. 372 +**(% style="color:#037691" %)aa**(%%): SDI-12 sensor address. 372 372 373 -**bb**: 0: no CRC, 1: request CRC 374 +**(% style="color:#037691" %)bb**(%%): 0: no CRC, 1: request CRC 374 374 375 -**cc**: 1-9: Additional Measurement, 0: no additional measurement 376 +**(% style="color:#037691" %)cc**(%%): 1-9: Additional Measurement, 0: no additional measurement 376 376 377 -**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. 378 378 379 379 380 380 The following is the display information on the serial port and the server. ... ... @@ -387,7 +387,7 @@ 387 387 [[image:image-20230201092208-15.png||height="214" width="1140"]] 388 388 389 389 390 -=== 2.3.2 Advance SDI-12 Debug command ===391 +=== 2.3.2 Advance SDI-12 Debug command === 391 391 392 392 393 393 This command can be used to debug all SDI-12 command. ... ... @@ -395,20 +395,20 @@ 395 395 396 396 LoRaWAN Downlink: A8 aa xx xx xx xx bb cc 397 397 398 -**aa **: total SDI-12 command length 399 +**(% style="color:#037691" %)aa **(%%): total SDI-12 command length 399 399 400 -**xx **: SDI-12 command 401 +**(% style="color:#037691" %)xx **(%%): SDI-12 command 401 401 402 -**bb **: Delay to wait for return 403 +**(% style="color:#037691" %)bb **(%%): Delay to wait for return 403 403 404 -**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 405 405 406 406 407 -**Example: **AT+CFGDEV =0RC0!,1 408 +**(% style="color:blue" %)Example: **(%%) AT+CFGDEV =0RC0!,1 408 408 409 -**0RC0! **: SDI-12 Command, 410 +**(% style="color:#037691" %)0RC0! **(%%): SDI-12 Command, 410 410 411 -**1 **: Delay 1 second. ( 0: 810 mini-second) 412 +**(% style="color:#037691" %)1 **(%%): Delay 1 second. ( 0: 810 mini-second) 412 412 413 413 Equal Downlink: 0xA8 05 30 52 43 30 21 01 01 414 414 ... ... @@ -419,11 +419,9 @@ 419 419 [[image:image-20230201092355-16.png]] 420 420 421 421 422 - [[image:image-20230201092355-17.png||height="426" width="1135"]]423 +[[image:image-20230201092355-17.png||height="426" width="1135"]] 423 423 424 424 425 - 426 - 427 427 === 2.3.3 Convert ASCII to String === 428 428 429 429 ... ... @@ -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 ... ... @@ -444,10 +444,6 @@ 444 444 [[image:1675214856590-846.png]] 445 445 446 446 447 - 448 - 449 - 450 - 451 451 === 2.3.4 Define periodically SDI-12 commands and uplink. === 452 452 453 453 ... ... @@ -456,31 +456,31 @@ 456 456 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. 457 457 458 458 459 -* ** AT Command:** 454 +* ** (% style="color:blue" %)AT Command:** 460 460 461 -**AT+COMMANDx=var1,var2,var3,var4.** 456 +**(% style="color:#037691" %)AT+COMMANDx=var1,var2,var3,var4.** 462 462 463 -**var1**: SDI-12 command , for example: 0RC0! 458 +**(% style="color:red" %)var1**(%%): SDI-12 command , for example: 0RC0! 464 464 465 -**var2**: Wait timeout for return. (unit: second) 460 +**(% style="color:red" %)var2**(%%): Wait timeout for return. (unit: second) 466 466 467 -**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!//. 468 468 469 -**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. 470 470 471 -**0 ** No validation check; 466 +**(% style="color:red" %)0 **(%%) No validation check; 472 472 473 -**1** Check if return chars are printable char(0x20 ~~ 0x7E); 468 +**(% style="color:red" %)1** (%%) Check if return chars are printable char(0x20 ~~ 0x7E); 474 474 475 -**2** Check if there is return from SDI-12 sensor 470 +**(% style="color:#red" %)2**(%%) Check if there is return from SDI-12 sensor 476 476 477 -**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); 478 478 479 479 480 -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. 481 481 482 482 483 -**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. 484 484 485 485 (% border="1" style="background-color:#f7faff; width:436px" %) 486 486 |(% style="width:433px" %)((( ... ... @@ -488,7 +488,7 @@ 488 488 489 489 **a**: length for the return of AT+COMMAND 490 490 491 -**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. 492 492 493 493 **c**: define the position for valid value. 494 494 ))) ... ... @@ -502,50 +502,49 @@ 502 502 |(% 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 503 503 |(% 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 504 504 505 -* ** Downlink Payload:** 500 +* **(% style="color:blue" %) Downlink Payload:** 506 506 507 -**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. 508 508 509 509 510 -**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.** 511 511 512 512 513 -Format: ** AF MM NN LL XX XX XX XX YY** 508 +Format: ** (% style="color:#037691" %)AF MM NN LL XX XX XX XX YY** 514 514 515 515 Where: 516 516 517 -* **MM **: the AT+COMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F, 518 -* **NN **: 1: set the AT+DATACUT value ; 2: set the AT+DATACUT value. 519 -* **LL **: The length of AT+COMMAND or AT+DATACUT command 520 -* **XX XX XX XX **: AT+COMMAND or AT+DATACUT command 521 -* **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. 522 522 518 +**(% style="color:blue" %)Example:** 523 523 524 -**Example:** 525 - 526 526 [[image:image-20230201094129-18.png]] 527 527 528 528 529 -**Clear SDI12 Command** 523 +**(% style="color:blue" %)Clear SDI12 Command** 530 530 531 531 The AT+COMMANDx and AT+DATACUTx settings are stored in special location, user can use below command to clear them. 532 532 533 533 534 -* ** AT Command:** 528 +* ** (% style="color:#037691" %)AT Command:** 535 535 536 -** ~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 537 537 538 538 539 539 Etc. AT+CMDEAR=1,10 means erase AT+COMMAND1/AT+DATACUT1 to AT+COMMAND10/AT+DATACUT10 540 540 541 541 542 -* ** Downlink Payload:** 536 +* **(% style="color:#037691" %) Downlink Payload:** 543 543 544 -** ~0x09 aa bb** same as AT+CMDEAR=aa,bb538 +**(% style="color:#4F81BD" %)0x09 aa bb**(%%) same as AT+CMDEAR=aa,bb 545 545 546 546 547 547 548 -**command combination** 542 +**(% style="color:blue" %)command combination** 549 549 550 550 Below shows a screen shot how the results combines together to a uplink payload. 551 551 ... ... @@ -554,23 +554,24 @@ 554 554 555 555 If user don't want to use DATACUT for some command, he simply want to uplink all returns. AT+ALLDATAMOD can be set to 1. 556 556 557 -**AT+ALLDATAMOD** will simply get all return and don ’t do CRC check as result for SDI-12 command. AT+DATACUTx command has higher priority, if AT+DATACUTx has been set, AT+ALLDATAMOD will be ignore for this SDI-12 command.551 +**(% style="color:blue" %)AT+ALLDATAMOD**(%%) will simply get all return and don't do CRC check as result for SDI-12 command. AT+DATACUTx command has higher priority, if AT+DATACUTx has been set, AT+ALLDATAMOD will be ignore for this SDI-12 command. 558 558 559 559 560 -**For example: ** as below photo, AT+ALLDATAMOD=1, but AT+DATACUT1 has been set, AT+DATACUT1 will be still effect the result. 554 +**(% style="color:#4F81BD" %)For example: ** as below photo, AT+ALLDATAMOD=1, but AT+DATACUT1 has been set, AT+DATACUT1 will be still effect the result. 561 561 562 562 563 563 [[image:1675215782925-448.png]] 564 564 565 565 566 -If AT+ALLDATAMOD=1, **FX,X** will be added in the payload, FX specify which command is used and X specify the length of return. for example in above screen, F1 05 means the return is from AT+COMMAND1 and the return is 5 bytes. 560 +If AT+ALLDATAMOD=1, **(% style="color:#4F81BD" %)FX,X**(%%) will be added in the payload, FX specify which command is used and X specify the length of return. for example in above screen, F1 05 means the return is from AT+COMMAND1 and the return is 5 bytes. 567 567 568 568 569 569 570 -**Compose Uplink** 564 +**(% style="color:blue" %)Compose Uplink** 571 571 572 -**AT+DATAUP=0** 573 573 567 +**(% style="color:#4F81BD" %)AT+DATAUP=0** 568 + 574 574 Compose the uplink payload with value returns in sequence and send with A SIGNLE UPLINK. 575 575 576 576 Final Payload is Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx ... ... @@ -581,7 +581,7 @@ 581 581 [[image:1675215828102-844.png]] 582 582 583 583 584 -**AT+DATAUP=1** 579 +**(% style="color:#4F81BD" %)AT+DATAUP=1** 585 585 586 586 Compose the uplink payload with value returns in sequence and send with Multiply UPLINKs. 587 587 ... ... @@ -598,7 +598,7 @@ 598 598 [[image:1675215848113-696.png]] 599 599 600 600 601 -**Notice: the Max bytes is according to the max support bytes in different Frequency Bands for lowest SF. As below:** 596 +**(% style="color:red" %)Notice: the Max bytes is according to the max support bytes in different Frequency Bands for lowest SF. As below:** 602 602 603 603 * For AU915/AS923 bands, if UplinkDwell time=0, max 51 bytes for each uplink ( so 51 -5 = 46 max valid date) 604 604 * For AU915/AS923 bands, if UplinkDwell time=1, max 11 bytes for each uplink ( so 11 -5 = 6 max valid date). ... ... @@ -605,9 +605,9 @@ 605 605 * For US915 band, max 11 bytes for each uplink ( so 11 -5 = 6 max valid date). 606 606 * For all other bands: max 51 bytes for each uplink ( so 51 -5 = 46 max valid date). 607 607 608 -** ~When AT+DATAUP=1, the maximum number of segments is 15, and the maximum total number of bytes is 1500;**603 +**(% style="color:red" %)When AT+DATAUP=1, the maximum number of segments is 15, and the maximum total number of bytes is 1500;** 609 609 610 -** ~When AT+DATAUP=1 and AT+ADR=0, the maximum number of bytes of each payload is determined by the DR value.**605 +**(% 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.** 611 611 612 612 613 613 == 2.4 Uplink Payload == ... ... @@ -621,14 +621,13 @@ 621 621 The application server should parse the correct value based on FPORT settings. 622 622 623 623 624 -2.4.1 Device Payload, FPORT=5 619 +=== 2.4.1 Device Payload, FPORT~=5 === 625 625 621 + 626 626 Include device configure status. Once SDI-12-LB Joined the network, it will uplink this message to the server. 627 627 628 - 629 629 Users can also use the downlink command(0x26 01) to ask SDI-12-LB to resend this uplink. 630 630 631 - 632 632 (% border="1" cellspacing="4" style="background-color:#f7faff; width:437px" %) 633 633 |(% colspan="6" style="width:434px" %)**Device Status (FPORT=5)** 634 634 |(% style="width:102px" %)**Size (bytes)**|(% style="width:67px" %)**1**|(% style="width:80px" %)**2**|(% style="width:89px" %)**1**|(% style="width:52px" %)**1**|(% style="width:44px" %)**2** ... ... @@ -638,12 +638,13 @@ 638 638 639 639 [[image:1675215946738-635.png]] 640 640 641 -**Sensor Model**: For SDI-12-LB, this value is 0x17 642 642 643 -** FirmwareVersion**:0x0100,Means:v1.0.0 version636 +**(% style="color:#037691" %)Sensor Model**(%%): For SDI-12-LB, this value is 0x17 644 644 645 -**Fre quencyBand**:638 +**(% style="color:#037691" %)Firmware Version**(%%): 0x0100, Means: v1.0.0 version 646 646 640 +**(% style="color:#037691" %)Frequency Band**: 641 + 647 647 *0x01: EU868 648 648 649 649 *0x02: US915 ... ... @@ -673,7 +673,7 @@ 673 673 *0x0e: MA869 674 674 675 675 676 -**Sub-Band**: 671 +**(% style="color:#037691" %)Sub-Band**: 677 677 678 678 AU915 and US915:value 0x00 ~~ 0x08 679 679 ... ... @@ -682,7 +682,7 @@ 682 682 Other Bands: Always 0x00 683 683 684 684 685 -**Battery Info**: 680 +**(% style="color:#037691" %)Battery Info**: 686 686 687 687 Check the battery voltage. 688 688 ... ... @@ -691,10 +691,9 @@ 691 691 Ex2: 0x0B49 = 2889mV 692 692 693 693 694 -1. 695 -11. 696 -111. Uplink Payload, FPORT=2 689 +=== 2.4.2 Uplink Payload, FPORT~=2 === 697 697 691 + 698 698 There are different cases for uplink. See below 699 699 700 700 * SDI-12 Debug Command return: FPORT=100 ... ... @@ -701,30 +701,24 @@ 701 701 702 702 * Periodically Uplink: FPORT=2 703 703 704 -|((( 705 -**Size** 706 - 707 -**(bytes)** 708 -)))|**2**|**1**|**Length depends on the return from the commands** 709 -|**Value**|((( 698 +(% border="1" cellspacing="4" style="background-color:#f7faff; width:510px" %) 699 +|(% style="width:93px" %)((( 700 +**Size(bytes)** 701 +)))|(% style="width:83px" %)**2**|(% style="width:70px" %)**1**|(% style="width:234px" %)**Length depends on the return from the commands** 702 +|(% style="width:93px" %)**Value**|(% style="width:83px" %)((( 710 710 Battery(mV) 711 - 712 712 & 713 - 714 714 Interrupt_Flag 715 -)))|[[PAYLOAD_VER>>path:#Probe_Model]]|((( 716 -If the valid payload is too long and exceed the maximum support 717 - 706 +)))|(% style="width:70px" %)[[PAYLOAD_VER>>||anchor="H3.6Setthepayloadversion"]]|(% style="width:234px" %)((( 707 +If the valid payload is too long and exceed the maximum support. 718 718 Payload length in server,server will show payload not provided in the LoRaWAN server. 719 719 ))) 720 720 721 -[[image: file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image034.png]]711 +[[image:1675216282284-923.png]] 722 722 723 723 714 +=== 2.4.3 Battery Info === 724 724 725 -1. 726 -11. 727 -111. Battery Info 728 728 729 729 Check the battery voltage for SDI-12-LB. 730 730 ... ... @@ -733,14 +733,12 @@ 733 733 Ex2: 0x0B49 = 2889mV 734 734 735 735 736 -1. 737 -11. 738 -111. Interrupt Pin 724 +=== 2.4.4 Interrupt Pin === 739 739 740 -This data field shows if this packet is generated by **Interrupt Pin** or not. [[Click here>>path:#Int_mod]] for the hardware and software set up. Note: The Internet Pin is a separate pin in the screw terminal. See [[pin mapping>>path:#pins]]. 741 741 727 +This data field shows if this packet is generated by **(% style="color:#037691" %)Interrupt Pin**(%%) or not. [[Click here>>||anchor="H3.2SetInterruptMode"]] for the hardware and software set up. Note: The Internet Pin is a separate pin in the screw terminal. See [[pin mapping>>||anchor="H1.7PinMapping"]]. 742 742 743 -Example: 729 +**Example:** 744 744 745 745 Ex1: 0x0B45:0x0B&0x80= 0x00 Normal uplink packet. 746 746 ... ... @@ -747,239 +747,58 @@ 747 747 Ex2: 0x8B49:0x8B&0x80= 0x80 Interrupt Uplink Packet. 748 748 749 749 750 -1. 751 -11. 752 -111. Payload version 736 +=== 2.4.5 Payload version === 753 753 754 754 755 755 740 +=== 2.4.6 Decode payload in The Things Network === 756 756 757 757 758 -1. 759 -11. 760 -111. Decode payload in The Things Network 761 - 762 762 While using TTN network, you can add the payload format to decode the payload. 763 763 764 -[[image: file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image035.png]]745 +[[image:1675216779406-595.png]] 765 765 766 766 767 767 There is no fix payload decoder in LoRaWAN server because the SDI-12 sensors returns are different. User need to write the decoder themselves for their case. 768 768 750 +SDI-12-LB TTN Payload Decoder: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>url:https://github.com/dragino/dragino-end-node-decoder]] 769 769 770 -下面的解码生成超链接放进去. 771 771 772 - functionDecoder(bytes, port){753 +== 2.5 Uplink Interval == 773 773 774 - if(port==5) 775 775 776 - {756 +The SDI-12-LB by default uplink the sensor data every 20 minutes. User can change this interval by AT Command or LoRaWAN Downlink Command. See this link: 777 777 778 - freq_band;758 +[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/#H4.1ChangeUplinkInterval>>url:http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/#H4.1ChangeUplinkInterval]] 779 779 780 - var sub_band; 781 781 782 - var sensor; 783 783 784 784 785 - if(bytes[0]==0x17)763 +== 2.6 Frequency Plans == 786 786 787 - sensor= "SDI12-LB"; 788 788 766 +The SDI-12-LB uses OTAA mode and below frequency plans by default. If user want to use it with different frequency plan, please refer the AT command sets. 789 789 790 - var firm_ver= (bytes[1]&0x0f)+'.'+(bytes[2]>>4&0x0f)+'.'+(bytes[2]&0x0f);768 +[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]] 791 791 792 792 793 - if(bytes[3]==0x01) 794 794 795 - freq_band="EU868";772 +== 2.7 Firmware Change Log == 796 796 797 - else if(bytes[3]==0x02) 798 798 799 - freq_band="US915"; 800 - 801 - else if(bytes[3]==0x03) 802 - 803 - freq_band="IN865"; 804 - 805 - else if(bytes[3]==0x04) 806 - 807 - freq_band="AU915"; 808 - 809 - else if(bytes[3]==0x05) 810 - 811 - freq_band="KZ865"; 812 - 813 - else if(bytes[3]==0x06) 814 - 815 - freq_band="RU864"; 816 - 817 - else if(bytes[3]==0x07) 818 - 819 - freq_band="AS923"; 820 - 821 - else if(bytes[3]==0x08) 822 - 823 - freq_band="AS923_1"; 824 - 825 - else if(bytes[3]==0x09) 826 - 827 - freq_band="AS923_2"; 828 - 829 - else if(bytes[3]==0x0A) 830 - 831 - freq_band="AS923_3"; 832 - 833 - else if(bytes[3]==0x0F) 834 - 835 - freq_band="AS923_4"; 836 - 837 - else if(bytes[3]==0x0B) 838 - 839 - freq_band="CN470"; 840 - 841 - else if(bytes[3]==0x0C) 842 - 843 - freq_band="EU433"; 844 - 845 - else if(bytes[3]==0x0D) 846 - 847 - freq_band="KR920"; 848 - 849 - else if(bytes[3]==0x0E) 850 - 851 - freq_band="MA869"; 852 - 853 - 854 - if(bytes[4]==0xff) 855 - 856 - sub_band="NULL"; 857 - 858 - else 859 - 860 - sub_band=bytes[4]; 861 - 862 - 863 - var bat= (bytes[5]<<8 | bytes[6])/1000; 864 - 865 - 866 - return { 867 - 868 - SENSOR_MODEL:sensor, 869 - 870 - FIRMWARE_VERSION:firm_ver, 871 - 872 - FREQUENCY_BAND:freq_band, 873 - 874 - SUB_BAND:sub_band, 875 - 876 - BAT:bat, 877 - 878 - } 879 - 880 - } 881 - 882 - else if(port==100) 883 - 884 - { 885 - 886 - var datas_sum={}; 887 - 888 - for(var j=0;j<bytes.length;j++) 889 - 890 - { 891 - 892 - var datas= String.fromCharCode(bytes[j]); 893 - 894 - if(j=='0') 895 - 896 - datas_sum.datas_sum=datas; 897 - 898 - else 899 - 900 - datas_sum.datas_sum+=datas; 901 - 902 - } 903 - 904 - 905 - return datas_sum; 906 - 907 - } 908 - 909 - else 910 - 911 - { 912 - 913 - var decode={}; 914 - 915 - decode.EXTI_Trigger= (bytes[0] & 0x80)? "TRUE":"FALSE"; 916 - 917 - decode.BatV= ((bytes[0]<<8 | bytes[1])&0x7FFF)/1000; 918 - 919 - decode.Payver= bytes[2]; 920 - 921 - for(var i=3;i<bytes.length;i++) 922 - 923 - { 924 - 925 - var data= String.fromCharCode(bytes[i]); 926 - 927 - if(i=='3') 928 - 929 - decode.data_sum=data; 930 - 931 - else 932 - 933 - decode.data_sum+=data; 934 - 935 - } 936 - 937 - return decode; 938 - 939 - } 940 - 941 - 942 -} 943 - 944 - 945 -1. 946 -11. Uplink Interval 947 - 948 -The SDI-12-LB by default uplink the sensor data every 20 minutes. User can change this interval by AT Command or LoRaWAN Downlink Command. See this link: 949 - 950 -[[http:~~/~~/wiki.dragino.com/index.php?title=End_Device_AT_Commands_and_Downlink_Commands#Change_Uplink_Interval>>url:http://wiki.dragino.com/index.php?title=End_Device_AT_Commands_and_Downlink_Commands#Change_Uplink_Interval]] 951 - 952 - 953 - 954 -1. 955 -11. Frequency Plans 956 - 957 -The SDI12-LB uses OTAA mode and below frequency plans by default. If user want to use it with different frequency plan, please refer the AT command sets. 958 - 959 - 960 -[[https:~~/~~/wiki.dragino.com/index.php?title=End_Device_Frequency_Band>>url:https://wiki.dragino.com/index.php?title=End_Device_Frequency_Band]] 961 - 962 - 963 - 964 -1. 965 -11. Firmware Change Log 966 - 967 967 **Firmware download link:** 968 968 969 969 [[https:~~/~~/www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0>>url:https://www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0]] 970 970 971 971 780 += 3. Configure SDI-12-LB via AT Command or LoRaWAN Downlink = 972 972 973 -1. Configure SDI-12-LB via AT Command or LoRaWAN Downlink 974 974 975 975 Use can configure SDI-12-LB via AT Command or LoRaWAN Downlink. 976 976 977 977 * AT Command Connection: See [[FAQ>>path:#AT_COMMAND]]. 978 -* LoRaWAN Downlink instruction for different platforms: 786 +* LoRaWAN Downlink instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section. 979 979 980 -[[http:~~/~~/wiki.dragino.com/index.php?title=Main_Page#Use_Note_for_Server>>url:http://wiki.dragino.com/index.php?title=Main_Page#Use_Note_for_Server]] 981 - 982 - 983 983 There are two kinds of commands to configure SDI-12-LB, they are: 984 984 985 985 * **General Commands**. ... ... @@ -999,247 +999,223 @@ 999 999 These commands only valid for SDI-12-LB, as below: 1000 1000 1001 1001 807 +== 3.1 Set Transmit Interval Time == 1002 1002 1003 -1. 1004 -11. Set Transmit Interval Time 1005 1005 1006 1006 Feature: Change LoRaWAN End Node Transmit Interval. 1007 1007 1008 -**AT Command: AT+TDC** 812 +(% style="color:blue" %)**AT Command: AT+TDC** 1009 1009 1010 -|**Command Example**|**Function**|**Response** 1011 -|AT+TDC=?|Show current transmit Interval|((( 814 +(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:510px" %) 815 +|=(% style="width: 156px;" %)**Command Example**|=(% style="width: 137px;" %)**Function**|=**Response** 816 +|(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|((( 1012 1012 30000 1013 - 1014 1014 OK 1015 - 1016 1016 the interval is 30000ms = 30s 1017 1017 ))) 1018 -|AT+TDC=60000|Set Transmit Interval|((( 821 +|(% style="width:156px" %)AT+TDC=60000|(% style="width:137px" %)Set Transmit Interval|((( 1019 1019 OK 1020 - 1021 1021 Set transmit interval to 60000ms = 60 seconds 1022 1022 ))) 1023 1023 1024 -**Downlink Command: 0x01** 826 +(% style="color:blue" %)**Downlink Command: 0x01** 1025 1025 828 + 1026 1026 Format: Command Code (0x01) followed by 3 bytes time value. 1027 1027 1028 -If the downlink payload=0100003C, it means set the END Node ’s Transmit Interval to 0x00003C=60(S), while type code is 01.831 +If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01. 1029 1029 1030 -* Example 1: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds 1031 -* Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 833 +* Example 1: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds 834 +* Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 1032 1032 1033 -1. 1034 -11. Set Interrupt Mode 836 +== 3.2 Set Interrupt Mode == 1035 1035 838 + 1036 1036 Feature, Set Interrupt mode for GPIO_EXIT. 1037 1037 1038 -**AT Command: AT+INTMOD** 841 +(% style="color:blue" %)**AT Command: AT+INTMOD** 1039 1039 1040 -|**Command Example**|**Function**|**Response** 1041 -|AT+INTMOD=?|Show current interrupt mode|((( 843 +(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:510px" %) 844 +|=(% style="width: 156px;" %)**Command Example**|=(% style="width: 187px;" %)**Function**|=(% style="width: 165px;" %)**Response** 845 +|(% style="width:156px" %)AT+INTMOD=?|(% style="width:187px" %)Show current interrupt mode|(% style="width:165px" %)((( 1042 1042 0 1043 - 1044 1044 OK 1045 - 1046 1046 the mode is 0 = No interruption 1047 1047 ))) 1048 -|AT+INTMOD=2|((( 850 +|(% style="width:156px" %)AT+INTMOD=2|(% style="width:187px" %)((( 1049 1049 Set Transmit Interval 852 +~1. (Disable Interrupt), 853 +2. (Trigger by rising and falling edge) 854 +3. (Trigger by falling edge) 855 +4. (Trigger by rising edge) 856 +)))|(% style="width:165px" %)OK 1050 1050 1051 -1. (Disable Interrupt), 1052 -1. (Trigger by rising and falling edge), 1053 -1. (Trigger by falling edge) 1054 -1. (Trigger by rising edge) 1055 -)))|OK 858 +(% style="color:blue" %)**Downlink Command: 0x06** 1056 1056 1057 -**Downlink Command: 0x06** 1058 - 1059 1059 Format: Command Code (0x06) followed by 3 bytes. 1060 1060 1061 1061 This means that the interrupt mode of the end node is set to 0x000003=3 (rising edge trigger), and the type code is 06. 1062 1062 1063 -* Example 1: Downlink Payload: 06000000 ~/~/ Turn off interrupt mode 1064 -* Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger 864 +* Example 1: Downlink Payload: 06000000 ~/~/ Turn off interrupt mode 865 +* Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger 1065 1065 1066 -1. 1067 -11. Set the output time 867 +== 3.3 Set the output time == 1068 1068 869 + 1069 1069 Feature, Control the output 3V3 , 5V or 12V. 1070 1070 1071 -**AT Command: AT+3V3T** 872 +(% style="color:blue" %)**AT Command: AT+3V3T** 1072 1072 1073 -|**Command Example**|**Function**|**Response** 1074 -|AT+3V3T=?|Show 3V3 open time.|((( 874 +(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:474px" %) 875 +|=(% style="width: 154px;" %)**Command Example**|=(% style="width: 201px;" %)**Function**|=(% style="width: 116px;" %)**Response** 876 +|(% style="width:154px" %)AT+3V3T=?|(% style="width:201px" %)Show 3V3 open time.|(% style="width:116px" %)((( 1075 1075 0 1076 - 1077 1077 OK 1078 1078 ))) 1079 -|AT+3V3T=0|Normally open 3V3 power supply.|((( 880 +|(% style="width:154px" %)AT+3V3T=0|(% style="width:201px" %)Normally open 3V3 power supply.|(% style="width:116px" %)((( 1080 1080 OK 1081 - 1082 1082 default setting 1083 1083 ))) 1084 -|AT+3V3T=1000|Close after a delay of 1000 milliseconds.|((( 884 +|(% style="width:154px" %)AT+3V3T=1000|(% style="width:201px" %)Close after a delay of 1000 milliseconds.|(% style="width:116px" %)((( 1085 1085 OK 1086 - 1087 - 1088 1088 ))) 1089 -|AT+3V3T=65535|Normally closed 3V3 power supply.|((( 887 +|(% style="width:154px" %)AT+3V3T=65535|(% style="width:201px" %)Normally closed 3V3 power supply.|(% style="width:116px" %)((( 1090 1090 OK 1091 - 1092 - 1093 1093 ))) 1094 1094 1095 -**AT Command: AT+5VT** 891 +(% style="color:blue" %)**AT Command: AT+5VT** 1096 1096 1097 -|**Command Example**|**Function**|**Response** 1098 -|AT+5VT=?|Show 5V open time.|((( 893 +(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:470px" %) 894 +|=(% style="width: 155px;" %)**Command Example**|=(% style="width: 196px;" %)**Function**|=(% style="width: 114px;" %)**Response** 895 +|(% style="width:155px" %)AT+5VT=?|(% style="width:196px" %)Show 5V open time.|(% style="width:114px" %)((( 1099 1099 0 1100 - 1101 1101 OK 1102 1102 ))) 1103 -|AT+5VT=0|Normally closed 5V power supply.|((( 899 +|(% style="width:155px" %)AT+5VT=0|(% style="width:196px" %)Normally closed 5V power supply.|(% style="width:114px" %)((( 1104 1104 OK 1105 - 1106 1106 default setting 1107 1107 ))) 1108 -|AT+5VT=1000|Close after a delay of 1000 milliseconds.|((( 903 +|(% style="width:155px" %)AT+5VT=1000|(% style="width:196px" %)Close after a delay of 1000 milliseconds.|(% style="width:114px" %)((( 1109 1109 OK 1110 - 1111 - 1112 1112 ))) 1113 -|AT+5VT=65535|Normally open 5V power supply.|((( 906 +|(% style="width:155px" %)AT+5VT=65535|(% style="width:196px" %)Normally open 5V power supply.|(% style="width:114px" %)((( 1114 1114 OK 1115 - 1116 - 1117 1117 ))) 1118 1118 1119 -**AT Command: AT+12VT** 910 +(% style="color:blue" %)**AT Command: AT+12VT** 1120 1120 1121 -|**Command Example**|**Function**|**Response** 1122 -|AT+12VT=?|Show 12V open time.|((( 912 +(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:443px" %) 913 +|=(% style="width: 156px;" %)**Command Example**|=(% style="width: 199px;" %)**Function**|=(% style="width: 83px;" %)**Response** 914 +|(% style="width:156px" %)AT+12VT=?|(% style="width:199px" %)Show 12V open time.|(% style="width:83px" %)((( 1123 1123 0 1124 - 1125 1125 OK 1126 1126 ))) 1127 -|AT+12VT=0|Normally closed 12V power supply.|OK 1128 -|AT+12VT=500|Close after a delay of 500 milliseconds.|((( 918 +|(% style="width:156px" %)AT+12VT=0|(% style="width:199px" %)Normally closed 12V power supply.|(% style="width:83px" %)OK 919 +|(% style="width:156px" %)AT+12VT=500|(% style="width:199px" %)Close after a delay of 500 milliseconds.|(% style="width:83px" %)((( 1129 1129 OK 1130 - 1131 - 1132 1132 ))) 1133 1133 1134 -**Downlink Command: 0x07** 923 +(% style="color:blue" %)**Downlink Command: 0x07** 1135 1135 1136 1136 Format: Command Code (0x07) followed by 3 bytes. 1137 1137 1138 1138 The first byte is which power, the second and third bytes are the time to turn on. 1139 1139 1140 -* Example 1: Downlink Payload: 070101F4 -> AT+3V3T=500 1141 -* Example 2: Downlink Payload: 0701FFFF -> AT+3V3T=65535 1142 -* Example 3: Downlink Payload: 070203E8 -> AT+5VT=1000 1143 -* Example 4: Downlink Payload: 07020000 -> AT+5VT=0 1144 -* Example 5: Downlink Payload: 070301F4 -> AT+12VT=500 1145 -* Example 6: Downlink Payload: 07030000 -> AT+12VT=0 929 +* Example 1: Downlink Payload: 070101F4 **~-~-->** AT+3V3T=500 930 +* Example 2: Downlink Payload: 0701FFFF **~-~-->** AT+3V3T=65535 931 +* Example 3: Downlink Payload: 070203E8 **~-~-->** AT+5VT=1000 932 +* Example 4: Downlink Payload: 07020000 **~-~-->** AT+5VT=0 933 +* Example 5: Downlink Payload: 070301F4 **~-~-->** AT+12VT=500 934 +* Example 6: Downlink Payload: 07030000 **~-~-->** AT+12VT=0 1146 1146 1147 -1. 1148 -11. Set the all data mode 936 +== 3.4 Set the all data mode == 1149 1149 938 + 1150 1150 Feature, Set the all data mode. 1151 1151 1152 -**AT Command: AT+ALLDATAMOD** 941 +(% style="color:blue" %)**AT Command: AT+ALLDATAMOD** 1153 1153 1154 -|**Command Example**|**Function**|**Response** 943 +(% border="1" cellspacing="4" style="background-color:#f7faff; width:437px" %) 944 +|=**Command Example**|=**Function**|=**Response** 1155 1155 |AT+ALLDATAMOD=?|Show current all data mode|((( 1156 1156 0 1157 - 1158 - 1159 1159 OK 1160 1160 ))) 1161 1161 |AT+ALLDATAMOD=1|Set all data mode is 1.|OK 1162 1162 1163 -**Downlink Command: 0xAB** 951 +(% style="color:blue" %)**Downlink Command: 0xAB** 1164 1164 1165 1165 Format: Command Code (0xAB) followed by 1 bytes. 1166 1166 1167 -* Example 1: Downlink Payload: AB 00 ~/~/ AT+ALLDATAMOD=0 1168 -* Example 2: Downlink Payload: AB 01 ~/~/ AT+ALLDATAMOD=1 955 +* Example 1: Downlink Payload: AB 00 ~/~/ AT+ALLDATAMOD=0 956 +* Example 2: Downlink Payload: AB 01 ~/~/ AT+ALLDATAMOD=1 1169 1169 1170 -1. 1171 -11. Set the splicing payload for uplink 958 +== 3.5 Set the splicing payload for uplink == 1172 1172 960 + 1173 1173 Feature, splicing payload for uplink. 1174 1174 1175 -**AT Command: AT+DATAUP** 963 +(% style="color:blue" %)**AT Command: AT+DATAUP** 1176 1176 1177 -|**Command Example**|**Function**|**Response** 1178 -|AT+DATAUP =?|Show current splicing payload for uplink mode|((( 965 +(% border="1" cellspacing="4" style="background-color:#f7faff; width:510px" %) 966 +|=(% style="width: 154px;" %)**Command Example**|=(% style="width: 266px;" %)**Function**|=**Response** 967 +|(% style="width:154px" %)AT+DATAUP =?|(% style="width:266px" %)Show current splicing payload for uplink mode|((( 1179 1179 0 1180 - 1181 - 1182 1182 OK 1183 1183 ))) 1184 -|AT+DATAUP =0|((( 971 +|(% style="width:154px" %)AT+DATAUP =0|(% style="width:266px" %)((( 1185 1185 Set splicing payload for uplink mode is 0. 1186 - 1187 - 1188 1188 )))|((( 1189 1189 OK 1190 - 1191 - 1192 1192 ))) 1193 -|AT+DATAUP =1|Set splicing payload for uplink mode is 1 , and the each splice uplink is sent sequentially.|OK 1194 -|AT+DATAUP =1,20000|((( 1195 -Set splicing payload for uplink mode is 1, and the uplink interval of each splice to 20000 milliseconds. 1196 - 1197 - 976 +|(% style="width:154px" %)AT+DATAUP =1|(% style="width:266px" %)Set splicing payload for uplink mode is 1 , and the each splice uplink is sent sequentially.|OK 977 +|(% style="width:154px" %)AT+DATAUP =1,20000|(% style="width:266px" %)((( 978 +Set splicing payload for uplink mode is 1, and the uplink interval of each splice to 20000 milliseconds. 1198 1198 )))|OK 1199 1199 1200 -**Downlink Command: 0xAD** 981 +(% style="color:blue" %)**Downlink Command: 0xAD** 1201 1201 1202 1202 Format: Command Code (0xAD) followed by 1 bytes or 5 bytes. 1203 1203 1204 -* Example 1: Downlink Payload: AD 00 ~/~/ AT+DATAUP=0 1205 -* Example 2: Downlink Payload: AD 01 ~/~/ AT+DATAUP =1 1206 -* Example 3: Downlink Payload: AD 01 00 00 14~/~/ AT+DATAUP =1,20000 985 +* Example 1: Downlink Payload: AD 00 ~/~/ AT+DATAUP=0 986 +* Example 2: Downlink Payload: AD 01 ~/~/ AT+DATAUP =1 987 +* Example 3: Downlink Payload: AD 01 00 00 14 ~/~/ AT+DATAUP =1,20000 1207 1207 1208 1208 This means that the interval is set to 0x000014=20S 1209 1209 1210 1210 1211 -1. 1212 -11. Set the payload version 992 +== 3.6 Set the payload version == 1213 1213 1214 1214 Feature, Set the payload version. 1215 1215 1216 -**AT Command: AT+PAYVER** 996 +(% style="color:blue" %)**AT Command: AT+PAYVER** 1217 1217 1218 -|**Command Example**|**Function**|**Response** 1219 -|AT+PAYVER=?|Show current payload version|((( 998 +(% border="1" cellspacing="4" style="background-color:#f7faff; width:437px" %) 999 +|=(% style="width: 158px;" %)**Command Example**|=(% style="width: 192px;" %)**Function**|=**Response** 1000 +|(% style="width:158px" %)AT+PAYVER=?|(% style="width:192px" %)Show current payload version|((( 1220 1220 1 1221 - 1222 - 1223 1223 OK 1224 1224 ))) 1225 -|AT+PAYVER=5|Set payload version is 5.|OK 1004 +|(% style="width:158px" %)AT+PAYVER=5|(% style="width:192px" %)Set payload version is 5.|OK 1226 1226 1227 -**Downlink Command: 0xAE** 1006 +(% style="color:blue" %)**Downlink Command: 0xAE** 1228 1228 1229 1229 Format: Command Code (0xAE) followed by 1 bytes. 1230 1230 1231 -* Example 1: Downlink Payload: AE 01 ~/~/ AT+PAYVER=1 1232 -* Example 2: Downlink Payload: AE 05 ~/~/ AT+PAYVER=5 1010 +* Example 1: Downlink Payload: AE 01 ~/~/ AT+PAYVER=1 1011 +* Example 2: Downlink Payload: AE 05 ~/~/ AT+PAYVER=5 1233 1233 1234 -1. Battery & how to replace 1235 -11. Battery Type 1013 += 4. Battery & how to replace = 1236 1236 1237 - SDI-12-LBis equipped with a [[8500mAH ER26500 Li-SOCI2 battery>>url:https://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]].The batteryis un-rechargeable battery with low discharge rate targeting for 8~~10 years use. This typeof battery is commonly used in IoT target for long-term running, such as water meter.1015 +== 4.1 Battery Type == 1238 1238 1239 1239 1018 +SDI-12-LB is equipped with a [[8500mAH ER26500 Li-SOCI2 battery>>https://www.dropbox.com/sh/w9l2oa3ytpculph/AAAPtt-apH4lYfCj-2Y6lHvQa?dl=0]]. The battery is un-rechargeable battery with low discharge rate targeting for 8~~10 years use. This type of battery is commonly used in IoT target for long-term running, such as water meter. 1019 + 1020 + 1240 1240 The discharge curve is not linear so can’t simply use percentage to show the battery level. Below is the battery performance. 1241 1241 1242 -[[image: file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image036.png]]1023 +[[image:1675146710956-626.png]] 1243 1243 1244 1244 1245 1245 Minimum Working Voltage for the SDI-12-LB: ... ... @@ -1247,31 +1247,25 @@ 1247 1247 SDI-12-LB: 2.45v ~~ 3.6v 1248 1248 1249 1249 1250 -1. 1251 -11. Replace Battery 1031 +== 4.2 Replace Battery == 1252 1252 1033 + 1253 1253 Any battery with range 2.45 ~~ 3.6v can be a replacement. We recommend to use Li-SOCl2 Battery. 1254 1254 1255 1255 And make sure the positive and negative pins match. 1256 1256 1257 1257 1039 +== 4.3 Power Consumption Analyze == 1258 1258 1259 -1. 1260 -11. Power Consumption Analyze 1261 1261 1262 1262 Dragino Battery powered product are all runs in Low Power mode. We have an update battery calculator which base on the measurement of the real device. User can use this calculator to check the battery life and calculate the battery life if want to use different transmit interval. 1263 1263 1264 - 1265 1265 Instruction to use as below: 1266 1266 1046 +(% style="color:blue" %)**Step 1:**(%%) Downlink the up-to-date DRAGINO_Battery_Life_Prediction_Table.xlsx from: [[https:~~/~~/www.dropbox.com/sh/zwex6i331j5oeq2/AACIMf9f_v2qsJ39CuMQ5Py_a?dl=0>>https://www.dropbox.com/sh/zwex6i331j5oeq2/AACIMf9f_v2qsJ39CuMQ5Py_a?dl=0]] 1267 1267 1268 - Step 1: Downlink theup-to-dateDRAGINO_Battery_Life_Prediction_Table.xlsxfrom:1048 +(% style="color:blue" %)**Step 2:**(%%) Open it and choose 1269 1269 1270 -[[https:~~/~~/www.dragino.com/downloads/index.php?dir=LoRa_End_Node/Battery_Analyze/>>url:https://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/Battery_Analyze/]] 1271 - 1272 - 1273 -Step 2: Open it and choose 1274 - 1275 1275 * Product Model 1276 1276 * Uplink Interval 1277 1277 * Working Mode ... ... @@ -1278,57 +1278,48 @@ 1278 1278 1279 1279 And the Life expectation in difference case will be shown on the right. 1280 1280 1281 -[[image: file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image037.png]]1056 +[[image:1675146895108-304.png]] 1282 1282 1283 1283 1284 1284 The battery related documents as below: 1285 1285 1286 -* [[Battery Dimension>> url:http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/&file=LSN50-Battery-Dimension.pdf]],1287 -* [[Lithium-Thionyl Chloride Battery >>url:http://www.dragino.com/downloads/downloads/datasheet/Battery/ER18505_datasheet-EN.pdf]]datasheet,[[Tech Spec>>url:http://www.dragino.com/downloads/downloads/datasheet/Battery/ER18505_datasheet_PM-ER18505-S-02-LF_EN.pdf]]1288 -* [[Lithium-ion Battery-Capacitor datasheet>> url:http://www.dragino.com/downloads/downloads/datasheet/Battery/SPC_1520_datasheet.jpg]], [[Tech Spec>>url:http://www.dragino.com/downloads/downloads/datasheet/Battery/SPC1520%20Technical%20Specification20171123.pdf]]1061 +* [[Battery Dimension>>https://www.dropbox.com/s/ox5g9njwjle7aw3/LSN50-Battery-Dimension.pdf?dl=0]], 1062 +* [[Lithium-Thionyl Chloride Battery datasheet, Tech Spec>>https://www.dropbox.com/sh/d4oyfnp8o94180o/AABQewCNSh5GPeQH86UxRgQQa?dl=0]] 1063 +* [[Lithium-ion Battery-Capacitor datasheet>>https://www.dropbox.com/s/791gjes2lcbfi1p/SPC_1520_datasheet.jpg?dl=0]], [[Tech Spec>>https://www.dropbox.com/s/4pkepr9qqqvtzf2/SPC1520%20Technical%20Specification20171123.pdf?dl=0]] 1289 1289 1290 -|((( 1291 -JST-XH-2P connector 1292 -))) 1065 +[[image:image-20230131145708-3.png]] 1293 1293 1294 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image038.png]] 1295 1295 1068 +=== 4.3.1 Battery Note === 1296 1296 1297 1297 1298 -1. 1299 -11. 1300 -111. Battery Note 1301 - 1302 1302 The Li-SICO battery is designed for small current / long period application. It is not good to use a high current, short period transmit method. The recommended minimum period for use of this battery is 5 minutes. If you use a shorter period time to transmit LoRa, then the battery life may be decreased. 1303 1303 1304 1304 1305 -1. 1306 -11. 1307 -111. Replace the battery 1074 +=== 4.3.2 Replace the battery === 1308 1308 1309 -You can change the battery in the SDI-12-LB.The type of battery is not limited as long as the output is between 3v to 3.6v. On the main board, there is a diode (D1) between the battery and the main circuit. If you need to use a battery with less than 3.3v, please remove the D1 and shortcut the two pads of it so there won’t be voltage drop between battery and main board. 1310 1310 1077 +You can change the battery in the SDI-12-LB.The type of battery is not limited as long as the output is between 3v to 3.6v. On the main board, there is a diode (D1) between the battery and the main circuit. If you need to use a battery with less than 3.3v, please remove the D1 and shortcut the two pads of it so there won't be voltage drop between battery and main board. 1311 1311 1312 -The default battery pack of SDI-12-LB includes a ER26500 plus super capacitor. If user can ’t find this pack locally, they can find ER26500 or equivalence, which will also work in most case. The SPC can enlarge the battery life for high frequency use (update period below 5 minutes)1079 +The default battery pack of SDI-12-LB includes a ER26500 plus super capacitor. If user can't find this pack locally, they can find ER26500 or equivalence, which will also work in most case. The SPC can enlarge the battery life for high frequency use (update period below 5 minutes) 1313 1313 1314 1314 1315 1315 1083 += 5. Remote Configure device = 1316 1316 1085 +== 5.1 Connect via BLE == 1317 1317 1318 1318 1319 -1. Remote Configure device 1320 -11. Connect via BLE 1088 +Please see this instruction for how to configure via BLE: [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]] 1321 1321 1322 -Please see this instruction for how to configure via BLE: 1323 1323 1324 - [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]]1091 +== 5.2 AT Command Set == 1325 1325 1326 1326 1327 -1. 1328 -11. AT Command Set 1329 1329 1330 - 1. OTA firmware update1095 += 6. OTA firmware update = 1331 1331 1097 + 1332 1332 Please see this link for how to do OTA firmware update. 1333 1333 1334 1334 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/]] ... ... @@ -1335,19 +1335,33 @@ 1335 1335 1336 1336 1337 1337 1104 += 7. Order Info = 1338 1338 1339 1339 1107 +Part Number: SDI-12-LB-XXX 1108 +XXX: The default frequency band 1340 1340 1110 +AS923: LoRaWAN AS923 band 1111 +AU915: LoRaWAN AU915 band 1112 +EU433: LoRaWAN EU433 band 1113 +EU868: LoRaWAN EU868 band 1114 +KR920: LoRaWAN KR920 band 1115 +US915: LoRaWAN US915 band 1116 +IN865: LoRaWAN IN865 band 1117 +CN470: LoRaWAN CN470 band 1341 1341 1342 1342 1343 1343 1344 1344 1345 1345 1346 -1. Order Info 1347 1347 1124 + 1125 += 8. Packing Info = 1126 + 1127 + 1348 1348 **Package Includes**: 1349 1349 1350 -* SDI-12-LB SDI-12 to LoRaWAN Converter 1130 +* SDI-12-LB SDI-12 to LoRaWAN Converter x 1 1351 1351 1352 1352 **Dimension and weight**: 1353 1353 ... ... @@ -1356,13 +1356,11 @@ 1356 1356 * Package Size / pcs : cm 1357 1357 * Weight / pcs : g 1358 1358 1139 += 9. Support = 1359 1359 1360 1360 1361 -1. Support 1362 - 1363 1363 * 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. 1364 -* Provide as much information as possible regarding your enquiry (product models, accurately describe your problem and steps to replicate it etc) and send a mail to 1365 1365 1366 -[[support@dragino.com>>url:http://../../../../../../D:%5C%E5%B8%82%E5%9C%BA%E8%B5%84%E6%96%99%5C%E8%AF%B4%E6%98%8E%E4%B9%A6%5CLoRa%5CLT%E7%B3%BB%E5%88%97%5Csupport@dragino.com]] 1144 +* Provide as much information as possible regarding your enquiry (product models, accurately describe your problem and steps to replicate it etc) and send a mail to [[support@dragino.com>>url:http://../../../../../../D:%5C%E5%B8%82%E5%9C%BA%E8%B5%84%E6%96%99%5C%E8%AF%B4%E6%98%8E%E4%B9%A6%5CLoRa%5CLT%E7%B3%BB%E5%88%97%5Csupport@dragino.com]] 1367 1367 1368 1368
- 1675216779406-595.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +59.2 KB - Content
- 1675234124233-857.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +75.8 KB - Content