Hide last authors
Xiaoling 90.2 1
2
Xiaoling 40.7 3 (% style="text-align:center" %)
Xiaoling 90.16 4 [[image:image-20240103165259-3.png||height="433" width="591"]]
Xiaoling 2.2 5
Xiaoling 90.2 6
7
8
9
10
11
Xiaoling 87.8 12 **Table of Contents:**
Xiaoling 2.2 13
Xiaoling 40.7 14 {{toc/}}
Xiaoling 2.2 15
16
17
18
19
20
21
22
23
24
25
26
27
Xiaoling 9.2 28 = 1. Introduction =
Xiaoling 2.2 29
Xiaoling 9.2 30 == 1.1 ​What is SDI-12 to LoRaWAN Converter ==
Xiaoling 2.2 31
32
Xiaoling 41.13 33 (((
Xiaoling 90.3 34 The Dragino (% style="color:blue" %)**SDI-12-LB/LS**(%%) is a (% style="color:blue" %)**SDI-12 to LoRaWAN Converter **(%%)designed for Smart Agriculture solution.
Xiaoling 41.13 35 )))
Xiaoling 9.2 36
Xiaoling 41.13 37 (((
Xiaoling 2.2 38 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.
Xiaoling 41.13 39 )))
Xiaoling 2.2 40
Xiaoling 41.13 41 (((
Xiaoling 90.3 42 SDI-12-LB/LS 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.
Xiaoling 41.13 43 )))
Xiaoling 2.2 44
Xiaoling 41.13 45 (((
Xiaoling 90.3 46 The LoRa wireless technology used in SDI-12-LB/LS 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.
Xiaoling 41.13 47 )))
Xiaoling 2.2 48
Xiaoling 41.13 49 (((
Xiaoling 123.1 50 SDI-12-LB/LS is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%) or (% style="color:blue" %)**solar powered + Li-ion battery,**(%%) it is designed for long term use up to 5 years.
Xiaoling 41.13 51 )))
Xiaoling 2.2 52
Xiaoling 41.13 53 (((
Xiaoling 90.3 54 Each SDI-12-LB/LS 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.
Xiaoling 41.13 55 )))
Xiaoling 2.2 56
57
Xiaoling 9.2 58 == ​1.2 Features ==
59
60
Xiaoling 2.2 61 * LoRaWAN 1.0.3 Class A
62 * Ultra-low power consumption
Bei Jinggeng 43.1 63 * Controllable 3.3v, 5v and 12v output to power external sensor
Xiaoling 2.2 64 * SDI-12 Protocol to connect to SDI-12 Sensor
65 * Monitor Battery Level
66 * Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865
67 * Support Bluetooth v5.1 and LoRaWAN remote configure.
68 * Support wireless OTA update firmware
69 * Uplink on periodically
70 * Downlink to change configure
Xiaoling 90.5 71 * 8500mAh Li/SOCl2 Battery (SDI-12-LB)
Xiaoling 122.1 72 * Solar panel + 3000mAh Li-ion battery (SDI-12-LS)
Xiaoling 2.2 73
Xiaoling 9.2 74 == 1.3 Specification ==
Xiaoling 2.2 75
76
Xiaoling 40.2 77 (% style="color:#037691" %)**Micro Controller:**
Xiaoling 2.2 78
79 * MCU: 48Mhz ARM
80 * Flash: 256KB
81 * RAM: 64KB
82
Xiaoling 40.2 83 (% style="color:#037691" %)**Common DC Characteristics:**
Xiaoling 2.2 84
Xiaoling 90.5 85 * Supply Voltage: Built-in Battery, 2.5v ~~ 3.6v
Xiaoling 87.2 86 * Support current: 5V 300mA, 12V 100mA
Xiaoling 2.2 87 * Operating Temperature: -40 ~~ 85°C
88
Xiaoling 40.2 89 (% style="color:#037691" %)**LoRa Spec:**
Xiaoling 2.2 90
91 * Frequency Range,  Band 1 (HF): 862 ~~ 1020 Mhz
92 * Max +22 dBm constant RF output vs.
93 * RX sensitivity: down to -139 dBm.
94 * Excellent blocking immunity
95
Xiaoling 40.2 96 (% style="color:#037691" %)**Current Input Measuring :**
Xiaoling 2.2 97
98 * Range: 0 ~~ 20mA
99 * Accuracy: 0.02mA
100 * Resolution: 0.001mA
101
Xiaoling 40.2 102 (% style="color:#037691" %)**Voltage Input Measuring:**
Xiaoling 2.2 103
104 * Range: 0 ~~ 30v
105 * Accuracy: 0.02v
106 * Resolution: 0.001v
107
Xiaoling 40.2 108 (% style="color:#037691" %)**Battery:**
Xiaoling 2.2 109
110 * Li/SOCI2 un-chargeable battery
111 * Capacity: 8500mAh
112 * Self-Discharge: <1% / Year @ 25°C
113 * Max continuously current: 130mA
114 * Max boost current: 2A, 1 second
115
Xiaoling 40.2 116 (% style="color:#037691" %)**Power Consumption**
Xiaoling 2.2 117
118 * Sleep Mode: 5uA @ 3.3v
119 * LoRa Transmit Mode: 125mA @ 20dBm, 82mA @ 14dBm
120
Xiaoling 9.2 121 == 1.4 Connect to SDI-12 Sensor ==
Xiaoling 2.2 122
123
Bei Jinggeng 47.1 124 [[image:1675212538524-889.png||_mstalt="298272"]]
Xiaoling 2.2 125
126
Xiaoling 9.2 127 == 1.5 Sleep mode and working mode ==
Xiaoling 2.2 128
129
Xiaoling 40.2 130 (% style="color:blue" %)**Deep Sleep Mode: **(%%)Sensor doesn't have any LoRaWAN activate. This mode is used for storage and shipping to save battery life.
Xiaoling 2.2 131
Xiaoling 40.2 132 (% style="color:blue" %)**Working Mode: **(%%)In this mode, Sensor will work as LoRaWAN Sensor to Join LoRaWAN network and send out sensor data to server. Between each sampling/tx/rx periodically, sensor will be in IDLE mode), in IDLE mode, sensor has the same power consumption as Deep Sleep mode.
Xiaoling 2.2 133
134
Xiaoling 9.2 135 == 1.6 Button & LEDs ==
Xiaoling 2.2 136
137
Xiaoling 137.2 138 [[image:image-20250416151419-4.jpeg]]
Xiaoling 2.2 139
Xiaoling 90.12 140 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
141 |=(% style="width: 167px;background-color:#4F81BD;color:white" %)**Behavior on ACT**|=(% style="width: 117px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 226px;background-color:#4F81BD;color:white" %)**Action**
Xiaoling 48.3 142 |(% 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" %)(((
Xiaoling 9.2 143 If sensor is already Joined to LoRaWAN network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once.
Xiaoling 2.2 144 Meanwhile, BLE module will be active and user can connect via BLE to configure device.
145 )))
Xiaoling 48.3 146 |(% 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" %)(((
147 (% 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.
148 (% style="background-color:#f2f2f2; color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.
Xiaoling 2.2 149 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.
150 )))
Mengting Qiu 102.1 151 |(% 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 SDI-12-LB/LS is in Deep Sleep Mode.
Xiaoling 2.2 152
Xiaoling 9.2 153 == 1.7 Pin Mapping ==
Xiaoling 2.2 154
155
Bei Jinggeng 47.1 156 [[image:1675213198663-754.png||_mstalt="297167"]]
Xiaoling 2.2 157
158
Xiaoling 9.2 159 == 1.8 BLE connection ==
Xiaoling 2.2 160
Xiaoling 9.2 161
Xiaoling 90.4 162 SDI-12-LB/LS support BLE remote configure.
Xiaoling 2.2 163
164 BLE can be used to configure the parameter of sensor or see the console output from sensor. BLE will be only activate on below case:
165
166 * Press button to send an uplink
167 * Press button to active device.
168 * Device Power on or reset.
169
170 If there is no activity connection on BLE in 60 seconds, sensor will shut down BLE module to enter low power mode.
171
172
Xiaoling 9.2 173 == 1.9 Mechanical ==
Xiaoling 2.2 174
Xiaoling 90.6 175 === 1.9.1 for LB version ===
Xiaoling 2.2 176
Xiaoling 90.7 177
Xiaoling 137.2 178 [[image:image-20250416151406-3.jpeg]]
Xiaoling 2.2 179
180
Xiaoling 90.6 181 === 1.9.2 for LS version ===
182
183
Xiaoling 132.2 184 [[image:image-20250329133856-1.jpeg]]
Xiaoling 90.6 185
186
Xiaoling 19.2 187 = 2. Configure SDI-12 to connect to LoRaWAN network =
Xiaoling 9.2 188
Xiaoling 19.2 189 == 2.1 How it works ==
Xiaoling 9.2 190
191
Xiaoling 90.4 192 The SDI-12-LB/LS is configured as (% style="color:#037691" %)**LoRaWAN OTAA Class A**(%%) mode by default. It has OTAA keys to join LoRaWAN network. To connect a local LoRaWAN network, you need to input the OTAA keys in the LoRaWAN IoT server and activate the SDI-12-LB/LS. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 20 minutes.
Xiaoling 9.2 193
Xiaoling 2.2 194
Xiaoling 19.2 195 == 2.2 Quick guide to connect to LoRaWAN server (OTAA) ==
Xiaoling 2.2 196
197
198 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.
199
Xiaoling 137.2 200 [[image:image-20250416151346-2.png]]
Xiaoling 2.2 201
202
203 The LPS8V2 is already set to connected to [[TTN network >>url:https://console.cloud.thethings.network/]], so what we need to now is configure the TTN server.
204
205
Xiaoling 90.4 206 (% style="color:blue" %)**Step 1**(%%): Create a device in TTN with the OTAA keys from SDI-12-LB/LS.
Xiaoling 2.2 207
Xiaoling 90.4 208 Each SDI-12-LB/LS is shipped with a sticker with the default device EUI as below:
Xiaoling 2.2 209
Xiaoling 49.3 210 [[image:image-20230426084456-1.png||height="241" width="519"]]
Xiaoling 2.2 211
212
Xiaoling 141.2 213 You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
Xiaoling 2.2 214
Xiaoling 141.2 215 **Create the application.**
Xiaoling 2.2 216
Xiaoling 141.2 217 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/SAC01L_LoRaWAN_Temperature%26Humidity_Sensor_User_Manual/WebHome/image-20250423093843-1.png?width=756&height=264&rev=1.1||alt="image-20250423093843-1.png"]]
Xiaoling 2.2 218
Xiaoling 141.2 219 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LTC2-LB--LoRaWAN_Temperature_Transmitter_User_Manual/WebHome/image-20240907111305-2.png?width=1000&height=572&rev=1.1||alt="image-20240907111305-2.png"]]
Xiaoling 2.2 220
221
Xiaoling 141.2 222 **Add devices to the created Application.**
Xiaoling 2.2 223
Xiaoling 141.2 224 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LTC2-LB--LoRaWAN_Temperature_Transmitter_User_Manual/WebHome/image-20240907111659-3.png?width=977&height=185&rev=1.1||alt="image-20240907111659-3.png"]]
Xiaoling 2.2 225
Xiaoling 141.2 226 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LTC2-LB--LoRaWAN_Temperature_Transmitter_User_Manual/WebHome/image-20240907111820-5.png?width=975&height=377&rev=1.1||alt="image-20240907111820-5.png"]]
Xiaoling 2.2 227
228
Xiaoling 141.2 229 **Enter end device specifics manually.**
Xiaoling 2.2 230
Xiaoling 141.2 231 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LTC2-LB--LoRaWAN_Temperature_Transmitter_User_Manual/WebHome/image-20240907112136-6.png?width=697&height=687&rev=1.1||alt="image-20240907112136-6.png"]]
Xiaoling 2.2 232
233
Xiaoling 141.2 234 **Add DevEUI and AppKey.**
235
236 **Customize a platform ID for the device.**
237
238 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LTC2-LB--LoRaWAN_Temperature_Transmitter_User_Manual/WebHome/image-20240907112427-7.png?rev=1.1||alt="image-20240907112427-7.png"]]
239
240
Mengting Qiu 129.1 241 (% style="color:blue" %)**Step 2: **(%%)Add decoder
242
243 While using TTN network, you can add the payload format to decode the payload.
244
245 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.
246
247 SDI-12-LB/LS TTN Payload Decoder: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>url:https://github.com/dragino/dragino-end-node-decoder]]
248
249 Below is TTN screen shot:
250
251 [[image:image-20241118165746-3.png||height="470" width="869"]]
252
253 [[image:image-20241118165832-4.png||height="336" width="724"]]
254
255
256 (% style="color:blue" %)**Step 3**(%%): Activate on SDI-12-LB/LS
257
Xiaoling 90.4 258 Press the button for 5 seconds to activate the SDI-12-LB/LS.
Xiaoling 2.2 259
Xiaoling 40.2 260 (% 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.
Xiaoling 2.2 261
Bei Jinggeng 47.1 262 [[image:1675213704414-644.png||_mstalt="293748"]]
Xiaoling 2.2 263
264
Xiaoling 19.2 265 == ​2.3 SDI-12 Related Commands ==
Xiaoling 2.2 266
267
Xiaoling 90.4 268 User need to configure SDI-12-LB/LS to communicate with SDI-12 sensors otherwise the uplink payload will only include a few bytes.
Xiaoling 2.2 269
Mengting Qiu 106.1 270 If you use UART to connect a computer, refer to the following connection methods:
Xiaoling 2.2 271
Mengting Qiu 106.1 272 [[image:image-20240823165402-1.jpeg||height="488" width="678"]]
273
274 Screenshot example:
275
276 [[image:image-20240823165526-2.png||height="489" width="690"]]
277
278
279
Xiaoling 29.2 280 === 2.3.1 Basic SDI-12 debug command ===
Xiaoling 2.2 281
282
283 User can run some basic SDI-12 command to debug the connection to the SDI-12 sensor. These commands can be sent via AT Command or LoRaWAN downlink command.
284
Xiaoling 90.4 285 If SDI-12 sensor return value after get these commands, //SDI-12-LB/LS// will uplink the return on FPORT=100, otherwise, if there is no response from SDI-12 sensor. //SDI-12-LB/LS// will uplink NULL (0x 4E 55 4C 4C) to server.
Xiaoling 2.2 286
287 The following is the display information on the serial port and the server.
288
289
Bei Jinggeng 47.1 290 [[image:image-20230201091027-6.png||_mstalt="429065"]]
Xiaoling 2.2 291
Xiaoling 19.2 292
Bei Jinggeng 47.1 293 [[image:image-20230201091027-7.png||_mstalt="429429" height="261" width="1179"]]
Xiaoling 19.2 294
295
Xiaoling 41.4 296
Xiaoling 40.2 297 ==== (% style="color:blue" %)**al!  ~-~- Get SDI-12 sensor Identification**(%%) ====
Xiaoling 19.2 298
299
Xiaoling 2.2 300 * AT Command: AT+ADDRI=aa
301 * LoRaWAN Downlink(prefix 0xAA00): AA 00 aa
302
Xiaoling 40.2 303 (% style="color:#037691" %)**Parameter:  **(%%)aa: ASCII value of SDI-12 sensor address in downlink or HEX value in AT Command)
Xiaoling 2.2 304
Xiaoling 41.4 305 (% style="color:blue" %)**Example :   **(%%)AT+ADDRI=0 ( Equal to downlink: 0x AA 00 30)
Xiaoling 2.2 306
307
308 The following is the display information on the serial port and the server.
309
310
Bei Jinggeng 47.1 311 [[image:image-20230201091257-8.png||_mstalt="431392"]]
Xiaoling 2.2 312
313
Bei Jinggeng 47.1 314 [[image:image-20230201091257-9.png||_mstalt="431756" height="225" width="1242"]]
Xiaoling 19.2 315
316
Xiaoling 40.2 317 ==== (% style="color:blue" %)**aM!,aMC!, aM1!- aM9!, aMC1!- aMC9!**(%%) ====
Xiaoling 2.2 318
319
Xiaoling 40.2 320 (% style="color:red" %)**aM! **(%%): Start Non-Concurrent Measurement
Xiaoling 2.2 321
Xiaoling 40.2 322 (% style="color:red" %)**aMC! **(%%): Start Non-Concurrent Measurement – Request CRC
Xiaoling 2.2 323
Xiaoling 40.2 324 (% style="color:red" %)**aM1!- aM9! **(%%): Additional Measurements
Xiaoling 2.2 325
Xiaoling 40.2 326 (% style="color:red" %)**aMC1!- aMC9!**(%%) : Additional Measurements – Request CRC
Xiaoling 2.2 327
Xiaoling 27.2 328
Xiaoling 2.2 329 * AT Command : AT+ADDRM=0,1,0,1
Xiaoling 37.10 330
Xiaoling 2.2 331 * LoRaWAN Downlink(prefix 0xAA01): 0xAA 01 30 01 00 01
332
333 Downlink:AA 01 aa bb cc dd
334
Xiaoling 40.2 335 (% style="color:#037691" %)**aa**(%%): SDI-12 sensor address.
Xiaoling 2.2 336
Xiaoling 40.2 337 (% style="color:#037691" %)**bb**(%%): 0: no CRC, 1: request CRC
Xiaoling 2.2 338
Xiaoling 40.2 339 (% style="color:#037691" %)**cc**(%%): 1-9: Additional Measurement, 0: no additional measurement
Xiaoling 2.2 340
Xiaoling 41.5 341 (% style="color:#037691" %)**dd**(%%): delay (in second) to send (% style="color:#037691" %)__**aD0!**__(%%) to get return.
Xiaoling 2.2 342
343
344 The following is the display information on the serial port and the server.
345
346
Bei Jinggeng 47.1 347 [[image:image-20230201091630-10.png||_mstalt="449995"]]
Xiaoling 2.2 348
349
Bei Jinggeng 47.1 350 [[image:image-20230201091630-11.png||_mstalt="450372" height="247" width="1165"]]
Xiaoling 2.2 351
352
353
Xiaoling 40.2 354 ==== (% style="color:blue" %)**aC!, aCC!,  aC1!- aC9!,  aCC1!- aCC9! **(%%) ====
Xiaoling 2.2 355
356
Xiaoling 40.2 357 (% style="color:red" %)**aC!**(%%) : Start Concurrent Measurement
Xiaoling 2.2 358
Xiaoling 40.2 359 (% style="color:red" %)**aCC!** (%%): Start Concurrent Measurement – Request CRC
Xiaoling 2.2 360
Xiaoling 40.2 361 (% style="color:red" %)**aC1!- aC9!**(%%) : Start Additional Concurrent Measurements
Xiaoling 27.2 362
Xiaoling 40.2 363 (% style="color:red" %)**aCC1!- aCC9!**(%%) : Start Additional Concurrent Measurements – Request CRC
Xiaoling 27.2 364
365
Xiaoling 2.2 366 * AT Command : AT+ADDRC=0,1,0,1 
367
368 * LoRaWAN Downlink(0xAA02): 0xAA 02 30 01 00 01
369
370 Downlink: AA 02 aa bb cc dd
371
Xiaoling 40.2 372 (% style="color:#037691" %)**aa**(%%): SDI-12 sensor address.
Xiaoling 2.2 373
Xiaoling 40.2 374 (% style="color:#037691" %)**bb**(%%): 0: no CRC, 1: request CRC
Xiaoling 2.2 375
Xiaoling 40.2 376 (% style="color:#037691" %)**cc**(%%): 1-9: Additional Measurement, 0: no additional measurement
Xiaoling 2.2 377
Xiaoling 41.5 378 (% style="color:#037691" %)**dd**(%%): delay (in second) to send (% style="color:#037691" %)__**aD0!**__(%%)__ __to get return.
Xiaoling 2.2 379
380
381 The following is the display information on the serial port and the server.
382
383
Bei Jinggeng 47.1 384 [[image:image-20230201091954-12.png||_mstalt="453687"]]
Xiaoling 2.2 385
386
Bei Jinggeng 47.1 387 [[image:image-20230201091954-13.png||_mstalt="454064" height="203" width="1117"]]
Xiaoling 2.2 388
Xiaoling 27.2 389
390
Xiaoling 40.2 391 ==== (% style="color:blue" %)**aR0!- aR9!,  aRC0!- aRC9!**(%%) ====
Xiaoling 27.2 392
Xiaoling 37.10 393
Xiaoling 2.2 394 Start Continuous Measurement
395
396 Start Continuous Measurement – Request CRC
397
398
399 * AT Command : AT+ADDRR=0,1,0,1 
400 * LoRaWAN Downlink (0xAA 03): 0xAA 03 30 01 00 01
401
402 Downlink: AA 03 aa bb cc dd
403
Xiaoling 40.2 404 (% style="color:#037691" %)**aa**(%%): SDI-12 sensor address.
Xiaoling 2.2 405
Xiaoling 40.2 406 (% style="color:#037691" %)**bb**(%%): 0: no CRC, 1: request CRC
Xiaoling 2.2 407
Xiaoling 40.2 408 (% style="color:#037691" %)**cc**(%%): 1-9: Additional Measurement, 0: no additional measurement
Xiaoling 2.2 409
Xiaoling 41.5 410 (% style="color:#037691" %)**dd**(%%): delay (in second) to send (% style="color:#037691" %)__**aD0!**__(%%) to get return.
Xiaoling 2.2 411
412
413 The following is the display information on the serial port and the server.
414
415
Bei Jinggeng 47.1 416 [[image:image-20230201092208-14.png||_mstalt="452283"]]
Xiaoling 2.2 417
Xiaoling 27.2 418
Bei Jinggeng 47.1 419 [[image:image-20230201092208-15.png||_mstalt="452660" height="214" width="1140"]]
Xiaoling 27.2 420
421
Xiaoling 37.2 422 === 2.3.2 Advance SDI-12 Debug command ===
Xiaoling 27.2 423
424
Xiaoling 2.2 425 This command can be used to debug all SDI-12 command.
426
427
Saxer Lin 73.1 428 LoRaWAN Downlink: A8 aa xx xx xx xx bb cc dd
Xiaoling 2.2 429
Xiaoling 40.2 430 (% style="color:#037691" %)**aa **(%%): total SDI-12 command length
Xiaoling 2.2 431
Xiaoling 40.2 432 (% style="color:#037691" %)**xx **(%%): SDI-12 command
Xiaoling 2.2 433
Xiaoling 40.2 434 (% style="color:#037691" %)**bb **(%%): Delay to wait for return
Xiaoling 2.2 435
Xiaoling 40.2 436 (% style="color:#037691" %)**cc **(%%): 0: don't uplink return to LoRaWAN, 1: Uplink return to LoRaWAN on FPORT=100
Xiaoling 2.2 437
Saxer Lin 73.1 438 (% style="color:#037691" %)**dd: **(%%) 0: Do not use aD0! command access, 1: use aD0! command access.
Xiaoling 2.2 439
440
Saxer Lin 73.1 441 (% style="color:blue" %)**Example1: **(%%) AT+CFGDEV =0RC0!,1
442
Xiaoling 40.2 443 (% style="color:#037691" %)**0RC0! **(%%): SDI-12 Command,
Xiaoling 2.2 444
Xiaoling 40.2 445 (% style="color:#037691" %)**1 **(%%): Delay 1 second.  ( 0: 810 mini-second)
Xiaoling 2.2 446
447 Equal Downlink: 0xA8 05 30 52 43 30 21 01 01
448
449
450 The following is the display information on the serial port and the server.
451
452
Bei Jinggeng 47.1 453 [[image:image-20230201092355-16.png||_mstalt="453960"]]
Xiaoling 2.2 454
455
Bei Jinggeng 47.1 456 [[image:image-20230201092355-17.png||_mstalt="454337" height="426" width="1135"]]
Xiaoling 27.2 457
Xiaoling 29.2 458
Saxer Lin 87.1 459 (% style="color:blue" %)**Example2: **(%%) AT+CFGDEV =0M!,1,1
Saxer Lin 73.1 460
461 (% style="color:#037691" %)**0M! **(%%): SDI-12 Command,
462
463 (% style="color:#037691" %)**1 **(%%): Delay 1 second.  ( 0: 810 mini-second)
464
Xiaoling 87.3 465 (% style="color:#037691" %)**1 **(%%): Use aD0! command access.
Saxer Lin 73.1 466
467 Equal Downlink: 0xA8 03 30  4D 21 01 01 01
468
469
Saxer Lin 86.1 470 The following is the display information on the serial port and the server.
471
472
473 [[image:image-20230628091055-1.png||height="368" width="462"]]
474
475 [[image:image-20230628091130-2.png||height="258" width="879"]]
476
477
Xiaoling 29.2 478 === 2.3.3 Convert ASCII to String ===
479
480
Xiaoling 2.2 481 This command is used to convert between ASCII and String format.
482
483 AT+CONVFORM ( Max length: 80 bytes)
484
485
Xiaoling 40.2 486 (% style="color:blue" %)**Example:**
Xiaoling 2.2 487
Xiaoling 29.2 488 1) AT+CONVFORM=0, string Convert String from String to ASCII
Xiaoling 2.2 489
Bei Jinggeng 47.1 490 [[image:1675214845056-885.png||_mstalt="297622"]]
Xiaoling 2.2 491
492
Xiaoling 29.2 493 2) AT+CONVFORM=1, ASCII Convert ASCII to String.
Xiaoling 2.2 494
Bei Jinggeng 47.1 495 [[image:1675214856590-846.png||_mstalt="297739"]]
Xiaoling 2.2 496
Xiaoling 29.2 497
498 === 2.3.4 Define periodically SDI-12 commands and uplink. ===
499
500
Xiaoling 2.2 501 AT+COMMANDx & AT+DATACUTx
502
Xiaoling 90.4 503 User can define max 15 SDI-12 Commands (AT+COMMAND1 ~~ AT+COMMANDF). On each uplink period (TDC time, default 20 minutes), SDI-12-LB/LS will send these SDI-12 commands and wait for return from SDI-12 sensors. SDI-12-LB/LS will then combine these returns and uplink via LoRaWAN.
Xiaoling 2.2 504
505
Xiaoling 40.2 506 * (% style="color:blue" %)**AT Command:**
Xiaoling 2.2 507
Xiaoling 40.2 508 (% style="color:#037691" %)**AT+COMMANDx=var1,var2,var3,var4.**
Xiaoling 2.2 509
Xiaoling 40.2 510 (% style="color:red" %)**var1**(%%): SDI-12 command , for example: 0RC0!
Xiaoling 2.2 511
Xiaoling 40.2 512 (% style="color:red" %)**var2**(%%): Wait timeout for return. (unit: second)
Xiaoling 2.2 513
Xiaoling 40.2 514 (% style="color:red" %)**var3**(%%): Whether to send //addrD0!// to get return after var2 timeout. 0: Don't Send //addrD0! //; 1: Send //addrD0!//.
Xiaoling 2.2 515
Xiaoling 90.4 516 (% style="color:red" %)**var4**(%%): validation check for return. If return invalid, SDI-12-LB/LS will resend this command. Max 3 retries.
Xiaoling 2.2 517
Xiaoling 40.2 518 (% style="color:red" %)**0 **(%%) No validation check;
Xiaoling 2.2 519
Xiaoling 40.2 520 (% style="color:red" %)**1** (%%) Check if return chars are printable char(0x20 ~~ 0x7E);
Xiaoling 2.2 521
Xiaoling 41.5 522 (% style="color:red" %)**2**(%%)  Check if there is return from SDI-12 sensor
Xiaoling 2.2 523
Xiaoling 40.2 524 (% style="color:red" %)**3** (%%) Check if return pass CRC check ( SDI-12 command var1 must include CRC request);
Xiaoling 2.2 525
526
Xiaoling 40.2 527 Each AT+COMMANDx is followed by a (% style="color:blue" %)**AT+DATACUT**(%%) command. AT+DATACUT command is used to take the useful string from the SDI-12 sensor so the final payload will have the minimum length to uplink.
Xiaoling 2.2 528
529
Xiaoling 40.2 530 (% style="color:blue" %)**AT+DATACUTx**(%%) : This command defines how to handle the return from AT+COMMANDx, max return length is 100 bytes.
Xiaoling 2.2 531
Xiaoling 48.4 532 (% border="1" style="width:436px" %)
Xiaoling 48.16 533 |(% style="background-color:#f2f2f2; width:433px" %)(((
534 (% style="color:#0070c0" %)**AT+DATACUTx=a,b,c**
Xiaoling 2.2 535
Xiaoling 29.2 536 **a**:  length for the return of AT+COMMAND
Xiaoling 2.2 537
Xiaoling 37.11 538 **b**: 1: grab valid value by byte, max 6 bytes. 2: grab valid value by bytes section, max 3 sections.
Xiaoling 2.2 539
Xiaoling 29.2 540 **c**:  define the position for valid value. 
Xiaoling 2.2 541 )))
542
Bei Jinggeng 43.1 543 For example, if return from AT+COMMAND1 is “013METER   TER12 112T12-00024895<CR><LF>” , Below AT+DATACUT1 will get different result to combine payload:
Xiaoling 2.2 544
545
Xiaoling 90.13 546 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
Xiaoling 90.14 547 |=(% style="width: 164px;background-color:#4F81BD;color:white" %)**AT+DATACUT1 value**|=(% style="width: 346px;background-color:#4F81BD;color:white" %)**Final Result to combine Payload**
Xiaoling 48.16 548 |(% style="background-color:#f2f2f2; width:164px" %)34,1,1+2+3|(% style="background-color:#f2f2f2; width:344px" %)0D 00 01 30 31 33
549 |(% style="background-color:#f2f2f2; width:164px" %)34,2,1~~8+12~~16|(% style="background-color:#f2f2f2; width:344px" %)0D 00 01 30 31 33 4D 45 54 45 52 54 45 52 31 32
550 |(% style="background-color:#f2f2f2; width:164px" %)34,2,1~~34|(% style="background-color:#f2f2f2; width:344px" %)0D 00 01 30 31 33 4D 45 54 45 52 20 20 20 54 45 52 31 32 20 31 31 32 54 31 32 2D 30 30 30 32 34 38 39 35 0D 0A
Xiaoling 2.2 551
Xiaoling 40.2 552 * (% style="color:blue" %)** Downlink Payload:**
Xiaoling 2.2 553
Xiaoling 40.2 554 (% style="color:blue" %)**0xAF**(%%)  downlink command can be used to set AT+COMMANDx or AT+DATACUTx.
Xiaoling 2.2 555
556
Xiaoling 40.2 557 (% style="color:red" %)**Note : if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink.**
Xiaoling 2.2 558
559
Xiaoling 40.2 560 Format: ** (% style="color:#037691" %)AF MM NN LL XX XX XX XX YY(%%)**
Xiaoling 2.2 561
562 Where:
563
Xiaoling 40.2 564 * (% style="color:#037691" %)**MM **(%%): the AT+COMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F,
Bei Jinggeng 43.1 565 * (% style="color:#037691" %)**NN **(%%):  1: set the AT+COMMAND value ; 2: set the AT+DATACUT value.
Xiaoling 40.2 566 * (% style="color:#037691" %)**LL **(%%):  The length of AT+COMMAND or AT+DATACUT command
567 * (% style="color:#037691" %)**XX XX XX XX **(%%): AT+COMMAND or AT+DATACUT command
Xiaoling 90.4 568 * (% style="color:#037691" %)**YY **(%%):  If YY=0, SDI-12-LB/LS will execute the downlink command without uplink; if YY=1, SDI-12-LB/LS will execute an uplink after got this command. 
Xiaoling 2.2 569
Xiaoling 40.2 570 (% style="color:blue" %)**Example:**
Xiaoling 2.2 571
Bei Jinggeng 47.1 572 [[image:image-20230201094129-18.png||_mstalt="455065"]]
Xiaoling 2.2 573
574
Xiaoling 41.16 575
Xiaoling 40.2 576 (% style="color:blue" %)**Clear SDI12 Command**
Xiaoling 2.2 577
578 The AT+COMMANDx and AT+DATACUTx settings are stored in special location, user can use below command to clear them.
579
580
Xiaoling 40.2 581 * (% style="color:#037691" %)**AT Command:**
Xiaoling 2.2 582
Xiaoling 40.2 583 (% style="color:#4f81bd" %)**AT+CMDEAR=mm,nn** (%%) mm: start position of erase ,nn: stop position of erase
Xiaoling 2.2 584
585
586 Etc. AT+CMDEAR=1,10 means erase AT+COMMAND1/AT+DATACUT1 to AT+COMMAND10/AT+DATACUT10
587
588
Xiaoling 90.9 589 * (% style="color:#037691" %)**Downlink Payload:**
Xiaoling 2.2 590
Xiaoling 40.2 591 (% style="color:#4f81bd" %)**0x09 aa bb**(%%)  same as AT+CMDEAR=aa,bb
Xiaoling 2.2 592
593
594
Xiaoling 40.2 595 (% style="color:blue" %)**command combination**
Xiaoling 2.2 596
597 Below shows a screen shot how the results combines together to a uplink payload.
598
Bei Jinggeng 47.1 599 [[image:1675215745275-920.png||_mstalt="295334"]]
Xiaoling 2.2 600
601
Xiaoling 35.2 602 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.
Xiaoling 2.2 603
Xiaoling 40.2 604 (% 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.
Xiaoling 2.2 605
606
Xiaoling 41.7 607 (% 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.
Xiaoling 2.2 608
609
Bei Jinggeng 47.1 610 [[image:1675215782925-448.png||_mstalt="297466"]]
Xiaoling 2.2 611
612
Xiaoling 40.2 613 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.
Xiaoling 2.2 614
615
Xiaoling 41.17 616 (% style="color:blue" %)**Compose Uplink**
Xiaoling 2.2 617
Xiaoling 40.2 618 (% style="color:#4f81bd" %)**AT+DATAUP=0**
Xiaoling 2.2 619
Xiaoling 41.8 620 Compose the uplink payload with value returns in sequence and send with **__A SIGNLE UPLINK__**.
Xiaoling 2.2 621
Xiaoling 41.8 622 Final Payload is **__Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx__**
Xiaoling 2.2 623
624 Where PAYVER is defined by AT+PAYVER, below is an example screen shot.
625
626
Bei Jinggeng 47.1 627 [[image:1675215828102-844.png||_mstalt="294645"]]
Xiaoling 2.2 628
629
Xiaoling 40.2 630 (% style="color:#4f81bd" %)**AT+DATAUP=1**
Xiaoling 2.2 631
Xiaoling 41.8 632 Compose the uplink payload with value returns in sequence and send with **__Multiply UPLINKs__**.
Xiaoling 2.2 633
Xiaoling 41.8 634 Final Payload is __**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA**__
Xiaoling 2.2 635
636 1. Battery Info (2 bytes): Battery voltage
637 1. PAYVER (1 byte): Defined by AT+PAYVER
638 1. PAYLOAD COUNT (1 byte): Total how many uplinks of this sampling.
639 1. PAYLOAD# (1 byte): Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT)
640 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
641
Bei Jinggeng 47.1 642 [[image:1675215848113-696.png||_mstalt="296998"]]
Xiaoling 2.2 643
644
Xiaoling 40.2 645 (% style="color:red" %)**Notice: the Max bytes is according to the max support bytes in different Frequency Bands for lowest SF. As below:**
Xiaoling 2.2 646
Xiaoling 35.2 647 * For AU915/AS923 bands, if UplinkDwell time=0, max 51 bytes for each uplink ( so 51 -5 = 46 max valid date)
648 * For AU915/AS923 bands, if UplinkDwell time=1, max 11 bytes for each uplink ( so 11 -5 = 6 max valid date).
649 * For US915 band, max 11 bytes for each uplink ( so 11 -5 = 6 max valid date).
650 * For all other bands: max 51 bytes for each uplink  ( so 51 -5 = 46 max valid date).
Xiaoling 2.2 651
Xiaoling 40.2 652 (% style="color:red" %)**When AT+DATAUP=1, the maximum number of segments is 15, and the maximum total number of bytes is 1500;**
Xiaoling 2.2 653
Xiaoling 40.2 654 (% style="color:red" %)**When AT+DATAUP=1 and AT+ADR=0, the maximum number of bytes of each payload is determined by the DR value.**
Xiaoling 2.2 655
656
Xiaoling 40.7 657 == 2.4 Uplink Payload ==
Xiaoling 2.2 658
Xiaoling 37.2 659 === 2.4.1 Device Payload, FPORT~=5 ===
Xiaoling 2.2 660
Xiaoling 37.2 661
Xiaoling 90.4 662 Include device configure status. Once SDI-12-LB/LS Joined the network, it will uplink this message to the server.
Xiaoling 2.2 663
Xiaoling 90.4 664 Users can also use the downlink command(0x26 01) to ask SDI-12-LB/LS to resend this uplink.
Xiaoling 2.2 665
Xiaoling 90.13 666 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
Xiaoling 90.10 667 |(% colspan="6" style="background-color:#4f81bd; color:white" %)**Device Status (FPORT=5)**
Xiaoling 48.5 668 |(% 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**
669 |(% 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
Xiaoling 2.2 670
671 Example parse in TTNv3
672
Bei Jinggeng 47.1 673 [[image:1675215946738-635.png||_mstalt="297778"]]
Xiaoling 2.2 674
Xiaoling 37.2 675
Xiaoling 90.4 676 (% style="color:#037691" %)**Sensor Model**(%%): For SDI-12-LB/LS, this value is 0x17
Xiaoling 2.2 677
Xiaoling 40.2 678 (% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
Xiaoling 2.2 679
Xiaoling 40.2 680 (% style="color:#037691" %)**Frequency Band**:
Xiaoling 2.2 681
Xiaoling 73.2 682 0x01: EU868
Xiaoling 2.2 683
Xiaoling 73.2 684 0x02: US915
Xiaoling 2.2 685
Xiaoling 73.2 686 0x03: IN865
Xiaoling 2.2 687
Xiaoling 73.2 688 0x04: AU915
Xiaoling 2.2 689
Xiaoling 73.2 690 0x05: KZ865
Xiaoling 2.2 691
Xiaoling 73.2 692 0x06: RU864
Xiaoling 2.2 693
Xiaoling 73.2 694 0x07: AS923
Xiaoling 2.2 695
Xiaoling 73.2 696 0x08: AS923-1
Xiaoling 2.2 697
Xiaoling 73.2 698 0x09: AS923-2
Xiaoling 2.2 699
Xiaoling 73.2 700 0x0a: AS923-3
Xiaoling 2.2 701
Xiaoling 73.2 702 0x0b: CN470
Xiaoling 2.2 703
Xiaoling 73.2 704 0x0c: EU433
Xiaoling 2.2 705
Xiaoling 73.2 706 0x0d: KR920
Xiaoling 2.2 707
Xiaoling 73.2 708 0x0e: MA869
Xiaoling 2.2 709
710
Xiaoling 40.2 711 (% style="color:#037691" %)**Sub-Band**:
Xiaoling 2.2 712
713 AU915 and US915:value 0x00 ~~ 0x08
714
715 CN470: value 0x0B ~~ 0x0C
716
717 Other Bands: Always 0x00
718
719
Xiaoling 40.2 720 (% style="color:#037691" %)**Battery Info**:
Xiaoling 2.2 721
722 Check the battery voltage.
723
724 Ex1: 0x0B45 = 2885mV
725
726 Ex2: 0x0B49 = 2889mV
727
728
Xiaoling 37.2 729 === 2.4.2 Uplink Payload, FPORT~=2 ===
Xiaoling 2.2 730
Xiaoling 37.2 731
Xiaoling 2.2 732 There are different cases for uplink. See below
733
734 * SDI-12 Debug Command return: FPORT=100
735
736 * Periodically Uplink: FPORT=2
737
Xiaoling 90.13 738 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:500px" %)
Xiaoling 90.7 739 |=(% style="width: 90px;background-color:#4F81BD;color:white" %)(((
Xiaoling 37.2 740 **Size(bytes)**
Xiaoling 90.7 741 )))|=(% style="width: 80px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 90px;background-color:#4F81BD;color:white" %)**1**|=(% style="width: 240px;background-color:#4F81BD;color:white" %)**Length depends on the return from the commands**
Xiaoling 87.9 742 |(% style="width:93px" %)Value|(% style="width:83px" %)(((
Xiaoling 2.2 743 Battery(mV)
744 &
745 Interrupt_Flag
Xiaoling 41.18 746 )))|(% style="width:91px" %)[[PAYLOAD_VER>>||anchor="H3.6Setthepayloadversion"]]|(% style="width:212px" %)(((
Xiaoling 37.2 747 If the valid payload is too long and exceed the maximum support.
Xiaoling 2.2 748 Payload length in server,server will show payload not provided in the LoRaWAN server.
749 )))
750
Bei Jinggeng 47.1 751 [[image:1675216282284-923.png||_mstalt="295633"]]
Xiaoling 2.2 752
753
Xiaoling 37.2 754 === 2.4.3 Battery Info ===
Xiaoling 2.2 755
756
Xiaoling 90.4 757 Check the battery voltage for SDI-12-LB/LS.
Xiaoling 2.2 758
759 Ex1: 0x0B45 = 2885mV
760
761 Ex2: 0x0B49 = 2889mV
762
763
Xiaoling 37.2 764 === 2.4.4 Interrupt Pin ===
Xiaoling 2.2 765
Xiaoling 37.2 766
Xiaoling 40.2 767 This data field shows if this packet is generated by (% style="color:#037691" %)**Interrupt Pin**(%%) or not. [[Click here>>||anchor="H3.2SetInterruptMode"]] for the hardware and software set up. Note: The Internet Pin is a separate pin in the screw terminal. See [[pin mapping>>||anchor="H1.7PinMapping"]].
Xiaoling 2.2 768
Xiaoling 37.2 769 **Example:**
Xiaoling 2.2 770
771 Ex1: 0x0B45:0x0B&0x80= 0x00    Normal uplink packet.
772
773 Ex2: 0x8B49:0x8B&0x80= 0x80    Interrupt Uplink Packet.
774
775
Xiaoling 37.2 776 === 2.4.5 Payload version ===
Xiaoling 2.2 777
Xiaoling 49.3 778
Bei Jinggeng 43.1 779 The version number of the payload, mainly used for decoding. The default is 01.
Xiaoling 2.2 780
781
Xiaoling 37.2 782 === 2.4.6 ​Decode payload in The Things Network ===
Xiaoling 2.2 783
784
785 While using TTN network, you can add the payload format to decode the payload.
786
Bei Jinggeng 47.1 787 [[image:1675216779406-595.png||_mstalt="298376"]]
Xiaoling 2.2 788
789
790 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.
791
Xiaoling 90.4 792 SDI-12-LB/LS TTN Payload Decoder: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>url:https://github.com/dragino/dragino-end-node-decoder]]
Xiaoling 2.2 793
794
Xiaoling 37.3 795 == 2.5 Uplink Interval ==
Xiaoling 2.2 796
797
Xiaoling 90.4 798 The SDI-12-LB/LS by default uplink the sensor data every 20 minutes. User can change this interval by AT Command or LoRaWAN Downlink Command. See this link:
Xiaoling 2.2 799
Xiaoling 44.2 800 [[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]]
Xiaoling 2.2 801
802
Edwin Chen 56.1 803 == 2.6 Examples To Set SDI commands ==
Xiaoling 2.2 804
Edwin Chen 56.1 805 === 2.6.1 Examples 1 ~-~- General Example ===
Xiaoling 2.2 806
Xiaoling 44.2 807
Xiaoling 90.4 808 COM port and SDI-12 sensor communication converted to SDI-12-LB/LS and SDI-12 sensor communication.
Bei Jinggeng 43.1 809
Bei Jinggeng 47.1 810 [[image:image-20230222143809-1.png||_mstalt="429962" height="564" width="729"]]
Bei Jinggeng 43.1 811
812
Xiaoling 44.2 813 (% style="color:blue" %)**1) The AT+COMMANDx command is applied to the red arrow part, and sends the SDI12 command to the SDI12 sensor:**
Bei Jinggeng 43.1 814
Xiaoling 44.2 815 a. Send the first command and get the first reply:
Bei Jinggeng 43.1 816
Xiaoling 44.2 817 (% style="color:#037691" %)**AT+COMMANDx=1I!,0,0,1**
Bei Jinggeng 43.1 818
Xiaoling 44.2 819 b. Send the second command and get the second reply:
Bei Jinggeng 43.1 820
Xiaoling 44.2 821 (% style="color:#037691" %)**AT+COMMANDx=2I!,0,0,1**
Bei Jinggeng 43.1 822
Xiaoling 44.2 823 c. Send the third command and get the third reply:
Bei Jinggeng 43.1 824
Xiaoling 44.2 825 (% style="color:#037691" %)**AT+COMMANDx=3I!,0,0,1**
Bei Jinggeng 43.1 826
Xiaoling 44.2 827 d. Send the fourth command and get the fourth reply:
Bei Jinggeng 43.1 828
Xiaoling 44.2 829 (% style="color:#037691" %)**AT+COMMANDx=4I!,0,0,1**
Bei Jinggeng 43.1 830
Xiaoling 44.2 831 e. Send the fifth command plus the sixth command, get the sixth reply:
Bei Jinggeng 43.1 832
Xiaoling 44.2 833 (% style="color:#037691" %)**AT+COMMANDx=1M!,2,1,1**
Bei Jinggeng 43.1 834
Xiaoling 44.2 835 f. Send the seventh command plus the eighth command, get the eighth reply:
Bei Jinggeng 43.1 836
Xiaoling 44.2 837 (% style="color:#037691" %)**AT+COMMANDx=2M!,2,1,1**
Bei Jinggeng 43.1 838
Xiaoling 44.2 839 g. Send the ninth command plus the tenth command, get the tenth reply:
Bei Jinggeng 43.1 840
Xiaoling 44.2 841 (% style="color:#037691" %)**AT+COMMANDx=3M!,1,1,1**
Bei Jinggeng 43.1 842
Xiaoling 44.2 843 h. Send the eleventh command plus the twelfth command, get the twelfth reply:
Bei Jinggeng 43.1 844
Xiaoling 44.2 845 (% style="color:#037691" %)**AT+COMMANDx=4M!,1,1,1**
Bei Jinggeng 43.1 846
847
Xiaoling 90.15 848 (% style="color:blue" %)**2) The AT+DATACUTx command is applied to the green arrow part, receiving and cut out data from the SDI12 sensor:**
Bei Jinggeng 43.1 849
Xiaoling 44.2 850 a. The first reply, all 34 characters: ”113TRUEBNERSMT100038220303182331<CR><LF>”
Bei Jinggeng 43.1 851
Bei Jinggeng 47.1 852 Cut out all characters: (% _mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=34,2,1~~34**(% style="color:#037691" %);
Xiaoling 44.2 853
Xiaoling 90.15 854 b. The sixth reply, all 31 characters: "1+19210+1.04+0.00+22.49+11.75<CR><LF>"
Bei Jinggeng 43.1 855
Bei Jinggeng 47.1 856 Cut out all characters: (% _mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=31,2,1~~31**(% style="color:#037691" %);
Bei Jinggeng 43.1 857
Xiaoling 90.15 858 c. The eighth reply, all 31 characters: "2+18990+1.08+0.00+22.24+11.80<CR><LF>"
Bei Jinggeng 43.1 859
Bei Jinggeng 47.1 860 Cut out all characters: (% _mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=31,2,1~~31**(% style="color:#037691" %);
Bei Jinggeng 43.1 861
Xiaoling 90.15 862 d. The tenth reply, all 15 characters: "3-2919.8+24.0<CR><LF>"
Bei Jinggeng 43.1 863
Bei Jinggeng 47.1 864 Cut out all characters: (% _mstmutation="1" style="color:#037691" %)**AT+ALLDATAMOD=1 or AT+DATACUTx=15,2,1~~15**(% style="color:#037691" %);
Bei Jinggeng 43.1 865
Xiaoling 90.15 866 e. The twelfth reply, all 25 characters: "4+30.8+22.84+4.7+954.38<CR><LF>"
Bei Jinggeng 43.1 867
Xiaoling 90.15 868 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"**.
Bei Jinggeng 43.1 869
870
Edwin Chen 71.1 871 === 2.6.2 Example 2 ~-~- Connect to Hygrovue10 ===
Edwin Chen 56.1 872
873 ==== 2.6.2.1 Reference Manual and Command ====
874
Xiaoling 72.2 875
Edwin Chen 56.1 876 * [[Hygrovue10 Product Page>>https://www.campbellsci.com/hygrovue10]]
Xiaoling 72.2 877
Edwin Chen 56.1 878 * Commands to be used in PC and output.
879
Xiaoling 72.2 880 ~1. check device address
Edwin Chen 56.1 881
Xiaoling 72.2 882 2. change device address
Edwin Chen 56.1 883
Xiaoling 72.2 884 3. check device ID
Edwin Chen 56.1 885
Xiaoling 72.2 886 4. start measure
Edwin Chen 56.1 887
Xiaoling 72.2 888 5. Get Meausre result
Edwin Chen 56.1 889
890 [[image:image-20230603120209-2.png||height="281" width="267"]]
891
892
Xiaoling 90.4 893 ==== 2.6.2.2 Hardware Connection to SDI-12-LB/LS ====
Edwin Chen 56.1 894
Xiaoling 72.2 895
Edwin Chen 56.1 896 [[image:image-20230603120515-3.png]]
897
898
Xiaoling 90.4 899 ==== 2.6.2.3 Commands set in SDI-12-LB/LS and uplink payload ====
Edwin Chen 56.1 900
Xiaoling 72.2 901
Edwin Chen 56.1 902 [[image:image-20230603120648-4.png]]
903
904 [[image:image-20230603120726-5.png]]
905
906
Xiaoling 72.2 907 **Data in TTN:**
908
Edwin Chen 56.1 909 [[image:image-20230603120859-6.png||height="118" width="1285"]]
910
911
Xiaoling 87.5 912 === 2.6.3 Example 3 ~-~- Connect to SIL-400 ===
Edwin Chen 56.1 913
Edwin Chen 71.1 914 ==== 2.6.3.1 Reference Manual and Command ====
Edwin Chen 56.1 915
Xiaoling 72.2 916
Edwin Chen 71.1 917 * [[SIL-400 Product Page>>https://www.apogeeinstruments.com/sil-411-commercial-grade-sdi-12-digital-output-standard-field-of-view-infrared-radiometer-sensor/]]
Xiaoling 72.2 918
Edwin Chen 71.1 919 * Commands to be used in PC and output.
920
Xiaoling 72.2 921 ~1. check device address
Edwin Chen 71.1 922
Xiaoling 72.2 923 2. change device address
Edwin Chen 71.1 924
Xiaoling 72.2 925 3. check device ID
Edwin Chen 71.1 926
Xiaoling 72.2 927 4. start measure
Edwin Chen 71.1 928
Xiaoling 72.2 929 5. Get Meausre result
Edwin Chen 71.1 930
931 [[image:image-20230603121606-7.png||height="242" width="307"]]
932
933
Xiaoling 90.4 934 ==== 2.6.3.2 Hardware Connection to SDI-12-LB/LS ====
Edwin Chen 71.1 935
Xiaoling 72.3 936
Edwin Chen 71.1 937 [[image:image-20230603121643-8.png||height="442" width="656"]]
938
939
Xiaoling 90.4 940 ==== 2.6.3.3 Commands set in SDI-12-LB/LS and uplink payload ====
Edwin Chen 71.1 941
Xiaoling 72.3 942
Edwin Chen 71.1 943 [[image:image-20230603121721-9.png]]
944
Saxer Lin 83.1 945 [[image:image-20230628090323-1.png||height="414" width="694"]]
Edwin Chen 71.1 946
947 Data in TTN:
948
949 [[image:image-20230603121826-11.png||height="155" width="1104"]]
950
951
Xiaoling 87.4 952 === 2.6.4 Example 4 ~-~- Connect to TEROS-12 ===
Edwin Chen 71.1 953
954 ==== 2.6.4.1 Reference Manual and Command ====
955
Xiaoling 72.3 956
Edwin Chen 71.1 957 * [[TEROS-12 Product Page>>https://www.metergroup.com/en/meter-environment/products/teros-12-soil-moisture-sensor]]
Xiaoling 72.3 958
Edwin Chen 71.1 959 * Commands to be used in PC and output.
960
961 1.check device address
962
963 2.change device address
964
965 3.check device ID
966
967 4.start measure
968
969 5.Get Meausre result
970
971 [[image:image-20230603122248-16.png||height="196" width="198"]]
972
973
Xiaoling 90.4 974 ==== 2.6.4.2 Hardware Connection to SDI-12-LB/LS ====
Edwin Chen 71.1 975
Xiaoling 72.3 976
Edwin Chen 71.1 977 [[image:image-20230603122212-15.png||height="502" width="667"]]
978
979
Xiaoling 90.4 980 ==== 2.6.4.3 Commands set in SDI-12-LB/LS and uplink payload ====
Edwin Chen 71.1 981
Xiaoling 73.4 982
Edwin Chen 71.1 983 [[image:image-20230603122040-12.png]]
984
985 [[image:image-20230603122109-13.png||height="469" width="762"]]
986
987
Xiaoling 72.3 988 **Data in TTN:**
989
Edwin Chen 71.1 990 [[image:image-20230603122139-14.png||height="148" width="1128"]]
991
992
Xiaoling 87.4 993 === 2.6.5 Example 5 ~-~- Connect to SIL-400/TEROS-12 & Hygrovue10 ===
Edwin Chen 71.1 994
Edwin Chen 72.1 995 ==== 2.6.5.1 Important Notice! ====
Edwin Chen 71.1 996
Xiaoling 72.3 997
Edwin Chen 71.1 998 * The product page and reference command see above example 2,3,4
Xiaoling 72.3 999
Edwin Chen 71.1 1000 * All of these SDI-12 sensors use the same address (address 0) by default. So we need to change their address to different address, by using **aAb!** command. See above example.
Xiaoling 72.3 1001
Edwin Chen 71.1 1002 * The sensor needs to be powered to a steady statue. So the 12VT time need to be set to the maximum stable time for the sensors. in this example, it is 13 seconds.
Xiaoling 72.3 1003
Xiaoling 90.4 1004 * If these SDI-12 sensors are powered by external power source. It will add 300uA in the total current in SDI-12-LB/LS.
Edwin Chen 71.1 1005
Xiaoling 90.4 1006 ==== 2.6.5.2 Hardware Connection to SDI-12-LB/LS ====
Edwin Chen 71.1 1007
Xiaoling 72.3 1008
Edwin Chen 71.1 1009 [[image:image-20230603122508-17.png||height="526" width="742"]]
1010
1011
Xiaoling 90.4 1012 ==== 2.6.5.3 Commands set in SDI-12-LB/LS and uplink payload ====
Edwin Chen 71.1 1013
Xiaoling 72.3 1014
Edwin Chen 71.1 1015 [[image:image-20230603122549-18.png]]
1016
1017 [[image:image-20230603122623-19.png||height="483" width="1121"]]
1018
1019
Xiaoling 72.3 1020 **Data in TTN:**
1021
Edwin Chen 71.1 1022 [[image:image-20230603122719-20.png||height="151" width="1179"]]
1023
1024
Xiaoling 87.4 1025 === 2.6.6 Example 6 ~-~- Connect to ENTELECHY-EP_SDI-12 ===
Bei Jinggeng 81.1 1026
Xiaoling 87.4 1027 ==== 2.6.6.1 Reference Manual and Command ====
Bei Jinggeng 81.1 1028
1029
1030 * [[https:~~/~~/enviroprosoilprobes.com/wp-content/uploads/2019/11/ENTELECHY-EP_SDI-12-Commands.pdf>>url:https://enviroprosoilprobes.com/wp-content/uploads/2019/11/ENTELECHY-EP_SDI-12-Commands.pdf]]
1031
1032 * Commands to be used in PC and output.
1033
1034 1.check device address
1035
1036 2.change device address
1037
1038 3.check device ID
1039
1040 4.start measure
1041
1042 5.Get Meausre result
1043
1044
1045 [[image:image-20230627174559-3.png]]
1046
Xiaoling 87.3 1047
Xiaoling 90.4 1048 ==== 2.6.6.2 Hardware Connection to SDI-12-LB/LS ====
Bei Jinggeng 81.1 1049
Xiaoling 87.3 1050
Bei Jinggeng 81.1 1051 [[image:image-20230627174446-2.png]]
1052
1053
Xiaoling 90.4 1054 ==== 2.6.6.3 Commands set in SDI-12-LB/LS and uplink payload ====
Bei Jinggeng 81.1 1055
1056
1057 [[image:image-20230627175513-4.png||height="596" width="576"]]
1058
1059 [[image:image-20230627175736-5.png||height="429" width="693"]]
1060
1061
1062 **Data in TTN:**
1063
1064 [[image:image-20230627180303-6.png||height="292" width="1171"]]
1065
Xiaoling 87.3 1066
Bei Jinggeng 118.1 1067 === 2.6.7 Example 7 ~-~- Connect to GroPoint Profile-8 (SDI-12 Version) ===
kai 97.1 1068
Edwin Chen 99.1 1069 ==== 2.6.7.1  Reference Manual and Command ====
kai 97.1 1070
Xiaoling 103.1 1071
kai 97.1 1072 * [[https:~~/~~/static1.squarespace.com/static/5db0b690c4990258f8f6d042/t/64189e1ab3ebc54e6947b0c0/1679334941034/2625-N-T+GroPoint+Profile+User+Manual-V1.1.3.pdf>>https://static1.squarespace.com/static/5db0b690c4990258f8f6d042/t/64189e1ab3ebc54e6947b0c0/1679334941034/2625-N-T+GroPoint+Profile+User+Manual-V1.1.3.pdf]]
1073
1074 * Commands to be used in PC and output.
1075
Edwin Chen 99.1 1076 1. check device address
1077 1. change device address
1078 1. check device ID
1079 1. start measure
1080 1. Get Meausre result
kai 97.1 1081
1082 [[image:image-20240423143921-1.png]]
1083
1084
1085 ==== 2.6.7.2 Hardware Connection to SDI-12-LB/LS ====
1086
kai 100.1 1087
Xiaoling 103.1 1088 (% style="color:red" %)**Note: When the bytes returned by the sensor are not fixed, the full byte interception can be used: AT+ALLDATAMOD=1 (The DATACUTx parameter needs to be cleared when using this directive, or it will not work.)**
1089
kai 97.1 1090 [[image:image-20240423145522-2.png||height="345" width="400"]]
1091
1092
1093 ==== 2.6.7.3 Commands set in SDI-12-LB/LS and uplink payload ====
1094
1095 [[image:image-20240423151202-3.png]]
1096
kai 98.1 1097 (% class="wikigeneratedid" id="H" %)
1098 [[image:image-20240423162851-6.png||height="251" width="935"]]
kai 97.1 1099
1100
1101 DATA in TTN:
1102
kai 98.1 1103 [[image:image-20240423162322-4.png||height="269" width="933"]]
kai 97.1 1104
1105
Bei Jinggeng 120.1 1106 === 2.6.8 Example 8 ~-~- Connect to Acclima TDR Soil Moisture Sensor ===
Bei Jinggeng 117.1 1107
1108 ==== 2.6.8.1  Reference Manual and Command ====
1109
1110
1111 * [[Acclima TDR Soil Moisture Sensor User Manual>>url:https://acclima.com/tdr-soil-moisture-sensor-user-manual/]]
1112
1113 * Commands to be used in PC and output.
1114
1115 1. check device address
1116 1. change device address
1117 1. check device ID
1118 1. start measure
1119 1. Get Meausre result
1120
1121 [[image:image-20240903152650-3.png]]
1122
1123 [[image:image-20240903152627-2.png]]
1124
Xiaoling 122.1 1125
Bei Jinggeng 117.1 1126 ==== 2.6.8.2 Hardware Connection to SDI-12-LB/LS ====
1127
1128
1129 (% style="color:red" %)**Note: When the bytes returned by the sensor are not fixed, the full byte interception can be used: AT+ALLDATAMOD=1 (The DATACUTx parameter needs to be cleared when using this directive, or it will not work.)**
1130
1131 [[image:image-20240903153004-5.png||height="358" width="660"]]
1132
Xiaoling 122.1 1133
Bei Jinggeng 117.1 1134 ==== 2.6.8.3 Commands set in SDI-12-LB/LS and uplink payload ====
1135
Xiaoling 122.1 1136
Bei Jinggeng 117.1 1137 [[image:image-20240903153258-6.png]]
1138
1139 [[image:image-20240903153627-7.png]]
1140
1141 DATA in TTN:
1142
1143 [[image:image-20240903154020-10.png||height="467" width="961"]]
1144
Xiaoling 122.1 1145
Bei Jinggeng 43.1 1146 == 2.7 Frequency Plans ==
1147
1148
Xiaoling 90.11 1149 The SDI-12-LB/LS uses OTAA mode and below frequency plans by default. Each frequency band use different firmware, user update the firmware to the corresponding band for their country.
Xiaoling 2.2 1150
Xiaoling 37.3 1151 [[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/]]
Xiaoling 2.2 1152
1153
Bei Jinggeng 43.1 1154 == 2.8 Firmware Change Log ==
Xiaoling 37.3 1155
1156
Xiaoling 2.2 1157 **Firmware download link:**
1158
Xiaoling 41.9 1159 [[https:~~/~~/www.dropbox.com/sh/qrbgbikb109lkiv/AACBR-v_ZhZAMengcY7Nsa1ja?dl=0>>https://www.dropbox.com/sh/qrbgbikb109lkiv/AACBR-v_ZhZAMengcY7Nsa1ja?dl=0]]
Xiaoling 2.2 1160
1161
Xiaoling 90.4 1162 = 3. Configure SDI-12-LB/LS via AT Command or LoRaWAN Downlink =
Xiaoling 2.2 1163
1164
Xiaoling 90.4 1165 Use can configure SDI-12-LB/LS via AT Command or LoRaWAN Downlink.
Xiaoling 2.2 1166
Xiaoling 40.8 1167 * AT Command Connection: See [[FAQ>>||anchor="H7.FAQ"]].
Xiaoling 37.3 1168 * LoRaWAN Downlink instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
Xiaoling 2.2 1169
Xiaoling 90.4 1170 There are two kinds of commands to configure SDI-12-LB/LS, they are:
Xiaoling 2.2 1171
Xiaoling 40.7 1172 * (% style="color:blue" %)**General Commands**.
Xiaoling 2.2 1173
1174 These commands are to configure:
1175
1176 * General system settings like: uplink interval.
1177 * LoRaWAN protocol & radio related command.
1178
1179 They are same for all Dragino Device which support DLWS-005 LoRaWAN Stack. These commands can be found on the wiki:
1180
Xiaoling 40.2 1181 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/]]
Xiaoling 2.2 1182
1183
Xiaoling 90.4 1184 * (% style="color:blue" %)**Commands special design for SDI-12-LB/LS**
Xiaoling 2.2 1185
Xiaoling 90.4 1186 These commands only valid for SDI-12-LB/LS, as below:
Xiaoling 2.2 1187
1188
Bei Jinggeng 43.1 1189 == 3.1 Set Transmit Interval Time ==
Xiaoling 2.2 1190
1191
1192 Feature: Change LoRaWAN End Node Transmit Interval.
1193
Xiaoling 37.3 1194 (% style="color:blue" %)**AT Command: AT+TDC**
Xiaoling 2.2 1195
Xiaoling 90.13 1196 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
Xiaoling 90.7 1197 |=(% style="width: 160px; background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 160px; background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 190px;background-color:#4F81BD;color:white" %)**Response**
Xiaoling 48.7 1198 |(% style="background-color:#f2f2f2; width:157px" %)AT+TDC=?|(% style="background-color:#f2f2f2; width:166px" %)Show current transmit Interval|(% style="background-color:#f2f2f2" %)(((
Xiaoling 2.2 1199 30000
1200 OK
1201 the interval is 30000ms = 30s
1202 )))
Xiaoling 48.7 1203 |(% style="background-color:#f2f2f2; width:157px" %)AT+TDC=60000|(% style="background-color:#f2f2f2; width:166px" %)Set Transmit Interval|(% style="background-color:#f2f2f2" %)(((
Xiaoling 2.2 1204 OK
1205 Set transmit interval to 60000ms = 60 seconds
1206 )))
1207
Xiaoling 37.3 1208 (% style="color:blue" %)**Downlink Command: 0x01**
Xiaoling 2.2 1209
1210 Format: Command Code (0x01) followed by 3 bytes time value.
1211
Xiaoling 37.6 1212 If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01.
Xiaoling 2.2 1213
Xiaoling 37.6 1214 * Example 1: Downlink Payload: 0100001E  ~/~/ Set Transmit Interval (TDC) = 30 seconds
1215 * Example 2: Downlink Payload: 0100003C  ~/~/  Set Transmit Interval (TDC) = 60 seconds
Xiaoling 2.2 1216
Xiaoling 37.3 1217 == 3.2 Set Interrupt Mode ==
Xiaoling 2.2 1218
Xiaoling 37.6 1219
Xiaoling 2.2 1220 Feature, Set Interrupt mode for GPIO_EXIT.
1221
Xiaoling 37.3 1222 (% style="color:blue" %)**AT Command: AT+INTMOD**
Xiaoling 2.2 1223
Xiaoling 90.13 1224 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
Xiaoling 90.7 1225 |=(% style="width: 154px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 196px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 160px;background-color:#4F81BD;color:white" %)**Response**
Xiaoling 48.8 1226 |(% style="background-color:#f2f2f2; width:154px" %)AT+INTMOD=?|(% style="background-color:#f2f2f2; width:196px" %)Show current interrupt mode|(% style="background-color:#f2f2f2; width:157px" %)(((
Xiaoling 2.2 1227 0
1228 OK
Xiaoling 48.8 1229 the mode is 0 =Disable Interrupt
Xiaoling 2.2 1230 )))
Xiaoling 48.8 1231 |(% style="background-color:#f2f2f2; width:154px" %)AT+INTMOD=2|(% style="background-color:#f2f2f2; width:196px" %)(((
Xiaoling 2.2 1232 Set Transmit Interval
Bei Jinggeng 43.1 1233 0. (Disable Interrupt),
1234 ~1. (Trigger by rising and falling edge)
1235 2. (Trigger by falling edge)
1236 3. (Trigger by rising edge)
Xiaoling 48.8 1237 )))|(% style="background-color:#f2f2f2; width:157px" %)OK
Xiaoling 2.2 1238
Xiaoling 37.3 1239 (% style="color:blue" %)**Downlink Command: 0x06**
Xiaoling 2.2 1240
1241 Format: Command Code (0x06) followed by 3 bytes.
1242
1243 This means that the interrupt mode of the end node is set to 0x000003=3 (rising edge trigger), and the type code is 06.
1244
Xiaoling 37.6 1245 * Example 1: Downlink Payload: 06000000  ~/~/  Turn off interrupt mode
1246 * Example 2: Downlink Payload: 06000003  ~/~/  Set the interrupt mode to rising edge trigger
Xiaoling 2.2 1247
Xiaoling 37.3 1248 == 3.3 Set the output time ==
1249
1250
Xiaoling 2.2 1251 Feature, Control the output 3V3 , 5V or 12V.
1252
Xiaoling 37.3 1253 (% style="color:blue" %)**AT Command: AT+3V3T**
Xiaoling 2.2 1254
Xiaoling 90.13 1255 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:474px" %)
Xiaoling 90.7 1256 |=(% style="width: 154px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 201px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 120px;background-color:#4F81BD;color:white" %)**Response**
Xiaoling 48.9 1257 |(% style="background-color:#f2f2f2; width:154px" %)AT+3V3T=?|(% style="background-color:#f2f2f2; width:201px" %)Show 3V3 open time.|(% style="background-color:#f2f2f2; width:116px" %)(((
Xiaoling 2.2 1258 0
1259 OK
1260 )))
Xiaoling 48.9 1261 |(% 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" %)(((
Xiaoling 2.2 1262 OK
1263 default setting
1264 )))
Xiaoling 48.9 1265 |(% 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" %)(((
Xiaoling 2.2 1266 OK
1267 )))
Xiaoling 48.9 1268 |(% 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" %)(((
Xiaoling 2.2 1269 OK
1270 )))
1271
Xiaoling 37.3 1272 (% style="color:blue" %)**AT Command: AT+5VT**
Xiaoling 2.2 1273
Xiaoling 48.21 1274 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:470px" %)
Xiaoling 90.7 1275 |=(% style="width: 155px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 196px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 119px;background-color:#4F81BD;color:white" %)**Response**
Xiaoling 48.9 1276 |(% style="background-color:#f2f2f2; width:155px" %)AT+5VT=?|(% style="background-color:#f2f2f2; width:196px" %)Show 5V open time.|(% style="background-color:#f2f2f2; width:114px" %)(((
Xiaoling 2.2 1277 0
1278 OK
1279 )))
Xiaoling 48.9 1280 |(% 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" %)(((
Xiaoling 2.2 1281 OK
1282 default setting
1283 )))
Xiaoling 48.9 1284 |(% 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" %)(((
Xiaoling 2.2 1285 OK
1286 )))
Xiaoling 48.9 1287 |(% 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" %)(((
Xiaoling 2.2 1288 OK
1289 )))
1290
Saxer Lin 73.1 1291 (% style="color:blue" %)**AT Command: AT+12VT **
Xiaoling 2.2 1292
Xiaoling 87.10 1293 (% style="color:blue" %)**(The v1.2 version is enabled for 1 second by default, and the version below v1.2 is disabled by default)**
Saxer Lin 73.1 1294
Xiaoling 48.21 1295 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:443px" %)
Xiaoling 90.7 1296 |=(% style="width: 156px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 199px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 89px;background-color:#4F81BD;color:white" %)**Response**
Xiaoling 48.9 1297 |(% style="background-color:#f2f2f2; width:156px" %)AT+12VT=?|(% style="background-color:#f2f2f2; width:199px" %)Show 12V open time.|(% style="background-color:#f2f2f2; width:83px" %)(((
Xiaoling 2.2 1298 0
1299 OK
1300 )))
Xiaoling 48.9 1301 |(% 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
1302 |(% 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" %)(((
Xiaoling 2.2 1303 OK
1304 )))
1305
Xiaoling 37.3 1306 (% style="color:blue" %)**Downlink Command: 0x07**
Xiaoling 2.2 1307
1308 Format: Command Code (0x07) followed by 3 bytes.
1309
1310 The first byte is which power, the second and third bytes are the time to turn on.
1311
Xiaoling 37.3 1312 * Example 1: Downlink Payload: 070101F4  **~-~-->**  AT+3V3T=500
1313 * Example 2: Downlink Payload: 0701FFFF   **~-~-->**  AT+3V3T=65535
1314 * Example 3: Downlink Payload: 070203E8  **~-~-->**  AT+5VT=1000
1315 * Example 4: Downlink Payload: 07020000  **~-~-->**  AT+5VT=0
1316 * Example 5: Downlink Payload: 070301F4  **~-~-->**  AT+12VT=500
1317 * Example 6: Downlink Payload: 07030000  **~-~-->**  AT+12VT=0
Xiaoling 2.2 1318
Xiaoling 37.3 1319 == 3.4 Set the all data mode ==
1320
Xiaoling 37.5 1321
Xiaoling 2.2 1322 Feature, Set the all data mode.
1323
Xiaoling 37.5 1324 (% style="color:blue" %)**AT Command: AT+ALLDATAMOD**
Xiaoling 2.2 1325
Xiaoling 90.13 1326 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:437px" %)
Xiaoling 90.7 1327 |=(% style="background-color:#4F81BD;color:white" %)**Command Example**|=(% style="background-color:#4F81BD;color:white" %)**Function**|=(% style="background-color:#4F81BD;color:white" %)**Response**
Xiaoling 48.16 1328 |(% style="background-color:#f2f2f2" %)AT+ALLDATAMOD=?|(% style="background-color:#f2f2f2" %)Show current all data mode|(% style="background-color:#f2f2f2" %)(((
Xiaoling 2.2 1329 0
1330 OK
1331 )))
Xiaoling 48.16 1332 |(% style="background-color:#f2f2f2" %)AT+ALLDATAMOD=1|(% style="background-color:#f2f2f2" %)Set all data mode is 1.|(% style="background-color:#f2f2f2" %)OK
Xiaoling 2.2 1333
Xiaoling 37.5 1334 (% style="color:blue" %)**Downlink Command: 0xAB**
Xiaoling 2.2 1335
1336 Format: Command Code (0xAB) followed by 1 bytes.
1337
Xiaoling 37.5 1338 * Example 1: Downlink Payload: AB 00  ~/~/  AT+ALLDATAMOD=0
1339 * Example 2: Downlink Payload: AB 01  ~/~/  AT+ALLDATAMOD=1
Xiaoling 2.2 1340
Xiaoling 37.3 1341 == 3.5 Set the splicing payload for uplink ==
1342
Xiaoling 37.5 1343
Xiaoling 2.2 1344 Feature, splicing payload for uplink.
1345
Xiaoling 37.5 1346 (% style="color:blue" %)**AT Command: AT+DATAUP**
Xiaoling 2.2 1347
Xiaoling 90.13 1348 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
Xiaoling 90.7 1349 |=(% style="width: 154px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 266px;background-color:#4F81BD;color:white" %)**Function**|=(% style="background-color:#4F81BD;color:white" %)**Response**
Xiaoling 48.16 1350 |(% style="background-color:#f2f2f2; width:154px" %)AT+DATAUP =?|(% style="background-color:#f2f2f2; width:266px" %)Show current splicing payload for uplink mode|(% style="background-color:#f2f2f2" %)(((
Xiaoling 2.2 1351 0
1352 OK
1353 )))
Xiaoling 48.16 1354 |(% style="background-color:#f2f2f2; width:154px" %)AT+DATAUP =0|(% style="background-color:#f2f2f2; width:266px" %)(((
Xiaoling 2.2 1355 Set splicing payload for uplink mode is 0.
Xiaoling 48.16 1356 )))|(% style="background-color:#f2f2f2" %)(((
Xiaoling 2.2 1357 OK
1358 )))
Xiaoling 48.16 1359 |(% style="background-color:#f2f2f2; width:154px" %)AT+DATAUP =1|(% style="background-color:#f2f2f2; width:266px" %)Set splicing payload for uplink mode is 1 , and the each splice uplink is sent sequentially.|(% style="background-color:#f2f2f2" %)OK
1360 |(% style="background-color:#f2f2f2; width:154px" %)AT+DATAUP =1,20000|(% style="background-color:#f2f2f2; width:266px" %)(((
Xiaoling 37.3 1361 Set splicing payload for uplink mode is 1, and the uplink interval of each splice to 20000 milliseconds.
Xiaoling 48.16 1362 )))|(% style="background-color:#f2f2f2" %)OK
Xiaoling 2.2 1363
Xiaoling 37.5 1364 (% style="color:blue" %)**Downlink Command: 0xAD**
Xiaoling 2.2 1365
1366 Format: Command Code (0xAD) followed by 1 bytes or 5 bytes.
1367
Xiaoling 37.6 1368 * Example 1: Downlink Payload: AD 00  ~/~/  AT+DATAUP=0
1369 * Example 2: Downlink Payload: AD 01  ~/~/  AT+DATAUP =1
1370 * Example 3: Downlink Payload: AD 01 00 00 14  ~/~/  AT+DATAUP =1,20000
Xiaoling 2.2 1371
1372 This means that the interval is set to 0x000014=20S
1373
1374
Xiaoling 37.3 1375 == 3.6 Set the payload version ==
Xiaoling 2.2 1376
Xiaoling 41.20 1377
Xiaoling 2.2 1378 Feature, Set the payload version.
1379
Xiaoling 37.5 1380 (% style="color:blue" %)**AT Command: AT+PAYVER**
Xiaoling 2.2 1381
Xiaoling 90.13 1382 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:437px" %)
Xiaoling 90.7 1383 |=(% style="width: 158px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 192px;background-color:#4F81BD;color:white" %)**Function**|=(% style="background-color:#4F81BD;color:white" %)**Response**
Xiaoling 48.16 1384 |(% style="background-color:#f2f2f2; width:158px" %)AT+PAYVER=?|(% style="background-color:#f2f2f2; width:192px" %)Show current payload version|(% style="background-color:#f2f2f2" %)(((
Xiaoling 2.2 1385 1
1386 OK
1387 )))
Xiaoling 48.16 1388 |(% style="background-color:#f2f2f2; width:158px" %)AT+PAYVER=5|(% style="background-color:#f2f2f2; width:192px" %)Set payload version is 5.|(% style="background-color:#f2f2f2" %)OK
Xiaoling 2.2 1389
Xiaoling 37.5 1390 (% style="color:blue" %)**Downlink Command: 0xAE**
Xiaoling 2.2 1391
1392 Format: Command Code (0xAE) followed by 1 bytes.
1393
Xiaoling 37.6 1394 * Example 1: Downlink Payload: AE 01  ~/~/  AT+PAYVER=1
1395 * Example 2: Downlink Payload: AE 05  ~/~/  AT+PAYVER=5
Xiaoling 2.2 1396
Xiaoling 48.14 1397 = 4. Battery & Power Consumption =
Xiaoling 2.2 1398
Xiaoling 48.16 1399
Xiaoling 90.4 1400 SDI-12-LB use ER26500 + SPC1520 battery pack and SDI-12-LS use 3000mAh Recharable Battery with Solar Panel. See below link for detail information about the battery info and how to replace.
Xiaoling 2.2 1401
Xiaoling 48.16 1402 [[**Battery Info & Power Consumption Analyze**>>url:http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
Xiaoling 37.3 1403
1404
1405 = 5. Remote Configure device =
Xiaoling 2.2 1406
Xiaoling 37.3 1407 == 5.1 Connect via BLE ==
Xiaoling 2.2 1408
1409
Xiaoling 37.3 1410 Please see this instruction for how to configure via BLE: [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]]
Xiaoling 2.2 1411
1412
Xiaoling 37.3 1413 == 5.2 AT Command Set ==
Xiaoling 2.2 1414
1415
1416
Xiaoling 37.3 1417 = 6. OTA firmware update =
1418
1419
Xiaoling 2.2 1420 Please see this link for how to do OTA firmware update.
1421
1422 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/]]
1423
1424
Xiaoling 40.2 1425 = 7. FAQ =
Xiaoling 2.2 1426
Bei Jinggeng 48.1 1427 == 7.1 How to use AT Command  via UART to access device? ==
Xiaoling 2.2 1428
1429
Xiaoling 40.2 1430 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]]
1431
1432
1433 == 7.2 How to update firmware via UART port? ==
1434
1435
1436 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]]
1437
1438
1439 == 7.3 How to change the LoRa Frequency Bands/Region? ==
1440
Xiaoling 103.1 1441
Xiaoling 40.2 1442 You can follow the instructions for [[how to upgrade image>>doc:Main.Firmware Upgrade Instruction for STM32 base products.WebHome]].
1443 When downloading the images, choose the required image file for download. ​
1444
1445
Bei Jinggeng 101.1 1446 == 7.4 Why is the data uploaded to the LoRaWAN platform node empty and fProt~=0? ==
1447
Xiaoling 103.1 1448
Bei Jinggeng 101.1 1449 This is due to The length of bytes sent by the node is limited by the lorawan protocol, and the fixed DR needs to be adjusted to improve this problem.
1450
1451 Please refer to the following link for the number of bytes limited by different frequencies and different DRs in the lorawan protocol
1452
1453 [[lora-alliance.org/wp-content/uploads/2021/05/RP002-1.0.3-FINAL-1.pdf>>url:https://lora-alliance.org/wp-content/uploads/2021/05/RP002-1.0.3-FINAL-1.pdf]]
1454
1455 Example:
1456
1457 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/RS485-LN%20%E2%80%93%20RS485%20to%20LoRaWAN%20Converter/WebHome/image-20240620145456-1.png?rev=1.1||alt="image-20240620145456-1.png"]]
1458
1459 Please refer to the following command to fix DR
1460
1461 AT+ADR=0
1462
1463 AT+DR=3
1464
1465 Downlink command:
1466
1467 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/#H7.4DataRate>>url:http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/#H7.4DataRate]]
1468
1469
Xiaoling 40.2 1470 = 8. ​Order Info =
1471
1472
Xiaoling 41.20 1473 (((
Xiaoling 90.10 1474 **Part Number: (% style="color:blue" %)SDI-12-LB-XX-YY(%%) or (% style="color:blue" %)SDI-12-LS-XX-YY(%%)**
Xiaoling 41.20 1475 )))
Xiaoling 40.7 1476
Xiaoling 41.20 1477 (((
Xiaoling 87.6 1478 (% style="color:blue" %)**XX**(%%): The default frequency band
Xiaoling 41.20 1479 )))
Xiaoling 2.2 1480
Xiaoling 41.20 1481 (((
Xiaoling 87.6 1482 * (% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band
1483 * (% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band
1484 * (% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band
1485 * (% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band
1486 * (% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band
1487 * (% style="color:red" %)**US915**(%%): LoRaWAN US915 band
1488 * (% style="color:red" %)**IN865**(%%): LoRaWAN IN865 band
1489 * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
Xiaoling 41.20 1490 )))
Xiaoling 2.2 1491
Xiaoling 87.6 1492 (% style="color:blue" %)**YY: **(%%)The grand connector hole size
Xiaoling 2.2 1493
Xiaoling 87.6 1494 * M12: M12 hole
1495 * M16: M16 hole
1496
Xiaoling 40.2 1497 = 9. Packing Info =
Xiaoling 37.3 1498
1499
Xiaoling 40.7 1500 (% style="color:#037691" %)**Package Includes**:
Xiaoling 2.2 1501
Xiaoling 90.4 1502 * SDI-12-LB or SDI-12-LS SDI-12 to LoRaWAN Converter x 1
Xiaoling 2.2 1503
Xiaoling 40.7 1504 (% style="color:#037691" %)**Dimension and weight**:
Xiaoling 2.2 1505
1506 * Device Size: cm
1507 * Device Weight: g
1508 * Package Size / pcs : cm
1509 * Weight / pcs : g
1510
Xiaoling 40.2 1511 = 10. ​Support =
Xiaoling 37.3 1512
1513
Xiaoling 2.2 1514 * Support is provided Monday to Friday, from 09:00 to 18:00 GMT+8. Due to different timezones we cannot offer live support. However, your questions will be answered as soon as possible in the before-mentioned schedule.
1515
Xiaoling 37.3 1516 * Provide as much information as possible regarding your enquiry (product models, accurately describe your problem and steps to replicate it etc) and send a mail to [[support@dragino.com>>url:http://../../../../../../D:%5C%E5%B8%82%E5%9C%BA%E8%B5%84%E6%96%99%5C%E8%AF%B4%E6%98%8E%E4%B9%A6%5CLoRa%5CLT%E7%B3%BB%E5%88%97%5Csupport@dragino.com]]
Copyright ©2010-2024 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0