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

From version 16.5
edited by kai
on 2023/04/23 15:13
Change comment: There is no comment for this version
To version 7.1
edited by Edwin Chen
on 2023/04/16 13:42
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.kai
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 ==
... ... @@ -118,8 +118,8 @@
118 118  [[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675071855856-879.png]]
119 119  
120 120  
121 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
122 -|=(% 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**
123 123  |(% style="width:167px" %)Pressing ACT between 1s < time < 3s|(% style="width:117px" %)Send an uplink|(% style="width:225px" %)(((
124 124  If sensor is already Joined to LoRaWAN network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once.
125 125  Meanwhile, BLE module will be active and user can connect via BLE to configure device.
... ... @@ -134,7 +134,7 @@
134 134  == 1.6 BLE connection ==
135 135  
136 136  
137 -S31x-LB support BLE remote configure.
121 +D2x-LB support BLE remote configure.
138 138  
139 139  
140 140  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:
... ... @@ -149,9 +149,9 @@
149 149  == 1.7  Hardware Variant ==
150 150  
151 151  
152 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %)
153 -|=(% 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
154 -|(% 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" %)(((
155 155  1 x SHT31 Probe
156 156  
157 157  Cable Length : 2 meters
... ... @@ -158,7 +158,7 @@
158 158  
159 159  
160 160  )))
161 -|(% style="width:102px" %)S31B-LB|(% style="width:190px" %) |(% style="width:297px" %)(((
145 +|(% style="width:102px" %)**S31B-LB**|(% style="width:190px" %) |(% style="width:297px" %)(((
162 162  1 x SHT31 Probe
163 163  
164 164  Installed in device.
... ... @@ -194,6 +194,9 @@
194 194  Following is an example for how to join the [[TTN v3 LoRaWAN Network>>url:https://console.cloud.thethings.network/]]. Below is the network structure; we use the [[LPS8v2>>url:https://www.dragino.com/products/lora-lorawan-gateway/item/228-lps8v2.html]] as a LoRaWAN gateway in this example.
195 195  
196 196  
181 +[[image:1675144005218-297.png]]
182 +
183 +
197 197  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.
198 198  
199 199  
... ... @@ -201,7 +201,7 @@
201 201  
202 202  Each S31x-LB is shipped with a sticker with the default device EUI as below:
203 203  
204 -[[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]]
205 205  
206 206  
207 207  
... ... @@ -210,23 +210,23 @@
210 210  
211 211  (% style="color:blue" %)**Register the device**
212 212  
213 -[[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]]
214 214  
215 215  
216 216  (% style="color:blue" %)**Add APP EUI and DEV EUI**
217 217  
218 -[[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]]
219 219  
220 220  
221 221  (% style="color:blue" %)**Add APP EUI in the application**
222 222  
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-5.png?width=742&height=601&rev=1.1||alt="image-20220611161308-5.png"]]
211 +[[image:1675144143021-195.png]]
225 225  
226 226  
227 227  (% style="color:blue" %)**Add APP KEY**
228 228  
229 -[[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]]
230 230  
231 231  
232 232  (% style="color:blue" %)**Step 2:**(%%) Activate on S31x-LB
... ... @@ -249,14 +249,14 @@
249 249  The Payload format is as below.
250 250  
251 251  
252 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
253 -|(% 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)**
254 254  |(% style="width:103px" %)**Size (bytes)**|(% style="width:72px" %)**1**|**2**|(% style="width:91px" %)**1**|(% style="width:86px" %)**1**|(% style="width:44px" %)**2**
255 255  |(% 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
256 256  
257 257  Example parse in TTNv3
258 258  
259 -[[image:image-20230421171614-1.png]]
246 +[[image:image-20230415153147-2.png||height="220" width="1120"]]
260 260  
261 261  
262 262  (% style="color:#037691" %)**Sensor Model**(%%): For S31x-LB, this value is 0x0A
... ... @@ -317,24 +317,28 @@
317 317  
318 318  Sensor Data is uplink via FPORT=2
319 319  
320 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %)
321 -|=(% style="width: 90px;background-color:#D9E2F3" %)(((
307 +|=(((
322 322  **Size(bytes)**
323 -)))|=(% 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
324 -|(% style="width:99px" %)**Value**|(% style="width:69px" %)(((
325 -[[Battery>>||anchor="HBattery:"]]
326 -)))|(% style="width:130px" %)(((
327 -[[Unix TimeStamp>>||anchor="H2.5.2UnixTimeStamp"]]
328 -)))|(% style="width:91px" %)(((
329 -[[Alarm Flag>>||anchor="HAlarmFlag26MOD:"]]
330 -)))|(% style="width:103px" %)(((
331 -[[Temperature>>||anchor="HTemperature:"]]
332 -)))|(% style="width:80px" %)(((
333 -[[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:]]
334 334  )))
335 335  
336 -==== (% style="color:#4472c4" %)**Battery**(%%) ====
322 +
337 337  
324 +
325 +
326 +
327 +==== (% style="color:#4472c4" %)**Battery:**(%%) ====
328 +
338 338  Sensor Battery Level.
339 339  
340 340  Ex1: 0x0B45 = 2885mV
... ... @@ -343,7 +343,7 @@
343 343  
344 344  
345 345  
346 -==== (% style="color:#4472c4" %)**Temperature**(%%) ====
337 +==== (% style="color:#4472c4" %)**Temperature:**(%%) ====
347 347  
348 348  **Example**:
349 349  
... ... @@ -354,13 +354,13 @@
354 354  (FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative)
355 355  
356 356  
357 -==== (% style="color:#4472c4" %)**Humidity**(%%) ====
348 +==== **Humidity:** ====
358 358  
359 359  
360 360  Read:0x(0197)=412    Value:  412 / 10=41.2, So 41.2%
361 361  
362 362  
363 -==== (% style="color:#4472c4" %)**Alarm Flag& MOD**(%%) ====
354 +==== **Alarm Flag& MOD:** ====
364 364  
365 365  
366 366  **Example:**
... ... @@ -371,32 +371,34 @@
371 371  
372 372  If payload >> 2 = 0x00  **~-~->**  means MOD=1, This is a sampling uplink message
373 373  
374 -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. 
365 +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.
375 375  
376 376  
377 377  == 2.4 Payload Decoder file ==
378 378  
379 379  
380 -In TTN, use can add a custom payload so it shows friendly reading
371 +(((
372 +In TTN, use can add a custom payload so it shows friendly. 
373 +)))
381 381  
382 -In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from:
375 +(((
376 +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]]
377 +)))
383 383  
384 -[[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]]
385 385  
386 -
387 387  == 2.5 Datalog Feature ==
388 388  
389 389  
390 -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.
383 +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.
391 391  
392 392  
393 393  === 2.5.1 Ways to get datalog via LoRaWAN ===
394 394  
395 395  
396 -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.
389 +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.
397 397  
398 -* a) S31x-LB will do an ACK check for data records sending to make sure every data arrive server.
399 -* 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.
391 +* a) D2x-LB will do an ACK check for data records sending to make sure every data arrive server.
392 +* 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.
400 400  
401 401  Below is the typical case for the auto-update datalog feature (Set PNACKMD=1)
402 402  
... ... @@ -405,7 +405,7 @@
405 405  === 2.5.2 Unix TimeStamp ===
406 406  
407 407  
408 -S31x-LB uses Unix TimeStamp format based on
401 +LHT65N uses Unix TimeStamp format based on
409 409  
410 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-20220523001219-11.png?width=627&height=97&rev=1.1||alt="image-20220523001219-11.png" height="97" width="627"]]
411 411  
... ... @@ -421,33 +421,33 @@
421 421  === 2.5.3 Set Device Time ===
422 422  
423 423  
424 -User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command.
417 +User need to set SYNCMOD=1 to enable sync time via MAC command.
425 425  
426 -Once S31-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).
419 +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).
427 427  
428 -(% 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.**
421 +**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.**
429 429  
430 430  
431 -=== 2.5.4 Datalog Uplink payload (FPORT~=3) ===
424 +=== 2.5.4 Datalog Uplink payload  FPORT~=3 ===
432 432  
433 433  
434 -The Datalog uplinks will use below payload format.
427 +The Datalog poll reply uplink will use below payload format.
435 435  
436 436  **Retrieval data payload:**
437 437  
438 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %)
439 -|=(% style="width: 80px;background-color:#D9E2F3" %)(((
431 +(% style="width:858px" %)
432 +|=(% style="width: 103px;" %)(((
440 440  **Size(bytes)**
441 -)))|=(% 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**
442 -|(% style="width:103px" %)**Value**|(% style="width:54px" %)(((
434 +)))|=(% style="width: 129px;" %)**2**|=(% style="width: 114px;" %)**2**|=(% style="width: 217px;" %)**2**|=(% style="width: 153px;" %)**1**|=(% style="width: 139px;" %)**4**
435 +|(% style="width:103px" %)**Value**|(% style="width:129px" %)(((
443 443  [[Temp_Black>>||anchor="HTemperatureBlack:"]]
444 -)))|(% 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"]]
437 +)))|(% 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]]
445 445  
446 446  **Poll message flag & Ext:**
447 447  
448 448  [[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"]]
449 449  
450 -**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)
443 +**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)
451 451  
452 452  **Poll Message Flag**: 1: This message is a poll message reply.
453 453  
... ... @@ -467,10 +467,9 @@
467 467  
468 468  If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0   
469 469  
470 -
471 471  **Example:**
472 472  
473 -If S31x-LB has below data inside Flash:
465 +If D2x-LB has below data inside Flash:
474 474  
475 475  [[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"]]
476 476  
... ... @@ -480,42 +480,25 @@
480 480  
481 481   Stop time: 60066DA7= time 21/1/19 05:27:03
482 482  
475 +**LHT65N will uplink this payload.**
483 483  
484 -**S31x-LB will uplink this payload.**
485 -
486 486  [[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"]]
487 487  
488 -(((
489 489  __**7FFF089801464160065F97**__ **__7FFF__ __088E__ __014B__ __41__ __60066009__** 7FFF0885014E41600660667FFF0875015141600662BE7FFF086B015541600665167FFF08660155416006676E7FFF085F015A41600669C67FFF0857015D4160066C1E
490 -)))
491 491  
492 -(((
493 493  Where the first 11 bytes is for the first entry:
494 -)))
495 495  
496 -(((
497 497  7FFF089801464160065F97
498 -)))
499 499  
500 -(((
501 -**Ext sensor data**=0x7FFF/100=327.67
502 -)))
485 +Ext sensor data=0x7FFF/100=327.67
503 503  
504 -(((
505 -**Temp**=0x088E/100=22.00
506 -)))
487 +Temp=0x088E/100=22.00
507 507  
508 -(((
509 -**Hum**=0x014B/10=32.6
510 -)))
489 +Hum=0x014B/10=32.6
511 511  
512 -(((
513 -**poll message flag & Ext**=0x41,means reply data,Ext=1
514 -)))
491 +poll message flag & Ext=0x41,means reply data,Ext=1
515 515  
516 -(((
517 -**Unix time** is 0x60066009=1611030423s=21/1/19 04:27:03
518 -)))
493 +Unix time is 0x60066009=1611030423s=21/1/19 04:27:03
519 519  
520 520  
521 521  (% 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" %)​
... ... @@ -523,29 +523,39 @@
523 523  == 2.6 Temperature Alarm Feature ==
524 524  
525 525  
526 -S31x-LB work flow with Alarm feature.
501 +D2x-LB work flow with Alarm feature.
527 527  
528 528  
529 529  [[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"]]
530 530  
531 531  
507 +
532 532  == 2.7 Frequency Plans ==
533 533  
534 534  
535 -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.
511 +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.
536 536  
537 537  [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]]
538 538  
539 539  
540 -= 3. Configure S31x-LB =
516 +== 2.8 ​Firmware Change Log ==
541 541  
542 -== 3.1 Configure Methods ==
543 543  
519 +**Firmware download link:**
544 544  
545 -S31x-LB supports below configure method:
521 +[[https:~~/~~/www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0>>url:https://www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0]]
546 546  
523 +
524 +
525 += 3. Configure D2x-LB =
526 +
527 +== 3.1 Configure Methods: ==
528 +
529 +
530 +D2x-LB supports below configure method:
531 +
547 547  * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
548 -* 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]].
533 +* AT Command via UART Connection : See [[FAQ>>||anchor="H7.FAQ"]].
549 549  * LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
550 550  
551 551  == 3.2 General Commands ==
... ... @@ -561,10 +561,10 @@
561 561  [[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/]]
562 562  
563 563  
564 -== 3.3 Commands special design for S31x-LB ==
549 +== 3.3 Commands special design for D2x-LB ==
565 565  
566 566  
567 -These commands only valid for S31x-LB, as below:
552 +These commands only valid for D2x-LB, as below:
568 568  
569 569  
570 570  === 3.3.1 Set Transmit Interval Time ===
... ... @@ -574,8 +574,8 @@
574 574  
575 575  (% style="color:blue" %)**AT Command: AT+TDC**
576 576  
577 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
578 -|=(% style="width: 156px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 137px;background-color:#D9E2F3" %)**Function**|=(% style="background-color:#D9E2F3" %)**Response**
562 +(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:510px" %)
563 +|=(% style="width: 156px;" %)**Command Example**|=(% style="width: 137px;" %)**Function**|=**Response**
579 579  |(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|(((
580 580  30000
581 581  OK
... ... @@ -600,69 +600,74 @@
600 600  
601 601  Send a LoRaWAN downlink to ask device send Alarm settings.
602 602  
603 -(% style="color:blue" %)**Downlink Payload:  **(%%)0x26 01
588 +* (% style="color:#037691" %)**Downlink Payload:  **(%%)0x26 01
604 604  
605 605  Sensor will upload Device Status via FPORT=5. See payload section for detail.
606 606  
607 607  
608 -=== 3.3.3 Set Temperature Alarm Threshold ===
593 +=== 3.3.3 Set Alarm Thredhold ===
609 609  
610 -* (% style="color:blue" %)**AT Command:**
611 611  
612 -(% style="color:#037691" %)**AT+SHTEMP=min,max**
596 +(% style="color:#4472c4" %)**1.  Set for All Probes:**
613 613  
614 -* When min=0, and max≠0, Alarm higher than max
615 -* When min≠0, and max=0, Alarm lower than min
616 -* When min≠0 and max≠0, Alarm higher than max or lower than min
598 +(% style="color:#037691" %)**AT+18ALARM=min,max**
617 617  
618 -Example:
600 +* When min=0, and max≠0, Alarm trigger when higher than max
601 +* When min≠0, and max=0, Alarm trigger when lower than min
602 +* When min≠0 and max≠0, Alarm trigger when higher than max or lower than min
619 619  
620 - AT+SHTEMP=0,30   ~/~/ Alarm when temperature higher than 30.
604 +**Example:**
621 621  
622 -* (% style="color:blue" %)**Downlink Payload:**
606 + AT+18ALARM=-10,30  ~/~/ Alarm when < -10 or higher than 30.
623 623  
624 -(% style="color:#037691" %)**0x(0C 01 00 1E)**  (%%) ~/~/ Set AT+SHTEMP=0,30
625 625  
626 -(% style="color:red" %)**(note: 3^^rd^^ byte= 0x00 for low limit(not set), 4^^th^^ byte = 0x1E for high limit: 30)**
609 +* (% style="color:#037691" %)**Downlink Payload:**
627 627  
611 +0x(0B F6 1E)   ~/~/ Same as AT+18ALARM=-10,30
628 628  
629 -=== 3.3.4 Set Humidity Alarm Threshold ===
613 +(note: 0x1E= 30, 0xF6 means: 0xF6-0x100 = -10)
630 630  
631 -* (% style="color:blue" %)**AT Command:**
632 632  
633 -(% style="color:#037691" %)**AT+SHHUM=min,max**
616 +(% style="color:#4472c4" %)**2.  Set for Separate Probe:**
634 634  
635 -* When min=0, and max≠0, Alarm higher than max
636 -* When min≠0, and max=0, Alarm lower than min
637 -* When min≠0 and max≠0, Alarm higher than max or lower than min
618 +(% style="color:#037691" %)**AT+18ALARM=min,max,index**
638 638  
639 -Example:
620 +Index:
640 640  
641 - AT+SHHUM=70,0  ~/~/ Alarm when humidity lower than 70%.
622 +* 1: Temperature_Red
623 +* 2: Temperature_White
624 +* 3: Temperature_Black
642 642  
643 -* (% style="color:blue" %)**Downlink Payload:**
626 +**Example:**
644 644  
645 -(% style="color:#037691" %)**0x(0C 02 46 00)**(%%)  ~/~/ Set AT+SHTHUM=70,0
628 + AT+18ALARM=-10,30,1   ~/~/ Alarm when temperature_red < -10 or higher than 30.
646 646  
647 -(% style="color:red" %)**(note: 3^^rd^^ byte= 0x46 for low limit (70%), 4^^th^^ byte = 0x00 for high limit (not set))**
648 648  
631 +* (% style="color:#037691" %)**Downlink Payload:**
649 649  
650 -=== 3.3.5 Set Alarm Interval ===
633 +0x(0B F6 1E 01)   ~/~/ Same as AT+18ALARM=-10,30,1
651 651  
635 +(note: 0x1E= 30, 0xF6 means: 0xF6-0x100 = -10)
636 +
637 +
638 +=== 3.3.4 Set Alarm Interval ===
639 +
640 +
652 652  The shortest time of two Alarm packet. (unit: min)
653 653  
654 -* (% style="color:blue" %)**AT Command:**
643 +* (% style="color:#037691" %)**AT Command:**
655 655  
656 -(% 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.
645 +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.
657 657  
658 -* (% style="color:blue" %)**Downlink Payload:**
659 659  
660 -(% style="color:#037691" %)**0x(0D 00 1E)**(%%)     **~-~--> ** Set AT+ATDC=0x 00 1E = 30 minutes
648 +* (% style="color:#037691" %)**Downlink Payload:**
661 661  
650 +0x(0D 00 1E)     **~-~-->** Set AT+ATDC=0x 00 1E = 30 minutes
662 662  
663 -=== 3.3.6 Get Alarm settings ===
664 664  
653 +=== 3.3.5 Get Alarm settings  (什么FPORT?) ===
665 665  
655 +
666 666  Send a LoRaWAN downlink to ask device send Alarm settings.
667 667  
668 668  * (% style="color:#037691" %)**Downlink Payload:  **(%%)0x0E 01
... ... @@ -676,7 +676,7 @@
676 676  
677 677  * Alarm & MOD bit is 0x7C, 0x7C >> 2 = 0x31: Means this message is the Alarm settings message.
678 678  
679 -=== 3.3.7 Set Interrupt Mode ===
669 +=== 3.3.6 Set Interrupt Mode ===
680 680  
681 681  
682 682  Feature, Set Interrupt mode for GPIO_EXIT.
... ... @@ -683,8 +683,8 @@
683 683  
684 684  (% style="color:blue" %)**AT Command: AT+INTMOD**
685 685  
686 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
687 -|=(% style="width: 154px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 196px;background-color:#D9E2F3" %)**Function**|=(% style="width: 157px;background-color:#D9E2F3" %)**Response**
676 +(% border="1" cellspacing="4" style="background-color:#f7faff; color:black; width:510px" %)
677 +|=(% style="width: 154px;" %)**Command Example**|=(% style="width: 196px;" %)**Function**|=(% style="width: 157px;" %)**Response**
688 688  |(% style="width:154px" %)AT+INTMOD=?|(% style="width:196px" %)Show current interrupt mode|(% style="width:157px" %)(((
689 689  0
690 690  OK
... ... @@ -710,37 +710,41 @@
710 710  = 4. Battery & Power Consumption =
711 711  
712 712  
713 -S31x-LB use ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
703 +D2x-LB use ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
714 714  
715 715  [[**Battery Info & Power Consumption Analyze**>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
716 716  
717 717  
718 -= 5. OTA Firmware update =
708 += 5. OTA firmware update =
719 719  
720 720  
721 -(% class="wikigeneratedid" %)
722 -User can change firmware S31x-LB to:
711 +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/]]
723 723  
724 -* Change Frequency band/ region.
725 -* Update with new features.
726 -* Fix bugs.
727 727  
728 -Firmware and changelog can be downloaded from : **[[Firmware download link>>https://www.dropbox.com/sh/kwqv57tp6pejias/AAAopYMATh1GM6fZ-VRCLrpDa?dl=0]]**
714 += 6. FAQ =
729 729  
716 +== 6.1 How to use AT Command via UART to access device? ==
730 730  
731 -Methods to Update Firmware:
732 732  
733 -* (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/]]
734 -* Update through UART TTL interface. **[[Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H1.LoRaSTv4baseHardware]]**.
719 +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]]
735 735  
736 -= 6. FAQ =
737 737  
722 +== 6.2 How to update firmware via UART port? ==
738 738  
739 739  
725 +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]]
726 +
727 +
728 +== 6.3 How to change the LoRa Frequency Bands/Region? ==
729 +
730 +
731 +Each LoRaWAN frequency bands has different firmware. User can update the device's firmware to the corresponding frequency band to change region.
732 +
733 +
740 740  = 7. Order Info =
741 741  
742 742  
743 -Part Number: (% style="color:blue" %)**S31-LB-XX  / S31B-LB-XX**
737 +Part Number: (% style="color:blue" %)**D20-LB-XX  / D22-LB-XX / D23-LB-XX**
744 744  
745 745  (% style="color:red" %)**XX**(%%): The default frequency band
746 746  
... ... @@ -765,7 +765,7 @@
765 765  
766 766  (% style="color:#037691" %)**Package Includes**:
767 767  
768 -* S31x-LB LoRaWAN Temperature & Humidity Sensor
762 +* D2x-LB LoRaWAN Temperature Sensor
769 769  
770 770  (% style="color:#037691" %)**Dimension and weight**:
771 771  
image-20230421162630-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -23.5 KB
Content
image-20230421171614-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -34.8 KB
Content