Changes for page wiki_test

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

From version 80.7
edited by Xiaoling
on 2023/08/19 11:58
Change comment: There is no comment for this version
To version 79.1
edited by Xiaoling
on 2023/08/19 11:32
Change comment: Uploaded new attachment "image-20230819113244-10.png", version {1}

Summary

Details

Page properties
Content
... ... @@ -185,7 +185,6 @@
185 185  
186 186  === 1.8.3 Reset Button ===
187 187  
188 -
189 189  Press to reboot the device.
190 190  
191 191  
... ... @@ -222,272 +222,412 @@
222 222  
223 223  
224 224  
224 +== 1.9 Mechanical ==
225 225  
226 +
227 +[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143884058-338.png]]
228 +
229 +
230 +[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143899218-599.png]]
231 +
232 +
233 +[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143909447-639.png]]
234 +
235 +
226 226  = 2. Use S31-NB to communicate with IoT Server =
227 227  
228 228  == 2.1 Send data to IoT server via NB-IoT network ==
229 229  
230 230  
231 -The S31-NB is equipped with a NB-IoT module, the pre-loaded firmware in S31-NB will get environment data from sensors and send the value to local NB-IoT network via the NB-IoT module The NB-IoT network will forward this value to IoT server via the protocol defined by S31-NB.
241 +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.
232 232  
233 233  
234 -Below shows the network structure:
244 +== 2.2 ​Quick guide to connect to LoRaWAN server (OTAA) ==
235 235  
236 -[[image:1692415924540-357.png]]
237 237  
247 +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.
238 238  
239 -There are two version: (% style="color:blue" %)**-GE**(%%) and (% style="color:blue" %)**-1D**(%%) version of S31-NB.
249 +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.
240 240  
241 241  
242 -(% style="color:blue" %)**GE Version**(%%): This version doesn’t include SIM card or point to any IoT server. User needs to use AT Commands to configure below two steps to set S31-NB send data to IoT server.
252 +(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from S31x-LB.
243 243  
244 -1. Install NB-IoT SIM card and configure APN. See instruction of [[Attach Network>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H2.AttachNetwork]].
254 +Each S31x-LB is shipped with a sticker with the default device EUI as below:
245 245  
246 -1. Set up sensor to point to IoT Server. See instruction of [[Configure to Connect Different Servers>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.Configuretoconnecttodifferentservers]].
256 +[[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]]
247 247  
248 -Below shows result of different server as a glance.
249 249  
259 +You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
250 250  
251 -|**Servers**|**Dash Board**|**Comments**
252 -|[[Node-Red>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.5A0Node-RedA028viaA0MQTT29]]|[[image:image-20230819113244-8.png]]|
253 -|[[DataCake>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.4Datacake]]|[[image:image-20230819113244-9.png]]|
254 -|[[Tago.IO>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.7A0Tago.ioA028viaA0MQTT29]]| |
255 -|[[General UDP>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.1GeneralA0UDPA0Connection]]|Raw Payload. Need Developer to design Dash Board|
256 -|[[General MQTT>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.2GeneralA0MQTTA0Connection]]|Raw Payload. Need Developer to design Dash Board|
257 -|[[ThingSpeak>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.3A0ThingSpeakA028viaA0MQTT29]]|[[image:image-20230819113244-10.png]]|
258 -|[[ThingsBoard>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.6A0ThingsBoard.CloudA028viaA0MQTT29]]|[[image:image-20230819113244-11.png]]|
259 -| | |
260 260  
262 +(% style="color:blue" %)**Register the device**
261 261  
264 +[[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"]]
262 262  
263 -(% style="color:blue" %)**1D Version**(%%): This version has 1NCE SIM card pre-installed and configure to send value to DataCake. User Just need to select the sensor type in DataCake and Activate S31-NB and user will be able to see data in DataCake. See here for [[DataCake Config Instruction>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.4Datacake]].
264 264  
267 +(% style="color:blue" %)**Add APP EUI and DEV EUI**
265 265  
266 -== 2.2 ​Payload Types ==
269 +[[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"]]
267 267  
268 268  
269 -To meet different server requirement, S31-NB supports different payload type.
272 +(% style="color:blue" %)**Add APP EUI in the application**
270 270  
271 -Includes:
272 272  
273 -* [[General JSON format payload>>path:#General_Json]]. (Type=5)
275 +[[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"]]
274 274  
275 -* [[HEX format Payload>>path:#HEX_Payload]]. (Type=0)
276 276  
277 -* [[ThingSpeak Format>>path:#ThingSpeak_Payload]]. (Type=1)
278 +(% style="color:blue" %)**Add APP KEY**
278 278  
279 -* [[ThingsBoard Format>>path:#ThingsBoard_Payload]]. (Type=3)
280 +[[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"]]
280 280  
281 281  
282 -User can specify the payload type when choose the connection protocol. Example:
283 +(% style="color:blue" %)**Step 2:**(%%) Activate on S31x-LB
283 283  
284 -(% style="color:#037691" %)**AT+PRO=2,0** (%%) ~/~/Use UDP Connection & hex Payload
285 285  
286 -(% style="color:#037691" %)**AT+PRO=2,5** (%%) ~/~/ Use UDP Connection & Json Payload
286 +Press the button for 5 seconds to activate the S31x-LB.
287 287  
288 -(% style="color:#037691" %)**AT+PRO=3,5 ** (%%) ~/~/ Use MQTT Connection & Json Payload
288 +(% 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.
289 289  
290 +After join success, it will start to upload messages to TTN and you can see the messages in the panel.
290 290  
291 -=== 2.2.1 General Json Format (Type=5) ===
292 292  
293 -This is the General Json Format. As below:
293 +== 2.3 ​Uplink Payload ==
294 294  
295 +=== 2.3.1 Device Status, FPORT~=5 ===
295 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 297  
298 +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.
298 298  
300 +The Payload format is as below.
299 299  
300 -(% style="color:red" %)Notice, from above payload:
301 301  
302 -* Temperature , Humidity , Battery & Signal are the value at uplink time.
303 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
304 +|(% colspan="6" style="background-color:#d9e2f3; color:#0070c0" %)**Device Status (FPORT=5)**
305 +|(% style="width:103px" %)**Size (bytes)**|(% style="width:72px" %)**1**|**2**|(% style="width:91px" %)**1**|(% style="width:86px" %)**1**|(% style="width:44px" %)**2**
306 +|(% 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
303 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.
308 +Example parse in TTNv3
305 305  
310 +[[image:image-20230524144422-1.png||height="174" width="1080"]]
306 306  
307 307  
313 +(% style="color:#037691" %)**Sensor Model**(%%): For S31x-LB, this value is 0x0A
308 308  
309 -=== 2.2.2 HEX format Payload(Type=0) ===
315 +(% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
310 310  
317 +(% style="color:#037691" %)**Frequency Band**:
311 311  
312 -This is the HEX Format. As below:
319 +0x01: EU868
313 313  
314 -(% style="color:#4472C4" %)**f86620705346276200640cba16010000000011011801e864d49c2d011a01e364d49925011901eb64d49871011901e564d497bd011a01e664d49709011901e964d49655011a01e864d495a1011a01e864d494ed011801e864d49439**
321 +0x02: US915
315 315  
323 +0x03: IN865
316 316  
317 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png]]
325 +0x04: AU915
318 318  
327 +0x05: KZ865
319 319  
320 -(% style="color:blue" %)**Version:**
329 +0x06: RU864
321 321  
322 -These bytes include the hardware and software version.
331 +0x07: AS923
323 323  
324 -(% style="color:#037691" %)**Higher byte:**(%%) Specify Sensor Model: 0x00 for S31B-NB & S31-NB
333 +0x08: AS923-1
325 325  
326 -(% style="color:#037691" %)**Lower byte:**(%%) Specify the software version: 0x64=100, means firmware version 100
335 +0x09: AS923-2
327 327  
337 +0x0a: AS923-3
328 328  
329 -(% style="color:#037691" %)**BAT (Battery Info):**
339 +0x0b: CN470
330 330  
331 -Ex1: 0x0CBA = 3258mV
341 +0x0c: EU433
332 332  
343 +0x0d: KR920
333 333  
334 -(% style="color:blue" %)**Signal Strength:**
345 +0x0e: MA869
335 335  
336 -NB-IoT Network signal Strength.
337 337  
338 -**Ex1: 0x16 = 22**
348 +(% style="color:#037691" %)**Sub-Band**:
339 339  
340 -**0**  -113dBm or less
350 +AU915 and US915:value 0x00 ~~ 0x08
341 341  
342 -**1**  -111dBm
352 +CN470: value 0x0B ~~ 0x0C
343 343  
344 -**2...30** -109dBm... -53dBm
354 +Other Bands: Always 0x00
345 345  
346 -**31**   -51dBm or greater
347 347  
348 -**99**    Not known or not detectable
357 +(% style="color:#037691" %)**Battery Info**:
349 349  
359 +Check the battery voltage.
350 350  
351 -(% style="color:blue" %)**Temperature: **
361 +Ex1: 0x0B45 = 2885mV
352 352  
363 +Ex2: 0x0B49 = 2889mV
364 +
365 +
366 +=== 2.3.2  Sensor Data. FPORT~=2 ===
367 +
368 +
369 +Sensor Data is uplink via FPORT=2
370 +
371 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %)
372 +|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)(((
373 +**Size(bytes)**
374 +)))|=(% 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
375 +|(% style="width:99px" %)Value|(% style="width:69px" %)(((
376 +Battery
377 +)))|(% style="width:130px" %)(((
378 +Unix TimeStamp
379 +)))|(% style="width:194px" %)(((
380 +Alarm Flag & MOD& Level of PA8
381 +)))|(% style="width:106px" %)(((
382 +Temperature
383 +)))|(% style="width:97px" %)(((
384 +Humidity
385 +)))
386 +
387 +[[image:image-20230524144456-2.png||height="180" width="1142"]]
388 +
389 +
390 +==== (% style="color:#4472c4" %)**Battery**(%%) ====
391 +
392 +Sensor Battery Level.
393 +
394 +Ex1: 0x0B45 = 2885mV
395 +
396 +Ex2: 0x0B49 = 2889mV
397 +
398 +
399 +==== (% style="color:#4472c4" %)**Temperature**(%%) ====
400 +
401 +**Example**:
402 +
353 353  If payload is: 0105H:  (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree
354 354  
355 355  If payload is: FF3FH :  (FF3F & 8000 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
356 356  
357 -(FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative)
407 +FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative
358 358  
359 359  
410 +==== (% style="color:#4472c4" %)**Humidity**(%%) ====
360 360  
361 -(% style="color:blue" %)**Humidity:   **
362 362  
363 -Read:0295(H)=661(D)    Value:  661 / 10=66.1, So 66.1%
413 +Read:0x(0197)=412    Value:  412 / 10=41.2, So 41.2%
364 364  
365 365  
366 -(% style="color:blue" %)**TimeStamp:   **
416 +==== (% style="color:#4472c4" %)**Alarm Flag & MOD & Level of PA8**(%%) ====
367 367  
368 -Unit TimeStamp Example: 64d49439(H) = 1691653177(D)
369 369  
370 -Put the decimal value into this link(https:~/~/www.epochconverter.com/) to get the time.
419 +**Example:**
371 371  
421 +If payload & 0x01 = 0x01  **~-~->** This is an Alarm Message.It means that the temperature and humidity exceed the alarm value or trigger an interrupt.
372 372  
373 -=== 2.2.3 ThingsBoard Payload(Type=3) ===
423 +If payload & 0x01 = 0x00  **~-~->** This is a normal uplink message, no alarm.
374 374  
375 -Type3 payload special design for ThingsBoard, it will also configure other default server to ThingsBoard.
425 +If payload & 0x80>>7 = 0x01  **~-~->** The PA8 is low level.
376 376  
427 +If payload & 0x80>>7 =0x00  **~-~->** The PA8 is high level.
377 377  
378 -(% style="color:#4472C4" %)**{"IMEI":866207053462762,"temperature":29.2,"humidity":54.2,"battery":3.27,"signal":24}**
429 +If payload >> 2 = 0x00  **~-~->**  means MOD=1, This is a sampling uplink message.
379 379  
431 +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. 
380 380  
381 -=== 2.2.4 ThingSpeak Payload(Type=1) ===
382 382  
383 -This payload meets ThingSpeak platform requirement. It includes only four fields. Form 1~~4 are:
434 +== 2.4 Payload Decoder file ==
384 384  
385 -Temperature, Humidity, Battery & Signal. This payload type only valid for ThingsSpeak Platform
386 386  
437 +In TTN, use can add a custom payload so it shows friendly reading
387 387  
388 -As below:
439 +In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from:
389 389  
390 -(% style="color:#4472C4" %)**field1=27.9&field2=49.9&field3=3.23&field4=28**
441 +[[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]]
391 391  
392 392  
393 -== 2.3 Test Uplink and Change Update Interval ==
444 +== 2.5 Datalog Feature ==
394 394  
395 395  
396 -By default, Sensor will send uplinks (% style="color:blue" %)**every 2 hours**(%%) & AT+NOUD=8
447 +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.
397 397  
398 398  
399 -User can use below commands to change the (% style="color:blue" %)**uplink interval**.
450 +=== 2.5.1 Ways to get datalog via LoRaWAN ===
400 400  
401 -(% style="color:#037691" %)**~ AT+TDC=600      ** (%%) ~/~/ Set Update Interval to 600s
402 402  
453 +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.
403 403  
404 -User can also push the button for more than 1 seconds to activate an uplink.
455 +* (((
456 +a) S31x-LB will do an ACK check for data records sending to make sure every data arrive server.
457 +)))
458 +* (((
459 +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.
460 +)))
405 405  
462 +Below is the typical case for the auto-update datalog feature (Set PNACKMD=1)
406 406  
464 +[[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"]]
407 407  
408 408  
409 -== 2.4 Multi-Samplings and One uplink ==
467 +=== 2.5.2 Unix TimeStamp ===
410 410  
411 411  
412 -To save battery life, S31-NB will sample temperature & humidity data every 15 minutes and send one uplink every 2 hours. So each uplink it will include 8 stored data + 1 real-time data. They are defined by:
470 +S31x-LB uses Unix TimeStamp format based on
413 413  
414 -* (% style="color:#037691" %)**AT+TR=900**   (%%)  ~/~/  The unit is seconds, and the default is to record data once every 900 seconds (15 minutes, the minimum can be set to 180 seconds)
472 +[[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"]]
415 415  
416 -* (% style="color:#037691" %)**AT+NOUD=8**  (%%)~/~/   The device uploads 8 sets of recorded data by default. Up to 32 sets of record data can be uploaded.
474 +User can get this time from link:  [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] :
417 417  
476 +Below is the converter example
418 418  
419 -The diagram below explains the relationship between TR, NOUD, and TDC more clearly:
478 +[[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"]]
420 420  
421 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png||alt="IMG_256"]]
422 422  
481 +So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25
423 423  
424 -== 2.5 Humidity and Temperature alarm function ==
425 425  
484 +=== 2.5.3 Set Device Time ===
426 426  
427 -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.
428 428  
487 +User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command.
429 429  
430 -(% style="color:blue" %)**AT Commands:**
489 +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).
431 431  
432 -(% style="color:#037691" %)**AT+ SHHUM=min,max**
491 +(% 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.**
433 433  
434 -Example: AT+ SHHUM=50,80 ~/~/ Alarm when humidity lower than 50 or higher than 80.
435 435  
494 +=== 2.5.4 Datalog Uplink payload (FPORT~=3) ===
436 436  
437 -(% style="color:#037691" %)**AT+ SHTEMP=min,max**
438 438  
439 -Example: AT+ SHTEMP=20,30 ~/~/ Alarm when temperature lower than 20 or higher than 30
497 +The Datalog uplinks will use below payload format.
440 440  
499 +**Retrieval data payload:**
441 441  
442 -(% style="color:red" %)**Notice:**
501 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %)
502 +|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)(((
503 +**Size(bytes)**
504 +)))|=(% 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**
505 +|(% style="width:103px" %)Value|(% style="width:68px" %)(((
506 +ignore
507 +)))|(% style="width:104px" %)(((
508 +(((
509 +Humidity
510 +)))
443 443  
444 -* To disable Alarm, user can set min and max to same value , such as (% style="color:#037691" %)**AT+SHTEMP=0,0.**
512 +(((
513 +
514 +)))
515 +)))|(% style="width:87px" %)(((
516 +Temperature
517 +)))|(% style="width:178px" %)(((
518 +Poll message flag & Alarm Flag& Level of PA8
519 +)))|(% style="width:137px" %)Unix Time Stamp
445 445  
446 -* 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.**
521 +**Poll message flag & Alarm Flag & Level of PA8:**
447 447  
523 +[[image:image-20230524114302-1.png||height="115" width="736"]]
448 448  
449 449  
526 +**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)
450 450  
528 +**Poll Message Flag**: 1: This message is a poll message reply.
451 451  
530 +* Poll Message Flag is set to 1.
452 452  
453 -== 2.6 Trggier an uplink by external interrupt ==
532 +* Each data entry is 11 bytes, to save airtime and battery, devices will send max bytes according to the current DR and Frequency bands.
454 454  
534 +For example, in US915 band, the max payload for different DR is:
455 455  
456 -S31-NB has an external trigger interrupt function. Users can use the PB15 pin to trigger the upload of data packets.
536 +**a) DR0:** max is 11 bytes so one entry of data
457 457  
458 -(% style="color:blue" %)**AT command:**
538 +**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
459 459  
460 -* (% style="color:#037691" %)**AT+INTMOD **(%%)  ~/~/ Set the trigger interrupt mode
540 +**c) DR2:** total payload includes 11 entries of data
461 461  
462 -* (% style="color:#037691" %)**AT+INTMOD=0 **(%%)   ~/~/Disable Interrupt
542 +**d) DR3: **total payload includes 22 entries of data.
463 463  
464 -* (% style="color:#037691" %)**AT+INTMOD=1 **(%%)  ~/~/Trigger by rising and falling edge
544 +If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0   
465 465  
466 -* (% style="color:#037691" %)**AT+INTMOD=2 **(%%)  ~/~/Trigger by falling edge
546 +**Example:**
467 467  
468 -* (% style="color:#037691" %)**AT+INTMOD=3  **(%%)  ~/~/Trigger by rising edge
548 +If S31x-LB has below data inside Flash:
469 469  
550 +[[image:image-20230524114654-2.png]]
470 470  
471 471  
553 +If user sends below downlink command: 31646D84E1646D856C05
472 472  
555 +Where : Start time: 646D84E1 = time 23/5/24 03:30:41
473 473  
474 -= 3. Configure S31x-NB =
557 + Stop time: 646D856C= time 23/5/24 03:33:00
475 475  
476 -== 3.1 Configure Methods ==
477 477  
560 +**S31x-LB will uplink this payload.**
478 478  
479 -S31x-NB supports below configure method:
562 +[[image:image-20230524114826-3.png||height="448" width="1244"]]
480 480  
481 -* AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
564 +(((
565 +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
566 +)))
482 482  
483 -* 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]].
568 +(((
569 +Where the first 11 bytes is for the first entry:
570 +)))
484 484  
485 -* LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
572 +(((
573 +00 00 02 36 01 10 40 64 6D 84 E1
574 +)))
486 486  
576 +(((
577 +**Hum**=0x0236/10=56.6
578 +)))
487 487  
580 +(((
581 +**Temp**=0x0110/10=27.2
582 +)))
488 488  
584 +(((
585 +**poll message flag & Alarm Flag & Level of PA8**=0x40,means reply data,sampling uplink message,the PA8 is low level.
586 +)))
489 489  
588 +(((
589 +**Unix time** is 0x646D84E1=1684899041s=23/5/24 03:30:41
590 +)))
490 490  
592 +
593 +(% 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="单击并拖动以调整大小" %)的
594 +
595 +== 2.6 Temperature Alarm Feature ==
596 +
597 +
598 +S31x-LB work flow with Alarm feature.
599 +
600 +
601 +[[image:image-20230524110125-3.png||height="768" width="1115"]]
602 +
603 +
604 +
605 +== 2.7 Frequency Plans ==
606 +
607 +
608 +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.
609 +
610 +[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]]
611 +
612 +
613 +== 2.8 ​Firmware Change Log ==
614 +
615 +
616 +**Firmware download link: **[[https:~~/~~/www.dropbox.com/sh/fis3g6nmhv0eokg/AAC6BcCZaX4BdqZkduUvZ3jIa?dl=0>>https://www.dropbox.com/sh/fis3g6nmhv0eokg/AAC6BcCZaX4BdqZkduUvZ3jIa?dl=0]]
617 +
618 +
619 += 3. Configure S31x-LB =
620 +
621 +== 3.1 Configure Methods ==
622 +
623 +
624 +S31x-LB supports below configure method:
625 +
626 +* AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
627 +* 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]].
628 +* LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
629 +
491 491  == 3.2 General Commands ==
492 492  
493 493  
image-20230819113244-11.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -57.5 KB
Content