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, 38 removed)
- 1675212538524-889.png
- 1675212633011-651.png
- 1675213198663-754.png
- 1675213652444-622.png
- 1675213661769-223.png
- 1675213675852-577.png
- 1675213686734-883.png
- 1675213704414-644.png
- 1675214845056-885.png
- 1675214856590-846.png
- 1675215745275-920.png
- 1675215782925-448.png
- 1675215828102-844.png
- 1675215848113-696.png
- 1675215946738-635.png
- 1675216282284-923.png
- 1675216779406-595.png
- 1675234124233-857.png
- 1675234155374-163.png
- image-20230201090139-2.png
- image-20230201090139-3.png
- image-20230201090139-4.png
- image-20230201090528-5.png
- image-20230201091027-6.png
- image-20230201091027-7.png
- image-20230201091257-8.png
- image-20230201091257-9.png
- image-20230201091630-10.png
- image-20230201091630-11.png
- image-20230201091954-12.png
- image-20230201091954-13.png
- image-20230201092208-14.png
- image-20230201092208-15.png
- image-20230201092355-16.png
- image-20230201092355-17.png
- image-20230201094129-18.png
- image-20230201145019-19.png
- image-20230201152430-20.jpeg
Details
- Page properties
-
- Content
-
... ... @@ -3,7 +3,6 @@ 3 3 4 4 **Table of Contents:** 5 5 6 -{{toc/}} 7 7 8 8 9 9 ... ... @@ -17,32 +17,36 @@ 17 17 18 18 19 19 20 -= 1. Introduction = 19 +1. Introduction 20 +11. What is LoRaWAN Pressure Sensor 21 21 22 - == 1.1 Whatis SDI-12 to LoRaWAN Converter==22 +The Dragino **SDI-12-LB** is a **SDI-12 to LoRaWAN Convert **designed for Smart Agriculture solution. 23 23 24 24 25 -The Dragino (% style="color:blue" %)**SDI-12-LB**(%%) is a (% style="color:blue" %)**SDI-12 to LoRaWAN Converter **(%%)designed for Smart Agriculture solution. 26 - 27 27 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. 28 28 29 -SDI-12-LB has SDI-12 interface and support 12v output to power external SDI-12 sensor. It can get the environment data from SDI-12 sensor and sends out the data via LoRaWAN wireless protocol. 30 30 31 - The LoRa wireless technology used inSDI-12-LB allowsdeviceto send dataand reach extremelylongranges atlowdata-rates.Itprovidesultra-longrangespreadspectrum communication andhigh interferenceimmunitywhilstminimizingcurrent consumption.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. 32 32 33 -SDI-12-LB is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long term use up to 5 years. 34 34 35 - Each SDI-12-LBispre-loadwithaset ofuniquekeysforLoRaWANregistrations,registerthesekeysolocal LoRaWANserverandit will autoconnectafterpower on.31 +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. 36 36 37 37 38 - [[image:image-20230201084414-1.png||height="464"width="1108"]]34 +**SDI-12-LB** is powered by **8500mAh Li-SOCI2 battery**, it is designed for long term use up to 5 years. 39 39 40 40 37 +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. 41 41 42 42 43 -== 1.2 Features == 44 44 41 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png]] 45 45 43 + 44 + 45 + 46 + 47 +* 48 +*1. Features 46 46 * LoRaWAN 1.0.3 Class A 47 47 * Ultra-low power consumption 48 48 * Controllable 5v and 12v output to power external sensor ... ... @@ -55,21 +55,22 @@ 55 55 * Downlink to change configure 56 56 * 8500mAh Battery for long term use 57 57 58 -== 1.3 Specification == 59 59 62 +1. 63 +11. Specification 60 60 61 - (% style="color:#037691" %)**Micro Controller:**65 +**Micro Controller:** 62 62 63 63 * MCU: 48Mhz ARM 64 64 * Flash: 256KB 65 65 * RAM: 64KB 66 66 67 - (% style="color:#037691" %)**Common DC Characteristics:**71 +**Common DC Characteristics:** 68 68 69 69 * Supply Voltage: 2.5v ~~ 3.6v 70 70 * Operating Temperature: -40 ~~ 85°C 71 71 72 - (% style="color:#037691" %)**LoRa Spec:**76 +**LoRa Spec:** 73 73 74 74 * Frequency Range, Band 1 (HF): 862 ~~ 1020 Mhz 75 75 * Max +22 dBm constant RF output vs. ... ... @@ -76,20 +76,23 @@ 76 76 * RX sensitivity: down to -139 dBm. 77 77 * Excellent blocking immunity 78 78 79 -(% style="color:#037691" %)**Current Input Measuring :** 80 80 84 +**Current Input Measuring :** 85 + 81 81 * Range: 0 ~~ 20mA 82 82 * Accuracy: 0.02mA 83 83 * Resolution: 0.001mA 84 84 85 -(% style="color:#037691" %)**Voltage Input Measuring:** 86 86 91 +**Voltage Input Measuring:** 92 + 87 87 * Range: 0 ~~ 30v 88 88 * Accuracy: 0.02v 89 89 * Resolution: 0.001v 90 90 91 -(% style="color:#037691" %)**Battery:** 92 92 98 +**Battery:** 99 + 93 93 * Li/SOCI2 un-chargeable battery 94 94 * Capacity: 8500mAh 95 95 * Self-Discharge: <1% / Year @ 25°C ... ... @@ -96,57 +96,68 @@ 96 96 * Max continuously current: 130mA 97 97 * Max boost current: 2A, 1 second 98 98 99 -(% style="color:#037691" %)**Power Consumption** 100 100 107 +**Power Consumption** 108 + 101 101 * Sleep Mode: 5uA @ 3.3v 102 102 * LoRa Transmit Mode: 125mA @ 20dBm, 82mA @ 14dBm 103 103 104 -== 1.4 Connect to SDI-12 Sensor == 105 105 113 +1. 114 +11. Connect to SDI-12 Sensor 106 106 116 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image002.png]] 107 107 108 -[[image:1675212538524-889.png]] 109 109 110 110 111 -== 1.5 Sleep mode and working mode == 120 +1. 121 +11. Sleep mode and working mode 112 112 113 113 114 - (% 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.124 +**Deep Sleep Mode: Sensor doesn’t have any LoRaWAN activate. This mode is used for storage and shipping to save battery life.** 115 115 116 -(% 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 117 127 +**Working Mode: In this mode, Sensor will work as LoRaWAN Sensor to Join LoRaWAN network and send out sensor data to server. Between each sampling/tx/rx periodically, sensor will be in IDLE mode), in IDLE mode, sensor has the same power consumption as Deep Sleep mode.** 118 118 119 -== 1.6 Button & LEDs == 120 120 121 121 122 -[[image:1675212633011-651.png]] 123 123 124 124 133 +1. 134 +11. Button & LEDs 125 125 126 -(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:510px" %) 127 -|=(% style="width: 167px;" %)**Behavior on ACT**|=(% style="width: 117px;" %)**Function**|=(% style="width: 225px;" %)**Action** 128 -|(% style="width:167px" %)Pressing ACT between 1s < time < 3s|(% style="width:117px" %)Send an uplink|(% style="width:225px" %)((( 129 -If sensor is already Joined to LoRaWAN network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once. 136 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image003.png]] 137 + 138 + 139 + 140 +|**Behavior on ACT**|**Function**|**Action** 141 +|Pressing ACT between 1s < time < 3s|Send an uplink|((( 142 +If sensor is already Joined to LoRaWAN network, sensor will send an uplink packet, **blue led** will blink once. 143 + 130 130 Meanwhile, BLE module will be active and user can connect via BLE to configure device. 131 131 ))) 132 -|(% style="width:167px" %)Pressing ACT for more than 3s|(% style="width:117px" %)Active Device|(% style="width:225px" %)((( 133 -(% 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. 134 -(% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network. 146 +|Pressing ACT for more than 3s|Active Device|((( 147 +**Green led** will fast blink 5 times, device will enter **OTA mode** for 3 seconds. And then start to JOIN LoRaWAN network. 148 + 149 +**Green led** will solidly turn on for 5 seconds after joined in network. 150 + 135 135 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. 136 136 ))) 137 -| (% style="width:167px" %)Fast press ACT 5 times.|(% style="width:117px" %)Deactivate Device|(% style="width:225px" %)(% style="color:red"%)**Redled**(%%)will solid on for 5 seconds. MeansPS-LBisin Deep Sleep Mode.153 +|Fast press ACT 5 times.|Deactivate Device|red led will solid on for 5 seconds. Means SDI-12-LB are in Deep Sleep Mode. 138 138 139 -== 1.7 Pin Mapping == 140 140 141 141 142 -[[image:1675213198663-754.png]] 157 +1. 158 +11. Pin Mapping 143 143 160 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image004.png]] 144 144 145 -== 1.8 BLE connection == 162 +1. 163 +11. BLE connection 146 146 147 - 148 148 SDI-12-LB support BLE remote configure. 149 149 167 + 150 150 BLE can be used to configure the parameter of sensor or see the console output from sensor. BLE will be only activate on below case: 151 151 152 152 * Press button to send an uplink ... ... @@ -156,173 +156,175 @@ 156 156 If there is no activity connection on BLE in 60 seconds, sensor will shut down BLE module to enter low power mode. 157 157 158 158 159 -== 1.9 Mechanical == 160 160 161 161 162 -[[image:image-20230201090139-2.png]] 179 +1. 180 +11. Mechanical 163 163 164 -[[image:image -20230201090139-3.png]]182 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image005.png]] 165 165 166 -[[image:image -20230201090139-4.png]]184 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image006.png]] 167 167 186 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image007.png]] 168 168 169 -= 2. Configure SDI-12 to connect to LoRaWAN network = 170 170 171 -== 2.1 How it works == 172 172 173 173 174 -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. 191 +1. Configure SDI-12 to connect to LoRaWAN network 192 +11. How it works 175 175 194 +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. 176 176 177 -== 2.2 Quick guide to connect to LoRaWAN server (OTAA) == 178 178 197 +1. 198 +11. Quick guide to connect to LoRaWAN server (OTAA) 179 179 180 180 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. 181 181 182 182 183 -[[image:image -20230201090528-5.png||height="465" width="1111"]]203 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image008.png]] 184 184 185 185 186 186 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. 187 187 188 188 189 - (% style="color:blue" %)**Step 1**(%%): Create a device in TTN with the OTAA keys from SDI-12-LB.209 +**Step 1**: Create a device in TTN with the OTAA keys from SDI-12-LB. 190 190 191 191 Each SDI-12-LB is shipped with a sticker with the default device EUI as below: 192 192 193 193 194 -[[image:image -20230201152430-20.jpeg]]214 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image009.png]] 195 195 196 196 217 + 218 + 219 + 197 197 You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot: 198 198 199 199 200 - (% style="color:blue" %)**Register the device**223 +**Register the device** 201 201 202 -[[image: 1675213652444-622.png]]225 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image010.png]] 203 203 204 204 205 - (% style="color:blue" %)**Add APP EUI and DEV EUI**228 +**Add APP EUI and DEV EUI** 206 206 207 207 208 -[[image: 1675213661769-223.png]]231 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image011.png]] 209 209 210 210 211 - (% style="color:blue" %)**Add APP EUI in the application**234 +**Add APP EUI in the application** 212 212 213 213 214 -[[image: 1675213675852-577.png]]237 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image012.png]] 215 215 216 216 217 - (% style="color:blue" %)**Add APP KEY**240 +**Add APP KEY** 218 218 219 -[[image: 1675213686734-883.png]]242 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image013.png]] 220 220 221 221 222 - (% style="color:blue" %)**Step 2**(%%): Activate on SDI-12-LB245 +**Step 2**: Activate on SDI-12-LB 223 223 224 224 225 225 Press the button for 5 seconds to activate the SDI-12-LB. 226 226 227 227 228 - (% 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.251 +**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. 229 229 230 230 231 -[[image: 1675213704414-644.png]]254 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image014.png]] 232 232 233 233 234 -== 2.3 SDI-12 Related Commands == 235 235 236 236 237 -User need to configure SDI-12-LB to communicate with SDI-12 sensors otherwise the uplink payload will only include a few bytes. 238 238 260 +1. 261 +11. SDI-12 Related Commands 239 239 240 -=== 2.3.1 Basic SDI-12 debug command === 241 241 264 +User need to configure SDI-12-LB to communicate with SDI-12 sensors otherwise the uplink payload will only include a few bytes. 242 242 243 -User can run some basic SDI-12 command to debug the connection to the SDI-12 sensor. These commands can be sent via AT Command or LoRaWAN downlink command. 244 244 245 -If SDI-12 sensor return value after get these commands, //SDI-12-LB// will uplink the return on FPORT=100, otherwise, if there is no response from SDI-12 sensor. //SDI-12-LB// will uplink NULL (0x 4E 55 4C 4C) to server. 267 +1. 268 +11. 269 +111. Basic SDI-12 debug command 246 246 247 - Thefollowingisthedisplayinformation onthe serial portandthe server.271 +User can run some basic SDI-12 command to debug the connection to the SDI-12 sensor. These commands can be sent via AT Command or LoRaWAN downlink command. 248 248 249 249 274 +If SDI-12 sensor return value after get these commands, //SDI-12-LB// will uplink the return on FPORT=100, otherwise, if there is no response from SDI-12 sensor. //SDI-12-LB// will uplink NULL (0x 4E 55 4C 4C) to server. 250 250 251 -[[image:image-20230201091027-6.png]] 252 252 277 +The following is the display information on the serial port and the server. 253 253 254 -[[image:i mage-20230201091027-7.png||height="261" width="1179"]]279 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image015.png]] 255 255 281 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image016.png]] 256 256 257 - ==== (% style="color:blue" %)**al! ~-~- Get SDI-12 sensor Identification**(%%) ====283 +al! ~-~- Get SDI-12 sensor Identification 258 258 259 - 260 260 * AT Command: AT+ADDRI=aa 261 261 * LoRaWAN Downlink(prefix 0xAA00): AA 00 aa 262 262 263 - (% style="color:#037691" %)**Parameter:**(%%)aa: ASCII value of SDI-12 sensor address in downlink or HEX value in AT Command)288 +Parameter: aa: ASCII value of SDI-12 sensor address in downlink or HEX value in AT Command) 264 264 265 - (% style="color:blue" %)**Example :**AT+ADDRI=0 ( Equal to downlink: 0x AA 00 30)290 +Example : AT+ADDRI=0 ( Equal to downlink: 0x AA 00 30) 266 266 267 267 293 + 268 268 The following is the display information on the serial port and the server. 269 269 270 270 271 -[[image:image -20230201091257-8.png]]297 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image017.png]] 272 272 299 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image018.png]] 273 273 274 -[[image:image-20230201091257-9.png||height="225" width="1242"]] 275 275 302 +aM!,aMC!, aM1!- aM9!, aMC1!- aMC9! 276 276 277 - ==== (% style="color:blue" %)**aM!,aMC!,aM1!-aM9!, aMC1!-aMC9!**(%%)====304 +aM!: Start Non-Concurrent Measurement 278 278 306 +aMC!: Start Non-Concurrent Measurement – Request CRC 279 279 280 - (% style="color:red" %)**aM!**(%%):Start Non-ConcurrentMeasurement308 +aM1!- aM9!: Additional Measurements 281 281 282 - (% style="color:red" %)**aMC!**(%%):Start Non-ConcurrentMeasurement – Request CRC310 +aMC1!- aMC9!: Additional Measurements – Request CRC 283 283 284 -(% style="color:red" %)**aM1!- aM9! **(%%): Additional Measurements 285 285 286 -(% style="color:red" %)**aMC1!- aMC9!**(%%) : Additional Measurements – Request CRC 287 - 288 - 289 289 * AT Command : AT+ADDRM=0,1,0,1 290 - 291 291 * LoRaWAN Downlink(prefix 0xAA01): 0xAA 01 30 01 00 01 292 292 293 293 Downlink:AA 01 aa bb cc dd 294 294 295 - (% style="color:#037691" %)**aa**(%%): SDI-12 sensor address.318 +aa: SDI-12 sensor address. 296 296 297 - (% style="color:#037691" %)**bb**(%%): 0: no CRC, 1: request CRC320 +bb: 0: no CRC, 1: request CRC 298 298 299 - (% style="color:#037691" %)**cc**(%%): 1-9: Additional Measurement, 0: no additional measurement322 +cc: 1-9: Additional Measurement, 0: no additional measurement 300 300 301 - (% style="color:#037691" %)**dd**(%%): delay (in second) to send(% style="color:#037691" %)**aD0!**(%%)to get return.324 +dd: delay (in second) to send **aD0!** to get return. 302 302 303 303 304 304 The following is the display information on the serial port and the server. 305 305 329 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image019.png]] 306 306 307 -[[image:image -20230201091630-10.png]]331 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image020.png]] 308 308 309 309 310 -[[image:image-20230201091630-11.png||height="247" width="1165"]] 311 311 335 +aC!, aCC!, aC1!- aC9!, aCC1!- aCC9! 312 312 337 +aC!: Start Concurrent Measurement 313 313 314 - ==== (% style="color:blue" %)**aC!, aCC!,aC1!-aC9!,aCC1!-aCC9!**(%%)====339 +aCC!: Start Concurrent Measurement – Request CRC 315 315 341 +aC1!- aC9!: Start Additional Concurrent Measurements 316 316 317 - (% style="color:red" %)**aC!**(%%): Start Concurrent Measurement343 +aCC1!- aCC9!: Start Additional Concurrent Measurements – Request CRC 318 318 319 -(% style="color:red" %)**aCC!** (%%): Start Concurrent Measurement – Request CRC 320 320 321 -(% style="color:red" %)**aC1!- aC9!**(%%) : Start Additional Concurrent Measurements 322 - 323 -(% style="color:red" %)**aCC1!- aCC9!**(%%) : Start Additional Concurrent Measurements – Request CRC 324 - 325 - 326 326 * AT Command : AT+ADDRC=0,1,0,1 327 327 328 328 * LoRaWAN Downlink(0xAA02): 0xAA 02 30 01 00 01 ... ... @@ -329,29 +329,24 @@ 329 329 330 330 Downlink: AA 02 aa bb cc dd 331 331 332 - (% style="color:#037691" %)**aa**(%%): SDI-12 sensor address.352 +aa: SDI-12 sensor address. 333 333 334 - (% style="color:#037691" %)**bb**(%%): 0: no CRC, 1: request CRC354 +bb: 0: no CRC, 1: request CRC 335 335 336 - (% style="color:#037691" %)**cc**(%%): 1-9: Additional Measurement, 0: no additional measurement356 +cc: 1-9: Additional Measurement, 0: no additional measurement 337 337 338 - (% style="color:#037691" %)**dd**(%%): delay (in second) to send(% style="color:#037691" %)**aD0!**(%%)to get return.358 +dd: delay (in second) to send **aD0!** to get return. 339 339 340 340 341 341 The following is the display information on the serial port and the server. 342 342 363 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image021.png]] 343 343 344 -[[image:image -20230201091954-12.png]]365 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image022.png]] 345 345 346 346 347 - [[image:image-20230201091954-13.png||height="203"width="1117"]]368 +aR0!- aR9!, aRC0!- aRC9! 348 348 349 - 350 - 351 - 352 -==== (% style="color:blue" %)**aR0!- aR9!, aRC0!- aRC9!**(%%) ==== 353 - 354 - 355 355 Start Continuous Measurement 356 356 357 357 Start Continuous Measurement – Request CRC ... ... @@ -362,48 +362,46 @@ 362 362 363 363 Downlink: AA 03 aa bb cc dd 364 364 365 - (% style="color:#037691" %)**aa**(%%): SDI-12 sensor address.380 +aa: SDI-12 sensor address. 366 366 367 - (% style="color:#037691" %)**bb**(%%): 0: no CRC, 1: request CRC382 +bb: 0: no CRC, 1: request CRC 368 368 369 - (% style="color:#037691" %)**cc**(%%): 1-9: Additional Measurement, 0: no additional measurement384 +cc: 1-9: Additional Measurement, 0: no additional measurement 370 370 371 - (% style="color:#037691" %)**dd**(%%): delay (in second) to send(% style="color:#037691" %)**aD0!**(%%)to get return.386 +dd: delay (in second) to send **aD0!** to get return. 372 372 373 373 374 374 The following is the display information on the serial port and the server. 375 375 391 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image023.png]] 376 376 393 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image024.png]] 377 377 378 -[[image:image-20230201092208-14.png]] 395 +1. 396 +11. 397 +111. Advance SDI-12 Debug command 379 379 380 - 381 -[[image:image-20230201092208-15.png||height="214" width="1140"]] 382 - 383 - 384 -=== 2.3.2 Advance SDI-12 Debug command === 385 - 386 - 387 387 This command can be used to debug all SDI-12 command. 388 388 389 389 390 390 LoRaWAN Downlink: A8 aa xx xx xx xx bb cc 391 391 392 -( % style="color:#037691" %)**aa**(%%): total SDI-12 command length404 +(aa: total SDI-12 command length) 393 393 394 -( % style="color:#037691" %)**xx**(%%): SDI-12 command406 +(xx: SDI-12 command) 395 395 396 -( % style="color:#037691" %)**bb**(%%): Delay to wait for return408 +(bb: Delay to wait for return) 397 397 398 -( % style="color:#037691" %)**cc **(%%): 0: don't uplink return to LoRaWAN, 1: Uplink return to LoRaWAN on FPORT=100410 +(cc: 0: don’t uplink return to LoRaWAN, 1: Uplink return to LoRaWAN on FPORT=100) 399 399 400 400 401 - (% style="color:blue" %)**Example:**(%%)AT+CFGDEV =0RC0!,1413 +Example: AT+CFGDEV =0RC0!,1 402 402 403 - (% style="color:#037691" %)**0RC0!**(%%): SDI-12 Command,415 +0RC0!: SDI-12 Command, 404 404 405 - (% style="color:#037691" %)**1 **(%%): Delay 1 second. ( 0: 810 mini-second)417 +1: Delay 1 second. ( 0: 810 mini-second) 406 406 419 + 407 407 Equal Downlink: 0xA8 05 30 52 43 30 21 01 01 408 408 409 409 ... ... @@ -410,155 +410,161 @@ 410 410 The following is the display information on the serial port and the server. 411 411 412 412 413 -[[image:image -20230201092355-16.png]]426 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image025.png]] 414 414 428 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image026.png]] 415 415 416 -[[image:image-20230201092355-17.png||height="426" width="1135"]] 430 +1. 431 +11. 432 +111. Convert ASCII to String 417 417 418 - 419 -=== 2.3.3 Convert ASCII to String === 420 - 421 - 422 422 This command is used to convert between ASCII and String format. 423 423 436 + 424 424 AT+CONVFORM ( Max length: 80 bytes) 425 425 439 +Example: 426 426 427 - (%style="color:blue"%)**Example:**441 +1)AT+CONVFORM=0,string Convert String from String to ASCII 428 428 429 - 1) AT+CONVFORM=0, stringonvertString fromStringto ASCII443 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image027.png]] 430 430 431 -[[image:1675214845056-885.png]] 432 432 446 +2)AT+CONVFORM=1,ASCII Convert ASCII to String. 433 433 434 - 2) AT+CONVFORM=1, ASCII ConvertASCIItoString.448 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image028.png]] 435 435 436 -[[image:1675214856590-846.png]] 437 437 438 438 439 -=== 2.3.4 Define periodically SDI-12 commands and uplink. === 452 +1. 453 +11. 454 +111. Define periodically SDI-12 commands and uplink. 440 440 441 - 442 442 AT+COMMANDx & AT+DATACUTx 443 443 444 444 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. 445 445 446 446 447 -* (% style="color:blue" %)**AT Command:**461 +* ** AT Command:** 448 448 449 - (% style="color:#037691" %)**AT+COMMANDx=var1,var2,var3,var4.**463 +**AT+COMMANDx=var1,var2,var3,var4.** 450 450 451 - (% style="color:red" %)**var1**(%%): SDI-12 command , for example: 0RC0!465 +var1: SDI-12 command , for example: 0RC0! 452 452 453 - (% style="color:red" %)**var2**(%%): Wait timeout for return. (unit: second)467 +var2: Wait timeout for return. (unit: second) 454 454 455 - (% style="color:red" %)**var3**(%%): Whether to send //addrD0!// to get return after var2 timeout. 0: Don't Send //addrD0!469 +var3: Whether to send //addrD0!// to get return after var2 timeout. 0: Don’t Send //addrD0!//; 1: Send //addrD0!//. 456 456 457 - (% style="color:red" %)**var4**(%%): validation check for return. If return invalid, SDI-12-LB will resend this command. Max 2 retries.471 +var4: validation check for return. If return invalid, SDI-12-LB will resend this command. Max 2 retries. 458 458 459 - (% style="color:red" %)**0**(%%)No validation check;473 +0 No validation check; 460 460 461 - (% style="color:red" %)**1**(%%)Check if return chars are printable char(0x20 ~~ 0x7E);475 +1 Check if return chars are printable char(0x20 ~~ 0x7E); 462 462 463 - (% style="color:#red" %)**2**(%%)Check if there is return from SDI-12 sensor477 +2 Check if there is return from SDI-12 sensor 464 464 465 - (% style="color:red" %)**3**(%%)Check if return pass CRC check ( SDI-12 command var1 must include CRC request);479 +3 Check if return pass CRC check ( SDI-12 command var1 must include CRC request); 466 466 467 467 468 -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.482 +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. 469 469 470 470 471 - (% style="color:blue" %)**AT+DATACUTx**(%%): This command defines how to handle the return from AT+COMMANDx, max return length is 100 bytes.485 +**AT+DATACUTx** : This command defines how to handle the return from AT+COMMANDx, max return length is 100 bytes. 472 472 473 -(% border="1" style="background-color:#f7faff; width:436px" %) 474 -|(% style="width:433px" %)((( 475 -**AT+DATACUTx=a,b,c** 487 +|((( 488 +AT+DATACUTx=a,b,c 476 476 477 - **a**:490 +a: length for the return of AT+COMMAND 478 478 479 - **b**:492 +b:1: grab valid value by byte, max 6 bytes. 2: grab valid value by bytes section, max 3 sections. 480 480 481 - **c**:494 +c: define the position for valid value. 482 482 ))) 483 483 484 -For example, if return from AT+COMMAND1 is “013METER TER12 112T12-00024895” , Below AT+DATACUT1 will get different result to combine payload: 485 485 498 +For example, if return from AT+COMMAND1 is “013METER TER12 112T12-00024895” ,. Below AT+DATACUT1 will get different result to combine payload: 486 486 487 -(% border="1" cellspacing="4" style="background-color:#f7faff; width:510px" %) 488 -|(% style="width:170px" %)**AT+DATACUT1 value**|(% style="width:338px" %)**Final Result to combine Payload** 489 -|(% style="width:170px" %)34,1,1+2+3|(% style="width:338px" %)0D 00 01 30 31 33 490 -|(% 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 491 -|(% 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 492 492 493 -* (% style="color:blue" %)** Downlink Payload:** 501 +|AT+DATACUT1 value|Final Result to combine Payload 502 +|34,1,1+2+3|0D 00 01 30 31 33 503 +|34,2,1~~8+12~~16|0D 00 01 30 31 33 4D 45 54 45 52 54 45 52 31 32 504 +|34,2,1~~34|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 494 494 495 -(% style="color:blue" %)**0xAF**(%%) downlink command can be used to set AT+COMMANDx or AT+DATACUTx. 496 496 497 497 498 - (%style="color:red" %)**Note: if user use AT+COMMANDx toadd a newcommand,healsoneedto send AT+DATACUTx downlink.**508 +* ** Downlink Payload:** 499 499 510 +**0xAF** downlink command can be used to set AT+COMMANDx or AT+DATACUTx. 500 500 501 -Format: ** (% style="color:#037691" %)AF MM NN LL XX XX XX XX YY(%%)** 502 502 513 +**Note : if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink.** 514 + 515 + 516 +Format: ** AF MM NN LL XX XX XX XX YY** 517 + 503 503 Where: 504 504 505 -* (% style="color:#037691" %)**MM**(%%): the AT+COMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F,506 -* (% style="color:#037691" %)**NN**(%%): 1: set the AT+DATACUT value ; 2: set the AT+DATACUT value.507 -* (% style="color:#037691" %)**LL**(%%): The length of AT+COMMAND or AT+DATACUT command508 -* (% style="color:#037691" %)**XX XX XX XX**(%%): AT+COMMAND or AT+DATACUT command509 -* (% 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.520 +* MM: the AT+COMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F, 521 +* NN: 1: set the AT+DATACUT value ; 2: set the AT+DATACUT value. 522 +* LL: The length of AT+COMMAND or AT+DATACUT command 523 +* XX XX XX XX: AT+COMMAND or AT+DATACUT command 524 +* 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. 510 510 511 - (% style="color:blue" %)**Example:**526 +Example: 512 512 513 - [[image:image-20230201094129-18.png]]528 +**AF 03 01 07 30 4D 43 21 01 01 01 00**: Same as AT+COMMAND3=**0MC!**,** 1**,** 1**,** 1** 514 514 530 +**AF 03 02 06 10 01 05 06 09 0A 00**: Same as AT+DATACUT3=**16**,**1**,**5+6+9+10** 515 515 516 - (%style="color:blue"%)**ClearSDI12Command**532 +**AF 03 02 06 0B 02 05 07 08 0A 00**: Same as AT+DATACUT3=**11**,**2**,**5~~7+8~~10** 517 517 534 + 535 +**Clear SDI12 Command** 536 + 518 518 The AT+COMMANDx and AT+DATACUTx settings are stored in special location, user can use below command to clear them. 519 519 520 520 521 -* (% style="color:#037691" %)**AT Command:**540 +* ** AT Command:** 522 522 523 - (% style="color:#4f81bd" %)**AT+CMDEAR=mm,nn**(%%)mm: start position of erase ,nn: stop position of erase542 +**~ AT+CMDEAR=mm,nn** mm: start position of erase ,nn: stop position of erase 524 524 525 525 526 526 Etc. AT+CMDEAR=1,10 means erase AT+COMMAND1/AT+DATACUT1 to AT+COMMAND10/AT+DATACUT10 527 527 528 528 529 -* (% style="color:#037691" %)** Downlink Payload:**548 +* ** Downlink Payload:** 530 530 531 - (% style="color:#4f81bd" %)**0x09 aa bb**(%%)same as AT+CMDEAR=aa,bb550 +**~ 0x09 aa bb** same as AT+CMDEAR=aa,bb 532 532 533 533 534 534 535 -(% style="color:blue" %)**command combination** 536 536 555 +**command combination** 556 + 537 537 Below shows a screen shot how the results combines together to a uplink payload. 538 538 539 -[[image: 1675215745275-920.png]]559 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image029.png]] 540 540 541 541 542 -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.562 +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. 543 543 544 - (% 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.564 +**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. 545 545 546 546 547 - (% 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.567 +For example: as below photo, AT+ALLDATAMOD=1, but AT+DATACUT1 has been set, AT+DATACUT1 will be still effect the result. 548 548 549 549 550 -[[image: 1675215782925-448.png]]570 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image030.png]] 551 551 552 552 553 -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.573 +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. 554 554 555 555 556 556 557 - (% style="color:blue" %)**Compose Uplink**577 +**Compose Uplink** 558 558 579 +**AT+DATAUP=0** 559 559 560 -(% style="color:#4f81bd" %)**AT+DATAUP=0** 561 - 562 562 Compose the uplink payload with value returns in sequence and send with A SIGNLE UPLINK. 563 563 564 564 Final Payload is Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx ... ... @@ -566,16 +566,16 @@ 566 566 Where PAYVER is defined by AT+PAYVER, below is an example screen shot. 567 567 568 568 569 -[[image: 1675215828102-844.png]]588 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image031.png]] 570 570 571 571 572 - (% style="color:#4f81bd" %)**AT+DATAUP=1**591 +**AT+DATAUP=1** 573 573 574 574 Compose the uplink payload with value returns in sequence and send with Multiply UPLINKs. 575 575 576 576 Final Payload is 577 577 578 - __**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA**__597 +**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA** 579 579 580 580 1. Battery Info (2 bytes): Battery voltage 581 581 1. PAYVER (1 byte): Defined by AT+PAYVER ... ... @@ -583,24 +583,27 @@ 583 583 1. PAYLOAD# (1 byte): Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT) 584 584 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 585 585 586 -[[image: 1675215848113-696.png]]605 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image032.png]] 587 587 588 588 589 - (% style="color:red" %)**Notice: the Max bytes is according to the max support bytes in different Frequency Bands for lowest SF. As below:**608 +**Notice: the Max bytes is according to the max support bytes in different Frequency Bands for lowest SF. As below:** 590 590 591 -* For AU915/AS923 bands, if UplinkDwell time=0, max 51 bytes for each uplink ( so 51 -5 = 46 max valid date) 592 -* For AU915/AS923 bands, if UplinkDwell time=1, max 11 bytes for each uplink ( so 11 -5 = 6 max valid date). 593 -* For US915 band, max 11 bytes for each uplink ( so 11 -5 = 6 max valid date). 594 -* For all other bands: max 51 bytes for each uplink ( so 51 -5 = 46 max valid date). 610 + ~* For AU915/AS923 bands, if UplinkDwell time=0, max 51 bytes for each uplink ( so 51 -5 = 46 max valid date) 595 595 596 - (%style="color:red"%)**WhenAT+DATAUP=1, the maximumnumberofsegmentsis 15,andthemaximumtotalnumber of bytesis 1500;**612 + * For AU915/AS923 bands, if UplinkDwell time=1, max 11 bytes for each uplink ( so 11 -5 = 6 max valid date). 597 597 598 - (%style="color:red"%)**When AT+DATAUP=1 andAT+ADR=0,themaximumnumberofbytesof each payloadisdeterminedbytheDRvalue.**614 + * For US915 band, max 11 bytes for each uplink ( so 11 -5 = 6 max valid date). 599 599 616 + ~* For all other bands: max 51 bytes for each uplink ( so 51 -5 = 46 max valid date). 600 600 601 - ==2.4UplinkPayload==618 + *** When AT+DATAUP=1, the maximum number of segments is 15, and the maximum total number of bytes is 1500;** 602 602 620 +**~ When AT+DATAUP=1 and AT+ADR=0, the maximum number of bytes of each payload is determined by the DR value.** 603 603 622 +1. 623 +11. Uplink Payload 624 + 625 + 604 604 Uplink payloads have two types: 605 605 606 606 * Distance Value: Use FPORT=2 ... ... @@ -609,29 +609,31 @@ 609 609 The application server should parse the correct value based on FPORT settings. 610 610 611 611 612 -=== 2.4.1 Device Payload, FPORT~=5 === 634 +1. 635 +11. 636 +111. Device Payload, FPORT=5 613 613 614 - 615 615 Include device configure status. Once SDI-12-LB Joined the network, it will uplink this message to the server. 616 616 640 + 617 617 Users can also use the downlink command(0x26 01) to ask SDI-12-LB to resend this uplink. 618 618 619 -(% border="1" cellspacing="4" style="background-color:#f7faff; width:437px" %) 620 -|(% colspan="6" style="width:434px" %)**Device Status (FPORT=5)** 621 -|(% 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** 622 -|(% 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 623 623 624 -Example parse in TTNv3 644 +|(% colspan="6" %)**Device Status (FPORT=5)** 645 +|**Size (bytes)**|**1**|**2**|**1**|**1**|**2** 646 +|**Value**|Sensor Model|Firmware Version|Frequency Band|Sub-band|BAT 625 625 626 -[[image:1675215946738-635.png]] 627 627 649 +Example parse in TTNv3 628 628 629 - (% style="color:#037691" %)**Sensor Model**(%%): ForSDI-12-LB,this valueisx17651 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image033.png]] 630 630 631 - (% style="color:#037691" %)**FirmwareVersion**(%%):0x0100,Means:v1.0.0 version653 +**Sensor Model**: For SDI-12-LB, this value is 0x17 632 632 633 - (% style="color:#037691" %)**FrequencyBand**:655 +**Firmware Version**: 0x0100, Means: v1.0.0 version 634 634 657 +**Frequency Band**: 658 + 635 635 *0x01: EU868 636 636 637 637 *0x02: US915 ... ... @@ -661,7 +661,7 @@ 661 661 *0x0e: MA869 662 662 663 663 664 - (% style="color:#037691" %)**Sub-Band**:688 +**Sub-Band**: 665 665 666 666 AU915 and US915:value 0x00 ~~ 0x08 667 667 ... ... @@ -670,7 +670,7 @@ 670 670 Other Bands: Always 0x00 671 671 672 672 673 - (% style="color:#037691" %)**Battery Info**:697 +**Battery Info**: 674 674 675 675 Check the battery voltage. 676 676 ... ... @@ -679,7 +679,9 @@ 679 679 Ex2: 0x0B49 = 2889mV 680 680 681 681 682 -=== 2.4.2 Uplink Payload, FPORT~=2 === 706 +1. 707 +11. 708 +111. Uplink Payload, FPORT=2 683 683 684 684 685 685 There are different cases for uplink. See below ... ... @@ -688,25 +688,33 @@ 688 688 689 689 * Periodically Uplink: FPORT=2 690 690 691 -(% border="1" cellspacing="4" style="background-color:#f7faff; width:510px" %) 692 -|(% style="width:93px" %)((( 693 -**Size(bytes)** 694 -)))|(% style="width:83px" %)**2**|(% style="width:70px" %)**1**|(% style="width:234px" %)**Length depends on the return from the commands** 695 -|(% style="width:93px" %)**Value**|(% style="width:83px" %)((( 717 + 718 +|((( 719 +**Size** 720 + 721 +**(bytes)** 722 +)))|**2**|**1**|**Length depends on the return from the commands** 723 +|**Value**|((( 696 696 Battery(mV) 725 + 697 697 & 727 + 698 698 Interrupt_Flag 699 -)))|(% style="width:70px" %)[[PAYLOAD_VER>>||anchor="H3.6Setthepayloadversion"]]|(% style="width:234px" %)((( 700 -If the valid payload is too long and exceed the maximum support. 729 +)))|[[PAYLOAD_VER>>path:#Probe_Model]]|((( 730 +If the valid payload is too long and exceed the maximum support 731 + 701 701 Payload length in server,server will show payload not provided in the LoRaWAN server. 702 702 ))) 703 703 704 -[[image:1675216282284-923.png]] 705 705 736 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image034.png]] 706 706 707 -=== 2.4.3 Battery Info === 708 708 709 709 740 +1. 741 +11. 742 +111. Battery Info 743 + 710 710 Check the battery voltage for SDI-12-LB. 711 711 712 712 Ex1: 0x0B45 = 2885mV ... ... @@ -714,12 +714,14 @@ 714 714 Ex2: 0x0B49 = 2889mV 715 715 716 716 717 -=== 2.4.4 Interrupt Pin === 751 +1. 752 +11. 753 +111. Interrupt Pin 718 718 755 +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]]. 719 719 720 -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"]]. 721 721 722 - **Example:**758 +Example: 723 723 724 724 Ex1: 0x0B45:0x0B&0x80= 0x00 Normal uplink packet. 725 725 ... ... @@ -726,60 +726,244 @@ 726 726 Ex2: 0x8B49:0x8B&0x80= 0x80 Interrupt Uplink Packet. 727 727 728 728 729 -=== 2.4.5 Payload version === 765 +1. 766 +11. 767 +111. Payload version 730 730 731 731 732 732 733 -=== 2.4.6 Decode payload in The Things Network === 734 734 735 735 773 + 774 + 775 +1. 776 +11. 777 +111. Decode payload in The Things Network 778 + 736 736 While using TTN network, you can add the payload format to decode the payload. 737 737 738 -[[image: 1675216779406-595.png]]781 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image035.png]] 739 739 740 740 741 741 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. 742 742 743 -SDI-12-LB TTN Payload Decoder: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>url:https://github.com/dragino/dragino-end-node-decoder]] 744 744 787 +下面的解码生成超链接放进去. 745 745 746 - == 2.5 UplinkInterval==789 +function Decoder(bytes, port) { 747 747 791 + if(port==5) 748 748 749 - 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:793 + { 750 750 751 - [[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]]]]795 + var freq_band; 752 752 797 + var sub_band; 753 753 799 + var sensor; 754 754 755 755 756 - ==2.6FrequencyPlans==802 + if(bytes[0]==0x17) 757 757 804 + sensor= "SDI12-LB"; 758 758 759 -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. 760 760 761 - [[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/]]807 + var firm_ver= (bytes[1]&0x0f)+'.'+(bytes[2]>>4&0x0f)+'.'+(bytes[2]&0x0f); 762 762 763 763 764 - ==2.7FirmwareChangeLog==810 + if(bytes[3]==0x01) 765 765 812 + freq_band="EU868"; 766 766 814 + else if(bytes[3]==0x02) 815 + 816 + freq_band="US915"; 817 + 818 + else if(bytes[3]==0x03) 819 + 820 + freq_band="IN865"; 821 + 822 + else if(bytes[3]==0x04) 823 + 824 + freq_band="AU915"; 825 + 826 + else if(bytes[3]==0x05) 827 + 828 + freq_band="KZ865"; 829 + 830 + else if(bytes[3]==0x06) 831 + 832 + freq_band="RU864"; 833 + 834 + else if(bytes[3]==0x07) 835 + 836 + freq_band="AS923"; 837 + 838 + else if(bytes[3]==0x08) 839 + 840 + freq_band="AS923_1"; 841 + 842 + else if(bytes[3]==0x09) 843 + 844 + freq_band="AS923_2"; 845 + 846 + else if(bytes[3]==0x0A) 847 + 848 + freq_band="AS923_3"; 849 + 850 + else if(bytes[3]==0x0F) 851 + 852 + freq_band="AS923_4"; 853 + 854 + else if(bytes[3]==0x0B) 855 + 856 + freq_band="CN470"; 857 + 858 + else if(bytes[3]==0x0C) 859 + 860 + freq_band="EU433"; 861 + 862 + else if(bytes[3]==0x0D) 863 + 864 + freq_band="KR920"; 865 + 866 + else if(bytes[3]==0x0E) 867 + 868 + freq_band="MA869"; 869 + 870 + 871 + if(bytes[4]==0xff) 872 + 873 + sub_band="NULL"; 874 + 875 + else 876 + 877 + sub_band=bytes[4]; 878 + 879 + 880 + var bat= (bytes[5]<<8 | bytes[6])/1000; 881 + 882 + 883 + return { 884 + 885 + SENSOR_MODEL:sensor, 886 + 887 + FIRMWARE_VERSION:firm_ver, 888 + 889 + FREQUENCY_BAND:freq_band, 890 + 891 + SUB_BAND:sub_band, 892 + 893 + BAT:bat, 894 + 895 + } 896 + 897 + } 898 + 899 + else if(port==100) 900 + 901 + { 902 + 903 + var datas_sum={}; 904 + 905 + for(var j=0;j<bytes.length;j++) 906 + 907 + { 908 + 909 + var datas= String.fromCharCode(bytes[j]); 910 + 911 + if(j=='0') 912 + 913 + datas_sum.datas_sum=datas; 914 + 915 + else 916 + 917 + datas_sum.datas_sum+=datas; 918 + 919 + } 920 + 921 + 922 + return datas_sum; 923 + 924 + } 925 + 926 + else 927 + 928 + { 929 + 930 + var decode={}; 931 + 932 + decode.EXTI_Trigger= (bytes[0] & 0x80)? "TRUE":"FALSE"; 933 + 934 + decode.BatV= ((bytes[0]<<8 | bytes[1])&0x7FFF)/1000; 935 + 936 + decode.Payver= bytes[2]; 937 + 938 + for(var i=3;i<bytes.length;i++) 939 + 940 + { 941 + 942 + var data= String.fromCharCode(bytes[i]); 943 + 944 + if(i=='3') 945 + 946 + decode.data_sum=data; 947 + 948 + else 949 + 950 + decode.data_sum+=data; 951 + 952 + } 953 + 954 + return decode; 955 + 956 + } 957 + 958 + 959 +} 960 + 961 + 962 +1. 963 +11. Uplink Interval 964 + 965 +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: 966 + 967 +[[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]] 968 + 969 + 970 + 971 +1. 972 +11. Frequency Plans 973 + 974 +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. 975 + 976 + 977 +[[https:~~/~~/wiki.dragino.com/index.php?title=End_Device_Frequency_Band>>url:https://wiki.dragino.com/index.php?title=End_Device_Frequency_Band]] 978 + 979 + 980 + 981 +1. 982 +11. Firmware Change Log 983 + 767 767 **Firmware download link:** 768 768 769 769 [[https:~~/~~/www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0>>url:https://www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0]] 770 770 771 771 772 -= 3. Configure SDI-12-LB via AT Command or LoRaWAN Downlink = 773 773 990 +1. Configure SDI-12-LB via AT Command or LoRaWAN Downlink 774 774 775 775 Use can configure SDI-12-LB via AT Command or LoRaWAN Downlink. 776 776 777 -* AT Command Connection: See [[FAQ>> ||anchor="H7.FAQ"]].778 -* LoRaWAN Downlink instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.994 +* AT Command Connection: See [[FAQ>>path:#AT_COMMAND]]. 995 +* LoRaWAN Downlink instruction for different platforms: 779 779 997 +[[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]] 998 + 999 + 780 780 There are two kinds of commands to configure SDI-12-LB, they are: 781 781 782 -* (% style="color:blue" %)**General Commands**.1002 +* **General Commands**. 783 783 784 784 These commands are to configure: 785 785 ... ... @@ -788,236 +788,270 @@ 788 788 789 789 They are same for all Dragino Device which support DLWS-005 LoRaWAN Stack. These commands can be found on the wiki: 790 790 791 -[[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/]]1011 +[[http:~~/~~/wiki.dragino.com/index.php?title=End_Device_Downlink_Command>>url:http://wiki.dragino.com/index.php?title=End_Device_Downlink_Command]] 792 792 793 793 794 -* (% style="color:blue" %)**Commands special design for SDI-12-LB**1014 +* **Commands special design for SDI-12-LB** 795 795 796 796 These commands only valid for SDI-12-LB, as below: 797 797 798 798 799 -== 3.1 Set Transmit Interval Time == 800 800 1020 +1. 1021 +11. Set Transmit Interval Time 801 801 802 802 Feature: Change LoRaWAN End Node Transmit Interval. 803 803 804 - (% style="color:blue" %)**AT Command: AT+TDC**1025 +**AT Command: AT+TDC** 805 805 806 -(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:510px" %) 807 -|=(% style="width: 156px;" %)**Command Example**|=(% style="width: 137px;" %)**Function**|=**Response** 808 -|(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|((( 1027 +|**Command Example**|**Function**|**Response** 1028 +|AT+TDC=?|Show current transmit Interval|((( 809 809 30000 1030 + 810 810 OK 1032 + 811 811 the interval is 30000ms = 30s 812 812 ))) 813 -| (% style="width:156px" %)AT+TDC=60000|(% style="width:137px" %)Set Transmit Interval|(((1035 +|AT+TDC=60000|Set Transmit Interval|((( 814 814 OK 1037 + 815 815 Set transmit interval to 60000ms = 60 seconds 816 816 ))) 817 817 818 -(% style="color:blue" %)**Downlink Command: 0x01** 819 819 1042 +**Downlink Command: 0x01** 820 820 821 821 Format: Command Code (0x01) followed by 3 bytes time value. 822 822 823 -If the downlink payload=0100003C, it means set the END Node 's Transmit Interval to 0x00003C=60(S), while type code is 01.1046 +If the downlink payload=0100003C, it means set the END Node’s Transmit Interval to 0x00003C=60(S), while type code is 01. 824 824 825 -* Example 1: Downlink Payload: 0100001E 826 -* Example 2: Downlink Payload: 0100003C 1048 +* Example 1: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds 1049 +* Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 827 827 828 828 829 -== 3.2 Set Interrupt Mode == 830 830 1053 +1. 1054 +11. Set Interrupt Mode 831 831 832 832 Feature, Set Interrupt mode for GPIO_EXIT. 833 833 834 - (% style="color:blue" %)**AT Command: AT+INTMOD**1058 +**AT Command: AT+INTMOD** 835 835 836 -(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:510px" %) 837 -|=(% style="width: 156px;" %)**Command Example**|=(% style="width: 187px;" %)**Function**|=(% style="width: 165px;" %)**Response** 838 -|(% style="width:156px" %)AT+INTMOD=?|(% style="width:187px" %)Show current interrupt mode|(% style="width:165px" %)((( 1060 +|**Command Example**|**Function**|**Response** 1061 +|AT+INTMOD=?|Show current interrupt mode|((( 839 839 0 1063 + 840 840 OK 1065 + 841 841 the mode is 0 = No interruption 842 842 ))) 843 -| (% style="width:156px" %)AT+INTMOD=2|(% style="width:187px" %)(((1068 +|AT+INTMOD=2|((( 844 844 Set Transmit Interval 845 -~1. (Disable Interrupt), 846 -2. (Trigger by rising and falling edge) 847 -3. (Trigger by falling edge) 848 -4. (Trigger by rising edge) 849 -)))|(% style="width:165px" %)OK 850 850 851 -(% style="color:blue" %)**Downlink Command: 0x06** 1071 +1. (Disable Interrupt), 1072 +1. (Trigger by rising and falling edge), 1073 +1. (Trigger by falling edge) 1074 +1. (Trigger by rising edge) 1075 +)))|OK 852 852 1077 + 1078 +**Downlink Command: 0x06** 1079 + 853 853 Format: Command Code (0x06) followed by 3 bytes. 854 854 855 855 This means that the interrupt mode of the end node is set to 0x000003=3 (rising edge trigger), and the type code is 06. 856 856 857 -* Example 1: Downlink Payload: 06000000 858 -* Example 2: Downlink Payload: 06000003 1084 +* Example 1: Downlink Payload: 06000000 ~/~/ Turn off interrupt mode 1085 +* Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger 859 859 860 860 861 -== 3.3 Set the output time == 1088 +1. 1089 +11. Set the output time 862 862 863 - 864 864 Feature, Control the output 3V3 , 5V or 12V. 865 865 866 - (% style="color:blue" %)**AT Command: AT+3V3T**1093 +**AT Command: AT+3V3T** 867 867 868 -(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:474px" %) 869 -|=(% style="width: 154px;" %)**Command Example**|=(% style="width: 201px;" %)**Function**|=(% style="width: 116px;" %)**Response** 870 -|(% style="width:154px" %)AT+3V3T=?|(% style="width:201px" %)Show 3V3 open time.|(% style="width:116px" %)((( 1095 +|**Command Example**|**Function**|**Response** 1096 +|AT+3V3T=?|Show 3V3 open time.|((( 871 871 0 1098 + 872 872 OK 873 873 ))) 874 -| (% style="width:154px" %)AT+3V3T=0|(% style="width:201px" %)Normally open 3V3 power supply.|(% style="width:116px" %)(((1101 +|AT+3V3T=0|Normally open 3V3 power supply.|((( 875 875 OK 1103 + 876 876 default setting 877 877 ))) 878 -| (% style="width:154px" %)AT+3V3T=1000|(% style="width:201px" %)Close after a delay of 1000 milliseconds.|(% style="width:116px" %)(((1106 +|AT+3V3T=1000|Close after a delay of 1000 milliseconds.|((( 879 879 OK 1108 + 1109 + 880 880 ))) 881 -| (% style="width:154px" %)AT+3V3T=65535|(% style="width:201px" %)Normally closed 3V3 power supply.|(% style="width:116px" %)(((1111 +|AT+3V3T=65535|Normally closed 3V3 power supply.|((( 882 882 OK 1113 + 1114 + 883 883 ))) 884 884 885 -(% style="color:blue" %)**AT Command: AT+5VT** 886 886 887 -(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:470px" %) 888 -|=(% style="width: 155px;" %)**Command Example**|=(% style="width: 196px;" %)**Function**|=(% style="width: 114px;" %)**Response** 889 -|(% style="width:155px" %)AT+5VT=?|(% style="width:196px" %)Show 5V open time.|(% style="width:114px" %)((( 1118 +**AT Command: AT+5VT** 1119 + 1120 +|**Command Example**|**Function**|**Response** 1121 +|AT+5VT=?|Show 5V open time.|((( 890 890 0 1123 + 891 891 OK 892 892 ))) 893 -| (% style="width:155px" %)AT+5VT=0|(% style="width:196px" %)Normally closed 5V power supply.|(% style="width:114px" %)(((1126 +|AT+5VT=0|Normally closed 5V power supply.|((( 894 894 OK 1128 + 895 895 default setting 896 896 ))) 897 -| (% style="width:155px" %)AT+5VT=1000|(% style="width:196px" %)Close after a delay of 1000 milliseconds.|(% style="width:114px" %)(((1131 +|AT+5VT=1000|Close after a delay of 1000 milliseconds.|((( 898 898 OK 1133 + 1134 + 899 899 ))) 900 -| (% style="width:155px" %)AT+5VT=65535|(% style="width:196px" %)Normally open 5V power supply.|(% style="width:114px" %)(((1136 +|AT+5VT=65535|Normally open 5V power supply.|((( 901 901 OK 1138 + 1139 + 902 902 ))) 903 903 904 -(% style="color:blue" %)**AT Command: AT+12VT** 905 905 906 -(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:443px" %) 907 -|=(% style="width: 156px;" %)**Command Example**|=(% style="width: 199px;" %)**Function**|=(% style="width: 83px;" %)**Response** 908 -|(% style="width:156px" %)AT+12VT=?|(% style="width:199px" %)Show 12V open time.|(% style="width:83px" %)((( 1143 +**AT Command: AT+12VT** 1144 + 1145 +|**Command Example**|**Function**|**Response** 1146 +|AT+12VT=?|Show 12V open time.|((( 909 909 0 1148 + 910 910 OK 911 911 ))) 912 -| (% style="width:156px" %)AT+12VT=0|(% style="width:199px" %)Normally closed 12V power supply.|(% style="width:83px" %)OK913 -| (% style="width:156px" %)AT+12VT=500|(% style="width:199px" %)Close after a delay of 500 milliseconds.|(% style="width:83px" %)(((1151 +|AT+12VT=0|Normally closed 12V power supply.|OK 1152 +|AT+12VT=500|Close after a delay of 500 milliseconds.|((( 914 914 OK 1154 + 1155 + 915 915 ))) 916 916 917 -(% style="color:blue" %)**Downlink Command: 0x07** 918 918 1159 +**Downlink Command: 0x07** 1160 + 919 919 Format: Command Code (0x07) followed by 3 bytes. 920 920 921 921 The first byte is which power, the second and third bytes are the time to turn on. 922 922 923 -* Example 1: Downlink Payload: 070101F4 **~-~-->**924 -* Example 2: Downlink Payload: 0701FFFF **~-~-->**AT+3V3T=65535925 -* Example 3: Downlink Payload: 070203E8 **~-~-->**AT+5VT=1000926 -* Example 4: Downlink Payload: 07020000 **~-~-->**AT+5VT=0927 -* Example 5: Downlink Payload: 070301F4 **~-~-->**AT+12VT=500928 -* Example 6: Downlink Payload: 07030000 **~-~-->**AT+12VT=01165 +* Example 1: Downlink Payload: 070101F4 -> AT+3V3T=500 1166 +* Example 2: Downlink Payload: 0701FFFF -> AT+3V3T=65535 1167 +* Example 3: Downlink Payload: 070203E8 -> AT+5VT=1000 1168 +* Example 4: Downlink Payload: 07020000 -> AT+5VT=0 1169 +* Example 5: Downlink Payload: 070301F4 -> AT+12VT=500 1170 +* Example 6: Downlink Payload: 07030000 -> AT+12VT=0 929 929 930 930 931 -== 3.4 Set the all data mode == 1173 +1. 1174 +11. Set the all data mode 932 932 933 - 934 934 Feature, Set the all data mode. 935 935 936 - (% style="color:blue" %)**AT Command: AT+ALLDATAMOD**1178 +**AT Command: AT+ALLDATAMOD** 937 937 938 -(% border="1" cellspacing="4" style="background-color:#f7faff; width:437px" %) 939 -|=**Command Example**|=**Function**|=**Response** 1180 +|**Command Example**|**Function**|**Response** 940 940 |AT+ALLDATAMOD=?|Show current all data mode|((( 941 941 0 1183 + 1184 + 942 942 OK 943 943 ))) 944 944 |AT+ALLDATAMOD=1|Set all data mode is 1.|OK 945 945 946 -(% style="color:blue" %)**Downlink Command: 0xAB** 947 947 1190 +**Downlink Command: 0xAB** 1191 + 948 948 Format: Command Code (0xAB) followed by 1 bytes. 949 949 950 -* Example 1: Downlink Payload: AB 00 951 -* Example 2: Downlink Payload: AB 01 1194 +* Example 1: Downlink Payload: AB 00 ~/~/ AT+ALLDATAMOD=0 1195 +* Example 2: Downlink Payload: AB 01 ~/~/ AT+ALLDATAMOD=1 952 952 953 953 954 -== 3.5 Set the splicing payload for uplink == 1198 +1. 1199 +11. Set the splicing payload for uplink 955 955 956 - 957 957 Feature, splicing payload for uplink. 958 958 959 - (% style="color:blue" %)**AT Command: AT+DATAUP**1203 +**AT Command: AT+DATAUP** 960 960 961 -(% border="1" cellspacing="4" style="background-color:#f7faff; width:510px" %) 962 -|=(% style="width: 154px;" %)**Command Example**|=(% style="width: 266px;" %)**Function**|=**Response** 963 -|(% style="width:154px" %)AT+DATAUP =?|(% style="width:266px" %)Show current splicing payload for uplink mode|((( 1205 +|**Command Example**|**Function**|**Response** 1206 +|AT+DATAUP =?|Show current splicing payload for uplink mode|((( 964 964 0 1208 + 1209 + 965 965 OK 966 966 ))) 967 -| (% style="width:154px" %)AT+DATAUP =0|(% style="width:266px" %)(((1212 +|AT+DATAUP =0|((( 968 968 Set splicing payload for uplink mode is 0. 1214 + 1215 + 969 969 )))|((( 970 970 OK 1218 + 1219 + 971 971 ))) 972 -|(% style="width:154px" %)AT+DATAUP =1|(% style="width:266px" %)Set splicing payload for uplink mode is 1 , and the each splice uplink is sent sequentially.|OK 973 -|(% style="width:154px" %)AT+DATAUP =1,20000|(% style="width:266px" %)((( 974 -Set splicing payload for uplink mode is 1, and the uplink interval of each splice to 20000 milliseconds. 1221 +|AT+DATAUP =1|Set splicing payload for uplink mode is 1 , and the each splice uplink is sent sequentially.|OK 1222 +|AT+DATAUP =1,20000|((( 1223 +Set splicing payload for uplink mode is 1, and the uplink interval of each splice to 20000 milliseconds. 1224 + 1225 + 975 975 )))|OK 976 976 977 -(% style="color:blue" %)**Downlink Command: 0xAD** 978 978 1229 +**Downlink Command: 0xAD** 1230 + 979 979 Format: Command Code (0xAD) followed by 1 bytes or 5 bytes. 980 980 981 -* Example 1: Downlink Payload: AD 00 982 -* Example 2: Downlink Payload: AD 01 983 -* Example 3: Downlink Payload: AD 01 00 00 14 1233 +* Example 1: Downlink Payload: AD 00 ~/~/ AT+DATAUP=0 1234 +* Example 2: Downlink Payload: AD 01 ~/~/ AT+DATAUP =1 1235 +* Example 3: Downlink Payload: AD 01 00 00 14~/~/ AT+DATAUP =1,20000 984 984 985 985 This means that the interval is set to 0x000014=20S 986 986 987 987 988 -== 3.6 Set the payload version == 1240 +1. 1241 +11. Set the payload version 989 989 990 990 Feature, Set the payload version. 991 991 992 - (% style="color:blue" %)**AT Command: AT+PAYVER**1245 +**AT Command: AT+PAYVER** 993 993 994 -(% border="1" cellspacing="4" style="background-color:#f7faff; width:437px" %) 995 -|=(% style="width: 158px;" %)**Command Example**|=(% style="width: 192px;" %)**Function**|=**Response** 996 -|(% style="width:158px" %)AT+PAYVER=?|(% style="width:192px" %)Show current payload version|((( 1247 +|**Command Example**|**Function**|**Response** 1248 +|AT+PAYVER=?|Show current payload version|((( 997 997 1 1250 + 1251 + 998 998 OK 999 999 ))) 1000 -| (% style="width:158px" %)AT+PAYVER=5|(% style="width:192px" %)Set payload version is 5.|OK1254 +|AT+PAYVER=5|Set payload version is 5.|OK 1001 1001 1002 -(% style="color:blue" %)**Downlink Command: 0xAE** 1003 1003 1257 +**Downlink Command: 0xAE** 1258 + 1004 1004 Format: Command Code (0xAE) followed by 1 bytes. 1005 1005 1006 -* Example 1: Downlink Payload: AE 01 1007 -* Example 2: Downlink Payload: AE 05 1261 +* Example 1: Downlink Payload: AE 01 ~/~/ AT+PAYVER=1 1262 +* Example 2: Downlink Payload: AE 05 ~/~/ AT+PAYVER=5 1008 1008 1009 1009 1010 -= 4. Battery & how to replace = 1011 1011 1012 -== 4.1 Battery Type == 1266 +1. Battery & how to replace 1267 +11. Battery Type 1013 1013 1269 +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. 1014 1014 1015 -SDI-12-LB is equipped with a [[8500mAH ER26500 Li-SOCI2 battery>>https://www.dropbox.com/sh/w9l2oa3ytpculph/AAAPtt-apH4lYfCj-2Y6lHvQa?dl=0]]. The battery is un-rechargeable battery with low discharge rate targeting for 8~~10 years use. This type of battery is commonly used in IoT target for long-term running, such as water meter. 1016 1016 1017 - 1018 1018 The discharge curve is not linear so can’t simply use percentage to show the battery level. Below is the battery performance. 1019 1019 1020 -[[image: 1675234124233-857.png]]1274 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image036.png]] 1021 1021 1022 1022 1023 1023 Minimum Working Voltage for the SDI-12-LB: ... ... @@ -1025,25 +1025,32 @@ 1025 1025 SDI-12-LB: 2.45v ~~ 3.6v 1026 1026 1027 1027 1028 -== 4.2 Replace Battery == 1282 +1. 1283 +11. Replace Battery 1029 1029 1030 - 1031 1031 Any battery with range 2.45 ~~ 3.6v can be a replacement. We recommend to use Li-SOCl2 Battery. 1032 1032 1033 1033 And make sure the positive and negative pins match. 1034 1034 1035 1035 1036 -== 4.3 Power Consumption Analyze == 1037 1037 1291 +1. 1292 +11. Power Consumption Analyze 1038 1038 1294 + 1039 1039 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. 1040 1040 1297 + 1041 1041 Instruction to use as below: 1042 1042 1043 -(% style="color:blue" %)**Step 1:**(%%) Downlink the up-to-date DRAGINO_Battery_Life_Prediction_Table.xlsx from: [[https:~~/~~/www.dropbox.com/sh/zwex6i331j5oeq2/AACIMf9f_v2qsJ39CuMQ5Py_a?dl=0>>https://www.dropbox.com/sh/zwex6i331j5oeq2/AACIMf9f_v2qsJ39CuMQ5Py_a?dl=0]] 1044 1044 1045 - (% style="color:blue" %)**Step2:**(%%)Openand choose1301 +Step 1: Downlink the up-to-date DRAGINO_Battery_Life_Prediction_Table.xlsx from: 1046 1046 1303 +[[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/]] 1304 + 1305 + 1306 +Step 2: Open it and choose 1307 + 1047 1047 * Product Model 1048 1048 * Uplink Interval 1049 1049 * Working Mode ... ... @@ -1050,105 +1050,85 @@ 1050 1050 1051 1051 And the Life expectation in difference case will be shown on the right. 1052 1052 1314 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image037.png]] 1053 1053 1054 -[[image:1675234155374-163.png]] 1055 1055 1056 - 1057 1057 The battery related documents as below: 1058 1058 1059 -* [[Battery Dimension>>http s://www.dropbox.com/s/ox5g9njwjle7aw3/LSN50-Battery-Dimension.pdf?dl=0]],1060 -* [[Lithium-Thionyl Chloride Battery datasheet, Tech Spec>>http s://www.dropbox.com/sh/d4oyfnp8o94180o/AABQewCNSh5GPeQH86UxRgQQa?dl=0]]1061 -* [[Lithium-ion Battery-Capacitor datasheet>>http s://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]]1319 +* [[Battery Dimension>>url:http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/&file=LSN50-Battery-Dimension.pdf]], 1320 +* [[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]] 1321 +* [[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]] 1062 1062 1063 -[[image:image-20230201145019-19.png]] 1064 1064 1065 1065 1066 -=== 4.3.1 Battery Note === 1325 +|((( 1326 +JST-XH-2P connector 1327 +))) 1067 1067 1329 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image038.png]] 1068 1068 1069 -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. 1070 1070 1071 1071 1072 -=== 4.3.2 Replace the battery === 1333 +1. 1334 +11. 1335 +111. Battery Note 1073 1073 1337 +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. 1074 1074 1075 -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. 1076 1076 1077 -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) 1340 +1. 1341 +11. 1342 +111. Replace the battery 1078 1078 1344 +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. 1079 1079 1080 -= 5. Remote Configure device = 1081 1081 1082 - ==5.1ConnectviaBLE==1347 +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) 1083 1083 1084 1084 1085 -Please see this instruction for how to configure via BLE: [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]] 1086 1086 1087 1087 1088 -== 5.2 AT Command Set == 1089 1089 1090 1090 1354 +1. Remote Configure device 1355 +11. Connect via BLE 1091 1091 1092 -= 6. OTA firmware update = 1093 1093 1358 +Please see this instruction for how to configure via BLE: 1094 1094 1095 - Please see this link for howdoOTAfirmware.1360 +[[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/]] 1096 1096 1097 -[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/]] 1098 1098 1363 +1. 1364 +11. AT Command Set 1099 1099 1100 -= 7. FAQ = 1101 1101 1102 -== 7.1 How to use AT Command to access device? == 1103 1103 1368 +1. OTA firmware update 1104 1104 1105 - 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]]1370 +Please see this link for how to do OTA firmware update. 1106 1106 1372 +[[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/]] 1107 1107 1108 -== 7.2 How to update firmware via UART port? == 1109 1109 1110 1110 1111 -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]] 1112 1112 1113 1113 1114 -== 7.3 How to change the LoRa Frequency Bands/Region? == 1115 1115 1116 1116 1117 -You can follow the instructions for [[how to upgrade image>>doc:Main.Firmware Upgrade Instruction for STM32 base products.WebHome]]. 1118 -When downloading the images, choose the required image file for download. 1119 1119 1120 1120 1121 -= 8. Order Info = 1122 1122 1123 1123 1124 - (%style="color:blue" %)**PartNumber: SDI-12-LB-XXX**1384 +1. Order Info 1125 1125 1126 - XXX: The default frequency band1386 +**Package Includes**: 1127 1127 1128 -(% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band 1129 -(% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band 1130 -(% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band 1131 -(% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band 1132 -(% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band 1133 -(% style="color:red" %)**US915**(%%): LoRaWAN US915 band 1134 -(% style="color:red" %)**IN865**(%%): LoRaWAN IN865 band 1135 -(% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band 1388 +* SDI-12-LB SDI-12 to LoRaWAN Converter 1136 1136 1137 1137 1391 +**Dimension and weight**: 1138 1138 1139 - 1140 - 1141 - 1142 - 1143 -= 9. Packing Info = 1144 - 1145 - 1146 -(% style="color:#037691" %)**Package Includes**: 1147 - 1148 -* SDI-12-LB SDI-12 to LoRaWAN Converter x 1 1149 - 1150 -(% style="color:#037691" %)**Dimension and weight**: 1151 - 1152 1152 * Device Size: cm 1153 1153 * Device Weight: g 1154 1154 * Package Size / pcs : cm ... ... @@ -1155,11 +1155,14 @@ 1155 1155 * Weight / pcs : g 1156 1156 1157 1157 1158 -= 10. Support = 1159 1159 1160 1160 1401 + 1402 +1. Support 1403 + 1161 1161 * 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. 1405 +* 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 1162 1162 1163 - * 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]]1407 +[[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]] 1164 1164 1165 1165
- 1675212538524-889.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -905.1 KB - Content
- 1675212633011-651.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -18.2 KB - Content
- 1675213198663-754.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -508.9 KB - Content
- 1675213652444-622.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -59.6 KB - Content
- 1675213661769-223.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -53.8 KB - Content
- 1675213675852-577.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -83.1 KB - Content
- 1675213686734-883.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -65.2 KB - Content
- 1675213704414-644.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -50.1 KB - Content
- 1675214845056-885.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -20.4 KB - Content
- 1675214856590-846.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -18.6 KB - Content
- 1675215745275-920.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -187.6 KB - Content
- 1675215782925-448.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -142.5 KB - Content
- 1675215828102-844.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -231.3 KB - Content
- 1675215848113-696.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -50.5 KB - Content
- 1675215946738-635.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -38.4 KB - Content
- 1675216282284-923.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -47.0 KB - Content
- 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-20230201090139-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -8.3 KB - Content
- image-20230201090139-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -4.9 KB - Content
- image-20230201090139-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -7.2 KB - Content
- image-20230201090528-5.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -560.9 KB - Content
- image-20230201091027-6.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -10.4 KB - Content
- image-20230201091027-7.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -43.7 KB - Content
- image-20230201091257-8.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -15.8 KB - Content
- image-20230201091257-9.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -46.3 KB - Content
- image-20230201091630-10.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -15.1 KB - Content
- image-20230201091630-11.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -53.1 KB - Content
- image-20230201091954-12.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -13.8 KB - Content
- image-20230201091954-13.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -46.7 KB - Content
- image-20230201092208-14.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -14.3 KB - Content
- image-20230201092208-15.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -46.6 KB - Content
- image-20230201092355-16.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -21.6 KB - Content
- image-20230201092355-17.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -80.0 KB - Content
- image-20230201094129-18.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -12.8 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