Version 82.5 by Xiaoling on 2023/08/19 13:53

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