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

From version 14.45
edited by Xiaoling
on 2023/04/17 11:32
Change comment: There is no comment for this version
To version 8.1
edited by Edwin Chen
on 2023/04/16 13:43
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.Xiaoling
1 +XWiki.Edwin
Content
... ... @@ -15,37 +15,21 @@
15 15  == 1.1 What is S31x-LB LoRaWAN Temperature & Humidity Sensor ==
16 16  
17 17  
18 -(((
19 19  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.
20 -)))
21 21  
22 -(((
23 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.
24 -)))
25 25  
26 -(((
27 27  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.
28 -)))
29 29  
30 -(((
31 31  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.
32 -)))
33 33  
34 -(((
35 35  S31x-LB has max 3 probes which measure maximum 3 temperature points.
36 -)))
37 37  
38 -(((
39 39  S31x-LB (% style="color:blue" %)**supports BLE configure**(%%) and (% style="color:blue" %)**wireless OTA update**(%%) which make user easy to use.
40 -)))
41 41  
42 -(((
43 43  S31x-LB is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long term use up to 5 years.
44 -)))
45 45  
46 -(((
47 47  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.
48 -)))
49 49  
50 50  
51 51  == 1.2 ​Features ==
... ... @@ -62,8 +62,6 @@
62 62  * Downlink to change configure
63 63  * 8500mAh Battery for long term use
64 64  
65 -
66 -
67 67  == 1.3 Specification ==
68 68  
69 69  
... ... @@ -106,8 +106,6 @@
106 106  * Sleep Mode: 5uA @ 3.3v
107 107  * LoRa Transmit Mode: 125mA @ 20dBm, 82mA @ 14dBm
108 108  
109 -
110 -
111 111  == 1.4 Sleep mode and working mode ==
112 112  
113 113  
... ... @@ -122,8 +122,8 @@
122 122  [[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675071855856-879.png]]
123 123  
124 124  
125 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
126 -|=(% 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**
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**
127 127  |(% style="width:167px" %)Pressing ACT between 1s < time < 3s|(% style="width:117px" %)Send an uplink|(% style="width:225px" %)(((
128 128  If sensor is already Joined to LoRaWAN network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once.
129 129  Meanwhile, BLE module will be active and user can connect via BLE to configure device.
... ... @@ -135,8 +135,6 @@
135 135  )))
136 136  |(% 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.
137 137  
138 -
139 -
140 140  == 1.6 BLE connection ==
141 141  
142 142  
... ... @@ -155,9 +155,9 @@
155 155  == 1.7  Hardware Variant ==
156 156  
157 157  
158 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %)
159 -|=(% 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
160 -|(% style="width:102px" %)S31-LB|(% style="width:190px" %) |(% style="width:297px" %)(((
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" %)**S31-LB**|(% style="width:190px" %) |(% style="width:297px" %)(((
161 161  1 x SHT31 Probe
162 162  
163 163  Cable Length : 2 meters
... ... @@ -164,7 +164,7 @@
164 164  
165 165  
166 166  )))
167 -|(% style="width:102px" %)S31B-LB|(% style="width:190px" %) |(% style="width:297px" %)(((
145 +|(% style="width:102px" %)**S31B-LB**|(% style="width:190px" %) |(% style="width:297px" %)(((
168 168  1 x SHT31 Probe
169 169  
170 170  Installed in device.
... ... @@ -200,6 +200,9 @@
200 200  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.
201 201  
202 202  
181 +[[image:1675144005218-297.png]]
182 +
183 +
203 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 204  
205 205  
... ... @@ -207,7 +207,7 @@
207 207  
208 208  Each S31x-LB is shipped with a sticker with the default device EUI as below:
209 209  
210 -[[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-20220607170145-1.jpeg?rev=1.1||alt="image-20220607170145-1.jpeg"]]
191 +[[image:image-20230131134744-2.jpeg]]
211 211  
212 212  
213 213  
... ... @@ -216,23 +216,23 @@
216 216  
217 217  (% style="color:blue" %)**Register the device**
218 218  
219 -[[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"]]
200 +[[image:1675144099263-405.png]]
220 220  
221 221  
222 222  (% style="color:blue" %)**Add APP EUI and DEV EUI**
223 223  
224 -[[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="image-20220611161308-4.png"]]
205 +[[image:1675144117571-832.png]]
225 225  
226 226  
227 227  (% style="color:blue" %)**Add APP EUI in the application**
228 228  
229 229  
230 -[[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="image-20220611161308-5.png"]]
211 +[[image:1675144143021-195.png]]
231 231  
232 232  
233 233  (% style="color:blue" %)**Add APP KEY**
234 234  
235 -[[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="image-20220611161308-6.png"]]
216 +[[image:1675144157838-392.png]]
236 236  
237 237  
238 238  (% style="color:blue" %)**Step 2:**(%%) Activate on S31x-LB
... ... @@ -255,14 +255,14 @@
255 255  The Payload format is as below.
256 256  
257 257  
258 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
259 -|(% colspan="6" style="background-color:#d9e2f3; color:#0070c0" %)**Device Status (FPORT=5)**
239 +(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:510px" %)
240 +|(% colspan="6" %)**Device Status (FPORT=5)**
260 260  |(% style="width:103px" %)**Size (bytes)**|(% style="width:72px" %)**1**|**2**|(% style="width:91px" %)**1**|(% style="width:86px" %)**1**|(% style="width:44px" %)**2**
261 261  |(% 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
262 262  
263 263  Example parse in TTNv3
264 264  
265 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual/WebHome/image-20230415153147-2.png?width=1120&height=220&rev=1.1||alt="image-20230415153147-2.png"]]
246 +[[image:image-20230415153147-2.png||height="220" width="1120"]]
266 266  
267 267  
268 268  (% style="color:#037691" %)**Sensor Model**(%%): For S31x-LB, this value is 0x0A
... ... @@ -323,22 +323,24 @@
323 323  
324 324  Sensor Data is uplink via FPORT=2
325 325  
326 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %)
327 -|=(% style="width: 90px;background-color:#D9E2F3" %)(((
307 +|=(((
328 328  **Size(bytes)**
329 -)))|=(% style="width: 80px;background-color:#D9E2F3" %)2|=(% style="width: 90px;background-color:#D9E2F3" %)4|=(% style="width:80px;background-color:#D9E2F3" %)1|=(% style="width: 80px;background-color:#D9E2F3" %)**2**|=(% style="width: 80px;background-color:#D9E2F3" %)2
330 -|(% style="width:99px" %)**Value**|(% style="width:69px" %)(((
331 -[[Battery>>||anchor="HBattery:"]]
332 -)))|(% style="width:130px" %)(((
333 -[[Unix TimeStamp>>||anchor="H2.5.2UnixTimeStamp"]]
334 -)))|(% style="width:91px" %)(((
335 -[[Alarm Flag>>||anchor="HAlarmFlag26MOD:"]]
336 -)))|(% style="width:103px" %)(((
337 -[[Temperature>>||anchor="HTemperature:"]]
338 -)))|(% style="width:80px" %)(((
339 -[[Humidity>>||anchor="HHumidity:"]]
309 +)))|=2|=4|=1|=**2**|=2
310 +|**Value**|(((
311 +[[Battery>>path:#HBattery:]]
312 +)))|(((
313 +[[Unix TimeStamp>>path:#H2.4.1UnixTimeStamp]]
314 +)))|(((
315 +[[Alarm Flag>>path:#HAlarmFlag26MOD:]]
316 +)))|(((
317 +[[Temperature>>path:#HTemperature:]]
318 +)))|(((
319 +[[Humidity>>path:#HHumidity:]]
340 340  )))
341 341  
322 +
323 +
324 +
342 342  ==== (% style="color:#4472c4" %)**Battery:**(%%) ====
343 343  
344 344  Sensor Battery Level.
... ... @@ -382,27 +382,24 @@
382 382  
383 383  == 2.4 Payload Decoder file ==
384 384  
368 +In TTN, use can add a custom payload so it shows friendly. 
385 385  
386 -In TTN, use can add a custom payload so it shows friendly reading
370 +In the page **Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder** to add the decoder from: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder/tree/main/LSN50v2-S31%26S31B >>https://github.com/dragino/dragino-end-node-decoder/tree/main/LSN50v2-S31%26S31B]]
387 387  
388 -In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from:
389 389  
390 -[[https:~~/~~/github.com/dragino/dragino-end-node-decoder/tree/main/LSN50v2-S31%26S31B >>https://github.com/dragino/dragino-end-node-decoder/tree/main/LSN50v2-S31%26S31B]]
391 -
392 -
393 393  == 2.5 Datalog Feature ==
394 394  
395 395  
396 -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.
376 +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.
397 397  
398 398  
399 399  === 2.5.1 Ways to get datalog via LoRaWAN ===
400 400  
401 401  
402 -Set [[PNACKMD=1>>||anchor="H2.5.4DatalogUplinkpayloadA028FPORT3D329"]], 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.
382 +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.
403 403  
404 -* a) S31x-LB will do an ACK check for data records sending to make sure every data arrive server.
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.
384 +* a) D2x-LB will do an ACK check for data records sending to make sure every data arrive server.
385 +* 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.
406 406  
407 407  Below is the typical case for the auto-update datalog feature (Set PNACKMD=1)
408 408  
... ... @@ -411,7 +411,7 @@
411 411  === 2.5.2 Unix TimeStamp ===
412 412  
413 413  
414 -S31x-LB uses Unix TimeStamp format based on
394 +LHT65N uses Unix TimeStamp format based on
415 415  
416 416  [[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"]]
417 417  
... ... @@ -427,33 +427,33 @@
427 427  === 2.5.3 Set Device Time ===
428 428  
429 429  
430 -User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command.
410 +User need to set SYNCMOD=1 to enable sync time via MAC command.
431 431  
432 -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).
412 +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).
433 433  
434 -(% 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.**
414 +**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.**
435 435  
436 436  
437 -=== 2.5.4 Datalog Uplink payload (FPORT~=3) ===
417 +=== 2.5.4 Datalog Uplink payload  FPORT~=3 ===
438 438  
439 439  
440 -The Datalog uplinks will use below payload format.
420 +The Datalog poll reply uplink will use below payload format.
441 441  
442 442  **Retrieval data payload:**
443 443  
444 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %)
445 -|=(% style="width: 80px;background-color:#D9E2F3" %)(((
424 +(% style="width:858px" %)
425 +|=(% style="width: 103px;" %)(((
446 446  **Size(bytes)**
447 -)))|=(% style="width: 60px; background-color: rgb(217, 226, 243);" %)**2**|=(% style="width: 60px; background-color: rgb(217, 226, 243);" %)**2**|=(% style="width: 120px; background-color: rgb(217, 226, 243);" %)**2**|=(% style="width: 103px; background-color: rgb(217, 226, 243);" %)**1**|=(% style="width: 85px; background-color: rgb(217, 226, 243);" %)**4**
448 -|(% style="width:103px" %)**Value**|(% style="width:54px" %)(((
427 +)))|=(% style="width: 129px;" %)**2**|=(% style="width: 114px;" %)**2**|=(% style="width: 217px;" %)**2**|=(% style="width: 153px;" %)**1**|=(% style="width: 139px;" %)**4**
428 +|(% style="width:103px" %)**Value**|(% style="width:129px" %)(((
449 449  [[Temp_Black>>||anchor="HTemperatureBlack:"]]
450 -)))|(% style="width:51px" %)[[Temp_White>>||anchor="HTemperatureWhite:"]]|(% style="width:89px" %)[[Temp_ Red or Temp _White>>||anchor="HTemperatureREDorTemperatureWhite:"]]|(% style="width:103px" %)Poll message flag & Ext|(% style="width:54px" %)[[Unix Time Stamp>>||anchor="H2.5.2UnixTimeStamp"]]
430 +)))|(% 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]]
451 451  
452 452  **Poll message flag & Ext:**
453 453  
454 454  [[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"]]
455 455  
456 -**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)
436 +**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)
457 457  
458 458  **Poll Message Flag**: 1: This message is a poll message reply.
459 459  
... ... @@ -473,7 +473,6 @@
473 473  
474 474  If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0   
475 475  
476 -
477 477  **Example:**
478 478  
479 479  If D2x-LB has below data inside Flash:
... ... @@ -486,42 +486,25 @@
486 486  
487 487   Stop time: 60066DA7= time 21/1/19 05:27:03
488 488  
468 +**LHT65N will uplink this payload.**
489 489  
490 -**S31x-LB will uplink this payload.**
491 -
492 492  [[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"]]
493 493  
494 -(((
495 495  __**7FFF089801464160065F97**__ **__7FFF__ __088E__ __014B__ __41__ __60066009__** 7FFF0885014E41600660667FFF0875015141600662BE7FFF086B015541600665167FFF08660155416006676E7FFF085F015A41600669C67FFF0857015D4160066C1E
496 -)))
497 497  
498 -(((
499 499  Where the first 11 bytes is for the first entry:
500 -)))
501 501  
502 -(((
503 503  7FFF089801464160065F97
504 -)))
505 505  
506 -(((
507 -**Ext sensor data**=0x7FFF/100=327.67
508 -)))
478 +Ext sensor data=0x7FFF/100=327.67
509 509  
510 -(((
511 -**Temp**=0x088E/100=22.00
512 -)))
480 +Temp=0x088E/100=22.00
513 513  
514 -(((
515 -**Hum**=0x014B/10=32.6
516 -)))
482 +Hum=0x014B/10=32.6
517 517  
518 -(((
519 -**poll message flag & Ext**=0x41,means reply data,Ext=1
520 -)))
484 +poll message flag & Ext=0x41,means reply data,Ext=1
521 521  
522 -(((
523 -**Unix time** is 0x60066009=1611030423s=21/1/19 04:27:03
524 -)))
486 +Unix time is 0x60066009=1611030423s=21/1/19 04:27:03
525 525  
526 526  
527 527  (% 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" %)​
... ... @@ -529,33 +529,41 @@
529 529  == 2.6 Temperature Alarm Feature ==
530 530  
531 531  
532 -S31x-LB work flow with Alarm feature.
494 +D2x-LB work flow with Alarm feature.
533 533  
534 534  
535 535  [[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"]]
536 536  
537 537  
500 +
538 538  == 2.7 Frequency Plans ==
539 539  
540 540  
541 -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.
504 +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.
542 542  
543 543  [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]]
544 544  
545 545  
546 -= 3. Configure S31x-LB =
509 +== 2.8 ​Firmware Change Log ==
547 547  
511 +
512 +**Firmware download link:**
513 +
514 +[[https:~~/~~/www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0>>url:https://www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0]]
515 +
516 +
517 +
518 += 3. Configure D2x-LB =
519 +
548 548  == 3.1 Configure Methods: ==
549 549  
550 550  
551 -S31x-LB supports below configure method:
523 +D2x-LB supports below configure method:
552 552  
553 553  * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
554 -* 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]].
526 +* AT Command via UART Connection : See [[FAQ>>||anchor="H7.FAQ"]].
555 555  * LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
556 556  
557 -
558 -
559 559  == 3.2 General Commands ==
560 560  
561 561  
... ... @@ -569,10 +569,10 @@
569 569  [[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/]]
570 570  
571 571  
572 -== 3.3 Commands special design for S31x-LB ==
542 +== 3.3 Commands special design for D2x-LB ==
573 573  
574 574  
575 -These commands only valid for S31x-LB, as below:
545 +These commands only valid for D2x-LB, as below:
576 576  
577 577  
578 578  === 3.3.1 Set Transmit Interval Time ===
... ... @@ -582,8 +582,8 @@
582 582  
583 583  (% style="color:blue" %)**AT Command: AT+TDC**
584 584  
585 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
586 -|=(% style="width: 156px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 137px;background-color:#D9E2F3" %)**Function**|=(% style="background-color:#D9E2F3" %)**Response**
555 +(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:510px" %)
556 +|=(% style="width: 156px;" %)**Command Example**|=(% style="width: 137px;" %)**Function**|=**Response**
587 587  |(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|(((
588 588  30000
589 589  OK
... ... @@ -603,76 +603,79 @@
603 603  * Example 1: Downlink Payload: 0100001E  ~/~/  Set Transmit Interval (TDC) = 30 seconds
604 604  * Example 2: Downlink Payload: 0100003C  ~/~/  Set Transmit Interval (TDC) = 60 seconds
605 605  
606 -
607 -
608 608  === 3.3.2 Get Device Status ===
609 609  
610 610  
611 611  Send a LoRaWAN downlink to ask device send Alarm settings.
612 612  
613 -(% style="color:blue" %)**Downlink Payload:  **(%%)0x26 01
581 +* (% style="color:#037691" %)**Downlink Payload:  **(%%)0x26 01
614 614  
615 615  Sensor will upload Device Status via FPORT=5. See payload section for detail.
616 616  
617 617  
618 -=== 3.3.3 Set Temperature Alarm Threshold: ===
586 +=== 3.3.3 Set Alarm Thredhold ===
619 619  
620 -* (% style="color:blue" %)**AT Command:**
621 621  
622 -(% style="color:#037691" %)**AT+SHTEMP=min,max**
589 +(% style="color:#4472c4" %)**1.  Set for All Probes:**
623 623  
624 -* When min=0, and max≠0, Alarm higher than max
625 -* When min≠0, and max=0, Alarm lower than min
626 -* When min≠0 and max≠0, Alarm higher than max or lower than min
591 +(% style="color:#037691" %)**AT+18ALARM=min,max**
627 627  
628 -Example:
593 +* When min=0, and max≠0, Alarm trigger when higher than max
594 +* When min≠0, and max=0, Alarm trigger when lower than min
595 +* When min≠0 and max≠0, Alarm trigger when higher than max or lower than min
629 629  
630 - AT+SHTEMP=0,30   ~/~/ Alarm when temperature higher than 30.
597 +**Example:**
631 631  
632 -* (% style="color:blue" %)**Downlink Payload:**
599 + AT+18ALARM=-10,30  ~/~/ Alarm when < -10 or higher than 30.
633 633  
634 -(% style="color:#037691" %)**0x(0C 01 00 1E)**  (%%) ~/~/ Set AT+SHTEMP=0,30
635 635  
636 -(% style="color:red" %)**(note: 3^^rd^^ byte= 0x00 for low limit(not set), 4^^th^^ byte = 0x1E for high limit: 30)**
602 +* (% style="color:#037691" %)**Downlink Payload:**
637 637  
604 +0x(0B F6 1E)   ~/~/ Same as AT+18ALARM=-10,30
638 638  
639 -=== 3.3.4 Set Humidity Alarm Threshold: ===
606 +(note: 0x1E= 30, 0xF6 means: 0xF6-0x100 = -10)
640 640  
641 -* (% style="color:blue" %)**AT Command:**
642 642  
643 -(% style="color:#037691" %)**AT+SHHUM=min,max**
609 +(% style="color:#4472c4" %)**2.  Set for Separate Probe:**
644 644  
645 -* When min=0, and max≠0, Alarm higher than max
646 -* When min≠0, and max=0, Alarm lower than min
647 -* When min≠0 and max≠0, Alarm higher than max or lower than min
611 +(% style="color:#037691" %)**AT+18ALARM=min,max,index**
648 648  
649 -Example:
613 +Index:
650 650  
651 - AT+SHHUM=70,0  ~/~/ Alarm when humidity lower than 70%.
615 +* 1: Temperature_Red
616 +* 2: Temperature_White
617 +* 3: Temperature_Black
652 652  
653 -* (% style="color:blue" %)**Downlink Payload:**
619 +**Example:**
654 654  
655 -(% style="color:#037691" %)**0x(0C 02 46 00)**(%%)  ~/~/ Set AT+SHTHUM=70,0
621 + AT+18ALARM=-10,30,1   ~/~/ Alarm when temperature_red < -10 or higher than 30.
656 656  
657 -(% style="color:red" %)**(note: 3^^rd^^ byte= 0x46 for low limit (70%), 4^^th^^ byte = 0x00 for high limit (not set))**
658 658  
624 +* (% style="color:#037691" %)**Downlink Payload:**
659 659  
660 -=== 3.3.5 Set Alarm Interval: ===
626 +0x(0B F6 1E 01)   ~/~/ Same as AT+18ALARM=-10,30,1
661 661  
628 +(note: 0x1E= 30, 0xF6 means: 0xF6-0x100 = -10)
629 +
630 +
631 +=== 3.3.4 Set Alarm Interval ===
632 +
633 +
662 662  The shortest time of two Alarm packet. (unit: min)
663 663  
664 -* (% style="color:blue" %)**AT Command:**
636 +* (% style="color:#037691" %)**AT Command:**
665 665  
666 -(% 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.
638 +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.
667 667  
668 -* (% style="color:blue" %)**Downlink Payload:**
669 669  
670 -(% style="color:#037691" %)**0x(0D 00 1E)**(%%)     **~-~--> ** Set AT+ATDC=0x 00 1E = 30 minutes
641 +* (% style="color:#037691" %)**Downlink Payload:**
671 671  
643 +0x(0D 00 1E)     **~-~-->** Set AT+ATDC=0x 00 1E = 30 minutes
672 672  
673 -=== 3.3.6 Get Alarm settings  (什么FPORT?) ===
674 674  
646 +=== 3.3.5 Get Alarm settings  (什么FPORT?) ===
675 675  
648 +
676 676  Send a LoRaWAN downlink to ask device send Alarm settings.
677 677  
678 678  * (% style="color:#037691" %)**Downlink Payload:  **(%%)0x0E 01
... ... @@ -686,17 +686,15 @@
686 686  
687 687  * Alarm & MOD bit is 0x7C, 0x7C >> 2 = 0x31: Means this message is the Alarm settings message.
688 688  
662 +=== 3.3.6 Set Interrupt Mode ===
689 689  
690 690  
691 -=== 3.3.7 Set Interrupt Mode ===
692 -
693 -
694 694  Feature, Set Interrupt mode for GPIO_EXIT.
695 695  
696 696  (% style="color:blue" %)**AT Command: AT+INTMOD**
697 697  
698 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
699 -|=(% style="width: 154px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 196px;background-color:#D9E2F3" %)**Function**|=(% style="width: 157px;background-color:#D9E2F3" %)**Response**
669 +(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:510px" %)
670 +|=(% style="width: 154px;" %)**Command Example**|=(% style="width: 196px;" %)**Function**|=(% style="width: 157px;" %)**Response**
700 700  |(% style="width:154px" %)AT+INTMOD=?|(% style="width:196px" %)Show current interrupt mode|(% style="width:157px" %)(((
701 701  0
702 702  OK
... ... @@ -719,44 +719,44 @@
719 719  * Example 1: Downlink Payload: 06000000  ~/~/  Turn off interrupt mode
720 720  * Example 2: Downlink Payload: 06000003  ~/~/  Set the interrupt mode to rising edge trigger
721 721  
722 -
723 -
724 724  = 4. Battery & Power Consumption =
725 725  
726 726  
727 -S31x-LB use ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
696 +D2x-LB use ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
728 728  
729 729  [[**Battery Info & Power Consumption Analyze**>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
730 730  
731 731  
732 -= 5. OTA Firmware update =
701 += 5. OTA firmware update =
733 733  
734 734  
735 -(% class="wikigeneratedid" %)
736 -User can change firmware S31x-LB to:
704 +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/]]
737 737  
738 -* Change Frequency band/ region.
739 -* Update with new features.
740 -* Fix bugs.
741 741  
742 -Firmware and changelog can be downloaded from : **[[Firmware download link>>https://www.dropbox.com/sh/kwqv57tp6pejias/AAAopYMATh1GM6fZ-VRCLrpDa?dl=0]]**
707 += 6. FAQ =
743 743  
709 +== 6.1 How to use AT Command via UART to access device? ==
744 744  
745 -Methods to Update Firmware:
746 746  
747 -* (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/]]
748 -* Update through UART TTL interface. **[[Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H1.LoRaSTv4baseHardware]]**.
712 +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]]
749 749  
750 750  
715 +== 6.2 How to update firmware via UART port? ==
751 751  
752 -= 6. FAQ =
753 753  
718 +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]]
754 754  
755 755  
721 +== 6.3 How to change the LoRa Frequency Bands/Region? ==
722 +
723 +
724 +Each LoRaWAN frequency bands has different firmware. User can update the device's firmware to the corresponding frequency band to change region.
725 +
726 +
756 756  = 7. Order Info =
757 757  
758 758  
759 -Part Number: (% style="color:blue" %)**S31-LB-XX  / S31B-LB-XX**
730 +Part Number: (% style="color:blue" %)**D20-LB-XX  / D22-LB-XX / D23-LB-XX**
760 760  
761 761  (% style="color:red" %)**XX**(%%): The default frequency band
762 762  
... ... @@ -776,14 +776,12 @@
776 776  
777 777  * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
778 778  
779 -
780 -
781 781  = 8. ​Packing Info =
782 782  
783 783  
784 784  (% style="color:#037691" %)**Package Includes**:
785 785  
786 -* S31x-LB LoRaWAN Temperature & Humidity Sensor
755 +* D2x-LB LoRaWAN Temperature Sensor
787 787  
788 788  (% style="color:#037691" %)**Dimension and weight**:
789 789  
... ... @@ -795,8 +795,6 @@
795 795  
796 796  * Weight / pcs : g
797 797  
798 -
799 -
800 800  = 9. Support =
801 801  
802 802