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

From version 41.1
edited by Xiaoling
on 2023/02/01 15:24
Change comment: Uploaded new attachment "image-20230201152430-20.jpeg", version {1}
To version 47.1
edited by Bei Jinggeng
on 2023/03/20 10:22
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
... ... @@ -67,6 +67,8 @@
67 67  (% style="color:#037691" %)**Common DC Characteristics:**
68 68  
69 69  * Supply Voltage: 2.5v ~~ 3.6v
80 +* Support current: 5V 300mA
81 + 12V 100mA
70 70  * Operating Temperature: -40 ~~ 85°C
71 71  
72 72  (% style="color:#037691" %)**LoRa Spec:**
... ... @@ -105,7 +105,7 @@
105 105  
106 106  
107 107  
108 -[[image:1675212538524-889.png]]
120 +[[image:1675212538524-889.png||_mstalt="298272"]]
109 109  
110 110  
111 111  == 1.5 Sleep mode and working mode ==
... ... @@ -119,27 +119,26 @@
119 119  == 1.6 Button & LEDs ==
120 120  
121 121  
122 -[[image:1675212633011-651.png]]
134 +[[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" %)(((
138 +|=(% style="width: 167px;" %)**Behavior on ACT**|=(% style="width: 109px;" %)**Function**|=(% style="width: 231px;" %)**Action**
139 +|(% 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" %)(((
143 +|(% 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.
148 +|(% 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  
139 139  == 1.7 Pin Mapping ==
140 140  
141 141  
142 -[[image:1675213198663-754.png]]
153 +[[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]]
173 +[[image:image-20230201090139-2.png||_mstalt="428623"]]
163 163  
164 -[[image:image-20230201090139-3.png]]
175 +[[image:image-20230201090139-3.png||_mstalt="428987"]]
165 165  
166 -[[image:image-20230201090139-4.png]]
177 +[[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"]]
194 +[[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,35 +191,32 @@
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-20230131134744-2.jpeg]]
205 +[[image:image-20230201152430-20.jpeg||_mstalt="492245"]]
195 195  
196 196  
197 -
198 -
199 -
200 200  You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
201 201  
202 202  
203 203  (% style="color:blue" %)**Register the device**
204 204  
205 -[[image:1675213652444-622.png]]
213 +[[image:1675213652444-622.png||_mstalt="293657"]]
206 206  
207 207  
208 208  (% style="color:blue" %)**Add APP EUI and DEV EUI**
209 209  
210 210  
211 -[[image:1675213661769-223.png]]
219 +[[image:1675213661769-223.png||_mstalt="295217"]]
212 212  
213 213  
214 214  (% style="color:blue" %)**Add APP EUI in the application**
215 215  
216 216  
217 -[[image:1675213675852-577.png]]
225 +[[image:1675213675852-577.png||_mstalt="297947"]]
218 218  
219 219  
220 220  (% style="color:blue" %)**Add APP KEY**
221 221  
222 -[[image:1675213686734-883.png]]
230 +[[image:1675213686734-883.png||_mstalt="298064"]]
223 223  
224 224  
225 225  (% style="color:blue" %)**Step 2**(%%): Activate on SDI-12-LB
... ... @@ -227,11 +227,10 @@
227 227  
228 228  Press the button for 5 seconds to activate the SDI-12-LB.
229 229  
230 -
231 231  (% 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.
232 232  
233 233  
234 -[[image:1675213704414-644.png]]
241 +[[image:1675213704414-644.png||_mstalt="293748"]]
235 235  
236 236  
237 237  == ​2.3 SDI-12 Related Commands ==
... ... @@ -250,11 +250,11 @@
250 250  The following is the display information on the serial port and the server.
251 251  
252 252  
260 +[[image:image-20230201091027-6.png||_mstalt="429065"]]
253 253  
254 -[[image:image-20230201091027-6.png]]
255 255  
263 +[[image:image-20230201091027-7.png||_mstalt="429429" height="261" width="1179"]]
256 256  
257 -[[image:image-20230201091027-7.png||height="261" width="1179"]]
258 258  
259 259  
260 260  ==== (% style="color:blue" %)**al!  ~-~- Get SDI-12 sensor Identification**(%%) ====
... ... @@ -265,16 +265,16 @@
265 265  
266 266  (% style="color:#037691" %)**Parameter:  **(%%)aa: ASCII value of SDI-12 sensor address in downlink or HEX value in AT Command)
267 267  
268 -(% style="color:blue" %)**Example :   **AT+ADDRI=0 ( Equal to downlink: 0x AA 00 30)
275 +(% style="color:blue" %)**Example :   **(%%)AT+ADDRI=0 ( Equal to downlink: 0x AA 00 30)
269 269  
270 270  
271 271  The following is the display information on the serial port and the server.
272 272  
273 273  
274 -[[image:image-20230201091257-8.png]]
281 +[[image:image-20230201091257-8.png||_mstalt="431392"]]
275 275  
276 276  
277 -[[image:image-20230201091257-9.png||height="225" width="1242"]]
284 +[[image:image-20230201091257-9.png||_mstalt="431756" height="225" width="1242"]]
278 278  
279 279  
280 280  ==== (% style="color:blue" %)**aM!,aMC!, aM1!- aM9!, aMC1!- aMC9!**(%%) ====
... ... @@ -301,16 +301,16 @@
301 301  
302 302  (% style="color:#037691" %)**cc**(%%): 1-9: Additional Measurement, 0: no additional measurement
303 303  
304 -(% style="color:#037691" %)**dd**(%%): delay (in second) to send (% style="color:#037691" %)**aD0!**(%%) to get return.
311 +(% style="color:#037691" %)**dd**(%%): delay (in second) to send (% style="color:#037691" %)__**aD0!**__(%%) to get return.
305 305  
306 306  
307 307  The following is the display information on the serial port and the server.
308 308  
309 309  
310 -[[image:image-20230201091630-10.png]]
317 +[[image:image-20230201091630-10.png||_mstalt="449995"]]
311 311  
312 312  
313 -[[image:image-20230201091630-11.png||height="247" width="1165"]]
320 +[[image:image-20230201091630-11.png||_mstalt="450372" height="247" width="1165"]]
314 314  
315 315  
316 316  
... ... @@ -338,16 +338,16 @@
338 338  
339 339  (% style="color:#037691" %)**cc**(%%): 1-9: Additional Measurement, 0: no additional measurement
340 340  
341 -(% style="color:#037691" %)**dd**(%%): delay (in second) to send (% style="color:#037691" %)**aD0!**(%%) to get return.
348 +(% style="color:#037691" %)**dd**(%%): delay (in second) to send (% style="color:#037691" %)__**aD0!**__(%%)__ __to get return.
342 342  
343 343  
344 344  The following is the display information on the serial port and the server.
345 345  
346 346  
347 -[[image:image-20230201091954-12.png]]
354 +[[image:image-20230201091954-12.png||_mstalt="453687"]]
348 348  
349 349  
350 -[[image:image-20230201091954-13.png||height="203" width="1117"]]
357 +[[image:image-20230201091954-13.png||_mstalt="454064" height="203" width="1117"]]
351 351  
352 352  
353 353  
... ... @@ -371,19 +371,18 @@
371 371  
372 372  (% style="color:#037691" %)**cc**(%%): 1-9: Additional Measurement, 0: no additional measurement
373 373  
374 -(% style="color:#037691" %)**dd**(%%): delay (in second) to send (% style="color:#037691" %)**aD0!**(%%) to get return.
381 +(% style="color:#037691" %)**dd**(%%): delay (in second) to send (% style="color:#037691" %)__**aD0!**__(%%) to get return.
375 375  
376 376  
377 377  The following is the display information on the serial port and the server.
378 378  
379 379  
387 +[[image:image-20230201092208-14.png||_mstalt="452283"]]
380 380  
381 -[[image:image-20230201092208-14.png]]
382 382  
390 +[[image:image-20230201092208-15.png||_mstalt="452660" height="214" width="1140"]]
383 383  
384 -[[image:image-20230201092208-15.png||height="214" width="1140"]]
385 385  
386 -
387 387  === 2.3.2 Advance SDI-12 Debug command ===
388 388  
389 389  
... ... @@ -413,10 +413,10 @@
413 413  The following is the display information on the serial port and the server.
414 414  
415 415  
416 -[[image:image-20230201092355-16.png]]
422 +[[image:image-20230201092355-16.png||_mstalt="453960"]]
417 417  
418 418  
419 -[[image:image-20230201092355-17.png||height="426" width="1135"]]
425 +[[image:image-20230201092355-17.png||_mstalt="454337" height="426" width="1135"]]
420 420  
421 421  
422 422  === 2.3.3 Convert ASCII to String ===
... ... @@ -431,12 +431,12 @@
431 431  
432 432  1) AT+CONVFORM=0, string Convert String from String to ASCII
433 433  
434 -[[image:1675214845056-885.png]]
440 +[[image:1675214845056-885.png||_mstalt="297622"]]
435 435  
436 436  
437 437  2) AT+CONVFORM=1, ASCII Convert ASCII to String.
438 438  
439 -[[image:1675214856590-846.png]]
445 +[[image:1675214856590-846.png||_mstalt="297739"]]
440 440  
441 441  
442 442  === 2.3.4 Define periodically SDI-12 commands and uplink. ===
... ... @@ -457,13 +457,13 @@
457 457  
458 458  (% style="color:red" %)**var3**(%%): Whether to send //addrD0!// to get return after var2 timeout. 0: Don't Send //addrD0! //; 1: Send //addrD0!//.
459 459  
460 -(% style="color:red" %)**var4**(%%): validation check for return. If return invalid, SDI-12-LB will resend this command. Max 2 retries.
466 +(% style="color:red" %)**var4**(%%): validation check for return. If return invalid, SDI-12-LB will resend this command. Max 3 retries.
461 461  
462 462  (% style="color:red" %)**0 **(%%) No validation check;
463 463  
464 464  (% style="color:red" %)**1** (%%) Check if return chars are printable char(0x20 ~~ 0x7E);
465 465  
466 -(% style="color:#red" %)**2**(%%)  Check if there is return from SDI-12 sensor
472 +(% style="color:red" %)**2**(%%)  Check if there is return from SDI-12 sensor
467 467  
468 468  (% style="color:red" %)**3** (%%) Check if return pass CRC check ( SDI-12 command var1 must include CRC request);
469 469  
... ... @@ -484,14 +484,14 @@
484 484  **c**:  define the position for valid value. 
485 485  )))
486 486  
487 -For example, if return from AT+COMMAND1 is “013METER   TER12 112T12-00024895” , Below AT+DATACUT1 will get different result to combine payload:
493 +For example, if return from AT+COMMAND1 is “013METER   TER12 112T12-00024895<CR><LF>” , Below AT+DATACUT1 will get different result to combine payload:
488 488  
489 489  
490 490  (% border="1" cellspacing="4" style="background-color:#f7faff; width:510px" %)
491 -|(% style="width:170px" %)**AT+DATACUT1 value**|(% style="width:338px" %)**Final Result to combine Payload**
492 -|(% style="width:170px" %)34,1,1+2+3|(% style="width:338px" %)0D 00 01 30 31 33
493 -|(% 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
494 -|(% 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
497 +|=(% style="width: 164px;" %)**AT+DATACUT1 value**|=(% style="width: 344px;" %)**Final Result to combine Payload**
498 +|(% style="width:164px" %)34,1,1+2+3|(% style="width:344px" %)0D 00 01 30 31 33
499 +|(% 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
500 +|(% 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
495 495  
496 496  * (% style="color:blue" %)** Downlink Payload:**
497 497  
... ... @@ -506,16 +506,17 @@
506 506  Where:
507 507  
508 508  * (% style="color:#037691" %)**MM **(%%): the AT+COMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F,
509 -* (% style="color:#037691" %)**NN **(%%):  1: set the AT+DATACUT value ; 2: set the AT+DATACUT value.
515 +* (% style="color:#037691" %)**NN **(%%):  1: set the AT+COMMAND value ; 2: set the AT+DATACUT value.
510 510  * (% style="color:#037691" %)**LL **(%%):  The length of AT+COMMAND or AT+DATACUT command
511 511  * (% style="color:#037691" %)**XX XX XX XX **(%%): AT+COMMAND or AT+DATACUT command
512 -* (% 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. 
518 +* (% 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. 
513 513  
514 514  (% style="color:blue" %)**Example:**
515 515  
516 -[[image:image-20230201094129-18.png]]
522 +[[image:image-20230201094129-18.png||_mstalt="455065"]]
517 517  
518 518  
525 +
519 519  (% style="color:blue" %)**Clear SDI12 Command**
520 520  
521 521  The AT+COMMANDx and AT+DATACUTx settings are stored in special location, user can use below command to clear them.
... ... @@ -539,7 +539,7 @@
539 539  
540 540  Below shows a screen shot how the results combines together to a uplink payload.
541 541  
542 -[[image:1675215745275-920.png]]
549 +[[image:1675215745275-920.png||_mstalt="295334"]]
543 543  
544 544  
545 545  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.
... ... @@ -547,10 +547,10 @@
547 547  (% 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.
548 548  
549 549  
550 -(% 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.
557 +(% 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.
551 551  
552 552  
553 -[[image:1675215782925-448.png]]
560 +[[image:1675215782925-448.png||_mstalt="297466"]]
554 554  
555 555  
556 556  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.
... ... @@ -559,27 +559,24 @@
559 559  
560 560  (% style="color:blue" %)**Compose Uplink**
561 561  
562 -
563 563  (% style="color:#4f81bd" %)**AT+DATAUP=0**
564 564  
565 -Compose the uplink payload with value returns in sequence and send with A SIGNLE UPLINK.
571 +Compose the uplink payload with value returns in sequence and send with **__A SIGNLE UPLINK__**.
566 566  
567 -Final Payload is Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx
573 +Final Payload is **__Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx__**
568 568  
569 569  Where PAYVER is defined by AT+PAYVER, below is an example screen shot.
570 570  
571 571  
572 -[[image:1675215828102-844.png]]
578 +[[image:1675215828102-844.png||_mstalt="294645"]]
573 573  
574 574  
575 575  (% style="color:#4f81bd" %)**AT+DATAUP=1**
576 576  
577 -Compose the uplink payload with value returns in sequence and send with Multiply UPLINKs.
583 +Compose the uplink payload with value returns in sequence and send with **__Multiply UPLINKs__**.
578 578  
579 -Final Payload is
585 +Final Payload is __**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA**__
580 580  
581 -__**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA**__
582 -
583 583  1. Battery Info (2 bytes): Battery voltage
584 584  1. PAYVER (1 byte): Defined by AT+PAYVER
585 585  1. PAYLOAD COUNT (1 byte): Total how many uplinks of this sampling.
... ... @@ -586,7 +586,7 @@
586 586  1. PAYLOAD# (1 byte): Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT)
587 587  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
588 588  
589 -[[image:1675215848113-696.png]]
593 +[[image:1675215848113-696.png||_mstalt="296998"]]
590 590  
591 591  
592 592  (% style="color:red" %)**Notice: the Max bytes is according to the max support bytes in different Frequency Bands for lowest SF. As below:**
... ... @@ -603,15 +603,6 @@
603 603  
604 604  == 2.4 Uplink Payload ==
605 605  
606 -
607 -Uplink payloads have two types:
608 -
609 -* Distance Value: Use FPORT=2
610 -* Other control commands: Use other FPORT fields.
611 -
612 -The application server should parse the correct value based on FPORT settings.
613 -
614 -
615 615  === 2.4.1 Device Payload, FPORT~=5 ===
616 616  
617 617  
... ... @@ -619,14 +619,14 @@
619 619  
620 620  Users can also use the downlink command(0x26 01) to ask SDI-12-LB to resend this uplink.
621 621  
622 -(% border="1" cellspacing="4" style="background-color:#f7faff; width:437px" %)
617 +(% border="1" cellspacing="4" style="background-color:#f7faff; width:420px" %)
623 623  |(% colspan="6" style="width:434px" %)**Device Status (FPORT=5)**
624 -|(% 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**
625 -|(% 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
619 +|(% 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**
620 +|(% 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
626 626  
627 627  Example parse in TTNv3
628 628  
629 -[[image:1675215946738-635.png]]
624 +[[image:1675215946738-635.png||_mstalt="297778"]]
630 630  
631 631  
632 632  (% style="color:#037691" %)**Sensor Model**(%%): For SDI-12-LB, this value is 0x17
... ... @@ -691,20 +691,20 @@
691 691  
692 692  * Periodically Uplink: FPORT=2
693 693  
694 -(% border="1" cellspacing="4" style="background-color:#f7faff; width:510px" %)
695 -|(% style="width:93px" %)(((
689 +(% border="1" cellspacing="4" style="background-color:#f7faff; width:500px" %)
690 +|=(% style="width: 90px;" %)(((
696 696  **Size(bytes)**
697 -)))|(% style="width:83px" %)**2**|(% style="width:70px" %)**1**|(% style="width:234px" %)**Length depends on the return from the commands**
692 +)))|=(% style="width: 80px;" %)**2**|=(% style="width: 90px;" %)**1**|=(% style="width: 240px;" %)**Length depends on the return from the commands**
698 698  |(% style="width:93px" %)**Value**|(% style="width:83px" %)(((
699 699  Battery(mV)
700 700  &
701 701  Interrupt_Flag
702 -)))|(% style="width:70px" %)[[PAYLOAD_VER>>||anchor="H3.6Setthepayloadversion"]]|(% style="width:234px" %)(((
697 +)))|(% style="width:91px" %)[[PAYLOAD_VER>>||anchor="H3.6Setthepayloadversion"]]|(% style="width:212px" %)(((
703 703  If the valid payload is too long and exceed the maximum support.
704 704  Payload length in server,server will show payload not provided in the LoRaWAN server.
705 705  )))
706 706  
707 -[[image:1675216282284-923.png]]
702 +[[image:1675216282284-923.png||_mstalt="295633"]]
708 708  
709 709  
710 710  === 2.4.3 Battery Info ===
... ... @@ -731,6 +731,7 @@
731 731  
732 732  === 2.4.5 Payload version ===
733 733  
729 +The version number of the payload, mainly used for decoding. The default is 01.
734 734  
735 735  
736 736  === 2.4.6 ​Decode payload in The Things Network ===
... ... @@ -738,7 +738,7 @@
738 738  
739 739  While using TTN network, you can add the payload format to decode the payload.
740 740  
741 -[[image:1675216779406-595.png]]
737 +[[image:1675216779406-595.png||_mstalt="298376"]]
742 742  
743 743  
744 744  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.
... ... @@ -751,25 +751,91 @@
751 751  
752 752  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:
753 753  
754 -[[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]]]]
750 +[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/#H4.1ChangeUplinkInterval>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/#H4.1ChangeUplinkInterval]]
755 755  
756 756  
753 +== 2.6 Examples To Set SDI commands. ==
757 757  
755 +=== 2.6.1 Examples 1 ===
758 758  
759 -== 2.6 Frequency Plans ==
760 760  
758 +COM port and SDI-12 sensor communication converted to SDI-12-LB and SDI-12 sensor communication.
761 761  
760 +[[image:image-20230222143809-1.png||_mstalt="429962" height="564" width="729"]]
761 +
762 +
763 +(% style="color:blue" %)**1) The AT+COMMANDx command is applied to the red arrow part, and sends the SDI12 command to the SDI12 sensor:**
764 +
765 +a. Send the first command and get the first reply:
766 +
767 +(% style="color:#037691" %)**AT+COMMANDx=1I!,0,0,1**
768 +
769 +b. Send the second command and get the second reply:
770 +
771 +(% style="color:#037691" %)**AT+COMMANDx=2I!,0,0,1**
772 +
773 +c. Send the third command and get the third reply:
774 +
775 +(% style="color:#037691" %)**AT+COMMANDx=3I!,0,0,1**
776 +
777 +d. Send the fourth command and get the fourth reply:
778 +
779 +(% style="color:#037691" %)**AT+COMMANDx=4I!,0,0,1**
780 +
781 +e. Send the fifth command plus the sixth command, get the sixth reply:
782 +
783 +(% style="color:#037691" %)**AT+COMMANDx=1M!,2,1,1**
784 +
785 +f. Send the seventh command plus the eighth command, get the eighth reply:
786 +
787 +(% style="color:#037691" %)**AT+COMMANDx=2M!,2,1,1**
788 +
789 +g. Send the ninth command plus the tenth command, get the tenth reply:
790 +
791 +(% style="color:#037691" %)**AT+COMMANDx=3M!,1,1,1**
792 +
793 +h. Send the eleventh command plus the twelfth command, get the twelfth reply:
794 +
795 +(% style="color:#037691" %)**AT+COMMANDx=4M!,1,1,1**
796 +
797 +
798 +(% style="color:blue" %)**2) The AT+DATACUTx command is applied to the green arrow part, receiving and cut out data from the SDI12 sensor:**
799 +
800 +a. The first reply, all 34 characters: ”113TRUEBNERSMT100038220303182331<CR><LF>”
801 +
802 +Cut out all characters: (% _mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=34,2,1~~34**(% style="color:#037691" %);
803 +
804 +b. The sixth reply, all 31 characters:”1+19210+1.04+0.00+22.49+11.75<CR><LF>”
805 +
806 +Cut out all characters: (% _mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=31,2,1~~31**(% style="color:#037691" %);
807 +
808 +c. The eighth reply, all 31 characters:”2+18990+1.08+0.00+22.24+11.80<CR><LF>”
809 +
810 +Cut out all characters: (% _mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=31,2,1~~31**(% style="color:#037691" %);
811 +
812 +d. The tenth reply, all 15 characters:”3-2919.8+24.0<CR><LF>”
813 +
814 +Cut out all characters: (% _mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=15,2,1~~15**(% style="color:#037691" %);
815 +
816 +e. The twelfth reply, all 25 characters:”4+30.8+22.84+4.7+954.38<CR><LF>”
817 +
818 +Partial cut, the cut sensor address and the first two parameters:(% style="color:#037691" %)**AT+DATACUTx=25,2,1~~12, cut out the character field ” 4+30.8+22.84”**.
819 +
820 +
821 +== 2.7 Frequency Plans ==
822 +
823 +
762 762  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.
763 763  
764 764  [[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/]]
765 765  
766 766  
767 -== 2.7 Firmware Change Log ==
829 +== 2.8 Firmware Change Log ==
768 768  
769 769  
770 770  **Firmware download link:**
771 771  
772 -[[https:~~/~~/www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0>>url:https://www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0]]
834 +[[https:~~/~~/www.dropbox.com/sh/qrbgbikb109lkiv/AACBR-v_ZhZAMengcY7Nsa1ja?dl=0>>https://www.dropbox.com/sh/qrbgbikb109lkiv/AACBR-v_ZhZAMengcY7Nsa1ja?dl=0]]
773 773  
774 774  
775 775  = 3. Configure SDI-12-LB via AT Command or LoRaWAN Downlink =
... ... @@ -799,7 +799,7 @@
799 799  These commands only valid for SDI-12-LB, as below:
800 800  
801 801  
802 -== ​​​​​​​3.1 Set Transmit Interval Time ==
864 +== 3.1 Set Transmit Interval Time ==
803 803  
804 804  
805 805  Feature: Change LoRaWAN End Node Transmit Interval.
... ... @@ -828,7 +828,6 @@
828 828  * Example 1: Downlink Payload: 0100001E  ~/~/ Set Transmit Interval (TDC) = 30 seconds
829 829  * Example 2: Downlink Payload: 0100003C  ~/~/  Set Transmit Interval (TDC) = 60 seconds
830 830  
831 -
832 832  == 3.2 Set Interrupt Mode ==
833 833  
834 834  
... ... @@ -841,14 +841,14 @@
841 841  |(% style="width:156px" %)AT+INTMOD=?|(% style="width:187px" %)Show current interrupt mode|(% style="width:165px" %)(((
842 842  0
843 843  OK
844 -the mode is 0 = No interruption
905 +the mode is 0 = Disable Interrupt
845 845  )))
846 846  |(% style="width:156px" %)AT+INTMOD=2|(% style="width:187px" %)(((
847 847  Set Transmit Interval
848 -~1. (Disable Interrupt),
849 -2. (Trigger by rising and falling edge)
850 -3. (Trigger by falling edge)
851 -4. (Trigger by rising edge)
909 +0. (Disable Interrupt),
910 +~1. (Trigger by rising and falling edge)
911 +2. (Trigger by falling edge)
912 +3. (Trigger by rising edge)
852 852  )))|(% style="width:165px" %)OK
853 853  
854 854  (% style="color:blue" %)**Downlink Command: 0x06**
... ... @@ -860,7 +860,6 @@
860 860  * Example 1: Downlink Payload: 06000000  ~/~/  Turn off interrupt mode
861 861  * Example 2: Downlink Payload: 06000003  ~/~/  Set the interrupt mode to rising edge trigger
862 862  
863 -
864 864  == 3.3 Set the output time ==
865 865  
866 866  
... ... @@ -930,7 +930,6 @@
930 930  * Example 5: Downlink Payload: 070301F4  **~-~-->**  AT+12VT=500
931 931  * Example 6: Downlink Payload: 07030000  **~-~-->**  AT+12VT=0
932 932  
933 -
934 934  == 3.4 Set the all data mode ==
935 935  
936 936  
... ... @@ -953,7 +953,6 @@
953 953  * Example 1: Downlink Payload: AB 00  ~/~/  AT+ALLDATAMOD=0
954 954  * Example 2: Downlink Payload: AB 01  ~/~/  AT+ALLDATAMOD=1
955 955  
956 -
957 957  == 3.5 Set the splicing payload for uplink ==
958 958  
959 959  
... ... @@ -990,6 +990,7 @@
990 990  
991 991  == 3.6 Set the payload version ==
992 992  
1051 +
993 993  Feature, Set the payload version.
994 994  
995 995  (% style="color:blue" %)**AT Command: AT+PAYVER**
... ... @@ -1009,7 +1009,6 @@
1009 1009  * Example 1: Downlink Payload: AE 01  ~/~/  AT+PAYVER=1
1010 1010  * Example 2: Downlink Payload: AE 05  ~/~/  AT+PAYVER=5
1011 1011  
1012 -
1013 1013  = 4. Battery & how to replace =
1014 1014  
1015 1015  == 4.1 Battery Type ==
... ... @@ -1020,7 +1020,7 @@
1020 1020  
1021 1021  The discharge curve is not linear so can’t simply use percentage to show the battery level. Below is the battery performance.
1022 1022  
1023 -[[image:1675234124233-857.png]]
1081 +[[image:1675234124233-857.png||_mstalt="295035"]]
1024 1024  
1025 1025  
1026 1026  Minimum Working Voltage for the SDI-12-LB:
... ... @@ -1054,7 +1054,7 @@
1054 1054  And the Life expectation in difference case will be shown on the right.
1055 1055  
1056 1056  
1057 -[[image:1675234155374-163.png]]
1115 +[[image:1675234155374-163.png||_mstalt="294411"]]
1058 1058  
1059 1059  
1060 1060  The battery related documents as below:
... ... @@ -1063,7 +1063,7 @@
1063 1063  * [[Lithium-Thionyl Chloride Battery datasheet, Tech Spec>>https://www.dropbox.com/sh/d4oyfnp8o94180o/AABQewCNSh5GPeQH86UxRgQQa?dl=0]]
1064 1064  * [[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]]
1065 1065  
1066 -[[image:image-20230201145019-19.png]]
1124 +[[image:image-20230201145019-19.png||_mstalt="453947"]]
1067 1067  
1068 1068  
1069 1069  === 4.3.1 ​Battery Note ===
... ... @@ -1124,10 +1124,15 @@
1124 1124  = 8. ​Order Info =
1125 1125  
1126 1126  
1185 +(((
1127 1127  (% style="color:blue" %)**Part Number: SDI-12-LB-XXX**
1187 +)))
1128 1128  
1189 +(((
1129 1129  XXX: The default frequency band
1191 +)))
1130 1130  
1193 +(((
1131 1131  (% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band
1132 1132  (% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band
1133 1133  (% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band
... ... @@ -1136,13 +1136,9 @@
1136 1136  (% style="color:red" %)**US915**(%%): LoRaWAN US915 band
1137 1137  (% style="color:red" %)**IN865**(%%): LoRaWAN IN865 band
1138 1138  (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
1202 +)))
1139 1139  
1140 1140  
1141 -
1142 -
1143 -
1144 -
1145 -
1146 1146  = 9. Packing Info =
1147 1147  
1148 1148  
... ... @@ -1157,7 +1157,6 @@
1157 1157  * Package Size / pcs : cm
1158 1158  * Weight / pcs : g
1159 1159  
1160 -
1161 1161  = 10. ​Support =
1162 1162  
1163 1163  
image-20230222143809-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Bei
Size
... ... @@ -1,0 +1,1 @@
1 +322.1 KB
Content