Changes for page SN50v3-LB/LS -- LoRaWAN Sensor Node User Manual
Last modified by Bei Jinggeng on 2025/01/10 15:51
Change comment:
There is no comment for this version
Summary
-
Page properties (3 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 35 removed)
- image-20230512163509-1.png
- image-20230512164658-2.png
- image-20230512170701-3.png
- image-20230512172447-4.png
- image-20230512173758-5.png
- image-20230512173903-6.png
- image-20230512180609-7.png
- image-20230512180718-8.png
- image-20230512181814-9.png
- image-20230513084523-1.png
- image-20230513102034-2.png
- image-20230513103633-3.png
- image-20230513105207-4.png
- image-20230513105351-5.png
- image-20230513110214-6.png
- image-20230513111203-7.png
- image-20230513111231-8.png
- image-20230513111255-9.png
- image-20230513134006-1.png
- image-20230515135611-1.jpeg
- image-20230610162852-1.png
- image-20230610163213-1.png
- image-20230610170047-1.png
- image-20230610170152-2.png
- image-20230810121434-1.png
- image-20230811113449-1.png
- image-20230817170702-1.png
- image-20230817172209-2.png
- image-20230817173800-3.png
- image-20230817173830-4.png
- image-20230817173858-5.png
- image-20230817183137-1.png
- image-20230817183218-2.png
- image-20230817183249-3.png
- image-20230818092200-1.png
Details
- Page properties
-
- Title
-
... ... @@ -1,1 +1,1 @@ 1 -SN50v3-LB LoRaWAN Sensor NodeUser Manual1 +SN50v3-LB User Manual - Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. ting1 +XWiki.Edwin - Content
-
... ... @@ -1,5 +1,4 @@ 1 -(% style="text-align:center" %) 2 -[[image:image-20230515135611-1.jpeg||height="589" width="589"]] 1 +[[image:image-20230511201248-1.png||height="403" width="489"]] 3 3 4 4 5 5 ... ... @@ -16,20 +16,23 @@ 16 16 17 17 == 1.1 What is SN50v3-LB LoRaWAN Generic Node == 18 18 19 - 20 20 (% style="color:blue" %)**SN50V3-LB **(%%)LoRaWAN Sensor Node is a Long Range LoRa Sensor Node. It is designed for outdoor use and powered by (% style="color:blue" %)** 8500mA Li/SOCl2 battery**(%%) for long term use.SN50V3-LB is designed to facilitate developers to quickly deploy industrial level LoRa and IoT solutions. It help users to turn the idea into a practical application and make the Internet of Things a reality. It is easy to program, create and connect your things everywhere. 21 21 22 -(% style="color:blue" %)**SN50V3-LB wireless part**(%%) is based on SX1262 allows the user to send data and reach extremely long ranges at low data-rates.It provides ultra-long range spread spectrum communication and high interference immunity whilst minimising current consumption.It targets professional wireless sensor network applications such as irrigation systems, smart metering, smart cities, and so on. 23 23 21 +(% style="color:blue" %)**SN50V3-LB wireless part**(%%) is based on SX1262 allows the user to send data and reach extremely long ranges at low data-rates.It provides ultra-long range spread spectrum communication and high interference immunity whilst minimising current consumption.It targets professional wireless sensor network applications such as irrigation systems, smart metering, smart cities, smartphone detection, building automation, and so on. 22 + 23 + 24 24 (% style="color:blue" %)**SN50V3-LB **(%%)has a powerful 48Mhz ARM microcontroller with 256KB flash and 64KB RAM. It has multiplex I/O pins to connect to different sensors. 25 25 26 + 26 26 (% style="color:blue" %)**SN50V3-LB**(%%) has a built-in BLE module, user can configure the sensor remotely via Mobile Phone. It also support OTA upgrade via private LoRa protocol for easy maintaining. 27 27 29 + 28 28 SN50V3-LB is the 3^^rd^^ generation of LSN50 series generic sensor node from Dragino. It is an (% style="color:blue" %)**open source project**(%%) and has a mature LoRaWAN stack and application software. User can use the pre-load software for their IoT projects or easily customize the software for different requirements. 29 29 32 + 30 30 == 1.2 Features == 31 31 32 - 33 33 * LoRaWAN 1.0.3 Class A 34 34 * Ultra-low power consumption 35 35 * Open-Source hardware/software ... ... @@ -42,7 +42,6 @@ 42 42 43 43 == 1.3 Specification == 44 44 45 - 46 46 (% style="color:#037691" %)**Common DC Characteristics:** 47 47 48 48 * Supply Voltage: built in 8500mAh Li-SOCI2 battery , 2.5v ~~ 3.6v ... ... @@ -79,7 +79,6 @@ 79 79 80 80 == 1.4 Sleep mode and working mode == 81 81 82 - 83 83 (% style="color:blue" %)**Deep Sleep Mode: **(%%)Sensor doesn't have any LoRaWAN activate. This mode is used for storage and shipping to save battery life. 84 84 85 85 (% style="color:blue" %)**Working Mode:** (%%)In this mode, Sensor will work as LoRaWAN Sensor to Join LoRaWAN network and send out sensor data to server. Between each sampling/tx/rx periodically, sensor will be in IDLE mode), in IDLE mode, sensor has the same power consumption as Deep Sleep mode. ... ... @@ -122,7 +122,7 @@ 122 122 == 1.7 Pin Definitions == 123 123 124 124 125 -[[image:image-20230 610163213-1.png||height="404" width="699"]]125 +[[image:image-20230511203450-2.png||height="443" width="785"]] 126 126 127 127 128 128 == 1.8 Mechanical == ... ... @@ -135,9 +135,8 @@ 135 135 [[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143909447-639.png]] 136 136 137 137 138 -== 1.9Hole Option ==138 +== Hole Option == 139 139 140 - 141 141 SN50v3-LB has different hole size options for different size sensor cable. The options provided are M12, M16 and M20. The definition is as below: 142 142 143 143 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/image-20220627104757-1.png?rev=1.1||alt="image-20220627104757-1.png"]] ... ... @@ -150,7 +150,7 @@ 150 150 == 2.1 How it works == 151 151 152 152 153 -The SN50v3-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 S N50v3-LB. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 20 minutes.152 +The SN50v3-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. 154 154 155 155 156 156 == 2.2 Quick guide to connect to LoRaWAN server (OTAA) == ... ... @@ -158,7 +158,7 @@ 158 158 159 159 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. 160 160 161 -The LPS8 v2 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.160 +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. 162 162 163 163 164 164 (% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from SN50v3-LB. ... ... @@ -207,7 +207,7 @@ 207 207 === 2.3.1 Device Status, FPORT~=5 === 208 208 209 209 210 -Users can use the downlink command(**0x26 01**) to ask SN50v3 -LBto send device configure detail, include device configure status. SN50v3-LBwill uplink a payload via FPort=5 to server.209 +Users can use the downlink command(**0x26 01**) to ask SN50v3 to send device configure detail, include device configure status. SN50v3 will uplink a payload via FPort=5 to server. 211 211 212 212 The Payload format is as below. 213 213 ... ... @@ -215,44 +215,44 @@ 215 215 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 216 216 |(% colspan="6" style="background-color:#d9e2f3; color:#0070c0" %)**Device Status (FPORT=5)** 217 217 |(% style="width:103px" %)**Size (bytes)**|(% style="width:72px" %)**1**|**2**|(% style="width:91px" %)**1**|(% style="width:86px" %)**1**|(% style="width:44px" %)**2** 218 -|(% 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 217 +|(% 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 219 219 220 220 Example parse in TTNv3 221 221 222 222 223 -(% style="color:#037691" %)**Sensor Model**(%%): For SN50v3 -LB, this value is 0x1C222 +(% style="color:#037691" %)**Sensor Model**(%%): For SN50v3, this value is 0x1C 224 224 225 225 (% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version 226 226 227 227 (% style="color:#037691" %)**Frequency Band**: 228 228 229 -0x01: EU868 228 +*0x01: EU868 230 230 231 -0x02: US915 230 +*0x02: US915 232 232 233 -0x03: IN865 232 +*0x03: IN865 234 234 235 -0x04: AU915 234 +*0x04: AU915 236 236 237 -0x05: KZ865 236 +*0x05: KZ865 238 238 239 -0x06: RU864 238 +*0x06: RU864 240 240 241 -0x07: AS923 240 +*0x07: AS923 242 242 243 -0x08: AS923-1 242 +*0x08: AS923-1 244 244 245 -0x09: AS923-2 244 +*0x09: AS923-2 246 246 247 -0x0a: AS923-3 246 +*0x0a: AS923-3 248 248 249 -0x0b: CN470 248 +*0x0b: CN470 250 250 251 -0x0c: EU433 250 +*0x0c: EU433 252 252 253 -0x0d: KR920 252 +*0x0d: KR920 254 254 255 -0x0e: MA869 254 +*0x0e: MA869 256 256 257 257 258 258 (% style="color:#037691" %)**Sub-Band**: ... ... @@ -273,427 +273,41 @@ 273 273 Ex2: 0x0B49 = 2889mV 274 274 275 275 276 -=== 2.3.2 Working Modes &Sensor Data.Uplink viaFPORT~=2 ===275 +=== 2.3.2 Sensor Data. FPORT~=2 === 277 277 278 278 279 -S N50v3-LB has different workingmode fortheconnectionsof different type of sensors. This sectiondescribes these modes. Use canuse the ATCommand (% style="color:blue" %)**AT+MOD**(%%) to set SN50v3-LB to different working modes.278 +Sensor Data is uplink via FPORT=2 280 280 281 -For example: 282 - 283 - (% style="color:blue" %)**AT+MOD=2 ** (%%) ~/~/ will set the SN50v3 to work in MOD=2 distance mode which target to measure distance via Ultrasonic Sensor. 284 - 285 - 286 -(% style="color:red" %) **Important Notice:** 287 - 288 -~1. Some working modes has payload more than 12 bytes, The US915/AU915/AS923 frequency bands' definition has maximum 11 bytes in (% style="color:blue" %)**DR0**(%%). Server sides will see NULL payload while SN50v3-LB transmit in DR0 with 12 bytes payload. 289 - 290 -2. All modes share the same Payload Explanation from HERE. 291 - 292 -3. By default, the device will send an uplink message every 20 minutes. 293 - 294 - 295 -==== 2.3.2.1 MOD~=1 (Default Mode) ==== 296 - 297 - 298 -In this mode, uplink payload includes in total 11 bytes. Uplink packets use FPORT=2. 299 - 300 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %) 301 -|(% style="background-color:#d9e2f3; color:#0070c0; width:50px" %)**Size(bytes)**|(% style="background-color:#d9e2f3; color:#0070c0; width:20px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:100px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:50px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:90px" %)**1**|(% style="background-color:#d9e2f3; color:#0070c0; width:130px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:80px" %)**2** 302 -|Value|Bat|(% style="width:191px" %)((( 303 -Temperature(DS18B20)(PC13) 304 -)))|(% style="width:78px" %)((( 305 -ADC(PA4) 306 -)))|(% style="width:216px" %)((( 307 -Digital in(PB15)&Digital Interrupt(PA8) 308 -)))|(% style="width:308px" %)((( 309 -Temperature(SHT20 or SHT31 or BH1750 Illumination Sensor) 310 -)))|(% style="width:154px" %)((( 311 -Humidity(SHT20 or SHT31) 312 -))) 313 - 314 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/image-20220627150949-6.png?rev=1.1||alt="image-20220627150949-6.png"]] 315 - 316 - 317 -==== 2.3.2.2 MOD~=2 (Distance Mode) ==== 318 - 319 - 320 -This mode is target to measure the distance. The payload of this mode is totally 11 bytes. The 8^^th^^ and 9^^th^^ bytes is for the distance. 321 - 322 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %) 323 -|(% style="background-color:#d9e2f3; color:#0070c0; width:50px" %)**Size(bytes)**|(% style="background-color:#d9e2f3; color:#0070c0; width:30px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:110px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:40px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:110px" %)**1**|(% style="background-color:#d9e2f3; color:#0070c0; width:140px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:40px" %)**2** 324 -|Value|BAT|(% style="width:196px" %)((( 325 -Temperature(DS18B20)(PC13) 326 -)))|(% style="width:87px" %)((( 327 -ADC(PA4) 328 -)))|(% style="width:189px" %)((( 329 -Digital in(PB15) & Digital Interrupt(PA8) 330 -)))|(% style="width:208px" %)((( 331 -Distance measure by: 1) LIDAR-Lite V3HP 332 -Or 2) Ultrasonic Sensor 333 -)))|(% style="width:117px" %)Reserved 334 - 335 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/1656324539647-568.png?rev=1.1||alt="1656324539647-568.png"]] 336 - 337 - 338 -(% style="color:blue" %)**Connection of LIDAR-Lite V3HP:** 339 - 340 -[[image:image-20230512173758-5.png||height="563" width="712"]] 341 - 342 - 343 -(% style="color:blue" %)**Connection to Ultrasonic Sensor:** 344 - 345 -(% style="color:red" %)**Need to remove R1 and R2 resistors to get low power,otherwise there will be 240uA standby current.** 346 - 347 -[[image:image-20230512173903-6.png||height="596" width="715"]] 348 - 349 - 350 -For the connection to TF-Mini or TF-Luna , MOD2 payload is as below: 351 - 352 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %) 353 -|(% style="background-color:#d9e2f3; color:#0070c0; width:50px" %)**Size(bytes)**|(% style="background-color:#d9e2f3; color:#0070c0; width:20px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:100px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:100px" %)**1**|(% style="background-color:#d9e2f3; color:#0070c0; width:50px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:120px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:80px" %)**2** 354 -|Value|BAT|(% style="width:183px" %)((( 355 -Temperature(DS18B20)(PC13) 356 -)))|(% style="width:173px" %)((( 357 -Digital in(PB15) & Digital Interrupt(PA8) 358 -)))|(% style="width:84px" %)((( 359 -ADC(PA4) 360 -)))|(% style="width:323px" %)((( 361 -Distance measure by:1)TF-Mini plus LiDAR 362 -Or 2) TF-Luna LiDAR 363 -)))|(% style="width:188px" %)Distance signal strength 364 - 365 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/1656376779088-686.png?rev=1.1||alt="1656376779088-686.png"]] 366 - 367 - 368 -**Connection to [[TF-Mini plus>>url:http://en.benewake.com/product/detail/5c345cd0e5b3a844c472329b.html]] LiDAR(UART version):** 369 - 370 -(% style="color:red" %)**Need to remove R3 and R4 resistors to get low power,otherwise there will be 400uA standby current.** 371 - 372 -[[image:image-20230512180609-7.png||height="555" width="802"]] 373 - 374 - 375 -**Connection to [[TF-Luna>>url:http://en.benewake.com/product/detail/5e1c1fd04d839408076b6255.html]] LiDAR (UART version):** 376 - 377 -(% style="color:red" %)**Need to remove R3 and R4 resistors to get low power,otherwise there will be 400uA standby current.** 378 - 379 -[[image:image-20230610170047-1.png||height="452" width="799"]] 380 - 381 - 382 -==== 2.3.2.3 MOD~=3 (3 ADC + I2C) ==== 383 - 384 - 385 -This mode has total 12 bytes. Include 3 x ADC + 1x I2C 386 - 387 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %) 388 -|=(% style="width: 50px;background-color:#D9E2F3;color:#0070C0" %)((( 280 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %) 281 +|=(% style="width: 90px;background-color:#D9E2F3" %)((( 389 389 **Size(bytes)** 390 -)))|=(% style="width: 50px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 50px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 50px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 90px;background-color:#D9E2F3;color:#0070C0" %)**1**|=(% style="width: 110px;background-color:#D9E2F3;color:#0070C0" %)2|=(% style="width: 100px;background-color:#D9E2F3;color:#0070C0" %)2|=(% style="width: 20px;background-color:#D9E2F3;color:#0070C0" %)1 391 -|Value|(% style="width:68px" %)((( 392 -ADC1(PA4) 393 -)))|(% style="width:75px" %)((( 394 -ADC2(PA5) 395 -)))|((( 396 -ADC3(PA8) 397 -)))|((( 398 -Digital Interrupt(PB15) 399 -)))|(% style="width:304px" %)((( 400 -Temperature(SHT20 or SHT31 or BH1750 Illumination Sensor) 401 -)))|(% style="width:163px" %)((( 402 -Humidity(SHT20 or SHT31) 403 -)))|(% style="width:53px" %)Bat 404 - 405 -[[image:image-20230513110214-6.png]] 406 - 407 - 408 -==== 2.3.2.4 MOD~=4 (3 x DS18B20) ==== 409 - 410 - 411 -This mode has total 11 bytes. As shown below: 412 - 413 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %) 414 -|(% style="background-color:#d9e2f3; color:#0070c0; width:50px" %)**Size(bytes)**|(% style="background-color:#d9e2f3; color:#0070c0; width:20px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:100px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:50px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:100px" %)**1**|(% style="background-color:#d9e2f3; color:#0070c0; width:100px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:100px" %)**2** 415 -|Value|BAT|(% style="width:186px" %)((( 416 -Temperature1(DS18B20)(PC13) 417 -)))|(% style="width:82px" %)((( 418 -ADC(PA4) 419 -)))|(% style="width:210px" %)((( 420 -Digital in(PB15) & Digital Interrupt(PA8) 421 -)))|(% style="width:191px" %)Temperature2(DS18B20) 422 -(PB9)|(% style="width:183px" %)Temperature3(DS18B20)(PB8) 423 - 424 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/1656377606181-607.png?rev=1.1||alt="1656377606181-607.png"]] 425 - 426 - 427 -[[image:image-20230513134006-1.png||height="559" width="736"]] 428 - 429 - 430 -==== 2.3.2.5 MOD~=5(Weight Measurement by HX711) ==== 431 - 432 - 433 -[[image:image-20230512164658-2.png||height="532" width="729"]] 434 - 435 -Each HX711 need to be calibrated before used. User need to do below two steps: 436 - 437 -1. Zero calibration. Don't put anything on load cell and run (% style="color:blue" %)**AT+WEIGRE**(%%) to calibrate to Zero gram. 438 -1. Adjust calibration factor (default value 400): Put a known weight thing on load cell and run (% style="color:blue" %)**AT+WEIGAP**(%%) to adjust the Calibration Factor. 439 -1. ((( 440 -Weight has 4 bytes, the unit is g. 441 - 442 - 443 - 283 +)))|=(% style="width: 80px;background-color:#D9E2F3" %)2|=(% style="width: 90px;background-color:#D9E2F3" %)4|=(% style="width:80px;background-color:#D9E2F3" %)1|=(% style="width: 80px;background-color:#D9E2F3" %)**2**|=(% style="width: 80px;background-color:#D9E2F3" %)2 284 +|(% style="width:99px" %)**Value**|(% style="width:69px" %)((( 285 +[[Battery>>||anchor="HBattery:"]] 286 +)))|(% style="width:130px" %)((( 287 +[[Unix TimeStamp>>||anchor="H2.5.2UnixTimeStamp"]] 288 +)))|(% style="width:91px" %)((( 289 +[[Alarm Flag>>||anchor="HAlarmFlag26MOD:"]] 290 +)))|(% style="width:103px" %)((( 291 +[[Temperature>>||anchor="HTemperature:"]] 292 +)))|(% style="width:80px" %)((( 293 +[[Humidity>>||anchor="HHumidity:"]] 444 444 ))) 445 445 446 - Forexample:296 +==== (% style="color:#4472c4" %)**Battery**(%%) ==== 447 447 448 - (% style="color:blue"%)**AT+GETSENSORVALUE =0**298 +Sensor Battery Level. 449 449 450 -Response: Weight is 401 g 451 - 452 -Check the response of this command and adjust the value to match the real value for thing. 453 - 454 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %) 455 -|=(% style="width: 50px;background-color:#D9E2F3;color:#0070C0" %)((( 456 -**Size(bytes)** 457 -)))|=(% style="width: 20px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 150px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 50px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 200px;background-color:#D9E2F3;color:#0070C0" %)**1**|=(% style="width: 50px;background-color:#D9E2F3;color:#0070C0" %)**4** 458 -|Value|BAT|(% style="width:193px" %)((( 459 -Temperature(DS18B20)(PC13) 460 -)))|(% style="width:85px" %)((( 461 -ADC(PA4) 462 -)))|(% style="width:186px" %)((( 463 -Digital in(PB15) & Digital Interrupt(PA8) 464 -)))|(% style="width:100px" %)Weight 465 - 466 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/image-20220820120036-2.png?width=1003&height=469&rev=1.1||alt="image-20220820120036-2.png" height="469" width="1003"]] 467 - 468 - 469 -==== 2.3.2.6 MOD~=6 (Counting Mode) ==== 470 - 471 - 472 -In this mode, the device will work in counting mode. It counts the interrupt on the interrupt pins and sends the count on TDC time. 473 - 474 -Connection is as below. The PIR sensor is a count sensor, it will generate interrupt when people come close or go away. User can replace the PIR sensor with other counting sensors. 475 - 476 -[[image:image-20230512181814-9.png||height="543" width="697"]] 477 - 478 - 479 -(% style="color:red" %)**Note:** **LoRaWAN wireless transmission will infect the PIR sensor. Which cause the counting value increase +1 for every uplink. User can change PIR sensor or put sensor away of the SN50_v3 to avoid this happen.** 480 - 481 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %) 482 -|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)**Size(bytes)**|=(% style="width: 40px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 180px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 100px;background-color:#D9E2F3;color:#0070C0" %)**1**|=(% style="width: 80px;background-color:#D9E2F3;color:#0070C0" %)**4** 483 -|Value|BAT|(% style="width:256px" %)((( 484 -Temperature(DS18B20)(PC13) 485 -)))|(% style="width:108px" %)((( 486 -ADC(PA4) 487 -)))|(% style="width:126px" %)((( 488 -Digital in(PB15) 489 -)))|(% style="width:145px" %)((( 490 -Count(PA8) 491 -))) 492 - 493 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/1656378441509-171.png?rev=1.1||alt="1656378441509-171.png"]] 494 - 495 - 496 -==== 2.3.2.7 MOD~=7 (Three interrupt contact modes) ==== 497 - 498 - 499 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %) 500 -|=(% style="width: 50px;background-color:#D9E2F3;color:#0070C0" %)((( 501 -**Size(bytes)** 502 -)))|=(% style="width: 20px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 90px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 50px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 90px;background-color:#D9E2F3;color:#0070C0" %)**1**|=(% style="width: 90px;background-color:#D9E2F3;color:#0070C0" %)**1**|=(% style="width: 90px;background-color:#D9E2F3;color:#0070C0" %)1|=(% style="width: 40px;background-color:#D9E2F3;color:#0070C0" %)2 503 -|Value|BAT|(% style="width:188px" %)((( 504 -Temperature(DS18B20) 505 -(PC13) 506 -)))|(% style="width:83px" %)((( 507 -ADC(PA5) 508 -)))|(% style="width:184px" %)((( 509 -Digital Interrupt1(PA8) 510 -)))|(% style="width:186px" %)Digital Interrupt2(PA4)|(% style="width:197px" %)Digital Interrupt3(PB15)|(% style="width:100px" %)Reserved 511 - 512 -[[image:image-20230513111203-7.png||height="324" width="975"]] 513 - 514 - 515 -==== 2.3.2.8 MOD~=8 (3ADC+1DS18B20) ==== 516 - 517 - 518 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %) 519 -|=(% style="width: 50px;background-color:#D9E2F3;color:#0070C0" %)((( 520 -**Size(bytes)** 521 -)))|=(% style="width: 30px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 110px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 70px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 120px;background-color:#D9E2F3;color:#0070C0" %)**1**|=(% style="width: 70px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 70px;background-color:#D9E2F3;color:#0070C0" %)2 522 -|Value|BAT|(% style="width:207px" %)((( 523 -Temperature(DS18B20) 524 -(PC13) 525 -)))|(% style="width:94px" %)((( 526 -ADC1(PA4) 527 -)))|(% style="width:198px" %)((( 528 -Digital Interrupt(PB15) 529 -)))|(% style="width:84px" %)((( 530 -ADC2(PA5) 531 -)))|(% style="width:82px" %)((( 532 -ADC3(PA8) 533 -))) 534 - 535 -[[image:image-20230513111231-8.png||height="335" width="900"]] 536 - 537 - 538 -==== 2.3.2.9 MOD~=9 (3DS18B20+ two Interrupt count mode) ==== 539 - 540 - 541 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %) 542 -|=(% style="width: 50px;background-color:#D9E2F3;color:#0070C0" %)((( 543 -**Size(bytes)** 544 -)))|=(% style="width: 20px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 90px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 90px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)**1**|=(% style="width: 90px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)4|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)4 545 -|Value|BAT|((( 546 -Temperature 547 -(DS18B20)(PC13) 548 -)))|((( 549 -Temperature2 550 -(DS18B20)(PB9) 551 -)))|((( 552 -Digital Interrupt 553 -(PB15) 554 -)))|(% style="width:193px" %)((( 555 -Temperature3 556 -(DS18B20)(PB8) 557 -)))|(% style="width:78px" %)((( 558 -Count1(PA8) 559 -)))|(% style="width:78px" %)((( 560 -Count2(PA4) 561 -))) 562 - 563 -[[image:image-20230513111255-9.png||height="341" width="899"]] 564 - 565 -(% style="color:blue" %)**The newly added AT command is issued correspondingly:** 566 - 567 -(% style="color:#037691" %)** AT+INTMOD1 PA8**(%%) pin: Corresponding downlink: (% style="color:#037691" %)**06 00 00 xx** 568 - 569 -(% style="color:#037691" %)** AT+INTMOD2 PA4**(%%) pin: Corresponding downlink: (% style="color:#037691" %)**06 00 01 xx** 570 - 571 -(% style="color:#037691" %)** AT+INTMOD3 PB15**(%%) pin: Corresponding downlink: (% style="color:#037691" %)** 06 00 02 xx** 572 - 573 - 574 -(% style="color:blue" %)**AT+SETCNT=aa,bb** 575 - 576 -When AA is 1, set the count of PA8 pin to BB Corresponding downlink:09 01 bb bb bb bb 577 - 578 -When AA is 2, set the count of PA4 pin to BB Corresponding downlink:09 02 bb bb bb bb 579 - 580 - 581 -==== 2.3.2.10 MOD~=10 (PWM input capture and output mode,Since firmware v1.2) ==== 582 - 583 -(% style="color:red" %)**Note: Firmware not release, contact Dragino for testing.** 584 - 585 -In this mode, the uplink can perform PWM input capture, and the downlink can perform PWM output. 586 - 587 -[[It should be noted when using PWM mode.>>||anchor="H2.3.3.12A0PWMMOD"]] 588 - 589 - 590 -===== 2.3.2.10.a Uplink, PWM input capture ===== 591 - 592 - 593 -[[image:image-20230817172209-2.png||height="439" width="683"]] 594 - 595 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:690px" %) 596 -|(% style="background-color:#d9e2f3; color:#0070c0; width:50px" %)**Size(bytes)**|(% style="background-color:#d9e2f3; color:#0070c0; width:20px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:100px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:50px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:135px" %)**1**|(% style="background-color:#d9e2f3; color:#0070c0; width:70px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:89px" %)**2** 597 -|Value|Bat|(% style="width:191px" %)((( 598 -Temperature(DS18B20)(PC13) 599 -)))|(% style="width:78px" %)((( 600 -ADC(PA4) 601 -)))|(% style="width:135px" %)((( 602 -PWM_Setting 603 - 604 -&Digital Interrupt(PA8) 605 -)))|(% style="width:70px" %)((( 606 -Pulse period 607 -)))|(% style="width:89px" %)((( 608 -Duration of high level 609 -))) 610 - 611 -[[image:image-20230817170702-1.png||height="161" width="1044"]] 612 - 613 - 614 -When the device detects the following PWM signal ,decoder will converts the pulse period and high-level duration to frequency and duty cycle. 615 - 616 -**Frequency:** 617 - 618 -(% class="MsoNormal" %) 619 -(% lang="EN-US" %)If (% style="background-attachment:initial; background-clip:initial; background-image:initial; background-origin:initial; background-position:initial; background-repeat:initial; background-size:initial; color:blue; font-family:Arial,sans-serif" %)**AT+PWMSET**(%%)**=0, **(% lang="EN-US" %)Frequency= 1000000/(%%)Pulse period(HZ); 620 - 621 -(% class="MsoNormal" %) 622 -(% lang="EN-US" %)If (% style="background-attachment:initial; background-clip:initial; background-image:initial; background-origin:initial; background-position:initial; background-repeat:initial; background-size:initial; color:blue; font-family:Arial,sans-serif" %)**AT+PWMSET**(%%)**=1, **(% lang="EN-US" %)Frequency= 1000/(%%)Pulse period(HZ); 623 - 624 - 625 -(% class="MsoNormal" %) 626 -**Duty cycle:** 627 - 628 -Duty cycle= Duration of high level/ Pulse period*100 ~(%). 629 - 630 -[[image:image-20230818092200-1.png||height="344" width="627"]] 631 - 632 -===== 2.3.2.10.b Uplink, PWM input capture ===== 633 - 634 - 635 - 636 - 637 - 638 - 639 - 640 -===== 2.3.2.10.c Downlink, PWM output ===== 641 - 642 - 643 -[[image:image-20230817173800-3.png||height="412" width="685"]] 644 - 645 -Downlink: (% style="color:#037691" %)**0B xx xx xx yy zz zz** 646 - 647 - xx xx xx is the output frequency, the unit is HZ. 648 - 649 - yy is the duty cycle of the output, the unit is %. 650 - 651 - zz zz is the time delay of the output, the unit is ms. 652 - 653 - 654 -For example, send a downlink command: 0B 00 61 A8 32 13 88, the frequency is 25KHZ, the duty cycle is 50, and the output time is 5 seconds. 655 - 656 -The oscilloscope displays as follows: 657 - 658 -[[image:image-20230817173858-5.png||height="694" width="921"]] 659 - 660 - 661 -=== 2.3.3 Decode payload === 662 - 663 - 664 -While using TTN V3 network, you can add the payload format to decode the payload. 665 - 666 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/1656378466788-734.png?rev=1.1||alt="1656378466788-734.png"]] 667 - 668 -The payload decoder function for TTN V3 are here: 669 - 670 -SN50v3-LB TTN V3 Payload Decoder: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>url:https://github.com/dragino/dragino-end-node-decoder]] 671 - 672 - 673 -==== 2.3.3.1 Battery Info ==== 674 - 675 - 676 -Check the battery voltage for SN50v3-LB. 677 - 678 678 Ex1: 0x0B45 = 2885mV 679 679 680 680 Ex2: 0x0B49 = 2889mV 681 681 682 682 683 -==== 2.3.3.2 Temperature (DS18B20) ==== 684 684 306 +==== (% style="color:#4472c4" %)**Temperature**(%%) ==== 685 685 686 - If there isaDS18B20 connected to PC13 pin. The temperature will beuploaded in the payload.308 +**Example**: 687 687 688 -More DS18B20 can check the [[3 DS18B20 mode>>||anchor="H2.3.2.4MOD3D4283xDS18B2029"]] 689 - 690 -(% style="color:blue" %)**Connection:** 691 - 692 -[[image:image-20230512180718-8.png||height="538" width="647"]] 693 - 694 - 695 -(% style="color:blue" %)**Example**: 696 - 697 697 If payload is: 0105H: (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree 698 698 699 699 If payload is: FF3FH : (FF3F & 8000 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees. ... ... @@ -701,261 +701,195 @@ 701 701 (FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative) 702 702 703 703 704 -==== 2.3.3.3DigitalInput ====317 +==== (% style="color:#4472c4" %)**Humidity**(%%) ==== 705 705 706 706 707 - TheigitalinputforpinPB15,320 +Read:0x(0197)=412 Value: 412 / 10=41.2, So 41.2% 708 708 709 -* When PB15 is high, the bit 1 of payload byte 6 is 1. 710 -* When PB15 is low, the bit 1 of payload byte 6 is 0. 711 711 712 -(% class="wikigeneratedid" id="H2.3.3.4A0AnalogueDigitalConverter28ADC29" %) 713 -((( 714 -When the digital interrupt pin is set to AT+INTMODx=0, this pin is used as a digital input pin. 323 +==== (% style="color:#4472c4" %)**Alarm Flag& MOD**(%%) ==== 715 715 716 -(% style="color:red" %)**Note: The maximum voltage input supports 3.6V.** 717 717 718 - 719 -))) 326 +**Example:** 720 720 721 - ====2.3.3.4 AnalogueDigitalConverter(ADC)====328 +If payload & 0x01 = 0x01 **~-~->** This is an Alarm Message 722 722 330 +If payload & 0x01 = 0x00 **~-~->** This is a normal uplink message, no alarm 723 723 724 - Themeasuring rangeoftheADCisonlyabout0.1Vto1.1VThevoltageresolution isabout 0.24mv.332 +If payload >> 2 = 0x00 **~-~->** means MOD=1, This is a sampling uplink message 725 725 726 - Whenthe measuredoutputvoltageofthesensorisnotwithintherangeof 0.1V and 1.1V, the output voltage terminalof theensor shall bedividedTheexamplein the followingfigure isto reduce the output voltage ofthe sensorbythreetimesIf itsnecessary to reducemoretimes,calculate accordingto the formula inthefigureand connecthe corresponding resistancein series.334 +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. 727 727 728 -[[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-20220628150112-1.png?width=285&height=241&rev=1.1||alt="image-20220628150112-1.png" height="241" width="285"]] 729 729 337 +== 2.4 Payload Decoder file == 730 730 731 -(% style="color:red" %)**Note: If the ADC type sensor needs to be powered by SN50_v3, it is recommended to use +5V to control its switch.Only sensors with low power consumption can be powered with VDD.** 732 732 340 +In TTN, use can add a custom payload so it shows friendly reading 733 733 734 - The positionof PA5 onthehardwareafter**LSN50v3.3**schangedto the positionhowninthe figure below,andthe collectedvoltagebecomesone-sixthofthe original.342 +In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from: 735 735 736 -[[imag e:image-20230811113449-1.png||height="370" width="608"]]344 +[[https:~~/~~/github.com/dragino/dragino-end-node-decoder/tree/main/LSN50v2-S31%26S31B >>https://github.com/dragino/dragino-end-node-decoder/tree/main/LSN50v2-S31%26S31B]] 737 737 738 -==== 2.3.3.5 Digital Interrupt ==== 739 739 347 +== 2.5 Datalog Feature == 740 740 741 -Digital Interrupt refers to pin PA8, and there are different trigger methods. When there is a trigger, the SN50v3-LB will send a packet to the server. 742 742 743 - (% style="color:blue"%)**Interruptconnection method:**350 +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. 744 744 745 -[[image:image-20230513105351-5.png||height="147" width="485"]] 746 746 353 +=== 2.5.1 Ways to get datalog via LoRaWAN === 747 747 748 -(% style="color:blue" %)**Example to use with door sensor :** 749 749 750 - Thedoorsensorisshownat right.It is a two wiremagneticcontactswitchusedfordetectingtheopen/close statusofdoorsorwindows.356 +Set [[PNACKMD=1>>||anchor="H2.5.4DatalogUplinkpayloadA028FPORT3D329"]], 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. 751 751 752 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/1656379210849-860.png?rev=1.1||alt="1656379210849-860.png"]] 358 +* a) S31x-LB will do an ACK check for data records sending to make sure every data arrive server. 359 +* 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. 753 753 754 - When the two pieces are close to each other, the 2wireoutput will beshortor open (depending onthe type), whileif the two piecesareawayfrom each other,the2 wire output will be theoppositestatus. Sowecan use SN50v3-LB interrupt interfaceto detectthe status for the door or window.361 +Below is the typical case for the auto-update datalog feature (Set PNACKMD=1) 755 755 363 +[[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"]] 756 756 757 - (% style="color:blue"%)**Belowistheinstallation example:**365 +=== 2.5.2 Unix TimeStamp === 758 758 759 -Fix one piece of the magnetic sensor to the door and connect the two pins to SN50v3-LB as follows: 760 760 761 -* ((( 762 -One pin to SN50v3-LB's PA8 pin 763 -))) 764 -* ((( 765 -The other pin to SN50v3-LB's VDD pin 766 -))) 368 +S31x-LB uses Unix TimeStamp format based on 767 767 768 - Install theother piecetothedoor. Find a place where the twopieceswillbe closeto eachotherwhenthedoor isclosed. For thisparticularmagnetic sensor, whenthedooris closed,theoutput will be short, and PA8 will betheVCC voltage.370 +[[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"]] 769 769 770 - Doorsensorshavetwotypes: (%style="color:blue"%)** NC (Normalclose)**(%%) and(% style="color:blue" %)**NO (normal open)**(%%). Theconnection forbothypesensors are the same. But the decoding for payload are reverse, user needto modify this in theIoT Server decoder.372 +User can get this time from link: [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] : 771 771 772 - When doorsensorisshorted, therewill extra powerconsumption in thecircuit, the extracurrent is 3v3/R14 = 3v3/1Mohm= 3uA which can beignored.374 +Below is the converter example 773 773 774 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/L SN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/1656379283019-229.png?rev=1.1||alt="1656379283019-229.png"]]376 +[[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"]] 775 775 776 - The abovephotosshowsthetwopartsofthemagneticswitch fittedtoadoor.378 +So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25 777 777 778 -The software by default uses the falling edge on the signal line as an interrupt. We need to modify it to accept both the rising edge (0v ~-~-> VCC , door close) and the falling edge (VCC ~-~-> 0v , door open) as the interrupt. 779 779 780 - The commandis:381 +=== 2.5.3 Set Device Time === 781 781 782 -(% style="color:blue" %)**AT+INTMOD1=1 ** (%%) ~/~/ (more info about INMOD please refer** **[[**AT Command Manual**>>url:http://www.dragino.com/downloads/index.php?dir=LSN50-LoRaST/&file=DRAGINO_LSN50_AT_Commands_v1.5.1.pdf]]**. **) 783 783 784 - Belowshowssome screen capturesinTTNV3:384 +User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command. 785 785 786 - [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/1656379339508-835.png?rev=1.1||alt="1656379339508-835.png"]]386 +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). 787 787 388 +(% 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.** 788 788 789 -In **MOD=1**, user can use byte 6 to see the status for door open or close. TTN V3 decoder is as below: 790 790 791 - door=(bytes[6]&0x80)?"CLOSE":"OPEN";391 +=== 2.5.4 Datalog Uplink payload (FPORT~=3) === 792 792 793 793 794 - ====2.3.3.6I2CInterface(SHT20& SHT31) ====394 +The Datalog uplinks will use below payload format. 795 795 396 +**Retrieval data payload:** 796 796 797 -The SDA and SCK are I2C interface lines. You can use these to connect to an I2C device and get the sensor data. 398 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %) 399 +|=(% style="width: 80px;background-color:#D9E2F3" %)((( 400 +**Size(bytes)** 401 +)))|=(% style="width: 60px; background-color: rgb(217, 226, 243);" %)**2**|=(% style="width: 60px; background-color: rgb(217, 226, 243);" %)**2**|=(% style="width: 120px; background-color: rgb(217, 226, 243);" %)**2**|=(% style="width: 103px; background-color: rgb(217, 226, 243);" %)**1**|=(% style="width: 85px; background-color: rgb(217, 226, 243);" %)**4** 402 +|(% style="width:103px" %)**Value**|(% style="width:54px" %)((( 403 +[[Temp_Black>>||anchor="HTemperatureBlack:"]] 404 +)))|(% style="width:51px" %)[[Temp_White>>||anchor="HTemperatureWhite:"]]|(% style="width:89px" %)[[Temp_ Red or Temp _White>>||anchor="HTemperatureREDorTemperatureWhite:"]]|(% style="width:103px" %)Poll message flag & Ext|(% style="width:54px" %)[[Unix Time Stamp>>||anchor="H2.5.2UnixTimeStamp"]] 798 798 799 - Wehavemadean example toshow how to usethe I2C interfacetoconnectto the SHT20/ SHT31 Temperature and Humidity Sensor.406 +**Poll message flag & Ext:** 800 800 801 - (% style="color:red" %)**Notice:Different I2C sensors have different I2Ccommands set anditiate process, if userwant touseotherI2C sensors, Userneedtore-write thesourcecodeo supportthosesensors. SHT20/SHT31 coden SN50v3-LBwill beagoodreference.**408 +[[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-20221006192726-1.png?width=754&height=112&rev=1.1||alt="图片-20221006192726-1.png" height="112" width="754"]] 802 802 410 +**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) 803 803 804 - Belowistheconnectionto SHT20/ SHT31.Theconnectionis asbelow:412 +**Poll Message Flag**: 1: This message is a poll message reply. 805 805 806 - [[image:image-20230610170152-2.png||height="501"width="846"]]414 +* Poll Message Flag is set to 1. 807 807 416 +* Each data entry is 11 bytes, to save airtime and battery, devices will send max bytes according to the current DR and Frequency bands. 808 808 809 - Thedevicewillbeableto get theI2C sensor datanow and uploadtoIoT Server.418 +For example, in US915 band, the max payload for different DR is: 810 810 811 - [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/1656379664142-345.png?rev=1.1||alt="1656379664142-345.png"]]420 +**a) DR0:** max is 11 bytes so one entry of data 812 812 813 - Convertthereadbyteto decimal anddivideit byn.422 +**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes) 814 814 815 -** Example:**424 +**c) DR2:** total payload includes 11 entries of data 816 816 817 - Temperature: Read:0116(H)= 278(D)Value:278 /10=27.8℃;426 +**d) DR3: **total payload includes 22 entries of data. 818 818 819 - Humidity:Read:0248(H)=584(D)Value:584 /10=58.4,So58.4%428 +If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0 820 820 821 -If you want to use other I2C device, please refer the SHT20 part source code as reference. 822 822 823 - 824 -==== 2.3.3.7 Distance Reading ==== 825 - 826 - 827 -Refer [[Ultrasonic Sensor section>>||anchor="H2.3.3.8UltrasonicSensor"]]. 828 - 829 - 830 -==== 2.3.3.8 Ultrasonic Sensor ==== 831 - 832 - 833 -This Fundamental Principles of this sensor can be found at this link: [[https:~~/~~/wiki.dfrobot.com/Weather_-_proof_Ultrasonic_Sensor_with_Separate_Probe_SKU~~_~~__SEN0208>>url:https://wiki.dfrobot.com/Weather_-_proof_Ultrasonic_Sensor_with_Separate_Probe_SKU___SEN0208]] 834 - 835 -The SN50v3-LB detects the pulse width of the sensor and converts it to mm output. The accuracy will be within 1 centimeter. The usable range (the distance between the ultrasonic probe and the measured object) is between 24cm and 600cm. 836 - 837 -The working principle of this sensor is similar to the (% style="color:blue" %)**HC-SR04**(%%) ultrasonic sensor. 838 - 839 -The picture below shows the connection: 840 - 841 -[[image:image-20230512173903-6.png||height="596" width="715"]] 842 - 843 - 844 -Connect to the SN50v3-LB and run (% style="color:blue" %)**AT+MOD=2**(%%) to switch to ultrasonic mode (ULT). 845 - 846 -The ultrasonic sensor uses the 8^^th^^ and 9^^th^^ byte for the measurement value. 847 - 848 848 **Example:** 849 849 850 - Distance:Read: 0C2D(Hex) =3117(D)Value:3117mm=311.7cm433 +If S31x-LB has below data inside Flash: 851 851 435 +[[image:1682646494051-944.png]] 852 852 853 - ====2.3.3.9 BatteryOutput-BAT pin====437 +If user sends below downlink command: 3160065F9760066DA705 854 854 439 +Where : Start time: 60065F97 = time 21/1/19 04:27:03 855 855 856 - TheBATpinofSN50v3-LBisconnectedtotheBatterydirectly.Ifuserswanttouse BATpinto power an external sensor. User need to make sure the external sensoris of low power consumption. Becausethe BATpin is always open. Ifthe external sensoris of high power consumption. thebatteryof SN50v3-LB will run out very soon.441 + Stop time: 60066DA7= time 21/1/19 05:27:03 857 857 858 858 859 - ==== 2.3.3.10+5VOutput====444 +**S31x-LB will uplink this payload.** 860 860 446 +[[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-13.png?width=727&height=421&rev=1.1||alt="图片-20220523001219-13.png" height="421" width="727"]] 861 861 862 -SN50v3-LB will enable +5V output before all sampling and disable the +5v after all sampling. 448 +((( 449 +__**7FFF089801464160065F97**__ **__7FFF__ __088E__ __014B__ __41__ __60066009__** 7FFF0885014E41600660667FFF0875015141600662BE7FFF086B015541600665167FFF08660155416006676E7FFF085F015A41600669C67FFF0857015D4160066C1E 450 +))) 863 863 864 -The 5V output time can be controlled by AT Command. 452 +((( 453 +Where the first 11 bytes is for the first entry: 454 +))) 865 865 866 -(% style="color:blue" %)**AT+5VT=1000** 456 +((( 457 +7FFF089801464160065F97 458 +))) 867 867 868 -Means set 5V valid time to have 1000ms. So the real 5V output will actually have 1000ms + sampling time for other sensors. 460 +((( 461 +**Ext sensor data**=0x7FFF/100=327.67 462 +))) 869 869 870 -By default the **AT+5VT=500**. If the external sensor which require 5v and require more time to get stable state, user can use this command to increase the power ON duration for this sensor. 464 +((( 465 +**Temp**=0x088E/100=22.00 466 +))) 871 871 872 - 873 -==== 2.3.3.11 BH1750 Illumination Sensor ==== 874 - 875 - 876 -MOD=1 support this sensor. The sensor value is in the 8^^th^^ and 9^^th^^ bytes. 877 - 878 -[[image:image-20230512172447-4.png||height="416" width="712"]] 879 - 880 - 881 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/image-20220628110012-12.png?rev=1.1||alt="image-20220628110012-12.png" height="361" width="953"]] 882 - 883 - 884 -==== 2.3.3.12 PWM MOD ==== 885 - 886 - 887 -* ((( 888 -The maximum voltage that the SDA pin of SN50v3 can withstand is 3.6V, and it cannot exceed this voltage value, otherwise the chip may be burned. 468 +((( 469 +**Hum**=0x014B/10=32.6 889 889 ))) 890 -* ((( 891 -If the PWM pin connected to the SDA pin cannot maintain a high level when it is not working, you need to remove the resistor R2 or replace it with a resistor with a larger resistance, otherwise a sleep current of about 360uA will be generated. The position of the resistor is shown in the figure below: 892 -))) 893 893 894 - [[image:image-20230817183249-3.png||height="320" width="417"]] 895 - 896 -* ((( 897 -The signal captured by the input should preferably be processed by hardware filtering and then connected in. The software processing method is to capture four values, discard the first captured value, and then take the middle value of the second, third, and fourth captured values. 472 +((( 473 +**poll message flag & Ext**=0x41,means reply data,Ext=1 898 898 ))) 899 -* ((( 900 -Since the device can only detect a pulse period of 50ms when [[AT+PWMSET=0>>||anchor="H3.3.8PWMsetting"]] (counting in microseconds), it is necessary to change the value of PWMSET according to the frequency of input capture. 901 -))) 902 -* ((( 903 -PWM Input allows low power consumption. PWM Output to achieve real-time control, you need to go to Class C. Power consumption will not be low. 904 904 905 -For PWM Output Feature, there are two consideration to see if the device can be powered by battery or have to be powered by external DC. 906 - 907 -a) If needs to realtime control output, SN50v3-LB has be run in CLass C and have to use external power source. 908 - 909 -b) If the output duration is more than 30 seconds, bettert to use external power source. 910 - 911 - 912 - 476 +((( 477 +**Unix time** is 0x60066009=1611030423s=21/1/19 04:27:03 913 913 ))) 914 914 915 -==== 2.3.3.13 Working MOD ==== 916 916 481 +(% 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="单击并拖动以调整大小" %)的 917 917 918 -T heworking MOD info is contained intheDigitalin & Digital Interruptbyte(7^^th^^ Byte).483 +== 2.6 Temperature Alarm Feature == 919 919 920 -User can use the 3^^rd^^ ~~ 7^^th^^ bit of this byte to see the working mod: 921 921 922 - Case 7^^th^^Byte>>2&0x1f:486 +S31x-LB work flow with Alarm feature. 923 923 924 -* 0: MOD1 925 -* 1: MOD2 926 -* 2: MOD3 927 -* 3: MOD4 928 -* 4: MOD5 929 -* 5: MOD6 930 -* 6: MOD7 931 -* 7: MOD8 932 -* 8: MOD9 933 -* 9: MOD10 934 934 935 - == 2.4 PayloadDecoderfile489 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-D20-D22-D23%20LoRaWAN%20Temperature%20Sensor%20User%20Manual/WebHome/image-20220623090437-1.png?rev=1.1||alt="图片-20220623090437-1.png"]] 936 936 937 937 938 - InTTN,usecanadd acustom payloadso it shows friendly reading492 +== 2.7 Frequency Plans == 939 939 940 -In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from: 941 941 942 - [[https:~~/~~/github.com/dragino/dragino-end-node-decoder/tree/main/SN50_v3-LB>>https://github.com/dragino/dragino-end-node-decoder/tree/main/SN50_v3-LB]]495 +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. 943 943 944 - 945 -== 2.5 Frequency Plans == 946 - 947 - 948 -The SN50v3-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. 949 - 950 950 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]] 951 951 952 952 953 -= 3. Configure S N50v3-LB =500 += 3. Configure S31x-LB = 954 954 955 955 == 3.1 Configure Methods == 956 956 957 957 958 -S N50v3-LB supports below configure method:505 +S31x-LB supports below configure method: 959 959 960 960 * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]]. 961 961 * 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]]. ... ... @@ -974,10 +974,10 @@ 974 974 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/]] 975 975 976 976 977 -== 3.3 Commands special design for S N50v3-LB ==524 +== 3.3 Commands special design for S31x-LB == 978 978 979 979 980 -These commands only valid for S N50v3-LB, as below:527 +These commands only valid for S31x-LB, as below: 981 981 982 982 983 983 === 3.3.1 Set Transmit Interval Time === ... ... @@ -988,7 +988,7 @@ 988 988 (% style="color:blue" %)**AT Command: AT+TDC** 989 989 990 990 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 991 -|=(% style="width: 156px;background-color:#D9E2F3 ;color:#0070C0" %)**Command Example**|=(% style="width: 137px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="background-color:#D9E2F3;color:#0070C0" %)**Response**538 +|=(% style="width: 156px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 137px;background-color:#D9E2F3" %)**Function**|=(% style="background-color:#D9E2F3" %)**Response** 992 992 |(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|((( 993 993 30000 994 994 OK ... ... @@ -1011,187 +1011,115 @@ 1011 1011 === 3.3.2 Get Device Status === 1012 1012 1013 1013 1014 -Send a LoRaWAN downlink to ask thedevicetosenditsstatus.561 +Send a LoRaWAN downlink to ask device send Alarm settings. 1015 1015 1016 -(% style="color:blue" %)**Downlink Payload: 0x26 01 **563 +(% style="color:blue" %)**Downlink Payload: **(%%)0x26 01 1017 1017 1018 -Sensor will upload Device Status via **FPORT=5**. See payload section for detail.565 +Sensor will upload Device Status via FPORT=5. See payload section for detail. 1019 1019 1020 1020 1021 -=== 3.3.3 Set InterruptMode===568 +=== 3.3.3 Set Temperature Alarm Threshold === 1022 1022 570 +* (% style="color:blue" %)**AT Command:** 1023 1023 1024 - Feature,SetInterrupt mode forGPIO_EXIT.572 +(% style="color:#037691" %)**AT+SHTEMP=min,max** 1025 1025 1026 -(% style="color:blue" %)**AT Command: AT+INTMOD1,AT+INTMOD2,AT+INTMOD3** 574 +* When min=0, and max≠0, Alarm higher than max 575 +* When min≠0, and max=0, Alarm lower than min 576 +* When min≠0 and max≠0, Alarm higher than max or lower than min 1027 1027 1028 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 1029 -|=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 197px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 158px;background-color:#D9E2F3;color:#0070C0" %)**Response** 1030 -|(% style="width:154px" %)AT+INTMOD1=?|(% style="width:196px" %)Show current interrupt mode|(% style="width:157px" %)((( 1031 -0 1032 -OK 1033 -the mode is 0 =Disable Interrupt 1034 -))) 1035 -|(% style="width:154px" %)AT+INTMOD1=2|(% style="width:196px" %)((( 1036 -Set Transmit Interval 1037 -0. (Disable Interrupt), 1038 -~1. (Trigger by rising and falling edge) 1039 -2. (Trigger by falling edge) 1040 -3. (Trigger by rising edge) 1041 -)))|(% style="width:157px" %)OK 1042 -|(% style="width:154px" %)AT+INTMOD2=3|(% style="width:196px" %)((( 1043 -Set Transmit Interval 1044 -trigger by rising edge. 1045 -)))|(% style="width:157px" %)OK 1046 -|(% style="width:154px" %)AT+INTMOD3=0|(% style="width:196px" %)Disable Interrupt|(% style="width:157px" %)OK 578 +Example: 1047 1047 1048 - (%style="color:blue"%)**DownlinkCommand:0x06**580 + AT+SHTEMP=0,30 ~/~/ Alarm when temperature higher than 30. 1049 1049 1050 - Format:CommandCode(0x06)followedby 3 bytes.582 +* (% style="color:blue" %)**Downlink Payload:** 1051 1051 1052 - Thismeanshat theinterrupt modeofthe end node is set to0x000003=3(risingedgetrigger),andthetypecodeis06.584 +(% style="color:#037691" %)**0x(0C 01 00 1E)** (%%) ~/~/ Set AT+SHTEMP=0,30 1053 1053 1054 -* Example 1: Downlink Payload: 06000000 **~-~-->** AT+INTMOD1=0 1055 -* Example 2: Downlink Payload: 06000003 **~-~-->** AT+INTMOD1=3 1056 -* Example 3: Downlink Payload: 06000102 **~-~-->** AT+INTMOD2=2 1057 -* Example 4: Downlink Payload: 06000201 **~-~-->** AT+INTMOD3=1 586 +(% style="color:red" %)**(note: 3^^rd^^ byte= 0x00 for low limit(not set), 4^^th^^ byte = 0x1E for high limit: 30)** 1058 1058 1059 -=== 3.3.4 Set Power Output Duration === 1060 1060 589 +=== 3.3.4 Set Humidity Alarm Threshold === 1061 1061 1062 - Controltheoutput duration 5V . Beforeeachsampling,device will591 +* (% style="color:blue" %)**AT Command:** 1063 1063 1064 - ~1.firstenablethe poweroutput to externalsensor,593 +(% style="color:#037691" %)**AT+SHHUM=min,max** 1065 1065 1066 -2. keep it on as per duration, read sensor value and construct uplink payload 595 +* When min=0, and max≠0, Alarm higher than max 596 +* When min≠0, and max=0, Alarm lower than min 597 +* When min≠0 and max≠0, Alarm higher than max or lower than min 1067 1067 1068 - 3. final, closethe power output.599 +Example: 1069 1069 1070 - (%style="color:blue"%)**ATCommand:AT+5VT**601 + AT+SHHUM=70,0 ~/~/ Alarm when humidity lower than 70%. 1071 1071 1072 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 1073 -|=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 197px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 158px;background-color:#D9E2F3;color:#0070C0" %)**Response** 1074 -|(% style="width:154px" %)AT+5VT=?|(% style="width:196px" %)Show 5V open time.|(% style="width:157px" %)((( 1075 -500(default) 1076 -OK 1077 -))) 1078 -|(% style="width:154px" %)AT+5VT=1000|(% style="width:196px" %)((( 1079 -Close after a delay of 1000 milliseconds. 1080 -)))|(% style="width:157px" %)OK 603 +* (% style="color:blue" %)**Downlink Payload:** 1081 1081 1082 -(% style="color: blue" %)**DownlinkCommand:0x07**605 +(% style="color:#037691" %)**0x(0C 02 46 00)**(%%) ~/~/ Set AT+SHTHUM=70,0 1083 1083 1084 - Format:CommandCode(0x07)followedby2bytes.607 +(% style="color:red" %)**(note: 3^^rd^^ byte= 0x46 for low limit (70%), 4^^th^^ byte = 0x00 for high limit (not set))** 1085 1085 1086 -The first and second bytes are the time to turn on. 1087 1087 1088 -* Example 1: Downlink Payload: 070000 **~-~-->** AT+5VT=0 1089 -* Example 2: Downlink Payload: 0701F4 **~-~-->** AT+5VT=500 610 +=== 3.3.5 Set Alarm Interval === 1090 1090 1091 - ===3.3.5 SetWeighingparameters===612 +The shortest time of two Alarm packet. (unit: min) 1092 1092 614 +* (% style="color:blue" %)**AT Command:** 1093 1093 1094 - Feature:Workingmode5iseffective,weight initializationandweightfactorsettingofHX711.616 +(% style="color:#037691" %)**AT+ATDC=30** (%%) ~/~/ The shortest interval of two Alarm packets is 30 minutes, Means is there is an alarm packet uplink, there won't be another one in the next 30 minutes. 1095 1095 1096 -(% style="color:blue" %)** ATCommand:AT+WEIGRE,AT+WEIGAP**618 +* (% style="color:blue" %)**Downlink Payload:** 1097 1097 1098 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 1099 -|=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 197px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 158px;background-color:#D9E2F3;color:#0070C0" %)**Response** 1100 -|(% style="width:154px" %)AT+WEIGRE|(% style="width:196px" %)Weight is initialized to 0.|(% style="width:157px" %)OK 1101 -|(% style="width:154px" %)AT+WEIGAP=?|(% style="width:196px" %)400.0|(% style="width:157px" %)OK(default) 1102 -|(% style="width:154px" %)AT+WEIGAP=400.3|(% style="width:196px" %)Set the factor to 400.3.|(% style="width:157px" %)OK 620 +(% style="color:#037691" %)**0x(0D 00 1E)**(%%) **~-~--> ** Set AT+ATDC=0x 00 1E = 30 minutes 1103 1103 1104 -(% style="color:blue" %)**Downlink Command: 0x08** 1105 1105 1106 - Format:CommandCode(0x08) followed by 2 bytesor4 bytes.623 +=== 3.3.6 Get Alarm settings === 1107 1107 1108 -Use AT+WEIGRE when the first byte is 1, only 1 byte. When it is 2, use AT+WEIGAP, there are 3 bytes. 1109 1109 1110 - Thesecond andthird bytesaremultipliedby10timesto betheAT+WEIGAP value.626 +Send a LoRaWAN downlink to ask device send Alarm settings. 1111 1111 1112 -* Example 1: Downlink Payload: 0801 **~-~-->** AT+WEIGRE 1113 -* Example 2: Downlink Payload: 08020FA3 **~-~-->** AT+WEIGAP=400.3 1114 -* Example 3: Downlink Payload: 08020FA0 **~-~-->** AT+WEIGAP=400.0 628 +* (% style="color:#037691" %)**Downlink Payload: **(%%)0x0E 01 1115 1115 1116 - === 3.3.6 Set Digitalpulsecount value ===630 +**Example:** 1117 1117 632 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-D20-D22-D23%20LoRaWAN%20Temperature%20Sensor%20User%20Manual/WebHome/1655948182791-225.png?rev=1.1||alt="1655948182791-225.png"]] 1118 1118 1119 -Feature: Set the pulse count value. 1120 1120 1121 - Count 1 is PA8pin of mode 6and mode 9. Count 2is PA4 pinof mode 9.635 +**Explain:** 1122 1122 1123 - (%style="color:blue"%)**ATCommand:AT+SETCNT**637 +* Alarm & MOD bit is 0x7C, 0x7C >> 2 = 0x31: Means this message is the Alarm settings message. 1124 1124 1125 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 1126 -|=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 197px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 158px;background-color:#D9E2F3;color:#0070C0" %)**Response** 1127 -|(% style="width:154px" %)AT+SETCNT=1,100|(% style="width:196px" %)Initialize the count value 1 to 100.|(% style="width:157px" %)OK 1128 -|(% style="width:154px" %)AT+SETCNT=2,0|(% style="width:196px" %)Initialize the count value 2 to 0.|(% style="width:157px" %)OK 639 +=== 3.3.7 Set Interrupt Mode === 1129 1129 1130 -(% style="color:blue" %)**Downlink Command: 0x09** 1131 1131 1132 -F ormat:CommandCode(0x09)followedby 5 bytes.642 +Feature, Set Interrupt mode for GPIO_EXIT. 1133 1133 1134 - Thefirstbyte is to select which count value toinitialize, and the next fourytes are the count valuetobe initialized.644 +(% style="color:blue" %)**AT Command: AT+INTMOD** 1135 1135 1136 -* Example 1: Downlink Payload: 090100000000 **~-~-->** AT+SETCNT=1,0 1137 -* Example 2: Downlink Payload: 0902000003E8 **~-~-->** AT+SETCNT=2,1000 1138 - 1139 -=== 3.3.7 Set Workmode === 1140 - 1141 - 1142 -Feature: Switch working mode. 1143 - 1144 -(% style="color:blue" %)**AT Command: AT+MOD** 1145 - 1146 1146 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 1147 -|=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 197px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 158px;background-color:#D9E2F3;color:#0070C0" %)**Response** 1148 -|(% style="width:154px" %)AT+MOD=?|(% style="width:196px" %)Get the current working mode.|(% style="width:157px" %)((( 647 +|=(% style="width: 154px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 196px;background-color:#D9E2F3" %)**Function**|=(% style="width: 157px;background-color:#D9E2F3" %)**Response** 648 +|(% style="width:154px" %)AT+INTMOD=?|(% style="width:196px" %)Show current interrupt mode|(% style="width:157px" %)((( 649 +0 1149 1149 OK 651 +the mode is 0 =Disable Interrupt 1150 1150 ))) 1151 -|(% style="width:154px" %)AT+MOD=4|(% style="width:196px" %)Set the working mode to 3DS18B20s.|(% style="width:157px" %)((( 1152 -OK 1153 -Attention:Take effect after ATZ 1154 -))) 653 +|(% style="width:154px" %)AT+INTMOD=2|(% style="width:196px" %)((( 654 +Set Transmit Interval 655 +0. (Disable Interrupt), 656 +~1. (Trigger by rising and falling edge) 657 +2. (Trigger by falling edge) 658 +3. (Trigger by rising edge) 659 +)))|(% style="width:157px" %)OK 1155 1155 1156 -(% style="color:blue" %)**Downlink Command: 0x0 A**661 +(% style="color:blue" %)**Downlink Command: 0x06** 1157 1157 1158 -Format: Command Code (0x0 A) followed by1bytes.663 +Format: Command Code (0x06) followed by 3 bytes. 1159 1159 1160 -* Example 1: Downlink Payload: 0A01 **~-~-->** AT+MOD=1 1161 -* Example 2: Downlink Payload: 0A04 **~-~-->** AT+MOD=4 665 +This means that the interrupt mode of the end node is set to 0x000003=3 (rising edge trigger), and the type code is 06. 1162 1162 1163 -=== 3.3.8 PWM setting === 667 +* Example 1: Downlink Payload: 06000000 ~/~/ Turn off interrupt mode 668 +* Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger 1164 1164 1165 - 1166 -Feature: Set the time acquisition unit for PWM input capture. 1167 - 1168 -(% style="color:blue" %)**AT Command: AT+PWMSET** 1169 - 1170 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 1171 -|=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 197px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 158px;background-color:#D9E2F3;color:#0070C0" %)**Response** 1172 -|(% style="width:154px" %)AT+PWMSET=?|(% style="width:196px" %)0|(% style="width:157px" %)((( 1173 -0(default) 1174 - 1175 -OK 1176 -))) 1177 -|(% style="width:154px" %)AT+PWMSET=0|(% style="width:196px" %)The unit of PWM capture time is microsecond. The capture frequency range is between 20HZ and 100000HZ. |(% style="width:157px" %)((( 1178 -OK 1179 - 1180 -))) 1181 -|(% style="width:154px" %)AT+PWMSET=1|(% style="width:196px" %)The unit of PWM capture time is millisecond. The capture frequency range is between 5HZ and 250HZ. |(% style="width:157px" %)OK 1182 - 1183 -(% style="color:blue" %)**Downlink Command: 0x0C** 1184 - 1185 -Format: Command Code (0x0C) followed by 1 bytes. 1186 - 1187 -* Example 1: Downlink Payload: 0C00 **~-~-->** AT+PWMSET=0 1188 -* Example 2: Downlink Payload: 0C01 **~-~-->** AT+PWMSET=1 1189 - 1190 - 1191 - 1192 - 1193 - 1194 - 1195 1195 = 4. Battery & Power Consumption = 1196 1196 1197 1197 ... ... @@ -1204,43 +1204,24 @@ 1204 1204 1205 1205 1206 1206 (% class="wikigeneratedid" %) 1207 - **User can change firmware SN50v3-LB to:**682 +User can change firmware SN50v3-LB to: 1208 1208 1209 1209 * Change Frequency band/ region. 1210 1210 * Update with new features. 1211 1211 * Fix bugs. 1212 1212 1213 - **Firmware and changelog can be downloaded from :****[[Firmware download link>>https://www.dropbox.com/sh/4rov7bcp6u28exp/AACt-wAySd4si5AXi8DBmvSca?dl=0]]**688 +Firmware and changelog can be downloaded from : **[[Firmware download link>>url:https://www.dropbox.com/sh/kwqv57tp6pejias/AAAopYMATh1GM6fZ-VRCLrpDa?dl=0]]** 1214 1214 1215 -**Methods to Update Firmware:** 1216 1216 1217 -* (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/]]** 1218 -* 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]]**. 691 +Methods to Update Firmware: 1219 1219 693 +* (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/]] 694 +* 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]]**. 695 + 1220 1220 = 6. FAQ = 1221 1221 1222 -== 6.1 Where can i find source code of SN50v3-LB? == 1223 1223 1224 1224 1225 -* **[[Hardware Source Files>>https://github.com/dragino/Lora/tree/master/LSN50/v3.0]].** 1226 -* **[[Software Source Code & Compile instruction>>https://github.com/dragino/SN50v3]].** 1227 - 1228 -== 6.2 How to generate PWM Output in SN50v3-LB? == 1229 - 1230 - 1231 -See this document: **[[Generate PWM Output on SN50v3>>https://www.dropbox.com/scl/fi/r3trcet2knujg40w0mgyn/Generate-PWM-Output-on-SN50v3.pdf?rlkey=rxsgmrhhrv62iiiwjq9sv10bn&dl=0]]**. 1232 - 1233 - 1234 -== 6.3 How to put several sensors to a SN50v3-LB? == 1235 - 1236 - 1237 -When we want to put several sensors to A SN50v3-LB, the waterproof at the grand connector will become an issue. User can try to exchange the grand connector to below type. 1238 - 1239 -[[Reference Supplier>>https://www.yscableglands.com/cable-glands/nylon-cable-glands/cable-gland-rubber-seal.html]]. 1240 - 1241 -[[image:image-20230810121434-1.png||height="242" width="656"]] 1242 - 1243 - 1244 1244 = 7. Order Info = 1245 1245 1246 1246 ... ... @@ -1266,7 +1266,6 @@ 1266 1266 1267 1267 = 8. Packing Info = 1268 1268 1269 - 1270 1270 (% style="color:#037691" %)**Package Includes**: 1271 1271 1272 1272 * SN50v3-LB LoRaWAN Generic Node ... ... @@ -1282,5 +1282,4 @@ 1282 1282 1283 1283 1284 1284 * 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. 1285 - 1286 -* 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>>url:http://../../../../../../D:%5C%E5%B8%82%E5%9C%BA%E8%B5%84%E6%96%99%5C%E8%AF%B4%E6%98%8E%E4%B9%A6%5CLoRa%5CLT%E7%B3%BB%E5%88%97%5Csupport@dragino.cc]] 740 +* 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.com>>url:http://../../../../../../D:%5C%E5%B8%82%E5%9C%BA%E8%B5%84%E6%96%99%5C%E8%AF%B4%E6%98%8E%E4%B9%A6%5CLoRa%5CLT%E7%B3%BB%E5%88%97%5Csupport@dragino.com]]
- image-20230512163509-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -1.5 MB - Content
- image-20230512164658-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -2.0 MB - Content
- image-20230512170701-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -2.5 MB - Content
- image-20230512172447-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -2.0 MB - Content
- image-20230512173758-5.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -2.1 MB - Content
- image-20230512173903-6.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -2.3 MB - Content
- image-20230512180609-7.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -2.3 MB - Content
- image-20230512180718-8.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -2.3 MB - Content
- image-20230512181814-9.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -2.2 MB - Content
- image-20230513084523-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -611.3 KB - Content
- image-20230513102034-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -607.1 KB - Content
- image-20230513103633-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -595.5 KB - Content
- image-20230513105207-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -384.7 KB - Content
- image-20230513105351-5.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -37.6 KB - Content
- image-20230513110214-6.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -172.7 KB - Content
- image-20230513111203-7.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -79.9 KB - Content
- image-20230513111231-8.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -64.9 KB - Content
- image-20230513111255-9.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -70.4 KB - Content
- image-20230513134006-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -1.9 MB - Content
- image-20230515135611-1.jpeg
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -948.0 KB - Content
- image-20230610162852-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -695.7 KB - Content
- image-20230610163213-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -695.4 KB - Content
- image-20230610170047-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -444.9 KB - Content
- image-20230610170152-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -359.5 KB - Content
- image-20230810121434-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Edwin - Size
-
... ... @@ -1,1 +1,0 @@ 1 -137.3 KB - Content
- image-20230811113449-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -973.1 KB - Content
- image-20230817170702-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -39.6 KB - Content
- image-20230817172209-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -1.3 MB - Content
- image-20230817173800-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -1.1 MB - Content
- image-20230817173830-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -508.5 KB - Content
- image-20230817173858-5.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -1.6 MB - Content
- image-20230817183137-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -137.1 KB - Content
- image-20230817183218-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -137.1 KB - Content
- image-20230817183249-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -948.6 KB - Content
- image-20230818092200-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Saxer - Size
-
... ... @@ -1,1 +1,0 @@ 1 -98.9 KB - Content