Changes for page wiki_test

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

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

Summary

Details

Page properties
Content
... ... @@ -115,6 +115,8 @@
115 115  * Smart Cities
116 116  * Smart Factory
117 117  
118 +
119 +
118 118  == 1.5 Sleep mode and working mode ==
119 119  
120 120  
... ... @@ -131,7 +131,7 @@
131 131  
132 132  
133 133  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
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**
136 +|=(% style="width: 167px;background-color:#D9E2F3;color:#0070C0" %)**Behavior on ACT**|=(% style="width: 117px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 225px;background-color:#D9E2F3;color:#0070C0" %)**Action**
135 135  |(% style="width:167px" %)Pressing ACT between 1s < time < 3s|(% style="width:117px" %)Send an uplink|(% style="width:225px" %)(((
136 136  If sensor has already attached to NB-IoT network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once.
137 137  Meanwhile, BLE module will be active and user can connect via BLE to configure device.
... ... @@ -183,7 +183,6 @@
183 183  
184 184  === 1.8.3 Reset Button ===
185 185  
186 -
187 187  Press to reboot the device.
188 188  
189 189  
... ... @@ -192,7 +192,7 @@
192 192  
193 193  
194 194  (% border="1" cellspacing="5" style="width:410px" %)
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
196 +|=(% 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
196 196  |(% style="width:102px" %)(((
197 197  S31-LB
198 198  )))|(% style="width:126px" %)(((
... ... @@ -220,252 +220,412 @@
220 220  
221 221  
222 222  
224 +== 1.9 Mechanical ==
223 223  
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 +
224 224  = 2. Use S31-NB to communicate with IoT Server =
225 225  
226 226  == 2.1 Send data to IoT server via NB-IoT network ==
227 227  
228 228  
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.
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.
230 230  
231 231  
232 -Below shows the network structure:
244 +== 2.2 ​Quick guide to connect to LoRaWAN server (OTAA) ==
233 233  
234 -[[image:1692415924540-357.png]]
235 235  
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.
236 236  
237 -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.
238 238  
239 239  
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.
252 +(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from S31x-LB.
241 241  
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]].
254 +Each S31x-LB is shipped with a sticker with the default device EUI as below:
243 243  
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]]
256 +[[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]]
245 245  
246 -Below shows result of different server as a glance.
247 247  
259 +You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
248 248  
249 -(% border="1" cellspacing="4" style="width:515px" %)
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**
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" %)
259 259  
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]].
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 -== 2.2 ​Payload Types ==
264 264  
267 +(% style="color:blue" %)**Add APP EUI and DEV EUI**
265 265  
266 -To meet different server requirement, S31-NB supports different payload type.
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 -**Includes:**
269 269  
270 -* [[General JSON format payload>>path:#General_Json]]. (Type=5)
272 +(% style="color:blue" %)**Add APP EUI in the application**
271 271  
272 -* [[HEX format Payload>>path:#HEX_Payload]]. (Type=0)
273 273  
274 -* [[ThingSpeak Format>>path:#ThingSpeak_Payload]]. (Type=1)
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"]]
275 275  
276 -* [[ThingsBoard Format>>path:#ThingsBoard_Payload]]. (Type=3)
277 277  
278 -User can specify the payload type when choose the connection protocol. Example:
278 +(% style="color:blue" %)**Add APP KEY**
279 279  
280 -(% style="color:#037691" %)**AT+PRO=2,0**  (%%) ~/~/ Use UDP Connection & hex Payload
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"]]
281 281  
282 -(% style="color:#037691" %)**AT+PRO=2,5**   (%%) ~/~/ Use UDP Connection & Json Payload
283 283  
284 -(% style="color:#037691" %)**AT+PRO=3,5 ** (%%) ~/~/ Use MQTT Connection & Json Payload
283 +(% style="color:blue" %)**Step 2:**(%%) Activate on S31x-LB
285 285  
286 286  
287 -=== 2.2.1 General Json Format (Type~=5) ===
286 +Press the button for 5 seconds to activate the S31x-LB.
288 288  
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 -This is the General Json Format. As below:
290 +After join success, it will start to upload messages to TTN and you can see the messages in the panel.
291 291  
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}}**
293 293  
293 +== 2.3 ​Uplink Payload ==
294 294  
295 -(% style="color:red" %)**Notice, from above payload:**
295 +=== 2.3.1 Device Status, FPORT~=5 ===
296 296  
297 -* Temperature , Humidity , Battery & Signal are the value at uplink time.
298 298  
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.
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.
300 300  
301 -=== 2.2.2 HEX format Payload(Type~=0) ===
300 +The Payload format is as below.
302 302  
303 303  
304 -This is the HEX Format. As below:
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
305 305  
306 -(% style="color:#4472c4" %)**f86620705346276200640cba16010000000011011801e864d49c2d011a01e364d49925011901eb64d49871011901e564d497bd011a01e664d49709011901e964d49655011a01e864d495a1011a01e864d494ed011801e864d49439**
308 +Example parse in TTNv3
307 307  
308 -[[image:1692424009971-458.png]]
310 +[[image:image-20230524144422-1.png||height="174" width="1080"]]
309 309  
310 310  
311 -(% style="color:blue" %)**Version:**
313 +(% style="color:#037691" %)**Sensor Model**(%%): For S31x-LB, this value is 0x0A
312 312  
313 -These bytes include the hardware and software version.
315 +(% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
314 314  
315 -(% style="color:#037691" %)**Higher byte:**(%%) Specify Sensor Model: 0x00 for S31B-NB & S31-NB
317 +(% style="color:#037691" %)**Frequency Band**:
316 316  
317 -(% style="color:#037691" %)**Lower byte:**(%%) Specify the software version: 0x64=100, means firmware version 100
319 +0x01: EU868
318 318  
321 +0x02: US915
319 319  
320 -(% style="color:blue" %)**BAT (Battery Info):**
323 +0x03: IN865
321 321  
322 -Ex1: 0x0CBA = 3258mV
325 +0x04: AU915
323 323  
327 +0x05: KZ865
324 324  
325 -(% style="color:blue" %)**Signal Strength:**
329 +0x06: RU864
326 326  
327 -NB-IoT Network signal Strength.
331 +0x07: AS923
328 328  
329 -**Ex1: 0x16 = 22**
333 +0x08: AS923-1
330 330  
331 -**0**  -113dBm or less
335 +0x09: AS923-2
332 332  
333 -**1**  -111dBm
337 +0x0a: AS923-3
334 334  
335 -**2...30** -109dBm... -53dBm
339 +0x0b: CN470
336 336  
337 -**31**   -51dBm or greater
341 +0x0c: EU433
338 338  
339 -**99**    Not known or not detectable
343 +0x0d: KR920
340 340  
345 +0x0e: MA869
341 341  
342 -(% style="color:blue" %)**Temperature: **
343 343  
348 +(% style="color:#037691" %)**Sub-Band**:
349 +
350 +AU915 and US915:value 0x00 ~~ 0x08
351 +
352 +CN470: value 0x0B ~~ 0x0C
353 +
354 +Other Bands: Always 0x00
355 +
356 +
357 +(% style="color:#037691" %)**Battery Info**:
358 +
359 +Check the battery voltage.
360 +
361 +Ex1: 0x0B45 = 2885mV
362 +
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 +
344 344  If payload is: 0105H:  (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree
345 345  
346 346  If payload is: FF3FH :  (FF3F & 8000 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
347 347  
348 -(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
349 349  
350 350  
410 +==== (% style="color:#4472c4" %)**Humidity**(%%) ====
351 351  
352 -(% style="color:blue" %)**Humidity:   **
353 353  
354 -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%
355 355  
356 356  
357 -(% style="color:blue" %)**TimeStamp:   **
416 +==== (% style="color:#4472c4" %)**Alarm Flag & MOD & Level of PA8**(%%) ====
358 358  
359 -Unit TimeStamp Example: 64d49439(H) = 1691653177(D)
360 360  
361 -Put the decimal value into this link(https:~/~/www.epochconverter.com/) to get the time.
419 +**Example:**
362 362  
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.
363 363  
364 -=== 2.2.3 ThingsBoard Payload(Type~=3) ===
423 +If payload & 0x01 = 0x00  **~-~->** This is a normal uplink message, no alarm.
365 365  
425 +If payload & 0x80>>7 = 0x01  **~-~->** The PA8 is low level.
366 366  
367 -Type3 payload special design for ThingsBoard, it will also configure other default server to ThingsBoard.
427 +If payload & 0x80>>7 =0x00  **~-~->** The PA8 is high level.
368 368  
429 +If payload >> 2 = 0x00  **~-~->**  means MOD=1, This is a sampling uplink message.
369 369  
370 -(% style="color:#4472c4" %)**{"IMEI":866207053462762,"temperature":29.2,"humidity":54.2,"battery":3.27,"signal":24}**
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
371 371  
372 372  
373 -=== 2.2.4 ThingSpeak Payload(Type~=1) ===
434 +== 2.4 Payload Decoder file ==
374 374  
375 375  
376 -This payload meets ThingSpeak platform requirement. It includes only four fields. Form 1~~4 are:
437 +In TTN, use can add a custom payload so it shows friendly reading
377 377  
378 -Temperature, Humidity, Battery & Signal. This payload type only valid for ThingsSpeak Platform
439 +In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from:
379 379  
380 -As below:
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]]
381 381  
382 -(% style="color:#4472c4" %)**field1=27.9&field2=49.9&field3=3.23&field4=28**
383 383  
444 +== 2.5 Datalog Feature ==
384 384  
385 -== 2.3 Test Uplink and Change Update Interval ==
386 386  
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.
387 387  
388 -By default, Sensor will send uplinks (% style="color:blue" %)**every 2 hours**(%%) & AT+NOUD=8
389 389  
390 -User can use below commands to change the (% style="color:blue" %)**uplink interval**.
450 +=== 2.5.1 Ways to get datalog via LoRaWAN ===
391 391  
392 -(% style="color:#037691" %)**AT+TDC=600 ** (%%) ~/~/ Set Update Interval to 600s
393 393  
394 -User can also push the button for more than 1 seconds to activate an uplink.
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.
395 395  
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 +)))
396 396  
397 -== 2.4 Multi-Samplings and One uplink ==
462 +Below is the typical case for the auto-update datalog feature (Set PNACKMD=1)
398 398  
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"]]
399 399  
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:
401 401  
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)
467 +=== 2.5.2 Unix TimeStamp ===
403 403  
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.
405 405  
406 -The diagram below explains the relationship between TR, NOUD, and TDC more clearly:
470 +S31x-LB uses Unix TimeStamp format based on
407 407  
408 -[[image:1692424376354-959.png]]
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"]]
409 409  
474 +User can get this time from link:  [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] :
410 410  
411 -== 2.5 Humidity and Temperature alarm function ==
476 +Below is the converter example
412 412  
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"]]
413 413  
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.
415 415  
481 +So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25
416 416  
417 -(% style="color:blue" %)**AT Commands:**
418 418  
419 -(% style="color:#037691" %)**AT+ SHHUM=min,max**
484 +=== 2.5.3 Set Device Time ===
420 420  
421 -Example: AT+ SHHUM=50,80 ~/~/ Alarm when humidity lower than 50 or higher than 80.
422 422  
487 +User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command.
423 423  
424 -(% style="color:#037691" %)**AT+ SHTEMP=min,max**
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).
425 425  
426 -Example: AT+ SHTEMP=20,30 ~/~/ Alarm when temperature lower than 20 or higher than 30
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.**
427 427  
428 428  
429 -(% style="color:red" %)**Notice:**
494 +=== 2.5.4 Datalog Uplink payload (FPORT~=3) ===
430 430  
431 -* To disable Alarm, user can set min and max to same value , such as (% style="color:#037691" %)**AT+SHTEMP=0,0.**
432 432  
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.**
497 +The Datalog uplinks will use below payload format.
434 434  
499 +**Retrieval data payload:**
435 435  
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 +)))
436 436  
437 -== 2.6 Trggier an uplink by external interrupt ==
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
438 438  
521 +**Poll message flag & Alarm Flag & Level of PA8:**
439 439  
440 -S31-NB has an external trigger interrupt function. Users can use the PB15 pin to trigger the upload of data packets.
523 +[[image:image-20230524114302-1.png||height="115" width="736"]]
441 441  
442 -(% style="color:blue" %)**AT command:**
443 443  
444 -* (% style="color:#037691" %)**AT+INTMOD **(%%) ~/~/ Set the trigger interrupt mode
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)
445 445  
446 -* (% style="color:#037691" %)**AT+INTMOD=0 **(%%) ~/~/Disable Interrupt
528 +**Poll Message Flag**: 1: This message is a poll message reply.
447 447  
448 -* (% style="color:#037691" %)**AT+INTMOD=1 **(%%) ~/~/Trigger by rising and falling edge
530 +* Poll Message Flag is set to 1.
449 449  
450 -* (% style="color:#037691" %)**AT+INTMOD=2 **(%%) ~/~/Trigger by falling edge
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.
451 451  
452 -* (% style="color:#037691" %)**AT+INTMOD=3  **(%%) ~/~/Trigger by rising edge
534 +For example, in US915 band, the max payload for different DR is:
453 453  
536 +**a) DR0:** max is 11 bytes so one entry of data
454 454  
455 -= 3. Configure S31x-NB =
538 +**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
456 456  
540 +**c) DR2:** total payload includes 11 entries of data
541 +
542 +**d) DR3: **total payload includes 22 entries of data.
543 +
544 +If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0   
545 +
546 +**Example:**
547 +
548 +If S31x-LB has below data inside Flash:
549 +
550 +[[image:image-20230524114654-2.png]]
551 +
552 +
553 +If user sends below downlink command: 31646D84E1646D856C05
554 +
555 +Where : Start time: 646D84E1 = time 23/5/24 03:30:41
556 +
557 + Stop time: 646D856C= time 23/5/24 03:33:00
558 +
559 +
560 +**S31x-LB will uplink this payload.**
561 +
562 +[[image:image-20230524114826-3.png||height="448" width="1244"]]
563 +
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 +)))
567 +
568 +(((
569 +Where the first 11 bytes is for the first entry:
570 +)))
571 +
572 +(((
573 +00 00 02 36 01 10 40 64 6D 84 E1
574 +)))
575 +
576 +(((
577 +**Hum**=0x0236/10=56.6
578 +)))
579 +
580 +(((
581 +**Temp**=0x0110/10=27.2
582 +)))
583 +
584 +(((
585 +**poll message flag & Alarm Flag & Level of PA8**=0x40,means reply data,sampling uplink message,the PA8 is low level.
586 +)))
587 +
588 +(((
589 +**Unix time** is 0x646D84E1=1684899041s=23/5/24 03:30:41
590 +)))
591 +
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 +
457 457  == 3.1 Configure Methods ==
458 458  
459 459  
460 -S31x-NB supports below configure method:
624 +S31x-LB supports below configure method:
461 461  
462 462  * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
463 -
464 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]].
465 -
466 466  * LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
467 467  
468 -
469 469  == 3.2 General Commands ==
470 470  
471 471  
... ... @@ -734,4 +734,4 @@
734 734  
735 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]].
736 736  
737 -(% style="display:none" %) (%%)
898 +(% style="display:none" %) (%%)
1692424009971-458.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -147.4 KB
Content
1692424376354-959.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -146.1 KB
Content