Changes for page wiki_test
Last modified by Mengting Qiu on 2024/09/05 17:35
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 5 added, 0 removed)
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** 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:4 72px" %)200 -|=(% style="width: 102px;background-color:#D9E2F3;color:#0070C0" %)Model|=(% style="width: 1 90px;background-color:#D9E2F3;color:#0070C0" %)Photo|=(% style="width: 187px; background-color:#D9E2F3;color:#0070C0" %)Probe Info196 +(% 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 : 2meters206 +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,240 @@ 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.UserManualforLoRaWANEndNodes.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.UserManualforLoRaWANEndNodes.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 ManualforLoRaWAN 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.1How itworks==239 +There are two version: (% style="color:blue" %)**-GE**(%%) and (% style="color:blue" %)**-1D**(%%) version of S31-NB. 237 237 238 238 239 - The S31x-LB is configured as(% style="color:#037691" %)**LoRaWANOTAA Class A**(%%)mode by default. IthasOTAA keysto joinLoRaWAN network.To connectalocal LoRaWAN network, you needto input theOTAA keysin the LoRaWANIoT serverand pressthebutton toactivatetheS31x-LB. It willautomaticallyjointhenetworkvia OTAA andstarttosend thesensorvalue.Thedefault uplink interval is 20 minutes.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. 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]]. 241 241 242 - == 2.2Quickguide toconnect toLoRaWAN(OTAA)==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]]. 243 243 248 +Below shows result of different server as a glance. 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. 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. 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 +| | | 248 248 249 249 250 -(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from S31x-LB. 251 251 252 - EachS31x-LBis shippedwithastickerwiththe defaultdeviceEUIasbelow: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]]. 253 253 254 -[[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]] 255 255 266 +== 2.2 Payload Types == 256 256 257 -You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot: 258 258 269 +To meet different server requirement, S31-NB supports different payload type. 259 259 260 - (% style="color:blue" %)**Register thedevice**271 +Includes: 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"]] 273 +* [[General JSON format payload>>path:#General_Json]]. (Type=5) 274 +* [[HEX format Payload>>path:#HEX_Payload]]. (Type=0) 275 +* [[ThingSpeak Format>>path:#ThingSpeak_Payload]]. (Type=1) 276 +* [[ThingsBoard Format>>path:#ThingsBoard_Payload]]. (Type=3) 263 263 264 264 265 - (%style="color:blue"%)**AddAPP EUI andDEVEUI**279 +User can specify the payload type when choose the connection protocol. Example: 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"]]281 +(% style="color:#037691" %)**AT+PRO=2,0** (%%) ~/~/Use UDP Connection & hex Payload 268 268 283 +(% style="color:#037691" %)**AT+PRO=2,5** (%%) ~/~/ Use UDP Connection & Json Payload 269 269 270 -(% style="color: blue" %)**Add APPEUIintheapplication**285 +(% style="color:#037691" %)**AT+PRO=3,5 ** (%%) ~/~/ Use MQTT Connection & Json Payload 271 271 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"]]288 +=== 2.2.1 General Json Format (Type=5) === 274 274 290 +This is the General Json Format. As below: 275 275 276 -(% style="color:blue" %)**Add APP KEY** 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"]]293 +(% 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}}** 279 279 280 280 281 -(% style="color:blue" %)**Step 2:**(%%) Activate on S31x-LB 282 282 297 +(% style="color:red" %)Notice, from above payload: 283 283 284 - Pressthebuttonfor5secondstoactivate theS31x-LB.299 +* Temperature , Humidity , Battery & Signal are the value at uplink time. 285 285 286 - (%style="color:green"%)**Greenled**(%%)will fastblink5times,device willenter(% style="color:blue" %)**OTAmode**(%%)for 3 seconds.And thenstartto JOIN LoRaWANnetwork. (% style="color:green"%)**Greenled**(%%) will solidlyturnonfor5 secondsafterjoined innetwork.301 +* 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. 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 290 290 291 -== 2.3 Uplink Payload == 292 292 293 -=== 2. 3.1DeviceStatus,FPORT~=5===306 +=== 2.2.2 HEX format Payload(Type=0) === 294 294 295 295 296 - Userscan usethedownlinkcommand(**0x26 01**)toaskS31x-LB to send device configure detail, include device configure status. S31x-LBwill uplink a payload via FPort=5 to server.309 +This is the HEX Format. As below: 297 297 298 - ThePayload formatisasbelow.311 +(% style="color:#4472C4" %)**f86620705346276200640cba16010000000011011801e864d49c2d011a01e364d49925011901eb64d49871011901e564d497bd011a01e664d49709011901e964d49655011a01e864d495a1011a01e864d494ed011801e864d49439** 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 314 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png]] 305 305 306 -Example parse in TTNv3 307 307 308 - [[image:image-20230524144422-1.png||height="174"width="1080"]]317 +(% style="color:blue" %)**Version:** 309 309 319 +These bytes include the hardware and software version. 310 310 311 -(% style="color:#037691" %)**Sensor Model **(%%):For S31x-LB,thisvalue is 0x0A321 +(% style="color:#037691" %)**Higher byte:**(%%) Specify Sensor Model: 0x00 for S31B-NB & S31-NB 312 312 313 -(% style="color:#037691" %)** FirmwareVersion**(%%): 0x0100,Means:v1.0.0version323 +(% style="color:#037691" %)**Lower byte:**(%%) Specify the software version: 0x64=100, means firmware version 100 314 314 315 -(% style="color:#037691" %)**Frequency Band**: 316 316 317 -0 x01:EU868326 +(% style="color:#037691" %)**BAT (Battery Info):** 318 318 319 -0x0 2:US915328 +Ex1: 0x0CBA = 3258mV 320 320 321 -0x03: IN865 322 322 323 - 0x04:AU915331 +(% style="color:blue" %)**Signal Strength:** 324 324 325 - 0x05:KZ865333 +NB-IoT Network signal Strength. 326 326 327 - 0x06:RU864335 +**Ex1: 0x16 = 22** 328 328 329 -0 x07:AS923337 +**0** -113dBm or less 330 330 331 - 0x08:AS923-1339 +**1** -111dBm 332 332 333 -0 x09:AS923-2341 +**2...30** -109dBm... -53dBm 334 334 335 - 0x0a: AS923-3343 +**31** -51dBm or greater 336 336 337 - 0x0b:CN470345 +**99** Not known or not detectable 338 338 339 -0x0c: EU433 340 340 341 - 0x0d:KR920348 +(% style="color:blue" %)**Temperature: ** 342 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)354 +(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 358 +(% style="color:blue" %)**Humidity: ** 410 410 411 -Read:0 x(0197)=412Value:412/ 10=41.2, So41.2%360 +Read:0295(H)=661(D) Value: 661 / 10=66.1, So 66.1% 412 412 413 413 414 - ====(% style="color:#4472c4" %)**AlarmFlag & MOD & Level of PA8**(%%) ====363 +(% style="color:blue" %)**TimeStamp: ** 415 415 365 +Unit TimeStamp Example: 64d49439(H) = 1691653177(D) 416 416 417 - **Example:**367 +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 anormaluplink message,no alarm.370 +=== 2.2.3 ThingsBoard Payload(Type=3) === 422 422 423 - Ifpayload&0x80>>7=0x01 **~-~->**ThePA8islowlevel.372 +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 - Ifpayload >>2= 0x00**~-~->**means MOD=1,Thisisaamplinguplink message.375 +(% style="color:#4472C4" %)**{"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 378 +=== 2.2.4 ThingSpeak Payload(Type=1) === 431 431 432 - ==2.4 PayloadDecoder file==380 +This payload meets ThingSpeak platform requirement. It includes only four fields. Form 1~~4 are: 433 433 382 +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:385 +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]]387 +(% style="color:#4472C4" %)**field1=27.9&field2=49.9&field3=3.23&field4=28** 440 440 441 441 442 -== 2. 5DatalogFeature ==390 +== 2.3 Test Uplink and Change Update Interval == 443 443 444 444 445 - DatalogFeature istoensure IoT Servercan get all sampling data from Sensor even if the LoRaWAN network isdown.For each sampling,S31x-LBwillstorethe reading forfutureretrievingpurposes.393 +By default, Sensor will send uplinks (% style="color:blue" %)**every 2 hours**(%%) & AT+NOUD=8 446 446 447 447 448 - ===2.5.1Ways to getdatalogviaLoRaWAN ===396 +User can use below commands to change the (% style="color:blue" %)**uplink interval**. 449 449 398 +(% style="color:#037691" %)**~ AT+TDC=600 ** (%%) ~/~/ Set Update Interval to 600s 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. 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 -))) 401 +User can also push the button for more than 1 seconds to activate an uplink. 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 464 464 465 -== =2.5.2Unix TimeStamp ===406 +== 2.4 Multi-Samplings and One uplink == 466 466 467 467 468 -S31 x-LBusesUnixTimeStampformatbasedon409 +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: 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"]]411 +* (% 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) 471 471 472 - Usercanget thisimefromlink:[[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]]:413 +* (% 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. 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"]]416 +The diagram below explains the relationship between TR, NOUD, and TDC more clearly: 477 477 418 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png||alt="IMG_256"]] 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 421 +== 2.5 Humidity and Temperature alarm function == 481 481 482 - ===2.5.3SetDeviceTime===423 +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. 483 483 484 484 485 - User need to set(% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MACcommand.426 +(% style="color:blue" %)**AT Commands:** 486 486 487 - Once S31x-LB Joined LoRaWAN network, it will send the MAC command(DeviceTimeReq)and theserver will reply with (DeviceTimeAns) tosend the current time to S31x-LB. If S31x-LB fails toget the time from the server, S31x-LBwill use the internal time and wait for next time request (AT+SYNCTDCto set the time request period,default is 10 days).428 +(% style="color:#037691" %)**AT+ SHHUM=min,max** 488 488 489 - (% style="color:red"%)**Note: LoRaWANServer need to support LoRaWAN v1.0.3(MAC v1.0.3)orhigher to support this MAC command feature,Chirpstack,TTN V3 v3 and loriot support but TTN V3 v2 doesn'tsupport. If server doesn't support this command,itwill through away uplink packetwiththis command,souserwill lose the packetwith time request for TTN V3 v2 if SYNCMOD=1.**430 +Example: AT+ SHHUM=50,80 ~/~/ Alarm when humidity lower than 50 or higher than 80. 490 490 491 491 492 - ===2.5.4 Datalog Uplink payload (FPORT~=3) ===433 +(% style="color:#037691" %)**AT+ SHTEMP=min,max** 493 493 435 +Example: AT+ SHTEMP=20,30 ~/~/ Alarm when temperature lower than 20 or higher than 30 494 494 495 -The Datalog uplinks will use below payload format. 496 496 497 - **Retrievaldata payload:**438 +(% style="color:red" %)**Notice:** 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 -))) 440 +* To disable Alarm, user can set min and max to same value , such as (% style="color:#037691" %)**AT+SHTEMP=0,0.** 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 442 +* 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.** 518 518 519 -**Poll message flag & Alarm Flag & Level of PA8:** 520 520 521 -[[image:image-20230524114302-1.png||height="115" width="736"]] 445 +1. 446 +11. Trggier an uplink by external interrupt 522 522 448 +S31-NB has an external trigger interrupt function. Users can use the PB15 pin to trigger the upload of data packets. 523 523 524 - **NoACK Message**: 1:Thismessagemeans this payloadis fromn Uplink Message which doesn't get ACK from the server before ( for **PNACKMD=1** feature)450 +AT command: 525 525 526 -**Poll Message Flag**: 1: This message is a poll message reply. 452 +* AT+INTMOD ~/~/ Set the trigger interrupt mode 453 +* AT+INTMOD=0 ~/~/Disable Interrupt 454 +* AT+INTMOD=1 ~/~/Trigger by rising and falling edge 455 +* AT+INTMOD=2 ~/~/Trigger by falling edge 456 +* AT+INTMOD=3 ~/~/Trigger by rising edge 527 527 528 -* Poll Message Flag is set to 1. 529 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]]. 737 + 738 +(% 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