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
From version 47.1
edited by Bei Jinggeng
on 2023/03/20 10:22
on 2023/03/20 10:22
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 4 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Bei1 +XWiki.Xiaoling - Content
-
... ... @@ -1,5 +1,5 @@ 1 1 (% style="text-align:center" %) 2 -[[image:image-20230131183542-1.jpeg|| _mstalt="470678"height="694" width="694"]]2 +[[image:image-20230131183542-1.jpeg||height="694" width="694"]] 3 3 4 4 **Table of Contents:** 5 5 ... ... @@ -17,45 +17,36 @@ 17 17 18 18 19 19 20 + 20 20 = 1. Introduction = 21 21 22 22 == 1.1 What is SDI-12 to LoRaWAN Converter == 23 23 24 24 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 -))) 26 +The Dragino **(% style="color:blue" %)SDI-12-LB**(%%) is a **(% style="color:blue" %)SDI-12 to LoRaWAN Converter **(%%)designed for Smart Agriculture solution. 28 28 29 -((( 30 30 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 -))) 32 32 33 -((( 34 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 -))) 36 36 37 -((( 38 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 -))) 40 40 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 -))) 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. 44 44 45 -((( 46 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 -))) 48 48 49 49 50 -[[image:image-20230201084414-1.png|| _mstalt="427765"height="464" width="1108"]]39 +[[image:image-20230201084414-1.png||height="464" width="1108"]] 51 51 52 52 42 + 43 + 53 53 == 1.2 Features == 54 54 55 55 56 56 * LoRaWAN 1.0.3 Class A 57 57 * Ultra-low power consumption 58 -* Controllable 3.3v,5v and 12v output to power external sensor49 +* Controllable 5v and 12v output to power external sensor 59 59 * SDI-12 Protocol to connect to SDI-12 Sensor 60 60 * Monitor Battery Level 61 61 * Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865 ... ... @@ -65,23 +65,22 @@ 65 65 * Downlink to change configure 66 66 * 8500mAh Battery for long term use 67 67 59 + 68 68 == 1.3 Specification == 69 69 70 70 71 -(% style="color:#037691" %) **Micro Controller:**63 +**(% style="color:#037691" %)Micro Controller:** 72 72 73 73 * MCU: 48Mhz ARM 74 74 * Flash: 256KB 75 75 * RAM: 64KB 76 76 77 -(% style="color:#037691" %) **Common DC Characteristics:**69 +**(% style="color:#037691" %)Common DC Characteristics:** 78 78 79 79 * Supply Voltage: 2.5v ~~ 3.6v 80 -* Support current: 5V 300mA 81 - 12V 100mA 82 82 * Operating Temperature: -40 ~~ 85°C 83 83 84 -(% style="color:#037691" %) **LoRa Spec:**74 +**(% style="color:#037691" %)LoRa Spec:** 85 85 86 86 * Frequency Range, Band 1 (HF): 862 ~~ 1020 Mhz 87 87 * Max +22 dBm constant RF output vs. ... ... @@ -88,19 +88,19 @@ 88 88 * RX sensitivity: down to -139 dBm. 89 89 * Excellent blocking immunity 90 90 91 -(% style="color:#037691" %) **Current Input Measuring :**81 +**(% style="color:#037691" %)Current Input Measuring :** 92 92 93 93 * Range: 0 ~~ 20mA 94 94 * Accuracy: 0.02mA 95 95 * Resolution: 0.001mA 96 96 97 -(% style="color:#037691" %) **Voltage Input Measuring:**87 +**(% style="color:#037691" %)Voltage Input Measuring:** 98 98 99 99 * Range: 0 ~~ 30v 100 100 * Accuracy: 0.02v 101 101 * Resolution: 0.001v 102 102 103 -(% style="color:#037691" %) **Battery:**93 +**(% style="color:#037691" %)Battery:** 104 104 105 105 * Li/SOCI2 un-chargeable battery 106 106 * Capacity: 8500mAh ... ... @@ -108,49 +108,52 @@ 108 108 * Max continuously current: 130mA 109 109 * Max boost current: 2A, 1 second 110 110 111 -(% style="color:#037691" %) **Power Consumption**101 +**(% style="color:#037691" %)Power Consumption** 112 112 113 113 * Sleep Mode: 5uA @ 3.3v 114 114 * LoRa Transmit Mode: 125mA @ 20dBm, 82mA @ 14dBm 115 115 106 + 116 116 == 1.4 Connect to SDI-12 Sensor == 117 117 118 118 119 119 120 -[[image:1675212538524-889.png ||_mstalt="298272"]]111 +[[image:1675212538524-889.png]] 121 121 122 122 123 123 == 1.5 Sleep mode and working mode == 124 124 125 125 126 -(% 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.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. 127 127 128 -(% 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.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. 129 129 130 130 131 131 == 1.6 Button & LEDs == 132 132 133 133 134 -[[image:1675212633011-651.png ||_mstalt="291538"]]125 +[[image:1675212633011-651.png]] 135 135 136 136 128 + 137 137 (% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:510px" %) 138 -|=(% style="width: 167px;" %)**Behavior on ACT**|=(% style="width: 1 09px;" %)**Function**|=(% style="width: 231px;" %)**Action**139 -|(% style="width:167px" %)Pressing ACT between 1s < time < 3s|(% style="width:1 09px" %)Send an uplink|(% style="width:231px" %)(((130 +|=(% style="width: 167px;" %)**Behavior on ACT**|=(% style="width: 117px;" %)**Function**|=(% style="width: 225px;" %)**Action** 131 +|(% style="width:167px" %)Pressing ACT between 1s < time < 3s|(% style="width:117px" %)Send an uplink|(% style="width:225px" %)((( 140 140 If sensor is already Joined to LoRaWAN network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once. 141 141 Meanwhile, BLE module will be active and user can connect via BLE to configure device. 142 142 ))) 143 -|(% style="width:167px" %)Pressing ACT for more than 3s|(% style="width:1 09px" %)Active Device|(% style="width:231px" %)(((135 +|(% style="width:167px" %)Pressing ACT for more than 3s|(% style="width:117px" %)Active Device|(% style="width:225px" %)((( 144 144 (% 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. 145 145 (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network. 146 146 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. 147 147 ))) 148 -|(% style="width:167px" %)Fast press ACT 5 times.|(% style="width:1 09px" %)Deactivate Device|(% style="width:231px" %)(% style="color:red" %)**Red led**(%%) will solid on for 5 seconds. Means SDI-12-LB is in Deep Sleep Mode.140 +|(% style="width:167px" %)Fast press ACT 5 times.|(% style="width:117px" %)Deactivate Device|(% style="width:225px" %)(% style="color:red" %)**Red led**(%%) will solid on for 5 seconds. Means PS-LB is in Deep Sleep Mode. 149 149 142 + 150 150 == 1.7 Pin Mapping == 151 151 152 152 153 -[[image:1675213198663-754.png ||_mstalt="297167"]]146 +[[image:1675213198663-754.png]] 154 154 155 155 156 156 == 1.8 BLE connection == ... ... @@ -170,11 +170,11 @@ 170 170 == 1.9 Mechanical == 171 171 172 172 173 -[[image:image-20230201090139-2.png ||_mstalt="428623"]]166 +[[image:image-20230201090139-2.png]] 174 174 175 -[[image:image-20230201090139-3.png ||_mstalt="428987"]]168 +[[image:image-20230201090139-3.png]] 176 176 177 -[[image:image-20230201090139-4.png ||_mstalt="429351"]]170 +[[image:image-20230201090139-4.png]] 178 178 179 179 180 180 = 2. Configure SDI-12 to connect to LoRaWAN network = ... ... @@ -182,7 +182,7 @@ 182 182 == 2.1 How it works == 183 183 184 184 185 -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.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. 186 186 187 187 188 188 == 2.2 Quick guide to connect to LoRaWAN server (OTAA) == ... ... @@ -191,56 +191,60 @@ 191 191 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. 192 192 193 193 194 -[[image:image-20230201090528-5.png|| _mstalt="430300"height="465" width="1111"]]187 +[[image:image-20230201090528-5.png||height="465" width="1111"]] 195 195 196 196 197 197 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. 198 198 199 199 200 -(% style="color:blue" %) **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. 201 201 202 202 Each SDI-12-LB is shipped with a sticker with the default device EUI as below: 203 203 204 204 205 -[[image:image-20230 201152430-20.jpeg||_mstalt="492245"]]198 +[[image:image-20230131134744-2.jpeg]] 206 206 207 207 201 + 202 + 203 + 208 208 You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot: 209 209 210 210 211 -(% style="color:blue" %) **Register the device**207 +**(% style="color:blue" %)Register the device** 212 212 213 -[[image:1675213652444-622.png ||_mstalt="293657"]]209 +[[image:1675213652444-622.png]] 214 214 215 215 216 -(% style="color:blue" %) **Add APP EUI and DEV EUI**212 +**(% style="color:blue" %)Add APP EUI and DEV EUI** 217 217 218 218 219 -[[image:1675213661769-223.png ||_mstalt="295217"]]215 +[[image:1675213661769-223.png]] 220 220 221 221 222 -(% style="color:blue" %) **Add APP EUI in the application**218 +**(% style="color:blue" %)Add APP EUI in the application** 223 223 224 224 225 -[[image:1675213675852-577.png ||_mstalt="297947"]]221 +[[image:1675213675852-577.png]] 226 226 227 227 228 -(% style="color:blue" %) **Add APP KEY**224 +**(% style="color:blue" %)Add APP KEY** 229 229 230 -[[image:1675213686734-883.png ||_mstalt="298064"]]226 +[[image:1675213686734-883.png]] 231 231 232 232 233 -(% style="color:blue" %) **Step 2**(%%): Activate on SDI-12-LB229 +**(% style="color:blue" %)Step 2**(%%): Activate on SDI-12-LB 234 234 235 235 236 236 Press the button for 5 seconds to activate the SDI-12-LB. 237 237 238 -(% 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. 239 239 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. 240 240 241 -[[image:1675213704414-644.png||_mstalt="293748"]] 242 242 238 +[[image:1675213704414-644.png]] 243 243 240 + 244 244 == 2.3 SDI-12 Related Commands == 245 245 246 246 ... ... @@ -257,43 +257,43 @@ 257 257 The following is the display information on the serial port and the server. 258 258 259 259 260 -[[image:image-20230201091027-6.png||_mstalt="429065"]] 261 261 258 +[[image:image-20230201091027-6.png]] 262 262 263 -[[image:image-20230201091027-7.png||_mstalt="429429" height="261" width="1179"]] 264 264 261 +[[image:image-20230201091027-7.png||height="261" width="1179"]] 265 265 266 266 267 -==== (% style="color:blue" %) **al! ~-~- Get SDI-12 sensor Identification**(%%)====264 +==== **(% style="color:blue" %)al! ~-~- Get SDI-12 sensor Identification** ==== 268 268 269 269 270 270 * AT Command: AT+ADDRI=aa 271 271 * LoRaWAN Downlink(prefix 0xAA00): AA 00 aa 272 272 273 -(% style="color:#037691" %) **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) 274 274 275 -(% style="color:blue" %) **Example : **(%%)AT+ADDRI=0 ( Equal to downlink: 0x AA 00 30)272 +**(% style="color:blue" %)Example : **AT+ADDRI=0 ( Equal to downlink: 0x AA 00 30) 276 276 277 277 278 278 The following is the display information on the serial port and the server. 279 279 280 280 281 -[[image:image-20230201091257-8.png ||_mstalt="431392"]]278 +[[image:image-20230201091257-8.png]] 282 282 283 283 284 -[[image:image-20230201091257-9.png|| _mstalt="431756"height="225" width="1242"]]281 +[[image:image-20230201091257-9.png||height="225" width="1242"]] 285 285 286 286 287 -==== (% style="color:blue" %) **aM!,aMC!, aM1!- aM9!, aMC1!- aMC9!**(%%)====284 +==== **(% style="color:blue" %)aM!,aMC!, aM1!- aM9!, aMC1!- aMC9!** ==== 288 288 289 289 290 -(% style="color:red" %) **aM! **(%%): Start Non-Concurrent Measurement287 +**(% style="color:red" %)aM! **(%%): Start Non-Concurrent Measurement 291 291 292 -(% style="color:red" %) **aMC! **(%%): Start Non-Concurrent Measurement – Request CRC289 +**(% style="color:red" %)aMC! **(%%): Start Non-Concurrent Measurement – Request CRC 293 293 294 -(% style="color:red" %) **aM1!- aM9! **(%%): Additional Measurements291 +**(% style="color:red" %)aM1!- aM9! **(%%): Additional Measurements 295 295 296 -(% style="color:red" %) **aMC1!- aMC9!**(%%) : Additional Measurements – Request CRC293 +**(% style="color:red" %)aMC1!- aMC9!**(%%) : Additional Measurements – Request CRC 297 297 298 298 299 299 * AT Command : AT+ADDRM=0,1,0,1 ... ... @@ -302,35 +302,35 @@ 302 302 303 303 Downlink:AA 01 aa bb cc dd 304 304 305 -(% style="color:#037691" %) **aa**(%%): SDI-12 sensor address.302 +**(% style="color:#037691" %)aa**(%%): SDI-12 sensor address. 306 306 307 -(% style="color:#037691" %) **bb**(%%): 0: no CRC, 1: request CRC304 +**(% style="color:#037691" %)bb**(%%): 0: no CRC, 1: request CRC 308 308 309 -(% style="color:#037691" %) **cc**(%%): 1-9: Additional Measurement, 0: no additional measurement306 +**(% style="color:#037691" %)cc**(%%): 1-9: Additional Measurement, 0: no additional measurement 310 310 311 -(% style="color:#037691" %) **dd**(%%): delay (in second) to send (% style="color:#037691" %)__**aD0!**__(%%) to get return.308 +**(% style="color:#037691" %)dd**(%%): delay (in second) to send **(% style="color:#037691" %)aD0!**(%%) to get return. 312 312 313 313 314 314 The following is the display information on the serial port and the server. 315 315 316 316 317 -[[image:image-20230201091630-10.png ||_mstalt="449995"]]314 +[[image:image-20230201091630-10.png]] 318 318 319 319 320 -[[image:image-20230201091630-11.png|| _mstalt="450372"height="247" width="1165"]]317 +[[image:image-20230201091630-11.png||height="247" width="1165"]] 321 321 322 322 323 323 324 -==== (% style="color:blue" %) **aC!, aCC!, aC1!- aC9!, aCC1!- aCC9! **(%%)====321 +==== **(% style="color:blue" %)aC!, aCC!, aC1!- aC9!, aCC1!- aCC9! ** ==== 325 325 326 326 327 -(% style="color:red" %) **aC!**(%%) : Start Concurrent Measurement324 +**(% style="color:red" %)aC!**(%%) : Start Concurrent Measurement 328 328 329 -(% style="color:red" %) **aCC!** (%%): Start Concurrent Measurement – Request CRC326 +**(% style="color:red" %)aCC!** (%%): Start Concurrent Measurement – Request CRC 330 330 331 -(% style="color:red" %) **aC1!- aC9!**(%%) : Start Additional Concurrent Measurements328 +**(% style="color:red" %)aC1!- aC9!**(%%) : Start Additional Concurrent Measurements 332 332 333 -(% style="color:red" %) **aCC1!- aCC9!**(%%) : Start Additional Concurrent Measurements – Request CRC330 +**(% style="color:red" %)aCC1!- aCC9!**(%%) : Start Additional Concurrent Measurements – Request CRC 334 334 335 335 336 336 * AT Command : AT+ADDRC=0,1,0,1 ... ... @@ -339,27 +339,27 @@ 339 339 340 340 Downlink: AA 02 aa bb cc dd 341 341 342 -(% style="color:#037691" %) **aa**(%%): SDI-12 sensor address.339 +**(% style="color:#037691" %)aa**(%%): SDI-12 sensor address. 343 343 344 -(% style="color:#037691" %) **bb**(%%): 0: no CRC, 1: request CRC341 +**(% style="color:#037691" %)bb**(%%): 0: no CRC, 1: request CRC 345 345 346 -(% style="color:#037691" %) **cc**(%%): 1-9: Additional Measurement, 0: no additional measurement343 +**(% style="color:#037691" %)cc**(%%): 1-9: Additional Measurement, 0: no additional measurement 347 347 348 -(% style="color:#037691" %) **dd**(%%): delay (in second) to send (% style="color:#037691" %)__**aD0!**__(%%)____to get return.345 +**(% style="color:#037691" %)dd**(%%): delay (in second) to send **(% style="color:#037691" %)aD0!**(%%) to get return. 349 349 350 350 351 351 The following is the display information on the serial port and the server. 352 352 353 353 354 -[[image:image-20230201091954-12.png ||_mstalt="453687"]]351 +[[image:image-20230201091954-12.png]] 355 355 356 356 357 -[[image:image-20230201091954-13.png|| _mstalt="454064"height="203" width="1117"]]354 +[[image:image-20230201091954-13.png||height="203" width="1117"]] 358 358 359 359 360 360 361 361 362 -==== (% style="color:blue" %) **aR0!- aR9!, aRC0!- aRC9!**(%%)====359 +==== **(% style="color:blue" %)aR0!- aR9!, aRC0!- aRC9!** ==== 363 363 364 364 365 365 Start Continuous Measurement ... ... @@ -372,24 +372,25 @@ 372 372 373 373 Downlink: AA 03 aa bb cc dd 374 374 375 -(% style="color:#037691" %) **aa**(%%): SDI-12 sensor address.372 +**(% style="color:#037691" %)aa**(%%): SDI-12 sensor address. 376 376 377 -(% style="color:#037691" %) **bb**(%%): 0: no CRC, 1: request CRC374 +**(% style="color:#037691" %)bb**(%%): 0: no CRC, 1: request CRC 378 378 379 -(% style="color:#037691" %) **cc**(%%): 1-9: Additional Measurement, 0: no additional measurement376 +**(% style="color:#037691" %)cc**(%%): 1-9: Additional Measurement, 0: no additional measurement 380 380 381 -(% style="color:#037691" %) **dd**(%%): delay (in second) to send (% style="color:#037691" %)__**aD0!**__(%%) to get return.378 +**(% style="color:#037691" %)dd**(%%): delay (in second) to send **(% style="color:#037691" %)aD0!**(%%) to get return. 382 382 383 383 384 384 The following is the display information on the serial port and the server. 385 385 386 386 387 -[[image:image-20230201092208-14.png||_mstalt="452283"]] 388 388 385 +[[image:image-20230201092208-14.png]] 389 389 390 -[[image:image-20230201092208-15.png||_mstalt="452660" height="214" width="1140"]] 391 391 388 +[[image:image-20230201092208-15.png||height="214" width="1140"]] 392 392 390 + 393 393 === 2.3.2 Advance SDI-12 Debug command === 394 394 395 395 ... ... @@ -398,20 +398,20 @@ 398 398 399 399 LoRaWAN Downlink: A8 aa xx xx xx xx bb cc 400 400 401 -(% style="color:#037691" %) **aa **(%%): total SDI-12 command length399 +**(% style="color:#037691" %)aa **(%%): total SDI-12 command length 402 402 403 -(% style="color:#037691" %) **xx **(%%): SDI-12 command401 +**(% style="color:#037691" %)xx **(%%): SDI-12 command 404 404 405 -(% style="color:#037691" %) **bb **(%%): Delay to wait for return403 +**(% style="color:#037691" %)bb **(%%): Delay to wait for return 406 406 407 -(% style="color:#037691" %) **cc **(%%): 0: don't uplink return to LoRaWAN, 1: Uplink return to LoRaWAN on FPORT=100405 +**(% style="color:#037691" %)cc **(%%): 0: don't uplink return to LoRaWAN, 1: Uplink return to LoRaWAN on FPORT=100 408 408 409 409 410 -(% style="color:blue" %) **Example: **(%%) AT+CFGDEV =0RC0!,1408 +**(% style="color:blue" %)Example: **(%%) AT+CFGDEV =0RC0!,1 411 411 412 -(% style="color:#037691" %) **0RC0! **(%%): SDI-12 Command,410 +**(% style="color:#037691" %)0RC0! **(%%): SDI-12 Command, 413 413 414 -(% style="color:#037691" %) **1 **(%%): Delay 1 second. ( 0: 810 mini-second)412 +**(% style="color:#037691" %)1 **(%%): Delay 1 second. ( 0: 810 mini-second) 415 415 416 416 Equal Downlink: 0xA8 05 30 52 43 30 21 01 01 417 417 ... ... @@ -419,10 +419,10 @@ 419 419 The following is the display information on the serial port and the server. 420 420 421 421 422 -[[image:image-20230201092355-16.png ||_mstalt="453960"]]420 +[[image:image-20230201092355-16.png]] 423 423 424 424 425 -[[image:image-20230201092355-17.png|| _mstalt="454337"height="426" width="1135"]]423 +[[image:image-20230201092355-17.png||height="426" width="1135"]] 426 426 427 427 428 428 === 2.3.3 Convert ASCII to String === ... ... @@ -433,16 +433,16 @@ 433 433 AT+CONVFORM ( Max length: 80 bytes) 434 434 435 435 436 -(% style="color:blue" %) **Example:**434 +**(% style="color:blue" %)Example:** 437 437 438 438 1) AT+CONVFORM=0, string Convert String from String to ASCII 439 439 440 -[[image:1675214845056-885.png ||_mstalt="297622"]]438 +[[image:1675214845056-885.png]] 441 441 442 442 443 443 2) AT+CONVFORM=1, ASCII Convert ASCII to String. 444 444 445 -[[image:1675214856590-846.png ||_mstalt="297739"]]443 +[[image:1675214856590-846.png]] 446 446 447 447 448 448 === 2.3.4 Define periodically SDI-12 commands and uplink. === ... ... @@ -453,31 +453,31 @@ 453 453 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. 454 454 455 455 456 -* (% style="color:blue" %) **AT Command:**454 +* ** (% style="color:blue" %)AT Command:** 457 457 458 -(% style="color:#037691" %) **AT+COMMANDx=var1,var2,var3,var4.**456 +**(% style="color:#037691" %)AT+COMMANDx=var1,var2,var3,var4.** 459 459 460 -(% style="color:red" %) **var1**(%%): SDI-12 command , for example: 0RC0!458 +**(% style="color:red" %)var1**(%%): SDI-12 command , for example: 0RC0! 461 461 462 -(% style="color:red" %) **var2**(%%): Wait timeout for return. (unit: second)460 +**(% style="color:red" %)var2**(%%): Wait timeout for return. (unit: second) 463 463 464 -(% style="color:red" %) **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!//. 465 465 466 -(% style="color:red" %) **var4**(%%): validation check for return. If return invalid, SDI-12-LB will resend this command. Max3retries.464 +**(% style="color:red" %)var4**(%%): validation check for return. If return invalid, SDI-12-LB will resend this command. Max 2 retries. 467 467 468 -(% style="color:red" %) **0 **(%%) No validation check;466 +**(% style="color:red" %)0 **(%%) No validation check; 469 469 470 -(% style="color:red" %) **1**468 +**(% style="color:red" %)1** (%%) Check if return chars are printable char(0x20 ~~ 0x7E); 471 471 472 -(% style="color:red" %) **2**(%%) Check if there is return from SDI-12 sensor470 +**(% style="color:#red" %)2**(%%) Check if there is return from SDI-12 sensor 473 473 474 -(% style="color:red" %) **3**472 +**(% style="color:red" %)3** (%%) Check if return pass CRC check ( SDI-12 command var1 must include CRC request); 475 475 476 476 477 -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 +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. 478 478 479 479 480 -(% style="color:blue" %) **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. 481 481 482 482 (% border="1" style="background-color:#f7faff; width:436px" %) 483 483 |(% style="width:433px" %)((( ... ... @@ -490,100 +490,102 @@ 490 490 **c**: define the position for valid value. 491 491 ))) 492 492 493 -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 +For example, if return from AT+COMMAND1 is “013METER TER12 112T12-00024895” , Below AT+DATACUT1 will get different result to combine payload: 494 494 495 495 496 496 (% border="1" cellspacing="4" style="background-color:#f7faff; width:510px" %) 497 -| =(% style="width:64px;" %)**AT+DATACUT1 value**|=(% style="width:44px;" %)**Final Result to combine Payload**498 -|(% style="width:1 64px" %)34,1,1+2+3|(% style="width:344px" %)0D 00 01 30 31 33499 -|(% style="width:1 64px" %)34,2,1~~8+12~~16|(% style="width:344px" %)0D 00 01 30 31 33 4D 45 54 45 52 54 45 52 31 32500 -|(% style="width:1 64px" %)34,2,1~~34|(% style="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 0A495 +|(% style="width:170px" %)**AT+DATACUT1 value**|(% style="width:338px" %)**Final Result to combine Payload** 496 +|(% style="width:170px" %)34,1,1+2+3|(% style="width:338px" %)0D 00 01 30 31 33 497 +|(% 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 498 +|(% 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 501 501 502 -* (% style="color:blue" %) **Downlink Payload:**500 +* **(% style="color:blue" %) Downlink Payload:** 503 503 504 -(% style="color:blue" %) **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. 505 505 506 506 507 -(% style="color:red" %) **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.** 508 508 509 509 510 -Format: ** (% style="color:#037691" %)AF MM NN LL XX XX XX XX YY (%%)**508 +Format: ** (% style="color:#037691" %)AF MM NN LL XX XX XX XX YY** 511 511 512 512 Where: 513 513 514 -* (% style="color:#037691" %) **MM **(%%): the AT+COMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F,515 -* (% style="color:#037691" %) **NN **(%%): 1: set the AT+COMMAND value ; 2: set the AT+DATACUT value.516 -* (% style="color:#037691" %) **LL **(%%): The length of AT+COMMAND or AT+DATACUT command517 -* (% style="color:#037691" %) **XX XX XX XX **(%%): AT+COMMAND or AT+DATACUT command518 -* (% style="color:#037691" %) **YY **(%%): If YY=0, SDI-12-LBwill execute the downlink command without uplink; if YY=1, SDI-12-LBwill 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. 519 519 520 -(% style="color:blue" %) **Example:**518 +**(% style="color:blue" %)Example:** 521 521 522 -[[image:image-20230201094129-18.png ||_mstalt="455065"]]520 +[[image:image-20230201094129-18.png]] 523 523 524 524 523 +**(% style="color:blue" %)Clear SDI12 Command** 525 525 526 -(% style="color:blue" %)**Clear SDI12 Command** 527 - 528 528 The AT+COMMANDx and AT+DATACUTx settings are stored in special location, user can use below command to clear them. 529 529 530 530 531 -* (% style="color:#037691" %) **AT Command:**528 +* ** (% style="color:#037691" %)AT Command:** 532 532 533 -(% style="color:#4 f81bd" %)**AT+CMDEAR=mm,nn**530 +**(% style="color:#4F81BD" %)AT+CMDEAR=mm,nn** (%%) mm: start position of erase ,nn: stop position of erase 534 534 535 535 536 536 Etc. AT+CMDEAR=1,10 means erase AT+COMMAND1/AT+DATACUT1 to AT+COMMAND10/AT+DATACUT10 537 537 538 538 539 -* (% style="color:#037691" %) **Downlink Payload:**536 +* **(% style="color:#037691" %) Downlink Payload:** 540 540 541 -(% style="color:#4 f81bd" %)**0x09 aa bb**(%%) same as AT+CMDEAR=aa,bb538 +**(% style="color:#4F81BD" %)0x09 aa bb**(%%) same as AT+CMDEAR=aa,bb 542 542 543 543 544 544 545 -(% style="color:blue" %) **command combination**542 +**(% style="color:blue" %)command combination** 546 546 547 547 Below shows a screen shot how the results combines together to a uplink payload. 548 548 549 -[[image:1675215745275-920.png ||_mstalt="295334"]]546 +[[image:1675215745275-920.png]] 550 550 551 551 552 552 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. 553 553 554 -(% 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 +**(% 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. 555 555 556 556 557 -(% style="color:#4 f81bd" %)**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. 558 558 559 559 560 -[[image:1675215782925-448.png ||_mstalt="297466"]]557 +[[image:1675215782925-448.png]] 561 561 562 562 563 -If AT+ALLDATAMOD=1, (% style="color:#4 f81bd" %)**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. 564 564 565 565 566 566 567 -(% style="color:blue" %) **Compose Uplink**564 +**(% style="color:blue" %)Compose Uplink** 568 568 569 -(% style="color:#4f81bd" %)**AT+DATAUP=0** 570 570 571 - Composethe uplink payload with valuereturnsin sequence and send with **__ASIGNLEUPLINK__**.567 +**(% style="color:#4F81BD" %)AT+DATAUP=0** 572 572 573 - FinalPayload is **__BatteryInfo+PAYVER + VALID ValuefromRETURN1+ValidValuefromRETURN2+ … + RETURNx__**569 +Compose the uplink payload with value returns in sequence and send with A SIGNLE UPLINK. 574 574 571 +Final Payload is Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx 572 + 575 575 Where PAYVER is defined by AT+PAYVER, below is an example screen shot. 576 576 577 577 578 -[[image:1675215828102-844.png ||_mstalt="294645"]]576 +[[image:1675215828102-844.png]] 579 579 580 580 581 -(% style="color:#4 f81bd" %)**AT+DATAUP=1**579 +**(% style="color:#4F81BD" %)AT+DATAUP=1** 582 582 583 -Compose the uplink payload with value returns in sequence and send with **__Multiply UPLINKs__**.581 +Compose the uplink payload with value returns in sequence and send with Multiply UPLINKs. 584 584 585 -Final Payload is __**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA**__583 +Final Payload is 586 586 585 +__**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA**__ 586 + 587 587 1. Battery Info (2 bytes): Battery voltage 588 588 1. PAYVER (1 byte): Defined by AT+PAYVER 589 589 1. PAYLOAD COUNT (1 byte): Total how many uplinks of this sampling. ... ... @@ -590,10 +590,10 @@ 590 590 1. PAYLOAD# (1 byte): Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT) 591 591 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 592 592 593 -[[image:1675215848113-696.png ||_mstalt="296998"]]593 +[[image:1675215848113-696.png]] 594 594 595 595 596 -(% style="color:red" %) **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:** 597 597 598 598 * For AU915/AS923 bands, if UplinkDwell time=0, max 51 bytes for each uplink ( so 51 -5 = 46 max valid date) 599 599 * For AU915/AS923 bands, if UplinkDwell time=1, max 11 bytes for each uplink ( so 11 -5 = 6 max valid date). ... ... @@ -600,13 +600,22 @@ 600 600 * For US915 band, max 11 bytes for each uplink ( so 11 -5 = 6 max valid date). 601 601 * For all other bands: max 51 bytes for each uplink ( so 51 -5 = 46 max valid date). 602 602 603 -(% style="color:red" %) **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;** 604 604 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.**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.** 606 606 607 607 608 -== 2.4 Uplink Payload == 608 +== 2.4 Uplink Payload == 609 609 610 + 611 +Uplink payloads have two types: 612 + 613 +* Distance Value: Use FPORT=2 614 +* Other control commands: Use other FPORT fields. 615 + 616 +The application server should parse the correct value based on FPORT settings. 617 + 618 + 610 610 === 2.4.1 Device Payload, FPORT~=5 === 611 611 612 612 ... ... @@ -614,21 +614,21 @@ 614 614 615 615 Users can also use the downlink command(0x26 01) to ask SDI-12-LB to resend this uplink. 616 616 617 -(% border="1" cellspacing="4" style="background-color:#f7faff; width:4 20px" %)626 +(% border="1" cellspacing="4" style="background-color:#f7faff; width:437px" %) 618 618 |(% colspan="6" style="width:434px" %)**Device Status (FPORT=5)** 619 -|(% style="width:1 14px" %)**Size(bytes)**|(% style="width:39px" %)**1**|(% style="width:80px" %)**2**|(% style="width:89px" %)**1**|(% style="width:59px" %)**1**|(% style="width:37px" %)**2**620 -|(% style="width:1 14px" %)**Value**|(% style="width:39px" %)Sensor Model|(% style="width:80px" %)Firmware Version|(% style="width:89px" %)Frequency Band|(% style="width:59px" %)Sub-band|(% style="width:37px" %)BAT628 +|(% 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** 629 +|(% style="width:102px" %)**Value**|(% style="width:67px" %)Sensor Model|(% style="width:80px" %)Firmware Version|(% style="width:89px" %)Frequency Band|(% style="width:52px" %)Sub-band|(% style="width:44px" %)BAT 621 621 622 622 Example parse in TTNv3 623 623 624 -[[image:1675215946738-635.png ||_mstalt="297778"]]633 +[[image:1675215946738-635.png]] 625 625 626 626 627 -(% style="color:#037691" %) **Sensor Model**(%%): For SDI-12-LB, this value is 0x17636 +**(% style="color:#037691" %)Sensor Model**(%%): For SDI-12-LB, this value is 0x17 628 628 629 -(% style="color:#037691" %) **Firmware Version**(%%): 0x0100, Means: v1.0.0 version638 +**(% style="color:#037691" %)Firmware Version**(%%): 0x0100, Means: v1.0.0 version 630 630 631 -(% style="color:#037691" %) **Frequency Band**:640 +**(% style="color:#037691" %)Frequency Band**: 632 632 633 633 *0x01: EU868 634 634 ... ... @@ -659,7 +659,7 @@ 659 659 *0x0e: MA869 660 660 661 661 662 -(% style="color:#037691" %) **Sub-Band**:671 +**(% style="color:#037691" %)Sub-Band**: 663 663 664 664 AU915 and US915:value 0x00 ~~ 0x08 665 665 ... ... @@ -668,7 +668,7 @@ 668 668 Other Bands: Always 0x00 669 669 670 670 671 -(% style="color:#037691" %) **Battery Info**:680 +**(% style="color:#037691" %)Battery Info**: 672 672 673 673 Check the battery voltage. 674 674 ... ... @@ -686,20 +686,20 @@ 686 686 687 687 * Periodically Uplink: FPORT=2 688 688 689 -(% border="1" cellspacing="4" style="background-color:#f7faff; width:50 0px" %)690 -| =(% style="width:0px;" %)(((698 +(% border="1" cellspacing="4" style="background-color:#f7faff; width:510px" %) 699 +|(% style="width:93px" %)((( 691 691 **Size(bytes)** 692 -)))| =(% style="width:0px;" %)**2**|=(% style="width:90px;" %)**1**|=(% style="width:0px;" %)**Length depends on the return from the commands**701 +)))|(% style="width:83px" %)**2**|(% style="width:70px" %)**1**|(% style="width:234px" %)**Length depends on the return from the commands** 693 693 |(% style="width:93px" %)**Value**|(% style="width:83px" %)((( 694 694 Battery(mV) 695 695 & 696 696 Interrupt_Flag 697 -)))|(% style="width: 91px" %)[[PAYLOAD_VER>>||anchor="H3.6Setthepayloadversion"]]|(% style="width:212px" %)(((706 +)))|(% style="width:70px" %)[[PAYLOAD_VER>>||anchor="H3.6Setthepayloadversion"]]|(% style="width:234px" %)((( 698 698 If the valid payload is too long and exceed the maximum support. 699 699 Payload length in server,server will show payload not provided in the LoRaWAN server. 700 700 ))) 701 701 702 -[[image:1675216282284-923.png ||_mstalt="295633"]]711 +[[image:1675216282284-923.png]] 703 703 704 704 705 705 === 2.4.3 Battery Info === ... ... @@ -715,7 +715,7 @@ 715 715 === 2.4.4 Interrupt Pin === 716 716 717 717 718 -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 +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"]]. 719 719 720 720 **Example:** 721 721 ... ... @@ -726,7 +726,6 @@ 726 726 727 727 === 2.4.5 Payload version === 728 728 729 -The version number of the payload, mainly used for decoding. The default is 01. 730 730 731 731 732 732 === 2.4.6 Decode payload in The Things Network === ... ... @@ -734,7 +734,7 @@ 734 734 735 735 While using TTN network, you can add the payload format to decode the payload. 736 736 737 -[[image:1675216779406-595.png ||_mstalt="298376"]]745 +[[image:1675216779406-595.png]] 738 738 739 739 740 740 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. ... ... @@ -747,91 +747,26 @@ 747 747 748 748 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: 749 749 750 -[[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 +[[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]] 751 751 752 752 753 -== 2.6 Examples To Set SDI commands. == 754 754 755 -=== 2.6.1 Examples 1 === 756 756 763 +== 2.6 Frequency Plans == 757 757 758 -COM port and SDI-12 sensor communication converted to SDI-12-LB and SDI-12 sensor communication. 759 759 760 -[[image:image-20230222143809-1.png||_mstalt="429962" height="564" width="729"]] 761 - 762 - 763 -(% style="color:blue" %)**1) The AT+COMMANDx command is applied to the red arrow part, and sends the SDI12 command to the SDI12 sensor:** 764 - 765 -a. Send the first command and get the first reply: 766 - 767 -(% style="color:#037691" %)**AT+COMMANDx=1I!,0,0,1** 768 - 769 -b. Send the second command and get the second reply: 770 - 771 -(% style="color:#037691" %)**AT+COMMANDx=2I!,0,0,1** 772 - 773 -c. Send the third command and get the third reply: 774 - 775 -(% style="color:#037691" %)**AT+COMMANDx=3I!,0,0,1** 776 - 777 -d. Send the fourth command and get the fourth reply: 778 - 779 -(% style="color:#037691" %)**AT+COMMANDx=4I!,0,0,1** 780 - 781 -e. Send the fifth command plus the sixth command, get the sixth reply: 782 - 783 -(% style="color:#037691" %)**AT+COMMANDx=1M!,2,1,1** 784 - 785 -f. Send the seventh command plus the eighth command, get the eighth reply: 786 - 787 -(% style="color:#037691" %)**AT+COMMANDx=2M!,2,1,1** 788 - 789 -g. Send the ninth command plus the tenth command, get the tenth reply: 790 - 791 -(% style="color:#037691" %)**AT+COMMANDx=3M!,1,1,1** 792 - 793 -h. Send the eleventh command plus the twelfth command, get the twelfth reply: 794 - 795 -(% style="color:#037691" %)**AT+COMMANDx=4M!,1,1,1** 796 - 797 - 798 -(% style="color:blue" %)**2) The AT+DATACUTx command is applied to the green arrow part, receiving and cut out data from the SDI12 sensor:** 799 - 800 -a. The first reply, all 34 characters: ”113TRUEBNERSMT100038220303182331<CR><LF>” 801 - 802 -Cut out all characters: (% _mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=34,2,1~~34**(% style="color:#037691" %); 803 - 804 -b. The sixth reply, all 31 characters:”1+19210+1.04+0.00+22.49+11.75<CR><LF>” 805 - 806 -Cut out all characters: (% _mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=31,2,1~~31**(% style="color:#037691" %); 807 - 808 -c. The eighth reply, all 31 characters:”2+18990+1.08+0.00+22.24+11.80<CR><LF>” 809 - 810 -Cut out all characters: (% _mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=31,2,1~~31**(% style="color:#037691" %); 811 - 812 -d. The tenth reply, all 15 characters:”3-2919.8+24.0<CR><LF>” 813 - 814 -Cut out all characters: (% _mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=15,2,1~~15**(% style="color:#037691" %); 815 - 816 -e. The twelfth reply, all 25 characters:”4+30.8+22.84+4.7+954.38<CR><LF>” 817 - 818 -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”**. 819 - 820 - 821 -== 2.7 Frequency Plans == 822 - 823 - 824 824 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. 825 825 826 826 [[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/]] 827 827 828 828 829 -== 2.8 Firmware Change Log == 830 830 772 +== 2.7 Firmware Change Log == 831 831 774 + 832 832 **Firmware download link:** 833 833 834 -[[https:~~/~~/www.dropbox.com/sh/ qrbgbikb109lkiv/AACBR-v_ZhZAMengcY7Nsa1ja?dl=0>>https://www.dropbox.com/sh/qrbgbikb109lkiv/AACBR-v_ZhZAMengcY7Nsa1ja?dl=0]]777 +[[https:~~/~~/www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0>>url:https://www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0]] 835 835 836 836 837 837 = 3. Configure SDI-12-LB via AT Command or LoRaWAN Downlink = ... ... @@ -839,12 +839,12 @@ 839 839 840 840 Use can configure SDI-12-LB via AT Command or LoRaWAN Downlink. 841 841 842 -* AT Command Connection: See [[FAQ>> ||anchor="H7.FAQ"]].785 +* AT Command Connection: See [[FAQ>>path:#AT_COMMAND]]. 843 843 * LoRaWAN Downlink instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section. 844 844 845 845 There are two kinds of commands to configure SDI-12-LB, they are: 846 846 847 -* (% style="color:blue" %)**General Commands**.790 +* **General Commands**. 848 848 849 849 These commands are to configure: 850 850 ... ... @@ -853,15 +853,15 @@ 853 853 854 854 They are same for all Dragino Device which support DLWS-005 LoRaWAN Stack. These commands can be found on the wiki: 855 855 856 -[[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 +[[http:~~/~~/wiki.dragino.com/index.php?title=End_Device_Downlink_Command>>url:http://wiki.dragino.com/index.php?title=End_Device_Downlink_Command]] 857 857 858 858 859 -* (% style="color:blue" %)**Commands special design for SDI-12-LB**802 +* **Commands special design for SDI-12-LB** 860 860 861 861 These commands only valid for SDI-12-LB, as below: 862 862 863 863 864 -== 3.1 Set Transmit Interval Time == 807 +== 3.1 Set Transmit Interval Time == 865 865 866 866 867 867 Feature: Change LoRaWAN End Node Transmit Interval. ... ... @@ -902,14 +902,14 @@ 902 902 |(% style="width:156px" %)AT+INTMOD=?|(% style="width:187px" %)Show current interrupt mode|(% style="width:165px" %)((( 903 903 0 904 904 OK 905 -the mode is 0 = DisableInterrupt848 +the mode is 0 = No interruption 906 906 ))) 907 907 |(% style="width:156px" %)AT+INTMOD=2|(% style="width:187px" %)((( 908 908 Set Transmit Interval 909 - 0. (Disable Interrupt),910 - ~1. (Trigger by rising and falling edge)911 - 2. (Trigger by falling edge)912 - 3. (Trigger by rising edge)852 +~1. (Disable Interrupt), 853 +2. (Trigger by rising and falling edge) 854 +3. (Trigger by falling edge) 855 +4. (Trigger by rising edge) 913 913 )))|(% style="width:165px" %)OK 914 914 915 915 (% style="color:blue" %)**Downlink Command: 0x06** ... ... @@ -1048,7 +1048,6 @@ 1048 1048 1049 1049 == 3.6 Set the payload version == 1050 1050 1051 - 1052 1052 Feature, Set the payload version. 1053 1053 1054 1054 (% style="color:blue" %)**AT Command: AT+PAYVER** ... ... @@ -1078,7 +1078,7 @@ 1078 1078 1079 1079 The discharge curve is not linear so can’t simply use percentage to show the battery level. Below is the battery performance. 1080 1080 1081 -[[image:1675 234124233-857.png||_mstalt="295035"]]1023 +[[image:1675146710956-626.png]] 1082 1082 1083 1083 1084 1084 Minimum Working Voltage for the SDI-12-LB: ... ... @@ -1111,10 +1111,9 @@ 1111 1111 1112 1112 And the Life expectation in difference case will be shown on the right. 1113 1113 1056 +[[image:1675146895108-304.png]] 1114 1114 1115 -[[image:1675234155374-163.png||_mstalt="294411"]] 1116 1116 1117 - 1118 1118 The battery related documents as below: 1119 1119 1120 1120 * [[Battery Dimension>>https://www.dropbox.com/s/ox5g9njwjle7aw3/LSN50-Battery-Dimension.pdf?dl=0]], ... ... @@ -1121,7 +1121,7 @@ 1121 1121 * [[Lithium-Thionyl Chloride Battery datasheet, Tech Spec>>https://www.dropbox.com/sh/d4oyfnp8o94180o/AABQewCNSh5GPeQH86UxRgQQa?dl=0]] 1122 1122 * [[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]] 1123 1123 1124 -[[image:image-20230 201145019-19.png||_mstalt="453947"]]1065 +[[image:image-20230131145708-3.png]] 1125 1125 1126 1126 1127 1127 === 4.3.1 Battery Note === ... ... @@ -1138,6 +1138,7 @@ 1138 1138 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) 1139 1139 1140 1140 1082 + 1141 1141 = 5. Remote Configure device = 1142 1142 1143 1143 == 5.1 Connect via BLE == ... ... @@ -1158,58 +1158,36 @@ 1158 1158 [[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/]] 1159 1159 1160 1160 1161 -= 7. FAQ = 1162 1162 1163 -= =7.1How to useAT Command toaccess device?==1104 += 7. Order Info = 1164 1164 1165 1165 1166 -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]] 1107 +Part Number: SDI-12-LB-XXX 1108 +XXX: The default frequency band 1167 1167 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 1168 1168 1169 -== 7.2 How to update firmware via UART port? == 1170 1170 1171 1171 1172 -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]] 1173 1173 1174 1174 1175 -== 7.3 How to change the LoRa Frequency Bands/Region? == 1176 1176 1177 1177 1178 -You can follow the instructions for [[how to upgrade image>>doc:Main.Firmware Upgrade Instruction for STM32 base products.WebHome]]. 1179 -When downloading the images, choose the required image file for download. 1125 += 8. Packing Info = 1180 1180 1181 1181 1182 - = 8. OrderInfo =1128 +**Package Includes**: 1183 1183 1184 - 1185 -((( 1186 -(% style="color:blue" %)**Part Number: SDI-12-LB-XXX** 1187 -))) 1188 - 1189 -((( 1190 -XXX: The default frequency band 1191 -))) 1192 - 1193 -((( 1194 -(% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band 1195 -(% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band 1196 -(% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band 1197 -(% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band 1198 -(% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band 1199 -(% style="color:red" %)**US915**(%%): LoRaWAN US915 band 1200 -(% style="color:red" %)**IN865**(%%): LoRaWAN IN865 band 1201 -(% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band 1202 -))) 1203 - 1204 - 1205 -= 9. Packing Info = 1206 - 1207 - 1208 -(% style="color:#037691" %)**Package Includes**: 1209 - 1210 1210 * SDI-12-LB SDI-12 to LoRaWAN Converter x 1 1211 1211 1212 - (% style="color:#037691" %)**Dimension and weight**:1132 +**Dimension and weight**: 1213 1213 1214 1214 * Device Size: cm 1215 1215 * Device Weight: g ... ... @@ -1216,7 +1216,7 @@ 1216 1216 * Package Size / pcs : cm 1217 1217 * Weight / pcs : g 1218 1218 1219 -= 10. Support =1139 += 9. Support = 1220 1220 1221 1221 1222 1222 * 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.
- 1675234155374-163.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -138.2 KB - Content
- image-20230201145019-19.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -82.2 KB - Content
- image-20230201152430-20.jpeg
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -16.5 KB - Content
- image-20230222143809-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -322.1 KB - Content