Version 80.11 by Xiaoling on 2023/08/19 13:42

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 ===
290
291 5) ===
292
293 This is the General Json Format. As below:
294
295
296 (% 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}}**
297
298
299
300 (% style="color:red" %)Notice, from above payload:
301
302 * Temperature , Humidity , Battery & Signal are the value at uplink time.
303
304 * 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.
305
306
307
308 === 2.2.2 HEX format Payload(Type ===
309
310 0) ===
311
312
313 This is the HEX Format. As below:
314
315 (% style="color:#4472c4" %)**f86620705346276200640cba16010000000011011801e864d49c2d011a01e364d49925011901eb64d49871011901e564d497bd011a01e664d49709011901e964d49655011a01e864d495a1011a01e864d494ed011801e864d49439**
316
317
318 [[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png]]
319
320
321 (% style="color:blue" %)**Version:**
322
323 These bytes include the hardware and software version.
324
325 (% style="color:#037691" %)**Higher byte:**(%%) Specify Sensor Model: 0x00 for S31B-NB & S31-NB
326
327 (% style="color:#037691" %)**Lower byte:**(%%) Specify the software version: 0x64=100, means firmware version 100
328
329
330 (% style="color:#037691" %)**BAT (Battery Info):**
331
332 Ex1: 0x0CBA = 3258mV
333
334
335 (% style="color:blue" %)**Signal Strength:**
336
337 NB-IoT Network signal Strength.
338
339 **Ex1: 0x16 = 22**
340
341 **0**  -113dBm or less
342
343 **1**  -111dBm
344
345 **2...30** -109dBm... -53dBm
346
347 **31**   -51dBm or greater
348
349 **99**    Not known or not detectable
350
351
352 (% style="color:blue" %)**Temperature: **
353
354 If payload is: 0105H:  (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree
355
356 If payload is: FF3FH :  (FF3F & 8000 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
357
358 (FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative)
359
360
361
362 (% style="color:blue" %)**Humidity:   **
363
364 Read:0295(H)=661(D)    Value:  661 / 10=66.1, So 66.1%
365
366
367 (% style="color:blue" %)**TimeStamp:   **
368
369 Unit TimeStamp Example: 64d49439(H) = 1691653177(D)
370
371 Put the decimal value into this link(https:~/~/www.epochconverter.com/) to get the time.
372
373
374 === 2.2.3 ThingsBoard Payload(Type ===
375
376 3) ===
377
378 Type3 payload special design for ThingsBoard, it will also configure other default server to ThingsBoard.
379
380
381 (% style="color:#4472c4" %)**{"IMEI":866207053462762,"temperature":29.2,"humidity":54.2,"battery":3.27,"signal":24}**
382
383
384 === 2.2.4 ThingSpeak Payload(Type ===
385
386 1) ===
387
388 This payload meets ThingSpeak platform requirement. It includes only four fields. Form 1~~4 are:
389
390 Temperature, Humidity, Battery & Signal. This payload type only valid for ThingsSpeak Platform
391
392
393 As below:
394
395 (% style="color:#4472c4" %)**field1=27.9&field2=49.9&field3=3.23&field4=28**
396
397
398 == 2.3 Test Uplink and Change Update Interval ==
399
400
401 By default, Sensor will send uplinks (% style="color:blue" %)**every 2 hours**(%%) & AT+NOUD=8
402
403
404 User can use below commands to change the (% style="color:blue" %)**uplink interval**.
405
406 (% style="color:#037691" %)** AT+TDC=600      ** (%%) ~/~/ Set Update Interval to 600s
407
408
409 User can also push the button for more than 1 seconds to activate an uplink.
410
411
412
413
414 == 2.4 Multi-Samplings and One uplink ==
415
416
417 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:
418
419 * (% 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)
420
421 * (% 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.
422
423 The diagram below explains the relationship between TR, NOUD, and TDC more clearly:
424
425 [[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png||alt="IMG_256"]]
426
427
428 == 2.5 Humidity and Temperature alarm function ==
429
430
431 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.
432
433
434 (% style="color:blue" %)**AT Commands:**
435
436 (% style="color:#037691" %)**AT+ SHHUM=min,max**
437
438 Example: AT+ SHHUM=50,80 ~/~/ Alarm when humidity lower than 50 or higher than 80.
439
440
441 (% style="color:#037691" %)**AT+ SHTEMP=min,max**
442
443 Example: AT+ SHTEMP=20,30 ~/~/ Alarm when temperature lower than 20 or higher than 30
444
445
446 (% style="color:red" %)**Notice:**
447
448 * To disable Alarm, user can set min and max to same value , such as (% style="color:#037691" %)**AT+SHTEMP=0,0.**
449
450 * 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.**
451
452
453
454
455
456 == 2.6 Trggier an uplink by external interrupt ==
457
458
459 S31-NB has an external trigger interrupt function. Users can use the PB15 pin to trigger the upload of data packets.
460
461 (% style="color:blue" %)**AT command:**
462
463 * (% style="color:#037691" %)**AT+INTMOD **(%%) ~/~/ Set the trigger interrupt mode
464
465 * (% style="color:#037691" %)**AT+INTMOD=0 **(%%) ~/~/Disable Interrupt
466
467 * (% style="color:#037691" %)**AT+INTMOD=1 **(%%) ~/~/Trigger by rising and falling edge
468
469 * (% style="color:#037691" %)**AT+INTMOD=2 **(%%) ~/~/Trigger by falling edge
470
471 * (% style="color:#037691" %)**AT+INTMOD=3  **(%%) ~/~/Trigger by rising edge
472
473
474
475
476 = 3. Configure S31x-NB =
477
478 == 3.1 Configure Methods ==
479
480
481 S31x-NB supports below configure method:
482
483 * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
484
485 * 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]].
486
487 * LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
488
489
490
491
492 == 3.2 General Commands ==
493
494
495 These commands are to configure:
496
497 * General system settings like: uplink interval.
498 * LoRaWAN protocol & radio related command.
499
500 They are same for all Dragino Devices which support DLWS-005 LoRaWAN Stack. These commands can be found on the wiki:
501
502 [[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/]]
503
504
505 == 3.3 Commands special design for S31x-LB ==
506
507
508 These commands only valid for S31x-LB, as below:
509
510
511 === 3.3.1 Set Transmit Interval Time ===
512
513
514 Feature: Change LoRaWAN End Node Transmit Interval.
515
516 (% style="color:blue" %)**AT Command: AT+TDC**
517
518 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
519 |=(% 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**
520 |(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|(((
521 30000
522 OK
523 the interval is 30000ms = 30s
524 )))
525 |(% style="width:156px" %)AT+TDC=60000|(% style="width:137px" %)Set Transmit Interval|(((
526 OK
527 Set transmit interval to 60000ms = 60 seconds
528 )))
529
530 (% style="color:blue" %)**Downlink Command: 0x01**
531
532 Format: Command Code (0x01) followed by 3 bytes time value.
533
534 If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01.
535
536 * Example 1: Downlink Payload: 0100001E  ~/~/  Set Transmit Interval (TDC) = 30 seconds
537 * Example 2: Downlink Payload: 0100003C  ~/~/  Set Transmit Interval (TDC) = 60 seconds
538
539 === 3.3.2 Get Device Status ===
540
541
542 Send a LoRaWAN downlink to ask device send Alarm settings.
543
544 (% style="color:blue" %)**Downlink Payload:  **(%%)0x26 01
545
546 Sensor will upload Device Status via FPORT=5. See payload section for detail.
547
548
549 === 3.3.3 Set Temperature Alarm Threshold ===
550
551
552 * (% style="color:blue" %)**AT Command:**
553
554 (% style="color:#037691" %)**AT+SHTEMP=min,max**
555
556 * When min=0, and max≠0, Alarm higher than max
557 * When min≠0, and max=0, Alarm lower than min
558 * When min≠0 and max≠0, Alarm higher than max or lower than min
559
560 Example:
561
562 AT+SHTEMP=0,30   ~/~/ Alarm when temperature higher than 30.
563
564 * (% style="color:blue" %)**Downlink Payload:**
565
566 (% style="color:#037691" %)**0x(0C 01 00 1E)**  (%%) ~/~/ Set AT+SHTEMP=0,30
567
568 (% style="color:red" %)**(note: 3^^rd^^ byte= 0x00 for low limit(not set), 4^^th^^ byte = 0x1E for high limit: 30)**
569
570
571 === 3.3.4 Set Humidity Alarm Threshold ===
572
573
574 * (% style="color:blue" %)**AT Command:**
575
576 (% style="color:#037691" %)**AT+SHHUM=min,max**
577
578 * When min=0, and max≠0, Alarm higher than max
579 * When min≠0, and max=0, Alarm lower than min
580 * When min≠0 and max≠0, Alarm higher than max or lower than min
581
582 Example:
583
584 AT+SHHUM=70,0  ~/~/ Alarm when humidity lower than 70%.
585
586 * (% style="color:blue" %)**Downlink Payload:**
587
588 (% style="color:#037691" %)**0x(0C 02 46 00)**(%%)  ~/~/ Set AT+SHTHUM=70,0
589
590 (% style="color:red" %)**(note: 3^^rd^^ byte= 0x46 for low limit (70%), 4^^th^^ byte = 0x00 for high limit (not set))**
591
592
593 === 3.3.5 Set Alarm Interval ===
594
595
596 The shortest time of two Alarm packet. (unit: min)
597
598 * (% style="color:blue" %)**AT Command:**
599
600 (% 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.
601
602 * (% style="color:blue" %)**Downlink Payload:**
603
604 (% style="color:#037691" %)**0x(0D 00 1E)**(%%)     **~-~--> ** Set AT+ATDC=0x 00 1E = 30 minutes
605
606
607 === 3.3.6 Get Alarm settings ===
608
609
610 Send a LoRaWAN downlink to ask device send Alarm settings.
611
612 * (% style="color:#037691" %)**Downlink Payload:  **(%%)0x0E 01
613
614 **Example:**
615
616 [[image:image-20230524110211-4.png]]
617
618 **Explain:**
619
620 * Alarm & MOD bit is 0x7C, 0x7C >> 2 = 0x31: Means this message is the Alarm settings message.
621
622 === 3.3.7 Set Interrupt Mode ===
623
624
625 Feature, Set Interrupt mode for PA8 of pin.
626
627 When AT+INTMOD=0 is set, PA8 is used as a digital input port.
628
629 (% style="color:blue" %)**AT Command: AT+INTMOD**
630
631 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
632 |=(% 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**
633 |(% style="width:154px" %)AT+INTMOD=?|(% style="width:196px" %)Show current interrupt mode|(% style="width:157px" %)(((
634 0
635 OK
636 the mode is 0 =Disable Interrupt
637 )))
638 |(% style="width:154px" %)AT+INTMOD=2|(% style="width:196px" %)(((
639 Set Transmit Interval
640 0. (Disable Interrupt),
641 ~1. (Trigger by rising and falling edge)
642 2. (Trigger by falling edge)
643 3. (Trigger by rising edge)
644 )))|(% style="width:157px" %)OK
645
646 (% style="color:blue" %)**Downlink Command: 0x06**
647
648 Format: Command Code (0x06) followed by 3 bytes.
649
650 This means that the interrupt mode of the end node is set to 0x000003=3 (rising edge trigger), and the type code is 06.
651
652 * Example 1: Downlink Payload: 06000000  ~/~/  Turn off interrupt mode
653 * Example 2: Downlink Payload: 06000003  ~/~/  Set the interrupt mode to rising edge trigger
654
655 === 3.3.8 Set Power Output Duration ===
656
657
658 Control the output duration 5V . Before each sampling, device will
659
660 ~1. first enable the power output to external sensor,
661
662 2. keep it on as per duration, read sensor value and construct uplink payload
663
664 3. final, close the power output.
665
666 (% style="color:blue" %)**AT Command: AT+5VT**
667
668 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
669 |=(% 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**
670 |(% style="width:154px" %)AT+5VT=?|(% style="width:196px" %)Show 5V open time.|(% style="width:157px" %)0 (default)
671 OK
672 |(% style="width:154px" %)AT+5VT=1000|(% style="width:196px" %)Close after a delay of 1000 milliseconds.|(% style="width:157px" %)OK
673
674 (% style="color:blue" %)**Downlink Command: 0x07**
675
676 Format: Command Code (0x07) followed by 2 bytes.
677
678 The first and second bytes are the time to turn on.
679
680 * Example 1: Downlink Payload: 070000  **~-~-->**  AT+5VT=0
681 * Example 2: Downlink Payload: 0701F4  **~-~-->**  AT+5VT=500
682
683 = 4. Battery & Power Consumption =
684
685
686 S31x-LB use ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
687
688 [[**Battery Info & Power Consumption Analyze**>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
689
690
691 = 5. OTA Firmware update =
692
693
694 (% class="wikigeneratedid" %)
695 User can change firmware S31x-LB to:
696
697 * Change Frequency band/ region.
698 * Update with new features.
699 * Fix bugs.
700
701 Firmware and changelog can be downloaded from : **[[Firmware download link>>https://www.dropbox.com/sh/fis3g6nmhv0eokg/AAC6BcCZaX4BdqZkduUvZ3jIa?dl=0]]**
702
703
704 Methods to Update Firmware:
705
706 * (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/]]**
707 * 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]]**.
708
709 = 6. FAQ =
710
711
712
713 = 7. Order Info =
714
715
716 Part Number: (% style="color:blue" %)**S31-LB-XX  / S31B-LB-XX**
717
718 (% style="color:red" %)**XX**(%%): The default frequency band
719
720 * (% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band
721
722 * (% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band
723
724 * (% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band
725
726 * (% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band
727
728 * (% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band
729
730 * (% style="color:red" %)**US915**(%%): LoRaWAN US915 band
731
732 * (% style="color:red" %)**IN865**(%%): LoRaWAN IN865 band
733
734 * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
735
736 = 8. ​Packing Info =
737
738
739 (% style="color:#037691" %)**Package Includes**:
740
741 * S31x-LB LoRaWAN Temperature & Humidity Sensor
742
743 (% style="color:#037691" %)**Dimension and weight**:
744
745 * Device Size: cm
746
747 * Device Weight: g
748
749 * Package Size / pcs : cm
750
751 * Weight / pcs : g
752
753 = 9. Support =
754
755
756 * 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.
757
758 * 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]].
759
760
761 (% style="display:none" %) (%%)