Version 80.12 by Xiaoling on 2023/08/19 13:45

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 == 1.5 Sleep mode and working mode ==
120
121
122 (% 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.
123
124 (% 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.
125
126
127
128 == 1.6 Button & LEDs ==
129
130
131 [[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675071855856-879.png]]
132
133
134 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
135 |=(% style="width: 167px;background-color:#4F81BD;color:white" %)**Behavior on ACT**|=(% style="width: 117px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width:225px;background-color:#4F81BD;color:white" %)**Action**
136 |(% style="width:167px" %)Pressing ACT between 1s < time < 3s|(% style="width:117px" %)Send an uplink|(% style="width:225px" %)(((
137 If sensor has already attached to NB-IoT network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once.
138 Meanwhile, BLE module will be active and user can connect via BLE to configure device.
139 )))
140 |(% style="width:167px" %)Pressing ACT for more than 3s|(% style="width:117px" %)Active Device|(% style="width:225px" %)(((
141 (% 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.
142 (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.
143 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.
144 )))
145 |(% 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.
146
147 == 1.7 BLE connection ==
148
149
150 S31x-NB support BLE remote configure and firmware update.
151
152
153 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:
154
155 * Press button to send an uplink
156 * Press button to active device.
157 * Device Power on or reset.
158
159 If there is no activity connection on BLE in 60 seconds, sensor will shut down BLE module to enter low power mode.
160
161
162 == 1.8 Pin Definitions & Switch ==
163
164
165 S31x-NB use the mother board from S31-NB which as below.
166
167 [[image:image-20230819104805-5.png]]
168
169
170
171 === 1.8.1 Jumper JP2 ===
172
173
174 Power on Device when put this jumper.
175
176
177 === 1.8.2 BOOT MODE / SW1 ===
178
179
180 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.
181
182 2) (% style="color:blue" %)**Flash**(%%): work mode, device starts to work and send out console output for further debug
183
184
185 === 1.8.3 Reset Button ===
186
187
188 Press to reboot the device.
189
190
191
192 == 1.9 Hardware Variant ==
193
194
195 (% border="1" cellspacing="5" style="width:410px" %)
196 |=(% style="width: 102px;background-color:#4F81BD;color:white" %)Model|=(% style="width: 126px; background-color:#4F81BD;color:white" %)Photo|=(% style="width: 179px;background-color:#4F81BD;color:white" %)Probe Info
197 |(% style="width:102px" %)(((
198 S31-LB
199 )))|(% style="width:126px" %)(((
200 (% style="text-align:center" %)
201 [[image:image-20230819110632-6.png||height="130" width="104"]]
202 )))|(% style="width:179px" %)(((
203 1 x SHT31 Probe
204
205 Cable Length : 3 meters
206
207
208 )))
209 |(% style="width:102px" %)(((
210 S31B-LB
211 )))|(% style="width:126px" %)(((
212 (% style="text-align:center" %)
213 [[image:image-20230819110702-7.png||height="164" width="90"]]
214 )))|(% style="width:179px" %)(((
215 1 x SHT31 Probe
216
217 Installed in device.
218 )))
219
220 (% style="display:none" %)
221
222
223
224
225 = 2. Use S31-NB to communicate with IoT Server =
226
227 == 2.1 Send data to IoT server via NB-IoT network ==
228
229
230 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.
231
232
233 Below shows the network structure:
234
235 [[image:1692415924540-357.png]]
236
237
238 There are two version: (% style="color:blue" %)**-GE**(%%) and (% style="color:blue" %)**-1D**(%%) version of S31-NB.
239
240
241 (% 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.
242
243 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]].
244
245 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]]. 
246
247 Below shows result of different server as a glance.
248
249
250 (% border="1" cellspacing="4" style="width:515px" %)
251 |(% style="width:100px;background-color:#4F81BD;color:white" %)**Servers**|(% style="width:300px;background-color:#4F81BD;color:white" %)**Dash Board**|(% style="width:115px;background-color:#4F81BD;color:white" %)**Comments**
252 |(% style="width:127px" %)[[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]]|(% style="width:385px" %)[[image:image-20230819113244-8.png||height="183" width="367"]]|(% style="width:170px" %)
253 |(% style="width:127px" %)[[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]]|(% style="width:385px" %)[[image:image-20230819113244-9.png||height="120" width="369"]]|(% style="width:170px" %)
254 |(% style="width:127px" %)[[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]]|(% style="width:385px" %) |(% style="width:170px" %)
255 |(% style="width:127px" %)[[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]]|(% style="width:385px" %)Raw Payload. Need Developer to design Dash Board|(% style="width:170px" %)
256 |(% style="width:127px" %)[[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]]|(% style="width:385px" %)Raw Payload. Need Developer to design Dash Board|(% style="width:170px" %)
257 |(% style="width:127px" %)[[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]]|(% style="width:385px" %)[[image:image-20230819113244-10.png||height="82" width="291"]]|(% style="width:170px" %)
258 |(% style="width:127px" %)[[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]]|(% style="width:385px" %)[[image:image-20230819113244-11.png||height="113" width="293"]]|(% style="width:170px" %)
259 |(% style="width:127px" %) |(% style="width:385px" %) |(% style="width:170px" %)
260
261
262 (% 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]].
263
264
265 == 2.2 ​Payload Types ==
266
267
268 To meet different server requirement, S31-NB supports different payload type.
269
270 Includes:
271
272 * [[General JSON format payload>>path:#General_Json]]. (Type=5)
273
274 * [[HEX format Payload>>path:#HEX_Payload]]. (Type=0)
275
276 * [[ThingSpeak Format>>path:#ThingSpeak_Payload]]. (Type=1)
277
278 * [[ThingsBoard Format>>path:#ThingsBoard_Payload]]. (Type=3)
279
280 User can specify the payload type when choose the connection protocol. Example:
281
282 (% style="color:#037691" %)**AT+PRO=2,0**  (%%) ~/~/Use UDP Connection & hex Payload
283
284 (% style="color:#037691" %)**AT+PRO=2,5**   (%%) ~/~/ Use UDP Connection & Json Payload
285
286 (% style="color:#037691" %)**AT+PRO=3,5 ** (%%) ~/~/ Use MQTT Connection & Json Payload
287
288
289 === 2.2.1 General Json Format (Type=5) ===
290
291
292 This is the General Json Format. As below:
293
294
295 (% 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}}**
296
297
298
299 (% style="color:red" %)Notice, from above payload:
300
301 * Temperature , Humidity , Battery & Signal are the value at uplink time.
302
303 * 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.
304
305
306
307 === 2.2.2 HEX format Payload(Type=0) ===
308
309
310 This is the HEX Format. As below:
311
312 (% style="color:#4472c4" %)**f86620705346276200640cba16010000000011011801e864d49c2d011a01e364d49925011901eb64d49871011901e564d497bd011a01e664d49709011901e964d49655011a01e864d495a1011a01e864d494ed011801e864d49439**
313
314
315 [[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png]]
316
317
318 (% style="color:blue" %)**Version:**
319
320 These bytes include the hardware and software version.
321
322 (% style="color:#037691" %)**Higher byte:**(%%) Specify Sensor Model: 0x00 for S31B-NB & S31-NB
323
324 (% style="color:#037691" %)**Lower byte:**(%%) Specify the software version: 0x64=100, means firmware version 100
325
326
327 (% style="color:#037691" %)**BAT (Battery Info):**
328
329 Ex1: 0x0CBA = 3258mV
330
331
332 (% style="color:blue" %)**Signal Strength:**
333
334 NB-IoT Network signal Strength.
335
336 **Ex1: 0x16 = 22**
337
338 **0**  -113dBm or less
339
340 **1**  -111dBm
341
342 **2...30** -109dBm... -53dBm
343
344 **31**   -51dBm or greater
345
346 **99**    Not known or not detectable
347
348
349 (% style="color:blue" %)**Temperature: **
350
351 If payload is: 0105H:  (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree
352
353 If payload is: FF3FH :  (FF3F & 8000 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
354
355 (FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative)
356
357
358
359 (% style="color:blue" %)**Humidity:   **
360
361 Read:0295(H)=661(D)    Value:  661 / 10=66.1, So 66.1%
362
363
364 (% style="color:blue" %)**TimeStamp:   **
365
366 Unit TimeStamp Example: 64d49439(H) = 1691653177(D)
367
368 Put the decimal value into this link(https:~/~/www.epochconverter.com/) to get the time.
369
370
371 === 2.2.3 ThingsBoard Payload(Type=3) ===
372
373
374 Type3 payload special design for ThingsBoard, it will also configure other default server to ThingsBoard.
375
376
377 (% style="color:#4472c4" %)**{"IMEI":866207053462762,"temperature":29.2,"humidity":54.2,"battery":3.27,"signal":24}**
378
379
380 === 2.2.4 ThingSpeak Payload(Type=1) ===
381
382
383 This payload meets ThingSpeak platform requirement. It includes only four fields. Form 1~~4 are:
384
385 Temperature, Humidity, Battery & Signal. This payload type only valid for ThingsSpeak Platform
386
387
388 As below:
389
390 (% style="color:#4472c4" %)**field1=27.9&field2=49.9&field3=3.23&field4=28**
391
392
393 == 2.3 Test Uplink and Change Update Interval ==
394
395
396 By default, Sensor will send uplinks (% style="color:blue" %)**every 2 hours**(%%) & AT+NOUD=8
397
398
399 User can use below commands to change the (% style="color:blue" %)**uplink interval**.
400
401 (% style="color:#037691" %)** AT+TDC=600      ** (%%) ~/~/ Set Update Interval to 600s
402
403
404 User can also push the button for more than 1 seconds to activate an uplink.
405
406
407
408
409 == 2.4 Multi-Samplings and One uplink ==
410
411
412 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:
413
414 * (% 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)
415
416 * (% 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.
417
418 The diagram below explains the relationship between TR, NOUD, and TDC more clearly:
419
420 [[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png||alt="IMG_256"]]
421
422
423 == 2.5 Humidity and Temperature alarm function ==
424
425
426 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.
427
428
429 (% style="color:blue" %)**AT Commands:**
430
431 (% style="color:#037691" %)**AT+ SHHUM=min,max**
432
433 Example: AT+ SHHUM=50,80 ~/~/ Alarm when humidity lower than 50 or higher than 80.
434
435
436 (% style="color:#037691" %)**AT+ SHTEMP=min,max**
437
438 Example: AT+ SHTEMP=20,30 ~/~/ Alarm when temperature lower than 20 or higher than 30
439
440
441 (% style="color:red" %)**Notice:**
442
443 * To disable Alarm, user can set min and max to same value , such as (% style="color:#037691" %)**AT+SHTEMP=0,0.**
444
445 * 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.**
446
447
448
449
450
451 == 2.6 Trggier an uplink by external interrupt ==
452
453
454 S31-NB has an external trigger interrupt function. Users can use the PB15 pin to trigger the upload of data packets.
455
456 (% style="color:blue" %)**AT command:**
457
458 * (% style="color:#037691" %)**AT+INTMOD **(%%) ~/~/ Set the trigger interrupt mode
459
460 * (% style="color:#037691" %)**AT+INTMOD=0 **(%%) ~/~/Disable Interrupt
461
462 * (% style="color:#037691" %)**AT+INTMOD=1 **(%%) ~/~/Trigger by rising and falling edge
463
464 * (% style="color:#037691" %)**AT+INTMOD=2 **(%%) ~/~/Trigger by falling edge
465
466 * (% style="color:#037691" %)**AT+INTMOD=3  **(%%) ~/~/Trigger by rising edge
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 == 3.2 General Commands ==
488
489
490 These commands are to configure:
491
492 * General system settings like: uplink interval.
493 * LoRaWAN protocol & radio related command.
494
495 They are same for all Dragino Devices which support DLWS-005 LoRaWAN Stack. These commands can be found on the wiki:
496
497 [[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/]]
498
499
500 == 3.3 Commands special design for S31x-LB ==
501
502
503 These commands only valid for S31x-LB, as below:
504
505
506 === 3.3.1 Set Transmit Interval Time ===
507
508
509 Feature: Change LoRaWAN End Node Transmit Interval.
510
511 (% style="color:blue" %)**AT Command: AT+TDC**
512
513 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
514 |=(% 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**
515 |(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|(((
516 30000
517 OK
518 the interval is 30000ms = 30s
519 )))
520 |(% style="width:156px" %)AT+TDC=60000|(% style="width:137px" %)Set Transmit Interval|(((
521 OK
522 Set transmit interval to 60000ms = 60 seconds
523 )))
524
525 (% style="color:blue" %)**Downlink Command: 0x01**
526
527 Format: Command Code (0x01) followed by 3 bytes time value.
528
529 If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01.
530
531 * Example 1: Downlink Payload: 0100001E  ~/~/  Set Transmit Interval (TDC) = 30 seconds
532 * Example 2: Downlink Payload: 0100003C  ~/~/  Set Transmit Interval (TDC) = 60 seconds
533
534 === 3.3.2 Get Device Status ===
535
536
537 Send a LoRaWAN downlink to ask device send Alarm settings.
538
539 (% style="color:blue" %)**Downlink Payload:  **(%%)0x26 01
540
541 Sensor will upload Device Status via FPORT=5. See payload section for detail.
542
543
544 === 3.3.3 Set Temperature Alarm Threshold ===
545
546
547 * (% style="color:blue" %)**AT Command:**
548
549 (% style="color:#037691" %)**AT+SHTEMP=min,max**
550
551 * When min=0, and max≠0, Alarm higher than max
552 * When min≠0, and max=0, Alarm lower than min
553 * When min≠0 and max≠0, Alarm higher than max or lower than min
554
555 Example:
556
557 AT+SHTEMP=0,30   ~/~/ Alarm when temperature higher than 30.
558
559 * (% style="color:blue" %)**Downlink Payload:**
560
561 (% style="color:#037691" %)**0x(0C 01 00 1E)**  (%%) ~/~/ Set AT+SHTEMP=0,30
562
563 (% style="color:red" %)**(note: 3^^rd^^ byte= 0x00 for low limit(not set), 4^^th^^ byte = 0x1E for high limit: 30)**
564
565
566 === 3.3.4 Set Humidity Alarm Threshold ===
567
568
569 * (% style="color:blue" %)**AT Command:**
570
571 (% style="color:#037691" %)**AT+SHHUM=min,max**
572
573 * When min=0, and max≠0, Alarm higher than max
574 * When min≠0, and max=0, Alarm lower than min
575 * When min≠0 and max≠0, Alarm higher than max or lower than min
576
577 Example:
578
579 AT+SHHUM=70,0  ~/~/ Alarm when humidity lower than 70%.
580
581 * (% style="color:blue" %)**Downlink Payload:**
582
583 (% style="color:#037691" %)**0x(0C 02 46 00)**(%%)  ~/~/ Set AT+SHTHUM=70,0
584
585 (% style="color:red" %)**(note: 3^^rd^^ byte= 0x46 for low limit (70%), 4^^th^^ byte = 0x00 for high limit (not set))**
586
587
588 === 3.3.5 Set Alarm Interval ===
589
590
591 The shortest time of two Alarm packet. (unit: min)
592
593 * (% style="color:blue" %)**AT Command:**
594
595 (% 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.
596
597 * (% style="color:blue" %)**Downlink Payload:**
598
599 (% style="color:#037691" %)**0x(0D 00 1E)**(%%)     **~-~--> ** Set AT+ATDC=0x 00 1E = 30 minutes
600
601
602 === 3.3.6 Get Alarm settings ===
603
604
605 Send a LoRaWAN downlink to ask device send Alarm settings.
606
607 * (% style="color:#037691" %)**Downlink Payload:  **(%%)0x0E 01
608
609 **Example:**
610
611 [[image:image-20230524110211-4.png]]
612
613 **Explain:**
614
615 * Alarm & MOD bit is 0x7C, 0x7C >> 2 = 0x31: Means this message is the Alarm settings message.
616
617 === 3.3.7 Set Interrupt Mode ===
618
619
620 Feature, Set Interrupt mode for PA8 of pin.
621
622 When AT+INTMOD=0 is set, PA8 is used as a digital input port.
623
624 (% style="color:blue" %)**AT Command: AT+INTMOD**
625
626 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
627 |=(% 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**
628 |(% style="width:154px" %)AT+INTMOD=?|(% style="width:196px" %)Show current interrupt mode|(% style="width:157px" %)(((
629 0
630 OK
631 the mode is 0 =Disable Interrupt
632 )))
633 |(% style="width:154px" %)AT+INTMOD=2|(% style="width:196px" %)(((
634 Set Transmit Interval
635 0. (Disable Interrupt),
636 ~1. (Trigger by rising and falling edge)
637 2. (Trigger by falling edge)
638 3. (Trigger by rising edge)
639 )))|(% style="width:157px" %)OK
640
641 (% style="color:blue" %)**Downlink Command: 0x06**
642
643 Format: Command Code (0x06) followed by 3 bytes.
644
645 This means that the interrupt mode of the end node is set to 0x000003=3 (rising edge trigger), and the type code is 06.
646
647 * Example 1: Downlink Payload: 06000000  ~/~/  Turn off interrupt mode
648 * Example 2: Downlink Payload: 06000003  ~/~/  Set the interrupt mode to rising edge trigger
649
650 === 3.3.8 Set Power Output Duration ===
651
652
653 Control the output duration 5V . Before each sampling, device will
654
655 ~1. first enable the power output to external sensor,
656
657 2. keep it on as per duration, read sensor value and construct uplink payload
658
659 3. final, close the power output.
660
661 (% style="color:blue" %)**AT Command: AT+5VT**
662
663 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
664 |=(% 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**
665 |(% style="width:154px" %)AT+5VT=?|(% style="width:196px" %)Show 5V open time.|(% style="width:157px" %)0 (default)
666 OK
667 |(% style="width:154px" %)AT+5VT=1000|(% style="width:196px" %)Close after a delay of 1000 milliseconds.|(% style="width:157px" %)OK
668
669 (% style="color:blue" %)**Downlink Command: 0x07**
670
671 Format: Command Code (0x07) followed by 2 bytes.
672
673 The first and second bytes are the time to turn on.
674
675 * Example 1: Downlink Payload: 070000  **~-~-->**  AT+5VT=0
676 * Example 2: Downlink Payload: 0701F4  **~-~-->**  AT+5VT=500
677
678 = 4. Battery & Power Consumption =
679
680
681 S31x-LB use ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
682
683 [[**Battery Info & Power Consumption Analyze**>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
684
685
686 = 5. OTA Firmware update =
687
688
689 (% class="wikigeneratedid" %)
690 User can change firmware S31x-LB to:
691
692 * Change Frequency band/ region.
693 * Update with new features.
694 * Fix bugs.
695
696 Firmware and changelog can be downloaded from : **[[Firmware download link>>https://www.dropbox.com/sh/fis3g6nmhv0eokg/AAC6BcCZaX4BdqZkduUvZ3jIa?dl=0]]**
697
698
699 Methods to Update Firmware:
700
701 * (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/]]**
702 * 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]]**.
703
704 = 6. FAQ =
705
706
707
708 = 7. Order Info =
709
710
711 Part Number: (% style="color:blue" %)**S31-LB-XX  / S31B-LB-XX**
712
713 (% style="color:red" %)**XX**(%%): The default frequency band
714
715 * (% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band
716
717 * (% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band
718
719 * (% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band
720
721 * (% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band
722
723 * (% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band
724
725 * (% style="color:red" %)**US915**(%%): LoRaWAN US915 band
726
727 * (% style="color:red" %)**IN865**(%%): LoRaWAN IN865 band
728
729 * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
730
731 = 8. ​Packing Info =
732
733
734 (% style="color:#037691" %)**Package Includes**:
735
736 * S31x-LB LoRaWAN Temperature & Humidity Sensor
737
738 (% style="color:#037691" %)**Dimension and weight**:
739
740 * Device Size: cm
741
742 * Device Weight: g
743
744 * Package Size / pcs : cm
745
746 * Weight / pcs : g
747
748 = 9. Support =
749
750
751 * 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.
752
753 * 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]].
754
755
756 (% style="display:none" %) (%%)