Version 80.6 by Xiaoling on 2023/08/19 11:58

Show last authors
1 (% style="text-align:center" %)
2 [[image:image-20230819102136-3.png]]
3
4
5
6 **Table of Contents:**
7
8 {{toc/}}
9
10
11
12
13
14
15 = 1. Introduction =
16
17 == 1.1 What is S31x-NB NB-IoT Temperature & Humidity Sensor ==
18
19
20 The Dragino S31-NB and S31B-NB are (% style="color:blue" %)**NB-IoT Temperature and Humidity Sensor**(%%) for Internet of Things solution. It is used to measure the surrounding (% style="color:blue" %)**environment temperature and relative air humidity precisely**(%%), and then upload to IoT server via NB-IoT network*.
21
22 The temperature & humidity sensor used in S31-NB 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
24 S31-NB supports different uplink methods include (% style="color:blue" %)**TCP, MQTT, UDP** for different application requirement. and Support Uplinks to various IoT Servers.
25
26 S31-NB is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), It is designed for long term use up to several years. (Real-world battery life depends on the use environment, update period and uplink method. Please check related Power Analyze report).
27
28 *make sure you have NB-IoT coverage locally.
29
30
31 [[image:1692411831805-116.png]]
32
33
34 == 1.2 ​Features ==
35
36
37 * NB-IoT Bands: B1/B2/B3/B4/B5/B8/B12/B13/B17/B18/B19/B20/B25/B28/B66/B70/B85 @H-FDD
38 * Ultra-low power consumption
39 * External 3 meters SHT31 probe (For S31-NB)
40 * Measure range -40°C ~~ 85°C
41 * Temperature & Humidity alarm
42 * Multiply Sampling and one uplink
43 * Support Bluetooth v5.1 remote configure and update firmware
44 * Uplink on periodically
45 * Downlink to change configure
46 * 8500mAh Battery for long term use
47 * Nano SIM card slot for NB-IoT SIM
48
49 == 1.3 Specification ==
50
51
52 (% style="color:#037691" %)**Common DC Characteristics:**
53
54 * Supply Voltage: 2.1v ~~ 3.6v
55 * Operating Temperature: -40 ~~ 85°C
56
57 (% style="color:#037691" %)**Temperature Sensor:**
58
59 * Range: -40 to + 80°C
60 * Accuracy: ±0.2 @ 0-90 °C
61 * Resolution: 0.1°C
62 * Long Term Shift: <0.03 °C/yr
63
64 (% style="color:#037691" %)**Humidity Sensor: **
65
66 * Range: 0 ~~ 99.9% RH
67 * Accuracy: ± 2%RH ( 0 ~~ 100%RH)
68 * Resolution: 0.01% RH
69 * Long Term Shift: <0.25 %RH/yr
70
71 (% style="color:#037691" %)**NB-IoT Spec:**
72
73 **NB-IoT Module: BC660K-GL**
74
75 Support Bands:
76
77 * B1 @H-FDD: 2100MHz
78 * B2 @H-FDD: 1900MHz
79 * B3 @H-FDD: 1800MHz
80 * B4 @H-FDD: 2100MHz
81 * B5 @H-FDD: 860MHz
82 * B8 @H-FDD: 900MHz
83 * B12 @H-FDD: 720MHz
84 * B13 @H-FDD: 740MHz
85 * B17 @H-FDD: 730MHz
86 * B18 @H-FDD: 870MHz
87 * B19 @H-FDD: 870MHz
88 * B20 @H-FDD: 790MHz
89 * B25 @H-FDD: 1900MHz
90 * B28 @H-FDD: 750MHz
91 * B66 @H-FDD: 2000MHz
92 * B70 @H-FDD: 2000MHz
93 * B85 @H-FDD: 700MHz
94
95 (% style="color:#037691" %)**Battery:**
96
97 * Li/SOCI2 un-chargeable battery
98 * Capacity: 8500mAh
99 * Self Discharge: <1% / Year @ 25°C
100 * Max continuously current: 130mA
101 * Max boost current: 2A, 1 second
102
103 (% style="color:#037691" %)**Power Consumption**
104
105 * STOP Mode: 10uA @ 3.3v
106 * Max transmit power: 350mA@3.3v
107
108 == 1.4 Applications ==
109
110
111 * Smart Buildings & Home Automation
112 * Logistics and Supply Chain Management
113 * Smart Metering
114 * Smart Agriculture
115 * Smart Cities
116 * Smart Factory
117
118
119
120 == 1.5 Sleep mode and working mode ==
121
122
123 (% style="color:blue" %)**Deep Sleep Mode: **(%%)Sensor doesn't have any LoRaWAN activate. This mode is used for storage and shipping to save battery life.
124
125 (% style="color:blue" %)**Working Mode:** (%%)In this mode, Sensor will work as LoRaWAN Sensor to Join LoRaWAN network and send out sensor data to server. Between each sampling/tx/rx periodically, sensor will be in IDLE mode), in IDLE mode, sensor has the same power consumption as Deep Sleep mode.
126
127
128
129 == 1.6 Button & LEDs ==
130
131
132 [[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675071855856-879.png]]
133
134
135 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
136 |=(% 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**
137 |(% style="width:167px" %)Pressing ACT between 1s < time < 3s|(% style="width:117px" %)Send an uplink|(% style="width:225px" %)(((
138 If sensor has already attached to NB-IoT network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once.
139 Meanwhile, BLE module will be active and user can connect via BLE to configure device.
140 )))
141 |(% style="width:167px" %)Pressing ACT for more than 3s|(% style="width:117px" %)Active Device|(% style="width:225px" %)(((
142 (% style="color:green" %)**Green led**(%%) will fast blink 5 times, device will enter (% style="color:#037691" %)**OTA mode**(%%) for 3 seconds. And then start to attach NB-IoT network.
143 (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.
144 Once sensor is active, BLE module will be active and user can connect via BLE to configure device, no matter if device attach NB-IoT network or not.
145 )))
146 |(% 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.
147
148 == 1.7 BLE connection ==
149
150
151 S31x-NB support BLE remote configure and firmware update.
152
153
154 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:
155
156 * Press button to send an uplink
157 * Press button to active device.
158 * Device Power on or reset.
159
160 If there is no activity connection on BLE in 60 seconds, sensor will shut down BLE module to enter low power mode.
161
162
163 == 1.8 Pin Definitions & Switch ==
164
165
166 S31x-NB use the mother board from S31-NB which as below.
167
168 [[image:image-20230819104805-5.png]]
169
170
171
172 === 1.8.1 Jumper JP2 ===
173
174
175 Power on Device when put this jumper.
176
177
178 === 1.8.2 BOOT MODE / SW1 ===
179
180
181 1) (% style="color:blue" %)**ISP**(%%): upgrade mode, device won't have any signal in this mode. but ready for upgrade firmware. LED won't work. Firmware won't run.
182
183 2) (% style="color:blue" %)**Flash**(%%): work mode, device starts to work and send out console output for further debug
184
185
186 === 1.8.3 Reset Button ===
187
188
189 Press to reboot the device.
190
191
192
193 == 1.9 Hardware Variant ==
194
195
196 (% border="1" cellspacing="5" style="width:410px" %)
197 |=(% style="width: 102px;background-color:#D9E2F3;color:#0070C0" %)Model|=(% style="width: 126px; background-color: rgb(217, 226, 243); color: rgb(0, 112, 192);" %)Photo|=(% style="width: 179px; background-color: rgb(217, 226, 243); color: rgb(0, 112, 192);" %)Probe Info
198 |(% style="width:102px" %)(((
199 S31-LB
200 )))|(% style="width:126px" %)(((
201 (% style="text-align:center" %)
202 [[image:image-20230819110632-6.png||height="130" width="104"]]
203 )))|(% style="width:179px" %)(((
204 1 x SHT31 Probe
205
206 Cable Length : 3 meters
207
208
209 )))
210 |(% style="width:102px" %)(((
211 S31B-LB
212 )))|(% style="width:126px" %)(((
213 (% style="text-align:center" %)
214 [[image:image-20230819110702-7.png||height="164" width="90"]]
215 )))|(% style="width:179px" %)(((
216 1 x SHT31 Probe
217
218 Installed in device.
219 )))
220
221 (% style="display:none" %)
222
223
224
225
226 = 2. Use S31-NB to communicate with IoT Server =
227
228 == 2.1 Send data to IoT server via NB-IoT network ==
229
230
231 The S31-NB is equipped with a NB-IoT module, the pre-loaded firmware in S31-NB will get environment data from sensors and send the value to local NB-IoT network via the NB-IoT module.  The NB-IoT network will forward this value to IoT server via the protocol defined by S31-NB.
232
233
234 Below shows the network structure:
235
236 [[image:1692415924540-357.png]]
237
238
239 There are two version: (% style="color:blue" %)**-GE**(%%) and (% style="color:blue" %)**-1D**(%%) version of S31-NB.
240
241
242 (% style="color:blue" %)**GE Version**(%%): This version doesn’t include SIM card or point to any IoT server. User needs to use AT Commands to configure below two steps to set S31-NB send data to IoT server.
243
244 1. Install NB-IoT SIM card and configure APN. See instruction of [[Attach Network>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H2.AttachNetwork]].
245
246 1. Set up sensor to point to IoT Server. See instruction of [[Configure to Connect Different Servers>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.Configuretoconnecttodifferentservers]].
247
248 Below shows result of different server as a glance.
249
250
251 |**Servers**|**Dash Board**|**Comments**
252 |[[Node-Red>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.5A0Node-RedA028viaA0MQTT29]]|[[image:image-20230819113244-8.png]]|
253 |[[DataCake>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.4Datacake]]|[[image:image-20230819113244-9.png]]|
254 |[[Tago.IO>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.7A0Tago.ioA028viaA0MQTT29]]| |
255 |[[General UDP>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.1GeneralA0UDPA0Connection]]|Raw Payload. Need Developer to design Dash Board|
256 |[[General MQTT>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.2GeneralA0MQTTA0Connection]]|Raw Payload. Need Developer to design Dash Board|
257 |[[ThingSpeak>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.3A0ThingSpeakA028viaA0MQTT29]]|[[image:image-20230819113244-10.png]]|
258 |[[ThingsBoard>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.6A0ThingsBoard.CloudA028viaA0MQTT29]]|[[image:image-20230819113244-11.png]]|
259 | | |
260
261
262
263 (% style="color:blue" %)**1D Version**(%%): This version has 1NCE SIM card pre-installed and configure to send value to DataCake. User Just need to select the sensor type in DataCake and Activate S31-NB and user will be able to see data in DataCake. See here for [[DataCake Config Instruction>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.4Datacake]].
264
265
266 == 2.2 ​Payload Types ==
267
268
269 To meet different server requirement, S31-NB supports different payload type.
270
271 Includes:
272
273 * [[General JSON format payload>>path:#General_Json]]. (Type=5)
274 * [[HEX format Payload>>path:#HEX_Payload]]. (Type=0)
275 * [[ThingSpeak Format>>path:#ThingSpeak_Payload]]. (Type=1)
276 * [[ThingsBoard Format>>path:#ThingsBoard_Payload]]. (Type=3)
277
278
279 User can specify the payload type when choose the connection protocol. Example:
280
281 (% style="color:#037691" %)**AT+PRO=2,0** (%%) ~/~/Use UDP Connection & hex Payload
282
283 (% style="color:#037691" %)**AT+PRO=2,5** (%%) ~/~/ Use UDP Connection & Json Payload
284
285 (% style="color:#037691" %)**AT+PRO=3,5 ** (%%) ~/~/ Use MQTT Connection & Json Payload
286
287
288 === 2.2.1 General Json Format (Type=5) ===
289
290 This is the General Json Format. As below:
291
292
293 (% style="color:#4472C4" %)**{"IMEI":866207053462762,"temperature":29.2,"humidity":54.2,"battery":3.27,"signal":24,"Model":S31x-NB, "1":{28.2,48.3,2023/08/10 08:00:37},"2":{28.1,49.1,2023/08/10 07:57:37},"3":{28.1,48.5,2023/08/10 07:54:37},"4":{28.2,48.6,2023/08/10 07:51:37},"5":{28.1,48.9,2023/08/10 07:48:37},"6":{28.2,48.8,2023/08/10 07:45:37},"7":{28.2,48.8,2023/08/10 07:42:37},"8":{28.0,48.8,2023/08/10 07:39:37}}**
294
295
296
297 (% style="color:red" %)Notice, from above payload:
298
299 * Temperature , Humidity , Battery & Signal are the value at uplink time.
300
301 * Json entry 1 ~~ 8 are the last 1 ~~ 8 sampling data as specify by (% style="color:#037691" %)**AT+NOUD=8 ** (%%)Command. Each entry includes (from left to right): Temperature, Humidity, Sampling time.
302
303
304
305
306 === 2.2.2 HEX format Payload(Type=0) ===
307
308
309 This is the HEX Format. As below:
310
311 (% style="color:#4472C4" %)**f86620705346276200640cba16010000000011011801e864d49c2d011a01e364d49925011901eb64d49871011901e564d497bd011a01e664d49709011901e964d49655011a01e864d495a1011a01e864d494ed011801e864d49439**
312
313
314 [[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png]]
315
316
317 (% style="color:blue" %)**Version:**
318
319 These bytes include the hardware and software version.
320
321 (% style="color:#037691" %)**Higher byte:**(%%) Specify Sensor Model: 0x00 for S31B-NB & S31-NB
322
323 (% style="color:#037691" %)**Lower byte:**(%%) Specify the software version: 0x64=100, means firmware version 100
324
325
326 (% style="color:#037691" %)**BAT (Battery Info):**
327
328 Ex1: 0x0CBA = 3258mV
329
330
331 (% style="color:blue" %)**Signal Strength:**
332
333 NB-IoT Network signal Strength.
334
335 **Ex1: 0x16 = 22**
336
337 **0**  -113dBm or less
338
339 **1**  -111dBm
340
341 **2...30** -109dBm... -53dBm
342
343 **31**   -51dBm or greater
344
345 **99**    Not known or not detectable
346
347
348 (% style="color:blue" %)**Temperature: **
349
350 If payload is: 0105H:  (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree
351
352 If payload is: FF3FH :  (FF3F & 8000 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
353
354 (FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative)
355
356
357
358 (% style="color:blue" %)**Humidity:   **
359
360 Read:0295(H)=661(D)    Value:  661 / 10=66.1, So 66.1%
361
362
363 (% style="color:blue" %)**TimeStamp:   **
364
365 Unit TimeStamp Example: 64d49439(H) = 1691653177(D)
366
367 Put the decimal value into this link(https:~/~/www.epochconverter.com/) to get the time.
368
369
370 === 2.2.3 ThingsBoard Payload(Type=3) ===
371
372 Type3 payload special design for ThingsBoard, it will also configure other default server to ThingsBoard.
373
374
375 (% style="color:#4472C4" %)**{"IMEI":866207053462762,"temperature":29.2,"humidity":54.2,"battery":3.27,"signal":24}**
376
377
378 === 2.2.4 ThingSpeak Payload(Type=1) ===
379
380 This payload meets ThingSpeak platform requirement. It includes only four fields. Form 1~~4 are:
381
382 Temperature, Humidity, Battery & Signal. This payload type only valid for ThingsSpeak Platform
383
384
385 As below:
386
387 (% style="color:#4472C4" %)**field1=27.9&field2=49.9&field3=3.23&field4=28**
388
389
390 == 2.3 Test Uplink and Change Update Interval ==
391
392
393 By default, Sensor will send uplinks (% style="color:blue" %)**every 2 hours**(%%) & AT+NOUD=8
394
395
396 User can use below commands to change the (% style="color:blue" %)**uplink interval**.
397
398 (% style="color:#037691" %)**~ AT+TDC=600      ** (%%) ~/~/ Set Update Interval to 600s
399
400
401 User can also push the button for more than 1 seconds to activate an uplink.
402
403
404
405
406 == 2.4 Multi-Samplings and One uplink ==
407
408
409 To save battery life, S31-NB will sample temperature & humidity data every 15 minutes and send one uplink every 2 hours. So each uplink it will include 8 stored data + 1 real-time data. They are defined by:
410
411 * (% style="color:#037691" %)**AT+TR=900**   (%%)  ~/~/  The unit is seconds, and the default is to record data once every 900 seconds (15 minutes, the minimum can be set to 180 seconds)
412
413 * (% style="color:#037691" %)**AT+NOUD=8**  (%%)~/~/   The device uploads 8 sets of recorded data by default. Up to 32 sets of record data can be uploaded.
414
415
416 The diagram below explains the relationship between TR, NOUD, and TDC more clearly:
417
418 [[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png||alt="IMG_256"]]
419
420
421 == 2.5 Humidity and Temperature alarm function ==
422
423
424 On each sampling define by AT+TR ( default 900s or 15 minutes), when the value exceed the range, it will trigger an Alarm and immediately sends a uplink.
425
426
427 (% style="color:blue" %)**AT Commands:**
428
429 (% style="color:#037691" %)**AT+ SHHUM=min,max**
430
431 Example: AT+ SHHUM=50,80 ~/~/ Alarm when humidity lower than 50 or higher than 80.
432
433
434 (% style="color:#037691" %)**AT+ SHTEMP=min,max**
435
436 Example: AT+ SHTEMP=20,30 ~/~/ Alarm when temperature lower than 20 or higher than 30
437
438
439 (% style="color:red" %)**Notice:**
440
441 * To disable Alarm, user can set min and max to same value , such as (% style="color:#037691" %)**AT+SHTEMP=0,0.**
442
443 * If user only want to send only min or max, user can set the alarm to a value that device won’t reach. For example: (% style="color:#037691" %)**AT+SHTEMP=-80,0.**
444
445
446
447
448
449
450 == 2.6 Trggier an uplink by external interrupt ==
451
452
453 S31-NB has an external trigger interrupt function. Users can use the PB15 pin to trigger the upload of data packets.
454
455 (% style="color:blue" %)**AT command:**
456
457 * (% style="color:#037691" %)**AT+INTMOD **(%%)  ~/~/ Set the trigger interrupt mode
458
459 * (% style="color:#037691" %)**AT+INTMOD=0 **(%%)   ~/~/Disable Interrupt
460
461 * (% style="color:#037691" %)**AT+INTMOD=1 **(%%)  ~/~/Trigger by rising and falling edge
462
463 * (% style="color:#037691" %)**AT+INTMOD=2 **(%%)  ~/~/Trigger by falling edge
464
465 * (% style="color:#037691" %)**AT+INTMOD=3  **(%%)  ~/~/Trigger by rising edge
466
467
468
469
470
471 = 3. Configure S31x-NB =
472
473 == 3.1 Configure Methods ==
474
475
476 S31x-NB supports below configure method:
477
478 * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
479
480 * 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]].
481
482 * LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
483
484
485
486
487
488 == 3.2 General Commands ==
489
490
491 These commands are to configure:
492
493 * General system settings like: uplink interval.
494 * LoRaWAN protocol & radio related command.
495
496 They are same for all Dragino Devices which support DLWS-005 LoRaWAN Stack. These commands can be found on the wiki:
497
498 [[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/]]
499
500
501 == 3.3 Commands special design for S31x-LB ==
502
503
504 These commands only valid for S31x-LB, as below:
505
506
507 === 3.3.1 Set Transmit Interval Time ===
508
509
510 Feature: Change LoRaWAN End Node Transmit Interval.
511
512 (% style="color:blue" %)**AT Command: AT+TDC**
513
514 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
515 |=(% style="width: 156px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 137px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="background-color:#D9E2F3;color:#0070C0" %)**Response**
516 |(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|(((
517 30000
518 OK
519 the interval is 30000ms = 30s
520 )))
521 |(% style="width:156px" %)AT+TDC=60000|(% style="width:137px" %)Set Transmit Interval|(((
522 OK
523 Set transmit interval to 60000ms = 60 seconds
524 )))
525
526 (% style="color:blue" %)**Downlink Command: 0x01**
527
528 Format: Command Code (0x01) followed by 3 bytes time value.
529
530 If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01.
531
532 * Example 1: Downlink Payload: 0100001E  ~/~/  Set Transmit Interval (TDC) = 30 seconds
533 * Example 2: Downlink Payload: 0100003C  ~/~/  Set Transmit Interval (TDC) = 60 seconds
534
535 === 3.3.2 Get Device Status ===
536
537
538 Send a LoRaWAN downlink to ask device send Alarm settings.
539
540 (% style="color:blue" %)**Downlink Payload:  **(%%)0x26 01
541
542 Sensor will upload Device Status via FPORT=5. See payload section for detail.
543
544
545 === 3.3.3 Set Temperature Alarm Threshold ===
546
547
548 * (% style="color:blue" %)**AT Command:**
549
550 (% style="color:#037691" %)**AT+SHTEMP=min,max**
551
552 * When min=0, and max≠0, Alarm higher than max
553 * When min≠0, and max=0, Alarm lower than min
554 * When min≠0 and max≠0, Alarm higher than max or lower than min
555
556 Example:
557
558 AT+SHTEMP=0,30   ~/~/ Alarm when temperature higher than 30.
559
560 * (% style="color:blue" %)**Downlink Payload:**
561
562 (% style="color:#037691" %)**0x(0C 01 00 1E)**  (%%) ~/~/ Set AT+SHTEMP=0,30
563
564 (% style="color:red" %)**(note: 3^^rd^^ byte= 0x00 for low limit(not set), 4^^th^^ byte = 0x1E for high limit: 30)**
565
566
567 === 3.3.4 Set Humidity Alarm Threshold ===
568
569
570 * (% style="color:blue" %)**AT Command:**
571
572 (% style="color:#037691" %)**AT+SHHUM=min,max**
573
574 * When min=0, and max≠0, Alarm higher than max
575 * When min≠0, and max=0, Alarm lower than min
576 * When min≠0 and max≠0, Alarm higher than max or lower than min
577
578 Example:
579
580 AT+SHHUM=70,0  ~/~/ Alarm when humidity lower than 70%.
581
582 * (% style="color:blue" %)**Downlink Payload:**
583
584 (% style="color:#037691" %)**0x(0C 02 46 00)**(%%)  ~/~/ Set AT+SHTHUM=70,0
585
586 (% style="color:red" %)**(note: 3^^rd^^ byte= 0x46 for low limit (70%), 4^^th^^ byte = 0x00 for high limit (not set))**
587
588
589 === 3.3.5 Set Alarm Interval ===
590
591
592 The shortest time of two Alarm packet. (unit: min)
593
594 * (% style="color:blue" %)**AT Command:**
595
596 (% 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.
597
598 * (% style="color:blue" %)**Downlink Payload:**
599
600 (% style="color:#037691" %)**0x(0D 00 1E)**(%%)     **~-~--> ** Set AT+ATDC=0x 00 1E = 30 minutes
601
602
603 === 3.3.6 Get Alarm settings ===
604
605
606 Send a LoRaWAN downlink to ask device send Alarm settings.
607
608 * (% style="color:#037691" %)**Downlink Payload:  **(%%)0x0E 01
609
610 **Example:**
611
612 [[image:image-20230524110211-4.png]]
613
614 **Explain:**
615
616 * Alarm & MOD bit is 0x7C, 0x7C >> 2 = 0x31: Means this message is the Alarm settings message.
617
618 === 3.3.7 Set Interrupt Mode ===
619
620
621 Feature, Set Interrupt mode for PA8 of pin.
622
623 When AT+INTMOD=0 is set, PA8 is used as a digital input port.
624
625 (% style="color:blue" %)**AT Command: AT+INTMOD**
626
627 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
628 |=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 197px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 158px;background-color:#D9E2F3;color:#0070C0" %)**Response**
629 |(% style="width:154px" %)AT+INTMOD=?|(% style="width:196px" %)Show current interrupt mode|(% style="width:157px" %)(((
630 0
631 OK
632 the mode is 0 =Disable Interrupt
633 )))
634 |(% style="width:154px" %)AT+INTMOD=2|(% style="width:196px" %)(((
635 Set Transmit Interval
636 0. (Disable Interrupt),
637 ~1. (Trigger by rising and falling edge)
638 2. (Trigger by falling edge)
639 3. (Trigger by rising edge)
640 )))|(% style="width:157px" %)OK
641
642 (% style="color:blue" %)**Downlink Command: 0x06**
643
644 Format: Command Code (0x06) followed by 3 bytes.
645
646 This means that the interrupt mode of the end node is set to 0x000003=3 (rising edge trigger), and the type code is 06.
647
648 * Example 1: Downlink Payload: 06000000  ~/~/  Turn off interrupt mode
649 * Example 2: Downlink Payload: 06000003  ~/~/  Set the interrupt mode to rising edge trigger
650
651 === 3.3.8 Set Power Output Duration ===
652
653
654 Control the output duration 5V . Before each sampling, device will
655
656 ~1. first enable the power output to external sensor,
657
658 2. keep it on as per duration, read sensor value and construct uplink payload
659
660 3. final, close the power output.
661
662 (% style="color:blue" %)**AT Command: AT+5VT**
663
664 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
665 |=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 197px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 158px;background-color:#D9E2F3;color:#0070C0" %)**Response**
666 |(% style="width:154px" %)AT+5VT=?|(% style="width:196px" %)Show 5V open time.|(% style="width:157px" %)0 (default)
667 OK
668 |(% style="width:154px" %)AT+5VT=1000|(% style="width:196px" %)Close after a delay of 1000 milliseconds.|(% style="width:157px" %)OK
669
670 (% style="color:blue" %)**Downlink Command: 0x07**
671
672 Format: Command Code (0x07) followed by 2 bytes.
673
674 The first and second bytes are the time to turn on.
675
676 * Example 1: Downlink Payload: 070000  **~-~-->**  AT+5VT=0
677 * Example 2: Downlink Payload: 0701F4  **~-~-->**  AT+5VT=500
678
679 = 4. Battery & Power Consumption =
680
681
682 S31x-LB use ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
683
684 [[**Battery Info & Power Consumption Analyze**>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
685
686
687 = 5. OTA Firmware update =
688
689
690 (% class="wikigeneratedid" %)
691 User can change firmware S31x-LB to:
692
693 * Change Frequency band/ region.
694 * Update with new features.
695 * Fix bugs.
696
697 Firmware and changelog can be downloaded from : **[[Firmware download link>>https://www.dropbox.com/sh/fis3g6nmhv0eokg/AAC6BcCZaX4BdqZkduUvZ3jIa?dl=0]]**
698
699
700 Methods to Update Firmware:
701
702 * (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/]]**
703 * 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]]**.
704
705 = 6. FAQ =
706
707
708
709 = 7. Order Info =
710
711
712 Part Number: (% style="color:blue" %)**S31-LB-XX  / S31B-LB-XX**
713
714 (% style="color:red" %)**XX**(%%): The default frequency band
715
716 * (% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band
717
718 * (% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band
719
720 * (% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band
721
722 * (% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band
723
724 * (% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band
725
726 * (% style="color:red" %)**US915**(%%): LoRaWAN US915 band
727
728 * (% style="color:red" %)**IN865**(%%): LoRaWAN IN865 band
729
730 * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
731
732 = 8. ​Packing Info =
733
734
735 (% style="color:#037691" %)**Package Includes**:
736
737 * S31x-LB LoRaWAN Temperature & Humidity Sensor
738
739 (% style="color:#037691" %)**Dimension and weight**:
740
741 * Device Size: cm
742
743 * Device Weight: g
744
745 * Package Size / pcs : cm
746
747 * Weight / pcs : g
748
749 = 9. Support =
750
751
752 * 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.
753
754 * 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]].
755
756 (% style="display:none" %) (%%)