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

From version 48.14
edited by Xiaoling
on 2023/04/03 11:59
Change comment: There is no comment for this version
To version 46.1
edited by Bei Jinggeng
on 2023/03/20 10:20
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||_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  
... ... @@ -47,7 +47,7 @@
47 47  )))
48 48  
49 49  
50 -[[image:image-20230201084414-1.png||_mstalt="427765" height="464" width="1108"]]
50 +[[image:image-20230201084414-1.png||height="464" width="1108"]]
51 51  
52 52  
53 53  == ​1.2 Features ==
... ... @@ -65,7 +65,6 @@
65 65  * Downlink to change configure
66 66  * 8500mAh Battery for long term use
67 67  
68 -
69 69  == 1.3 Specification ==
70 70  
71 71  
... ... @@ -114,12 +114,11 @@
114 114  * Sleep Mode: 5uA @ 3.3v
115 115  * LoRa Transmit Mode: 125mA @ 20dBm, 82mA @ 14dBm
116 116  
117 -
118 118  == 1.4 Connect to SDI-12 Sensor ==
119 119  
120 120  
121 121  
122 -[[image:1675212538524-889.png||_mstalt="298272"]]
120 +[[image:1675212538524-889.png]]
123 123  
124 124  
125 125  == 1.5 Sleep mode and working mode ==
... ... @@ -133,27 +133,26 @@
133 133  == 1.6 Button & LEDs ==
134 134  
135 135  
136 -[[image:1675212633011-651.png||_mstalt="291538"]]
134 +[[image:1675212633011-651.png]]
137 137  
138 138  
139 -(% border="1" cellspacing="4" style="width:510px" %)
140 -|=(% 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**
141 -|(% 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" %)(((
137 +(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:510px" %)
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" %)(((
142 142  If sensor is already Joined to LoRaWAN network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once.
143 143  Meanwhile, BLE module will be active and user can connect via BLE to configure device.
144 144  )))
145 -|(% 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" %)(((
146 -(% 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.
147 -(% style="background-color:#f2f2f2; color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.
143 +|(% style="width:167px" %)Pressing ACT for more than 3s|(% style="width:109px" %)Active Device|(% style="width:231px" %)(((
144 +(% 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.
145 +(% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.
148 148  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.
149 149  )))
150 -|(% style="background-color:#f2f2f2; width:167px" %)Fast press ACT 5 times.|(% style="background-color:#f2f2f2; width:117px" %)Deactivate Device|(% style="background-color:#f2f2f2; width:225px" %)(% style="color:red" %)**Red led**(%%) will solid on for 5 seconds. Means PS-LB-NA 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.
151 151  
152 -
153 153  == 1.7 Pin Mapping ==
154 154  
155 155  
156 -[[image:1675213198663-754.png||_mstalt="297167"]]
153 +[[image:1675213198663-754.png]]
157 157  
158 158  
159 159  == 1.8 BLE connection ==
... ... @@ -173,11 +173,11 @@
173 173  == 1.9 Mechanical ==
174 174  
175 175  
176 -[[image:image-20230201090139-2.png||_mstalt="428623"]]
173 +[[image:image-20230201090139-2.png]]
177 177  
178 -[[image:image-20230201090139-3.png||_mstalt="428987"]]
175 +[[image:image-20230201090139-3.png]]
179 179  
180 -[[image:image-20230201090139-4.png||_mstalt="429351"]]
177 +[[image:image-20230201090139-4.png]]
181 181  
182 182  
183 183  = 2. Configure SDI-12 to connect to LoRaWAN network =
... ... @@ -194,7 +194,7 @@
194 194  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.
195 195  
196 196  
197 -[[image:image-20230201090528-5.png||_mstalt="430300" height="465" width="1111"]]
194 +[[image:image-20230201090528-5.png||height="465" width="1111"]]
198 198  
199 199  
200 200  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.
... ... @@ -205,7 +205,7 @@
205 205  Each SDI-12-LB is shipped with a sticker with the default device EUI as below:
206 206  
207 207  
208 -[[image:image-20230201152430-20.jpeg||_mstalt="492245"]]
205 +[[image:image-20230201152430-20.jpeg]]
209 209  
210 210  
211 211  You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
... ... @@ -213,24 +213,24 @@
213 213  
214 214  (% style="color:blue" %)**Register the device**
215 215  
216 -[[image:1675213652444-622.png||_mstalt="293657"]]
213 +[[image:1675213652444-622.png]]
217 217  
218 218  
219 219  (% style="color:blue" %)**Add APP EUI and DEV EUI**
220 220  
221 221  
222 -[[image:1675213661769-223.png||_mstalt="295217"]]
219 +[[image:1675213661769-223.png]]
223 223  
224 224  
225 225  (% style="color:blue" %)**Add APP EUI in the application**
226 226  
227 227  
228 -[[image:1675213675852-577.png||_mstalt="297947"]]
225 +[[image:1675213675852-577.png]]
229 229  
230 230  
231 231  (% style="color:blue" %)**Add APP KEY**
232 232  
233 -[[image:1675213686734-883.png||_mstalt="298064"]]
230 +[[image:1675213686734-883.png]]
234 234  
235 235  
236 236  (% style="color:blue" %)**Step 2**(%%): Activate on SDI-12-LB
... ... @@ -241,7 +241,7 @@
241 241  (% 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.
242 242  
243 243  
244 -[[image:1675213704414-644.png||_mstalt="293748"]]
241 +[[image:1675213704414-644.png]]
245 245  
246 246  
247 247  == ​2.3 SDI-12 Related Commands ==
... ... @@ -260,10 +260,10 @@
260 260  The following is the display information on the serial port and the server.
261 261  
262 262  
263 -[[image:image-20230201091027-6.png||_mstalt="429065"]]
260 +[[image:image-20230201091027-6.png]]
264 264  
265 265  
266 -[[image:image-20230201091027-7.png||_mstalt="429429" height="261" width="1179"]]
263 +[[image:image-20230201091027-7.png||height="261" width="1179"]]
267 267  
268 268  
269 269  
... ... @@ -281,10 +281,10 @@
281 281  The following is the display information on the serial port and the server.
282 282  
283 283  
284 -[[image:image-20230201091257-8.png||_mstalt="431392"]]
281 +[[image:image-20230201091257-8.png]]
285 285  
286 286  
287 -[[image:image-20230201091257-9.png||_mstalt="431756" height="225" width="1242"]]
284 +[[image:image-20230201091257-9.png||height="225" width="1242"]]
288 288  
289 289  
290 290  ==== (% style="color:blue" %)**aM!,aMC!, aM1!- aM9!, aMC1!- aMC9!**(%%) ====
... ... @@ -317,10 +317,10 @@
317 317  The following is the display information on the serial port and the server.
318 318  
319 319  
320 -[[image:image-20230201091630-10.png||_mstalt="449995"]]
317 +[[image:image-20230201091630-10.png]]
321 321  
322 322  
323 -[[image:image-20230201091630-11.png||_mstalt="450372" height="247" width="1165"]]
320 +[[image:image-20230201091630-11.png||height="247" width="1165"]]
324 324  
325 325  
326 326  
... ... @@ -354,10 +354,10 @@
354 354  The following is the display information on the serial port and the server.
355 355  
356 356  
357 -[[image:image-20230201091954-12.png||_mstalt="453687"]]
354 +[[image:image-20230201091954-12.png]]
358 358  
359 359  
360 -[[image:image-20230201091954-13.png||_mstalt="454064" height="203" width="1117"]]
357 +[[image:image-20230201091954-13.png||height="203" width="1117"]]
361 361  
362 362  
363 363  
... ... @@ -387,10 +387,10 @@
387 387  The following is the display information on the serial port and the server.
388 388  
389 389  
390 -[[image:image-20230201092208-14.png||_mstalt="452283"]]
387 +[[image:image-20230201092208-14.png]]
391 391  
392 392  
393 -[[image:image-20230201092208-15.png||_mstalt="452660" height="214" width="1140"]]
390 +[[image:image-20230201092208-15.png||height="214" width="1140"]]
394 394  
395 395  
396 396  === 2.3.2 Advance SDI-12 Debug command ===
... ... @@ -422,10 +422,10 @@
422 422  The following is the display information on the serial port and the server.
423 423  
424 424  
425 -[[image:image-20230201092355-16.png||_mstalt="453960"]]
422 +[[image:image-20230201092355-16.png]]
426 426  
427 427  
428 -[[image:image-20230201092355-17.png||_mstalt="454337" height="426" width="1135"]]
425 +[[image:image-20230201092355-17.png||height="426" width="1135"]]
429 429  
430 430  
431 431  === 2.3.3 Convert ASCII to String ===
... ... @@ -440,12 +440,12 @@
440 440  
441 441  1) AT+CONVFORM=0, string Convert String from String to ASCII
442 442  
443 -[[image:1675214845056-885.png||_mstalt="297622"]]
440 +[[image:1675214845056-885.png]]
444 444  
445 445  
446 446  2) AT+CONVFORM=1, ASCII Convert ASCII to String.
447 447  
448 -[[image:1675214856590-846.png||_mstalt="297739"]]
445 +[[image:1675214856590-846.png]]
449 449  
450 450  
451 451  === 2.3.4 Define periodically SDI-12 commands and uplink. ===
... ... @@ -482,9 +482,9 @@
482 482  
483 483  (% style="color:blue" %)**AT+DATACUTx**(%%) : This command defines how to handle the return from AT+COMMANDx, max return length is 100 bytes.
484 484  
485 -(% border="1" style="width:436px" %)
486 -|(% style="width:433px;background-color:#F2F2F2 %)(((
487 -**(% style="color:#0070C0" %)AT+DATACUTx=a,b,c**
482 +(% border="1" style="background-color:#f7faff; width:436px" %)
483 +|(% style="width:433px" %)(((
484 +**AT+DATACUTx=a,b,c**
488 488  
489 489  **a**:  length for the return of AT+COMMAND
490 490  
... ... @@ -496,11 +496,11 @@
496 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:
497 497  
498 498  
499 -(% border="1" cellspacing="4" style="width:510px" %)
500 -|=(% style="width: 164px;background-color:#D9E2F3;color:#0070C0" %)**AT+DATACUT1 value**|=(% style="width: 344px;background-color:#D9E2F3;color:#0070C0" %)**Final Result to combine Payload**
501 -|(% style="width:164px;background-color:#F2F2F2" %)34,1,1+2+3|(% style="width:344px;background-color:#F2F2F2" %)0D 00 01 30 31 33
502 -|(% style="width:164px;background-color:#F2F2F2" %)34,2,1~~8+12~~16|(% style="width:344px;background-color:#F2F2F2" %)0D 00 01 30 31 33 4D 45 54 45 52 54 45 52 31 32
503 -|(% style="width:164px;background-color:#F2F2F2" %)34,2,1~~34|(% style="width:344px;background-color:#F2F2F2" %)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
496 +(% border="1" cellspacing="4" style="background-color:#f7faff; width:510px" %)
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
504 504  
505 505  * (% style="color:blue" %)** Downlink Payload:**
506 506  
... ... @@ -522,7 +522,7 @@
522 522  
523 523  (% style="color:blue" %)**Example:**
524 524  
525 -[[image:image-20230201094129-18.png||_mstalt="455065"]]
522 +[[image:image-20230201094129-18.png]]
526 526  
527 527  
528 528  
... ... @@ -549,7 +549,7 @@
549 549  
550 550  Below shows a screen shot how the results combines together to a uplink payload.
551 551  
552 -[[image:1675215745275-920.png||_mstalt="295334"]]
549 +[[image:1675215745275-920.png]]
553 553  
554 554  
555 555  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.
... ... @@ -560,7 +560,7 @@
560 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.
561 561  
562 562  
563 -[[image:1675215782925-448.png||_mstalt="297466"]]
560 +[[image:1675215782925-448.png]]
564 564  
565 565  
566 566  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.
... ... @@ -578,7 +578,7 @@
578 578  Where PAYVER is defined by AT+PAYVER, below is an example screen shot.
579 579  
580 580  
581 -[[image:1675215828102-844.png||_mstalt="294645"]]
578 +[[image:1675215828102-844.png]]
582 582  
583 583  
584 584  (% style="color:#4f81bd" %)**AT+DATAUP=1**
... ... @@ -593,7 +593,7 @@
593 593  1. PAYLOAD# (1 byte): Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT)
594 594  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
595 595  
596 -[[image:1675215848113-696.png||_mstalt="296998"]]
593 +[[image:1675215848113-696.png]]
597 597  
598 598  
599 599  (% style="color:red" %)**Notice: the Max bytes is according to the max support bytes in different Frequency Bands for lowest SF. As below:**
... ... @@ -617,14 +617,14 @@
617 617  
618 618  Users can also use the downlink command(0x26 01) to ask SDI-12-LB to resend this uplink.
619 619  
620 -(% border="1" cellspacing="4" style="width:510px" %)
621 -|(% colspan="6" style="background-color:#d9e2f3; color:#0070c0" %)**Device Status (FPORT=5)**
622 -|(% 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**
623 -|(% 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
617 +(% border="1" cellspacing="4" style="background-color:#f7faff; width:420px" %)
618 +|(% colspan="6" style="width:434px" %)**Device Status (FPORT=5)**
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
624 624  
625 625  Example parse in TTNv3
626 626  
627 -[[image:1675215946738-635.png||_mstalt="297778"]]
624 +[[image:1675215946738-635.png]]
628 628  
629 629  
630 630  (% style="color:#037691" %)**Sensor Model**(%%): For SDI-12-LB, this value is 0x17
... ... @@ -689,7 +689,7 @@
689 689  
690 690  * Periodically Uplink: FPORT=2
691 691  
692 -(% border="1" cellspacing="4" style="background-color:#F2F2F2; width:500px" %)
689 +(% border="1" cellspacing="4" style="background-color:#f7faff; width:500px" %)
693 693  |=(% style="width: 90px;" %)(((
694 694  **Size(bytes)**
695 695  )))|=(% style="width: 80px;" %)**2**|=(% style="width: 90px;" %)**1**|=(% style="width: 240px;" %)**Length depends on the return from the commands**
... ... @@ -702,7 +702,7 @@
702 702  Payload length in server,server will show payload not provided in the LoRaWAN server.
703 703  )))
704 704  
705 -[[image:1675216282284-923.png||_mstalt="295633"]]
702 +[[image:1675216282284-923.png]]
706 706  
707 707  
708 708  === 2.4.3 Battery Info ===
... ... @@ -737,7 +737,7 @@
737 737  
738 738  While using TTN network, you can add the payload format to decode the payload.
739 739  
740 -[[image:1675216779406-595.png||_mstalt="298376"]]
737 +[[image:1675216779406-595.png]]
741 741  
742 742  
743 743  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.
... ... @@ -760,7 +760,7 @@
760 760  
761 761  COM port and SDI-12 sensor communication converted to SDI-12-LB and SDI-12 sensor communication.
762 762  
763 -[[image:image-20230222143809-1.png||_mstalt="429962" height="564" width="729"]]
760 +[[image:image-20230222143809-1.png||height="564" width="729"]]
764 764  
765 765  
766 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:**
... ... @@ -802,19 +802,19 @@
802 802  
803 803  a. The first reply, all 34 characters: ”113TRUEBNERSMT100038220303182331<CR><LF>”
804 804  
805 -Cut out all characters: (% _mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=34,2,1~~34**(% style="color:#037691" %);
802 +Cut out all characters: (% style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=34,2,1~~34**;
806 806  
807 807  b. The sixth reply, all 31 characters:”1+19210+1.04+0.00+22.49+11.75<CR><LF>”
808 808  
809 -Cut out all characters: (% _mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=31,2,1~~31**(% style="color:#037691" %);
806 +Cut out all characters: (% style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=31,2,1~~31**;
810 810  
811 811  c. The eighth reply, all 31 characters:”2+18990+1.08+0.00+22.24+11.80<CR><LF>”
812 812  
813 -Cut out all characters: (% _mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=31,2,1~~31**(% style="color:#037691" %);
810 +Cut out all characters: (% style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=31,2,1~~31**;
814 814  
815 815  d. The tenth reply, all 15 characters:”3-2919.8+24.0<CR><LF>”
816 816  
817 -Cut out all characters: (% _mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=15,2,1~~15**(% style="color:#037691" %);
814 +Cut out all characters: (% style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=15,2,1~~15**;
818 818  
819 819  e. The twelfth reply, all 25 characters:”4+30.8+22.84+4.7+954.38<CR><LF>”
820 820  
... ... @@ -871,19 +871,18 @@
871 871  
872 872  (% style="color:blue" %)**AT Command: AT+TDC**
873 873  
874 -(% border="1" cellspacing="4" style="width:510px" %)
875 -|=(% 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**
876 -|(% style="background-color:#f2f2f2; width:157px" %)AT+TDC=?|(% style="background-color:#f2f2f2; width:166px" %)Show current transmit Interval|(% style="background-color:#f2f2f2" %)(((
871 +(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:510px" %)
872 +|=(% style="width: 156px;" %)**Command Example**|=(% style="width: 137px;" %)**Function**|=**Response**
873 +|(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|(((
877 877  30000
878 878  OK
879 879  the interval is 30000ms = 30s
880 880  )))
881 -|(% style="background-color:#f2f2f2; width:157px" %)AT+TDC=60000|(% style="background-color:#f2f2f2; width:166px" %)Set Transmit Interval|(% style="background-color:#f2f2f2" %)(((
878 +|(% style="width:156px" %)AT+TDC=60000|(% style="width:137px" %)Set Transmit Interval|(((
882 882  OK
883 883  Set transmit interval to 60000ms = 60 seconds
884 884  )))
885 885  
886 -
887 887  (% style="color:blue" %)**Downlink Command: 0x01**
888 888  
889 889  
... ... @@ -894,7 +894,6 @@
894 894  * Example 1: Downlink Payload: 0100001E  ~/~/ Set Transmit Interval (TDC) = 30 seconds
895 895  * Example 2: Downlink Payload: 0100003C  ~/~/  Set Transmit Interval (TDC) = 60 seconds
896 896  
897 -
898 898  == 3.2 Set Interrupt Mode ==
899 899  
900 900  
... ... @@ -902,22 +902,21 @@
902 902  
903 903  (% style="color:blue" %)**AT Command: AT+INTMOD**
904 904  
905 -(% border="1" cellspacing="4" style="width:510px" %)
906 -|=(% 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**
907 -|(% style="background-color:#f2f2f2; width:154px" %)AT+INTMOD=?|(% style="background-color:#f2f2f2; width:196px" %)Show current interrupt mode|(% style="background-color:#f2f2f2; width:157px" %)(((
900 +(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:510px" %)
901 +|=(% style="width: 156px;" %)**Command Example**|=(% style="width: 187px;" %)**Function**|=(% style="width: 165px;" %)**Response**
902 +|(% style="width:156px" %)AT+INTMOD=?|(% style="width:187px" %)Show current interrupt mode|(% style="width:165px" %)(((
908 908  0
909 909  OK
910 -the mode is 0 =Disable Interrupt
905 +the mode is 0 = Disable Interrupt
911 911  )))
912 -|(% style="background-color:#f2f2f2; width:154px" %)AT+INTMOD=2|(% style="background-color:#f2f2f2; width:196px" %)(((
907 +|(% style="width:156px" %)AT+INTMOD=2|(% style="width:187px" %)(((
913 913  Set Transmit Interval
914 914  0. (Disable Interrupt),
915 915  ~1. (Trigger by rising and falling edge)
916 916  2. (Trigger by falling edge)
917 917  3. (Trigger by rising edge)
918 -)))|(% style="background-color:#f2f2f2; width:157px" %)OK
913 +)))|(% style="width:165px" %)OK
919 919  
920 -
921 921  (% style="color:blue" %)**Downlink Command: 0x06**
922 922  
923 923  Format: Command Code (0x06) followed by 3 bytes.
... ... @@ -927,7 +927,6 @@
927 927  * Example 1: Downlink Payload: 06000000  ~/~/  Turn off interrupt mode
928 928  * Example 2: Downlink Payload: 06000003  ~/~/  Set the interrupt mode to rising edge trigger
929 929  
930 -
931 931  == 3.3 Set the output time ==
932 932  
933 933  
... ... @@ -935,54 +935,52 @@
935 935  
936 936  (% style="color:blue" %)**AT Command: AT+3V3T**
937 937  
938 -(% border="1" cellspacing="4" style="width:474px" %)
939 -|=(% 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**
940 -|(% style="background-color:#f2f2f2; width:154px" %)AT+3V3T=?|(% style="background-color:#f2f2f2; width:201px" %)Show 3V3 open time.|(% style="background-color:#f2f2f2; width:116px" %)(((
931 +(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:474px" %)
932 +|=(% style="width: 154px;" %)**Command Example**|=(% style="width: 201px;" %)**Function**|=(% style="width: 116px;" %)**Response**
933 +|(% style="width:154px" %)AT+3V3T=?|(% style="width:201px" %)Show 3V3 open time.|(% style="width:116px" %)(((
941 941  0
942 942  OK
943 943  )))
944 -|(% 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" %)(((
937 +|(% style="width:154px" %)AT+3V3T=0|(% style="width:201px" %)Normally open 3V3 power supply.|(% style="width:116px" %)(((
945 945  OK
946 946  default setting
947 947  )))
948 -|(% 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" %)(((
941 +|(% style="width:154px" %)AT+3V3T=1000|(% style="width:201px" %)Close after a delay of 1000 milliseconds.|(% style="width:116px" %)(((
949 949  OK
950 950  )))
951 -|(% 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" %)(((
944 +|(% style="width:154px" %)AT+3V3T=65535|(% style="width:201px" %)Normally closed 3V3 power supply.|(% style="width:116px" %)(((
952 952  OK
953 953  )))
954 954  
955 -
956 956  (% style="color:blue" %)**AT Command: AT+5VT**
957 957  
958 -(% border="1" cellspacing="4" style="width:470px" %)
959 -|=(% 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**
960 -|(% style="background-color:#f2f2f2; width:155px" %)AT+5VT=?|(% style="background-color:#f2f2f2; width:196px" %)Show 5V open time.|(% style="background-color:#f2f2f2; width:114px" %)(((
950 +(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:470px" %)
951 +|=(% style="width: 155px;" %)**Command Example**|=(% style="width: 196px;" %)**Function**|=(% style="width: 114px;" %)**Response**
952 +|(% style="width:155px" %)AT+5VT=?|(% style="width:196px" %)Show 5V open time.|(% style="width:114px" %)(((
961 961  0
962 962  OK
963 963  )))
964 -|(% 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" %)(((
956 +|(% style="width:155px" %)AT+5VT=0|(% style="width:196px" %)Normally closed 5V power supply.|(% style="width:114px" %)(((
965 965  OK
966 966  default setting
967 967  )))
968 -|(% 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" %)(((
960 +|(% style="width:155px" %)AT+5VT=1000|(% style="width:196px" %)Close after a delay of 1000 milliseconds.|(% style="width:114px" %)(((
969 969  OK
970 970  )))
971 -|(% 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" %)(((
963 +|(% style="width:155px" %)AT+5VT=65535|(% style="width:196px" %)Normally open 5V power supply.|(% style="width:114px" %)(((
972 972  OK
973 973  )))
974 974  
975 -
976 976  (% style="color:blue" %)**AT Command: AT+12VT**
977 977  
978 -(% border="1" cellspacing="4" style="width:443px" %)
979 -|=(% 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**
980 -|(% style="background-color:#f2f2f2; width:156px" %)AT+12VT=?|(% style="background-color:#f2f2f2; width:199px" %)Show 12V open time.|(% style="background-color:#f2f2f2; width:83px" %)(((
969 +(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:443px" %)
970 +|=(% style="width: 156px;" %)**Command Example**|=(% style="width: 199px;" %)**Function**|=(% style="width: 83px;" %)**Response**
971 +|(% style="width:156px" %)AT+12VT=?|(% style="width:199px" %)Show 12V open time.|(% style="width:83px" %)(((
981 981  0
982 982  OK
983 983  )))
984 -|(% 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" %)OK
985 -|(% 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" %)(((
975 +|(% style="width:156px" %)AT+12VT=0|(% style="width:199px" %)Normally closed 12V power supply.|(% style="width:83px" %)OK
976 +|(% style="width:156px" %)AT+12VT=500|(% style="width:199px" %)Close after a delay of 500 milliseconds.|(% style="width:83px" %)(((
986 986  OK
987 987  )))
988 988  
... ... @@ -999,7 +999,6 @@
999 999  * Example 5: Downlink Payload: 070301F4  **~-~-->**  AT+12VT=500
1000 1000  * Example 6: Downlink Payload: 07030000  **~-~-->**  AT+12VT=0
1001 1001  
1002 -
1003 1003  == 3.4 Set the all data mode ==
1004 1004  
1005 1005  
... ... @@ -1007,13 +1007,13 @@
1007 1007  
1008 1008  (% style="color:blue" %)**AT Command: AT+ALLDATAMOD**
1009 1009  
1010 -(% border="1" cellspacing="4" style="width:437px" %)
1011 -|=(% style="background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="background-color:#D9E2F3;color:#0070C0" %)**Response**
1012 -|(% style="background-color:#F2F2F2" %)AT+ALLDATAMOD=?|(% style="background-color:#F2F2F2" %)Show current all data mode|(% style="background-color:#F2F2F2" %)(((
1000 +(% border="1" cellspacing="4" style="background-color:#f7faff; width:437px" %)
1001 +|=**Command Example**|=**Function**|=**Response**
1002 +|AT+ALLDATAMOD=?|Show current all data mode|(((
1013 1013  0
1014 1014  OK
1015 1015  )))
1016 -|(% style="background-color:#F2F2F2" %)AT+ALLDATAMOD=1|(% style="background-color:#F2F2F2" %)Set all data mode is 1.|(% style="background-color:#F2F2F2" %)OK
1006 +|AT+ALLDATAMOD=1|Set all data mode is 1.|OK
1017 1017  
1018 1018  (% style="color:blue" %)**Downlink Command: 0xAB**
1019 1019  
... ... @@ -1022,7 +1022,6 @@
1022 1022  * Example 1: Downlink Payload: AB 00  ~/~/  AT+ALLDATAMOD=0
1023 1023  * Example 2: Downlink Payload: AB 01  ~/~/  AT+ALLDATAMOD=1
1024 1024  
1025 -
1026 1026  == 3.5 Set the splicing payload for uplink ==
1027 1027  
1028 1028  
... ... @@ -1030,21 +1030,21 @@
1030 1030  
1031 1031  (% style="color:blue" %)**AT Command: AT+DATAUP**
1032 1032  
1033 -(% border="1" cellspacing="4" style="width:510px" %)
1034 -|=(% 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**
1035 -|(% style="width:154px;background-color:#F2F2F2" %)AT+DATAUP =?|(% style="width:266px;background-color:#F2F2F2" %)Show current splicing payload for uplink mode|(% style="background-color:#F2F2F2" %)(((
1022 +(% border="1" cellspacing="4" style="background-color:#f7faff; width:510px" %)
1023 +|=(% style="width: 154px;" %)**Command Example**|=(% style="width: 266px;" %)**Function**|=**Response**
1024 +|(% style="width:154px" %)AT+DATAUP =?|(% style="width:266px" %)Show current splicing payload for uplink mode|(((
1036 1036  0
1037 1037  OK
1038 1038  )))
1039 -|(% style="width:154px;background-color:#F2F2F2" %)AT+DATAUP =0|(% style="width:266px;background-color:#F2F2F2" %)(((
1028 +|(% style="width:154px" %)AT+DATAUP =0|(% style="width:266px" %)(((
1040 1040  Set splicing payload for uplink mode is 0.
1041 -)))|(% style="background-color:#F2F2F2" %)(((
1030 +)))|(((
1042 1042  OK
1043 1043  )))
1044 -|(% style="width:154px;background-color:#F2F2F2" %)AT+DATAUP =1|(% style="width:266px;background-color:#F2F2F2" %)Set splicing payload for uplink mode is 1 , and the each splice uplink is sent sequentially.|(% style="background-color:#F2F2F2" %)OK
1045 -|(% style="width:154px;background-color:#F2F2F2" %)AT+DATAUP =1,20000|(% style="width:266px;background-color:#F2F2F2" %)(((
1033 +|(% style="width:154px" %)AT+DATAUP =1|(% style="width:266px" %)Set splicing payload for uplink mode is 1 , and the each splice uplink is sent sequentially.|OK
1034 +|(% style="width:154px" %)AT+DATAUP =1,20000|(% style="width:266px" %)(((
1046 1046  Set splicing payload for uplink mode is 1, and the uplink interval of each splice to 20000 milliseconds.
1047 -)))|(% style="background-color:#F2F2F2" %)OK
1036 +)))|OK
1048 1048  
1049 1049  (% style="color:blue" %)**Downlink Command: 0xAD**
1050 1050  
... ... @@ -1064,13 +1064,13 @@
1064 1064  
1065 1065  (% style="color:blue" %)**AT Command: AT+PAYVER**
1066 1066  
1067 -(% border="1" cellspacing="4" style="width:437px" %)
1068 -|=(% 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**
1069 -|(% style="width:158px;background-color:#F2F2F2" %)AT+PAYVER=?|(% style="width:192px;background-color:#F2F2F2" %)Show current payload version|(% style="background-color:#F2F2F2" %)(((
1056 +(% border="1" cellspacing="4" style="background-color:#f7faff; width:437px" %)
1057 +|=(% style="width: 158px;" %)**Command Example**|=(% style="width: 192px;" %)**Function**|=**Response**
1058 +|(% style="width:158px" %)AT+PAYVER=?|(% style="width:192px" %)Show current payload version|(((
1070 1070  1
1071 1071  OK
1072 1072  )))
1073 -|(% style="width:158px;background-color:#F2F2F2" %)AT+PAYVER=5|(% style="width:192px;background-color:#F2F2F2" %)Set payload version is 5.|(% style="background-color:#F2F2F2" %)OK
1062 +|(% style="width:158px" %)AT+PAYVER=5|(% style="width:192px" %)Set payload version is 5.|OK
1074 1074  
1075 1075  (% style="color:blue" %)**Downlink Command: 0xAE**
1076 1076  
... ... @@ -1079,14 +1079,76 @@
1079 1079  * Example 1: Downlink Payload: AE 01  ~/~/  AT+PAYVER=1
1080 1080  * Example 2: Downlink Payload: AE 05  ~/~/  AT+PAYVER=5
1081 1081  
1071 += 4. Battery & how to replace =
1082 1082  
1083 -= 4. Battery & Power Consumption =
1073 +== 4.1 Battery Type ==
1084 1084  
1085 -PS-LB-NA uses ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
1086 1086  
1087 - [[**Battery Info & Power Consumption Analyze**>>url:http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
1076 +SDI-12-LB is equipped with a [[8500mAH ER26500 Li-SOCI2 battery>>https://www.dropbox.com/sh/w9l2oa3ytpculph/AAAPtt-apH4lYfCj-2Y6lHvQa?dl=0]]. The battery is un-rechargeable battery with low discharge rate targeting for 8~~10 years use. This type of battery is commonly used in IoT target for long-term running, such as water meter.
1088 1088  
1089 1089  
1079 +The discharge curve is not linear so can’t simply use percentage to show the battery level. Below is the battery performance.
1080 +
1081 +[[image:1675234124233-857.png]]
1082 +
1083 +
1084 +Minimum Working Voltage for the SDI-12-LB:
1085 +
1086 +SDI-12-LB:  2.45v ~~ 3.6v
1087 +
1088 +
1089 +== 4.2 Replace Battery ==
1090 +
1091 +
1092 +Any battery with range 2.45 ~~ 3.6v can be a replacement. We recommend to use Li-SOCl2 Battery.
1093 +
1094 +And make sure the positive and negative pins match.
1095 +
1096 +
1097 +== 4.3 Power Consumption Analyze ==
1098 +
1099 +
1100 +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.
1101 +
1102 +Instruction to use as below:
1103 +
1104 +(% style="color:blue" %)**Step 1:**(%%) Downlink the up-to-date DRAGINO_Battery_Life_Prediction_Table.xlsx from: [[https:~~/~~/www.dropbox.com/sh/zwex6i331j5oeq2/AACIMf9f_v2qsJ39CuMQ5Py_a?dl=0>>https://www.dropbox.com/sh/zwex6i331j5oeq2/AACIMf9f_v2qsJ39CuMQ5Py_a?dl=0]]
1105 +
1106 +(% style="color:blue" %)**Step 2:**(%%) Open it and choose
1107 +
1108 +* Product Model
1109 +* Uplink Interval
1110 +* Working Mode
1111 +
1112 +And the Life expectation in difference case will be shown on the right.
1113 +
1114 +
1115 +[[image:1675234155374-163.png]]
1116 +
1117 +
1118 +The battery related documents as below:
1119 +
1120 +* [[Battery Dimension>>https://www.dropbox.com/s/ox5g9njwjle7aw3/LSN50-Battery-Dimension.pdf?dl=0]],
1121 +* [[Lithium-Thionyl Chloride Battery datasheet, Tech Spec>>https://www.dropbox.com/sh/d4oyfnp8o94180o/AABQewCNSh5GPeQH86UxRgQQa?dl=0]]
1122 +* [[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]]
1123 +
1124 +[[image:image-20230201145019-19.png]]
1125 +
1126 +
1127 +=== 4.3.1 ​Battery Note ===
1128 +
1129 +
1130 +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.
1131 +
1132 +
1133 +=== 4.3.2 Replace the battery ===
1134 +
1135 +
1136 +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.
1137 +
1138 +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)
1139 +
1140 +
1090 1090  = 5. Remote Configure device =
1091 1091  
1092 1092  == 5.1 Connect via BLE ==
... ... @@ -1109,7 +1109,7 @@
1109 1109  
1110 1110  = 7. FAQ =
1111 1111  
1112 -== 7.1 How to use AT Command  via UART to access device? ==
1163 +== 7.1 How to use AT Command to access device? ==
1113 1113  
1114 1114  
1115 1115  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]]
... ... @@ -1151,7 +1151,6 @@
1151 1151  )))
1152 1152  
1153 1153  
1154 -
1155 1155  = 9. Packing Info =
1156 1156  
1157 1157  
... ... @@ -1166,7 +1166,6 @@
1166 1166  * Package Size / pcs : cm
1167 1167  * Weight / pcs : g
1168 1168  
1169 -
1170 1170  = 10. ​Support =
1171 1171  
1172 1172