Changes for page SDI-12-LB/LS -- SDI-12 to LoRaWAN Converter User Manual
Last modified by Mengting Qiu on 2025/07/03 15:42
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 5 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,8 +1,9 @@ 1 1 (% style="text-align:center" %) 2 -[[image:image-20230131183542-1.jpeg||height="694" width="694"]] 2 +[[image:image-20230131183542-1.jpeg||_mstalt="470678" height="694" width="694"]] 3 3 4 4 **Table of Contents:** 5 5 6 +{{toc/}} 6 6 7 7 8 8 ... ... @@ -21,32 +21,40 @@ 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. 25 +((( 26 +The Dragino (% style="color:blue" %)**SDI-12-LB**(%%) is a (% style="color:blue" %)**SDI-12 to LoRaWAN Converter **(%%)designed for Smart Agriculture solution. 27 +))) 25 25 29 +((( 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. 31 +))) 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. 33 +((( 34 +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. 35 +))) 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. 37 +((( 38 +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. 39 +))) 31 31 32 -**SDI-12-LB** is powered by **8500mAh Li-SOCI2 battery**, it is designed for long term use up to 5 years. 41 +((( 42 +SDI-12-LB is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long term use up to 5 years. 43 +))) 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. 45 +((( 46 +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. 47 +))) 35 35 36 36 37 -[[image:image-20230201084414-1.png||height="464" width="1108"]] 50 +[[image:image-20230201084414-1.png||_mstalt="427765" height="464" width="1108"]] 38 38 39 39 40 - 41 - 42 - 43 - 44 44 == 1.2 Features == 45 45 46 46 47 47 * LoRaWAN 1.0.3 Class A 48 48 * Ultra-low power consumption 49 -* Controllable 5v and 12v output to power external sensor 58 +* Controllable 3.3v, 5v and 12v output to power external sensor 50 50 * SDI-12 Protocol to connect to SDI-12 Sensor 51 51 * Monitor Battery Level 52 52 * Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865 ... ... @@ -56,21 +56,25 @@ 56 56 * Downlink to change configure 57 57 * 8500mAh Battery for long term use 58 58 68 + 69 + 59 59 == 1.3 Specification == 60 60 61 61 62 -**Micro Controller:** 73 +(% 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:** 79 +(% style="color:#037691" %)**Common DC Characteristics:** 69 69 70 70 * Supply Voltage: 2.5v ~~ 3.6v 82 +* Support current: 5V 300mA 83 + 12V 100mA 71 71 * Operating Temperature: -40 ~~ 85°C 72 72 73 -**LoRa Spec:** 86 +(% 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 :** 93 +(% 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:** 99 +(% 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:** 105 +(% style="color:#037691" %)**Battery:** 93 93 94 94 * Li/SOCI2 un-chargeable battery 95 95 * Capacity: 8500mAh ... ... @@ -97,50 +97,53 @@ 97 97 * Max continuously current: 130mA 98 98 * Max boost current: 2A, 1 second 99 99 100 -**Power Consumption** 113 +(% 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 118 + 119 + 105 105 == 1.4 Connect to SDI-12 Sensor == 106 106 107 107 108 108 109 -[[image:1675212538524-889.png]] 124 +[[image:1675212538524-889.png||_mstalt="298272"]] 110 110 111 111 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. 130 +(% 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. 132 +(% 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 == 121 121 122 122 123 -[[image:1675212633011-651.png]] 138 +[[image:1675212633011-651.png||_mstalt="291538"]] 124 124 125 125 126 - 127 -(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:510px" %) 128 -|=(% style="width: 167px;" %)**Behavior on ACT**|=(% style="width: 117px;" %)**Function**|=(% style="width: 225px;" %)**Action** 129 -|(% style="width:167px" %)Pressing ACT between 1s < time < 3s|(% style="width:117px" %)Send an uplink|(% style="width:225px" %)((( 141 +(% border="1" cellspacing="4" style="width:510px" %) 142 +|=(% style="width: 167px;background-color:#D9E2F3;color:#0070C0" %)**Behavior on ACT**|=(% style="width: 117px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 225px;background-color:#D9E2F3;color:#0070C0" %)**Action** 143 +|(% style="background-color:#f2f2f2; width:167px" %)Pressing ACT between 1s < time < 3s|(% style="background-color:#f2f2f2; width:117px" %)Send an uplink|(% style="background-color:#f2f2f2; width:225px" %)((( 130 130 If sensor is already Joined to LoRaWAN network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once. 131 131 Meanwhile, BLE module will be active and user can connect via BLE to configure device. 132 132 ))) 133 -|(% style="width:167px" %)Pressing ACT for more than 3s|(% style="width:117px" %)Active Device|(% style="width:225px" %)((( 134 -(% style="color:green" %)**Green led**(%%) will fast blink 5 times, device will enter (% style="color:#037691" %)**OTA mode**(%%) for 3 seconds. And then start to JOIN LoRaWAN network. 135 -(% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network. 147 +|(% style="background-color:#f2f2f2; width:167px" %)Pressing ACT for more than 3s|(% style="background-color:#f2f2f2; width:117px" %)Active Device|(% style="background-color:#f2f2f2; width:225px" %)((( 148 +(% style="background-color:#f2f2f2; color:green" %)**Green led**(%%) will fast blink 5 times, device will enter (% style="color:#037691" %)**OTA mode**(%%) for 3 seconds. And then start to JOIN LoRaWAN network. 149 +(% style="background-color:#f2f2f2; color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network. 136 136 Once sensor is active, BLE module will be active and user can connect via BLE to configure device, no matter if device join or not join LoRaWAN network. 137 137 ))) 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. 152 +|(% style="background-color:#f2f2f2; width:167px" %)Fast press ACT 5 times.|(% style="background-color:#f2f2f2; width:117px" %)Deactivate Device|(% style="background-color:#f2f2f2; width:225px" %)(% style="color:red" %)**Red led**(%%) will solid on for 5 seconds. Means PS-LB-NA is in Deep Sleep Mode. 139 139 154 + 155 + 140 140 == 1.7 Pin Mapping == 141 141 142 142 143 -[[image:1675213198663-754.png]] 159 +[[image:1675213198663-754.png||_mstalt="297167"]] 144 144 145 145 146 146 == 1.8 BLE connection == ... ... @@ -160,22 +160,19 @@ 160 160 == 1.9 Mechanical == 161 161 162 162 179 +[[image:image-20230201090139-2.png||_mstalt="428623"]] 163 163 181 +[[image:image-20230201090139-3.png||_mstalt="428987"]] 164 164 183 +[[image:image-20230201090139-4.png||_mstalt="429351"]] 165 165 166 -[[image:image-20230201090139-2.png]] 167 167 168 -[[image:image-20230201090139-3.png]] 169 - 170 -[[image:image-20230201090139-4.png]] 171 - 172 - 173 173 = 2. Configure SDI-12 to connect to LoRaWAN network = 174 174 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. 191 +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) == ... ... @@ -184,60 +184,56 @@ 184 184 Following is an example for how to join the [[TTN v3 LoRaWAN Network>>url:https://console.cloud.thethings.network/]]. Below is the network structure; we use the [[LPS8v2>>url:https://www.dragino.com/products/lora-lorawan-gateway/item/228-lps8v2.html]] as a LoRaWAN gateway in this example. 185 185 186 186 187 -[[image:image-20230201090528-5.png||height="465" width="1111"]] 200 +[[image:image-20230201090528-5.png||_mstalt="430300" height="465" width="1111"]] 188 188 189 189 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. 206 +(% 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 197 197 198 -[[image:image-202301 31134744-2.jpeg]]211 +[[image:image-20230201152430-20.jpeg||_mstalt="492245"]] 199 199 200 200 201 - 202 - 203 - 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** 217 +(% style="color:blue" %)**Register the device** 208 208 209 -[[image:1675213652444-622.png]] 219 +[[image:1675213652444-622.png||_mstalt="293657"]] 210 210 211 211 212 -**Add APP EUI and DEV EUI** 222 +(% style="color:blue" %)**Add APP EUI and DEV EUI** 213 213 214 214 215 -[[image:1675213661769-223.png]] 225 +[[image:1675213661769-223.png||_mstalt="295217"]] 216 216 217 217 218 -**Add APP EUI in the application** 228 +(% style="color:blue" %)**Add APP EUI in the application** 219 219 220 220 221 -[[image:1675213675852-577.png]] 231 +[[image:1675213675852-577.png||_mstalt="297947"]] 222 222 223 223 224 -**Add APP KEY** 234 +(% style="color:blue" %)**Add APP KEY** 225 225 226 -[[image:1675213686734-883.png]] 236 +[[image:1675213686734-883.png||_mstalt="298064"]] 227 227 228 228 229 -**Step 2**: Activate on SDI-12-LB 239 +(% 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 244 +(% 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. 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. 236 236 247 +[[image:1675213704414-644.png||_mstalt="293748"]] 237 237 238 -[[image:1675213704414-644.png]] 239 239 240 - 241 241 == 2.3 SDI-12 Related Commands == 242 242 243 243 ... ... @@ -254,79 +254,80 @@ 254 254 The following is the display information on the serial port and the server. 255 255 256 256 266 +[[image:image-20230201091027-6.png||_mstalt="429065"]] 257 257 258 -[[image:image-20230201091027-6.png]] 259 259 269 +[[image:image-20230201091027-7.png||_mstalt="429429" height="261" width="1179"]] 260 260 261 -[[image:image-20230201091027-7.png||height="261" width="1179"]] 262 262 263 263 264 -==== **al! ~-~- Get SDI-12 sensor Identification** ==== 273 +==== (% 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) 279 +(% style="color:#037691" %)**Parameter: **(%%)aa: ASCII value of SDI-12 sensor address in downlink or HEX value in AT Command) 271 271 272 -**Example : **AT+ADDRI=0 ( Equal to downlink: 0x AA 00 30) 281 +(% 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. 276 276 277 277 278 -[[image:image-20230201091257-8.png]] 287 +[[image:image-20230201091257-8.png||_mstalt="431392"]] 279 279 280 280 281 -[[image:image-20230201091257-9.png||height="225" width="1242"]] 290 +[[image:image-20230201091257-9.png||_mstalt="431756" height="225" width="1242"]] 282 282 283 283 284 -==== **aM!,aMC!, aM1!- aM9!, aMC1!- aMC9!** ==== 293 +==== (% style="color:blue" %)**aM!,aMC!, aM1!- aM9!, aMC1!- aMC9!**(%%) ==== 285 285 286 286 287 -**aM! **: Start Non-Concurrent Measurement 296 +(% style="color:red" %)**aM! **(%%): Start Non-Concurrent Measurement 288 288 289 -**aMC! **: Start Non-Concurrent Measurement – Request CRC 298 +(% style="color:red" %)**aMC! **(%%): Start Non-Concurrent Measurement – Request CRC 290 290 291 -**aM1!- aM9! **: Additional Measurements 300 +(% style="color:red" %)**aM1!- aM9! **(%%): Additional Measurements 292 292 293 -**aMC1!- aMC9!** : Additional Measurements – Request CRC 302 +(% style="color:red" %)**aMC1!- aMC9!**(%%) : Additional Measurements – Request CRC 294 294 295 295 296 296 * AT Command : AT+ADDRM=0,1,0,1 306 + 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. 311 +(% style="color:#037691" %)**aa**(%%): SDI-12 sensor address. 302 302 303 -**bb**: 0: no CRC, 1: request CRC 313 +(% style="color:#037691" %)**bb**(%%): 0: no CRC, 1: request CRC 304 304 305 -**cc**: 1-9: Additional Measurement, 0: no additional measurement 315 +(% 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. 317 +(% 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. 311 311 312 312 313 -[[image:image-20230201091630-10.png]] 323 +[[image:image-20230201091630-10.png||_mstalt="449995"]] 314 314 315 315 316 -[[image:image-20230201091630-11.png||height="247" width="1165"]] 326 +[[image:image-20230201091630-11.png||_mstalt="450372" height="247" width="1165"]] 317 317 318 318 319 319 320 -==== **aC!, aCC!, aC1!- aC9!, aCC1!- aCC9! ** ==== 330 +==== (% style="color:blue" %)**aC!, aCC!, aC1!- aC9!, aCC1!- aCC9! **(%%) ==== 321 321 322 322 323 -**aC!** : Start Concurrent Measurement 333 +(% style="color:red" %)**aC!**(%%) : Start Concurrent Measurement 324 324 325 -**aCC!** : Start Concurrent Measurement – Request CRC 335 +(% style="color:red" %)**aCC!** (%%): Start Concurrent Measurement – Request CRC 326 326 327 -**aC1!- aC9!** : Start Additional Concurrent Measurements 337 +(% style="color:red" %)**aC1!- aC9!**(%%) : Start Additional Concurrent Measurements 328 328 329 -**aCC1!- aCC9!** : Start Additional Concurrent Measurements – Request CRC 339 +(% 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,29 +335,29 @@ 335 335 336 336 Downlink: AA 02 aa bb cc dd 337 337 338 -**aa**: SDI-12 sensor address. 348 +(% style="color:#037691" %)**aa**(%%): SDI-12 sensor address. 339 339 340 -**bb**: 0: no CRC, 1: request CRC 350 +(% style="color:#037691" %)**bb**(%%): 0: no CRC, 1: request CRC 341 341 342 -**cc**: 1-9: Additional Measurement, 0: no additional measurement 352 +(% 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. 354 +(% 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. 348 348 349 349 350 -[[image:image-20230201091954-12.png]] 360 +[[image:image-20230201091954-12.png||_mstalt="453687"]] 351 351 352 352 353 -[[image:image-20230201091954-13.png||height="203" width="1117"]] 363 +[[image:image-20230201091954-13.png||_mstalt="454064" height="203" width="1117"]] 354 354 355 355 356 -(% style="display:none" %) (%%) 357 357 358 -==== **aR0!- aR9!, aRC0!- aRC9!** ==== 359 359 368 +==== (% style="color:blue" %)**aR0!- aR9!, aRC0!- aRC9!**(%%) ==== 360 360 370 + 361 361 Start Continuous Measurement 362 362 363 363 Start Continuous Measurement – Request CRC ... ... @@ -368,25 +368,24 @@ 368 368 369 369 Downlink: AA 03 aa bb cc dd 370 370 371 -**aa**: SDI-12 sensor address. 381 +(% style="color:#037691" %)**aa**(%%): SDI-12 sensor address. 372 372 373 -**bb**: 0: no CRC, 1: request CRC 383 +(% style="color:#037691" %)**bb**(%%): 0: no CRC, 1: request CRC 374 374 375 -**cc**: 1-9: Additional Measurement, 0: no additional measurement 385 +(% 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. 387 +(% 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. 381 381 382 382 393 +[[image:image-20230201092208-14.png||_mstalt="452283"]] 383 383 384 -[[image:image-20230201092208-14.png]] 385 385 396 +[[image:image-20230201092208-15.png||_mstalt="452660" height="214" width="1140"]] 386 386 387 -[[image:image-20230201092208-15.png||height="214" width="1140"]] 388 388 389 - 390 390 === 2.3.2 Advance SDI-12 Debug command === 391 391 392 392 ... ... @@ -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 407 +(% style="color:#037691" %)**aa **(%%): total SDI-12 command length 399 399 400 -**xx **: SDI-12 command 409 +(% style="color:#037691" %)**xx **(%%): SDI-12 command 401 401 402 -**bb **: Delay to wait for return 411 +(% 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 413 +(% 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 416 +(% style="color:blue" %)**Example: **(%%) AT+CFGDEV =0RC0!,1 408 408 409 -**0RC0! **: SDI-12 Command, 418 +(% style="color:#037691" %)**0RC0! **(%%): SDI-12 Command, 410 410 411 -**1 **: Delay 1 second. ( 0: 810 mini-second) 420 +(% 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 ... ... @@ -416,10 +416,10 @@ 416 416 The following is the display information on the serial port and the server. 417 417 418 418 419 -[[image:image-20230201092355-16.png]] 428 +[[image:image-20230201092355-16.png||_mstalt="453960"]] 420 420 421 421 422 -[[image:image-20230201092355-17.png||height="426" width="1135"]] 431 +[[image:image-20230201092355-17.png||_mstalt="454337" height="426" width="1135"]] 423 423 424 424 425 425 === 2.3.3 Convert ASCII to String === ... ... @@ -430,16 +430,16 @@ 430 430 AT+CONVFORM ( Max length: 80 bytes) 431 431 432 432 433 -**Example:** 442 +(% style="color:blue" %)**Example:** 434 434 435 435 1) AT+CONVFORM=0, string Convert String from String to ASCII 436 436 437 -[[image:1675214845056-885.png]] 446 +[[image:1675214845056-885.png||_mstalt="297622"]] 438 438 439 439 440 440 2) AT+CONVFORM=1, ASCII Convert ASCII to String. 441 441 442 -[[image:1675214856590-846.png]] 451 +[[image:1675214856590-846.png||_mstalt="297739"]] 443 443 444 444 445 445 === 2.3.4 Define periodically SDI-12 commands and uplink. === ... ... @@ -450,139 +450,137 @@ 450 450 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. 451 451 452 452 453 -* ** 462 +* (% style="color:blue" %)**AT Command:** 454 454 455 -**AT+COMMANDx=var1,var2,var3,var4.** 464 +(% style="color:#037691" %)**AT+COMMANDx=var1,var2,var3,var4.** 456 456 457 -**var1**: SDI-12 command , for example: 0RC0! 466 +(% style="color:red" %)**var1**(%%): SDI-12 command , for example: 0RC0! 458 458 459 -**var2**: Wait timeout for return. (unit: second) 468 +(% style="color:red" %)**var2**(%%): Wait timeout for return. (unit: second) 460 460 461 -**var3**: Whether to send //addrD0!// to get return after var2 timeout. 0: Don't Send //addrD0! //; 1: Send //addrD0!//. 470 +(% style="color:red" %)**var3**(%%): Whether to send //addrD0!// to get return after var2 timeout. 0: Don't Send //addrD0! //; 1: Send //addrD0!//. 462 462 463 -**var4**: validation check for return. If return invalid, SDI-12-LB will resend this command. Max 2retries.472 +(% style="color:red" %)**var4**(%%): validation check for return. If return invalid, SDI-12-LB will resend this command. Max 3 retries. 464 464 465 -**0 ** No validation check; 474 +(% style="color:red" %)**0 **(%%) No validation check; 466 466 467 -**1** 476 +(% style="color:red" %)**1** (%%) Check if return chars are printable char(0x20 ~~ 0x7E); 468 468 469 -**2** Check if there is return from SDI-12 sensor 478 +(% style="color:red" %)**2**(%%) Check if there is return from SDI-12 sensor 470 470 471 -**3** 480 +(% style="color:red" %)**3** (%%) Check if return pass CRC check ( SDI-12 command var1 must include CRC request); 472 472 473 473 474 -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. 483 +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. 475 475 476 476 477 -**AT+DATACUTx** : This command defines how to handle the return from AT+COMMANDx, max return length is 100 bytes. 486 +(% style="color:blue" %)**AT+DATACUTx**(%%) : This command defines how to handle the return from AT+COMMANDx, max return length is 100 bytes. 478 478 479 -(% border="1" style=" background-color:#f7faff;width:436px" %)480 -|(% style="width:433px" %)((( 481 -**AT+DATACUTx=a,b,c** 488 +(% border="1" style="width:436px" %) 489 +|(% style="background-color:#f2f2f2; width:433px" %)((( 490 +(% style="color:#0070c0" %)**AT+DATACUTx=a,b,c** 482 482 483 483 **a**: length for the return of AT+COMMAND 484 484 485 -**b**: 1: grab valid value by byte, max 6 bytes. 2: grab valid value by bytes section, max 3 sections. 494 +**b**: 1: grab valid value by byte, max 6 bytes. 2: grab valid value by bytes section, max 3 sections. 486 486 487 487 **c**: define the position for valid value. 488 488 ))) 489 489 490 -For example, if return from AT+COMMAND1 is “013METER TER12 112T12-00024895” , Below AT+DATACUT1 will get different result to combine payload: 499 +For example, if return from AT+COMMAND1 is “013METER TER12 112T12-00024895<CR><LF>” , Below AT+DATACUT1 will get different result to combine payload: 491 491 492 492 493 -(% border="1" cellspacing="4" style=" background-color:#f7faff;width:510px" %)494 -|(% style="width:1 70px" %)**AT+DATACUT1 value**|(% style="width:338px" %)**Final Result to combine Payload**495 -|(% style="width:1 70px" %)34,1,1+2+3|(% style="width:338px" %)0D 00 01 30 31 33496 -|(% style="width:1 70px" %)34,2,1~~8+12~~16|(% style="width:338px" %)0D 00 01 30 31 33 4D 45 54 45 52 54 45 52 31 32497 -|(% style="width:1 70px" %)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 0A502 +(% border="1" cellspacing="4" style="width:510px" %) 503 +|=(% style="width: 164px;background-color:#D9E2F3;color:#0070C0" %)**AT+DATACUT1 value**|=(% style="width: 344px;background-color:#D9E2F3;color:#0070C0" %)**Final Result to combine Payload** 504 +|(% style="background-color:#f2f2f2; width:164px" %)34,1,1+2+3|(% style="background-color:#f2f2f2; width:344px" %)0D 00 01 30 31 33 505 +|(% style="background-color:#f2f2f2; width:164px" %)34,2,1~~8+12~~16|(% style="background-color:#f2f2f2; width:344px" %)0D 00 01 30 31 33 4D 45 54 45 52 54 45 52 31 32 506 +|(% style="background-color:#f2f2f2; width:164px" %)34,2,1~~34|(% style="background-color:#f2f2f2; width:344px" %)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 498 498 499 -* ** Downlink Payload:** 508 +* (% style="color:blue" %)** Downlink Payload:** 500 500 501 -**0xAF** downlink command can be used to set AT+COMMANDx or AT+DATACUTx. 510 +(% style="color:blue" %)**0xAF**(%%) downlink command can be used to set AT+COMMANDx or AT+DATACUTx. 502 502 503 503 504 -**Note : if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink.** 513 +(% style="color:red" %)**Note : if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink.** 505 505 506 506 507 -Format: ** AF MM NN LL XX XX XX XX YY** 516 +Format: ** (% style="color:#037691" %)AF MM NN LL XX XX XX XX YY(%%)** 508 508 509 509 Where: 510 510 511 -* **MM **: the AT+COMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F, 512 -* **NN **: 1: set the AT+ DATACUTvalue ; 2: set the AT+DATACUT value.513 -* **LL **: The length of AT+COMMAND or AT+DATACUT command 514 -* **XX XX XX XX **: AT+COMMAND or AT+DATACUT command 515 -* **YY **: If YY=0, RS485-LNwill execute the downlink command without uplink; if YY=1,RS485-LNwill execute an uplink after got this command.520 +* (% style="color:#037691" %)**MM **(%%): the AT+COMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F, 521 +* (% style="color:#037691" %)**NN **(%%): 1: set the AT+COMMAND value ; 2: set the AT+DATACUT value. 522 +* (% style="color:#037691" %)**LL **(%%): The length of AT+COMMAND or AT+DATACUT command 523 +* (% style="color:#037691" %)**XX XX XX XX **(%%): AT+COMMAND or AT+DATACUT command 524 +* (% style="color:#037691" %)**YY **(%%): If YY=0, SDI-12-LB will execute the downlink command without uplink; if YY=1, SDI-12-LB will execute an uplink after got this command. 516 516 517 -**Example:** 526 +(% style="color:blue" %)**Example:** 518 518 519 -[[image:image-20230201094129-18.png]] 528 +[[image:image-20230201094129-18.png||_mstalt="455065"]] 520 520 521 521 522 -**Clear SDI12 Command** 523 523 532 +(% style="color:blue" %)**Clear SDI12 Command** 533 + 524 524 The AT+COMMANDx and AT+DATACUTx settings are stored in special location, user can use below command to clear them. 525 525 526 526 527 -* ** 537 +* (% style="color:#037691" %)**AT Command:** 528 528 529 -** ~AT+CMDEAR=mm,nn**539 +(% style="color:#4f81bd" %)**AT+CMDEAR=mm,nn** (%%) mm: start position of erase ,nn: stop position of erase 530 530 531 531 532 532 Etc. AT+CMDEAR=1,10 means erase AT+COMMAND1/AT+DATACUT1 to AT+COMMAND10/AT+DATACUT10 533 533 534 534 535 -* ** Downlink Payload:** 545 +* (% style="color:#037691" %)** Downlink Payload:** 536 536 537 -** ~0x09 aa bb** same as AT+CMDEAR=aa,bb547 +(% style="color:#4f81bd" %)**0x09 aa bb**(%%) same as AT+CMDEAR=aa,bb 538 538 539 539 540 540 541 -**command combination** 551 +(% style="color:blue" %)**command combination** 542 542 543 543 Below shows a screen shot how the results combines together to a uplink payload. 544 544 545 -[[image:1675215745275-920.png]] 555 +[[image:1675215745275-920.png||_mstalt="295334"]] 546 546 547 547 548 548 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. 549 549 550 -**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. 560 +(% 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. 551 551 552 552 553 -**For example: ** as below photo, AT+ALLDATAMOD=1, but AT+DATACUT1 has been set, AT+DATACUT1 will be still effect the result. 563 +(% 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. 554 554 555 555 556 -[[image:1675215782925-448.png]] 566 +[[image:1675215782925-448.png||_mstalt="297466"]] 557 557 558 558 559 -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. 569 +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. 560 560 561 561 562 562 563 -**Compose Uplink** 573 +(% style="color:blue" %)**Compose Uplink** 564 564 575 +(% style="color:#4f81bd" %)**AT+DATAUP=0** 565 565 566 -**A T+DATAUP=0**577 +Compose the uplink payload with value returns in sequence and send with **__A SIGNLE UPLINK__**. 567 567 568 - Compose the uplinkpayloadwithvalue returnsinsequenceandsendwithA SIGNLE UPLINK.579 +Final Payload is **__Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx__** 569 569 570 -Final Payload is Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx 571 - 572 572 Where PAYVER is defined by AT+PAYVER, below is an example screen shot. 573 573 574 574 575 -[[image:1675215828102-844.png]] 584 +[[image:1675215828102-844.png||_mstalt="294645"]] 576 576 577 577 578 -**AT+DATAUP=1** 587 +(% style="color:#4f81bd" %)**AT+DATAUP=1** 579 579 580 -Compose the uplink payload with value returns in sequence and send with Multiply UPLINKs. 589 +Compose the uplink payload with value returns in sequence and send with **__Multiply UPLINKs__**. 581 581 582 -Final Payload is 591 +Final Payload is __**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA**__ 583 583 584 -__**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA**__ 585 - 586 586 1. Battery Info (2 bytes): Battery voltage 587 587 1. PAYVER (1 byte): Defined by AT+PAYVER 588 588 1. PAYLOAD COUNT (1 byte): Total how many uplinks of this sampling. ... ... @@ -589,10 +589,10 @@ 589 589 1. PAYLOAD# (1 byte): Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT) 590 590 1. 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 591 591 592 -[[image:1675215848113-696.png]] 599 +[[image:1675215848113-696.png||_mstalt="296998"]] 593 593 594 594 595 -**Notice: the Max bytes is according to the max support bytes in different Frequency Bands for lowest SF. As below:** 602 +(% style="color:red" %)**Notice: the Max bytes is according to the max support bytes in different Frequency Bands for lowest SF. As below:** 596 596 597 597 * For AU915/AS923 bands, if UplinkDwell time=0, max 51 bytes for each uplink ( so 51 -5 = 46 max valid date) 598 598 * For AU915/AS923 bands, if UplinkDwell time=1, max 11 bytes for each uplink ( so 11 -5 = 6 max valid date). ... ... @@ -599,22 +599,13 @@ 599 599 * For US915 band, max 11 bytes for each uplink ( so 11 -5 = 6 max valid date). 600 600 * For all other bands: max 51 bytes for each uplink ( so 51 -5 = 46 max valid date). 601 601 602 -** ~When AT+DATAUP=1, the maximum number of segments is 15, and the maximum total number of bytes is 1500;**609 +(% style="color:red" %)**When AT+DATAUP=1, the maximum number of segments is 15, and the maximum total number of bytes is 1500;** 603 603 604 -** ~When AT+DATAUP=1 and AT+ADR=0, the maximum number of bytes of each payload is determined by the DR value.**611 +(% 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.** 605 605 606 606 607 -== 2.4 Uplink Payload ==614 +== 2.4 Uplink Payload == 608 608 609 - 610 -Uplink payloads have two types: 611 - 612 -* Distance Value: Use FPORT=2 613 -* Other control commands: Use other FPORT fields. 614 - 615 -The application server should parse the correct value based on FPORT settings. 616 - 617 - 618 618 === 2.4.1 Device Payload, FPORT~=5 === 619 619 620 620 ... ... @@ -622,21 +622,21 @@ 622 622 623 623 Users can also use the downlink command(0x26 01) to ask SDI-12-LB to resend this uplink. 624 624 625 -(% border="1" cellspacing="4" style=" background-color:#f7faff;width:437px" %)626 -|(% colspan="6" style=" width:434px" %)**Device Status (FPORT=5)**627 -|(% style="width:10 2px" %)**Size (bytes)**|(% style="width:67px" %)**1**|(% style="width:80px" %)**2**|(% style="width:89px" %)**1**|(% style="width:52px" %)**1**|(% style="width:44px" %)**2**628 -|(% style="width:10 2px" %)**Value**|(% style="width:67px" %)Sensor Model|(% style="width:80px" %)Firmware Version|(% style="width:89px" %)Frequency Band|(% style="width:52px" %)Sub-band|(% style="width:44px" %)BAT623 +(% border="1" cellspacing="4" style="width:510px" %) 624 +|(% colspan="6" style="background-color:#d9e2f3; color:#0070c0" %)**Device Status (FPORT=5)** 625 +|(% style="background-color:#f2f2f2; width:103px" %)**Size (bytes)**|(% style="background-color:#f2f2f2; width:72px" %)**1**|(% style="background-color:#f2f2f2" %)**2**|(% style="background-color:#f2f2f2; width:91px" %)**1**|(% style="background-color:#f2f2f2; width:86px" %)**1**|(% style="background-color:#f2f2f2; width:44px" %)**2** 626 +|(% style="background-color:#f2f2f2; width:103px" %)**Value**|(% style="background-color:#f2f2f2; width:72px" %)Sensor Model|(% style="background-color:#f2f2f2" %)Firmware Version|(% style="background-color:#f2f2f2; width:91px" %)Frequency Band|(% style="background-color:#f2f2f2; width:86px" %)Sub-band|(% style="background-color:#f2f2f2; width:44px" %)BAT 629 629 630 630 Example parse in TTNv3 631 631 632 -[[image:1675215946738-635.png]] 630 +[[image:1675215946738-635.png||_mstalt="297778"]] 633 633 634 634 635 -**Sensor Model**: For SDI-12-LB, this value is 0x17 633 +(% style="color:#037691" %)**Sensor Model**(%%): For SDI-12-LB, this value is 0x17 636 636 637 -**Firmware Version**: 0x0100, Means: v1.0.0 version 635 +(% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version 638 638 639 -**Frequency Band**: 637 +(% style="color:#037691" %)**Frequency Band**: 640 640 641 641 *0x01: EU868 642 642 ... ... @@ -667,7 +667,7 @@ 667 667 *0x0e: MA869 668 668 669 669 670 -**Sub-Band**: 668 +(% style="color:#037691" %)**Sub-Band**: 671 671 672 672 AU915 and US915:value 0x00 ~~ 0x08 673 673 ... ... @@ -676,7 +676,7 @@ 676 676 Other Bands: Always 0x00 677 677 678 678 679 -**Battery Info**: 677 +(% style="color:#037691" %)**Battery Info**: 680 680 681 681 Check the battery voltage. 682 682 ... ... @@ -694,20 +694,20 @@ 694 694 695 695 * Periodically Uplink: FPORT=2 696 696 697 -(% border="1" cellspacing="4" style="background-color:#f 7faff; width:510px" %)698 -|(% style="width:9 3px" %)(((695 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %) 696 +|=(% style="width: 90px;" %)((( 699 699 **Size(bytes)** 700 -)))|(% style="width:8 3px" %)**2**|(% style="width:70px" %)**1**|(% style="width:234px" %)**Length depends on the return from the commands**698 +)))|=(% style="width: 80px;" %)**2**|=(% style="width: 90px;" %)**1**|=(% style="width: 240px;" %)**Length depends on the return from the commands** 701 701 |(% style="width:93px" %)**Value**|(% style="width:83px" %)((( 702 702 Battery(mV) 703 703 & 704 704 Interrupt_Flag 705 -)))|(% style="width: 70px" %)[[PAYLOAD_VER>>path:#Probe_Model]]|(% style="width:234px" %)(((703 +)))|(% style="width:91px" %)[[PAYLOAD_VER>>||anchor="H3.6Setthepayloadversion"]]|(% style="width:212px" %)((( 706 706 If the valid payload is too long and exceed the maximum support. 707 707 Payload length in server,server will show payload not provided in the LoRaWAN server. 708 708 ))) 709 709 710 -[[image:1675216282284-923.png]] 708 +[[image:1675216282284-923.png||_mstalt="295633"]] 711 711 712 712 713 713 === 2.4.3 Battery Info === ... ... @@ -723,7 +723,7 @@ 723 723 === 2.4.4 Interrupt Pin === 724 724 725 725 726 -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]].724 +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"]]. 727 727 728 728 **Example:** 729 729 ... ... @@ -734,6 +734,7 @@ 734 734 735 735 === 2.4.5 Payload version === 736 736 735 +The version number of the payload, mainly used for decoding. The default is 01. 737 737 738 738 739 739 === 2.4.6 Decode payload in The Things Network === ... ... @@ -741,7 +741,7 @@ 741 741 742 742 While using TTN network, you can add the payload format to decode the payload. 743 743 744 -[[image:1675216779406-595.png]] 743 +[[image:1675216779406-595.png||_mstalt="298376"]] 745 745 746 746 747 747 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. ... ... @@ -754,26 +754,91 @@ 754 754 755 755 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: 756 756 757 -[[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]]756 +[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/#H4.1ChangeUplinkInterval>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/#H4.1ChangeUplinkInterval]] 758 758 759 759 759 +== 2.6 Examples To Set SDI commands. == 760 760 761 +=== 2.6.1 Examples 1 === 761 761 762 -== 2.6 Frequency Plans == 763 763 764 +COM port and SDI-12 sensor communication converted to SDI-12-LB and SDI-12 sensor communication. 764 764 766 +[[image:image-20230222143809-1.png||_mstalt="429962" height="564" width="729"]] 767 + 768 + 769 +(% style="color:blue" %)**1) The AT+COMMANDx command is applied to the red arrow part, and sends the SDI12 command to the SDI12 sensor:** 770 + 771 +a. Send the first command and get the first reply: 772 + 773 +(% style="color:#037691" %)**AT+COMMANDx=1I!,0,0,1** 774 + 775 +b. Send the second command and get the second reply: 776 + 777 +(% style="color:#037691" %)**AT+COMMANDx=2I!,0,0,1** 778 + 779 +c. Send the third command and get the third reply: 780 + 781 +(% style="color:#037691" %)**AT+COMMANDx=3I!,0,0,1** 782 + 783 +d. Send the fourth command and get the fourth reply: 784 + 785 +(% style="color:#037691" %)**AT+COMMANDx=4I!,0,0,1** 786 + 787 +e. Send the fifth command plus the sixth command, get the sixth reply: 788 + 789 +(% style="color:#037691" %)**AT+COMMANDx=1M!,2,1,1** 790 + 791 +f. Send the seventh command plus the eighth command, get the eighth reply: 792 + 793 +(% style="color:#037691" %)**AT+COMMANDx=2M!,2,1,1** 794 + 795 +g. Send the ninth command plus the tenth command, get the tenth reply: 796 + 797 +(% style="color:#037691" %)**AT+COMMANDx=3M!,1,1,1** 798 + 799 +h. Send the eleventh command plus the twelfth command, get the twelfth reply: 800 + 801 +(% style="color:#037691" %)**AT+COMMANDx=4M!,1,1,1** 802 + 803 + 804 +(% style="color:blue" %)**2) The AT+DATACUTx command is applied to the green arrow part, receiving and cut out data from the SDI12 sensor:** 805 + 806 +a. The first reply, all 34 characters: ”113TRUEBNERSMT100038220303182331<CR><LF>” 807 + 808 +Cut out all characters: (% _mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=34,2,1~~34**(% style="color:#037691" %); 809 + 810 +b. The sixth reply, all 31 characters:”1+19210+1.04+0.00+22.49+11.75<CR><LF>” 811 + 812 +Cut out all characters: (% _mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=31,2,1~~31**(% style="color:#037691" %); 813 + 814 +c. The eighth reply, all 31 characters:”2+18990+1.08+0.00+22.24+11.80<CR><LF>” 815 + 816 +Cut out all characters: (% _mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=31,2,1~~31**(% style="color:#037691" %); 817 + 818 +d. The tenth reply, all 15 characters:”3-2919.8+24.0<CR><LF>” 819 + 820 +Cut out all characters: (% _mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=15,2,1~~15**(% style="color:#037691" %); 821 + 822 +e. The twelfth reply, all 25 characters:”4+30.8+22.84+4.7+954.38<CR><LF>” 823 + 824 +Partial cut, the cut sensor address and the first two parameters:(% style="color:#037691" %)**AT+DATACUTx=25,2,1~~12, cut out the character field ” 4+30.8+22.84”**. 825 + 826 + 827 +== 2.7 Frequency Plans == 828 + 829 + 765 765 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. 766 766 767 767 [[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/]] 768 768 769 769 835 +== 2.8 Firmware Change Log == 770 770 771 -== 2.7 Firmware Change Log == 772 772 773 - 774 774 **Firmware download link:** 775 775 776 -[[https:~~/~~/www.dropbox.com/sh/g f1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0>>url:https://www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0]]840 +[[https:~~/~~/www.dropbox.com/sh/qrbgbikb109lkiv/AACBR-v_ZhZAMengcY7Nsa1ja?dl=0>>https://www.dropbox.com/sh/qrbgbikb109lkiv/AACBR-v_ZhZAMengcY7Nsa1ja?dl=0]] 777 777 778 778 779 779 = 3. Configure SDI-12-LB via AT Command or LoRaWAN Downlink = ... ... @@ -781,12 +781,12 @@ 781 781 782 782 Use can configure SDI-12-LB via AT Command or LoRaWAN Downlink. 783 783 784 -* AT Command Connection: See [[FAQ>> path:#AT_COMMAND]].848 +* AT Command Connection: See [[FAQ>>||anchor="H7.FAQ"]]. 785 785 * LoRaWAN Downlink instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section. 786 786 787 787 There are two kinds of commands to configure SDI-12-LB, they are: 788 788 789 -* **General Commands**. 853 +* (% style="color:blue" %)**General Commands**. 790 790 791 791 These commands are to configure: 792 792 ... ... @@ -795,15 +795,15 @@ 795 795 796 796 They are same for all Dragino Device which support DLWS-005 LoRaWAN Stack. These commands can be found on the wiki: 797 797 798 -[[http:~~/~~/wiki.dragino.com/in dex.php?title=End_Device_Downlink_Command>>url:http://wiki.dragino.com/index.php?title=End_Device_Downlink_Command]]862 +[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/]] 799 799 800 800 801 -* **Commands special design for SDI-12-LB** 865 +* (% style="color:blue" %)**Commands special design for SDI-12-LB** 802 802 803 803 These commands only valid for SDI-12-LB, as below: 804 804 805 805 806 -== 3.1 Set Transmit Interval Time ==870 +== 3.1 Set Transmit Interval Time == 807 807 808 808 809 809 Feature: Change LoRaWAN End Node Transmit Interval. ... ... @@ -810,14 +810,14 @@ 810 810 811 811 (% style="color:blue" %)**AT Command: AT+TDC** 812 812 813 -(% border="1" cellspacing="4" style=" background-color:#f7faff; color:black;width:510px" %)814 -|=(% style="width: 1 56px;" %)**Command Example**|=(% style="width: 137px;" %)**Function**|=**Response**815 -|(% style="width:15 6px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|(((877 +(% border="1" cellspacing="4" style="width:510px" %) 878 +|=(% style="width: 160px; background-color: rgb(217, 226, 243); color: rgb(0, 112, 192);" %)**Command Example**|=(% style="width: 160px; background-color: rgb(217, 226, 243); color: rgb(0, 112, 192);" %)**Function**|=(% style="width: 190px;background-color:#D9E2F3;color:#0070C0" %)**Response** 879 +|(% style="background-color:#f2f2f2; width:157px" %)AT+TDC=?|(% style="background-color:#f2f2f2; width:166px" %)Show current transmit Interval|(% style="background-color:#f2f2f2" %)((( 816 816 30000 817 817 OK 818 818 the interval is 30000ms = 30s 819 819 ))) 820 -|(% style="width:15 6px" %)AT+TDC=60000|(% style="width:137px" %)Set Transmit Interval|(((884 +|(% style="background-color:#f2f2f2; width:157px" %)AT+TDC=60000|(% style="background-color:#f2f2f2; width:166px" %)Set Transmit Interval|(% style="background-color:#f2f2f2" %)((( 821 821 OK 822 822 Set transmit interval to 60000ms = 60 seconds 823 823 ))) ... ... @@ -827,31 +827,34 @@ 827 827 828 828 Format: Command Code (0x01) followed by 3 bytes time value. 829 829 830 -If the downlink payload=0100003C, it means set the END Node ’s Transmit Interval to 0x00003C=60(S), while type code is 01.894 +If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01. 831 831 832 -* Example 1: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds 833 -* Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 896 +* Example 1: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds 897 +* Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 834 834 899 + 900 + 835 835 == 3.2 Set Interrupt Mode == 836 836 903 + 837 837 Feature, Set Interrupt mode for GPIO_EXIT. 838 838 839 839 (% style="color:blue" %)**AT Command: AT+INTMOD** 840 840 841 -(% border="1" cellspacing="4" style=" background-color:#f7faff; color:black;width:510px" %)842 -|=**Command Example**|=**Function**|=**Response** 843 -|AT+INTMOD=?|Show current interrupt mode|((( 908 +(% border="1" cellspacing="4" style="width:510px" %) 909 +|=(% style="width: 154px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 196px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 157px;background-color:#D9E2F3;color:#0070C0" %)**Response** 910 +|(% style="background-color:#f2f2f2; width:154px" %)AT+INTMOD=?|(% style="background-color:#f2f2f2; width:196px" %)Show current interrupt mode|(% style="background-color:#f2f2f2; width:157px" %)((( 844 844 0 845 845 OK 846 -the mode is 0 = Nointerruption913 +the mode is 0 =Disable Interrupt 847 847 ))) 848 -|AT+INTMOD=2|((( 915 +|(% style="background-color:#f2f2f2; width:154px" %)AT+INTMOD=2|(% style="background-color:#f2f2f2; width:196px" %)((( 849 849 Set Transmit Interval 850 - ~1. (Disable Interrupt),851 - 2. (Trigger by rising and falling edge)852 - 3. (Trigger by falling edge)853 - 4. (Trigger by rising edge)854 -)))|OK 917 +0. (Disable Interrupt), 918 +~1. (Trigger by rising and falling edge) 919 +2. (Trigger by falling edge) 920 +3. (Trigger by rising edge) 921 +)))|(% style="background-color:#f2f2f2; width:157px" %)OK 855 855 856 856 (% style="color:blue" %)**Downlink Command: 0x06** 857 857 ... ... @@ -859,9 +859,11 @@ 859 859 860 860 This means that the interrupt mode of the end node is set to 0x000003=3 (rising edge trigger), and the type code is 06. 861 861 862 -* Example 1: Downlink Payload: 06000000 ~/~/ Turn off interrupt mode 863 -* Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger 929 +* Example 1: Downlink Payload: 06000000 ~/~/ Turn off interrupt mode 930 +* Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger 864 864 932 + 933 + 865 865 == 3.3 Set the output time == 866 866 867 867 ... ... @@ -869,52 +869,54 @@ 869 869 870 870 (% style="color:blue" %)**AT Command: AT+3V3T** 871 871 872 -(% border="1" cellspacing="4" style=" background-color:#f7faff; color:black;width:474px" %)873 -|=(% style="width: 154px;" %)**Command Example**|=(% style="width: 201px;" %)**Function**|=(% style="width: 116px;" %)**Response** 874 -|(% style="width:154px" %)AT+3V3T=?|(% style="width:201px" %)Show 3V3 open time.|(% style="width:116px" %)((( 941 +(% border="1" cellspacing="4" style="width:474px" %) 942 +|=(% style="width: 154px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 201px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 116px;background-color:#D9E2F3;color:#0070C0" %)**Response** 943 +|(% style="background-color:#f2f2f2; width:154px" %)AT+3V3T=?|(% style="background-color:#f2f2f2; width:201px" %)Show 3V3 open time.|(% style="background-color:#f2f2f2; width:116px" %)((( 875 875 0 876 876 OK 877 877 ))) 878 -|(% style="width:154px" %)AT+3V3T=0|(% style="width:201px" %)Normally open 3V3 power supply.|(% style="width:116px" %)((( 947 +|(% style="background-color:#f2f2f2; width:154px" %)AT+3V3T=0|(% style="background-color:#f2f2f2; width:201px" %)Normally open 3V3 power supply.|(% style="background-color:#f2f2f2; width:116px" %)((( 879 879 OK 880 880 default setting 881 881 ))) 882 -|(% style="width:154px" %)AT+3V3T=1000|(% style="width:201px" %)Close after a delay of 1000 milliseconds.|(% style="width:116px" %)((( 951 +|(% style="background-color:#f2f2f2; width:154px" %)AT+3V3T=1000|(% style="background-color:#f2f2f2; width:201px" %)Close after a delay of 1000 milliseconds.|(% style="background-color:#f2f2f2; width:116px" %)((( 883 883 OK 884 884 ))) 885 -|(% style="width:154px" %)AT+3V3T=65535|(% style="width:201px" %)Normally closed 3V3 power supply.|(% style="width:116px" %)((( 954 +|(% style="background-color:#f2f2f2; width:154px" %)AT+3V3T=65535|(% style="background-color:#f2f2f2; width:201px" %)Normally closed 3V3 power supply.|(% style="background-color:#f2f2f2; width:116px" %)((( 886 886 OK 887 887 ))) 888 888 958 + 889 889 (% style="color:blue" %)**AT Command: AT+5VT** 890 890 891 -(% border="1" cellspacing="4" style=" background-color:#f7faff; color:black;width:470px" %)892 -|=(% style="width: 155px;" %)**Command Example**|=(% style="width: 196px;" %)**Function**|=(% style="width: 114px;" %)**Response** 893 -|(% style="width:155px" %)AT+5VT=?|(% style="width:196px" %)Show 5V open time.|(% style="width:114px" %)((( 961 +(% border="1" cellspacing="4" style="width:470px" %) 962 +|=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 196px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 114px;background-color:#D9E2F3;color:#0070C0" %)**Response** 963 +|(% style="background-color:#f2f2f2; width:155px" %)AT+5VT=?|(% style="background-color:#f2f2f2; width:196px" %)Show 5V open time.|(% style="background-color:#f2f2f2; width:114px" %)((( 894 894 0 895 895 OK 896 896 ))) 897 -|(% style="width:155px" %)AT+5VT=0|(% style="width:196px" %)Normally closed 5V power supply.|(% style="width:114px" %)((( 967 +|(% style="background-color:#f2f2f2; width:155px" %)AT+5VT=0|(% style="background-color:#f2f2f2; width:196px" %)Normally closed 5V power supply.|(% style="background-color:#f2f2f2; width:114px" %)((( 898 898 OK 899 899 default setting 900 900 ))) 901 -|(% style="width:155px" %)AT+5VT=1000|(% style="width:196px" %)Close after a delay of 1000 milliseconds.|(% style="width:114px" %)((( 971 +|(% style="background-color:#f2f2f2; width:155px" %)AT+5VT=1000|(% style="background-color:#f2f2f2; width:196px" %)Close after a delay of 1000 milliseconds.|(% style="background-color:#f2f2f2; width:114px" %)((( 902 902 OK 903 903 ))) 904 -|(% style="width:155px" %)AT+5VT=65535|(% style="width:196px" %)Normally open 5V power supply.|(% style="width:114px" %)((( 974 +|(% style="background-color:#f2f2f2; width:155px" %)AT+5VT=65535|(% style="background-color:#f2f2f2; width:196px" %)Normally open 5V power supply.|(% style="background-color:#f2f2f2; width:114px" %)((( 905 905 OK 906 906 ))) 907 907 978 + 908 908 (% style="color:blue" %)**AT Command: AT+12VT** 909 909 910 -(% border="1" cellspacing="4" style=" background-color:#f7faff; color:black;width:443px" %)911 -|=(% style="width: 156px;" %)**Command Example**|=(% style="width: 199px;" %)**Function**|=(% style="width: 83px;" %)**Response** 912 -|(% style="width:156px" %)AT+12VT=?|(% style="width:199px" %)Show 12V open time.|(% style="width:83px" %)((( 981 +(% border="1" cellspacing="4" style="width:443px" %) 982 +|=(% style="width: 156px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 199px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 83px;background-color:#D9E2F3;color:#0070C0" %)**Response** 983 +|(% style="background-color:#f2f2f2; width:156px" %)AT+12VT=?|(% style="background-color:#f2f2f2; width:199px" %)Show 12V open time.|(% style="background-color:#f2f2f2; width:83px" %)((( 913 913 0 914 914 OK 915 915 ))) 916 -|(% style="width:156px" %)AT+12VT=0|(% style="width:199px" %)Normally closed 12V power supply.|(% style="width:83px" %)OK 917 -|(% style="width:156px" %)AT+12VT=500|(% style="width:199px" %)Close after a delay of 500 milliseconds.|(% style="width:83px" %)((( 987 +|(% style="background-color:#f2f2f2; width:156px" %)AT+12VT=0|(% style="background-color:#f2f2f2; width:199px" %)Normally closed 12V power supply.|(% style="background-color:#f2f2f2; width:83px" %)OK 988 +|(% style="background-color:#f2f2f2; width:156px" %)AT+12VT=500|(% style="background-color:#f2f2f2; width:199px" %)Close after a delay of 500 milliseconds.|(% style="background-color:#f2f2f2; width:83px" %)((( 918 918 OK 919 919 ))) 920 920 ... ... @@ -931,6 +931,8 @@ 931 931 * Example 5: Downlink Payload: 070301F4 **~-~-->** AT+12VT=500 932 932 * Example 6: Downlink Payload: 07030000 **~-~-->** AT+12VT=0 933 933 1005 + 1006 + 934 934 == 3.4 Set the all data mode == 935 935 936 936 ... ... @@ -938,13 +938,13 @@ 938 938 939 939 (% style="color:blue" %)**AT Command: AT+ALLDATAMOD** 940 940 941 -(% border="1" cellspacing="4" style=" background-color:#f7faff;width:437px" %)942 -|=**Command Example**|=**Function**|=**Response** 943 -|AT+ALLDATAMOD=?|Show current all data mode|((( 1014 +(% border="1" cellspacing="4" style="width:437px" %) 1015 +|=(% style="background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="background-color:#D9E2F3;color:#0070C0" %)**Response** 1016 +|(% style="background-color:#f2f2f2" %)AT+ALLDATAMOD=?|(% style="background-color:#f2f2f2" %)Show current all data mode|(% style="background-color:#f2f2f2" %)((( 944 944 0 945 945 OK 946 946 ))) 947 -|AT+ALLDATAMOD=1|Set all data mode is 1.|OK 1020 +|(% style="background-color:#f2f2f2" %)AT+ALLDATAMOD=1|(% style="background-color:#f2f2f2" %)Set all data mode is 1.|(% style="background-color:#f2f2f2" %)OK 948 948 949 949 (% style="color:blue" %)**Downlink Command: 0xAB** 950 950 ... ... @@ -953,6 +953,8 @@ 953 953 * Example 1: Downlink Payload: AB 00 ~/~/ AT+ALLDATAMOD=0 954 954 * Example 2: Downlink Payload: AB 01 ~/~/ AT+ALLDATAMOD=1 955 955 1029 + 1030 + 956 956 == 3.5 Set the splicing payload for uplink == 957 957 958 958 ... ... @@ -960,29 +960,29 @@ 960 960 961 961 (% style="color:blue" %)**AT Command: AT+DATAUP** 962 962 963 -(% border="1" cellspacing="4" style=" background-color:#f7faff;width:510px" %)964 -|=(% style="width: 154px;" %)**Command Example**|=(% style="width: 266px;" %)**Function**|=**Response** 965 -|(% style="width:154px" %)AT+DATAUP =?|(% style="width:266px" %)Show current splicing payload for uplink mode|((( 1038 +(% border="1" cellspacing="4" style="width:510px" %) 1039 +|=(% style="width: 154px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 266px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="background-color:#D9E2F3;color:#0070C0" %)**Response** 1040 +|(% style="background-color:#f2f2f2; width:154px" %)AT+DATAUP =?|(% style="background-color:#f2f2f2; width:266px" %)Show current splicing payload for uplink mode|(% style="background-color:#f2f2f2" %)((( 966 966 0 967 967 OK 968 968 ))) 969 -|(% style="width:154px" %)AT+DATAUP =0|(% style="width:266px" %)((( 1044 +|(% style="background-color:#f2f2f2; width:154px" %)AT+DATAUP =0|(% style="background-color:#f2f2f2; width:266px" %)((( 970 970 Set splicing payload for uplink mode is 0. 971 -)))|((( 1046 +)))|(% style="background-color:#f2f2f2" %)((( 972 972 OK 973 973 ))) 974 -|(% 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 975 -|(% style="width:154px" %)AT+DATAUP =1,20000|(% style="width:266px" %)((( 1049 +|(% style="background-color:#f2f2f2; width:154px" %)AT+DATAUP =1|(% style="background-color:#f2f2f2; width:266px" %)Set splicing payload for uplink mode is 1 , and the each splice uplink is sent sequentially.|(% style="background-color:#f2f2f2" %)OK 1050 +|(% style="background-color:#f2f2f2; width:154px" %)AT+DATAUP =1,20000|(% style="background-color:#f2f2f2; width:266px" %)((( 976 976 Set splicing payload for uplink mode is 1, and the uplink interval of each splice to 20000 milliseconds. 977 -)))|OK 1052 +)))|(% style="background-color:#f2f2f2" %)OK 978 978 979 979 (% style="color:blue" %)**Downlink Command: 0xAD** 980 980 981 981 Format: Command Code (0xAD) followed by 1 bytes or 5 bytes. 982 982 983 -* Example 1: Downlink Payload: AD 00 ~/~/ AT+DATAUP=0 984 -* Example 2: Downlink Payload: AD 01 ~/~/ AT+DATAUP =1 985 -* Example 3: Downlink Payload: AD 01 00 00 14~/~/ AT+DATAUP =1,20000 1058 +* Example 1: Downlink Payload: AD 00 ~/~/ AT+DATAUP=0 1059 +* Example 2: Downlink Payload: AD 01 ~/~/ AT+DATAUP =1 1060 +* Example 3: Downlink Payload: AD 01 00 00 14 ~/~/ AT+DATAUP =1,20000 986 986 987 987 This means that the interval is set to 0x000014=20S 988 988 ... ... @@ -989,144 +989,109 @@ 989 989 990 990 == 3.6 Set the payload version == 991 991 1067 + 992 992 Feature, Set the payload version. 993 993 994 994 (% style="color:blue" %)**AT Command: AT+PAYVER** 995 995 996 -|**Command Example**|**Function**|**Response** 997 -|AT+PAYVER=?|Show current payload version|((( 1072 +(% border="1" cellspacing="4" style="width:437px" %) 1073 +|=(% style="width: 158px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 192px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="background-color:#D9E2F3;color:#0070C0" %)**Response** 1074 +|(% style="background-color:#f2f2f2; width:158px" %)AT+PAYVER=?|(% style="background-color:#f2f2f2; width:192px" %)Show current payload version|(% style="background-color:#f2f2f2" %)((( 998 998 1 999 999 OK 1000 1000 ))) 1001 -|AT+PAYVER=5|Set payload version is 5.|OK 1078 +|(% style="background-color:#f2f2f2; width:158px" %)AT+PAYVER=5|(% style="background-color:#f2f2f2; width:192px" %)Set payload version is 5.|(% style="background-color:#f2f2f2" %)OK 1002 1002 1003 1003 (% style="color:blue" %)**Downlink Command: 0xAE** 1004 1004 1005 1005 Format: Command Code (0xAE) followed by 1 bytes. 1006 1006 1007 -* Example 1: Downlink Payload: AE 01 ~/~/ AT+PAYVER=1 1008 -* Example 2: Downlink Payload: AE 05 ~/~/ AT+PAYVER=5 1084 +* Example 1: Downlink Payload: AE 01 ~/~/ AT+PAYVER=1 1085 +* Example 2: Downlink Payload: AE 05 ~/~/ AT+PAYVER=5 1009 1009 1010 -= 4. Battery & how to replace = 1011 1011 1012 -== 4.1 Battery Type == 1013 1013 1089 += 4. Battery & Power Consumption = 1014 1014 1015 -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. 1016 1016 1092 +SDI-12-LB uses ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace. 1017 1017 1018 - The dischargecurveisnotlinearsocan’tsimplyusepercentage toshowthebatterylevel. Below istheperformance.1094 +[[**Battery Info & Power Consumption Analyze**>>url:http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] . 1019 1019 1020 -[[image:1675146710956-626.png]] 1021 1021 1097 += 5. Remote Configure device = 1022 1022 1023 - MinimumWorkingVoltagefortheSDI-12-LB:1099 +== 5.1 Connect via BLE == 1024 1024 1025 -SDI-12-LB: 2.45v ~~ 3.6v 1026 1026 1102 +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/]] 1027 1027 1028 -== 4.2 Replace Battery == 1029 1029 1105 +== 5.2 AT Command Set == 1030 1030 1031 -Any battery with range 2.45 ~~ 3.6v can be a replacement. We recommend to use Li-SOCl2 Battery. 1032 1032 1033 -And make sure the positive and negative pins match. 1034 1034 1109 += 6. OTA firmware update = 1035 1035 1036 -== 4.3 Power Consumption Analyze == 1037 1037 1112 +Please see this link for how to do OTA firmware update. 1038 1038 1039 - Dragino Batterypoweredproductare all runsinLow Powerode. We havean updatebattery calculatorwhich baseonthe measurementofthe real device.Usercan use this calculator tocheckthebattery life and calculatethe battery lifeifwant to useifferent transmit interval.1114 +[[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/]] 1040 1040 1041 -Instruction to use as below: 1042 1042 1043 - (% style="color:blue"%)**Step 1:**(%%) Downlink the up-to-date DRAGINO_Battery_Life_Prediction_Table.xlsxfrom: [[https:~~/~~/www.dropbox.com/sh/zwex6i331j5oeq2/AACIMf9f_v2qsJ39CuMQ5Py_a?dl=0>>https://www.dropbox.com/sh/zwex6i331j5oeq2/AACIMf9f_v2qsJ39CuMQ5Py_a?dl=0]]1117 += 7. FAQ = 1044 1044 1045 - (% style="color:blue"%)**Step2:**(%%) Openitandchoose1119 +== 7.1 How to use AT Command via UART to access device? == 1046 1046 1047 -* Product Model 1048 -* Uplink Interval 1049 -* Working Mode 1050 1050 1051 - And theLifeexpectationdifferencecasewillbeshowntheright.1122 +See: [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H1.LoRaSTv4baseHardware>>url:http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H1.LoRaSTv4baseHardware]] 1052 1052 1053 -[[image:1675146895108-304.png]] 1054 1054 1125 +== 7.2 How to update firmware via UART port? == 1055 1055 1056 -The battery related documents as below: 1057 1057 1058 -* [[Battery Dimension>>https://www.dropbox.com/s/ox5g9njwjle7aw3/LSN50-Battery-Dimension.pdf?dl=0]], 1059 -* [[Lithium-Thionyl Chloride Battery datasheet, Tech Spec>>https://www.dropbox.com/sh/d4oyfnp8o94180o/AABQewCNSh5GPeQH86UxRgQQa?dl=0]] 1060 -* [[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]] 1128 +See: [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H1.LoRaSTv4baseHardware>>url:http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H1.LoRaSTv4baseHardware]] 1061 1061 1062 -[[image:image-20230131145708-3.png]] 1063 1063 1131 +== 7.3 How to change the LoRa Frequency Bands/Region? == 1064 1064 1065 -=== 4.3.1 Battery Note === 1066 1066 1134 +You can follow the instructions for [[how to upgrade image>>doc:Main.Firmware Upgrade Instruction for STM32 base products.WebHome]]. 1135 +When downloading the images, choose the required image file for download. 1067 1067 1068 -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. 1069 1069 1138 += 8. Order Info = 1070 1070 1071 -=== 4.3.2 Replace the battery === 1072 1072 1141 +((( 1142 +(% style="color:blue" %)**Part Number: SDI-12-LB-XXX** 1143 +))) 1073 1073 1074 -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. 1075 - 1076 -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) 1077 - 1078 - 1079 - 1080 -= 5. Remote Configure device = 1081 - 1082 -== 5.1 Connect via BLE == 1083 - 1084 - 1085 -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/]] 1086 - 1087 - 1088 -== 5.2 AT Command Set == 1089 - 1090 - 1091 - 1092 -= 6. OTA firmware update = 1093 - 1094 - 1095 -Please see this link for how to do OTA firmware update. 1096 - 1097 -[[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/]] 1098 - 1099 - 1100 - 1101 -= 7. Order Info = 1102 - 1103 - 1104 -Part Number: SDI-12-LB-XXX 1145 +((( 1105 1105 XXX: The default frequency band 1147 +))) 1106 1106 1107 -AS923: LoRaWAN AS923 band 1108 -AU915: LoRaWAN AU915 band 1109 -EU433: LoRaWAN EU433 band 1110 -EU868: LoRaWAN EU868 band 1111 -KR920: LoRaWAN KR920 band 1112 -US915: LoRaWAN US915 band 1113 -IN865: LoRaWAN IN865 band 1114 -CN470: LoRaWAN CN470 band 1149 +((( 1150 +(% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band 1151 +(% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band 1152 +(% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band 1153 +(% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band 1154 +(% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band 1155 +(% style="color:red" %)**US915**(%%): LoRaWAN US915 band 1156 +(% style="color:red" %)**IN865**(%%): LoRaWAN IN865 band 1157 +(% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band 1158 +))) 1115 1115 1116 1116 1117 1117 1162 += 9. Packing Info = 1118 1118 1119 1119 1165 +(% style="color:#037691" %)**Package Includes**: 1120 1120 1121 - 1122 -= 8. Packing Info = 1123 - 1124 - 1125 -**Package Includes**: 1126 - 1127 1127 * SDI-12-LB SDI-12 to LoRaWAN Converter x 1 1128 1128 1129 -**Dimension and weight**: 1169 +(% style="color:#037691" %)**Dimension and weight**: 1130 1130 1131 1131 * Device Size: cm 1132 1132 * Device Weight: g ... ... @@ -1133,10 +1133,13 @@ 1133 1133 * Package Size / pcs : cm 1134 1134 * Weight / pcs : g 1135 1135 1136 -= 9. Support = 1137 1137 1138 1138 1178 += 10. Support = 1179 + 1180 + 1139 1139 * 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. 1140 1140 1141 1141 * 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]] 1142 1142 1185 +
- 1675234124233-857.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +75.8 KB - Content
- 1675234155374-163.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +138.2 KB - Content
- image-20230201145019-19.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +82.2 KB - Content
- image-20230201152430-20.jpeg
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +16.5 KB - Content
- image-20230222143809-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +322.1 KB - Content