Last modified by Mengting Qiu on 2025/07/01 15:58

From version 5.1
edited by Edwin Chen
on 2023/04/16 13:14
Change comment: There is no comment for this version
To version 47.1
edited by Saxer Lin
on 2023/05/24 10:54
Change comment: Uploaded new attachment "image-20230524105433-1.png", version {1}

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.Edwin
1 +XWiki.Saxer
Content
... ... @@ -1,6 +1,9 @@
1 -
1 +(% style="text-align:center" %)
2 +[[image:S31-B.jpg]]
2 2  
3 3  
5 +
6 +
4 4  **Table of Contents:**
5 5  
6 6  {{toc/}}
... ... @@ -15,25 +15,24 @@
15 15  == 1.1 What is S31x-LB LoRaWAN Temperature & Humidity Sensor ==
16 16  
17 17  
18 -The Dragino S31x-LB is a (% style="color:blue" %)**LoRaWAN Temperature and Humidity Sensor**(%%) for Internet of Things solution. It is used to measure the (% style="color:blue" %)**surrounding environment temperature and relative air humidity precisely**(%%), and then upload to IoT server via LoRaWAN wireless protocol.
21 +The Dragino S31x-LB is a (% style="color:blue" %)**LoRaWAN Temperature and Humidity Sensor**(%%) for Internet of Things solution. It is used to measure the (% style="color:blue" %)**surrounding environment temperature and relative air humidity precisely**(%%), and then upload to IoT server via LoRaWAN wireless protocol.
19 19  
20 -The temperature & humidity sensor used in S31x-LB is SHT31, which is fully calibrated, linearized, and temperature compensated digital output from Sensirion, it provides a strong reliability and long-term stability. The SHT31 is fixed in a (% style="color:blue" %)**waterproof anti-condensation casing**(%%) for long term use.
23 +The temperature & humidity sensor used in S31x-LB is SHT31, which is fully calibrated, linearized, and temperature compensated digital output from Sensirion, it provides a strong reliability and long-term stability. The SHT31 is fixed in a (% style="color:blue" %)**waterproof anti-condensation casing**(%%) for long term use.
21 21  
22 22  The LoRa wireless technology used in S31x-LB allows device to send data and reach extremely long ranges at low data-rates. It provides ultra-long range spread spectrum communication and high interference immunity whilst minimizing current consumption.
23 23  
24 -S31x-LB supports (% style="color:blue" %)**Temperature & Humdity alarm feature,**(%%) user can set temperature alarm for instant notice. S31x-LB supports Datalog feature, it can save the data when there is no LoRaWAN network and uplink when network recover.
27 +S31x-LB supports (% style="color:blue" %)**Temperature & Humdity alarm feature**(%%)user can set temperature alarm for instant notice. S31x-LB supports Datalog feature, it can save the data when there is no LoRaWAN network and uplink when network recover.
25 25  
26 -S31x-LB has max 3 probes which measure maximum 3 temperature points.
29 +S31x-LB (% style="color:blue" %)**supports BLE configure**(%%) and (% style="color:blue" %)**wireless OTA update**(%%) which make user easy to use.
27 27  
28 -S31x-LB (% style="color:blue" %)**supports BLE configure**(%%) and (% style="color:blue" %)**wireless OTA update**(%%) which make user easy to use.
31 +S31x-LB is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long term use up to 5 years.
29 29  
30 -S31x-LB is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long term use up to 5 years.
31 -
32 32  Each S31x-LB is pre-load with a set of unique keys for LoRaWAN registrations, register these keys to local LoRaWAN server and it will auto connect after power on.
33 33  
34 34  
35 35  == 1.2 ​Features ==
36 36  
38 +
37 37  * LoRaWAN 1.0.3 Class A
38 38  * Ultra-low power consumption
39 39  * External 3 meters SHT31 probe (For S31-LB)
... ... @@ -99,11 +99,11 @@
99 99  == 1.5 Button & LEDs ==
100 100  
101 101  
102 -[[image:1675071855856-879.png]]
104 +[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675071855856-879.png]]
103 103  
104 104  
105 -(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:510px" %)
106 -|=(% style="width: 167px;" %)**Behavior on ACT**|=(% style="width: 117px;" %)**Function**|=(% style="width: 225px;" %)**Action**
107 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
108 +|=(% 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**
107 107  |(% style="width:167px" %)Pressing ACT between 1s < time < 3s|(% style="width:117px" %)Send an uplink|(% style="width:225px" %)(((
108 108  If sensor is already Joined to LoRaWAN network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once.
109 109  Meanwhile, BLE module will be active and user can connect via BLE to configure device.
... ... @@ -113,12 +113,12 @@
113 113  (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.
114 114  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.
115 115  )))
116 -|(% style="width:167px" %)Fast press ACT 5 times.|(% style="width:117px" %)Deactivate Device|(% style="width:225px" %)(% style="color:red" %)**Red led**(%%) will solid on for 5 seconds. Means D2x-LB is in Deep Sleep Mode.
118 +|(% style="width:167px" %)Fast press ACT 5 times.|(% style="width:117px" %)Deactivate Device|(% style="width:225px" %)(% style="color:red" %)**Red led**(%%) will solid on for 5 seconds. Means device is in Deep Sleep Mode.
117 117  
118 118  == 1.6 BLE connection ==
119 119  
120 120  
121 -D2x-LB support BLE remote configure.
123 +S31x-LB support BLE remote configure.
122 122  
123 123  
124 124  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:
... ... @@ -130,33 +130,31 @@
130 130  If there is no activity connection on BLE in 60 seconds, sensor will shut down BLE module to enter low power mode.
131 131  
132 132  
133 -== 1.7  Hardware Variant ==
135 +== 1.7 Pin Definitions ==
134 134  
137 +[[image:image-20230523174230-1.png]]
135 135  
136 -(% border="1" cellspacing="10" style="background-color:#f7faff; width:510px" %)
137 -|=(% style="width: 102px;" %)Model|=(% style="width: 190px;" %)Photo|=(% style="width: 297px;" %)Probe Info
138 -|(% style="width:102px" %)**D20-LB**|(% style="width:190px" %) |(% style="width:297px" %)(((
139 -1 x DS28B20 Probe
140 140  
140 +== 1.8 Hardware Variant ==
141 +
142 +
143 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %)
144 +|=(% style="width: 102px;background-color:#D9E2F3;color:#0070C0" %)Model|=(% style="width: 190px;background-color:#D9E2F3;color:#0070C0" %)Photo|=(% style="width: 218px;background-color:#D9E2F3;color:#0070C0" %)Probe Info
145 +|(% style="width:102px" %)(((
146 +S31-LB
147 +)))|(% style="width:190px" %)[[image:S31.jpg]]|(% style="width:297px" %)(((
148 +1 x SHT31 Probe
149 +
141 141  Cable Length : 2 meters
142 142  
143 143  
144 144  )))
145 -|(% style="width:102px" %)**D22-LB**|(% style="width:190px" %) |(% style="width:297px" %)(((
146 -2 x DS28B20 Probes
147 -
148 -Cable lengths total 1.5meters per probe
149 -
150 -Cable Drawing: [[See This Link>>url:https://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/LSN50v2-D20/Cable_Drawing/&file=CAB0-35IC-K21G-210811.pdf]]
151 -)))
152 152  |(% style="width:102px" %)(((
153 - **D23-LB**
154 -)))|(% style="width:190px" %) |(% style="width:297px" %)(((
155 -3 x DS28B20 Probes
155 +S31B-LB
156 +)))|(% style="width:190px" %)[[image:S31B.jpg]]|(% style="width:297px" %)(((
157 +1 x SHT31 Probe
156 156  
157 -Cable lengths total 1.5meters per probe
158 -
159 -Cable Drawing: [[See This Link>>url:https://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/LSN50v2-D20/Cable_Drawing/&file=CAB0-35IC-K31G-210811.pdf]]
159 +Installed in device.
160 160  )))
161 161  
162 162  (% style="display:none" %)
... ... @@ -163,24 +163,24 @@
163 163  
164 164  
165 165  
166 -== 1.8 Mechanical ==
166 +== 1.9 Mechanical ==
167 167  
168 168  
169 -[[image:1675143884058-338.png]]
169 +[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143884058-338.png]]
170 170  
171 171  
172 -[[image:1675143899218-599.png]]
172 +[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143899218-599.png]]
173 173  
174 174  
175 -[[image:1675143909447-639.png]]
175 +[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143909447-639.png]]
176 176  
177 177  
178 -= 2. Configure D2x-LB to connect to LoRaWAN network =
178 += 2. Configure S31x-LB to connect to LoRaWAN network =
179 179  
180 180  == 2.1 How it works ==
181 181  
182 182  
183 -The D2x-LB is configured as (% style="color:#037691" %)**LoRaWAN OTAA Class A**(%%) mode by default. It has OTAA keys to join LoRaWAN network. To connect a local LoRaWAN network, you need to input the OTAA keys in the LoRaWAN IoT server and press the button to activate the D2x-LB. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 20 minutes.
183 +The S31x-LB is configured as (% style="color:#037691" %)**LoRaWAN OTAA Class A**(%%) mode by default. It has OTAA keys to join LoRaWAN network. To connect a local LoRaWAN network, you need to input the OTAA keys in the LoRaWAN IoT server and press the button to activate the S31x-LB. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 20 minutes.
184 184  
185 185  
186 186  == 2.2 ​Quick guide to connect to LoRaWAN server (OTAA) ==
... ... @@ -188,49 +188,45 @@
188 188  
189 189  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.
190 190  
191 -
192 -[[image:1675144005218-297.png]]
193 -
194 -
195 195  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.
196 196  
197 197  
198 -(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from D2x-LB.
194 +(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from S31x-LB.
199 199  
200 -Each D2x-LB is shipped with a sticker with the default device EUI as below:
196 +Each S31x-LB is shipped with a sticker with the default device EUI as below:
201 201  
202 -[[image:image-20230131134744-2.jpeg]]
198 +[[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]]
203 203  
204 204  
205 -
206 206  You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
207 207  
208 208  
209 209  (% style="color:blue" %)**Register the device**
210 210  
211 -[[image:1675144099263-405.png]]
206 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/1654935135620-998.png?rev=1.1||alt="1654935135620-998.png"]]
212 212  
213 213  
214 214  (% style="color:blue" %)**Add APP EUI and DEV EUI**
215 215  
216 -[[image:1675144117571-832.png]]
211 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-4.png?width=753&height=551&rev=1.1||alt="图片-20220611161308-4.png"]]
217 217  
218 218  
219 219  (% style="color:blue" %)**Add APP EUI in the application**
220 220  
221 221  
222 -[[image:1675144143021-195.png]]
217 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-5.png?width=742&height=601&rev=1.1||alt="图片-20220611161308-5.png"]]
223 223  
224 224  
225 225  (% style="color:blue" %)**Add APP KEY**
226 226  
227 -[[image:1675144157838-392.png]]
222 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-6.png?width=744&height=485&rev=1.1||alt="图片-20220611161308-6.png"]]
228 228  
229 -(% style="color:blue" %)**Step 2:**(%%) Activate on D2x-LB
230 230  
225 +(% style="color:blue" %)**Step 2:**(%%) Activate on S31x-LB
231 231  
232 -Press the button for 5 seconds to activate the D2x-LB.
233 233  
228 +Press the button for 5 seconds to activate the S31x-LB.
229 +
234 234  (% 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.
235 235  
236 236  After join success, it will start to upload messages to TTN and you can see the messages in the panel.
... ... @@ -241,22 +241,22 @@
241 241  === 2.3.1 Device Status, FPORT~=5 ===
242 242  
243 243  
244 -Users can use the downlink command(**0x26 01**) to ask D2x-LB to send device configure detail, include device configure status. D2x-LB will uplink a payload via FPort=5 to server.
240 +Users can use the downlink command(**0x26 01**) to ask S31x-LB to send device configure detail, include device configure status. S31x-LB will uplink a payload via FPort=5 to server.
245 245  
246 246  The Payload format is as below.
247 247  
248 248  
249 -(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:510px" %)
250 -|(% colspan="6" %)**Device Status (FPORT=5)**
245 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
246 +|(% colspan="6" style="background-color:#d9e2f3; color:#0070c0" %)**Device Status (FPORT=5)**
251 251  |(% style="width:103px" %)**Size (bytes)**|(% style="width:72px" %)**1**|**2**|(% style="width:91px" %)**1**|(% style="width:86px" %)**1**|(% style="width:44px" %)**2**
252 252  |(% style="width:103px" %)**Value**|(% style="width:72px" %)Sensor Model|Firmware Version|(% style="width:91px" %)Frequency Band|(% style="width:86px" %)Sub-band|(% style="width:44px" %)BAT
253 253  
254 254  Example parse in TTNv3
255 255  
256 -[[image:image-20230415153147-2.png||height="220" width="1120"]]
252 +[[image:image-20230421171614-1.png||alt="图片-20230421171614-1.png"]]
257 257  
258 258  
259 -(% style="color:#037691" %)**Sensor Model**(%%): For D2x-LB, this value is 0x19
255 +(% style="color:#037691" %)**Sensor Model**(%%): For S31x-LB, this value is 0x0A
260 260  
261 261  (% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
262 262  
... ... @@ -312,54 +312,32 @@
312 312  === 2.3.2  Sensor Data. FPORT~=2 ===
313 313  
314 314  
315 -D2x-LB will uplink below payload via FPORT=2 after Joined LoRaWAN Network.
311 +Sensor Data is uplink via FPORT=2
316 316  
317 -(% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:500px" %)
318 -|=(% style="width: 62.5px;" %)(((
319 -**Size (bytes)**
320 -)))|=(% style="width: 60px;" %)2|=(% style="width: 120px;" %)2|=(% style="width: 60px;" %)2|=(% style="width: 65px;" %)1|=(% style="width: 65px;" %)**2**|=(% style="width: 65px;" %)2
321 -|(% style="width:65px" %)**Value**|(((
322 -[[Battery>>||anchor="HBattery:"]]
323 -)))|(% style="width:91px" %)(((
324 -[[Temp_ Red or Temp _White>>||anchor="HTemperatureREDorTemperatureWhite:"]]
325 -)))|(% style="width:61px" %)(((
326 -ignore
327 -)))|(% style="width:91px" %)(((
328 -[[Alarm Flag>>||anchor="HAlarmFlag26MOD:"]]
329 -)))|(% style="width:99px" %)(((
330 -[[Temp_White>>||anchor="HTemperatureWhite:"]]
331 -)))|(% style="width:97px" %)(((
332 -[[Temp_Black>>||anchor="HTemperatureBlack:"]]
313 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:700px" %)
314 +|=(% style="width: 90px;background-color:#D9E2F3" %)(((
315 +**Size(bytes)**
316 +)))|=(% style="width: 80px;background-color:#D9E2F3" %)2|=(% style="width: 90px;background-color:#D9E2F3" %)4|=(% style="width: 194px; background-color: rgb(217, 226, 243);" %)1|=(% style="width: 106px; background-color: rgb(217, 226, 243);" %)**2**|=(% style="width: 97px; background-color: rgb(217, 226, 243);" %)2
317 +|(% style="width:99px" %)**Value**|(% style="width:69px" %)(((
318 +[[Battery>>||anchor="HBattery"]]
319 +)))|(% style="width:130px" %)(((
320 +[[Unix TimeStamp>>||anchor="H2.5.2UnixTimeStamp"]]
321 +)))|(% style="width:194px" %)(((
322 +[[Alarm Flag>>||anchor="HAlarmFlag26MOD"]][[&>>Alarm Flag& MOD& Digital Interrupt(PA8)]]
333 333  
324 +[[MOD&>>Alarm Flag& MOD& Digital Interrupt(PA8)]]
325 +
326 +[[Digital Interrupt(PA8)>>Alarm Flag& MOD& Digital Interrupt(PA8)]]
327 +
334 334  
329 +)))|(% style="width:106px" %)(((
330 +[[Temperature>>||anchor="HTemperature"]]
331 +)))|(% style="width:97px" %)(((
332 +[[Humidity>>||anchor="HHumidity"]]
335 335  )))
336 336  
337 -**Payload per each model.**
335 +==== (% style="color:#4472c4" %)**2.3.2.1 Battery**(%%) ====
338 338  
339 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-D20-D22-D23%20LoRaWAN%20Temperature%20Sensor%20User%20Manual/WebHome/image-20220916152530-2.png?rev=1.1||alt="image-20220916152530-2.png" height="240" width="901"]]
340 -
341 -
342 -[[image:image-20230415154139-3.png||height="215" width="1179"]]
343 -
344 -
345 -==== (% style="color:#4472c4" %)**Decode corresponding probe color:**(%%) ====
346 -
347 -**D20:**
348 -
349 -Red <~-~-> C1
350 -
351 -**D22:**
352 -
353 -White <~-~-> C1 Red <~-~-> C2
354 -
355 -**D23:**
356 -
357 -White <~-~->C1 Red <~-~-> C2 Black <~-~-> C3
358 -
359 -
360 -
361 -==== (% style="color:#4472c4" %)**Battery:**(%%) ====
362 -
363 363  Sensor Battery Level.
364 364  
365 365  Ex1: 0x0B45 = 2885mV
... ... @@ -368,10 +368,8 @@
368 368  
369 369  
370 370  
371 -==== (% style="color:#4472c4" %)**Temperature RED or Temperature White :**(%%) ====
345 +==== (% style="color:#4472c4" %)**2.3.2.2 Temperature**(%%) ====
372 372  
373 -**This point to the Red probe in D20-LB or the probe of D22-LB/D23-LB White**
374 -
375 375  **Example**:
376 376  
377 377  If payload is: 0105H:  (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree
... ... @@ -381,96 +381,77 @@
381 381  (FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative)
382 382  
383 383  
356 +==== (% style="color:#4472c4" %)**2.3.2.3 Humidity**(%%) ====
384 384  
385 -==== (% style="color:#4472c4" %)**Temperature White:**(%%) ====
386 386  
359 +Read:0x(0197)=412    Value:  412 / 10=41.2, So 41.2%
387 387  
388 -**This point to the Red probe in D22-LB/D23-LB**
389 389  
362 +==== (% style="color:#4472c4" %)**2.3.2.4 Alarm Flag & MOD & Digital Interrupt**(%%) ====
390 390  
391 -**Example**:
392 392  
393 -If payload is: 0105H:  (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree
365 +**Example:**
394 394  
395 -If payload is: FF3FH :  (FF3F & 8000 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
367 +If payload & 0x01 = 0x01  **~-~->** This is an Alarm Message.It means that the temperature and humidity exceed the alarm value or trigger an interrupt.
396 396  
397 -(FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative)
369 +If payload & 0x01 = 0x00  **~-~->** This is a normal uplink message, no alarm.
398 398  
371 +If payload & 0x80>>7 = 0x01  **~-~->** The PA8 is low level.
399 399  
373 +If payload & 0x80>>7 =0x00  **~-~->** The PA8 is high level.
400 400  
401 -==== (% style="color:#4472c4" %)**Temperature Black:**(%%) ====
375 +If payload >> 2 = 0x00  **~-~->**  means MOD=1, This is a sampling uplink message.
402 402  
377 +If payload >> 2 = 0x31  **~-~->**  means MOD=31, this message is a reply message for polling, this message contains the alarm settings. see [[this link>>path:#HPolltheAlarmsettings:]] for detail. 
403 403  
404 -**This point to the BLACK probe in D23-LB**
405 405  
380 +== 2.4 Payload Decoder file ==
406 406  
407 -**Example**:
408 408  
409 -If payload is: 0105H:  (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree
383 +In TTN, use can add a custom payload so it shows friendly reading
410 410  
411 -If payload is: FF3FH (FF3F & 8000 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
385 +In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from:
412 412  
413 -(FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative
387 +[[https:~~/~~/github.com/dragino/dragino-end-node-decoder/tree/main/S31-LB%26S31B-LB>>https://github.com/dragino/dragino-end-node-decoder/tree/main/S31-LB%26S31B-LB]]
414 414  
415 415  
390 +== 2.5 Datalog Feature ==
416 416  
417 -==== (% style="color:#4472c4" %)**Alarm Flag& MOD:**(%%) ====
418 418  
393 +Datalog Feature is to ensure IoT Server can get all sampling data from Sensor even if the LoRaWAN network is down. For each sampling, S31x-LB will store the reading for future retrieving purposes.
419 419  
420 -**Example:**
421 421  
422 -If payload & 0x01 = 0x01  **~-~->** This is an Alarm Message
396 +=== 2.5.1 Ways to get datalog via LoRaWAN ===
423 423  
424 -If payload & 0x01 = 0x00  **~-~->** This is a normal uplink message, no alarm
425 425  
399 +Set [[PNACKMD=1>>||anchor="H2.5.4DatalogUplinkpayload28FPORT3D329"]], S31x-LB will wait for ACK for every uplink, when there is no LoRaWAN network,S31x-LB will mark these records with non-ack messages and store the sensor data, and it will send all messages (10s interval) after the network recovery.
426 426  
427 -
428 -==== ====
429 -
430 -
431 -== 2.4 Payload Decoder file ==
432 -
433 -
434 -(((
435 -In TTN, use can add a custom payload so it shows friendly. 
401 +* (((
402 +a) S31x-LB will do an ACK check for data records sending to make sure every data arrive server.
436 436  )))
437 -
438 -(((
439 -In the page **Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder** to add the decoder from:  [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]]
404 +* (((
405 +b) S31x-LB will send data in **CONFIRMED Mode** when PNACKMD=1, but S31x-LB won't re-transmit the packet if it doesn't get ACK, it will just mark it as a NONE-ACK message. In a future uplink if S31x-LB gets a ACK, S31x-LB will consider there is a network connection and resend all NONE-ACK messages.
440 440  )))
441 441  
442 -
443 -== 2.5 Datalog Feature ==
444 -
445 -
446 -Datalog Feature is to ensure IoT Server can get all sampling data from Sensor even if the LoRaWAN network is down. For each sampling, D2x-LB will store the reading for future retrieving purposes.
447 -
448 -
449 -=== 2.5.1 Ways to get datalog via LoRaWAN ===
450 -
451 -
452 -Set [[PNACKMD=1>>url:http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/#H4.13AutoSendNone-ACKmessages]], D2x-LB will wait for ACK for every uplink, when there is no LoRaWAN network,D2x-LB will mark these records with non-ack messages and store the sensor data, and it will send all messages (10s interval) after the network recovery.
453 -
454 -* a) D2x-LB will do an ACK check for data records sending to make sure every data arrive server.
455 -* b) D2x-LB will send data in **CONFIRMED Mode** when PNACKMD=1, but D2x-LB won't re-transmit the packet if it doesn't get ACK, it will just mark it as a NONE-ACK message. In a future uplink if D2x-LB gets a ACK, D2x-LB will consider there is a network connection and resend all NONE-ACK Message.
456 -
457 457  Below is the typical case for the auto-update datalog feature (Set PNACKMD=1)
458 458  
459 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20220703111700-2.png?width=1119&height=381&rev=1.1||alt="image-20220703111700-2.png" height="381" width="1119"]]
410 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20220703111700-2.png?width=1119&height=381&rev=1.1||alt="图片-20220703111700-2.png" height="381" width="1119"]]
460 460  
412 +
461 461  === 2.5.2 Unix TimeStamp ===
462 462  
463 463  
464 -LHT65N uses Unix TimeStamp format based on
416 +S31x-LB uses Unix TimeStamp format based on
465 465  
466 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20220523001219-11.png?width=627&height=97&rev=1.1||alt="image-20220523001219-11.png" height="97" width="627"]]
418 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20220523001219-11.png?width=627&height=97&rev=1.1||alt="图片-20220523001219-11.png" height="97" width="627"]]
467 467  
468 468  User can get this time from link:  [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] :
469 469  
470 470  Below is the converter example
471 471  
472 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20220523001219-12.png?width=720&height=298&rev=1.1||alt="image-20220523001219-12.png" height="298" width="720"]]
424 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20220523001219-12.png?width=720&height=298&rev=1.1||alt="图片-20220523001219-12.png" height="298" width="720"]]
473 473  
426 +
474 474  So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25
475 475  
476 476  
... ... @@ -477,34 +477,42 @@
477 477  === 2.5.3 Set Device Time ===
478 478  
479 479  
480 -User need to set SYNCMOD=1 to enable sync time via MAC command.
433 +User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command.
481 481  
482 -Once D2x-LB Joined LoRaWAN network, it will send the MAC command (DeviceTimeReq) and the server will reply with (DeviceTimeAns) to send the current time to D2x-LB. If D2x-LB fails to get the time from the server, D2x-LB will use the internal time and wait for next time request (AT+SYNCTDC to set the time request period, default is 10 days).
435 +Once S31x-LB Joined LoRaWAN network, it will send the MAC command (DeviceTimeReq) and the server will reply with (DeviceTimeAns) to send the current time to S31x-LB. If S31x-LB fails to get the time from the server, S31x-LB will use the internal time and wait for next time request (AT+SYNCTDC to set the time request period, default is 10 days).
483 483  
484 -**Note: LoRaWAN Server need to support LoRaWAN v1.0.3(MAC v1.0.3) or higher to support this MAC command feature, Chirpstack,TTN V3 v3 and loriot support but TTN V3 v2 doesn't support. If server doesn't support this command, it will through away uplink packet with this command, so user will lose the packet with time request for TTN V3 v2 if SYNCMOD=1.**
437 +(% style="color:red" %)**Note: LoRaWAN Server need to support LoRaWAN v1.0.3(MAC v1.0.3) or higher to support this MAC command feature, Chirpstack,TTN V3 v3 and loriot support but TTN V3 v2 doesn't support. If server doesn't support this command, it will through away uplink packet with this command, so user will lose the packet with time request for TTN V3 v2 if SYNCMOD=1.**
485 485  
486 486  
487 -=== 2.5.4 Datalog Uplink payload  FPORT~=3 ===
440 +=== 2.5.4 Datalog Uplink payload (FPORT~=3) ===
488 488  
489 489  
490 -The Datalog poll reply uplink will use below payload format.
443 +The Datalog uplinks will use below payload format.
491 491  
492 492  **Retrieval data payload:**
493 493  
494 -(% style="width:858px" %)
495 -|=(% style="width: 103px;" %)(((
447 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:680px" %)
448 +|=(% style="width: 80px;background-color:#D9E2F3" %)(((
496 496  **Size(bytes)**
497 -)))|=(% style="width: 129px;" %)**2**|=(% style="width: 114px;" %)**2**|=(% style="width: 217px;" %)**2**|=(% style="width: 153px;" %)**1**|=(% style="width: 139px;" %)**4**
498 -|(% style="width:103px" %)**Value**|(% style="width:129px" %)(((
499 -[[Temp_Black>>||anchor="HTemperatureBlack:"]]
500 -)))|(% style="width:114px" %)[[Temp_White>>||anchor="HTemperatureWhite:"]]|(% style="width:217px" %)[[Temp_ Red or Temp _White>>||anchor="HTemperatureREDorTemperatureWhite:"]]|(% style="width:153px" %)Poll message flag & Ext|(% style="width:139px" %)[[Unix Time Stamp>>url:http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/#H2.6.2UnixTimeStamp]]
450 +)))|=(% style="width: 68px; background-color: rgb(217, 226, 243);" %)**2**|=(% style="width: 104px; background-color: rgb(217, 226, 243);" %)**2**|=(% style="width: 87px; background-color: rgb(217, 226, 243);" %)**2**|=(% style="width: 178px; background-color: rgb(217, 226, 243);" %)**1**|=(% style="width: 137px; background-color: rgb(217, 226, 243);" %)**4**
451 +|(% style="width:103px" %)**Value**|(% style="width:68px" %)(((
452 +ignore
453 +)))|(% style="width:104px" %)(((
454 +Temperature
455 +)))|(% style="width:87px" %)Humidity|(% style="width:178px" %)(((
456 +Poll message flag &
501 501  
502 -**Poll message flag & Ext:**
458 +Alarm Flag&
503 503  
504 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20221006192726-1.png?width=754&height=112&rev=1.1||alt="image-20221006192726-1.png" height="112" width="754"]]
460 +Digital Interrupt
461 +)))|(% style="width:137px" %)Unix Time Stamp
505 505  
506 -**No ACK Message**:  1: This message means this payload is fromn Uplink Message which doesn't get ACK from the server before ( for [[PNACKMD=1>>url:http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/#H4.13AutoSendNone-ACKmessages]] feature)
463 +**Poll message flag & Alarm Flag & Digital Interrupt:**
507 507  
465 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20221006192726-1.png?width=754&height=112&rev=1.1||alt="图片-20221006192726-1.png" height="112" width="754"]]
466 +
467 +**No ACK Message**:  1: This message means this payload is fromn Uplink Message which doesn't get ACK from the server before ( for **PNACKMD=1** feature)
468 +
508 508  **Poll Message Flag**: 1: This message is a poll message reply.
509 509  
510 510  * Poll Message Flag is set to 1.
... ... @@ -523,11 +523,12 @@
523 523  
524 524  If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0   
525 525  
487 +
526 526  **Example:**
527 527  
528 -If D2x-LB has below data inside Flash:
490 +If S31x-LB has below data inside Flash:
529 529  
530 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20220523144455-1.png?width=735&height=335&rev=1.1||alt="image-20220523144455-1.png" height="335" width="735"]]
492 +[[image:1682646494051-944.png]]
531 531  
532 532  If user sends below downlink command: 3160065F9760066DA705
533 533  
... ... @@ -535,65 +535,72 @@
535 535  
536 536   Stop time: 60066DA7= time 21/1/19 05:27:03
537 537  
538 -**LHT65N will uplink this payload.**
539 539  
540 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20220523001219-13.png?width=727&height=421&rev=1.1||alt="image-20220523001219-13.png" height="421" width="727"]]
501 +**S31x-LB will uplink this payload.**
541 541  
503 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20220523001219-13.png?width=727&height=421&rev=1.1||alt="图片-20220523001219-13.png" height="421" width="727"]]
504 +
505 +(((
542 542  __**7FFF089801464160065F97**__ **__7FFF__ __088E__ __014B__ __41__ __60066009__** 7FFF0885014E41600660667FFF0875015141600662BE7FFF086B015541600665167FFF08660155416006676E7FFF085F015A41600669C67FFF0857015D4160066C1E
507 +)))
543 543  
509 +(((
544 544  Where the first 11 bytes is for the first entry:
511 +)))
545 545  
513 +(((
546 546  7FFF089801464160065F97
515 +)))
547 547  
548 -Ext sensor data=0x7FFF/100=327.67
517 +(((
518 +**Ext sensor data**=0x7FFF/100=327.67
519 +)))
549 549  
550 -Temp=0x088E/100=22.00
521 +(((
522 +**Temp**=0x088E/100=22.00
523 +)))
551 551  
552 -Hum=0x014B/10=32.6
525 +(((
526 +**Hum**=0x014B/10=32.6
527 +)))
553 553  
554 -poll message flag & Ext=0x41,means reply data,Ext=1
529 +(((
530 +**poll message flag & Ext**=0x41,means reply data,Ext=1
531 +)))
555 555  
556 -Unix time is 0x60066009=1611030423s=21/1/19 04:27:03
533 +(((
534 +**Unix time** is 0x60066009=1611030423s=21/1/19 04:27:03
535 +)))
557 557  
558 558  
559 -(% aria-label="Data URI image image widget" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||data-widget="image" draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% aria-label="Data URI image image widget" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220, 220, 220, 0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% aria-label="Data URI image image widget" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" title="Click and drag to resize" %)(% aria-label="Data URI image image widget" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||data-widget="image" draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% aria-label="Data URI image image widget" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220, 220, 220, 0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% aria-label="Data URI image image widget" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" title="Click and drag to resize" %)
538 +(% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||alt="数据 URI 图片" data-widget="image" draggable="true" height="15" role="presentation" title="单击并拖动以移动" width="15"]](% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220, 220, 220, 0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||alt="数据 URI 图片" draggable="true" height="15" role="presentation" title="单击并拖动以移动" width="15"]](% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" title="单击并拖动以调整大小" %)(% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||alt="数据 URI 图片" data-widget="image" draggable="true" height="15" role="presentation" title="单击并拖动以移动" width="15"]](% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220, 220, 220, 0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||alt="数据 URI 图片" draggable="true" height="15" role="presentation" title="单击并拖动以移动" width="15"]](% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" title="单击并拖动以调整大小" %)
560 560  
561 561  == 2.6 Temperature Alarm Feature ==
562 562  
563 563  
564 -D2x-LB work flow with Alarm feature.
543 +S31x-LB work flow with Alarm feature.
565 565  
566 566  
567 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-D20-D22-D23%20LoRaWAN%20Temperature%20Sensor%20User%20Manual/WebHome/image-20220623090437-1.png?rev=1.1||alt="image-20220623090437-1.png"]]
546 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-D20-D22-D23%20LoRaWAN%20Temperature%20Sensor%20User%20Manual/WebHome/image-20220623090437-1.png?rev=1.1||alt="图片-20220623090437-1.png"]]
568 568  
569 569  
570 -
571 571  == 2.7 Frequency Plans ==
572 572  
573 573  
574 -The D2x-LB uses OTAA mode and below frequency plans by default. If user want to use it with different frequency plan, please refer the AT command sets.
552 +The S31x-LB uses OTAA mode and below frequency plans by default. If user want to use it with different frequency plan, please refer the AT command sets.
575 575  
576 576  [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]]
577 577  
578 578  
579 -== 2.8 ​Firmware Change Log ==
557 += 3. Configure S31x-LB =
580 580  
559 +== 3.1 Configure Methods ==
581 581  
582 -**Firmware download link:**
583 583  
584 -[[https:~~/~~/www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0>>url:https://www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0]]
562 +S31x-LB supports below configure method:
585 585  
586 -
587 -
588 -= 3. Configure D2x-LB =
589 -
590 -== 3.1 Configure Methods: ==
591 -
592 -
593 -D2x-LB supports below configure method:
594 -
595 595  * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
596 -* AT Command via UART Connection : See [[FAQ>>||anchor="H7.FAQ"]].
565 +* AT Command via UART Connection : See [[UART Connection>>http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H2.3UARTConnectionforSN50v3basemotherboard]].
597 597  * LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
598 598  
599 599  == 3.2 General Commands ==
... ... @@ -609,10 +609,10 @@
609 609  [[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/]]
610 610  
611 611  
612 -== 3.3 Commands special design for D2x-LB ==
581 +== 3.3 Commands special design for S31x-LB ==
613 613  
614 614  
615 -These commands only valid for D2x-LB, as below:
584 +These commands only valid for S31x-LB, as below:
616 616  
617 617  
618 618  === 3.3.1 Set Transmit Interval Time ===
... ... @@ -622,8 +622,8 @@
622 622  
623 623  (% style="color:blue" %)**AT Command: AT+TDC**
624 624  
625 -(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:510px" %)
626 -|=(% style="width: 156px;" %)**Command Example**|=(% style="width: 137px;" %)**Function**|=**Response**
594 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
595 +|=(% style="width: 156px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 137px;background-color:#D9E2F3" %)**Function**|=(% style="background-color:#D9E2F3" %)**Response**
627 627  |(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|(((
628 628  30000
629 629  OK
... ... @@ -648,74 +648,72 @@
648 648  
649 649  Send a LoRaWAN downlink to ask device send Alarm settings.
650 650  
651 -* (% style="color:#037691" %)**Downlink Payload:  **(%%)0x26 01
620 +(% style="color:blue" %)**Downlink Payload:  **(%%)0x26 01
652 652  
653 653  Sensor will upload Device Status via FPORT=5. See payload section for detail.
654 654  
655 655  
656 -=== 3.3.3 Set Alarm Thredhold ===
625 +=== 3.3.3 Set Temperature Alarm Threshold ===
657 657  
658 658  
659 -(% style="color:#4472c4" %)**1.  Set for All Probes:**
628 +* (% style="color:blue" %)**AT Command:**
660 660  
661 -(% style="color:#037691" %)**AT+18ALARM=min,max**
630 +(% style="color:#037691" %)**AT+SHTEMP=min,max**
662 662  
663 -* When min=0, and max≠0, Alarm trigger when higher than max
664 -* When min≠0, and max=0, Alarm trigger when lower than min
665 -* When min≠0 and max≠0, Alarm trigger when higher than max or lower than min
632 +* When min=0, and max≠0, Alarm higher than max
633 +* When min≠0, and max=0, Alarm lower than min
634 +* When min≠0 and max≠0, Alarm higher than max or lower than min
666 666  
667 -**Example:**
636 +Example:
668 668  
669 - AT+18ALARM=-10,30  ~/~/ Alarm when < -10 or higher than 30.
638 + AT+SHTEMP=0,30   ~/~/ Alarm when temperature higher than 30.
670 670  
640 +* (% style="color:blue" %)**Downlink Payload:**
671 671  
672 -* (% style="color:#037691" %)**Downlink Payload:**
642 +(% style="color:#037691" %)**0x(0C 01 00 1E)**  (%%) ~/~/ Set AT+SHTEMP=0,30
673 673  
674 -0x(0B F6 1E)   ~/~/ Same as AT+18ALARM=-10,30
644 +(% style="color:red" %)**(note: 3^^rd^^ byte= 0x00 for low limit(not set), 4^^th^^ byte = 0x1E for high limit: 30)**
675 675  
676 -(note: 0x1E= 30, 0xF6 means: 0xF6-0x100 = -10)
677 677  
647 +=== 3.3.4 Set Humidity Alarm Threshold ===
678 678  
679 -(% style="color:#4472c4" %)**2.  Set for Separate Probe:**
680 680  
681 -(% style="color:#037691" %)**AT+18ALARM=min,max,index**
650 +* (% style="color:blue" %)**AT Command:**
682 682  
683 -Index:
652 +(% style="color:#037691" %)**AT+SHHUM=min,max**
684 684  
685 -* 1: Temperature_Red
686 -* 2: Temperature_White
687 -* 3: Temperature_Black
654 +* When min=0, and max≠0, Alarm higher than max
655 +* When min≠0, and max=0, Alarm lower than min
656 +* When min≠0 and max≠0, Alarm higher than max or lower than min
688 688  
689 -**Example:**
658 +Example:
690 690  
691 - AT+18ALARM=-10,30,1   ~/~/ Alarm when temperature_red < -10 or higher than 30.
660 + AT+SHHUM=70,0  ~/~/ Alarm when humidity lower than 70%.
692 692  
662 +* (% style="color:blue" %)**Downlink Payload:**
693 693  
694 -* (% style="color:#037691" %)**Downlink Payload:**
664 +(% style="color:#037691" %)**0x(0C 02 46 00)**(%%)  ~/~/ Set AT+SHTHUM=70,0
695 695  
696 -0x(0B F6 1E 01)   ~/~/ Same as AT+18ALARM=-10,30,1
666 +(% style="color:red" %)**(note: 3^^rd^^ byte= 0x46 for low limit (70%), 4^^th^^ byte = 0x00 for high limit (not set))**
697 697  
698 -(note: 0x1E= 30, 0xF6 means: 0xF6-0x100 = -10)
699 699  
669 +=== 3.3.5 Set Alarm Interval ===
700 700  
701 -=== 3.3.4 Set Alarm Interval ===
702 702  
703 -
704 704  The shortest time of two Alarm packet. (unit: min)
705 705  
706 -* (% style="color:#037691" %)**AT Command:**
674 +* (% style="color:blue" %)**AT Command:**
707 707  
708 -AT+ATDC=30  ~/~/ The shortest interval of two Alarm packets is 30 minutes, Means is there is an alarm packet uplink, there won't be another one in the next 30 minutes.
676 +(% style="color:#037691" %)**AT+ATDC=30** (%%) ~/~/ The shortest interval of two Alarm packets is 30 minutes, Means is there is an alarm packet uplink, there won't be another one in the next 30 minutes.
709 709  
678 +* (% style="color:blue" %)**Downlink Payload:**
710 710  
711 -* (% style="color:#037691" %)**Downlink Payload:**
680 +(% style="color:#037691" %)**0x(0D 00 1E)**(%%)     **~-~--> ** Set AT+ATDC=0x 00 1E = 30 minutes
712 712  
713 -0x(0D 00 1E)     **~-~-->** Set AT+ATDC=0x 00 1E = 30 minutes
714 714  
683 +=== 3.3.6 Get Alarm settings ===
715 715  
716 -=== 3.3.5 Get Alarm settings  (什么FPORT?) ===
717 717  
718 -
719 719  Send a LoRaWAN downlink to ask device send Alarm settings.
720 720  
721 721  * (% style="color:#037691" %)**Downlink Payload:  **(%%)0x0E 01
... ... @@ -729,15 +729,17 @@
729 729  
730 730  * Alarm & MOD bit is 0x7C, 0x7C >> 2 = 0x31: Means this message is the Alarm settings message.
731 731  
732 -=== 3.3.6 Set Interrupt Mode ===
699 +=== 3.3.7 Set Interrupt Mode ===
733 733  
734 734  
735 -Feature, Set Interrupt mode for GPIO_EXIT.
702 +Feature, Set Interrupt mode for PA8 of pin.
736 736  
704 +When AT+INTMOD=0 is set, PA8 is used as a digital input port.
705 +
737 737  (% style="color:blue" %)**AT Command: AT+INTMOD**
738 738  
739 -(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:510px" %)
740 -|=(% style="width: 154px;" %)**Command Example**|=(% style="width: 196px;" %)**Function**|=(% style="width: 157px;" %)**Response**
708 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
709 +|=(% style="width: 154px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 196px;background-color:#D9E2F3" %)**Function**|=(% style="width: 157px;background-color:#D9E2F3" %)**Response**
741 741  |(% style="width:154px" %)AT+INTMOD=?|(% style="width:196px" %)Show current interrupt mode|(% style="width:157px" %)(((
742 742  0
743 743  OK
... ... @@ -760,44 +760,68 @@
760 760  * Example 1: Downlink Payload: 06000000  ~/~/  Turn off interrupt mode
761 761  * Example 2: Downlink Payload: 06000003  ~/~/  Set the interrupt mode to rising edge trigger
762 762  
763 -= 4. Battery & Power Consumption =
732 +=== 3.3.8 Set Power Output Duration ===
764 764  
765 765  
766 -D2x-LB use ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
735 +Control the output duration 5V . Before each sampling, device will
767 767  
768 -[[**Battery Info & Power Consumption Analyze**>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
737 +~1. first enable the power output to external sensor,
769 769  
739 +2. keep it on as per duration, read sensor value and construct uplink payload
770 770  
771 -= 5. OTA firmware update =
741 +3. final, close the power output.
772 772  
743 +(% style="color:blue" %)**AT Command: AT+5VT**
773 773  
774 -Please see this link for how to do OTA firmware update: [[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/]]
745 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
746 +|=(% style="width: 154px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 196px;background-color:#D9E2F3" %)**Function**|=(% style="width: 157px;background-color:#D9E2F3" %)**Response**
747 +|(% style="width:154px" %)AT+5VT=?|(% style="width:196px" %)Show 5V open time.|(% style="width:157px" %)0 (default)
748 +OK
749 +|(% style="width:154px" %)AT+5VT=500|(% style="width:196px" %)Close after a delay of 1000 milliseconds.|(% style="width:157px" %)OK
775 775  
751 +(% style="color:blue" %)**Downlink Command: 0x07**
776 776  
777 -= 6. FAQ =
753 +Format: Command Code (0x07) followed by 2 bytes.
778 778  
779 -== 6.1 How to use AT Command via UART to access device? ==
755 +The first and second bytes are the time to turn on.
780 780  
757 +* Example 1: Downlink Payload: 070000  **~-~-->**  AT+5VT=0
758 +* Example 2: Downlink Payload: 0701F4  **~-~-->**  AT+5VT=500
781 781  
782 -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]]
760 += 4. Battery & Power Consumption =
783 783  
784 784  
785 -== 6.2 How to update firmware via UART port? ==
763 +S31x-LB use ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
786 786  
765 +[[**Battery Info & Power Consumption Analyze**>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
787 787  
788 -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]]
789 789  
768 += 5. OTA Firmware update =
790 790  
791 -== 6.3 How to change the LoRa Frequency Bands/Region? ==
792 792  
771 +(% class="wikigeneratedid" %)
772 +User can change firmware S31x-LB to:
793 793  
794 -Each LoRaWAN frequency bands has different firmware. User can update the device's firmware to the corresponding frequency band to change region.
774 +* Change Frequency band/ region.
775 +* Update with new features.
776 +* Fix bugs.
795 795  
778 +Firmware and changelog can be downloaded from : **[[Firmware download link>>url:https://www.dropbox.com/sh/kwqv57tp6pejias/AAAopYMATh1GM6fZ-VRCLrpDa?dl=0]]**
796 796  
780 +
781 +Methods to Update Firmware:
782 +
783 +* (Recommanded way) OTA firmware update via wireless:   [[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/]]
784 +* Update through UART TTL interface. **[[Instruction>>url:http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H1.LoRaSTv4baseHardware]]**.
785 +
786 += 6. FAQ =
787 +
788 +
789 +
797 797  = 7. Order Info =
798 798  
799 799  
800 -Part Number: (% style="color:blue" %)**D20-LB-XX  / D22-LB-XX / D23-LB-XX**
793 +Part Number: (% style="color:blue" %)**S31-LB-XX  / S31B-LB-XX**
801 801  
802 802  (% style="color:red" %)**XX**(%%): The default frequency band
803 803  
... ... @@ -822,7 +822,7 @@
822 822  
823 823  (% style="color:#037691" %)**Package Includes**:
824 824  
825 -* D2x-LB LoRaWAN Temperature Sensor
818 +* S31x-LB LoRaWAN Temperature & Humidity Sensor
826 826  
827 827  (% style="color:#037691" %)**Dimension and weight**:
828 828  
... ... @@ -839,4 +839,4 @@
839 839  
840 840  * 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.
841 841  
842 -* 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]]
835 +* 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.cc>>mailto:Support@dragino.cc]].
1682646494051-944.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +206.9 KB
Content
S31-B.jpg
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Ellie
Size
... ... @@ -1,0 +1,1 @@
1 +28.3 KB
Content
S31.jpg
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Ellie
Size
... ... @@ -1,0 +1,1 @@
1 +58.7 KB
Content
S31B.jpg
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Ellie
Size
... ... @@ -1,0 +1,1 @@
1 +40.5 KB
Content
image-20230421162630-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +23.5 KB
Content
image-20230421171614-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +34.8 KB
Content
image-20230426084152-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +190.0 KB
Content
image-20230523174230-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Saxer
Size
... ... @@ -1,0 +1,1 @@
1 +605.9 KB
Content
image-20230524105433-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Saxer
Size
... ... @@ -1,0 +1,1 @@
1 +121.4 KB
Content