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, 34 removed)
- 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-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
- image-20230222143809-1.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 ... ... @@ -17,45 +17,39 @@ 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 -((( 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 -))) 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 -))) 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 -))) 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. 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 -))) 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 -))) 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. 48 48 49 49 50 - [[image:image-20230201084414-1.png||_mstalt="427765"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. 51 51 52 52 53 - ==1.2Features==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. 54 54 55 55 40 + 41 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png]] 42 + 43 + 44 + 45 + 46 + 47 +* 48 +*1. Features 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 sensor51 +* 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 ... ... @@ -66,24 +66,21 @@ 66 66 * 8500mAh Battery for long term use 67 67 68 68 62 +1. 63 +11. Specification 69 69 70 - == 1.3 Specification==65 +**Micro Controller:** 71 71 72 - 73 -(% style="color:#037691" %)**Micro Controller:** 74 - 75 75 * MCU: 48Mhz ARM 76 76 * Flash: 256KB 77 77 * RAM: 64KB 78 78 79 - (% style="color:#037691" %)**Common DC Characteristics:**71 +**Common DC Characteristics:** 80 80 81 81 * Supply Voltage: 2.5v ~~ 3.6v 82 -* Support current: 5V 300mA 83 - 12V 100mA 84 84 * Operating Temperature: -40 ~~ 85°C 85 85 86 - (% style="color:#037691" %)**LoRa Spec:**76 +**LoRa Spec:** 87 87 88 88 * Frequency Range, Band 1 (HF): 862 ~~ 1020 Mhz 89 89 * Max +22 dBm constant RF output vs. ... ... @@ -90,20 +90,23 @@ 90 90 * RX sensitivity: down to -139 dBm. 91 91 * Excellent blocking immunity 92 92 93 -(% style="color:#037691" %)**Current Input Measuring :** 94 94 84 +**Current Input Measuring :** 85 + 95 95 * Range: 0 ~~ 20mA 96 96 * Accuracy: 0.02mA 97 97 * Resolution: 0.001mA 98 98 99 -(% style="color:#037691" %)**Voltage Input Measuring:** 100 100 91 +**Voltage Input Measuring:** 92 + 101 101 * Range: 0 ~~ 30v 102 102 * Accuracy: 0.02v 103 103 * Resolution: 0.001v 104 104 105 -(% style="color:#037691" %)**Battery:** 106 106 98 +**Battery:** 99 + 107 107 * Li/SOCI2 un-chargeable battery 108 108 * Capacity: 8500mAh 109 109 * Self-Discharge: <1% / Year @ 25°C ... ... @@ -110,60 +110,68 @@ 110 110 * Max continuously current: 130mA 111 111 * Max boost current: 2A, 1 second 112 112 113 -(% style="color:#037691" %)**Power Consumption** 114 114 107 +**Power Consumption** 108 + 115 115 * Sleep Mode: 5uA @ 3.3v 116 116 * LoRa Transmit Mode: 125mA @ 20dBm, 82mA @ 14dBm 117 117 118 118 113 +1. 114 +11. Connect to SDI-12 Sensor 119 119 120 - == 1.4ConnecttoSDI-12 Sensor ==116 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image002.png]] 121 121 122 122 123 123 124 -[[image:1675212538524-889.png||_mstalt="298272"]] 120 +1. 121 +11. Sleep mode and working mode 125 125 126 126 127 - ==1.5Sleepmode andworkingmode==124 +**Deep Sleep Mode: Sensor doesn’t have any LoRaWAN activate. This mode is used for storage and shipping to save battery life.** 128 128 129 129 130 - (% style="color:blue"%)**DeepSleepMode:**(%%)Sensordoesn'thaveanyLoRaWAN activate.Thismode isusedforstorage andshippingto savebatterylife.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.** 131 131 132 -(% style="color:blue" %)**Working Mode: **(%%)In this mode, Sensor will work as LoRaWAN Sensor to Join LoRaWAN network and send out sensor data to server. Between each sampling/tx/rx periodically, sensor will be in IDLE mode), in IDLE mode, sensor has the same power consumption as Deep Sleep mode. 133 133 134 134 135 -== 1.6 Button & LEDs == 136 136 137 137 138 -[[image:1675212633011-651.png||_mstalt="291538"]] 133 +1. 134 +11. Button & LEDs 139 139 136 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image003.png]] 140 140 141 -(% border="1" cellspacing="4" style="width:510px" %) 142 -|=(% style="width: 167px;background-color:#D9E2F3;color:#0070C0" %)**Behavior on ACT**|=(% style="width: 117px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 225px;background-color:#D9E2F3;color:#0070C0" %)**Action** 143 -|(% style="background-color:#f2f2f2; width:167px" %)Pressing ACT between 1s < time < 3s|(% style="background-color:#f2f2f2; width:117px" %)Send an uplink|(% style="background-color:#f2f2f2; width:225px" %)((( 144 -If sensor is already Joined to LoRaWAN network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once. 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 + 145 145 Meanwhile, BLE module will be active and user can connect via BLE to configure device. 146 146 ))) 147 -|(% style="background-color:#f2f2f2; width:167px" %)Pressing ACT for more than 3s|(% style="background-color:#f2f2f2; width:117px" %)Active Device|(% style="background-color:#f2f2f2; width:225px" %)((( 148 -(% style="background-color:#f2f2f2; color:green" %)**Green led**(%%) will fast blink 5 times, device will enter (% style="color:#037691" %)**OTA mode**(%%) for 3 seconds. And then start to JOIN LoRaWAN network. 149 -(% style="background-color:#f2f2f2; color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network. 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 + 150 150 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. 151 151 ))) 152 -| (% style="background-color:#f2f2f2; width:167px" %)Fast press ACT 5 times.|(% style="background-color:#f2f2f2; width:117px" %)Deactivate Device|(% style="background-color:#f2f2f2; width:225px" %)(% style="color:red"%)**Redled**(%%)will solid on for 5 seconds. MeansPS-LB-NAisin 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. 153 153 154 154 155 155 156 -== 1.7 Pin Mapping == 157 +1. 158 +11. Pin Mapping 157 157 160 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image004.png]] 158 158 159 -[[image:1675213198663-754.png||_mstalt="297167"]] 162 +1. 163 +11. BLE connection 160 160 161 - 162 -== 1.8 BLE connection == 163 - 164 - 165 165 SDI-12-LB support BLE remote configure. 166 166 167 + 167 167 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: 168 168 169 169 * Press button to send an uplink ... ... @@ -173,172 +173,175 @@ 173 173 If there is no activity connection on BLE in 60 seconds, sensor will shut down BLE module to enter low power mode. 174 174 175 175 176 -== 1.9 Mechanical == 177 177 178 178 179 -[[image:image-20230201090139-2.png||_mstalt="428623"]] 179 +1. 180 +11. Mechanical 180 180 181 -[[image:image -20230201090139-3.png||_mstalt="428987"]]182 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image005.png]] 182 182 183 -[[image:i mage-20230201090139-4.png||_mstalt="429351"]]184 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image006.png]] 184 184 186 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image007.png]] 185 185 186 -= 2. Configure SDI-12 to connect to LoRaWAN network = 187 187 188 -== 2.1 How it works == 189 189 190 190 191 -The SDI-12-LB is configured as (% style="color:#037691" %)**LoRaWAN OTAA Class A**(%%) mode by default. It has OTAA keys to join LoRaWAN network. To connect a local LoRaWAN network, you need to input the OTAA keys in the LoRaWAN IoT server and activate the SDI-12-LB. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 20 minutes. 191 +1. Configure SDI-12 to connect to LoRaWAN network 192 +11. How it works 192 192 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. 193 193 194 -== 2.2 Quick guide to connect to LoRaWAN server (OTAA) == 195 195 197 +1. 198 +11. Quick guide to connect to LoRaWAN server (OTAA) 196 196 197 197 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. 198 198 199 199 200 -[[image:i mage-20230201090528-5.png||_mstalt="430300" height="465" width="1111"]]203 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image008.png]] 201 201 202 202 203 203 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. 204 204 205 205 206 - (% 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. 207 207 208 208 Each SDI-12-LB is shipped with a sticker with the default device EUI as below: 209 209 210 210 211 -[[image:i mage-20230201152430-20.jpeg||_mstalt="492245"]]214 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image009.png]] 212 212 213 213 217 + 218 + 219 + 214 214 You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot: 215 215 216 216 217 - (% style="color:blue" %)**Register the device**223 +**Register the device** 218 218 219 -[[image: 1675213652444-622.png||_mstalt="293657"]]225 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image010.png]] 220 220 221 221 222 - (% style="color:blue" %)**Add APP EUI and DEV EUI**228 +**Add APP EUI and DEV EUI** 223 223 224 224 225 -[[image: 1675213661769-223.png||_mstalt="295217"]]231 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image011.png]] 226 226 227 227 228 - (% style="color:blue" %)**Add APP EUI in the application**234 +**Add APP EUI in the application** 229 229 230 230 231 -[[image: 1675213675852-577.png||_mstalt="297947"]]237 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image012.png]] 232 232 233 233 234 - (% style="color:blue" %)**Add APP KEY**240 +**Add APP KEY** 235 235 236 -[[image: 1675213686734-883.png||_mstalt="298064"]]242 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image013.png]] 237 237 238 238 239 - (% style="color:blue" %)**Step 2**(%%): Activate on SDI-12-LB245 +**Step 2**: Activate on SDI-12-LB 240 240 241 241 242 242 Press the button for 5 seconds to activate the SDI-12-LB. 243 243 244 -(% style="color:green" %)**Green led**(%%) will fast blink 5 times, device will enter (% style="color:blue" %)**OTA mode** (%%)for 3 seconds. And then start to JOIN LoRaWAN network. (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network. 245 245 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. 246 246 247 -[[image:1675213704414-644.png||_mstalt="293748"]] 248 248 254 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image014.png]] 249 249 250 -== 2.3 SDI-12 Related Commands == 251 251 252 252 253 -User need to configure SDI-12-LB to communicate with SDI-12 sensors otherwise the uplink payload will only include a few bytes. 254 254 255 255 256 -=== 2.3.1 Basic SDI-12 debug command === 260 +1. 261 +11. SDI-12 Related Commands 257 257 258 258 259 -User canrunsomebasicSDI-12commandtodebug theconnectionto theSDI-12 sensor.Thesecommands can besentviaAT CommandorLoRaWAN downlinkcommand.264 +User need to configure SDI-12-LB to communicate with SDI-12 sensors otherwise the uplink payload will only include a few bytes. 260 260 261 -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. 262 262 263 -The following is the display information on the serial port and the server. 267 +1. 268 +11. 269 +111. Basic SDI-12 debug command 264 264 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. 265 265 266 -[[image:image-20230201091027-6.png||_mstalt="429065"]] 267 267 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. 268 268 269 -[[image:image-20230201091027-7.png||_mstalt="429429" height="261" width="1179"]] 270 270 277 +The following is the display information on the serial port and the server. 271 271 279 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image015.png]] 272 272 273 - ==== (% style="color:blue" %)**al! ~-~- Get SDI-12sensor Identification**(%%) ====281 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image016.png]] 274 274 283 +al! ~-~- Get SDI-12 sensor Identification 275 275 276 276 * AT Command: AT+ADDRI=aa 277 277 * LoRaWAN Downlink(prefix 0xAA00): AA 00 aa 278 278 279 - (% 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) 280 280 281 - (% 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) 282 282 283 283 293 + 284 284 The following is the display information on the serial port and the server. 285 285 286 286 287 -[[image:image -20230201091257-8.png||_mstalt="431392"]]297 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image017.png]] 288 288 299 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image018.png]] 289 289 290 -[[image:image-20230201091257-9.png||_mstalt="431756" height="225" width="1242"]] 291 291 302 +aM!,aMC!, aM1!- aM9!, aMC1!- aMC9! 292 292 293 - ==== (% style="color:blue" %)**aM!,aMC!,aM1!-aM9!, aMC1!-aMC9!**(%%)====304 +aM!: Start Non-Concurrent Measurement 294 294 306 +aMC!: Start Non-Concurrent Measurement – Request CRC 295 295 296 - (% style="color:red" %)**aM!**(%%):Start Non-ConcurrentMeasurement308 +aM1!- aM9!: Additional Measurements 297 297 298 - (% style="color:red" %)**aMC!**(%%):Start Non-ConcurrentMeasurement – Request CRC310 +aMC1!- aMC9!: Additional Measurements – Request CRC 299 299 300 -(% style="color:red" %)**aM1!- aM9! **(%%): Additional Measurements 301 301 302 -(% style="color:red" %)**aMC1!- aMC9!**(%%) : Additional Measurements – Request CRC 303 - 304 - 305 305 * AT Command : AT+ADDRM=0,1,0,1 306 - 307 307 * LoRaWAN Downlink(prefix 0xAA01): 0xAA 01 30 01 00 01 308 308 309 309 Downlink:AA 01 aa bb cc dd 310 310 311 - (% style="color:#037691" %)**aa**(%%): SDI-12 sensor address.318 +aa: SDI-12 sensor address. 312 312 313 - (% style="color:#037691" %)**bb**(%%): 0: no CRC, 1: request CRC320 +bb: 0: no CRC, 1: request CRC 314 314 315 - (% style="color:#037691" %)**cc**(%%): 1-9: Additional Measurement, 0: no additional measurement322 +cc: 1-9: Additional Measurement, 0: no additional measurement 316 316 317 - (% 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. 318 318 319 319 320 320 The following is the display information on the serial port and the server. 321 321 329 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image019.png]] 322 322 323 -[[image:image -20230201091630-10.png||_mstalt="449995"]]331 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image020.png]] 324 324 325 325 326 -[[image:image-20230201091630-11.png||_mstalt="450372" height="247" width="1165"]] 327 327 335 +aC!, aCC!, aC1!- aC9!, aCC1!- aCC9! 328 328 337 +aC!: Start Concurrent Measurement 329 329 330 - ==== (% style="color:blue" %)**aC!, aCC!,aC1!-aC9!,aCC1!-aCC9!**(%%)====339 +aCC!: Start Concurrent Measurement – Request CRC 331 331 341 +aC1!- aC9!: Start Additional Concurrent Measurements 332 332 333 - (% style="color:red" %)**aC!**(%%): Start Concurrent Measurement343 +aCC1!- aCC9!: Start Additional Concurrent Measurements – Request CRC 334 334 335 -(% style="color:red" %)**aCC!** (%%): Start Concurrent Measurement – Request CRC 336 336 337 -(% style="color:red" %)**aC1!- aC9!**(%%) : Start Additional Concurrent Measurements 338 - 339 -(% style="color:red" %)**aCC1!- aCC9!**(%%) : Start Additional Concurrent Measurements – Request CRC 340 - 341 - 342 342 * AT Command : AT+ADDRC=0,1,0,1 343 343 344 344 * LoRaWAN Downlink(0xAA02): 0xAA 02 30 01 00 01 ... ... @@ -345,29 +345,24 @@ 345 345 346 346 Downlink: AA 02 aa bb cc dd 347 347 348 - (% style="color:#037691" %)**aa**(%%): SDI-12 sensor address.352 +aa: SDI-12 sensor address. 349 349 350 - (% style="color:#037691" %)**bb**(%%): 0: no CRC, 1: request CRC354 +bb: 0: no CRC, 1: request CRC 351 351 352 - (% style="color:#037691" %)**cc**(%%): 1-9: Additional Measurement, 0: no additional measurement356 +cc: 1-9: Additional Measurement, 0: no additional measurement 353 353 354 - (% 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. 355 355 356 356 357 357 The following is the display information on the serial port and the server. 358 358 363 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image021.png]] 359 359 360 -[[image:image -20230201091954-12.png||_mstalt="453687"]]365 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image022.png]] 361 361 362 362 363 - [[image:image-20230201091954-13.png||_mstalt="454064"height="203"width="1117"]]368 +aR0!- aR9!, aRC0!- aRC9! 364 364 365 - 366 - 367 - 368 -==== (% style="color:blue" %)**aR0!- aR9!, aRC0!- aRC9!**(%%) ==== 369 - 370 - 371 371 Start Continuous Measurement 372 372 373 373 Start Continuous Measurement – Request CRC ... ... @@ -378,47 +378,46 @@ 378 378 379 379 Downlink: AA 03 aa bb cc dd 380 380 381 - (% style="color:#037691" %)**aa**(%%): SDI-12 sensor address.380 +aa: SDI-12 sensor address. 382 382 383 - (% style="color:#037691" %)**bb**(%%): 0: no CRC, 1: request CRC382 +bb: 0: no CRC, 1: request CRC 384 384 385 - (% style="color:#037691" %)**cc**(%%): 1-9: Additional Measurement, 0: no additional measurement384 +cc: 1-9: Additional Measurement, 0: no additional measurement 386 386 387 - (% 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. 388 388 389 389 390 390 The following is the display information on the serial port and the server. 391 391 391 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image023.png]] 392 392 393 -[[image:image -20230201092208-14.png||_mstalt="452283"]]393 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image024.png]] 394 394 395 +1. 396 +11. 397 +111. Advance SDI-12 Debug command 395 395 396 -[[image:image-20230201092208-15.png||_mstalt="452660" height="214" width="1140"]] 397 - 398 - 399 -=== 2.3.2 Advance SDI-12 Debug command === 400 - 401 - 402 402 This command can be used to debug all SDI-12 command. 403 403 404 404 405 405 LoRaWAN Downlink: A8 aa xx xx xx xx bb cc 406 406 407 -( % style="color:#037691" %)**aa**(%%): total SDI-12 command length404 +(aa: total SDI-12 command length) 408 408 409 -( % style="color:#037691" %)**xx**(%%): SDI-12 command406 +(xx: SDI-12 command) 410 410 411 -( % style="color:#037691" %)**bb**(%%): Delay to wait for return408 +(bb: Delay to wait for return) 412 412 413 -( % 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) 414 414 415 415 416 - (% style="color:blue" %)**Example:**(%%)AT+CFGDEV =0RC0!,1413 +Example: AT+CFGDEV =0RC0!,1 417 417 418 - (% style="color:#037691" %)**0RC0!**(%%): SDI-12 Command,415 +0RC0!: SDI-12 Command, 419 419 420 - (% style="color:#037691" %)**1 **(%%): Delay 1 second. ( 0: 810 mini-second)417 +1: Delay 1 second. ( 0: 810 mini-second) 421 421 419 + 422 422 Equal Downlink: 0xA8 05 30 52 43 30 21 01 01 423 423 424 424 ... ... @@ -425,171 +425,179 @@ 425 425 The following is the display information on the serial port and the server. 426 426 427 427 428 -[[image:i mage-20230201092355-16.png||_mstalt="453960"]]426 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image025.png]] 429 429 428 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image026.png]] 430 430 431 -[[image:image-20230201092355-17.png||_mstalt="454337" height="426" width="1135"]] 430 +1. 431 +11. 432 +111. Convert ASCII to String 432 432 433 - 434 -=== 2.3.3 Convert ASCII to String === 435 - 436 - 437 437 This command is used to convert between ASCII and String format. 438 438 436 + 439 439 AT+CONVFORM ( Max length: 80 bytes) 440 440 439 +Example: 441 441 442 - (%style="color:blue"%)**Example:**441 +1)AT+CONVFORM=0,string Convert String from String to ASCII 443 443 444 - 1) AT+CONVFORM=0, stringonvertString fromStringto ASCII443 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image027.png]] 445 445 446 -[[image:1675214845056-885.png||_mstalt="297622"]] 447 447 446 +2)AT+CONVFORM=1,ASCII Convert ASCII to String. 448 448 449 - 2) AT+CONVFORM=1, ASCII ConvertASCIItoString.448 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image028.png]] 450 450 451 -[[image:1675214856590-846.png||_mstalt="297739"]] 452 452 453 453 454 -=== 2.3.4 Define periodically SDI-12 commands and uplink. === 452 +1. 453 +11. 454 +111. Define periodically SDI-12 commands and uplink. 455 455 456 - 457 457 AT+COMMANDx & AT+DATACUTx 458 458 459 459 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. 460 460 461 461 462 -* (% style="color:blue" %)**AT Command:**461 +* ** AT Command:** 463 463 464 - (% style="color:#037691" %)**AT+COMMANDx=var1,var2,var3,var4.**463 +**AT+COMMANDx=var1,var2,var3,var4.** 465 465 466 - (% style="color:red" %)**var1**(%%): SDI-12 command , for example: 0RC0!465 +var1: SDI-12 command , for example: 0RC0! 467 467 468 - (% style="color:red" %)**var2**(%%): Wait timeout for return. (unit: second)467 +var2: Wait timeout for return. (unit: second) 469 469 470 - (% 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!//. 471 471 472 - (% style="color:red" %)**var4**(%%): validation check for return. If return invalid, SDI-12-LB will resend this command. Max3retries.471 +var4: validation check for return. If return invalid, SDI-12-LB will resend this command. Max 2 retries. 473 473 474 - (% style="color:red" %)**0**(%%)No validation check;473 +0 No validation check; 475 475 476 - (% style="color:red" %)**1**(%%)Check if return chars are printable char(0x20 ~~ 0x7E);475 +1 Check if return chars are printable char(0x20 ~~ 0x7E); 477 477 478 - (% style="color:red" %)**2**(%%)Check if there is return from SDI-12 sensor477 +2 Check if there is return from SDI-12 sensor 479 479 480 - (% 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); 481 481 482 482 483 -Each AT+COMMANDx is followed by a (% style="color:blue" %)**AT+DATACUT**(%%)command. AT+DATACUT command is used to take the useful string from the SDI-12 sensor so the final payload will have the minimum length to uplink.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. 484 484 485 485 486 - (% 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. 487 487 488 -(% border="1" style="width:436px" %) 489 -|(% style="background-color:#f2f2f2; width:433px" %)((( 490 -(% style="color:#0070c0" %)**AT+DATACUTx=a,b,c** 487 +|((( 488 +AT+DATACUTx=a,b,c 491 491 492 - **a**:490 +a: length for the return of AT+COMMAND 493 493 494 - **b**:492 +b:1: grab valid value by byte, max 6 bytes. 2: grab valid value by bytes section, max 3 sections. 495 495 496 - **c**:494 +c: define the position for valid value. 497 497 ))) 498 498 499 -For example, if return from AT+COMMAND1 is “013METER TER12 112T12-00024895<CR><LF>” , Below AT+DATACUT1 will get different result to combine payload: 500 500 498 +For example, if return from AT+COMMAND1 is “013METER TER12 112T12-00024895” ,. Below AT+DATACUT1 will get different result to combine payload: 501 501 502 -(% border="1" cellspacing="4" style="width:510px" %) 503 -|=(% style="width: 164px;background-color:#D9E2F3;color:#0070C0" %)**AT+DATACUT1 value**|=(% style="width: 344px;background-color:#D9E2F3;color:#0070C0" %)**Final Result to combine Payload** 504 -|(% style="background-color:#f2f2f2; width:164px" %)34,1,1+2+3|(% style="background-color:#f2f2f2; width:344px" %)0D 00 01 30 31 33 505 -|(% style="background-color:#f2f2f2; width:164px" %)34,2,1~~8+12~~16|(% style="background-color:#f2f2f2; width:344px" %)0D 00 01 30 31 33 4D 45 54 45 52 54 45 52 31 32 506 -|(% style="background-color:#f2f2f2; width:164px" %)34,2,1~~34|(% style="background-color:#f2f2f2; width:344px" %)0D 00 01 30 31 33 4D 45 54 45 52 20 20 20 54 45 52 31 32 20 31 31 32 54 31 32 2D 30 30 30 32 34 38 39 35 0D 0A 507 507 508 -* (% 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 509 509 510 -(% style="color:blue" %)**0xAF**(%%) downlink command can be used to set AT+COMMANDx or AT+DATACUTx. 511 511 512 512 513 - (%style="color:red" %)**Note: if user use AT+COMMANDx toadd a newcommand,healsoneedto send AT+DATACUTx downlink.**508 +* ** Downlink Payload:** 514 514 510 +**0xAF** downlink command can be used to set AT+COMMANDx or AT+DATACUTx. 515 515 516 -Format: ** (% style="color:#037691" %)AF MM NN LL XX XX XX XX YY(%%)** 517 517 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 + 518 518 Where: 519 519 520 -* (% style="color:#037691" %)**MM**(%%): the AT+COMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F,521 -* (% style="color:#037691" %)**NN**(%%): 1: set the AT+COMMAND value ; 2: set the AT+DATACUT value.522 -* (% style="color:#037691" %)**LL**(%%): The length of AT+COMMAND or AT+DATACUT command523 -* (% style="color:#037691" %)**XX XX XX XX**(%%): AT+COMMAND or AT+DATACUT command524 -* (% 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.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. 525 525 526 - (% style="color:blue" %)**Example:**526 +Example: 527 527 528 - [[image:image-20230201094129-18.png||_mstalt="455065"]]528 +**AF 03 01 07 30 4D 43 21 01 01 01 00**: Same as AT+COMMAND3=**0MC!**,** 1**,** 1**,** 1** 529 529 530 +**AF 03 02 06 10 01 05 06 09 0A 00**: Same as AT+DATACUT3=**16**,**1**,**5+6+9+10** 530 530 532 +**AF 03 02 06 0B 02 05 07 08 0A 00**: Same as AT+DATACUT3=**11**,**2**,**5~~7+8~~10** 531 531 532 -(% style="color:blue" %)**Clear SDI12 Command** 533 533 535 +**Clear SDI12 Command** 536 + 534 534 The AT+COMMANDx and AT+DATACUTx settings are stored in special location, user can use below command to clear them. 535 535 536 536 537 -* (% style="color:#037691" %)**AT Command:**540 +* ** AT Command:** 538 538 539 - (% 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 540 540 541 541 542 542 Etc. AT+CMDEAR=1,10 means erase AT+COMMAND1/AT+DATACUT1 to AT+COMMAND10/AT+DATACUT10 543 543 544 544 545 -* (% style="color:#037691" %)** Downlink Payload:**548 +* ** Downlink Payload:** 546 546 547 - (% style="color:#4f81bd" %)**0x09 aa bb**(%%)same as AT+CMDEAR=aa,bb550 +**~ 0x09 aa bb** same as AT+CMDEAR=aa,bb 548 548 549 549 550 550 551 -(% style="color:blue" %)**command combination** 552 552 555 +**command combination** 556 + 553 553 Below shows a screen shot how the results combines together to a uplink payload. 554 554 555 -[[image: 1675215745275-920.png||_mstalt="295334"]]559 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image029.png]] 556 556 557 557 558 -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. 559 559 560 - (% style="color:blue" %)**AT+ALLDATAMOD**(%%)will simply get all return and don't do CRC check as result for SDI-12 command. AT+DATACUTx command has higher priority, if AT+DATACUTx has been set, AT+ALLDATAMOD will be ignore for this SDI-12 command.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. 561 561 562 562 563 - (% style="color:#4f81bd" %)**For example:**(%%)as below photo, AT+ALLDATAMOD=1, but AT+DATACUT1 has been set, AT+DATACUT1 will be still effect the result.567 +For example: as below photo, AT+ALLDATAMOD=1, but AT+DATACUT1 has been set, AT+DATACUT1 will be still effect the result. 564 564 565 565 566 -[[image: 1675215782925-448.png||_mstalt="297466"]]570 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image030.png]] 567 567 568 568 569 -If AT+ALLDATAMOD=1, (% style="color:#4f81bd" %)**FX,X**(%%)will be added in the payload, FX specify which command is used and X specify the length of return. for example in above screen, F1 05 means the return is from AT+COMMAND1 and the return is 5 bytes.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. 570 570 571 571 572 572 573 - (% style="color:blue" %)**Compose Uplink**577 +**Compose Uplink** 574 574 575 - (% style="color:#4f81bd" %)**AT+DATAUP=0**579 +**AT+DATAUP=0** 576 576 577 -Compose the uplink payload with value returns in sequence and send with **__A SIGNLE UPLINK__**.581 +Compose the uplink payload with value returns in sequence and send with A SIGNLE UPLINK. 578 578 579 -Final Payload is **__Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx__**583 +Final Payload is Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx 580 580 581 581 Where PAYVER is defined by AT+PAYVER, below is an example screen shot. 582 582 583 583 584 -[[image: 1675215828102-844.png||_mstalt="294645"]]588 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image031.png]] 585 585 586 586 587 - (% style="color:#4f81bd" %)**AT+DATAUP=1**591 +**AT+DATAUP=1** 588 588 589 -Compose the uplink payload with value returns in sequence and send with **__Multiply UPLINKs__**.593 +Compose the uplink payload with value returns in sequence and send with Multiply UPLINKs. 590 590 591 -Final Payload is __**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA**__595 +Final Payload is 592 592 597 +**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA** 598 + 593 593 1. Battery Info (2 bytes): Battery voltage 594 594 1. PAYVER (1 byte): Defined by AT+PAYVER 595 595 1. PAYLOAD COUNT (1 byte): Total how many uplinks of this sampling. ... ... @@ -596,46 +596,60 @@ 596 596 1. PAYLOAD# (1 byte): Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT) 597 597 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 598 598 599 -[[image: 1675215848113-696.png||_mstalt="296998"]]605 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image032.png]] 600 600 601 601 602 - (% 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:** 603 603 604 -* For AU915/AS923 bands, if UplinkDwell time=0, max 51 bytes for each uplink ( so 51 -5 = 46 max valid date) 605 -* For AU915/AS923 bands, if UplinkDwell time=1, max 11 bytes for each uplink ( so 11 -5 = 6 max valid date). 606 -* For US915 band, max 11 bytes for each uplink ( so 11 -5 = 6 max valid date). 607 -* 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) 608 608 609 - (%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). 610 610 611 - (%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). 612 612 616 + ~* For all other bands: max 51 bytes for each uplink ( so 51 -5 = 46 max valid date). 613 613 614 - ==2.4UplinkPayload==618 + *** When AT+DATAUP=1, the maximum number of segments is 15, and the maximum total number of bytes is 1500;** 615 615 616 - ===2.4.1 DevicePayload,FPORT~=5===620 +**~ When AT+DATAUP=1 and AT+ADR=0, the maximum number of bytes of each payload is determined by the DR value.** 617 617 622 +1. 623 +11. Uplink Payload 618 618 625 + 626 +Uplink payloads have two types: 627 + 628 +* Distance Value: Use FPORT=2 629 +* Other control commands: Use other FPORT fields. 630 + 631 +The application server should parse the correct value based on FPORT settings. 632 + 633 + 634 +1. 635 +11. 636 +111. Device Payload, FPORT=5 637 + 619 619 Include device configure status. Once SDI-12-LB Joined the network, it will uplink this message to the server. 620 620 640 + 621 621 Users can also use the downlink command(0x26 01) to ask SDI-12-LB to resend this uplink. 622 622 623 -(% border="1" cellspacing="4" style="width:510px" %) 624 -|(% colspan="6" style="background-color:#d9e2f3; color:#0070c0" %)**Device Status (FPORT=5)** 625 -|(% style="background-color:#f2f2f2; width:103px" %)**Size (bytes)**|(% style="background-color:#f2f2f2; width:72px" %)**1**|(% style="background-color:#f2f2f2" %)**2**|(% style="background-color:#f2f2f2; width:91px" %)**1**|(% style="background-color:#f2f2f2; width:86px" %)**1**|(% style="background-color:#f2f2f2; width:44px" %)**2** 626 -|(% style="background-color:#f2f2f2; width:103px" %)**Value**|(% style="background-color:#f2f2f2; width:72px" %)Sensor Model|(% style="background-color:#f2f2f2" %)Firmware Version|(% style="background-color:#f2f2f2; width:91px" %)Frequency Band|(% style="background-color:#f2f2f2; width:86px" %)Sub-band|(% style="background-color:#f2f2f2; width:44px" %)BAT 627 627 628 -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 629 629 630 -[[image:1675215946738-635.png||_mstalt="297778"]] 631 631 649 +Example parse in TTNv3 632 632 633 - (% style="color:#037691" %)**Sensor Model**(%%): ForSDI-12-LB,this valueisx17651 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image033.png]] 634 634 635 - (% style="color:#037691" %)**FirmwareVersion**(%%):0x0100,Means:v1.0.0 version653 +**Sensor Model**: For SDI-12-LB, this value is 0x17 636 636 637 - (% style="color:#037691" %)**FrequencyBand**:655 +**Firmware Version**: 0x0100, Means: v1.0.0 version 638 638 657 +**Frequency Band**: 658 + 639 639 *0x01: EU868 640 640 641 641 *0x02: US915 ... ... @@ -665,7 +665,7 @@ 665 665 *0x0e: MA869 666 666 667 667 668 - (% style="color:#037691" %)**Sub-Band**:688 +**Sub-Band**: 669 669 670 670 AU915 and US915:value 0x00 ~~ 0x08 671 671 ... ... @@ -674,7 +674,7 @@ 674 674 Other Bands: Always 0x00 675 675 676 676 677 - (% style="color:#037691" %)**Battery Info**:697 +**Battery Info**: 678 678 679 679 Check the battery voltage. 680 680 ... ... @@ -683,7 +683,9 @@ 683 683 Ex2: 0x0B49 = 2889mV 684 684 685 685 686 -=== 2.4.2 Uplink Payload, FPORT~=2 === 706 +1. 707 +11. 708 +111. Uplink Payload, FPORT=2 687 687 688 688 689 689 There are different cases for uplink. See below ... ... @@ -692,25 +692,33 @@ 692 692 693 693 * Periodically Uplink: FPORT=2 694 694 695 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %) 696 -|=(% style="width: 90px;" %)((( 697 -**Size(bytes)** 698 -)))|=(% style="width: 80px;" %)**2**|=(% style="width: 90px;" %)**1**|=(% style="width: 240px;" %)**Length depends on the return from the commands** 699 -|(% 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**|((( 700 700 Battery(mV) 725 + 701 701 & 727 + 702 702 Interrupt_Flag 703 -)))|(% style="width:91px" %)[[PAYLOAD_VER>>||anchor="H3.6Setthepayloadversion"]]|(% style="width:212px" %)((( 704 -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 + 705 705 Payload length in server,server will show payload not provided in the LoRaWAN server. 706 706 ))) 707 707 708 -[[image:1675216282284-923.png||_mstalt="295633"]] 709 709 736 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image034.png]] 710 710 711 -=== 2.4.3 Battery Info === 712 712 713 713 740 +1. 741 +11. 742 +111. Battery Info 743 + 714 714 Check the battery voltage for SDI-12-LB. 715 715 716 716 Ex1: 0x0B45 = 2885mV ... ... @@ -718,12 +718,14 @@ 718 718 Ex2: 0x0B49 = 2889mV 719 719 720 720 721 -=== 2.4.4 Interrupt Pin === 751 +1. 752 +11. 753 +111. Interrupt Pin 722 722 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]]. 723 723 724 -This data field shows if this packet is generated by (% style="color:#037691" %)**Interrupt Pin**(%%) or not. [[Click here>>||anchor="H3.2SetInterruptMode"]] for the hardware and software set up. Note: The Internet Pin is a separate pin in the screw terminal. See [[pin mapping>>||anchor="H1.7PinMapping"]]. 725 725 726 - **Example:**758 +Example: 727 727 728 728 Ex1: 0x0B45:0x0B&0x80= 0x00 Normal uplink packet. 729 729 ... ... @@ -730,127 +730,244 @@ 730 730 Ex2: 0x8B49:0x8B&0x80= 0x80 Interrupt Uplink Packet. 731 731 732 732 733 -=== 2.4.5 Payload version === 765 +1. 766 +11. 767 +111. Payload version 734 734 735 -The version number of the payload, mainly used for decoding. The default is 01. 736 736 737 737 738 -=== 2.4.6 Decode payload in The Things Network === 739 739 740 740 773 + 774 + 775 +1. 776 +11. 777 +111. Decode payload in The Things Network 778 + 741 741 While using TTN network, you can add the payload format to decode the payload. 742 742 743 -[[image: 1675216779406-595.png||_mstalt="298376"]]781 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image035.png]] 744 744 745 745 746 746 There is no fix payload decoder in LoRaWAN server because the SDI-12 sensors returns are different. User need to write the decoder themselves for their case. 747 747 748 -SDI-12-LB TTN Payload Decoder: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>url:https://github.com/dragino/dragino-end-node-decoder]] 749 749 787 +下面的解码生成超链接放进去. 750 750 751 - == 2.5 UplinkInterval==789 +function Decoder(bytes, port) { 752 752 791 + if(port==5) 753 753 754 - 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 + { 755 755 756 - [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/#H4.1ChangeUplinkInterval>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/#H4.1ChangeUplinkInterval]]795 + var freq_band; 757 757 797 + var sub_band; 758 758 759 - ==2.6ExamplesToSet SDI commands. ==799 + var sensor; 760 760 761 -=== 2.6.1 Examples 1 === 762 762 802 + if(bytes[0]==0x17) 763 763 764 - COM portandSDI-12sensorcommunication converted toSDI-12-LBand SDI-12 sensor communication.804 + sensor= "SDI12-LB"; 765 765 766 -[[image:image-20230222143809-1.png||_mstalt="429962" height="564" width="729"]] 767 767 807 + var firm_ver= (bytes[1]&0x0f)+'.'+(bytes[2]>>4&0x0f)+'.'+(bytes[2]&0x0f); 768 768 769 -(% style="color:blue" %)**1) The AT+COMMANDx command is applied to the red arrow part, and sends the SDI12 command to the SDI12 sensor:** 770 770 771 - a.Sendthefirstcommand and get the firstreply:810 + if(bytes[3]==0x01) 772 772 773 - (%style="color:#037691"%)**AT+COMMANDx=1I!,0,0,1**812 + freq_band="EU868"; 774 774 775 - b.Sendthesecondcommandandgetthecondreply:814 + else if(bytes[3]==0x02) 776 776 777 - (%style="color:#037691"%)**AT+COMMANDx=2I!,0,0,1**816 + freq_band="US915"; 778 778 779 - c.Sendthethirdcommandandgetthethird reply:818 + else if(bytes[3]==0x03) 780 780 781 - (%style="color:#037691"%)**AT+COMMANDx=3I!,0,0,1**820 + freq_band="IN865"; 782 782 783 - d.Sendthefourthcommandandgetthe fourth reply:822 + else if(bytes[3]==0x04) 784 784 785 - (%style="color:#037691"%)**AT+COMMANDx=4I!,0,0,1**824 + freq_band="AU915"; 786 786 787 - e.Sendthefifthcommandplusthesixth command, get thesixth reply:826 + else if(bytes[3]==0x05) 788 788 789 - (%style="color:#037691"%)**AT+COMMANDx=1M!,2,1,1**828 + freq_band="KZ865"; 790 790 791 - f.Sendtheseventhcommandplustheeighth command, getthe eighth reply:830 + else if(bytes[3]==0x06) 792 792 793 - (%style="color:#037691"%)**AT+COMMANDx=2M!,2,1,1**832 + freq_band="RU864"; 794 794 795 - g.Sendtheninthcommandplusthetenth command, getthetenth reply:834 + else if(bytes[3]==0x07) 796 796 797 - (%style="color:#037691" %)**AT+COMMANDx=3M!,1,1,1**836 + freq_band="AS923"; 798 798 799 - h.Sendtheeleventhcommandplusthetwelfth command, getthe twelfth reply:838 + else if(bytes[3]==0x08) 800 800 801 - (%style="color:#037691"%)**AT+COMMANDx=4M!,1,1,1**840 + freq_band="AS923_1"; 802 802 842 + else if(bytes[3]==0x09) 803 803 804 - (%style="color:blue"%)**2) TheAT+DATACUTxcommandisappliedtothe greenarrow part, receiving andcut out data from theSDI12sensor:**844 + freq_band="AS923_2"; 805 805 806 - a.Thefirstreply,all34characters: ”113TRUEBNERSMT100038220303182331<CR><LF>”846 + else if(bytes[3]==0x0A) 807 807 808 - Cutoutallcharacters:(%_mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=34,2,1~~34**(% style="color:#037691"%);848 + freq_band="AS923_3"; 809 809 810 - b. Thesixthreply,all31characters:”1+19210+1.04+0.00+22.49+11.75<CR><LF>”850 + else if(bytes[3]==0x0F) 811 811 812 - Cutoutallcharacters:(%_mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=31,2,1~~31**(% style="color:#037691" %);852 + freq_band="AS923_4"; 813 813 814 - c. Theeighthreply,all31characters:”2+18990+1.08+0.00+22.24+11.80<CR><LF>”854 + else if(bytes[3]==0x0B) 815 815 816 - Cutoutallcharacters:(%_mstmutation="1"style="color:#037691"%)**AT+ALLDATAMOD=1orAT+DATACUTx=31,2,1~~31**(% style="color:#037691"%);856 + freq_band="CN470"; 817 817 818 - d. Thetenthreply,all15characters:”3-2919.8+24.0<CR><LF>”858 + else if(bytes[3]==0x0C) 819 819 820 - Cutoutallcharacters:(%_mstmutation="1"style="color:#037691"%)**AT+ALLDATAMOD=1orAT+DATACUTx=15,2,1~~15**(% style="color:#037691"%);860 + freq_band="EU433"; 821 821 822 - e. Thetwelfthreply,all25characters:”4+30.8+22.84+4.7+954.38<CR><LF>”862 + else if(bytes[3]==0x0D) 823 823 824 - Partialcut,thecutsensoraddressandthefirst two parameters:(% style="color:#037691" %)**AT+DATACUTx=25,2,1~~12, cut out the character field ” 4+30.8+22.84”**.864 + freq_band="KR920"; 825 825 866 + else if(bytes[3]==0x0E) 826 826 827 - ==2.7Frequency Plans==868 + freq_band="MA869"; 828 828 829 829 830 - TheSDI-12-LBusesOTAAmode and belowfrequency plansbydefault. If user want to use it with different frequency plan, please refer the AT command sets.871 + if(bytes[4]==0xff) 831 831 832 - [[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/]]873 + sub_band="NULL"; 833 833 875 + else 834 834 835 - ==2.8FirmwareChangeLog==877 + sub_band=bytes[4]; 836 836 837 837 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 + 838 838 **Firmware download link:** 839 839 840 -[[https:~~/~~/www.dropbox.com/sh/ qrbgbikb109lkiv/AACBR-v_ZhZAMengcY7Nsa1ja?dl=0>>https://www.dropbox.com/sh/qrbgbikb109lkiv/AACBR-v_ZhZAMengcY7Nsa1ja?dl=0]]986 +[[https:~~/~~/www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0>>url:https://www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0]] 841 841 842 842 843 -= 3. Configure SDI-12-LB via AT Command or LoRaWAN Downlink = 844 844 990 +1. Configure SDI-12-LB via AT Command or LoRaWAN Downlink 845 845 846 846 Use can configure SDI-12-LB via AT Command or LoRaWAN Downlink. 847 847 848 -* AT Command Connection: See [[FAQ>> ||anchor="H7.FAQ"]].849 -* 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: 850 850 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 + 851 851 There are two kinds of commands to configure SDI-12-LB, they are: 852 852 853 -* (% style="color:blue" %)**General Commands**.1002 +* **General Commands**. 854 854 855 855 These commands are to configure: 856 856 ... ... @@ -859,315 +859,388 @@ 859 859 860 860 They are same for all Dragino Device which support DLWS-005 LoRaWAN Stack. These commands can be found on the wiki: 861 861 862 -[[http:~~/~~/wiki.dragino.com/ xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/]]1011 +[[http:~~/~~/wiki.dragino.com/index.php?title=End_Device_Downlink_Command>>url:http://wiki.dragino.com/index.php?title=End_Device_Downlink_Command]] 863 863 864 864 865 -* (% style="color:blue" %)**Commands special design for SDI-12-LB**1014 +* **Commands special design for SDI-12-LB** 866 866 867 867 These commands only valid for SDI-12-LB, as below: 868 868 869 869 870 -== 3.1 Set Transmit Interval Time == 871 871 1020 +1. 1021 +11. Set Transmit Interval Time 872 872 873 873 Feature: Change LoRaWAN End Node Transmit Interval. 874 874 875 - (% style="color:blue" %)**AT Command: AT+TDC**1025 +**AT Command: AT+TDC** 876 876 877 -(% border="1" cellspacing="4" style="width:510px" %) 878 -|=(% style="width: 160px; background-color: rgb(217, 226, 243); color: rgb(0, 112, 192);" %)**Command Example**|=(% style="width: 160px; background-color: rgb(217, 226, 243); color: rgb(0, 112, 192);" %)**Function**|=(% style="width: 190px;background-color:#D9E2F3;color:#0070C0" %)**Response** 879 -|(% style="background-color:#f2f2f2; width:157px" %)AT+TDC=?|(% style="background-color:#f2f2f2; width:166px" %)Show current transmit Interval|(% style="background-color:#f2f2f2" %)((( 1027 +|**Command Example**|**Function**|**Response** 1028 +|AT+TDC=?|Show current transmit Interval|((( 880 880 30000 1030 + 881 881 OK 1032 + 882 882 the interval is 30000ms = 30s 883 883 ))) 884 -| (% style="background-color:#f2f2f2; width:157px" %)AT+TDC=60000|(% style="background-color:#f2f2f2; width:166px" %)Set Transmit Interval|(% style="background-color:#f2f2f2" %)(((1035 +|AT+TDC=60000|Set Transmit Interval|((( 885 885 OK 1037 + 886 886 Set transmit interval to 60000ms = 60 seconds 887 887 ))) 888 888 889 -(% style="color:blue" %)**Downlink Command: 0x01** 890 890 1042 +**Downlink Command: 0x01** 891 891 892 892 Format: Command Code (0x01) followed by 3 bytes time value. 893 893 894 -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. 895 895 896 -* Example 1: Downlink Payload: 0100001E 897 -* 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 898 898 899 899 900 900 901 -== 3.2 Set Interrupt Mode == 1053 +1. 1054 +11. Set Interrupt Mode 902 902 903 - 904 904 Feature, Set Interrupt mode for GPIO_EXIT. 905 905 906 - (% style="color:blue" %)**AT Command: AT+INTMOD**1058 +**AT Command: AT+INTMOD** 907 907 908 -(% border="1" cellspacing="4" style="width:510px" %) 909 -|=(% style="width: 154px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 196px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 157px;background-color:#D9E2F3;color:#0070C0" %)**Response** 910 -|(% style="background-color:#f2f2f2; width:154px" %)AT+INTMOD=?|(% style="background-color:#f2f2f2; width:196px" %)Show current interrupt mode|(% style="background-color:#f2f2f2; width:157px" %)((( 1060 +|**Command Example**|**Function**|**Response** 1061 +|AT+INTMOD=?|Show current interrupt mode|((( 911 911 0 1063 + 912 912 OK 913 -the mode is 0 =Disable Interrupt 1065 + 1066 +the mode is 0 = No interruption 914 914 ))) 915 -| (% style="background-color:#f2f2f2; width:154px" %)AT+INTMOD=2|(% style="background-color:#f2f2f2; width:196px" %)(((1068 +|AT+INTMOD=2|((( 916 916 Set Transmit Interval 917 -0. (Disable Interrupt), 918 -~1. (Trigger by rising and falling edge) 919 -2. (Trigger by falling edge) 920 -3. (Trigger by rising edge) 921 -)))|(% style="background-color:#f2f2f2; width:157px" %)OK 922 922 923 -(% 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 924 924 1077 + 1078 +**Downlink Command: 0x06** 1079 + 925 925 Format: Command Code (0x06) followed by 3 bytes. 926 926 927 927 This means that the interrupt mode of the end node is set to 0x000003=3 (rising edge trigger), and the type code is 06. 928 928 929 -* Example 1: Downlink Payload: 06000000 930 -* 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 931 931 932 932 1088 +1. 1089 +11. Set the output time 933 933 934 -== 3.3 Set the output time == 935 - 936 - 937 937 Feature, Control the output 3V3 , 5V or 12V. 938 938 939 - (% style="color:blue" %)**AT Command: AT+3V3T**1093 +**AT Command: AT+3V3T** 940 940 941 -(% border="1" cellspacing="4" style="width:474px" %) 942 -|=(% style="width: 154px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 201px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 116px;background-color:#D9E2F3;color:#0070C0" %)**Response** 943 -|(% style="background-color:#f2f2f2; width:154px" %)AT+3V3T=?|(% style="background-color:#f2f2f2; width:201px" %)Show 3V3 open time.|(% style="background-color:#f2f2f2; width:116px" %)((( 1095 +|**Command Example**|**Function**|**Response** 1096 +|AT+3V3T=?|Show 3V3 open time.|((( 944 944 0 1098 + 945 945 OK 946 946 ))) 947 -| (% style="background-color:#f2f2f2; width:154px" %)AT+3V3T=0|(% style="background-color:#f2f2f2; width:201px" %)Normally open 3V3 power supply.|(% style="background-color:#f2f2f2; width:116px" %)(((1101 +|AT+3V3T=0|Normally open 3V3 power supply.|((( 948 948 OK 1103 + 949 949 default setting 950 950 ))) 951 -| (% style="background-color:#f2f2f2; width:154px" %)AT+3V3T=1000|(% style="background-color:#f2f2f2; width:201px" %)Close after a delay of 1000 milliseconds.|(% style="background-color:#f2f2f2; width:116px" %)(((1106 +|AT+3V3T=1000|Close after a delay of 1000 milliseconds.|((( 952 952 OK 1108 + 1109 + 953 953 ))) 954 -| (% style="background-color:#f2f2f2; width:154px" %)AT+3V3T=65535|(% style="background-color:#f2f2f2; width:201px" %)Normally closed 3V3 power supply.|(% style="background-color:#f2f2f2; width:116px" %)(((1111 +|AT+3V3T=65535|Normally closed 3V3 power supply.|((( 955 955 OK 1113 + 1114 + 956 956 ))) 957 957 958 958 959 - (% style="color:blue" %)**AT Command: AT+5VT**1118 +**AT Command: AT+5VT** 960 960 961 -(% border="1" cellspacing="4" style="width:470px" %) 962 -|=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 196px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 114px;background-color:#D9E2F3;color:#0070C0" %)**Response** 963 -|(% style="background-color:#f2f2f2; width:155px" %)AT+5VT=?|(% style="background-color:#f2f2f2; width:196px" %)Show 5V open time.|(% style="background-color:#f2f2f2; width:114px" %)((( 1120 +|**Command Example**|**Function**|**Response** 1121 +|AT+5VT=?|Show 5V open time.|((( 964 964 0 1123 + 965 965 OK 966 966 ))) 967 -| (% style="background-color:#f2f2f2; width:155px" %)AT+5VT=0|(% style="background-color:#f2f2f2; width:196px" %)Normally closed 5V power supply.|(% style="background-color:#f2f2f2; width:114px" %)(((1126 +|AT+5VT=0|Normally closed 5V power supply.|((( 968 968 OK 1128 + 969 969 default setting 970 970 ))) 971 -| (% style="background-color:#f2f2f2; width:155px" %)AT+5VT=1000|(% style="background-color:#f2f2f2; width:196px" %)Close after a delay of 1000 milliseconds.|(% style="background-color:#f2f2f2; width:114px" %)(((1131 +|AT+5VT=1000|Close after a delay of 1000 milliseconds.|((( 972 972 OK 1133 + 1134 + 973 973 ))) 974 -| (% style="background-color:#f2f2f2; width:155px" %)AT+5VT=65535|(% style="background-color:#f2f2f2; width:196px" %)Normally open 5V power supply.|(% style="background-color:#f2f2f2; width:114px" %)(((1136 +|AT+5VT=65535|Normally open 5V power supply.|((( 975 975 OK 1138 + 1139 + 976 976 ))) 977 977 978 978 979 - (% style="color:blue" %)**AT Command: AT+12VT**1143 +**AT Command: AT+12VT** 980 980 981 -(% border="1" cellspacing="4" style="width:443px" %) 982 -|=(% style="width: 156px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 199px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 83px;background-color:#D9E2F3;color:#0070C0" %)**Response** 983 -|(% style="background-color:#f2f2f2; width:156px" %)AT+12VT=?|(% style="background-color:#f2f2f2; width:199px" %)Show 12V open time.|(% style="background-color:#f2f2f2; width:83px" %)((( 1145 +|**Command Example**|**Function**|**Response** 1146 +|AT+12VT=?|Show 12V open time.|((( 984 984 0 1148 + 985 985 OK 986 986 ))) 987 -| (% style="background-color:#f2f2f2; width:156px" %)AT+12VT=0|(% style="background-color:#f2f2f2; width:199px" %)Normally closed 12V power supply.|(% style="background-color:#f2f2f2; width:83px" %)OK988 -| (% 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" %)(((1151 +|AT+12VT=0|Normally closed 12V power supply.|OK 1152 +|AT+12VT=500|Close after a delay of 500 milliseconds.|((( 989 989 OK 1154 + 1155 + 990 990 ))) 991 991 992 -(% style="color:blue" %)**Downlink Command: 0x07** 993 993 1159 +**Downlink Command: 0x07** 1160 + 994 994 Format: Command Code (0x07) followed by 3 bytes. 995 995 996 996 The first byte is which power, the second and third bytes are the time to turn on. 997 997 998 -* Example 1: Downlink Payload: 070101F4 **~-~-->**999 -* Example 2: Downlink Payload: 0701FFFF **~-~-->**AT+3V3T=655351000 -* Example 3: Downlink Payload: 070203E8 **~-~-->**AT+5VT=10001001 -* Example 4: Downlink Payload: 07020000 **~-~-->**AT+5VT=01002 -* Example 5: Downlink Payload: 070301F4 **~-~-->**AT+12VT=5001003 -* 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 1004 1004 1005 1005 1173 +1. 1174 +11. Set the all data mode 1006 1006 1007 -== 3.4 Set the all data mode == 1008 - 1009 - 1010 1010 Feature, Set the all data mode. 1011 1011 1012 - (% style="color:blue" %)**AT Command: AT+ALLDATAMOD**1178 +**AT Command: AT+ALLDATAMOD** 1013 1013 1014 -(% border="1" cellspacing="4" style="width:437px" %) 1015 -|=(% style="background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="background-color:#D9E2F3;color:#0070C0" %)**Response** 1016 -|(% style="background-color:#f2f2f2" %)AT+ALLDATAMOD=?|(% style="background-color:#f2f2f2" %)Show current all data mode|(% style="background-color:#f2f2f2" %)((( 1180 +|**Command Example**|**Function**|**Response** 1181 +|AT+ALLDATAMOD=?|Show current all data mode|((( 1017 1017 0 1183 + 1184 + 1018 1018 OK 1019 1019 ))) 1020 -| (% style="background-color:#f2f2f2" %)AT+ALLDATAMOD=1|(% style="background-color:#f2f2f2" %)Set all data mode is 1.|(% style="background-color:#f2f2f2" %)OK1187 +|AT+ALLDATAMOD=1|Set all data mode is 1.|OK 1021 1021 1022 -(% style="color:blue" %)**Downlink Command: 0xAB** 1023 1023 1190 +**Downlink Command: 0xAB** 1191 + 1024 1024 Format: Command Code (0xAB) followed by 1 bytes. 1025 1025 1026 -* Example 1: Downlink Payload: AB 00 1027 -* 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 1028 1028 1029 1029 1198 +1. 1199 +11. Set the splicing payload for uplink 1030 1030 1031 -== 3.5 Set the splicing payload for uplink == 1032 - 1033 - 1034 1034 Feature, splicing payload for uplink. 1035 1035 1036 - (% style="color:blue" %)**AT Command: AT+DATAUP**1203 +**AT Command: AT+DATAUP** 1037 1037 1038 -(% border="1" cellspacing="4" style="width:510px" %) 1039 -|=(% style="width: 154px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 266px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="background-color:#D9E2F3;color:#0070C0" %)**Response** 1040 -|(% style="background-color:#f2f2f2; width:154px" %)AT+DATAUP =?|(% style="background-color:#f2f2f2; width:266px" %)Show current splicing payload for uplink mode|(% style="background-color:#f2f2f2" %)((( 1205 +|**Command Example**|**Function**|**Response** 1206 +|AT+DATAUP =?|Show current splicing payload for uplink mode|((( 1041 1041 0 1208 + 1209 + 1042 1042 OK 1043 1043 ))) 1044 -| (% style="background-color:#f2f2f2; width:154px" %)AT+DATAUP =0|(% style="background-color:#f2f2f2; width:266px" %)(((1212 +|AT+DATAUP =0|((( 1045 1045 Set splicing payload for uplink mode is 0. 1046 -)))|(% style="background-color:#f2f2f2" %)((( 1214 + 1215 + 1216 +)))|((( 1047 1047 OK 1218 + 1219 + 1048 1048 ))) 1049 -|(% style="background-color:#f2f2f2; width:154px" %)AT+DATAUP =1|(% style="background-color:#f2f2f2; width:266px" %)Set splicing payload for uplink mode is 1 , and the each splice uplink is sent sequentially.|(% style="background-color:#f2f2f2" %)OK 1050 -|(% style="background-color:#f2f2f2; width:154px" %)AT+DATAUP =1,20000|(% style="background-color:#f2f2f2; width:266px" %)((( 1051 -Set splicing payload for uplink mode is 1, and the uplink interval of each splice to 20000 milliseconds. 1052 -)))|(% style="background-color:#f2f2f2" %)OK 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. 1053 1053 1054 -(% style="color:blue" %)**Downlink Command: 0xAD** 1225 + 1226 +)))|OK 1055 1055 1228 + 1229 +**Downlink Command: 0xAD** 1230 + 1056 1056 Format: Command Code (0xAD) followed by 1 bytes or 5 bytes. 1057 1057 1058 -* Example 1: Downlink Payload: AD 00 1059 -* Example 2: Downlink Payload: AD 01 1060 -* 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 1061 1061 1062 1062 This means that the interval is set to 0x000014=20S 1063 1063 1064 1064 1065 -== 3.6 Set the payload version == 1240 +1. 1241 +11. Set the payload version 1066 1066 1067 - 1068 1068 Feature, Set the payload version. 1069 1069 1070 - (% style="color:blue" %)**AT Command: AT+PAYVER**1245 +**AT Command: AT+PAYVER** 1071 1071 1072 -(% border="1" cellspacing="4" style="width:437px" %) 1073 -|=(% style="width: 158px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 192px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="background-color:#D9E2F3;color:#0070C0" %)**Response** 1074 -|(% style="background-color:#f2f2f2; width:158px" %)AT+PAYVER=?|(% style="background-color:#f2f2f2; width:192px" %)Show current payload version|(% style="background-color:#f2f2f2" %)((( 1247 +|**Command Example**|**Function**|**Response** 1248 +|AT+PAYVER=?|Show current payload version|((( 1075 1075 1 1250 + 1251 + 1076 1076 OK 1077 1077 ))) 1078 -| (% style="background-color:#f2f2f2; width:158px" %)AT+PAYVER=5|(% style="background-color:#f2f2f2; width:192px" %)Set payload version is 5.|(% style="background-color:#f2f2f2" %)OK1254 +|AT+PAYVER=5|Set payload version is 5.|OK 1079 1079 1080 -(% style="color:blue" %)**Downlink Command: 0xAE** 1081 1081 1257 +**Downlink Command: 0xAE** 1258 + 1082 1082 Format: Command Code (0xAE) followed by 1 bytes. 1083 1083 1084 -* Example 1: Downlink Payload: AE 01 1085 -* 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 1086 1086 1087 1087 1088 1088 1089 -= 4. Battery & Power Consumption = 1266 +1. Battery & how to replace 1267 +11. Battery Type 1090 1090 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. 1091 1091 1092 -SDI-12-LB uses ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace. 1093 1093 1094 - [[**BatteryInfo& PowerConsumption Analyze**>>url:http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]].1272 +The discharge curve is not linear so can’t simply use percentage to show the battery level. Below is the battery performance. 1095 1095 1274 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image036.png]] 1096 1096 1097 -= 5. Remote Configure device = 1098 1098 1099 - ==5.1 ConnectviaBLE==1277 +Minimum Working Voltage for the SDI-12-LB: 1100 1100 1279 +SDI-12-LB: 2.45v ~~ 3.6v 1101 1101 1102 -Please see this instruction for how to configure via BLE: [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]] 1103 1103 1282 +1. 1283 +11. Replace Battery 1104 1104 1105 - ==5.2ATCommandSet==1285 +Any battery with range 2.45 ~~ 3.6v can be a replacement. We recommend to use Li-SOCl2 Battery. 1106 1106 1287 +And make sure the positive and negative pins match. 1107 1107 1108 1108 1109 -= 6. OTA firmware update = 1110 1110 1291 +1. 1292 +11. Power Consumption Analyze 1111 1111 1112 -Please see this link for how to do OTA firmware update. 1113 1113 1114 - [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/]]1295 +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. 1115 1115 1116 1116 1117 - =7.FAQ=1298 +Instruction to use as below: 1118 1118 1119 -== 7.1 How to use AT Command via UART to access device? == 1120 1120 1301 +Step 1: Downlink the up-to-date DRAGINO_Battery_Life_Prediction_Table.xlsx from: 1121 1121 1122 - See:[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H1.LoRaSTv4baseHardware>>url:http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H1.LoRaSTv4baseHardware]]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/]] 1123 1123 1124 1124 1125 - ==7.2How to updatefirmwareviaUART port? ==1306 +Step 2: Open it and choose 1126 1126 1308 +* Product Model 1309 +* Uplink Interval 1310 +* Working Mode 1127 1127 1128 - See: [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H1.LoRaSTv4baseHardware>>url:http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H1.LoRaSTv4baseHardware]]1312 +And the Life expectation in difference case will be shown on the right. 1129 1129 1314 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image037.png]] 1130 1130 1131 -== 7.3 How to change the LoRa Frequency Bands/Region? == 1132 1132 1317 +The battery related documents as below: 1133 1133 1134 -You can follow the instructions for [[how to upgrade image>>doc:Main.Firmware Upgrade Instruction for STM32 base products.WebHome]]. 1135 -When downloading the images, choose the required image file for download. 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]] 1136 1136 1137 1137 1138 -= 8. Order Info = 1139 1139 1140 - 1141 -((( 1142 -(% style="color:blue" %)**Part Number: SDI-12-LB-XXX** 1325 +|((( 1326 +JST-XH-2P connector 1143 1143 ))) 1144 1144 1145 -((( 1146 -XXX: The default frequency band 1147 -))) 1329 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image038.png]] 1148 1148 1149 -((( 1150 -(% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band 1151 -(% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band 1152 -(% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band 1153 -(% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band 1154 -(% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band 1155 -(% style="color:red" %)**US915**(%%): LoRaWAN US915 band 1156 -(% style="color:red" %)**IN865**(%%): LoRaWAN IN865 band 1157 -(% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band 1158 -))) 1159 1159 1160 1160 1333 +1. 1334 +11. 1335 +111. Battery Note 1161 1161 1162 - =9.Packing Info=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. 1163 1163 1164 1164 1165 -(% style="color:#037691" %)**Package Includes**: 1340 +1. 1341 +11. 1342 +111. Replace the battery 1166 1166 1167 - *SDI-12-LBSDI-12toLoRaWANConverterx11344 +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. 1168 1168 1169 -(% style="color:#037691" %)**Dimension and weight**: 1170 1170 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) 1348 + 1349 + 1350 + 1351 + 1352 + 1353 + 1354 +1. Remote Configure device 1355 +11. Connect via BLE 1356 + 1357 + 1358 +Please see this instruction for how to configure via BLE: 1359 + 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/]] 1361 + 1362 + 1363 +1. 1364 +11. AT Command Set 1365 + 1366 + 1367 + 1368 +1. OTA firmware update 1369 + 1370 +Please see this link for how to do OTA firmware update. 1371 + 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/]] 1373 + 1374 + 1375 + 1376 + 1377 + 1378 + 1379 + 1380 + 1381 + 1382 + 1383 + 1384 +1. Order Info 1385 + 1386 +**Package Includes**: 1387 + 1388 +* SDI-12-LB SDI-12 to LoRaWAN Converter 1389 + 1390 + 1391 +**Dimension and weight**: 1392 + 1171 1171 * Device Size: cm 1172 1172 * Device Weight: g 1173 1173 * Package Size / pcs : cm ... ... @@ -1175,11 +1175,13 @@ 1175 1175 1176 1176 1177 1177 1178 -= 10. Support = 1179 1179 1180 1180 1402 +1. Support 1403 + 1181 1181 * 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 1182 1182 1183 - * 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]] 1184 1184 1185 1185
- 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-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
- image-20230222143809-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -322.1 KB - Content