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, 20 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
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. Xiaoling1 +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,21 +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 20 + 22 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, smartphone detection, building automation, and so on. 23 23 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 30 30 31 31 == 1.2 Features == 32 32 33 - 34 34 * LoRaWAN 1.0.3 Class A 35 35 * Ultra-low power consumption 36 36 * Open-Source hardware/software ... ... @@ -41,11 +41,8 @@ 41 41 * Downlink to change configure 42 42 * 8500mAh Battery for long term use 43 43 44 - 45 - 46 46 == 1.3 Specification == 47 47 48 - 49 49 (% style="color:#037691" %)**Common DC Characteristics:** 50 50 51 51 * Supply Voltage: built in 8500mAh Li-SOCI2 battery , 2.5v ~~ 3.6v ... ... @@ -80,11 +80,8 @@ 80 80 * Sleep Mode: 5uA @ 3.3v 81 81 * LoRa Transmit Mode: 125mA @ 20dBm, 82mA @ 14dBm 82 82 83 - 84 - 85 85 == 1.4 Sleep mode and working mode == 86 86 87 - 88 88 (% 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. 89 89 90 90 (% 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. ... ... @@ -109,8 +109,6 @@ 109 109 ))) 110 110 |(% 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. 111 111 112 - 113 - 114 114 == 1.6 BLE connection == 115 115 116 116 ... ... @@ -129,7 +129,7 @@ 129 129 == 1.7 Pin Definitions == 130 130 131 131 132 -[[image:image-2023051 3102034-2.png]]125 +[[image:image-20230511203450-2.png||height="443" width="785"]] 133 133 134 134 135 135 == 1.8 Mechanical == ... ... @@ -144,7 +144,6 @@ 144 144 145 145 == Hole Option == 146 146 147 - 148 148 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: 149 149 150 150 [[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"]] ... ... @@ -280,352 +280,41 @@ 280 280 Ex2: 0x0B49 = 2889mV 281 281 282 282 283 -=== 2.3.2 Working Modes &Sensor Data.Uplink viaFPORT~=2 ===275 +=== 2.3.2 Sensor Data. FPORT~=2 === 284 284 285 285 286 -S N50v3 has different workingmode fortheconnectionsof different type of sensors. This sectiondescribes these modes. Use canuse the AT Command AT+MOD to set SN50v3 to different working modes.278 +Sensor Data is uplink via FPORT=2 287 287 288 -For example: 289 - 290 - **AT+MOD=2 ** ~/~/ will set the SN50v3 to work in MOD=2 distance mode which target to measure distance via Ultrasonic Sensor. 291 - 292 - 293 -(% style="color:red" %) **Important Notice:** 294 - 295 -1. Some working modes has payload more than 12 bytes, The US915/AU915/AS923 frequency bands' definition has maximum 11 bytes in **DR0**. Server sides will see NULL payload while SN50v3 transmit in DR0 with 12 bytes payload. 296 -1. All modes share the same Payload Explanation from HERE. 297 -1. By default, the device will send an uplink message every 20 minutes. 298 - 299 - 300 - 301 -==== 2.3.2.1 MOD~=1 (Default Mode) ==== 302 - 303 - 304 -In this mode, uplink payload includes in total 11 bytes. Uplink packets use FPORT=2. 305 - 306 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %) 307 -|(% 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:40px" %)**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:90px" %)**2** 308 -|**Value**|Bat|(% style="width:191px" %)((( 309 -Temperature(DS18B20)(PC13) 310 -)))|(% style="width:78px" %)((( 311 -ADC(PA4) 312 -)))|(% style="width:216px" %)((( 313 -Digital in(PB15)&Digital Interrupt(PA8) 314 -)))|(% style="width:308px" %)((( 315 -Temperature(SHT20 or SHT31 or BH1750 Illumination Sensor) 316 -)))|(% style="width:154px" %)((( 317 -Humidity(SHT20 or SHT31) 318 -))) 319 - 320 -[[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"]] 321 - 322 - 323 - 324 -==== 2.3.2.2 MOD~=2 (Distance Mode) ==== 325 - 326 - 327 -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. 328 - 329 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %) 330 -|(% style="background-color:#d9e2f3; color:#0070c0; width:40px" %)**Size(bytes)**|(% style="background-color:#d9e2f3; color:#0070c0; width:40px" %)**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** 331 -|**Value**|BAT|(% style="width:196px" %)((( 332 -Temperature(DS18B20)(PC13) 333 -)))|(% style="width:87px" %)((( 334 -ADC(PA4) 335 -)))|(% style="width:189px" %)((( 336 -Digital in(PB15) & Digital Interrupt(PA8) 337 -)))|(% style="width:208px" %)((( 338 -Distance measure by:1) LIDAR-Lite V3HP 339 -Or 2) Ultrasonic Sensor 340 -)))|(% style="width:117px" %)Reserved 341 - 342 -[[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"]] 343 - 344 - 345 -(% style="color:blue" %)**Connection of LIDAR-Lite V3HP:** 346 - 347 -[[image:image-20230512173758-5.png||height="563" width="712"]] 348 - 349 - 350 -(% style="color:blue" %)**Connection to Ultrasonic Sensor:** 351 - 352 -Need to remove R1 and R2 resistors to get low power,otherwise there will be 240uA standby current. 353 - 354 -[[image:image-20230512173903-6.png||height="596" width="715"]] 355 - 356 - 357 -For the connection to TF-Mini or TF-Luna , MOD2 payload is as below: 358 - 359 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %) 360 -|(% 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** 361 -|**Value**|BAT|(% style="width:183px" %)((( 362 -Temperature(DS18B20)(PC13) 363 -)))|(% style="width:173px" %)((( 364 -Digital in(PB15) & Digital Interrupt(PA8) 365 -)))|(% style="width:84px" %)((( 366 -ADC(PA4) 367 -)))|(% style="width:323px" %)((( 368 -Distance measure by:1)TF-Mini plus LiDAR 369 -Or 370 -2) TF-Luna LiDAR 371 -)))|(% style="width:188px" %)Distance signal strength 372 - 373 -[[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"]] 374 - 375 - 376 -**Connection to [[TF-Mini plus>>url:http://en.benewake.com/product/detail/5c345cd0e5b3a844c472329b.html]] LiDAR(UART version):** 377 - 378 -Need to remove R3 and R4 resistors to get low power,otherwise there will be 400uA standby current. 379 - 380 -[[image:image-20230512180609-7.png||height="555" width="802"]] 381 - 382 - 383 -**Connection to [[TF-Luna>>url:http://en.benewake.com/product/detail/5e1c1fd04d839408076b6255.html]] LiDAR (UART version):** 384 - 385 -Need to remove R3 and R4 resistors to get low power,otherwise there will be 400uA standby current. 386 - 387 -[[image:image-20230513105207-4.png||height="469" width="802"]] 388 - 389 - 390 -==== 2.3.2.3 MOD~=3 (3 ADC + I2C) ==== 391 - 392 - 393 -This mode has total 12 bytes. Include 3 x ADC + 1x I2C 394 - 395 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %) 396 -|=(% 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" %)((( 397 397 **Size(bytes)** 398 -)))|=(% 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: 140px;background-color:#D9E2F3;color:#0070C0" %)2|=(% style="width: 120px;background-color:#D9E2F3;color:#0070C0" %)2|=(% style="width: 20px;background-color:#D9E2F3;color:#0070C0" %)1 399 -|**Value**|(% style="width:68px" %)((( 400 -ADC1(PA4) 401 -)))|(% style="width:75px" %)((( 402 -ADC2(PA5) 403 -)))|((( 404 -ADC3(PA8) 405 -)))|((( 406 -Digital Interrupt(PB15) 407 -)))|(% style="width:304px" %)((( 408 -Temperature(SHT20 or SHT31 or BH1750 Illumination Sensor) 409 -)))|(% style="width:163px" %)((( 410 -Humidity(SHT20 or SHT31) 411 -)))|(% style="width:53px" %)Bat 412 - 413 -[[image:image-20230513110214-6.png]] 414 - 415 - 416 -==== 2.3.2.4 MOD~=4 (3 x DS18B20) ==== 417 - 418 - 419 -This mode has total 11 bytes. As shown below: 420 - 421 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %) 422 -|(% 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** 423 -|**Value**|BAT|(% style="width:186px" %)((( 424 -Temperature1(DS18B20)(PC13) 425 -)))|(% style="width:82px" %)((( 426 -ADC(PA4) 427 -)))|(% style="width:210px" %)((( 428 -Digital in(PB15) & Digital Interrupt(PA8) 429 -)))|(% style="width:191px" %)Temperature2(DS18B20) 430 -(PB9)|(% style="width:183px" %)Temperature3(DS18B20)(PB8) 431 - 432 -[[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"]] 433 - 434 -[[image:image-20230513134006-1.png||height="559" width="736"]] 435 - 436 - 437 - 438 -==== 2.3.2.5 MOD~=5(Weight Measurement by HX711) ==== 439 - 440 - 441 -[[image:image-20230512164658-2.png||height="532" width="729"]] 442 - 443 -Each HX711 need to be calibrated before used. User need to do below two steps: 444 - 445 -1. Zero calibration. Don't put anything on load cell and run **AT+WEIGRE** to calibrate to Zero gram. 446 -1. Adjust calibration factor (default value 400): Put a known weight thing on load cell and run **AT+WEIGAP** to adjust the Calibration Factor. 447 -1. ((( 448 -Weight has 4 bytes, the unit is g. 449 - 450 - 451 - 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:"]] 452 452 ))) 453 453 454 - Forexample:296 +==== (% style="color:#4472c4" %)**Battery**(%%) ==== 455 455 456 - **AT+GETSENSORVALUE=0**298 +Sensor Battery Level. 457 457 458 -Response: Weight is 401 g 459 - 460 -Check the response of this command and adjust the value to match the real value for thing. 461 - 462 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %) 463 -|=(% style="width: 50px;background-color:#D9E2F3;color:#0070C0" %)((( 464 -**Size(bytes)** 465 -)))|=(% 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** 466 -|**Value**|BAT|(% style="width:193px" %)((( 467 -Temperature(DS18B20) 468 -(PC13) 469 -)))|(% style="width:85px" %)((( 470 -ADC(PA4) 471 -)))|(% style="width:186px" %)((( 472 -Digital in(PB15) & 473 -Digital Interrupt(PA8) 474 -)))|(% style="width:100px" %)Weight 475 - 476 -[[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"]] 477 - 478 - 479 - 480 -==== 2.3.2.6 MOD~=6 (Counting Mode) ==== 481 - 482 - 483 -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. 484 - 485 -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. 486 - 487 -[[image:image-20230512181814-9.png||height="543" width="697"]] 488 - 489 - 490 -(% 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.** 491 - 492 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %) 493 -|=(% style="width: 50px;background-color:#D9E2F3;color:#0070C0" %)**Size(bytes)**|=(% style="width: 20px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 220px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 50px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 100px;background-color:#D9E2F3;color:#0070C0" %)**1**|=(% style="width: 80px;background-color:#D9E2F3;color:#0070C0" %)**4** 494 -|**Value**|BAT|(% style="width:256px" %)((( 495 -Temperature(DS18B20)(PC13) 496 -)))|(% style="width:108px" %)((( 497 -ADC(PA4) 498 -)))|(% style="width:126px" %)((( 499 -Digital in(PB15) 500 -)))|(% style="width:145px" %)((( 501 -Count(PA8) 502 -))) 503 - 504 -[[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"]] 505 - 506 - 507 - 508 -==== 2.3.2.7 MOD~=7 (Three interrupt contact modes) ==== 509 - 510 - 511 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %) 512 -|=(% style="width: 50px;background-color:#D9E2F3;color:#0070C0" %)((( 513 -**Size(bytes)** 514 -)))|=(% 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 515 -|**Value**|BAT|(% style="width:188px" %)((( 516 -Temperature(DS18B20) 517 -(PC13) 518 -)))|(% style="width:83px" %)((( 519 -ADC(PA5) 520 -)))|(% style="width:184px" %)((( 521 -Digital Interrupt1(PA8) 522 -)))|(% style="width:186px" %)Digital Interrupt2(PA4)|(% style="width:197px" %)Digital Interrupt3(PB15)|(% style="width:100px" %)Reserved 523 - 524 -[[image:image-20230513111203-7.png||height="324" width="975"]] 525 - 526 - 527 -==== 2.3.2.8 MOD~=8 (3ADC+1DS18B20) ==== 528 - 529 - 530 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %) 531 -|=(% style="width: 50px;background-color:#D9E2F3;color:#0070C0" %)((( 532 -**Size(bytes)** 533 -)))|=(% style="width: 30px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 120px;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 534 -|**Value**|BAT|(% style="width:207px" %)((( 535 -Temperature(DS18B20) 536 -(PC13) 537 -)))|(% style="width:94px" %)((( 538 -ADC1(PA4) 539 -)))|(% style="width:198px" %)((( 540 -Digital Interrupt(PB15) 541 -)))|(% style="width:84px" %)((( 542 -ADC2(PA5) 543 -)))|(% style="width:82px" %)((( 544 -ADC3(PA8) 545 -))) 546 - 547 -[[image:image-20230513111231-8.png||height="335" width="900"]] 548 - 549 - 550 -==== 2.3.2.9 MOD~=9 (3DS18B20+ two Interrupt count mode) ==== 551 - 552 - 553 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %) 554 -|=(% style="width: 50px;background-color:#D9E2F3;color:#0070C0" %)((( 555 -**Size(bytes)** 556 -)))|=(% style="width: 20px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 100px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 100px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 80px;background-color:#D9E2F3;color:#0070C0" %)**1**|=(% style="width: 100px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)4|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)4 557 -|**Value**|BAT|((( 558 -Temperature1(DS18B20) 559 -(PC13) 560 -)))|((( 561 -Temperature2(DS18B20) 562 -(PB9) 563 -)))|((( 564 -Digital Interrupt 565 -(PB15) 566 -)))|(% style="width:193px" %)((( 567 -Temperature3(DS18B20) 568 -(PB8) 569 -)))|(% style="width:78px" %)((( 570 -Count1(PA8) 571 -)))|(% style="width:78px" %)((( 572 -Count2(PA4) 573 -))) 574 - 575 -[[image:image-20230513111255-9.png||height="341" width="899"]] 576 - 577 -(% style="color:blue" %)**The newly added AT command is issued correspondingly:** 578 - 579 -(% style="color:#037691" %)** AT+INTMOD1 PA8**(%%) pin: Corresponding downlink: (% style="color:#037691" %)**06 00 00 xx** 580 - 581 -(% style="color:#037691" %)** AT+INTMOD2 PA4**(%%) pin: Corresponding downlink: (% style="color:#037691" %)**06 00 01 xx** 582 - 583 -(% style="color:#037691" %)** AT+INTMOD3 PB15**(%%) pin: Corresponding downlink: (% style="color:#037691" %)** 06 00 02 xx** 584 - 585 - 586 -(% style="color:blue" %)**AT+SETCNT=aa,bb** 587 - 588 -When AA is 1, set the count of PA8 pin to BB Corresponding downlink:09 01 bb bb bb bb 589 - 590 -When AA is 2, set the count of PA4 pin to BB Corresponding downlink:09 02 bb bb bb bb 591 - 592 - 593 -=== 2.3.3 Decode payload === 594 - 595 - 596 -While using TTN V3 network, you can add the payload format to decode the payload. 597 - 598 -[[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"]] 599 - 600 -The payload decoder function for TTN V3 are here: 601 - 602 -SN50v3 TTN V3 Payload Decoder: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>url:https://github.com/dragino/dragino-end-node-decoder]] 603 - 604 - 605 -==== 2.3.3.1 Battery Info ==== 606 - 607 - 608 -Check the battery voltage for SN50v3. 609 - 610 610 Ex1: 0x0B45 = 2885mV 611 611 612 612 Ex2: 0x0B49 = 2889mV 613 613 614 614 615 -==== 2.3.3.2 Temperature (DS18B20) ==== 616 616 306 +==== (% style="color:#4472c4" %)**Temperature**(%%) ==== 617 617 618 - If there isaDS18B20 connected to PC13 pin. The temperature will beuploaded in the payload.308 +**Example**: 619 619 620 -More DS18B20 can check the [[3 DS18B20 mode>>||anchor="H2.3.2.4MOD3D4283xDS18B2029"]] 621 - 622 -(% style="color:blue" %)**Connection:** 623 - 624 -[[image:image-20230512180718-8.png||height="538" width="647"]] 625 - 626 - 627 -(% style="color:blue" %)**Example**: 628 - 629 629 If payload is: 0105H: (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree 630 630 631 631 If payload is: FF3FH : (FF3F & 8000 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees. ... ... @@ -633,232 +633,200 @@ 633 633 (FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative) 634 634 635 635 636 -==== 2.3.3.3DigitalInput ====317 +==== (% style="color:#4472c4" %)**Humidity**(%%) ==== 637 637 638 638 639 - TheigitalinputforpinPB15,320 +Read:0x(0197)=412 Value: 412 / 10=41.2, So 41.2% 640 640 641 -* When PB15 is high, the bit 1 of payload byte 6 is 1. 642 -* When PB15 is low, the bit 1 of payload byte 6 is 0. 643 643 644 -(% class="wikigeneratedid" id="H2.3.3.4A0AnalogueDigitalConverter28ADC29" %) 645 -((( 646 -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**(%%) ==== 647 647 648 -(% style="color:red" %)**Note: The maximum voltage input supports 3.6V.** 649 649 650 - 651 -))) 326 +**Example:** 652 652 653 - ====2.3.3.4 AnalogueDigitalConverter(ADC)====328 +If payload & 0x01 = 0x01 **~-~->** This is an Alarm Message 654 654 330 +If payload & 0x01 = 0x00 **~-~->** This is a normal uplink message, no alarm 655 655 656 - Themeasuring rangeoftheADCisonlyabout0Vto1.1VThevoltageresolution isabout 0.24mv.332 +If payload >> 2 = 0x00 **~-~->** means MOD=1, This is a sampling uplink message 657 657 658 - Whenthe measuredoutputvoltageofthesensorisnotwithintherangeof 0V and1.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. 659 659 660 -[[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"]] 661 661 662 - (%style="color:red"%)**Note: If the ADC typesensor needs to be powered by SN50_v3, it is recommended to use +5V to controlits switch.Only sensorswith low power consumption can be powered with VDD.**337 +== 2.4 Payload Decoder file == 663 663 664 664 665 - ====2.3.3.5DigitalInterrupt====340 +In TTN, use can add a custom payload so it shows friendly reading 666 666 342 +In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from: 667 667 668 - Digital Interrupt referspinPA8, andthereare different trigger methods. When there is atrigger, thewillsendpacket totheserver.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]] 669 669 670 -(% style="color:blue" %)** Interrupt connection method:** 671 671 672 - [[image:image-20230513105351-5.png||height="147"width="485"]]347 +== 2.5 Datalog Feature == 673 673 674 674 675 - (%style="color:blue"%)**Exampletousewithdoor sensor:**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. 676 676 677 -The door sensor is shown at right. It is a two wire magnetic contact switch used for detecting the open/close status of doors or windows. 678 678 679 - [[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"]]353 +=== 2.5.1 Ways to get datalog via LoRaWAN === 680 680 681 -When the two pieces are close to each other, the 2 wire output will be short or open (depending on the type), while if the two pieces are away from each other, the 2 wire output will be the opposite status. So we can use SN50_v3 interrupt interface to detect the status for the door or window. 682 682 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. 683 683 684 -(% style="color:blue" %)**Below is the installation example:** 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. 685 685 686 - Fix onepieceofthemagnetic sensor to thedoorand connectthe twopinstoSN50_v3as follows:361 +Below is the typical case for the auto-update datalog feature (Set PNACKMD=1) 687 687 688 -* ((( 689 -One pin to SN50_v3's PA8 pin 690 -))) 691 -* ((( 692 -The other pin to SN50_v3's VDD pin 693 -))) 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"]] 694 694 695 - Installthe other piece to the door.Find a place where the two pieceswill becloseto each other when the door is closed. For this particularmagnetic sensor, when the door is closed, the outputwill be short, and PA8 will be at the VCC voltage.365 +=== 2.5.2 Unix TimeStamp === 696 696 697 -Door sensors have two types: (% style="color:blue" %)** NC (Normal close)**(%%) and (% style="color:blue" %)**NO (normal open)**(%%). The connection for both type sensors are the same. But the decoding for payload are reverse, user need to modify this in the IoT Server decoder. 698 698 699 - Whendoorsensorisshorted, there willextrapower consumptionin the circuit, the extracurrentis 3v3/R14 = 3v3/1Mohm = 3uA which canbeignored.368 +S31x-LB uses Unix TimeStamp format based on 700 700 701 -[[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"]]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"]] 702 702 703 - The abovephotosshows thetwopartsf the magneticswitchfitted toa door.372 +User can get this time from link: [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] : 704 704 705 - Thesoftwareby default usesthefalling edge on the signal line as an interrupt. We need to modify it to accept both the rising edge (0v~-~-> VCC , door close) andthefalling edge (VCC ~-~-> 0v , dooropen)as the interrupt.374 +Below is the converter example 706 706 707 - Thes: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"]] 708 708 709 - (%style="color:blue"%)**AT+INTMOD1=1** (%%) ~/~/(moreinfoaboutINMOD please refer****[[**ATCommandManual**>>url:http://www.dragino.com/downloads/index.php?dir=LSN50-LoRaST/&file=DRAGINO_LSN50_AT_Commands_v1.5.1.pdf]]**. **)378 +So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25 710 710 711 -Below shows some screen captures in TTN V3: 712 712 713 - [[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"]]381 +=== 2.5.3 Set Device Time === 714 714 715 715 716 - In MOD=1, usercanusebyte6to seethestatus for door open orclose.TTNV3decoderis asbelow:384 +User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command. 717 717 718 -door =(bytes[6]&0x80)?"CLOSE":"OPEN";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). 719 719 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.** 720 720 721 -==== 2.3.3.6 I2C Interface (SHT20 & SHT31) ==== 722 722 391 +=== 2.5.4 Datalog Uplink payload (FPORT~=3) === 723 723 724 -The SDA and SCK are I2C interface lines. You can use these to connect to an I2C device and get the sensor data. 725 725 726 - Wehavemadean example to showhowtousetheI2C interface toconnect to the SHT20/ SHT31 TemperatureandHumidity Sensor.394 +The Datalog uplinks will use below payload format. 727 727 728 - Notice: DifferentI2C sensors have different I2C commandsset andinitiate process, if user wantto use other I2C sensors, User need to re-write the source code to support those sensors. SHT20/ SHT31 code in SN50_v3 will beagoodreference.396 +**Retrieval data payload:** 729 729 730 -Below is the connection to SHT20/ SHT31. The connection is as below: 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"]] 731 731 406 +**Poll message flag & Ext:** 732 732 733 -[[image:image-202 30513103633-3.png||height="448" width="716"]]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"]] 734 734 735 -The devicewillbebleto get theI2Csensordata nowanduploadtoIoT Server.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) 736 736 737 - [[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"]]412 +**Poll Message Flag**: 1: This message is a poll message reply. 738 738 739 - Converttheread byteto decimalnddivideitbyten.414 +* Poll Message Flag is set to 1. 740 740 741 -* *Example:**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. 742 742 743 - Temperature:Read:0116(H)= 278(D) Value:278/10=27.8℃;418 +For example, in US915 band, the max payload for different DR is: 744 744 745 - Humidity: Read:0248(H)=584(D)Value:584 / 10=58.4, So58.4%420 +**a) DR0:** max is 11 bytes so one entry of data 746 746 747 - Ifyouwantto useotherI2Cdevice,pleaserefertheSHT20 partsourcecodeasreference.422 +**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes) 748 748 424 +**c) DR2:** total payload includes 11 entries of data 749 749 750 - ====2.3.3.7DistanceReading====426 +**d) DR3: **total payload includes 22 entries of data. 751 751 428 +If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0 752 752 753 -Refer [[Ultrasonic Sensor section>>||anchor="H2.3.3.8UltrasonicSensor"]]. 754 754 755 - 756 -==== 2.3.3.8 Ultrasonic Sensor ==== 757 - 758 - 759 -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]] 760 - 761 -The SN50_v3 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. 762 - 763 -The working principle of this sensor is similar to the (% style="color:blue" %)**HC-SR04**(%%) ultrasonic sensor. 764 - 765 -The picture below shows the connection: 766 - 767 -[[image:image-20230512173903-6.png||height="596" width="715"]] 768 - 769 - 770 -Connect to the SN50_v3 and run (% style="color:blue" %)**AT+MOD=2**(%%) to switch to ultrasonic mode (ULT). 771 - 772 -The ultrasonic sensor uses the 8^^th^^ and 9^^th^^ byte for the measurement value. 773 - 774 774 **Example:** 775 775 776 - Distance:Read: 0C2D(Hex) =3117(D)Value:3117mm=311.7cm433 +If S31x-LB has below data inside Flash: 777 777 435 +[[image:1682646494051-944.png]] 778 778 779 - ====2.3.3.9 BatteryOutput-BAT pin====437 +If user sends below downlink command: 3160065F9760066DA705 780 780 439 +Where : Start time: 60065F97 = time 21/1/19 04:27:03 781 781 782 - TheBATpinofSN50v3isconnectedtotheBatterydirectly.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 783 783 784 784 785 - ==== 2.3.3.10+5VOutput====444 +**S31x-LB will uplink this payload.** 786 786 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"]] 787 787 788 -SN50v3 will enable +5V output before all sampling and disable the +5v after all sampling. 448 +((( 449 +__**7FFF089801464160065F97**__ **__7FFF__ __088E__ __014B__ __41__ __60066009__** 7FFF0885014E41600660667FFF0875015141600662BE7FFF086B015541600665167FFF08660155416006676E7FFF085F015A41600669C67FFF0857015D4160066C1E 450 +))) 789 789 790 -The 5V output time can be controlled by AT Command. 452 +((( 453 +Where the first 11 bytes is for the first entry: 454 +))) 791 791 792 -(% style="color:blue" %)**AT+5VT=1000** 456 +((( 457 +7FFF089801464160065F97 458 +))) 793 793 794 -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 +))) 795 795 796 -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 +))) 797 797 468 +((( 469 +**Hum**=0x014B/10=32.6 470 +))) 798 798 799 -==== 2.3.3.11 BH1750 Illumination Sensor ==== 472 +((( 473 +**poll message flag & Ext**=0x41,means reply data,Ext=1 474 +))) 800 800 476 +((( 477 +**Unix time** is 0x60066009=1611030423s=21/1/19 04:27:03 478 +))) 801 801 802 -MOD=1 support this sensor. The sensor value is in the 8^^th^^ and 9^^th^^ bytes. 803 803 804 -[[image:image-202 30512172447-4.png||height="416" width="712"]]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="单击并拖动以调整大小" %)的 805 805 483 +== 2.6 Temperature Alarm Feature == 806 806 807 -[[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"]] 808 808 486 +S31x-LB work flow with Alarm feature. 809 809 810 -==== 2.3.3.12 Working MOD ==== 811 811 489 +[[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"]] 812 812 813 -The working MOD info is contained in the Digital in & Digital Interrupt byte (7^^th^^ Byte). 814 814 815 - Usercanusethe 3^^rd^^ ~~ 7^^th^^ bit of this bytetoseethe working mod:492 +== 2.7 Frequency Plans == 816 816 817 -Case 7^^th^^ Byte >> 2 & 0x1f: 818 818 819 -* 0: MOD1 820 -* 1: MOD2 821 -* 2: MOD3 822 -* 3: MOD4 823 -* 4: MOD5 824 -* 5: MOD6 825 -* 6: MOD7 826 -* 7: MOD8 827 -* 8: MOD9 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. 828 828 829 - 830 - 831 -== 2.4 Payload Decoder file == 832 - 833 - 834 -In TTN, use can add a custom payload so it shows friendly reading 835 - 836 -In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from: 837 - 838 -[[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]] 839 - 840 - 841 -== 2.5 Frequency Plans == 842 - 843 - 844 -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. 845 - 846 846 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]] 847 847 848 848 849 -= 3. Configure S N50v3-LB =500 += 3. Configure S31x-LB = 850 850 851 851 == 3.1 Configure Methods == 852 852 853 853 854 -S N50v3-LB supports below configure method:505 +S31x-LB supports below configure method: 855 855 856 856 * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]]. 857 857 * 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]]. 858 858 * LoRaWAN Downlink. Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section. 859 859 860 - 861 - 862 862 == 3.2 General Commands == 863 863 864 864 ... ... @@ -872,7 +872,7 @@ 872 872 [[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/]] 873 873 874 874 875 -== 3.3 Commands special design for S N50v3-LB ==524 +== 3.3 Commands special design for S31x-LB == 876 876 877 877 878 878 These commands only valid for S31x-LB, as below: ... ... @@ -906,12 +906,10 @@ 906 906 * Example 1: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds 907 907 * Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 908 908 909 - 910 - 911 911 === 3.3.2 Get Device Status === 912 912 913 913 914 -Send a LoRaWAN downlink to ask thedevicetosenditsstatus.561 +Send a LoRaWAN downlink to ask device send Alarm settings. 915 915 916 916 (% style="color:blue" %)**Downlink Payload: **(%%)0x26 01 917 917 ... ... @@ -918,159 +918,108 @@ 918 918 Sensor will upload Device Status via FPORT=5. See payload section for detail. 919 919 920 920 921 -=== 3.3.3 Set InterruptMode===568 +=== 3.3.3 Set Temperature Alarm Threshold === 922 922 570 +* (% style="color:blue" %)**AT Command:** 923 923 924 - Feature,SetInterrupt mode forGPIO_EXIT.572 +(% style="color:#037691" %)**AT+SHTEMP=min,max** 925 925 926 -(% 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 927 927 928 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 929 -|=(% style="width: 154px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 196px;background-color:#D9E2F3" %)**Function**|=(% style="width: 157px;background-color:#D9E2F3" %)**Response** 930 -|(% style="width:154px" %)AT+INTMOD1=?|(% style="width:196px" %)Show current interrupt mode|(% style="width:157px" %)((( 931 -0 932 -OK 933 -the mode is 0 =Disable Interrupt 934 -))) 935 -|(% style="width:154px" %)AT+INTMOD1=2|(% style="width:196px" %)((( 936 -Set Transmit Interval 937 -0. (Disable Interrupt), 938 -~1. (Trigger by rising and falling edge) 939 -2. (Trigger by falling edge) 940 -3. (Trigger by rising edge) 941 -)))|(% style="width:157px" %)OK 942 -|(% style="width:154px" %)AT+INTMOD2=3|(% style="width:196px" %)((( 943 -Set Transmit Interval 578 +Example: 944 944 945 -trigger by rising edge. 946 -)))|(% style="width:157px" %)OK 947 -|(% style="width:154px" %)AT+INTMOD3=0|(% style="width:196px" %)Disable Interrupt|(% style="width:157px" %)OK 580 + AT+SHTEMP=0,30 ~/~/ Alarm when temperature higher than 30. 948 948 949 -(% style="color:blue" %)**Downlink Command:0x06**582 +* (% style="color:blue" %)**Downlink Payload:** 950 950 951 - Format: CommandCode(0x06)followedby3bytes.584 +(% style="color:#037691" %)**0x(0C 01 00 1E)** (%%) ~/~/ Set AT+SHTEMP=0,30 952 952 953 - Thismeanshat theinterrupt mode oftheendnodeis set to0x000003=3(risingedgetrigger),andthetypecodeis06.586 +(% style="color:red" %)**(note: 3^^rd^^ byte= 0x00 for low limit(not set), 4^^th^^ byte = 0x1E for high limit: 30)** 954 954 955 -* Example 1: Downlink Payload: 06000000 **~-~-->** AT+INTMOD1=0 956 -* Example 2: Downlink Payload: 06000003 **~-~-->** AT+INTMOD1=3 957 -* Example 3: Downlink Payload: 06000102 **~-~-->** AT+INTMOD2=2 958 -* Example 4: Downlink Payload: 06000201 **~-~-->** AT+INTMOD3=1 959 959 589 +=== 3.3.4 Set Humidity Alarm Threshold === 960 960 591 +* (% style="color:blue" %)**AT Command:** 961 961 962 - ===3.3.4 SetPowerOutput Duration===593 +(% style="color:#037691" %)**AT+SHHUM=min,max** 963 963 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 964 964 965 - Control the output duration 5V . Before each sampling, device will599 +Example: 966 966 967 -~ 1.firstenablethepoweroutput to external sensor,601 + AT+SHHUM=70,0 ~/~/ Alarm when humidity lower than 70%. 968 968 969 - 2.keepit on asper duration, read sensorvalueand construct uplinkpayload603 +* (% style="color:blue" %)**Downlink Payload:** 970 970 971 - 3.final,closethepoweroutput.605 +(% style="color:#037691" %)**0x(0C 02 46 00)**(%%) ~/~/ Set AT+SHTHUM=70,0 972 972 973 -(% style="color: blue" %)**ATCommand:AT+5VT**607 +(% style="color:red" %)**(note: 3^^rd^^ byte= 0x46 for low limit (70%), 4^^th^^ byte = 0x00 for high limit (not set))** 974 974 975 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 976 -|=(% style="width: 154px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 196px;background-color:#D9E2F3" %)**Function**|=(% style="width: 157px;background-color:#D9E2F3" %)**Response** 977 -|(% style="width:154px" %)AT+5VT=?|(% style="width:196px" %)Show 5V open time.|(% style="width:157px" %)((( 978 -500(default) 979 -OK 980 -))) 981 -|(% style="width:154px" %)AT+5VT=1000|(% style="width:196px" %)((( 982 -Close after a delay of 1000 milliseconds. 983 -)))|(% style="width:157px" %)OK 984 984 985 - (%style="color:blue"%)**DownlinkCommand: 0x07**610 +=== 3.3.5 Set Alarm Interval === 986 986 987 - Format:Command Code(0x07)followedby 2 bytes.612 +The shortest time of two Alarm packet. (unit: min) 988 988 989 - Thefirstandsecondbytesarethe time toturnon.614 +* (% style="color:blue" %)**AT Command:** 990 990 991 -* Example 1: Downlink Payload: 070000 **~-~-->** AT+5VT=0 992 -* Example 2: Downlink Payload: 0701F4 **~-~-->** AT+5VT=500 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. 993 993 618 +* (% style="color:blue" %)**Downlink Payload:** 994 994 620 +(% style="color:#037691" %)**0x(0D 00 1E)**(%%) **~-~--> ** Set AT+ATDC=0x 00 1E = 30 minutes 995 995 996 -=== 3.3.5 Set Weighing parameters === 997 997 623 +=== 3.3.6 Get Alarm settings === 998 998 999 -Feature: Working mode 5 is effective, weight initialization and weight factor setting of HX711. 1000 1000 1001 - (% style="color:blue"%)**AT Command:AT+WEIGRE,AT+WEIGAP**626 +Send a LoRaWAN downlink to ask device send Alarm settings. 1002 1002 1003 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 1004 -|=(% style="width: 154px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 196px;background-color:#D9E2F3" %)**Function**|=(% style="width: 157px;background-color:#D9E2F3" %)**Response** 1005 -|(% style="width:154px" %)AT+WEIGRE|(% style="width:196px" %)Weight is initialized to 0.|(% style="width:157px" %)OK 1006 -|(% style="width:154px" %)AT+WEIGAP=?|(% style="width:196px" %)400.0|(% style="width:157px" %)OK(default) 1007 -|(% style="width:154px" %)AT+WEIGAP=400.3|(% style="width:196px" %)Set the factor to 400.3.|(% style="width:157px" %)OK 628 +* (% style="color:#037691" %)**Downlink Payload: **(%%)0x0E 01 1008 1008 1009 - (% style="color:blue" %)**Downlink Command:0x08**630 +**Example:** 1010 1010 1011 - Format:CommandCode(0x08)followedby2bytes4 bytes.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"]] 1012 1012 1013 -Use AT+WEIGRE when the first byte is 1, only 1 byte. When it is 2, use AT+WEIGAP, there are 3 bytes. 1014 1014 1015 - The second and third bytes are multiplied by 10 times to be the AT+WEIGAP value.635 +**Explain:** 1016 1016 1017 -* Example 1: Downlink Payload: 0801 **~-~-->** AT+WEIGRE 1018 -* Example 2: Downlink Payload: 08020FA3 **~-~-->** AT+WEIGAP=400.3 1019 -* Example 3: Downlink Payload: 08020FA0 **~-~-->** AT+WEIGAP=400.0 637 +* Alarm & MOD bit is 0x7C, 0x7C >> 2 = 0x31: Means this message is the Alarm settings message. 1020 1020 639 +=== 3.3.7 Set Interrupt Mode === 1021 1021 1022 1022 1023 - ===3.3.6SetDigitalpulsecountvalue===642 +Feature, Set Interrupt mode for GPIO_EXIT. 1024 1024 644 +(% style="color:blue" %)**AT Command: AT+INTMOD** 1025 1025 1026 -Feature: Set the pulse count value. 1027 - 1028 -Count 1 is PA8 pin of mode 6 and mode 9. Count 2 is PA4 pin of mode 9. 1029 - 1030 -(% style="color:blue" %)**AT Command: AT+SETCNT** 1031 - 1032 1032 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 1033 1033 |=(% style="width: 154px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 196px;background-color:#D9E2F3" %)**Function**|=(% style="width: 157px;background-color:#D9E2F3" %)**Response** 1034 -|(% style="width:154px" %)AT+SETCNT=1,100|(% style="width:196px" %)Initialize the count value 1 to 100.|(% style="width:157px" %)OK 1035 -|(% style="width:154px" %)AT+SETCNT=2,0|(% style="width:196px" %)Initialize the count value 2 to 0.|(% style="width:157px" %)OK 1036 - 1037 -(% style="color:blue" %)**Downlink Command: 0x09** 1038 - 1039 -Format: Command Code (0x09) followed by 5 bytes. 1040 - 1041 -The first byte is to select which count value to initialize, and the next four bytes are the count value to be initialized. 1042 - 1043 -* Example 1: Downlink Payload: 090100000000 **~-~-->** AT+SETCNT=1,0 1044 -* Example 2: Downlink Payload: 0902000003E8 **~-~-->** AT+SETCNT=2,1000 1045 - 1046 - 1047 - 1048 -=== 3.3.7 Set Workmode === 1049 - 1050 - 1051 -Feature: Switch working mode. 1052 - 1053 -(% style="color:blue" %)**AT Command: AT+MOD** 1054 - 1055 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 1056 -|=(% style="width: 154px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 196px;background-color:#D9E2F3" %)**Function**|=(% style="width: 157px;background-color:#D9E2F3" %)**Response** 1057 -|(% style="width:154px" %)AT+MOD=?|(% style="width:196px" %)Get the current working mode.|(% style="width:157px" %)((( 648 +|(% style="width:154px" %)AT+INTMOD=?|(% style="width:196px" %)Show current interrupt mode|(% style="width:157px" %)((( 649 +0 1058 1058 OK 651 +the mode is 0 =Disable Interrupt 1059 1059 ))) 1060 -|(% style="width:154px" %)AT+MOD=4|(% style="width:196px" %)Set the working mode to 3DS18B20s.|(% style="width:157px" %)((( 1061 -OK 1062 -Attention:Take effect after ATZ 1063 -))) 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 1064 1064 1065 -(% style="color:blue" %)**Downlink Command: 0x0 A**661 +(% style="color:blue" %)**Downlink Command: 0x06** 1066 1066 1067 -Format: Command Code (0x0 A) followed by1bytes.663 +Format: Command Code (0x06) followed by 3 bytes. 1068 1068 1069 -* Example 1: Downlink Payload: 0A01 **~-~-->** AT+MOD=1 1070 -* 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. 1071 1071 667 +* Example 1: Downlink Payload: 06000000 ~/~/ Turn off interrupt mode 668 +* Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger 1072 1072 1073 - 1074 1074 = 4. Battery & Power Consumption = 1075 1075 1076 1076 ... ... @@ -1097,18 +1097,10 @@ 1097 1097 * (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/]] 1098 1098 * 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]]**. 1099 1099 1100 - 1101 - 1102 1102 = 6. FAQ = 1103 1103 1104 -== 6.1 Where can i find source code of SN50v3-LB? == 1105 1105 1106 1106 1107 -* **[[Hardware Source Files>>https://github.com/dragino/Lora/tree/master/LSN50/v3.0]].** 1108 -* **[[Software Source Code & Compile instruction>>https://github.com/dragino/SN50v3]].** 1109 - 1110 - 1111 - 1112 1112 = 7. Order Info = 1113 1113 1114 1114 ... ... @@ -1132,11 +1132,8 @@ 1132 1132 * (% style="color:red" %)**20**(%%): With M20 waterproof cable hole 1133 1133 * (% style="color:red" %)**NH**(%%): No Hole 1134 1134 1135 - 1136 - 1137 1137 = 8. Packing Info = 1138 1138 1139 - 1140 1140 (% style="color:#037691" %)**Package Includes**: 1141 1141 1142 1142 * SN50v3-LB LoRaWAN Generic Node ... ... @@ -1148,11 +1148,8 @@ 1148 1148 * Package Size / pcs : cm 1149 1149 * Weight / pcs : g 1150 1150 1151 - 1152 - 1153 1153 = 9. Support = 1154 1154 1155 1155 1156 1156 * 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. 1157 - 1158 -* 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