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, 0 added, 27 removed)
- 1675216779406-595.png
- 1675234124233-857.png
- 1675234155374-163.png
- image-20230201145019-19.png
- image-20230201152430-20.jpeg
- image-20230222143809-1.png
- image-20230426084456-1.png
- image-20230603120127-1.png
- image-20230603120209-2.png
- image-20230603120515-3.png
- image-20230603120648-4.png
- image-20230603120726-5.png
- image-20230603120859-6.png
- image-20230603121606-7.png
- image-20230603121643-8.png
- image-20230603121721-9.png
- image-20230603121752-10.png
- image-20230603121826-11.png
- image-20230603122040-12.png
- image-20230603122109-13.png
- image-20230603122139-14.png
- image-20230603122212-15.png
- image-20230603122248-16.png
- image-20230603122508-17.png
- image-20230603122549-18.png
- image-20230603122623-19.png
- image-20230603122719-20.png
Details
- Page properties
-
- Content
-
... ... @@ -1,9 +1,8 @@ 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 6 -{{toc/}} 7 7 8 8 9 9 ... ... @@ -22,40 +22,32 @@ 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 -))) 24 +The Dragino **SDI-12-LB** is a **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 -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 -))) 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. 36 36 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 -))) 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. 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 -))) 32 +**SDI-12-LB** is powered by **8500mAh Li-SOCI2 battery**, it is designed for long term use up to 5 years. 44 44 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 -))) 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. 48 48 49 49 50 -[[image:image-20230201084414-1.png|| _mstalt="427765"height="464" width="1108"]]37 +[[image:image-20230201084414-1.png||height="464" width="1108"]] 51 51 52 52 40 + 41 + 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 ... ... @@ -68,20 +68,18 @@ 68 68 == 1.3 Specification == 69 69 70 70 71 - (% style="color:#037691" %)**Micro Controller:**62 +**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:**68 +**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:**73 +**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 :**80 +**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:**86 +**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:**92 +**Battery:** 104 104 105 105 * Li/SOCI2 un-chargeable battery 106 106 * Capacity: 8500mAh ... ... @@ -108,7 +108,7 @@ 108 108 * Max continuously current: 130mA 109 109 * Max boost current: 2A, 1 second 110 110 111 - (% style="color:#037691" %)**Power Consumption**100 +**Power Consumption** 112 112 113 113 * Sleep Mode: 5uA @ 3.3v 114 114 * LoRa Transmit Mode: 125mA @ 20dBm, 82mA @ 14dBm ... ... @@ -117,40 +117,41 @@ 117 117 118 118 119 119 120 -[[image:1675212538524-889.png ||_mstalt="298272"]]109 +[[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.115 +**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.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. 129 129 130 130 131 131 == 1.6 Button & LEDs == 132 132 133 133 134 -[[image:1675212633011-651.png ||_mstalt="291538"]]123 +[[image:1675212633011-651.png]] 135 135 136 136 137 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 138 -|=(% 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** 139 -|(% 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" %)((( 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" %)((( 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=" 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" %)(((144 -(% 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.145 -(% style=" background-color:#f2f2f2; color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.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. 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=" 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-NAis in Deep Sleep Mode.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. 149 149 150 150 == 1.7 Pin Mapping == 151 151 152 152 153 -[[image:1675213198663-754.png ||_mstalt="297167"]]143 +[[image:1675213198663-754.png]] 154 154 155 155 156 156 == 1.8 BLE connection == ... ... @@ -170,19 +170,22 @@ 170 170 == 1.9 Mechanical == 171 171 172 172 173 -[[image:image-20230201090139-2.png||_mstalt="428623"]] 174 174 175 -[[image:image-20230201090139-3.png||_mstalt="428987"]] 176 176 177 -[[image:image-20230201090139-4.png||_mstalt="429351"]] 178 178 166 +[[image:image-20230201090139-2.png]] 179 179 168 +[[image:image-20230201090139-3.png]] 169 + 170 +[[image:image-20230201090139-4.png]] 171 + 172 + 180 180 = 2. Configure SDI-12 to connect to LoRaWAN network = 181 181 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 **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 +**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-202304 26084456-1.png||height="241" width="519"]]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 +**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 +**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 +**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 +**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 +**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 +**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. 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,80 +257,79 @@ 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 +==== **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 +**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 +**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 +==== **aM!,aMC!, aM1!- aM9!, aMC1!- aMC9!** ==== 288 288 289 289 290 - (% style="color:red" %)**aM! **(%%): Start Non-Concurrent Measurement287 +**aM! **: Start Non-Concurrent Measurement 291 291 292 - (% style="color:red" %)**aMC! **(%%): Start Non-Concurrent Measurement – Request CRC289 +**aMC! **: Start Non-Concurrent Measurement – Request CRC 293 293 294 - (% style="color:red" %)**aM1!- aM9! **(%%): Additional Measurements291 +**aM1!- aM9! **: Additional Measurements 295 295 296 - (% style="color:red" %)**aMC1!- aMC9!**(%%): Additional Measurements – Request CRC293 +**aMC1!- aMC9!** : Additional Measurements – Request CRC 297 297 298 298 299 299 * AT Command : AT+ADDRM=0,1,0,1 300 - 301 301 * LoRaWAN Downlink(prefix 0xAA01): 0xAA 01 30 01 00 01 302 302 303 303 Downlink:AA 01 aa bb cc dd 304 304 305 - (% style="color:#037691" %)**aa**(%%): SDI-12 sensor address.301 +**aa**: SDI-12 sensor address. 306 306 307 - (% style="color:#037691" %)**bb**(%%): 0: no CRC, 1: request CRC303 +**bb**: 0: no CRC, 1: request CRC 308 308 309 - (% style="color:#037691" %)**cc**(%%): 1-9: Additional Measurement, 0: no additional measurement305 +**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.307 +**dd**: delay (in second) to send **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"]]313 +[[image:image-20230201091630-10.png]] 318 318 319 319 320 -[[image:image-20230201091630-11.png|| _mstalt="450372"height="247" width="1165"]]316 +[[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! **(%%)====320 +==== **aC!, aCC!, aC1!- aC9!, aCC1!- aCC9! ** ==== 325 325 326 326 327 - (% style="color:red" %)**aC!**(%%): Start Concurrent Measurement323 +**aC!** : Start Concurrent Measurement 328 328 329 - (% style="color:red" %)**aCC!**(%%): Start Concurrent Measurement – Request CRC325 +**aCC!** : Start Concurrent Measurement – Request CRC 330 330 331 - (% style="color:red" %)**aC1!- aC9!**(%%): Start Additional Concurrent Measurements327 +**aC1!- aC9!** : Start Additional Concurrent Measurements 332 332 333 - (% style="color:red" %)**aCC1!- aCC9!**(%%): Start Additional Concurrent Measurements – Request CRC329 +**aCC1!- aCC9!** : Start Additional Concurrent Measurements – Request CRC 334 334 335 335 336 336 * AT Command : AT+ADDRC=0,1,0,1 ... ... @@ -339,29 +339,29 @@ 339 339 340 340 Downlink: AA 02 aa bb cc dd 341 341 342 - (% style="color:#037691" %)**aa**(%%): SDI-12 sensor address.338 +**aa**: SDI-12 sensor address. 343 343 344 - (% style="color:#037691" %)**bb**(%%): 0: no CRC, 1: request CRC340 +**bb**: 0: no CRC, 1: request CRC 345 345 346 - (% style="color:#037691" %)**cc**(%%): 1-9: Additional Measurement, 0: no additional measurement342 +**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.344 +**dd**: delay (in second) to send **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"]]350 +[[image:image-20230201091954-12.png]] 355 355 356 356 357 -[[image:image-20230201091954-13.png|| _mstalt="454064"height="203" width="1117"]]353 +[[image:image-20230201091954-13.png||height="203" width="1117"]] 358 358 359 359 356 +(% style="display:none" %) (%%) 360 360 358 +==== **aR0!- aR9!, aRC0!- aRC9!** ==== 361 361 362 -==== (% style="color:blue" %)**aR0!- aR9!, aRC0!- aRC9!**(%%) ==== 363 363 364 - 365 365 Start Continuous Measurement 366 366 367 367 Start Continuous Measurement – Request CRC ... ... @@ -372,49 +372,48 @@ 372 372 373 373 Downlink: AA 03 aa bb cc dd 374 374 375 - (% style="color:#037691" %)**aa**(%%): SDI-12 sensor address.371 +**aa**: SDI-12 sensor address. 376 376 377 - (% style="color:#037691" %)**bb**(%%): 0: no CRC, 1: request CRC373 +**bb**: 0: no CRC, 1: request CRC 378 378 379 - (% style="color:#037691" %)**cc**(%%): 1-9: Additional Measurement, 0: no additional measurement375 +**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.377 +**dd**: delay (in second) to send **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 384 +[[image:image-20230201092208-14.png]] 389 389 390 -[[image:image-20230201092208-15.png||_mstalt="452660" height="214" width="1140"]] 391 391 387 +[[image:image-20230201092208-15.png||height="214" width="1140"]] 392 392 393 -=== 2.3.2 Advance SDI-12 Debug command === 394 394 390 +=== 2.3.2 Advance SDI-12 Debug command === 395 395 392 + 396 396 This command can be used to debug all SDI-12 command. 397 397 398 398 399 -LoRaWAN Downlink: A8 aa xx xx xx xx bb cc dd396 +LoRaWAN Downlink: A8 aa xx xx xx xx bb cc 400 400 401 - (% style="color:#037691" %)**aa **(%%): total SDI-12 command length398 +**aa **: total SDI-12 command length 402 402 403 - (% style="color:#037691" %)**xx **(%%): SDI-12 command400 +**xx **: SDI-12 command 404 404 405 - (% style="color:#037691" %)**bb **(%%): Delay to wait for return402 +**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=100404 +**cc **: 0: don't uplink return to LoRaWAN, 1: Uplink return to LoRaWAN on FPORT=100 408 408 409 -(% style="color:#037691" %)**dd: **(%%) 0: Do not use aD0! command access, 1: use aD0! command access. 410 410 407 +**Example: **AT+CFGDEV =0RC0!,1 411 411 412 - (% style="color:blue" %)**Example1:**(%%)AT+CFGDEV=0RC0!,1409 +**0RC0! **: SDI-12 Command, 413 413 414 - (% style="color:#037691" %)**0RC0!**(%%):SDI-12Command,411 +**1 **: Delay 1 second. ( 0: 810 mini-second) 415 415 416 -(% style="color:#037691" %)**1 **(%%): Delay 1 second. ( 0: 810 mini-second) 417 - 418 418 Equal Downlink: 0xA8 05 30 52 43 30 21 01 01 419 419 420 420 ... ... @@ -421,23 +421,14 @@ 421 421 The following is the display information on the serial port and the server. 422 422 423 423 424 -[[image:image-20230201092355-16.png ||_mstalt="453960"]]419 +[[image:image-20230201092355-16.png]] 425 425 426 426 427 -[[image:image-20230201092355-17.png|| _mstalt="454337"height="426" width="1135"]]422 +[[image:image-20230201092355-17.png||height="426" width="1135"]] 428 428 429 429 430 - (% style="color:blue" %)**Example2: **(%%) AT+CFGDEV =0M!,1,1 or AT+CFGDEV =0C!,1,1425 + 431 431 432 -(% style="color:#037691" %)**0M! **(%%): SDI-12 Command, 433 - 434 -(% style="color:#037691" %)**1 **(%%): Delay 1 second. ( 0: 810 mini-second) 435 - 436 -(% style="color:#037691" %)**1 **(%%):Use aD0! command access. 437 - 438 -Equal Downlink: 0xA8 03 30 4D 21 01 01 01 439 - 440 - 441 441 === 2.3.3 Convert ASCII to String === 442 442 443 443 ... ... @@ -446,18 +446,22 @@ 446 446 AT+CONVFORM ( Max length: 80 bytes) 447 447 448 448 449 - (% style="color:blue" %)**Example:**435 +**Example:** 450 450 451 451 1) AT+CONVFORM=0, string Convert String from String to ASCII 452 452 453 -[[image:1675214845056-885.png ||_mstalt="297622"]]439 +[[image:1675214845056-885.png]] 454 454 455 455 456 456 2) AT+CONVFORM=1, ASCII Convert ASCII to String. 457 457 458 -[[image:1675214856590-846.png ||_mstalt="297739"]]444 +[[image:1675214856590-846.png]] 459 459 460 460 447 + 448 + 449 + 450 + 461 461 === 2.3.4 Define periodically SDI-12 commands and uplink. === 462 462 463 463 ... ... @@ -466,137 +466,139 @@ 466 466 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. 467 467 468 468 469 -* (% style="color:blue" %)**AT Command:**459 +* ** AT Command:** 470 470 471 - (% style="color:#037691" %)**AT+COMMANDx=var1,var2,var3,var4.**461 +**AT+COMMANDx=var1,var2,var3,var4.** 472 472 473 - (% style="color:red" %)**var1**(%%): SDI-12 command , for example: 0RC0!463 +**var1**: SDI-12 command , for example: 0RC0! 474 474 475 - (% style="color:red" %)**var2**(%%): Wait timeout for return. (unit: second)465 +**var2**: Wait timeout for return. (unit: second) 476 476 477 - (% style="color:red" %)**var3**(%%): Whether to send //addrD0!// to get return after var2 timeout. 0: Don't Send //addrD0! //; 1: Send //addrD0!//.467 +**var3**: Whether to send //addrD0!// to get return after var2 timeout. 0: Don't Send //addrD0! //; 1: Send //addrD0!//. 478 478 479 - (% style="color:red" %)**var4**(%%): validation check for return. If return invalid, SDI-12-LB will resend this command. Max3retries.469 +**var4**: validation check for return. If return invalid, SDI-12-LB will resend this command. Max 2 retries. 480 480 481 - (% style="color:red" %)**0 **(%%)No validation check;471 +**0 ** No validation check; 482 482 483 - (% style="color:red" %)**1**(%%)Check if return chars are printable char(0x20 ~~ 0x7E);473 +**1** Check if return chars are printable char(0x20 ~~ 0x7E); 484 484 485 - (% style="color:red" %)**2**(%%)Check if there is return from SDI-12 sensor475 +**2** Check if there is return from SDI-12 sensor 486 486 487 - (% style="color:red" %)**3**(%%)Check if return pass CRC check ( SDI-12 command var1 must include CRC request);477 +**3** Check if return pass CRC check ( SDI-12 command var1 must include CRC request); 488 488 489 489 490 -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.480 +Each AT+COMMANDx is followed by a **AT+DATACUT** command. AT+DATACUT command is used to take the useful string from the SDI-12 sensor so the final payload will have the minimum length to uplink. 491 491 492 492 493 - (% style="color:blue" %)**AT+DATACUTx**(%%): This command defines how to handle the return from AT+COMMANDx, max return length is 100 bytes.483 +**AT+DATACUTx** : This command defines how to handle the return from AT+COMMANDx, max return length is 100 bytes. 494 494 495 -(% border="1" style="width:436px" %) 496 -|(% style=" background-color:#f2f2f2;width:433px" %)(((497 - (% style="color:#0070c0" %)**AT+DATACUTx=a,b,c**485 +(% border="1" style="background-color:#f7faff; width:436px" %) 486 +|(% style="width:433px" %)((( 487 +**AT+DATACUTx=a,b,c** 498 498 499 499 **a**: length for the return of AT+COMMAND 500 500 501 -**b**: 491 +**b**: 1: grab valid value by byte, max 6 bytes. 2: grab valid value by bytes section, max 3 sections. 502 502 503 503 **c**: define the position for valid value. 504 504 ))) 505 505 506 -For example, if return from AT+COMMAND1 is “013METER TER12 112T12-00024895 <CR><LF>” , Below AT+DATACUT1 will get different result to combine payload:496 +For example, if return from AT+COMMAND1 is “013METER TER12 112T12-00024895” , Below AT+DATACUT1 will get different result to combine payload: 507 507 508 508 509 -(% border="1" cellspacing="4" style="background-color:#f 2f2f2; width:510px" %)510 -| =(% style="width:64px;background-color:#D9E2F3;color:#0070C0" %)**AT+DATACUT1 value**|=(% style="width:44px;background-color:#D9E2F3;color:#0070C0" %)**Final Result to combine Payload**511 -|(% style=" background-color:#f2f2f2;width:164px" %)34,1,1+2+3|(% style="background-color:#f2f2f2;width:344px" %)0D 00 01 30 31 33512 -|(% 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 32513 -|(% 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 0A499 +(% border="1" cellspacing="4" style="background-color:#f7faff; width:510px" %) 500 +|(% style="width:170px" %)**AT+DATACUT1 value**|(% style="width:338px" %)**Final Result to combine Payload** 501 +|(% style="width:170px" %)34,1,1+2+3|(% style="width:338px" %)0D 00 01 30 31 33 502 +|(% style="width:170px" %)34,2,1~~8+12~~16|(% style="width:338px" %)0D 00 01 30 31 33 4D 45 54 45 52 54 45 52 31 32 503 +|(% 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 514 514 515 -* (% style="color:blue" %)** Downlink Payload:**505 +* ** Downlink Payload:** 516 516 517 - (% style="color:blue" %)**0xAF**(%%)downlink command can be used to set AT+COMMANDx or AT+DATACUTx.507 +**0xAF** downlink command can be used to set AT+COMMANDx or AT+DATACUTx. 518 518 519 519 520 - (% style="color:red" %)**Note : if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink.**510 +**Note : if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink.** 521 521 522 522 523 -Format: ** (% style="color:#037691" %)AF MM NN LL XX XX XX XX YY(%%)**513 +Format: ** AF MM NN LL XX XX XX XX YY** 524 524 525 525 Where: 526 526 527 -* (% style="color:#037691" %)**MM **(%%): the AT+COMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F,528 -* (% style="color:#037691" %)**NN **(%%): 1: set the AT+COMMAND value ; 2: set the AT+DATACUT value.529 -* (% style="color:#037691" %)**LL **(%%): The length of AT+COMMAND or AT+DATACUT command530 -* (% style="color:#037691" %)**XX XX XX XX **(%%): AT+COMMAND or AT+DATACUT command531 -* (% 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.517 +* **MM **: the AT+COMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F, 518 +* **NN **: 1: set the AT+DATACUT value ; 2: set the AT+DATACUT value. 519 +* **LL **: The length of AT+COMMAND or AT+DATACUT command 520 +* **XX XX XX XX **: AT+COMMAND or AT+DATACUT command 521 +* **YY **: If YY=0, RS485-LN will execute the downlink command without uplink; if YY=1, RS485-LN will execute an uplink after got this command. 532 532 533 -(% style="color:blue" %)**Example:** 534 534 535 - [[image:image-20230201094129-18.png||_mstalt="455065"]]524 +**Example:** 536 536 526 +[[image:image-20230201094129-18.png]] 537 537 538 538 539 - (% style="color:blue" %)**Clear SDI12 Command**529 +**Clear SDI12 Command** 540 540 541 541 The AT+COMMANDx and AT+DATACUTx settings are stored in special location, user can use below command to clear them. 542 542 543 543 544 -* (% style="color:#037691" %)**AT Command:**534 +* ** AT Command:** 545 545 546 - (% style="color:#4f81bd" %)**AT+CMDEAR=mm,nn**(%%)mm: start position of erase ,nn: stop position of erase536 +**~ AT+CMDEAR=mm,nn** mm: start position of erase ,nn: stop position of erase 547 547 548 548 549 549 Etc. AT+CMDEAR=1,10 means erase AT+COMMAND1/AT+DATACUT1 to AT+COMMAND10/AT+DATACUT10 550 550 551 551 552 -* (% style="color:#037691" %)** Downlink Payload:**542 +* ** Downlink Payload:** 553 553 554 - (% style="color:#4f81bd" %)**0x09 aa bb**(%%)same as AT+CMDEAR=aa,bb544 +**~ 0x09 aa bb** same as AT+CMDEAR=aa,bb 555 555 556 556 557 557 558 - (% style="color:blue" %)**command combination**548 +**command combination** 559 559 560 560 Below shows a screen shot how the results combines together to a uplink payload. 561 561 562 -[[image:1675215745275-920.png ||_mstalt="295334"]]552 +[[image:1675215745275-920.png]] 563 563 564 564 565 565 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. 566 566 567 - (% 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.557 +**AT+ALLDATAMOD** will simply get all return and don’t do CRC check as result for SDI-12 command. AT+DATACUTx command has higher priority, if AT+DATACUTx has been set, AT+ALLDATAMOD will be ignore for this SDI-12 command. 568 568 569 569 570 - (% 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.560 +**For example: ** as below photo, AT+ALLDATAMOD=1, but AT+DATACUT1 has been set, AT+DATACUT1 will be still effect the result. 571 571 572 572 573 -[[image:1675215782925-448.png ||_mstalt="297466"]]563 +[[image:1675215782925-448.png]] 574 574 575 575 576 -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.566 +If AT+ALLDATAMOD=1, **FX,X** will be added in the payload, FX specify which command is used and X specify the length of return. for example in above screen, F1 05 means the return is from AT+COMMAND1 and the return is 5 bytes. 577 577 578 578 579 579 580 - (% style="color:blue" %)**Compose Uplink**570 +**Compose Uplink** 581 581 582 - (% style="color:#4f81bd" %)**AT+DATAUP=0**572 +**AT+DATAUP=0** 583 583 584 -Compose the uplink payload with value returns in sequence and send with **__A SIGNLE UPLINK__**.574 +Compose the uplink payload with value returns in sequence and send with A SIGNLE UPLINK. 585 585 586 -Final Payload is **__Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx__**576 +Final Payload is Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx 587 587 588 588 Where PAYVER is defined by AT+PAYVER, below is an example screen shot. 589 589 590 590 591 -[[image:1675215828102-844.png ||_mstalt="294645"]]581 +[[image:1675215828102-844.png]] 592 592 593 593 594 - (% style="color:#4f81bd" %)**AT+DATAUP=1**584 +**AT+DATAUP=1** 595 595 596 -Compose the uplink payload with value returns in sequence and send with **__Multiply UPLINKs__**.586 +Compose the uplink payload with value returns in sequence and send with Multiply UPLINKs. 597 597 598 -Final Payload is __**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA**__588 +Final Payload is 599 599 590 +__**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA**__ 591 + 600 600 1. Battery Info (2 bytes): Battery voltage 601 601 1. PAYVER (1 byte): Defined by AT+PAYVER 602 602 1. PAYLOAD COUNT (1 byte): Total how many uplinks of this sampling. ... ... @@ -603,10 +603,10 @@ 603 603 1. PAYLOAD# (1 byte): Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT) 604 604 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 605 605 606 -[[image:1675215848113-696.png ||_mstalt="296998"]]598 +[[image:1675215848113-696.png]] 607 607 608 608 609 - (% style="color:red" %)**Notice: the Max bytes is according to the max support bytes in different Frequency Bands for lowest SF. As below:**601 +**Notice: the Max bytes is according to the max support bytes in different Frequency Bands for lowest SF. As below:** 610 610 611 611 * For AU915/AS923 bands, if UplinkDwell time=0, max 51 bytes for each uplink ( so 51 -5 = 46 max valid date) 612 612 * For AU915/AS923 bands, if UplinkDwell time=1, max 11 bytes for each uplink ( so 11 -5 = 6 max valid date). ... ... @@ -613,67 +613,76 @@ 613 613 * For US915 band, max 11 bytes for each uplink ( so 11 -5 = 6 max valid date). 614 614 * For all other bands: max 51 bytes for each uplink ( so 51 -5 = 46 max valid date). 615 615 616 - (% style="color:red" %)**When AT+DATAUP=1, the maximum number of segments is 15, and the maximum total number of bytes is 1500;**608 +**~ When AT+DATAUP=1, the maximum number of segments is 15, and the maximum total number of bytes is 1500;** 617 617 618 - (% 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.**610 +**~ When AT+DATAUP=1 and AT+ADR=0, the maximum number of bytes of each payload is determined by the DR value.** 619 619 620 620 621 -== 2.4 Uplink Payload == 613 +== 2.4 Uplink Payload == 622 622 623 -=== 2.4.1 Device Payload, FPORT~=5 === 624 624 616 +Uplink payloads have two types: 625 625 618 +* Distance Value: Use FPORT=2 619 +* Other control commands: Use other FPORT fields. 620 + 621 +The application server should parse the correct value based on FPORT settings. 622 + 623 + 624 +2.4.1 Device Payload, FPORT=5 625 + 626 626 Include device configure status. Once SDI-12-LB Joined the network, it will uplink this message to the server. 627 627 628 + 628 628 Users can also use the downlink command(0x26 01) to ask SDI-12-LB to resend this uplink. 629 629 630 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 631 -|(% colspan="6" style="background-color:#d9e2f3; color:#0070c0" %)**Device Status (FPORT=5)** 632 -|(% 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** 633 -|(% 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 634 634 632 +(% border="1" cellspacing="4" style="background-color:#f7faff; width:437px" %) 633 +|(% colspan="6" style="width:434px" %)**Device Status (FPORT=5)** 634 +|(% style="width:102px" %)**Size (bytes)**|(% style="width:67px" %)**1**|(% style="width:80px" %)**2**|(% style="width:89px" %)**1**|(% style="width:52px" %)**1**|(% style="width:44px" %)**2** 635 +|(% 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 636 + 635 635 Example parse in TTNv3 636 636 637 -[[image:1675215946738-635.png ||_mstalt="297778"]]639 +[[image:1675215946738-635.png]] 638 638 641 +**Sensor Model**: For SDI-12-LB, this value is 0x17 639 639 640 - (% style="color:#037691" %)**SensorModel**(%%):For SDI-12-LB,this valueis0x17643 +**Firmware Version**: 0x0100, Means: v1.0.0 version 641 641 642 - (% style="color:#037691" %)**FirmwareVersion**(%%):0x0100, Means:v1.0.0 version645 +**Frequency Band**: 643 643 644 - (% style="color:#037691" %)**Frequency Band**:647 +*0x01: EU868 645 645 646 -0x0 1:EU868649 +*0x02: US915 647 647 648 -0x0 2:US915651 +*0x03: IN865 649 649 650 -0x0 3:IN865653 +*0x04: AU915 651 651 652 -0x0 4:AU915655 +*0x05: KZ865 653 653 654 -0x0 5:KZ865657 +*0x06: RU864 655 655 656 -0x0 6:RU864659 +*0x07: AS923 657 657 658 -0x0 7: AS923661 +*0x08: AS923-1 659 659 660 -0x0 8: AS923-1663 +*0x09: AS923-2 661 661 662 -0x0 9: AS923-2665 +*0x0a: AS923-3 663 663 664 -0x0 a:AS923-3667 +*0x0b: CN470 665 665 666 -0x0 b:CN470669 +*0x0c: EU433 667 667 668 -0x0 c:EU433671 +*0x0d: KR920 669 669 670 -0x0 d:KR920673 +*0x0e: MA869 671 671 672 -0x0e: MA869 673 673 676 +**Sub-Band**: 674 674 675 -(% style="color:#037691" %)**Sub-Band**: 676 - 677 677 AU915 and US915:value 0x00 ~~ 0x08 678 678 679 679 CN470: value 0x0B ~~ 0x0C ... ... @@ -681,7 +681,7 @@ 681 681 Other Bands: Always 0x00 682 682 683 683 684 - (% style="color:#037691" %)**Battery Info**:685 +**Battery Info**: 685 685 686 686 Check the battery voltage. 687 687 ... ... @@ -690,9 +690,10 @@ 690 690 Ex2: 0x0B49 = 2889mV 691 691 692 692 693 -=== 2.4.2 Uplink Payload, FPORT~=2 === 694 +1. 695 +11. 696 +111. Uplink Payload, FPORT=2 694 694 695 - 696 696 There are different cases for uplink. See below 697 697 698 698 * SDI-12 Debug Command return: FPORT=100 ... ... @@ -699,24 +699,30 @@ 699 699 700 700 * Periodically Uplink: FPORT=2 701 701 702 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %) 703 -|=(% style="width: 90px;background-color:#D9E2F3;color:#0070C0" %)((( 704 -**Size(bytes)** 705 -)))|=(% style="width: 80px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 90px;background-color:#D9E2F3;color:#0070C0" %)**1**|=(% style="width: 240px;background-color:#D9E2F3;color:#0070C0" %)**Length depends on the return from the commands** 706 -|(% style="width:93px" %)**Value**|(% style="width:83px" %)((( 704 +|((( 705 +**Size** 706 + 707 +**(bytes)** 708 +)))|**2**|**1**|**Length depends on the return from the commands** 709 +|**Value**|((( 707 707 Battery(mV) 711 + 708 708 & 713 + 709 709 Interrupt_Flag 710 -)))|(% style="width:91px" %)[[PAYLOAD_VER>>||anchor="H3.6Setthepayloadversion"]]|(% style="width:212px" %)((( 711 -If the valid payload is too long and exceed the maximum support. 715 +)))|[[PAYLOAD_VER>>path:#Probe_Model]]|((( 716 +If the valid payload is too long and exceed the maximum support 717 + 712 712 Payload length in server,server will show payload not provided in the LoRaWAN server. 713 713 ))) 714 714 715 -[[image: 1675216282284-923.png||_mstalt="295633"]]721 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image034.png]] 716 716 717 717 718 -=== 2.4.3 Battery Info === 719 719 725 +1. 726 +11. 727 +111. Battery Info 720 720 721 721 Check the battery voltage for SDI-12-LB. 722 722 ... ... @@ -725,12 +725,14 @@ 725 725 Ex2: 0x0B49 = 2889mV 726 726 727 727 728 -=== 2.4.4 Interrupt Pin === 736 +1. 737 +11. 738 +111. Interrupt Pin 729 729 740 +This data field shows if this packet is generated by **Interrupt Pin** or not. [[Click here>>path:#Int_mod]] for the hardware and software set up. Note: The Internet Pin is a separate pin in the screw terminal. See [[pin mapping>>path:#pins]]. 730 730 731 -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"]]. 732 732 733 - **Example:**743 +Example: 734 734 735 735 Ex1: 0x0B45:0x0B&0x80= 0x00 Normal uplink packet. 736 736 ... ... @@ -737,282 +737,242 @@ 737 737 Ex2: 0x8B49:0x8B&0x80= 0x80 Interrupt Uplink Packet. 738 738 739 739 740 -=== 2.4.5 Payload version === 750 +1. 751 +11. 752 +111. Payload version 741 741 742 742 743 -The version number of the payload, mainly used for decoding. The default is 01. 744 744 745 745 746 -=== 2.4.6 Decode payload in The Things Network === 747 747 758 +1. 759 +11. 760 +111. Decode payload in The Things Network 748 748 749 749 While using TTN network, you can add the payload format to decode the payload. 750 750 751 -[[image: 1675216779406-595.png||_mstalt="298376"]]764 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image035.png]] 752 752 753 753 754 754 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. 755 755 756 -SDI-12-LB TTN Payload Decoder: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>url:https://github.com/dragino/dragino-end-node-decoder]] 757 757 770 +下面的解码生成超链接放进去. 758 758 759 - == 2.5 UplinkInterval==772 +function Decoder(bytes, port) { 760 760 774 + if(port==5) 761 761 762 - TheSDI-12-LBby default uplink the sensor data every 20 minutes. User can change this interval by AT Command or LoRaWAN Downlink Command. See this link:776 + { 763 763 764 - [[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]]778 + var freq_band; 765 765 780 + var sub_band; 766 766 767 - ==2.6ExamplesToSet SDI commands==782 + var sensor; 768 768 769 -=== 2.6.1 Examples 1 ~-~- General Example === 770 770 785 + if(bytes[0]==0x17) 771 771 772 - COM portandSDI-12sensorcommunication converted toSDI-12-LBand SDI-12 sensor communication.787 + sensor= "SDI12-LB"; 773 773 774 -[[image:image-20230222143809-1.png||_mstalt="429962" height="564" width="729"]] 775 775 790 + var firm_ver= (bytes[1]&0x0f)+'.'+(bytes[2]>>4&0x0f)+'.'+(bytes[2]&0x0f); 776 776 777 -(% style="color:blue" %)**1) The AT+COMMANDx command is applied to the red arrow part, and sends the SDI12 command to the SDI12 sensor:** 778 778 779 - a.Sendthefirstcommand and get the firstreply:793 + if(bytes[3]==0x01) 780 780 781 - (%style="color:#037691"%)**AT+COMMANDx=1I!,0,0,1**795 + freq_band="EU868"; 782 782 783 - b.Sendthesecondcommandandgetthecondreply:797 + else if(bytes[3]==0x02) 784 784 785 - (%style="color:#037691"%)**AT+COMMANDx=2I!,0,0,1**799 + freq_band="US915"; 786 786 787 - c.Sendthethirdcommandandgetthethird reply:801 + else if(bytes[3]==0x03) 788 788 789 - (%style="color:#037691"%)**AT+COMMANDx=3I!,0,0,1**803 + freq_band="IN865"; 790 790 791 - d.Sendthefourthcommandandgetthe fourth reply:805 + else if(bytes[3]==0x04) 792 792 793 - (%style="color:#037691"%)**AT+COMMANDx=4I!,0,0,1**807 + freq_band="AU915"; 794 794 795 - e.Sendthefifthcommandplusthesixth command, get thesixth reply:809 + else if(bytes[3]==0x05) 796 796 797 - (%style="color:#037691"%)**AT+COMMANDx=1M!,2,1,1**811 + freq_band="KZ865"; 798 798 799 - f.Sendtheseventhcommandplustheeighth command, getthe eighth reply:813 + else if(bytes[3]==0x06) 800 800 801 - (%style="color:#037691"%)**AT+COMMANDx=2M!,2,1,1**815 + freq_band="RU864"; 802 802 803 - g.Sendtheninthcommandplusthetenth command, getthetenth reply:817 + else if(bytes[3]==0x07) 804 804 805 - (%style="color:#037691" %)**AT+COMMANDx=3M!,1,1,1**819 + freq_band="AS923"; 806 806 807 - h.Sendtheeleventhcommandplusthetwelfth command, getthe twelfth reply:821 + else if(bytes[3]==0x08) 808 808 809 - (%style="color:#037691"%)**AT+COMMANDx=4M!,1,1,1**823 + freq_band="AS923_1"; 810 810 825 + else if(bytes[3]==0x09) 811 811 812 - (%style="color:blue"%)**2) TheAT+DATACUTxcommandisappliedtothe greenarrow part, receiving andcut out data from theSDI12sensor:**827 + freq_band="AS923_2"; 813 813 814 - a.Thefirstreply,all34characters: ”113TRUEBNERSMT100038220303182331<CR><LF>”829 + else if(bytes[3]==0x0A) 815 815 816 - Cutoutallcharacters:(%_mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=34,2,1~~34**(% style="color:#037691"%);831 + freq_band="AS923_3"; 817 817 818 - b. Thesixthreply,all31characters:”1+19210+1.04+0.00+22.49+11.75<CR><LF>”833 + else if(bytes[3]==0x0F) 819 819 820 - Cutoutallcharacters:(%_mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=31,2,1~~31**(% style="color:#037691" %);835 + freq_band="AS923_4"; 821 821 822 - c. Theeighthreply,all31characters:”2+18990+1.08+0.00+22.24+11.80<CR><LF>”837 + else if(bytes[3]==0x0B) 823 823 824 - Cutoutallcharacters:(%_mstmutation="1"style="color:#037691"%)**AT+ALLDATAMOD=1orAT+DATACUTx=31,2,1~~31**(% style="color:#037691"%);839 + freq_band="CN470"; 825 825 826 - d. Thetenthreply,all15characters:”3-2919.8+24.0<CR><LF>”841 + else if(bytes[3]==0x0C) 827 827 828 - Cutoutallcharacters:(%_mstmutation="1"style="color:#037691"%)**AT+ALLDATAMOD=1orAT+DATACUTx=15,2,1~~15**(% style="color:#037691"%);843 + freq_band="EU433"; 829 829 830 - e. Thetwelfthreply,all25characters:”4+30.8+22.84+4.7+954.38<CR><LF>”845 + else if(bytes[3]==0x0D) 831 831 832 - Partialcut,thecutsensoraddressandthefirst two parameters:(% style="color:#037691" %)**AT+DATACUTx=25,2,1~~12, cut out the character field ” 4+30.8+22.84”**.847 + freq_band="KR920"; 833 833 849 + else if(bytes[3]==0x0E) 834 834 835 - ===2.6.2Example2~-~-ConnecttoHygrovue10===851 + freq_band="MA869"; 836 836 837 -==== 2.6.2.1 Reference Manual and Command ==== 838 838 854 + if(bytes[4]==0xff) 839 839 840 - *[[Hygrovue10ProductPage>>https://www.campbellsci.com/hygrovue10]]856 + sub_band="NULL"; 841 841 842 - *CommandstobeusedinPCandoutput.858 + else 843 843 844 - ~1.checkdeviceaddress860 + sub_band=bytes[4]; 845 845 846 -2. change device address 847 847 848 - 3.checkdeviceID863 + var bat= (bytes[5]<<8 | bytes[6])/1000; 849 849 850 -4. start measure 851 851 852 - 5.GetMeausreresult866 + return { 853 853 854 - [[image:image-20230603120209-2.png||height="281" width="267"]]868 + SENSOR_MODEL:sensor, 855 855 870 + FIRMWARE_VERSION:firm_ver, 856 856 857 - ====2.6.2.2HardwareConnectiontoSDI-12-LB====872 + FREQUENCY_BAND:freq_band, 858 858 874 + SUB_BAND:sub_band, 859 859 860 - [[image:image-20230603120515-3.png]]876 + BAT:bat, 861 861 878 + } 862 862 863 - ====2.6.2.3Commands set in SDI-12-LB and uplink payload ====880 + } 864 864 882 + else if(port==100) 865 865 866 - [[image:image-20230603120648-4.png]]884 + { 867 867 868 - [[image:image-20230603120726-5.png]]886 + var datas_sum={}; 869 869 888 + for(var j=0;j<bytes.length;j++) 870 870 871 - **DatainTTN:**890 + { 872 872 873 - [[image:image-20230603120859-6.png||height="118"width="1285"]]892 + var datas= String.fromCharCode(bytes[j]); 874 874 894 + if(j=='0') 875 875 876 - ===(%id="cke_bm_1172015S"style="display:none"%)(%%)2.6.3Example3~-~-Connectto SIL-400===896 + datas_sum.datas_sum=datas; 877 877 878 - ====2.6.3.1ReferenceManualandCommand====898 + else 879 879 900 + datas_sum.datas_sum+=datas; 880 880 881 - *[[SIL-400ProductPage>>https://www.apogeeinstruments.com/sil-411-commercial-grade-sdi-12-digital-output-standard-field-of-view-infrared-radiometer-sensor/]]902 + } 882 882 883 -* Commands to be used in PC and output. 884 884 885 - ~1.checkdeviceaddress905 + return datas_sum; 886 886 887 - 2.changedevice address907 + } 888 888 889 - 3.checkdeviceID909 + else 890 890 891 - 4.startmeasure911 + { 892 892 893 - 5.GetMeausreresult913 + var decode={}; 894 894 895 - [[image:image-20230603121606-7.png||height="242"width="307"]]915 + decode.EXTI_Trigger= (bytes[0] & 0x80)? "TRUE":"FALSE"; 896 896 917 + decode.BatV= ((bytes[0]<<8 | bytes[1])&0x7FFF)/1000; 897 897 898 - ====2.6.3.2HardwareConnectionto SDI-12-LB ====919 + decode.Payver= bytes[2]; 899 899 921 + for(var i=3;i<bytes.length;i++) 900 900 901 - [[image:image-20230603121643-8.png||height="442"width="656"]]923 + { 902 902 925 + var data= String.fromCharCode(bytes[i]); 903 903 904 - ====2.6.3.3CommandssetinSDI-12-LBanduplinkpayload====927 + if(i=='3') 905 905 929 + decode.data_sum=data; 906 906 907 - [[image:image-20230603121721-9.png]]931 + else 908 908 909 - [[image:image-20230603121752-10.png]]933 + decode.data_sum+=data; 910 910 911 - DatainTTN:935 + } 912 912 913 - [[image:image-20230603121826-11.png||height="155"width="1104"]]937 + return decode; 914 914 939 + } 915 915 916 916 917 - === (% id="cke_bm_1172015S" style="display:none" %) (%%)2.6.4 Example 4 ~-~- Connect to TEROS-12 ===942 +} 918 918 919 -==== 2.6.4.1 Reference Manual and Command ==== 920 920 945 +1. 946 +11. Uplink Interval 921 921 922 - * [[TEROS-12ProductPage>>https://www.metergroup.com/en/meter-environment/products/teros-12-soil-moisture-sensor]]948 +The SDI-12-LB by default uplink the sensor data every 20 minutes. User can change this interval by AT Command or LoRaWAN Downlink Command. See this link: 923 923 924 - *Commandstobe usedPCutput.950 +[[http:~~/~~/wiki.dragino.com/index.php?title=End_Device_AT_Commands_and_Downlink_Commands#Change_Uplink_Interval>>url:http://wiki.dragino.com/index.php?title=End_Device_AT_Commands_and_Downlink_Commands#Change_Uplink_Interval]] 925 925 926 -1.check device address 927 927 928 -2.change device address 929 929 930 -3.check device ID 954 +1. 955 +11. Frequency Plans 931 931 932 - 4.startmeasure957 +The SDI12-LB uses OTAA mode and below frequency plans by default. If user want to use it with different frequency plan, please refer the AT command sets. 933 933 934 -5.Get Meausre result 935 935 936 -[[i mage:image-20230603122248-16.png||height="196"width="198"]]960 +[[https:~~/~~/wiki.dragino.com/index.php?title=End_Device_Frequency_Band>>url:https://wiki.dragino.com/index.php?title=End_Device_Frequency_Band]] 937 937 938 938 939 -==== 2.6.4.2 Hardware Connection to SDI-12-LB ==== 940 940 964 +1. 965 +11. Firmware Change Log 941 941 942 -[[image:image-20230603122212-15.png||height="502" width="667"]] 943 - 944 - 945 -==== 2.6.4.3 Commands set in SDI-12-LB and uplink payload ==== 946 - 947 -[[image:image-20230603122040-12.png]] 948 - 949 -[[image:image-20230603122109-13.png||height="469" width="762"]] 950 - 951 - 952 -**Data in TTN:** 953 - 954 -[[image:image-20230603122139-14.png||height="148" width="1128"]] 955 - 956 - 957 -=== (% id="cke_bm_1489640S" style="display:none" %) (% id="cke_bm_1172015S" style="display:none" %) (%%)2.6.5 Example 5 ~-~- Connect to SIL-400/TEROS-12 & Hygrovue10 === 958 - 959 -==== 2.6.5.1 Important Notice! ==== 960 - 961 - 962 -* The product page and reference command see above example 2,3,4 963 - 964 -* All of these SDI-12 sensors use the same address (address 0) by default. So we need to change their address to different address, by using **aAb!** command. See above example. 965 - 966 -* The sensor needs to be powered to a steady statue. So the 12VT time need to be set to the maximum stable time for the sensors. in this example, it is 13 seconds. 967 - 968 -* If these SDI-12 sensors are powered by external power source. It will add 300uA in the total current in SDI-12-LB. 969 - 970 -==== 2.6.5.2 Hardware Connection to SDI-12-LB ==== 971 - 972 - 973 -[[image:image-20230603122508-17.png||height="526" width="742"]] 974 - 975 - 976 -==== 2.6.5.3 Commands set in SDI-12-LB and uplink payload ==== 977 - 978 - 979 -[[image:image-20230603122549-18.png]] 980 - 981 -[[image:image-20230603122623-19.png||height="483" width="1121"]] 982 - 983 - 984 -**Data in TTN:** 985 - 986 -[[image:image-20230603122719-20.png||height="151" width="1179"]] 987 - 988 - 989 -== 2.7 Frequency Plans == 990 - 991 - 992 -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. 993 - 994 -[[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/]] 995 - 996 - 997 -== 2.8 Firmware Change Log == 998 - 999 - 1000 1000 **Firmware download link:** 1001 1001 1002 -[[https:~~/~~/www.dropbox.com/sh/ qrbgbikb109lkiv/AACBR-v_ZhZAMengcY7Nsa1ja?dl=0>>https://www.dropbox.com/sh/qrbgbikb109lkiv/AACBR-v_ZhZAMengcY7Nsa1ja?dl=0]]969 +[[https:~~/~~/www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0>>url:https://www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0]] 1003 1003 1004 1004 1005 -= 3. Configure SDI-12-LB via AT Command or LoRaWAN Downlink = 1006 1006 973 +1. Configure SDI-12-LB via AT Command or LoRaWAN Downlink 1007 1007 1008 1008 Use can configure SDI-12-LB via AT Command or LoRaWAN Downlink. 1009 1009 1010 -* AT Command Connection: See [[FAQ>> ||anchor="H7.FAQ"]].1011 -* LoRaWAN Downlink instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.977 +* AT Command Connection: See [[FAQ>>path:#AT_COMMAND]]. 978 +* LoRaWAN Downlink instruction for different platforms: 1012 1012 980 +[[http:~~/~~/wiki.dragino.com/index.php?title=Main_Page#Use_Note_for_Server>>url:http://wiki.dragino.com/index.php?title=Main_Page#Use_Note_for_Server]] 981 + 982 + 1013 1013 There are two kinds of commands to configure SDI-12-LB, they are: 1014 1014 1015 -* (% style="color:blue" %)**General Commands**.985 +* **General Commands**. 1016 1016 1017 1017 These commands are to configure: 1018 1018 ... ... @@ -1021,312 +1021,378 @@ 1021 1021 1022 1022 They are same for all Dragino Device which support DLWS-005 LoRaWAN Stack. These commands can be found on the wiki: 1023 1023 1024 -[[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/]]994 +[[http:~~/~~/wiki.dragino.com/index.php?title=End_Device_Downlink_Command>>url:http://wiki.dragino.com/index.php?title=End_Device_Downlink_Command]] 1025 1025 1026 1026 1027 -* (% style="color:blue" %)**Commands special design for SDI-12-LB**997 +* **Commands special design for SDI-12-LB** 1028 1028 1029 1029 These commands only valid for SDI-12-LB, as below: 1030 1030 1031 1031 1032 -== 3.1 Set Transmit Interval Time == 1033 1033 1003 +1. 1004 +11. Set Transmit Interval Time 1034 1034 1035 1035 Feature: Change LoRaWAN End Node Transmit Interval. 1036 1036 1037 - (% style="color:blue" %)**AT Command: AT+TDC**1008 +**AT Command: AT+TDC** 1038 1038 1039 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 1040 -|=(% 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** 1041 -|(% style="background-color:#f2f2f2; width:157px" %)AT+TDC=?|(% style="background-color:#f2f2f2; width:166px" %)Show current transmit Interval|(% style="background-color:#f2f2f2" %)((( 1010 +|**Command Example**|**Function**|**Response** 1011 +|AT+TDC=?|Show current transmit Interval|((( 1042 1042 30000 1013 + 1043 1043 OK 1015 + 1044 1044 the interval is 30000ms = 30s 1045 1045 ))) 1046 -| (% style="background-color:#f2f2f2; width:157px" %)AT+TDC=60000|(% style="background-color:#f2f2f2; width:166px" %)Set Transmit Interval|(% style="background-color:#f2f2f2" %)(((1018 +|AT+TDC=60000|Set Transmit Interval|((( 1047 1047 OK 1020 + 1048 1048 Set transmit interval to 60000ms = 60 seconds 1049 1049 ))) 1050 1050 1051 - (% style="color:blue" %)**Downlink Command: 0x01**1024 +**Downlink Command: 0x01** 1052 1052 1053 - 1054 1054 Format: Command Code (0x01) followed by 3 bytes time value. 1055 1055 1056 -If the downlink payload=0100003C, it means set the END Node 's Transmit Interval to 0x00003C=60(S), while type code is 01.1028 +If the downlink payload=0100003C, it means set the END Node’s Transmit Interval to 0x00003C=60(S), while type code is 01. 1057 1057 1058 -* Example 1: Downlink Payload: 0100001E 1059 -* Example 2: Downlink Payload: 0100003C 1030 +* Example 1: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds 1031 +* Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 1060 1060 1061 -== 3.2 Set Interrupt Mode == 1033 +1. 1034 +11. Set Interrupt Mode 1062 1062 1063 - 1064 1064 Feature, Set Interrupt mode for GPIO_EXIT. 1065 1065 1066 - (% style="color:blue" %)**AT Command: AT+INTMOD**1038 +**AT Command: AT+INTMOD** 1067 1067 1068 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 1069 -|=(% 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** 1070 -|(% style="background-color:#f2f2f2; width:154px" %)AT+INTMOD=?|(% style="background-color:#f2f2f2; width:196px" %)Show current interrupt mode|(% style="background-color:#f2f2f2; width:157px" %)((( 1040 +|**Command Example**|**Function**|**Response** 1041 +|AT+INTMOD=?|Show current interrupt mode|((( 1071 1071 0 1043 + 1072 1072 OK 1073 -the mode is 0 =Disable Interrupt 1045 + 1046 +the mode is 0 = No interruption 1074 1074 ))) 1075 -| (% style="background-color:#f2f2f2; width:154px" %)AT+INTMOD=2|(% style="background-color:#f2f2f2; width:196px" %)(((1048 +|AT+INTMOD=2|((( 1076 1076 Set Transmit Interval 1077 -0. (Disable Interrupt), 1078 -~1. (Trigger by rising and falling edge) 1079 -2. (Trigger by falling edge) 1080 -3. (Trigger by rising edge) 1081 -)))|(% style="background-color:#f2f2f2; width:157px" %)OK 1082 1082 1083 -(% style="color:blue" %)**Downlink Command: 0x06** 1051 +1. (Disable Interrupt), 1052 +1. (Trigger by rising and falling edge), 1053 +1. (Trigger by falling edge) 1054 +1. (Trigger by rising edge) 1055 +)))|OK 1084 1084 1057 +**Downlink Command: 0x06** 1058 + 1085 1085 Format: Command Code (0x06) followed by 3 bytes. 1086 1086 1087 1087 This means that the interrupt mode of the end node is set to 0x000003=3 (rising edge trigger), and the type code is 06. 1088 1088 1089 -* Example 1: Downlink Payload: 06000000 1090 -* Example 2: Downlink Payload: 06000003 1063 +* Example 1: Downlink Payload: 06000000 ~/~/ Turn off interrupt mode 1064 +* Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger 1091 1091 1092 -== 3.3 Set the output time == 1066 +1. 1067 +11. Set the output time 1093 1093 1094 - 1095 1095 Feature, Control the output 3V3 , 5V or 12V. 1096 1096 1097 - (% style="color:blue" %)**AT Command: AT+3V3T**1071 +**AT Command: AT+3V3T** 1098 1098 1099 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:474px" %) 1100 -|=(% 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** 1101 -|(% style="background-color:#f2f2f2; width:154px" %)AT+3V3T=?|(% style="background-color:#f2f2f2; width:201px" %)Show 3V3 open time.|(% style="background-color:#f2f2f2; width:116px" %)((( 1073 +|**Command Example**|**Function**|**Response** 1074 +|AT+3V3T=?|Show 3V3 open time.|((( 1102 1102 0 1076 + 1103 1103 OK 1104 1104 ))) 1105 -| (% 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" %)(((1079 +|AT+3V3T=0|Normally open 3V3 power supply.|((( 1106 1106 OK 1081 + 1107 1107 default setting 1108 1108 ))) 1109 -| (% 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" %)(((1084 +|AT+3V3T=1000|Close after a delay of 1000 milliseconds.|((( 1110 1110 OK 1086 + 1087 + 1111 1111 ))) 1112 -| (% 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" %)(((1089 +|AT+3V3T=65535|Normally closed 3V3 power supply.|((( 1113 1113 OK 1091 + 1092 + 1114 1114 ))) 1115 1115 1116 - (% style="color:blue" %)**AT Command: AT+5VT**1095 +**AT Command: AT+5VT** 1117 1117 1118 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:470px" %) 1119 -|=(% 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** 1120 -|(% style="background-color:#f2f2f2; width:155px" %)AT+5VT=?|(% style="background-color:#f2f2f2; width:196px" %)Show 5V open time.|(% style="background-color:#f2f2f2; width:114px" %)((( 1097 +|**Command Example**|**Function**|**Response** 1098 +|AT+5VT=?|Show 5V open time.|((( 1121 1121 0 1100 + 1122 1122 OK 1123 1123 ))) 1124 -| (% 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" %)(((1103 +|AT+5VT=0|Normally closed 5V power supply.|((( 1125 1125 OK 1105 + 1126 1126 default setting 1127 1127 ))) 1128 -| (% 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" %)(((1108 +|AT+5VT=1000|Close after a delay of 1000 milliseconds.|((( 1129 1129 OK 1110 + 1111 + 1130 1130 ))) 1131 -| (% 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" %)(((1113 +|AT+5VT=65535|Normally open 5V power supply.|((( 1132 1132 OK 1115 + 1116 + 1133 1133 ))) 1134 1134 1135 - (% style="color:blue" %)**AT Command: AT+12VT1119 +**AT Command: AT+12VT** 1136 1136 1137 -(% style="color:blue" %)**(The v1.2 version is enabled for 1 second by default, and the version below v1.2 is disabled by default)** 1138 - 1139 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:443px" %) 1140 -|=(% 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** 1141 -|(% style="background-color:#f2f2f2; width:156px" %)AT+12VT=?|(% style="background-color:#f2f2f2; width:199px" %)Show 12V open time.|(% style="background-color:#f2f2f2; width:83px" %)((( 1121 +|**Command Example**|**Function**|**Response** 1122 +|AT+12VT=?|Show 12V open time.|((( 1142 1142 0 1124 + 1143 1143 OK 1144 1144 ))) 1145 -| (% 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" %)OK1146 -| (% 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" %)(((1127 +|AT+12VT=0|Normally closed 12V power supply.|OK 1128 +|AT+12VT=500|Close after a delay of 500 milliseconds.|((( 1147 1147 OK 1130 + 1131 + 1148 1148 ))) 1149 1149 1150 - (% style="color:blue" %)**Downlink Command: 0x07**1134 +**Downlink Command: 0x07** 1151 1151 1152 1152 Format: Command Code (0x07) followed by 3 bytes. 1153 1153 1154 1154 The first byte is which power, the second and third bytes are the time to turn on. 1155 1155 1156 -* Example 1: Downlink Payload: 070101F4 **~-~-->**1157 -* Example 2: Downlink Payload: 0701FFFF **~-~-->**AT+3V3T=655351158 -* Example 3: Downlink Payload: 070203E8 **~-~-->**AT+5VT=10001159 -* Example 4: Downlink Payload: 07020000 **~-~-->**AT+5VT=01160 -* Example 5: Downlink Payload: 070301F4 **~-~-->**AT+12VT=5001161 -* Example 6: Downlink Payload: 07030000 **~-~-->**AT+12VT=01140 +* Example 1: Downlink Payload: 070101F4 -> AT+3V3T=500 1141 +* Example 2: Downlink Payload: 0701FFFF -> AT+3V3T=65535 1142 +* Example 3: Downlink Payload: 070203E8 -> AT+5VT=1000 1143 +* Example 4: Downlink Payload: 07020000 -> AT+5VT=0 1144 +* Example 5: Downlink Payload: 070301F4 -> AT+12VT=500 1145 +* Example 6: Downlink Payload: 07030000 -> AT+12VT=0 1162 1162 1163 -== 3.4 Set the all data mode == 1147 +1. 1148 +11. Set the all data mode 1164 1164 1165 - 1166 1166 Feature, Set the all data mode. 1167 1167 1168 - (% style="color:blue" %)**AT Command: AT+ALLDATAMOD**1152 +**AT Command: AT+ALLDATAMOD** 1169 1169 1170 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:437px" %) 1171 -|=(% style="background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="background-color:#D9E2F3;color:#0070C0" %)**Response** 1172 -|(% style="background-color:#f2f2f2" %)AT+ALLDATAMOD=?|(% style="background-color:#f2f2f2" %)Show current all data mode|(% style="background-color:#f2f2f2" %)((( 1154 +|**Command Example**|**Function**|**Response** 1155 +|AT+ALLDATAMOD=?|Show current all data mode|((( 1173 1173 0 1157 + 1158 + 1174 1174 OK 1175 1175 ))) 1176 -| (% style="background-color:#f2f2f2" %)AT+ALLDATAMOD=1|(% style="background-color:#f2f2f2" %)Set all data mode is 1.|(% style="background-color:#f2f2f2" %)OK1161 +|AT+ALLDATAMOD=1|Set all data mode is 1.|OK 1177 1177 1178 - (% style="color:blue" %)**Downlink Command: 0xAB**1163 +**Downlink Command: 0xAB** 1179 1179 1180 1180 Format: Command Code (0xAB) followed by 1 bytes. 1181 1181 1182 -* Example 1: Downlink Payload: AB 00 1183 -* Example 2: Downlink Payload: AB 01 1167 +* Example 1: Downlink Payload: AB 00 ~/~/ AT+ALLDATAMOD=0 1168 +* Example 2: Downlink Payload: AB 01 ~/~/ AT+ALLDATAMOD=1 1184 1184 1185 -== 3.5 Set the splicing payload for uplink == 1170 +1. 1171 +11. Set the splicing payload for uplink 1186 1186 1187 - 1188 1188 Feature, splicing payload for uplink. 1189 1189 1190 - (% style="color:blue" %)**AT Command: AT+DATAUP**1175 +**AT Command: AT+DATAUP** 1191 1191 1192 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 1193 -|=(% 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** 1194 -|(% 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" %)((( 1177 +|**Command Example**|**Function**|**Response** 1178 +|AT+DATAUP =?|Show current splicing payload for uplink mode|((( 1195 1195 0 1180 + 1181 + 1196 1196 OK 1197 1197 ))) 1198 -| (% style="background-color:#f2f2f2; width:154px" %)AT+DATAUP =0|(% style="background-color:#f2f2f2; width:266px" %)(((1184 +|AT+DATAUP =0|((( 1199 1199 Set splicing payload for uplink mode is 0. 1200 -)))|(% style="background-color:#f2f2f2" %)((( 1186 + 1187 + 1188 +)))|((( 1201 1201 OK 1190 + 1191 + 1202 1202 ))) 1203 -|(% 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 1204 -|(% style="background-color:#f2f2f2; width:154px" %)AT+DATAUP =1,20000|(% style="background-color:#f2f2f2; width:266px" %)((( 1205 -Set splicing payload for uplink mode is 1, and the uplink interval of each splice to 20000 milliseconds. 1206 -)))|(% style="background-color:#f2f2f2" %)OK 1193 +|AT+DATAUP =1|Set splicing payload for uplink mode is 1 , and the each splice uplink is sent sequentially.|OK 1194 +|AT+DATAUP =1,20000|((( 1195 +Set splicing payload for uplink mode is 1, and the uplink interval of each splice to 20000 milliseconds. 1207 1207 1208 -(% style="color:blue" %)**Downlink Command: 0xAD** 1197 + 1198 +)))|OK 1209 1209 1200 +**Downlink Command: 0xAD** 1201 + 1210 1210 Format: Command Code (0xAD) followed by 1 bytes or 5 bytes. 1211 1211 1212 -* Example 1: Downlink Payload: AD 00 1213 -* Example 2: Downlink Payload: AD 01 1214 -* Example 3: Downlink Payload: AD 01 00 00 14 1204 +* Example 1: Downlink Payload: AD 00 ~/~/ AT+DATAUP=0 1205 +* Example 2: Downlink Payload: AD 01 ~/~/ AT+DATAUP =1 1206 +* Example 3: Downlink Payload: AD 01 00 00 14~/~/ AT+DATAUP =1,20000 1215 1215 1216 1216 This means that the interval is set to 0x000014=20S 1217 1217 1218 1218 1219 -== 3.6 Set the payload version == 1211 +1. 1212 +11. Set the payload version 1220 1220 1221 - 1222 1222 Feature, Set the payload version. 1223 1223 1224 - (% style="color:blue" %)**AT Command: AT+PAYVER**1216 +**AT Command: AT+PAYVER** 1225 1225 1226 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:437px" %) 1227 -|=(% 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** 1228 -|(% style="background-color:#f2f2f2; width:158px" %)AT+PAYVER=?|(% style="background-color:#f2f2f2; width:192px" %)Show current payload version|(% style="background-color:#f2f2f2" %)((( 1218 +|**Command Example**|**Function**|**Response** 1219 +|AT+PAYVER=?|Show current payload version|((( 1229 1229 1 1221 + 1222 + 1230 1230 OK 1231 1231 ))) 1232 -| (% style="background-color:#f2f2f2; width:158px" %)AT+PAYVER=5|(% style="background-color:#f2f2f2; width:192px" %)Set payload version is 5.|(% style="background-color:#f2f2f2" %)OK1225 +|AT+PAYVER=5|Set payload version is 5.|OK 1233 1233 1234 - (% style="color:blue" %)**Downlink Command: 0xAE**1227 +**Downlink Command: 0xAE** 1235 1235 1236 1236 Format: Command Code (0xAE) followed by 1 bytes. 1237 1237 1238 -* Example 1: Downlink Payload: AE 01 1239 -* Example 2: Downlink Payload: AE 05 1231 +* Example 1: Downlink Payload: AE 01 ~/~/ AT+PAYVER=1 1232 +* Example 2: Downlink Payload: AE 05 ~/~/ AT+PAYVER=5 1240 1240 1241 -= 4. Battery & Power Consumption = 1234 +1. Battery & how to replace 1235 +11. Battery Type 1242 1242 1237 +SDI-12-LB is equipped with a [[8500mAH ER26500 Li-SOCI2 battery>>url:https://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]. 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. 1243 1243 1244 -SDI-12-LB uses ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace. 1245 1245 1246 - [[**BatteryInfo& PowerConsumption Analyze**>>url:http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]].1240 +The discharge curve is not linear so can’t simply use percentage to show the battery level. Below is the battery performance. 1247 1247 1242 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image036.png]] 1248 1248 1249 -= 5. Remote Configure device = 1250 1250 1251 - ==5.1 ConnectviaBLE==1245 +Minimum Working Voltage for the SDI-12-LB: 1252 1252 1247 +SDI-12-LB: 2.45v ~~ 3.6v 1253 1253 1254 -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/]] 1255 1255 1250 +1. 1251 +11. Replace Battery 1256 1256 1257 - ==5.2ATCommandSet==1253 +Any battery with range 2.45 ~~ 3.6v can be a replacement. We recommend to use Li-SOCl2 Battery. 1258 1258 1255 +And make sure the positive and negative pins match. 1259 1259 1260 1260 1261 -= 6. OTA firmware update = 1262 1262 1259 +1. 1260 +11. Power Consumption Analyze 1263 1263 1264 - Please see thislinkfor howto doOTAfirmwareupdate.1262 +Dragino Battery powered product are all runs in Low Power mode. We have an update battery calculator which base on the measurement of the real device. User can use this calculator to check the battery life and calculate the battery life if want to use different transmit interval. 1265 1265 1266 -[[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/]] 1267 1267 1265 +Instruction to use as below: 1268 1268 1269 -= 7. FAQ = 1270 1270 1271 - ==7.1How touse AT Commandvia UARTtoccessdevice? ==1268 +Step 1: Downlink the up-to-date DRAGINO_Battery_Life_Prediction_Table.xlsx from: 1272 1272 1270 +[[https:~~/~~/www.dragino.com/downloads/index.php?dir=LoRa_End_Node/Battery_Analyze/>>url:https://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/Battery_Analyze/]] 1273 1273 1274 -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]] 1275 1275 1273 +Step 2: Open it and choose 1276 1276 1277 -== 7.2 How to update firmware via UART port? == 1275 +* Product Model 1276 +* Uplink Interval 1277 +* Working Mode 1278 1278 1279 +And the Life expectation in difference case will be shown on the right. 1279 1279 1280 - 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]]1281 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image037.png]] 1281 1281 1282 1282 1283 - == 7.3 How to change theLoRa FrequencyBands/Region? ==1284 +The battery related documents as below: 1284 1284 1286 +* [[Battery Dimension>>url:http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/&file=LSN50-Battery-Dimension.pdf]], 1287 +* [[Lithium-Thionyl Chloride Battery>>url:http://www.dragino.com/downloads/downloads/datasheet/Battery/ER18505_datasheet-EN.pdf]] datasheet, [[Tech Spec>>url:http://www.dragino.com/downloads/downloads/datasheet/Battery/ER18505_datasheet_PM-ER18505-S-02-LF_EN.pdf]] 1288 +* [[Lithium-ion Battery-Capacitor datasheet>>url:http://www.dragino.com/downloads/downloads/datasheet/Battery/SPC_1520_datasheet.jpg]], [[Tech Spec>>url:http://www.dragino.com/downloads/downloads/datasheet/Battery/SPC1520%20Technical%20Specification20171123.pdf]] 1285 1285 1286 -You can follow the instructions for [[how to upgrade image>>doc:Main.Firmware Upgrade Instruction for STM32 base products.WebHome]]. 1287 -When downloading the images, choose the required image file for download. 1290 +|((( 1291 +JST-XH-2P connector 1292 +))) 1288 1288 1294 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image038.png]] 1289 1289 1290 -= 8. Order Info = 1291 1291 1292 1292 1293 - (((1294 - (% style="color:blue" %)**Part Number: SDI-12-LB-XXX**1295 - )))1298 +1. 1299 +11. 1300 +111. Battery Note 1296 1296 1297 -((( 1298 -XXX: The default frequency band 1299 -))) 1302 +The Li-SICO battery is designed for small current / long period application. It is not good to use a high current, short period transmit method. The recommended minimum period for use of this battery is 5 minutes. If you use a shorter period time to transmit LoRa, then the battery life may be decreased. 1300 1300 1301 -((( 1302 -(% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band 1303 -(% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band 1304 -(% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band 1305 -(% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band 1306 -(% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band 1307 -(% style="color:red" %)**US915**(%%): LoRaWAN US915 band 1308 -(% style="color:red" %)**IN865**(%%): LoRaWAN IN865 band 1309 -(% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band 1310 -))) 1311 1311 1305 +1. 1306 +11. 1307 +111. Replace the battery 1312 1312 1313 - =9.Packing Info=1309 +You can change the battery in the SDI-12-LB.The type of battery is not limited as long as the output is between 3v to 3.6v. On the main board, there is a diode (D1) between the battery and the main circuit. If you need to use a battery with less than 3.3v, please remove the D1 and shortcut the two pads of it so there won’t be voltage drop between battery and main board. 1314 1314 1315 1315 1316 - (%style="color:#037691"%)**PackageIncludes**:1312 +The default battery pack of SDI-12-LB includes a ER26500 plus super capacitor. If user can’t find this pack locally, they can find ER26500 or equivalence, which will also work in most case. The SPC can enlarge the battery life for high frequency use (update period below 5 minutes) 1317 1317 1318 -* SDI-12-LB SDI-12 to LoRaWAN Converter x 1 1319 1319 1320 -(% style="color:#037691" %)**Dimension and weight**: 1321 1321 1316 + 1317 + 1318 + 1319 +1. Remote Configure device 1320 +11. Connect via BLE 1321 + 1322 +Please see this instruction for how to configure via BLE: 1323 + 1324 +[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]] 1325 + 1326 + 1327 +1. 1328 +11. AT Command Set 1329 + 1330 +1. OTA firmware update 1331 + 1332 +Please see this link for how to do OTA firmware update. 1333 + 1334 +[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/]] 1335 + 1336 + 1337 + 1338 + 1339 + 1340 + 1341 + 1342 + 1343 + 1344 + 1345 + 1346 +1. Order Info 1347 + 1348 +**Package Includes**: 1349 + 1350 +* SDI-12-LB SDI-12 to LoRaWAN Converter 1351 + 1352 +**Dimension and weight**: 1353 + 1322 1322 * Device Size: cm 1323 1323 * Device Weight: g 1324 1324 * Package Size / pcs : cm 1325 1325 * Weight / pcs : g 1326 1326 1327 -= 10. Support = 1328 1328 1329 1329 1361 +1. Support 1362 + 1330 1330 * Support is provided Monday to Friday, from 09:00 to 18:00 GMT+8. Due to different timezones we cannot offer live support. However, your questions will be answered as soon as possible in the before-mentioned schedule. 1364 +* Provide as much information as possible regarding your enquiry (product models, accurately describe your problem and steps to replicate it etc) and send a mail to 1331 1331 1332 -* 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]] 1366 +[[support@dragino.com>>url:http://../../../../../../D:%5C%E5%B8%82%E5%9C%BA%E8%B5%84%E6%96%99%5C%E8%AF%B4%E6%98%8E%E4%B9%A6%5CLoRa%5CLT%E7%B3%BB%E5%88%97%5Csupport@dragino.com]] 1367 + 1368 +
- 1675216779406-595.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -59.2 KB - Content
- 1675234124233-857.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -75.8 KB - Content
- 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
- image-20230426084456-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -190.0 KB - Content
- image-20230603120127-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Edwin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -5.7 KB - Content
- image-20230603120209-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Edwin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -22.8 KB - Content
- image-20230603120515-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Edwin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -489.3 KB - Content
- image-20230603120648-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Edwin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -100.8 KB - Content
- image-20230603120726-5.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Edwin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -133.2 KB - Content
- image-20230603120859-6.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Edwin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -55.9 KB - Content
- image-20230603121606-7.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Edwin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -24.4 KB - Content
- image-20230603121643-8.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Edwin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -889.7 KB - Content
- image-20230603121721-9.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Edwin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -105.4 KB - Content
- image-20230603121752-10.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Edwin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -160.0 KB - Content
- image-20230603121826-11.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Edwin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -52.8 KB - Content
- image-20230603122040-12.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Edwin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -128.1 KB - Content
- image-20230603122109-13.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Edwin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -271.1 KB - Content
- image-20230603122139-14.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Edwin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -70.4 KB - Content
- image-20230603122212-15.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Edwin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -818.3 KB - Content
- image-20230603122248-16.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Edwin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -12.7 KB - Content
- image-20230603122508-17.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Edwin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -980.2 KB - Content
- image-20230603122549-18.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Edwin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -90.9 KB - Content
- image-20230603122623-19.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Edwin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -139.5 KB - Content
- image-20230603122719-20.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Edwin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -83.8 KB - Content