Last modified by Mengting Qiu on 2025/07/03 15:42

From version 41.2
edited by Xiaoling
on 2023/02/01 15:24
Change comment: There is no comment for this version
To version 48.1
edited by Bei Jinggeng
on 2023/03/24 10:15
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.Xiaoling
1 +XWiki.Bei
Content
... ... @@ -1,5 +1,5 @@
1 1  (% style="text-align:center" %)
2 -[[image:image-20230131183542-1.jpeg||height="694" width="694"]]
2 +[[image:image-20230131183542-1.jpeg||_mstalt="470678" height="694" width="694"]]
3 3  
4 4  **Table of Contents:**
5 5  
... ... @@ -22,30 +22,40 @@
22 22  == 1.1 ​What is SDI-12 to LoRaWAN Converter ==
23 23  
24 24  
25 +(((
25 25  The Dragino (% style="color:blue" %)**SDI-12-LB**(%%) is a (% style="color:blue" %)**SDI-12 to LoRaWAN Converter **(%%)designed for Smart Agriculture solution.
27 +)))
26 26  
29 +(((
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.
31 +)))
28 28  
33 +(((
29 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.
35 +)))
30 30  
37 +(((
31 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.
39 +)))
32 32  
41 +(((
33 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.
43 +)))
34 34  
45 +(((
35 35  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 +)))
36 36  
37 37  
38 -[[image:image-20230201084414-1.png||height="464" width="1108"]]
50 +[[image:image-20230201084414-1.png||_mstalt="427765" height="464" width="1108"]]
39 39  
40 40  
41 -
42 -
43 43  == ​1.2 Features ==
44 44  
45 45  
46 46  * LoRaWAN 1.0.3 Class A
47 47  * Ultra-low power consumption
48 -* Controllable 5v and 12v output to power external sensor
58 +* Controllable 3.3v, 5v and 12v output to power external sensor
49 49  * SDI-12 Protocol to connect to SDI-12 Sensor
50 50  * Monitor Battery Level
51 51  * Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865
... ... @@ -55,6 +55,7 @@
55 55  * Downlink to change configure
56 56  * 8500mAh Battery for long term use
57 57  
68 +
58 58  == 1.3 Specification ==
59 59  
60 60  
... ... @@ -67,6 +67,8 @@
67 67  (% style="color:#037691" %)**Common DC Characteristics:**
68 68  
69 69  * Supply Voltage: 2.5v ~~ 3.6v
81 +* Support current: 5V 300mA
82 + 12V 100mA
70 70  * Operating Temperature: -40 ~~ 85°C
71 71  
72 72  (% style="color:#037691" %)**LoRa Spec:**
... ... @@ -101,11 +101,12 @@
101 101  * Sleep Mode: 5uA @ 3.3v
102 102  * LoRa Transmit Mode: 125mA @ 20dBm, 82mA @ 14dBm
103 103  
117 +
104 104  == 1.4 Connect to SDI-12 Sensor ==
105 105  
106 106  
107 107  
108 -[[image:1675212538524-889.png]]
122 +[[image:1675212538524-889.png||_mstalt="298272"]]
109 109  
110 110  
111 111  == 1.5 Sleep mode and working mode ==
... ... @@ -119,27 +119,27 @@
119 119  == 1.6 Button & LEDs ==
120 120  
121 121  
122 -[[image:1675212633011-651.png]]
136 +[[image:1675212633011-651.png||_mstalt="291538"]]
123 123  
124 124  
125 -
126 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" %)(((
140 +|=(% style="width: 167px;" %)**Behavior on ACT**|=(% style="width: 109px;" %)**Function**|=(% style="width: 231px;" %)**Action**
141 +|(% style="width:167px" %)Pressing ACT between 1s < time < 3s|(% style="width:109px" %)Send an uplink|(% style="width:231px" %)(((
129 129  If sensor is already Joined to LoRaWAN network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once.
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" %)(((
145 +|(% style="width:167px" %)Pressing ACT for more than 3s|(% style="width:109px" %)Active Device|(% style="width:231px" %)(((
133 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 134  (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.
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" %)**Red led**(%%) will solid on for 5 seconds. Means PS-LB is in Deep Sleep Mode.
150 +|(% style="width:167px" %)Fast press ACT 5 times.|(% style="width:109px" %)Deactivate Device|(% style="width:231px" %)(% style="color:red" %)**Red led**(%%) will solid on for 5 seconds. Means SDI-12-LB is in Deep Sleep Mode.
138 138  
152 +
139 139  == 1.7 Pin Mapping ==
140 140  
141 141  
142 -[[image:1675213198663-754.png]]
156 +[[image:1675213198663-754.png||_mstalt="297167"]]
143 143  
144 144  
145 145  == 1.8 BLE connection ==
... ... @@ -159,11 +159,11 @@
159 159  == 1.9 Mechanical ==
160 160  
161 161  
162 -[[image:image-20230201090139-2.png]]
176 +[[image:image-20230201090139-2.png||_mstalt="428623"]]
163 163  
164 -[[image:image-20230201090139-3.png]]
178 +[[image:image-20230201090139-3.png||_mstalt="428987"]]
165 165  
166 -[[image:image-20230201090139-4.png]]
180 +[[image:image-20230201090139-4.png||_mstalt="429351"]]
167 167  
168 168  
169 169  = 2. Configure SDI-12 to connect to LoRaWAN network =
... ... @@ -180,7 +180,7 @@
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"]]
197 +[[image:image-20230201090528-5.png||_mstalt="430300" height="465" width="1111"]]
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.
... ... @@ -191,7 +191,7 @@
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]]
208 +[[image:image-20230201152430-20.jpeg||_mstalt="492245"]]
195 195  
196 196  
197 197  You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
... ... @@ -199,24 +199,24 @@
199 199  
200 200  (% style="color:blue" %)**Register the device**
201 201  
202 -[[image:1675213652444-622.png]]
216 +[[image:1675213652444-622.png||_mstalt="293657"]]
203 203  
204 204  
205 205  (% style="color:blue" %)**Add APP EUI and DEV EUI**
206 206  
207 207  
208 -[[image:1675213661769-223.png]]
222 +[[image:1675213661769-223.png||_mstalt="295217"]]
209 209  
210 210  
211 211  (% style="color:blue" %)**Add APP EUI in the application**
212 212  
213 213  
214 -[[image:1675213675852-577.png]]
228 +[[image:1675213675852-577.png||_mstalt="297947"]]
215 215  
216 216  
217 217  (% style="color:blue" %)**Add APP KEY**
218 218  
219 -[[image:1675213686734-883.png]]
233 +[[image:1675213686734-883.png||_mstalt="298064"]]
220 220  
221 221  
222 222  (% style="color:blue" %)**Step 2**(%%): Activate on SDI-12-LB
... ... @@ -224,11 +224,10 @@
224 224  
225 225  Press the button for 5 seconds to activate the SDI-12-LB.
226 226  
227 -
228 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.
229 229  
230 230  
231 -[[image:1675213704414-644.png]]
244 +[[image:1675213704414-644.png||_mstalt="293748"]]
232 232  
233 233  
234 234  == ​2.3 SDI-12 Related Commands ==
... ... @@ -247,11 +247,11 @@
247 247  The following is the display information on the serial port and the server.
248 248  
249 249  
263 +[[image:image-20230201091027-6.png||_mstalt="429065"]]
250 250  
251 -[[image:image-20230201091027-6.png]]
252 252  
266 +[[image:image-20230201091027-7.png||_mstalt="429429" height="261" width="1179"]]
253 253  
254 -[[image:image-20230201091027-7.png||height="261" width="1179"]]
255 255  
256 256  
257 257  ==== (% style="color:blue" %)**al!  ~-~- Get SDI-12 sensor Identification**(%%) ====
... ... @@ -262,16 +262,16 @@
262 262  
263 263  (% style="color:#037691" %)**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)
278 +(% style="color:blue" %)**Example :   **(%%)AT+ADDRI=0 ( Equal to downlink: 0x AA 00 30)
266 266  
267 267  
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]]
284 +[[image:image-20230201091257-8.png||_mstalt="431392"]]
272 272  
273 273  
274 -[[image:image-20230201091257-9.png||height="225" width="1242"]]
287 +[[image:image-20230201091257-9.png||_mstalt="431756" height="225" width="1242"]]
275 275  
276 276  
277 277  ==== (% style="color:blue" %)**aM!,aMC!, aM1!- aM9!, aMC1!- aMC9!**(%%) ====
... ... @@ -298,16 +298,16 @@
298 298  
299 299  (% style="color:#037691" %)**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.
314 +(% style="color:#037691" %)**dd**(%%): delay (in second) to send (% style="color:#037691" %)__**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  
306 306  
307 -[[image:image-20230201091630-10.png]]
320 +[[image:image-20230201091630-10.png||_mstalt="449995"]]
308 308  
309 309  
310 -[[image:image-20230201091630-11.png||height="247" width="1165"]]
323 +[[image:image-20230201091630-11.png||_mstalt="450372" height="247" width="1165"]]
311 311  
312 312  
313 313  
... ... @@ -335,16 +335,16 @@
335 335  
336 336  (% style="color:#037691" %)**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.
351 +(% style="color:#037691" %)**dd**(%%): delay (in second) to send (% style="color:#037691" %)__**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  
343 343  
344 -[[image:image-20230201091954-12.png]]
357 +[[image:image-20230201091954-12.png||_mstalt="453687"]]
345 345  
346 346  
347 -[[image:image-20230201091954-13.png||height="203" width="1117"]]
360 +[[image:image-20230201091954-13.png||_mstalt="454064" height="203" width="1117"]]
348 348  
349 349  
350 350  
... ... @@ -368,19 +368,18 @@
368 368  
369 369  (% style="color:#037691" %)**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.
384 +(% style="color:#037691" %)**dd**(%%): delay (in second) to send (% style="color:#037691" %)__**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  
376 376  
390 +[[image:image-20230201092208-14.png||_mstalt="452283"]]
377 377  
378 -[[image:image-20230201092208-14.png]]
379 379  
393 +[[image:image-20230201092208-15.png||_mstalt="452660" height="214" width="1140"]]
380 380  
381 -[[image:image-20230201092208-15.png||height="214" width="1140"]]
382 382  
383 -
384 384  === 2.3.2 Advance SDI-12 Debug command ===
385 385  
386 386  
... ... @@ -410,10 +410,10 @@
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]]
425 +[[image:image-20230201092355-16.png||_mstalt="453960"]]
414 414  
415 415  
416 -[[image:image-20230201092355-17.png||height="426" width="1135"]]
428 +[[image:image-20230201092355-17.png||_mstalt="454337" height="426" width="1135"]]
417 417  
418 418  
419 419  === 2.3.3 Convert ASCII to String ===
... ... @@ -428,12 +428,12 @@
428 428  
429 429  1) AT+CONVFORM=0, string Convert String from String to ASCII
430 430  
431 -[[image:1675214845056-885.png]]
443 +[[image:1675214845056-885.png||_mstalt="297622"]]
432 432  
433 433  
434 434  2) AT+CONVFORM=1, ASCII Convert ASCII to String.
435 435  
436 -[[image:1675214856590-846.png]]
448 +[[image:1675214856590-846.png||_mstalt="297739"]]
437 437  
438 438  
439 439  === 2.3.4 Define periodically SDI-12 commands and uplink. ===
... ... @@ -454,13 +454,13 @@
454 454  
455 455  (% style="color:red" %)**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.
469 +(% style="color:red" %)**var4**(%%): validation check for return. If return invalid, SDI-12-LB will resend this command. Max 3 retries.
458 458  
459 459  (% style="color:red" %)**0 **(%%) No validation check;
460 460  
461 461  (% style="color:red" %)**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 sensor
475 +(% style="color:red" %)**2**(%%)  Check if there is return from SDI-12 sensor
464 464  
465 465  (% style="color:red" %)**3** (%%) Check if return pass CRC check ( SDI-12 command var1 must include CRC request);
466 466  
... ... @@ -481,14 +481,14 @@
481 481  **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:
496 +For example, if return from AT+COMMAND1 is “013METER   TER12 112T12-00024895<CR><LF>” , Below AT+DATACUT1 will get different result to combine payload:
485 485  
486 486  
487 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
500 +|=(% style="width: 164px;" %)**AT+DATACUT1 value**|=(% style="width: 344px;" %)**Final Result to combine Payload**
501 +|(% style="width:164px" %)34,1,1+2+3|(% style="width:344px" %)0D 00 01 30 31 33
502 +|(% style="width:164px" %)34,2,1~~8+12~~16|(% style="width:344px" %)0D 00 01 30 31 33 4D 45 54 45 52 54 45 52 31 32
503 +|(% style="width:164px" %)34,2,1~~34|(% style="width:344px" %)0D 00 01 30 31 33 4D 45 54 45 52 20 20 20 54 45 52 31 32 20 31 31 32 54 31 32 2D 30 30 30 32 34 38 39 35 0D 0A
492 492  
493 493  * (% style="color:blue" %)** Downlink Payload:**
494 494  
... ... @@ -503,16 +503,17 @@
503 503  Where:
504 504  
505 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.
518 +* (% style="color:#037691" %)**NN **(%%):  1: set the AT+COMMAND value ; 2: set the AT+DATACUT value.
507 507  * (% style="color:#037691" %)**LL **(%%):  The length of AT+COMMAND or AT+DATACUT command
508 508  * (% style="color:#037691" %)**XX XX XX XX **(%%): AT+COMMAND or AT+DATACUT command
509 -* (% 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. 
521 +* (% style="color:#037691" %)**YY **(%%):  If YY=0, SDI-12-LB will execute the downlink command without uplink; if YY=1, SDI-12-LB will execute an uplink after got this command. 
510 510  
511 511  (% style="color:blue" %)**Example:**
512 512  
513 -[[image:image-20230201094129-18.png]]
525 +[[image:image-20230201094129-18.png||_mstalt="455065"]]
514 514  
515 515  
528 +
516 516  (% style="color:blue" %)**Clear SDI12 Command**
517 517  
518 518  The AT+COMMANDx and AT+DATACUTx settings are stored in special location, user can use below command to clear them.
... ... @@ -536,7 +536,7 @@
536 536  
537 537  Below shows a screen shot how the results combines together to a uplink payload.
538 538  
539 -[[image:1675215745275-920.png]]
552 +[[image:1675215745275-920.png||_mstalt="295334"]]
540 540  
541 541  
542 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.
... ... @@ -544,10 +544,10 @@
544 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.
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.
560 +(% 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.
548 548  
549 549  
550 -[[image:1675215782925-448.png]]
563 +[[image:1675215782925-448.png||_mstalt="297466"]]
551 551  
552 552  
553 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.
... ... @@ -556,27 +556,24 @@
556 556  
557 557  (% style="color:blue" %)**Compose Uplink**
558 558  
559 -
560 560  (% style="color:#4f81bd" %)**AT+DATAUP=0**
561 561  
562 -Compose the uplink payload with value returns in sequence and send with A SIGNLE UPLINK.
574 +Compose the uplink payload with value returns in sequence and send with **__A SIGNLE UPLINK__**.
563 563  
564 -Final Payload is Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx
576 +Final Payload is **__Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx__**
565 565  
566 566  Where PAYVER is defined by AT+PAYVER, below is an example screen shot.
567 567  
568 568  
569 -[[image:1675215828102-844.png]]
581 +[[image:1675215828102-844.png||_mstalt="294645"]]
570 570  
571 571  
572 572  (% style="color:#4f81bd" %)**AT+DATAUP=1**
573 573  
574 -Compose the uplink payload with value returns in sequence and send with Multiply UPLINKs.
586 +Compose the uplink payload with value returns in sequence and send with **__Multiply UPLINKs__**.
575 575  
576 -Final Payload is
588 +Final Payload is __**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA**__
577 577  
578 -__**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA**__
579 -
580 580  1. Battery Info (2 bytes): Battery voltage
581 581  1. PAYVER (1 byte): Defined by AT+PAYVER
582 582  1. PAYLOAD COUNT (1 byte): Total how many uplinks of this sampling.
... ... @@ -583,7 +583,7 @@
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]]
596 +[[image:1675215848113-696.png||_mstalt="296998"]]
587 587  
588 588  
589 589  (% style="color:red" %)**Notice: the Max bytes is according to the max support bytes in different Frequency Bands for lowest SF. As below:**
... ... @@ -600,15 +600,6 @@
600 600  
601 601  == 2.4 Uplink Payload ==
602 602  
603 -
604 -Uplink payloads have two types:
605 -
606 -* Distance Value: Use FPORT=2
607 -* Other control commands: Use other FPORT fields.
608 -
609 -The application server should parse the correct value based on FPORT settings.
610 -
611 -
612 612  === 2.4.1 Device Payload, FPORT~=5 ===
613 613  
614 614  
... ... @@ -616,14 +616,14 @@
616 616  
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 +(% border="1" cellspacing="4" style="background-color:#f7faff; width:420px" %)
620 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
622 +|(% style="width:114px" %)**Size(bytes)**|(% style="width:39px" %)**1**|(% style="width:80px" %)**2**|(% style="width:89px" %)**1**|(% style="width:59px" %)**1**|(% style="width:37px" %)**2**
623 +|(% style="width:114px" %)**Value**|(% style="width:39px" %)Sensor Model|(% style="width:80px" %)Firmware Version|(% style="width:89px" %)Frequency Band|(% style="width:59px" %)Sub-band|(% style="width:37px" %)BAT
623 623  
624 624  Example parse in TTNv3
625 625  
626 -[[image:1675215946738-635.png]]
627 +[[image:1675215946738-635.png||_mstalt="297778"]]
627 627  
628 628  
629 629  (% style="color:#037691" %)**Sensor Model**(%%): For SDI-12-LB, this value is 0x17
... ... @@ -688,20 +688,20 @@
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" %)(((
692 +(% border="1" cellspacing="4" style="background-color:#f7faff; width:500px" %)
693 +|=(% style="width: 90px;" %)(((
693 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: 80px;" %)**2**|=(% style="width: 90px;" %)**1**|=(% style="width: 240px;" %)**Length depends on the return from the commands**
695 695  |(% style="width:93px" %)**Value**|(% style="width:83px" %)(((
696 696  Battery(mV)
697 697  &
698 698  Interrupt_Flag
699 -)))|(% style="width:70px" %)[[PAYLOAD_VER>>||anchor="H3.6Setthepayloadversion"]]|(% style="width:234px" %)(((
700 +)))|(% style="width:91px" %)[[PAYLOAD_VER>>||anchor="H3.6Setthepayloadversion"]]|(% style="width:212px" %)(((
700 700  If the valid payload is too long and exceed the maximum support.
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 +[[image:1675216282284-923.png||_mstalt="295633"]]
705 705  
706 706  
707 707  === 2.4.3 Battery Info ===
... ... @@ -728,6 +728,7 @@
728 728  
729 729  === 2.4.5 Payload version ===
730 730  
732 +The version number of the payload, mainly used for decoding. The default is 01.
731 731  
732 732  
733 733  === 2.4.6 ​Decode payload in The Things Network ===
... ... @@ -735,7 +735,7 @@
735 735  
736 736  While using TTN network, you can add the payload format to decode the payload.
737 737  
738 -[[image:1675216779406-595.png]]
740 +[[image:1675216779406-595.png||_mstalt="298376"]]
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.
... ... @@ -748,25 +748,91 @@
748 748  
749 749  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:
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]]]]
753 +[[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]]
752 752  
753 753  
756 +== 2.6 Examples To Set SDI commands. ==
754 754  
758 +=== 2.6.1 Examples 1 ===
755 755  
756 -== 2.6 Frequency Plans ==
757 757  
761 +COM port and SDI-12 sensor communication converted to SDI-12-LB and SDI-12 sensor communication.
758 758  
763 +[[image:image-20230222143809-1.png||_mstalt="429962" height="564" width="729"]]
764 +
765 +
766 +(% style="color:blue" %)**1) The AT+COMMANDx command is applied to the red arrow part, and sends the SDI12 command to the SDI12 sensor:**
767 +
768 +a. Send the first command and get the first reply:
769 +
770 +(% style="color:#037691" %)**AT+COMMANDx=1I!,0,0,1**
771 +
772 +b. Send the second command and get the second reply:
773 +
774 +(% style="color:#037691" %)**AT+COMMANDx=2I!,0,0,1**
775 +
776 +c. Send the third command and get the third reply:
777 +
778 +(% style="color:#037691" %)**AT+COMMANDx=3I!,0,0,1**
779 +
780 +d. Send the fourth command and get the fourth reply:
781 +
782 +(% style="color:#037691" %)**AT+COMMANDx=4I!,0,0,1**
783 +
784 +e. Send the fifth command plus the sixth command, get the sixth reply:
785 +
786 +(% style="color:#037691" %)**AT+COMMANDx=1M!,2,1,1**
787 +
788 +f. Send the seventh command plus the eighth command, get the eighth reply:
789 +
790 +(% style="color:#037691" %)**AT+COMMANDx=2M!,2,1,1**
791 +
792 +g. Send the ninth command plus the tenth command, get the tenth reply:
793 +
794 +(% style="color:#037691" %)**AT+COMMANDx=3M!,1,1,1**
795 +
796 +h. Send the eleventh command plus the twelfth command, get the twelfth reply:
797 +
798 +(% style="color:#037691" %)**AT+COMMANDx=4M!,1,1,1**
799 +
800 +
801 +(% style="color:blue" %)**2) The AT+DATACUTx command is applied to the green arrow part, receiving and cut out data from the SDI12 sensor:**
802 +
803 +a. The first reply, all 34 characters: ”113TRUEBNERSMT100038220303182331<CR><LF>”
804 +
805 +Cut out all characters: (% _mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=34,2,1~~34**(% style="color:#037691" %);
806 +
807 +b. The sixth reply, all 31 characters:”1+19210+1.04+0.00+22.49+11.75<CR><LF>”
808 +
809 +Cut out all characters: (% _mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=31,2,1~~31**(% style="color:#037691" %);
810 +
811 +c. The eighth reply, all 31 characters:”2+18990+1.08+0.00+22.24+11.80<CR><LF>”
812 +
813 +Cut out all characters: (% _mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=31,2,1~~31**(% style="color:#037691" %);
814 +
815 +d. The tenth reply, all 15 characters:”3-2919.8+24.0<CR><LF>”
816 +
817 +Cut out all characters: (% _mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=15,2,1~~15**(% style="color:#037691" %);
818 +
819 +e. The twelfth reply, all 25 characters:”4+30.8+22.84+4.7+954.38<CR><LF>”
820 +
821 +Partial cut, the cut sensor address and the first two parameters:(% style="color:#037691" %)**AT+DATACUTx=25,2,1~~12, cut out the character field ” 4+30.8+22.84”**.
822 +
823 +
824 +== 2.7 Frequency Plans ==
825 +
826 +
759 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 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/]]
762 762  
763 763  
764 -== 2.7 Firmware Change Log ==
832 +== 2.8 Firmware Change Log ==
765 765  
766 766  
767 767  **Firmware download link:**
768 768  
769 -[[https:~~/~~/www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0>>url:https://www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0]]
837 +[[https:~~/~~/www.dropbox.com/sh/qrbgbikb109lkiv/AACBR-v_ZhZAMengcY7Nsa1ja?dl=0>>https://www.dropbox.com/sh/qrbgbikb109lkiv/AACBR-v_ZhZAMengcY7Nsa1ja?dl=0]]
770 770  
771 771  
772 772  = 3. Configure SDI-12-LB via AT Command or LoRaWAN Downlink =
... ... @@ -796,7 +796,7 @@
796 796  These commands only valid for SDI-12-LB, as below:
797 797  
798 798  
799 -== ​​​​​​​3.1 Set Transmit Interval Time ==
867 +== 3.1 Set Transmit Interval Time ==
800 800  
801 801  
802 802  Feature: Change LoRaWAN End Node Transmit Interval.
... ... @@ -838,14 +838,14 @@
838 838  |(% style="width:156px" %)AT+INTMOD=?|(% style="width:187px" %)Show current interrupt mode|(% style="width:165px" %)(((
839 839  0
840 840  OK
841 -the mode is 0 = No interruption
909 +the mode is 0 = Disable Interrupt
842 842  )))
843 843  |(% style="width:156px" %)AT+INTMOD=2|(% style="width:187px" %)(((
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)
913 +0. (Disable Interrupt),
914 +~1. (Trigger by rising and falling edge)
915 +2. (Trigger by falling edge)
916 +3. (Trigger by rising edge)
849 849  )))|(% style="width:165px" %)OK
850 850  
851 851  (% style="color:blue" %)**Downlink Command: 0x06**
... ... @@ -987,6 +987,7 @@
987 987  
988 988  == 3.6 Set the payload version ==
989 989  
1058 +
990 990  Feature, Set the payload version.
991 991  
992 992  (% style="color:blue" %)**AT Command: AT+PAYVER**
... ... @@ -1017,7 +1017,7 @@
1017 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]]
1089 +[[image:1675234124233-857.png||_mstalt="295035"]]
1021 1021  
1022 1022  
1023 1023  Minimum Working Voltage for the SDI-12-LB:
... ... @@ -1051,7 +1051,7 @@
1051 1051  And the Life expectation in difference case will be shown on the right.
1052 1052  
1053 1053  
1054 -[[image:1675234155374-163.png]]
1123 +[[image:1675234155374-163.png||_mstalt="294411"]]
1055 1055  
1056 1056  
1057 1057  The battery related documents as below:
... ... @@ -1060,7 +1060,7 @@
1060 1060  * [[Lithium-Thionyl Chloride Battery datasheet, Tech Spec>>https://www.dropbox.com/sh/d4oyfnp8o94180o/AABQewCNSh5GPeQH86UxRgQQa?dl=0]]
1061 1061  * [[Lithium-ion Battery-Capacitor datasheet>>https://www.dropbox.com/s/791gjes2lcbfi1p/SPC_1520_datasheet.jpg?dl=0]], [[Tech Spec>>https://www.dropbox.com/s/4pkepr9qqqvtzf2/SPC1520%20Technical%20Specification20171123.pdf?dl=0]]
1062 1062  
1063 -[[image:image-20230201145019-19.png]]
1132 +[[image:image-20230201145019-19.png||_mstalt="453947"]]
1064 1064  
1065 1065  
1066 1066  === 4.3.1 ​Battery Note ===
... ... @@ -1099,7 +1099,7 @@
1099 1099  
1100 1100  = 7. FAQ =
1101 1101  
1102 -== 7.1 How to use AT Command to access device? ==
1171 +== 7.1 How to use AT Command  via UART to access device? ==
1103 1103  
1104 1104  
1105 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]]
... ... @@ -1121,10 +1121,15 @@
1121 1121  = 8. ​Order Info =
1122 1122  
1123 1123  
1193 +(((
1124 1124  (% style="color:blue" %)**Part Number: SDI-12-LB-XXX**
1195 +)))
1125 1125  
1197 +(((
1126 1126  XXX: The default frequency band
1199 +)))
1127 1127  
1201 +(((
1128 1128  (% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band
1129 1129  (% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band
1130 1130  (% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band
... ... @@ -1133,13 +1133,10 @@
1133 1133  (% style="color:red" %)**US915**(%%): LoRaWAN US915 band
1134 1134  (% style="color:red" %)**IN865**(%%): LoRaWAN IN865 band
1135 1135  (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
1210 +)))
1136 1136  
1137 1137  
1138 1138  
1139 -
1140 -
1141 -
1142 -
1143 1143  = 9. Packing Info =
1144 1144  
1145 1145  
image-20230222143809-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Bei
Size
... ... @@ -1,0 +1,1 @@
1 +322.1 KB
Content