Changes for page wiki_test

Last modified by Mengting Qiu on 2024/09/05 17:35

From version 75.1
edited by Xiaoling
on 2023/08/19 11:07
Change comment: Uploaded new attachment "image-20230819110702-7.png", version {1}
To version 80.3
edited by Xiaoling
on 2023/08/19 11:37
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -21,7 +21,7 @@
21 21  
22 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 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.
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 25  
26 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 27  
... ... @@ -46,7 +46,6 @@
46 46  * 8500mAh Battery for long term use
47 47  * Nano SIM card slot for NB-IoT SIM
48 48  
49 -
50 50  == 1.3 Specification ==
51 51  
52 52  
... ... @@ -106,7 +106,6 @@
106 106  * STOP Mode: 10uA @ 3.3v
107 107  * Max transmit power: 350mA@3.3v
108 108  
109 -
110 110  == 1.4 Applications ==
111 111  
112 112  
... ... @@ -119,7 +119,6 @@
119 119  
120 120  
121 121  
122 -
123 123  == 1.5 Sleep mode and working mode ==
124 124  
125 125  
... ... @@ -148,7 +148,6 @@
148 148  )))
149 149  |(% 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.
150 150  
151 -
152 152  == 1.7 BLE connection ==
153 153  
154 154  
... ... @@ -189,6 +189,7 @@
189 189  
190 190  === 1.8.3 Reset Button ===
191 191  
188 +
192 192  Press to reboot the device.
193 193  
194 194  
... ... @@ -196,20 +196,26 @@
196 196  == 1.9 Hardware Variant ==
197 197  
198 198  
199 -(% border="1" cellspacing="5" style="width:472px" %)
200 -|=(% style="width: 102px;background-color:#D9E2F3;color:#0070C0" %)Model|=(% style="width: 190px;background-color:#D9E2F3;color:#0070C0" %)Photo|=(% style="width: 187px; background-color:#D9E2F3;color:#0070C0" %)Probe Info
196 +(% border="1" cellspacing="5" style="width:410px" %)
197 +|=(% style="width: 102px;background-color:#D9E2F3;color:#0070C0" %)Model|=(% style="width: 126px; background-color: rgb(217, 226, 243); color: rgb(0, 112, 192);" %)Photo|=(% style="width: 179px; background-color: rgb(217, 226, 243); color: rgb(0, 112, 192);" %)Probe Info
201 201  |(% style="width:102px" %)(((
202 202  S31-LB
203 -)))|(% style="width:190px" %)[[image:image-20230527093214-2.jpeg]]|(% style="width:187px" %)(((
200 +)))|(% style="width:126px" %)(((
201 +(% style="text-align:center" %)
202 +[[image:image-20230819110632-6.png||height="130" width="104"]]
203 +)))|(% style="width:179px" %)(((
204 204  1 x SHT31 Probe
205 205  
206 -Cable Length : 2 meters
206 +Cable Length : 3 meters
207 207  
208 208  
209 209  )))
210 210  |(% style="width:102px" %)(((
211 211  S31B-LB
212 -)))|(% style="width:190px" %)[[image:image-20230527093155-1.jpeg]]|(% style="width:187px" %)(((
212 +)))|(% style="width:126px" %)(((
213 +(% style="text-align:center" %)
214 +[[image:image-20230819110702-7.png||height="164" width="90"]]
215 +)))|(% style="width:179px" %)(((
213 213  1 x SHT31 Probe
214 214  
215 215  Installed in device.
... ... @@ -219,401 +219,245 @@
219 219  
220 220  
221 221  
222 -== 1.9 Mechanical ==
223 223  
226 += 2. Use S31-NB to communicate with IoT Server =
224 224  
225 -[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143884058-338.png]]
228 +== 2.1 Send data to IoT server via NB-IoT network ==
226 226  
227 227  
228 -[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143899218-599.png]]
231 +The S31-NB is equipped with a NB-IoT module, the pre-loaded firmware in S31-NB will get environment data from sensors and send the value to local NB-IoT network via the NB-IoT module.  The NB-IoT network will forward this value to IoT server via the protocol defined by S31-NB.
229 229  
230 230  
231 -[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143909447-639.png]]
234 +Below shows the network structure:
232 232  
236 +[[image:1692415924540-357.png]]
233 233  
234 -= 2. Configure S31x-LB to connect to LoRaWAN network =
235 235  
236 -== 2.1 How it works ==
239 +There are two version: **-GE** and **-1D** version of S31-NB.
237 237  
238 238  
239 -The S31x-LB is configured as (% style="color:#037691" %)**LoRaWAN OTAA Class A**(%%) mode by default. It has OTAA keys to join LoRaWAN network. To connect a local LoRaWAN network, you need to input the OTAA keys in the LoRaWAN IoT server and press the button to activate the S31x-LB. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 20 minutes.
242 +**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.
240 240  
244 +1. Install NB-IoT SIM card and configure APN. See instruction of [[Attach Network>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H2.AttachNetwork]].
245 +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]].
241 241  
242 -== 2.2 ​Quick guide to connect to LoRaWAN server (OTAA) ==
247 +Below shows result of different server as a glance.
243 243  
244 244  
245 -Following is an example for how to join the [[TTN v3 LoRaWAN Network>>url:https://console.cloud.thethings.network/]]. Below is the network structure; we use the [[LPS8v2>>url:https://www.dragino.com/products/lora-lorawan-gateway/item/228-lps8v2.html]] as a LoRaWAN gateway in this example.
250 +|**Servers**|**Dash Board**|**Comments**
251 +|[[Node-Red>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.5A0Node-RedA028viaA0MQTT29]]|[[image:image-20230819113244-8.png]]|
252 +|[[DataCake>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.4Datacake]]|[[image:image-20230819113244-9.png]]|
253 +|[[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]]| |
254 +|[[General UDP>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.1GeneralA0UDPA0Connection]]|Raw Payload. Need Developer to design Dash Board|
255 +|[[General MQTT>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.2GeneralA0MQTTA0Connection]]|Raw Payload. Need Developer to design Dash Board|
256 +|[[ThingSpeak>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.3A0ThingSpeakA028viaA0MQTT29]]|[[image:image-20230819113244-10.png]]|
257 +|[[ThingsBoard>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.6A0ThingsBoard.CloudA028viaA0MQTT29]]|[[image:image-20230819113244-11.png]]|
258 +| | |
246 246  
247 -The LPS8V2 is already set to connected to [[TTN network >>url:https://console.cloud.thethings.network/]], so what we need to now is configure the TTN server.
248 248  
249 249  
250 -(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from S31x-LB.
262 +**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]].
251 251  
252 -Each S31x-LB is shipped with a sticker with the default device EUI as below:
253 253  
254 -[[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]]
265 +== 2.2 ​Payload Types ==
255 255  
256 256  
257 -You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
268 +To meet different server requirement, S31-NB supports different payload type.
258 258  
270 +Includes:
259 259  
260 -(% style="color:blue" %)**Register the device**
272 +* [[General JSON format payload>>path:#General_Json]]. (Type=5)
273 +* [[HEX format Payload>>path:#HEX_Payload]]. (Type=0)
274 +* [[ThingSpeak Format>>path:#ThingSpeak_Payload]]. (Type=1)
275 +* [[ThingsBoard Format>>path:#ThingsBoard_Payload]]. (Type=3)
261 261  
262 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/1654935135620-998.png?rev=1.1||alt="1654935135620-998.png"]]
263 263  
278 +User can specify the payload type when choose the connection protocol. Example:
264 264  
265 -(% style="color:blue" %)**Add APP EUI and DEV EUI**
280 +**AT+PRO=2,0** ~/~/Use UDP Connection & hex Payload
266 266  
267 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-4.png?width=753&height=551&rev=1.1||alt="图片-20220611161308-4.png"]]
282 +**AT+PRO=2,5** ~/~/ Use UDP Connection & Json Payload
268 268  
284 +**AT+PRO=3,5 **~/~/ Use MQTT Connection & Json Payload
269 269  
270 -(% style="color:blue" %)**Add APP EUI in the application**
271 271  
287 +1.
288 +11.
289 +111. General Json Format (Type=5)
272 272  
273 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-5.png?width=742&height=601&rev=1.1||alt="图片-20220611161308-5.png"]]
291 +This is the General Json Format. As below:
274 274  
275 275  
276 -(% style="color:blue" %)**Add APP KEY**
294 +**{"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}}**
277 277  
278 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-6.png?width=744&height=485&rev=1.1||alt="图片-20220611161308-6.png"]]
279 279  
280 280  
281 -(% style="color:blue" %)**Step 2:**(%%) Activate on S31x-LB
298 +Notice, from above payload:
282 282  
300 +* Temperature , Humidity , Battery & Signal are the value at uplink time.
301 +* Json entry 1 ~~ 8 are the last 1 ~~ 8 sampling data as specify by **AT+NOUD=8 **Command**.** Each entry includes (from left to right): Temperature, Humidity, Sampling time.
283 283  
284 -Press the button for 5 seconds to activate the S31x-LB.
285 285  
286 -(% style="color:green" %)**Green led**(%%) will fast blink 5 times, device will enter (% style="color:blue" %)**OTA mode**(%%) for 3 seconds. And then start to JOIN LoRaWAN network. (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.
287 287  
288 -After join success, it will start to upload messages to TTN and you can see the messages in the panel.
289 289  
306 +1.
307 +11.
308 +111. HEX format Payload(Type=0)
290 290  
291 -== 2.3 ​Uplink Payload ==
292 292  
293 -=== 2.3.1 Device Status, FPORT~=5 ===
311 +This is the HEX Format. As below:
294 294  
313 +**f86620705346276200640cba16010000000011011801e864d49c2d011a01e364d49925011901eb64d49871011901e564d497bd011a01e664d49709011901e964d49655011a01e864d495a1011a01e864d494ed011801e864d49439**
295 295  
296 -Users can use the downlink command(**0x26 01**) to ask S31x-LB to send device configure detail, include device configure status. S31x-LB will uplink a payload via FPort=5 to server.
297 297  
298 -The Payload format is as below.
316 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png]]
299 299  
300 300  
301 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
302 -|(% colspan="6" style="background-color:#d9e2f3; color:#0070c0" %)**Device Status (FPORT=5)**
303 -|(% style="width:103px" %)**Size (bytes)**|(% style="width:72px" %)**1**|**2**|(% style="width:91px" %)**1**|(% style="width:86px" %)**1**|(% style="width:44px" %)**2**
304 -|(% style="width:103px" %)**Value**|(% style="width:72px" %)Sensor Model|Firmware Version|(% style="width:91px" %)Frequency Band|(% style="width:86px" %)Sub-band|(% style="width:44px" %)BAT
319 +**Version:**
305 305  
306 -Example parse in TTNv3
321 +These bytes include the hardware and software version.
307 307  
308 -[[image:image-20230524144422-1.png||height="174" width="1080"]]
323 +**Higher byte:** Specify Sensor Model: 0x00 for S31B-NB & S31-NB
309 309  
325 +**Lower byte:** Specify the software version: 0x64=100, means firmware version 100
310 310  
311 -(% style="color:#037691" %)**Sensor Model**(%%): For S31x-LB, this value is 0x0A
312 312  
313 -(% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
328 +**BAT (Battery Info)**
314 314  
315 -(% style="color:#037691" %)**Frequency Band**:
330 +Ex1: 0x0CBA = 3258mV
316 316  
317 -0x01: EU868
318 318  
319 -0x02: US915
333 +**Signal Strength**
320 320  
321 -0x03: IN865
335 +NB-IoT Network signal Strength.
322 322  
323 -0x04: AU915
337 +**Ex1: 0x16 = 22**
324 324  
325 -0x05: KZ865
339 +**0**  -113dBm or less
326 326  
327 -0x06: RU864
341 +**1**  -111dBm
328 328  
329 -0x07: AS923
343 +**2...30** -109dBm... -53dBm
330 330  
331 -0x08: AS923-1
345 +**31**   -51dBm or greater
332 332  
333 -0x09: AS923-2
347 +**99**    Not known or not detectable
334 334  
335 -0x0a: AS923-3
336 336  
337 -0x0b: CN470
350 +**Temperature: **
338 338  
339 -0x0c: EU433
340 -
341 -0x0d: KR920
342 -
343 -0x0e: MA869
344 -
345 -
346 -(% style="color:#037691" %)**Sub-Band**:
347 -
348 -AU915 and US915:value 0x00 ~~ 0x08
349 -
350 -CN470: value 0x0B ~~ 0x0C
351 -
352 -Other Bands: Always 0x00
353 -
354 -
355 -(% style="color:#037691" %)**Battery Info**:
356 -
357 -Check the battery voltage.
358 -
359 -Ex1: 0x0B45 = 2885mV
360 -
361 -Ex2: 0x0B49 = 2889mV
362 -
363 -
364 -=== 2.3.2  Sensor Data. FPORT~=2 ===
365 -
366 -
367 -Sensor Data is uplink via FPORT=2
368 -
369 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %)
370 -|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)(((
371 -**Size(bytes)**
372 -)))|=(% style="width: 40px;background-color:#D9E2F3;color:#0070C0" %)2|=(% style="width: 90px;background-color:#D9E2F3;color:#0070C0" %)4|=(% style="width: 150px; background-color: #D9E2F3;color:#0070C0" %)1|=(% style="width: 80px; background-color: #D9E2F3;color:#0070C0" %)**2**|=(% style="width: 80px; background-color: #D9E2F3;color:#0070C0" %)2
373 -|(% style="width:99px" %)Value|(% style="width:69px" %)(((
374 -Battery
375 -)))|(% style="width:130px" %)(((
376 -Unix TimeStamp
377 -)))|(% style="width:194px" %)(((
378 -Alarm Flag & MOD& Level of PA8
379 -)))|(% style="width:106px" %)(((
380 -Temperature
381 -)))|(% style="width:97px" %)(((
382 -Humidity
383 -)))
384 -
385 -[[image:image-20230524144456-2.png||height="180" width="1142"]]
386 -
387 -
388 -==== (% style="color:#4472c4" %)**Battery**(%%) ====
389 -
390 -Sensor Battery Level.
391 -
392 -Ex1: 0x0B45 = 2885mV
393 -
394 -Ex2: 0x0B49 = 2889mV
395 -
396 -
397 -==== (% style="color:#4472c4" %)**Temperature**(%%) ====
398 -
399 -**Example**:
400 -
401 401  If payload is: 0105H:  (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree
402 402  
403 403  If payload is: FF3FH :  (FF3F & 8000 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
404 404  
405 -FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative
356 +(FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative)
406 406  
407 407  
408 -==== (% style="color:#4472c4" %)**Humidity**(%%) ====
409 409  
360 +**Humidity:   **
410 410  
411 -Read:0x(0197)=412    Value:  412 / 10=41.2, So 41.2%
362 +Read:0295(H)=661(D)    Value:  661 / 10=66.1, So 66.1%
412 412  
413 413  
414 -==== (% style="color:#4472c4" %)**Alarm Flag & MOD & Level of PA8**(%%) ====
365 +**TimeStamp:   **
415 415  
367 +Unit TimeStamp Example: 64d49439(H) = 1691653177(D)
416 416  
417 -**Example:**
369 +Put the decimal value into this link(https:~/~/www.epochconverter.com/) to get the time.
418 418  
419 -If payload & 0x01 = 0x01  **~-~->** This is an Alarm Message.It means that the temperature and humidity exceed the alarm value or trigger an interrupt.
420 420  
421 -If payload & 0x01 = 0x00  **~-~->** This is a normal uplink message, no alarm.
372 +1.
373 +11.
374 +111. ThingsBoard Payload(Type=3)
422 422  
423 -If payload & 0x80>>7 = 0x01  **~-~->** The PA8 is low level.
376 +Type3 payload special design for ThingsBoard, it will also configure other default server to ThingsBoard.
424 424  
425 -If payload & 0x80>>7 =0x00  **~-~->** The PA8 is high level.
426 426  
427 -If payload >> 2 = 0x00  **~-~->**  means MOD=1, This is a sampling uplink message.
379 +**{"IMEI":866207053462762,"temperature":29.2,"humidity":54.2,"battery":3.27,"signal":24}**
428 428  
429 -If payload >> 2 = 0x31  **~-~->**  means MOD=31, this message is a reply message for polling, this message contains the alarm settings. see [[this link>>path:#HPolltheAlarmsettings:]] for detail. 
430 430  
382 +1.
383 +11.
384 +111. ThingSpeak Payload(Type=1)
431 431  
432 -== 2.4 Payload Decoder file ==
386 +This payload meets ThingSpeak platform requirement. It includes only four fields. Form 1~~4 are:
433 433  
388 +Temperature, Humidity, Battery & Signal. This payload type only valid for ThingsSpeak Platform
434 434  
435 -In TTN, use can add a custom payload so it shows friendly reading
436 436  
437 -In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from:
391 +As below:
438 438  
439 -[[https:~~/~~/github.com/dragino/dragino-end-node-decoder/tree/main/S31-LB%26S31B-LB>>https://github.com/dragino/dragino-end-node-decoder/tree/main/S31-LB%26S31B-LB]]
393 +**field1=27.9&field2=49.9&field3=3.23&field4=28**
440 440  
441 441  
442 -== 2.5 Datalog Feature ==
396 +1.
397 +11. Test Uplink and Change Update Interval
443 443  
399 +By default, Sensor will send uplinks **every 2 hours** & AT+NOUD=8
444 444  
445 -Datalog Feature is to ensure IoT Server can get all sampling data from Sensor even if the LoRaWAN network is down. For each sampling, S31x-LB will store the reading for future retrieving purposes.
446 446  
402 +User can use below commands to change the **uplink interval**.
447 447  
448 -=== 2.5.1 Ways to get datalog via LoRaWAN ===
404 +**~ AT+TDC=600      **~/~/ Set Update Interval to 600s
449 449  
450 450  
451 -Set [[PNACKMD=1>>||anchor="H2.5.4DatalogUplinkpayload28FPORT3D329"]], S31x-LB will wait for ACK for every uplink, when there is no LoRaWAN network,S31x-LB will mark these records with non-ack messages and store the sensor data, and it will send all messages (10s interval) after the network recovery.
407 +User can also push the button for more than 1 seconds to activate an uplink.
452 452  
453 -* (((
454 -a) S31x-LB will do an ACK check for data records sending to make sure every data arrive server.
455 -)))
456 -* (((
457 -b) S31x-LB will send data in **CONFIRMED Mode** when PNACKMD=1, but S31x-LB won't re-transmit the packet if it doesn't get ACK, it will just mark it as a NONE-ACK message. In a future uplink if S31x-LB gets a ACK, S31x-LB will consider there is a network connection and resend all NONE-ACK messages.
458 -)))
459 459  
460 -Below is the typical case for the auto-update datalog feature (Set PNACKMD=1)
461 461  
462 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20220703111700-2.png?width=1119&height=381&rev=1.1||alt="图片-20220703111700-2.png" height="381" width="1119"]]
463 463  
412 +1.
413 +11. Multi-Samplings and One uplink
464 464  
465 -=== 2.5.2 Unix TimeStamp ===
415 +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:
466 466  
417 +* **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)
418 +* **AT+NOUD=8**  ~/~/   The device uploads 8 sets of recorded data by default. Up to 32 sets of record data can be uploaded.
467 467  
468 -S31x-LB uses Unix TimeStamp format based on
469 469  
470 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20220523001219-11.png?width=627&height=97&rev=1.1||alt="图片-20220523001219-11.png" height="97" width="627"]]
421 +The diagram below explains the relationship between TR, NOUD, and TDC more clearly:
471 471  
472 -User can get this time from link:  [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] :
423 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png||alt="IMG_256"]]
473 473  
474 -Below is the converter example
475 475  
476 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20220523001219-12.png?width=720&height=298&rev=1.1||alt="图片-20220523001219-12.png" height="298" width="720"]]
426 +1.
427 +11. Humidity and Temperature alarm function
477 477  
429 +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.
478 478  
479 -So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25
480 480  
432 +AT Commands:
481 481  
482 -=== 2.5.3 Set Device Time ===
434 +**AT+ SHHUM=min,max**
483 483  
436 +Example: AT+ SHHUM=50,80 ~/~/ Alarm when humidity lower than 50 or higher than 80.
484 484  
485 -User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command.
486 486  
487 -Once S31x-LB Joined LoRaWAN network, it will send the MAC command (DeviceTimeReq) and the server will reply with (DeviceTimeAns) to send the current time to S31x-LB. If S31x-LB fails to get the time from the server, S31x-LB will use the internal time and wait for next time request (AT+SYNCTDC to set the time request period, default is 10 days).
439 +**AT+ SHTEMP=min,max**
488 488  
489 -(% style="color:red" %)**Note: LoRaWAN Server need to support LoRaWAN v1.0.3(MAC v1.0.3) or higher to support this MAC command feature, Chirpstack,TTN V3 v3 and loriot support but TTN V3 v2 doesn't support. If server doesn't support this command, it will through away uplink packet with this command, so user will lose the packet with time request for TTN V3 v2 if SYNCMOD=1.**
441 +Example: AT+ SHTEMP=20,30 ~/~/ Alarm when temperature lower than 20 or higher than 30
490 490  
491 491  
492 -=== 2.5.4 Datalog Uplink payload (FPORT~=3) ===
444 +Notice:
493 493  
446 +* To disable Alarm, user can set min and max to same value , such as **AT+SHTEMP=0,0.**
447 +* 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: **AT+SHTEMP=-80,0.**
494 494  
495 -The Datalog uplinks will use below payload format.
496 496  
497 -**Retrieval data payload:**
450 +1.
451 +11. Trggier an uplink by external interrupt
498 498  
499 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %)
500 -|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)(((
501 -**Size(bytes)**
502 -)))|=(% style="width: 40px; background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 55px; background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 65px; background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 180px; background-color:#D9E2F3;color:#0070C0" %)**1**|=(% style="width: 100px; background-color:#D9E2F3;color:#0070C0" %)**4**
503 -|(% style="width:103px" %)Value|(% style="width:68px" %)(((
504 -ignore
505 -)))|(% style="width:104px" %)(((
506 -(((
507 -Humidity
508 -)))
453 +S31-NB has an external trigger interrupt function. Users can use the PB15 pin to trigger the upload of data packets.
509 509  
510 -(((
511 -
512 -)))
513 -)))|(% style="width:87px" %)(((
514 -Temperature
515 -)))|(% style="width:178px" %)(((
516 -Poll message flag & Alarm Flag& Level of PA8
517 -)))|(% style="width:137px" %)Unix Time Stamp
455 +AT command:
518 518  
519 -**Poll message flag & Alarm Flag & Level of PA8:**
457 +* AT+INTMOD   ~/~/ Set the trigger interrupt mode
458 +* AT+INTMOD=0    ~/~/Disable Interrupt
459 +* AT+INTMOD=1   ~/~/Trigger by rising and falling edge
460 +* AT+INTMOD=2   ~/~/Trigger by falling edge
461 +* AT+INTMOD=3    ~/~/Trigger by rising edge
520 520  
521 -[[image:image-20230524114302-1.png||height="115" width="736"]]
522 522  
523 -
524 -**No ACK Message**:  1: This message means this payload is fromn Uplink Message which doesn't get ACK from the server before ( for **PNACKMD=1** feature)
525 -
526 -**Poll Message Flag**: 1: This message is a poll message reply.
527 -
528 -* Poll Message Flag is set to 1.
529 -
530 -* Each data entry is 11 bytes, to save airtime and battery, devices will send max bytes according to the current DR and Frequency bands.
531 -
532 -For example, in US915 band, the max payload for different DR is:
533 -
534 -**a) DR0:** max is 11 bytes so one entry of data
535 -
536 -**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
537 -
538 -**c) DR2:** total payload includes 11 entries of data
539 -
540 -**d) DR3: **total payload includes 22 entries of data.
541 -
542 -If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0   
543 -
544 -**Example:**
545 -
546 -If S31x-LB has below data inside Flash:
547 -
548 -[[image:image-20230524114654-2.png]]
549 -
550 -
551 -If user sends below downlink command: 31646D84E1646D856C05
552 -
553 -Where : Start time: 646D84E1 = time 23/5/24 03:30:41
554 -
555 - Stop time: 646D856C= time 23/5/24 03:33:00
556 -
557 -
558 -**S31x-LB will uplink this payload.**
559 -
560 -[[image:image-20230524114826-3.png||height="448" width="1244"]]
561 -
562 -(((
563 -00 00 02 36 01 10 40 64 6D 84 E1 00 00 02 37 01 10 40 64 6D 84 F8 00 00 02 37 01 0F 40 64 6D 85 04 00 00 02 3A 01 0F 40 64 6D 85 18 00 00 02 3C 01 0F 40 64 6D 85 36 00 00 02 3D 01 0E 40 64 6D 85 3F 00 00 02 3F 01 0E 40 64 6D 85 60 00 00 02 40 01 0E 40 64 6D 85 6A
564 -)))
565 -
566 -(((
567 -Where the first 11 bytes is for the first entry:
568 -)))
569 -
570 -(((
571 -00 00 02 36 01 10 40 64 6D 84 E1
572 -)))
573 -
574 -(((
575 -**Hum**=0x0236/10=56.6
576 -)))
577 -
578 -(((
579 -**Temp**=0x0110/10=27.2
580 -)))
581 -
582 -(((
583 -**poll message flag & Alarm Flag & Level of PA8**=0x40,means reply data,sampling uplink message,the PA8 is low level.
584 -)))
585 -
586 -(((
587 -**Unix time** is 0x646D84E1=1684899041s=23/5/24 03:30:41
588 -)))
589 -
590 -
591 -(% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||alt="数据 URI 图片" data-widget="image" draggable="true" height="15" role="presentation" title="单击并拖动以移动" width="15"]](% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220, 220, 220, 0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||alt="数据 URI 图片" draggable="true" height="15" role="presentation" title="单击并拖动以移动" width="15"]](% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" title="单击并拖动以调整大小" %)的(% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||alt="数据 URI 图片" data-widget="image" draggable="true" height="15" role="presentation" title="单击并拖动以移动" width="15"]](% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220, 220, 220, 0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||alt="数据 URI 图片" draggable="true" height="15" role="presentation" title="单击并拖动以移动" width="15"]](% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" title="单击并拖动以调整大小" %)的
592 -
593 -== 2.6 Temperature Alarm Feature ==
594 -
595 -
596 -S31x-LB work flow with Alarm feature.
597 -
598 -
599 -[[image:image-20230524110125-3.png||height="768" width="1115"]]
600 -
601 -
602 -
603 -== 2.7 Frequency Plans ==
604 -
605 -
606 -The S31x-LB uses OTAA mode and below frequency plans by default. If user want to use it with different frequency plan, please refer the AT command sets.
607 -
608 -[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]]
609 -
610 -
611 -== 2.8 ​Firmware Change Log ==
612 -
613 -
614 -**Firmware download link: **[[https:~~/~~/www.dropbox.com/sh/fis3g6nmhv0eokg/AAC6BcCZaX4BdqZkduUvZ3jIa?dl=0>>https://www.dropbox.com/sh/fis3g6nmhv0eokg/AAC6BcCZaX4BdqZkduUvZ3jIa?dl=0]]
615 -
616 -
617 617  = 3. Configure S31x-LB =
618 618  
619 619  == 3.1 Configure Methods ==
... ... @@ -625,7 +625,6 @@
625 625  * 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]].
626 626  * LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
627 627  
628 -
629 629  == 3.2 General Commands ==
630 630  
631 631  
... ... @@ -673,7 +673,6 @@
673 673  * Example 1: Downlink Payload: 0100001E  ~/~/  Set Transmit Interval (TDC) = 30 seconds
674 674  * Example 2: Downlink Payload: 0100003C  ~/~/  Set Transmit Interval (TDC) = 60 seconds
675 675  
676 -
677 677  === 3.3.2 Get Device Status ===
678 678  
679 679  
... ... @@ -757,7 +757,6 @@
757 757  
758 758  * Alarm & MOD bit is 0x7C, 0x7C >> 2 = 0x31: Means this message is the Alarm settings message.
759 759  
760 -
761 761  === 3.3.7 Set Interrupt Mode ===
762 762  
763 763  
... ... @@ -791,7 +791,6 @@
791 791  * Example 1: Downlink Payload: 06000000  ~/~/  Turn off interrupt mode
792 792  * Example 2: Downlink Payload: 06000003  ~/~/  Set the interrupt mode to rising edge trigger
793 793  
794 -
795 795  === 3.3.8 Set Power Output Duration ===
796 796  
797 797  
... ... @@ -820,7 +820,6 @@
820 820  * Example 1: Downlink Payload: 070000  **~-~-->**  AT+5VT=0
821 821  * Example 2: Downlink Payload: 0701F4  **~-~-->**  AT+5VT=500
822 822  
823 -
824 824  = 4. Battery & Power Consumption =
825 825  
826 826  
... ... @@ -847,7 +847,6 @@
847 847  * (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/]]**
848 848  * 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]]**.
849 849  
850 -
851 851  = 6. FAQ =
852 852  
853 853  
... ... @@ -875,7 +875,6 @@
875 875  
876 876  * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
877 877  
878 -
879 879  = 8. ​Packing Info =
880 880  
881 881  
... ... @@ -893,7 +893,6 @@
893 893  
894 894  * Weight / pcs : g
895 895  
896 -
897 897  = 9. Support =
898 898  
899 899  
... ... @@ -900,3 +900,5 @@
900 900  * 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.
901 901  
902 902  * 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]].
742 +
743 +(% style="display:none" %) (%%)
1692415924540-357.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +94.4 KB
Content
image-20230819113244-10.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +12.0 KB
Content
image-20230819113244-11.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +57.5 KB
Content
image-20230819113244-8.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +13.0 KB
Content
image-20230819113244-9.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +35.5 KB
Content