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,15 +16,18 @@ 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 ... ... @@ -120,7 +120,7 @@ 120 120 == 1.7 Pin Definitions == 121 121 122 122 123 -[[image:image-2023051 3102034-2.png]]125 +[[image:image-20230511203450-2.png||height="443" width="785"]] 124 124 125 125 126 126 == 1.8 Mechanical == ... ... @@ -147,7 +147,7 @@ 147 147 == 2.1 How it works == 148 148 149 149 150 -The S N50v3-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.152 +The S31x-LB is configured as (% style="color:#037691" %)**LoRaWAN OTAA Class A**(%%) mode by default. It has OTAA keys to join LoRaWAN network. To connect a local LoRaWAN network, you need to input the OTAA keys in the LoRaWAN IoT server and press the button to activate the S31x-LB. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 20 minutes. 151 151 152 152 153 153 == 2.2 Quick guide to connect to LoRaWAN server (OTAA) == ... ... @@ -158,11 +158,11 @@ 158 158 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. 159 159 160 160 161 -(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from S N50v3-LB.163 +(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from S31x-LB. 162 162 163 -Each S N50v3-LB is shipped with a sticker with the default device EUI as below:165 +Each S31x-LB is shipped with a sticker with the default device EUI as below: 164 164 165 -[[image: http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/S31-LB_S31B-LB/WebHome/image-20230426084152-1.png?width=502&height=233&rev=1.1||alt="图片-20230426084152-1.png" height="233" width="502"]]167 +[[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]] 166 166 167 167 168 168 You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot: ... ... @@ -189,10 +189,10 @@ 189 189 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-6.png?width=744&height=485&rev=1.1||alt="图片-20220611161308-6.png"]] 190 190 191 191 192 -(% style="color:blue" %)**Step 2:**(%%) Activate S N50v3-LB194 +(% style="color:blue" %)**Step 2:**(%%) Activate on S31x-LB 193 193 194 194 195 -Press the button for 5 seconds to activate the S N50v3-LB.197 +Press the button for 5 seconds to activate the S31x-LB. 196 196 197 197 (% style="color:green" %)**Green led**(%%) will fast blink 5 times, device will enter (% style="color:blue" %)**OTA mode**(%%) for 3 seconds. And then start to JOIN LoRaWAN network. (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network. 198 198 ... ... @@ -204,7 +204,7 @@ 204 204 === 2.3.1 Device Status, FPORT~=5 === 205 205 206 206 207 -Users can use the downlink command(**0x26 01**) to ask S N50v3 to send device configure detail, include device configure status. SN50v3 will uplink a payload via FPort=5 to server.209 +Users can use the downlink command(**0x26 01**) to ask S31x-LB to send device configure detail, include device configure status. S31x-LB will uplink a payload via FPort=5 to server. 208 208 209 209 The Payload format is as below. 210 210 ... ... @@ -216,9 +216,11 @@ 216 216 217 217 Example parse in TTNv3 218 218 221 +[[image:image-20230421171614-1.png||alt="图片-20230421171614-1.png"]] 219 219 220 -(% style="color:#037691" %)**Sensor Model**(%%): For SN50v3, this value is 0x1C 221 221 224 +(% style="color:#037691" %)**Sensor Model**(%%): For S31x-LB, this value is 0x0A 225 + 222 222 (% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version 223 223 224 224 (% style="color:#037691" %)**Frequency Band**: ... ... @@ -270,396 +270,39 @@ 270 270 Ex2: 0x0B49 = 2889mV 271 271 272 272 273 -=== 2.3.2 Working Modes &Sensor Data.Uplink viaFPORT~=2 ===277 +=== 2.3.2 Sensor Data. FPORT~=2 === 274 274 275 275 276 -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.280 +Sensor Data is uplink via FPORT=2 277 277 278 -For example: 279 - 280 - **AT+MOD=2 ** ~/~/ will set the SN50v3 to work in MOD=2 distance mode which target to measure distance via Ultrasonic Sensor. 281 - 282 - 283 -(% style="color:red" %) **Important Notice:** 284 - 285 -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. 286 -1. All modes share the same Payload Explanation from HERE. 287 -1. By default, the device will send an uplink message every 20 minutes. 288 - 289 -==== 2.3.2.1 MOD~=1 (Default Mode) ==== 290 - 291 -In this mode, uplink payload includes in total 11 bytes. Uplink packets use FPORT=2. 292 - 293 -(% style="width:1110px" %) 294 -|**Size(bytes)**|**2**|(% style="width:191px" %)**2**|(% style="width:78px" %)**2**|(% style="width:216px" %)**1**|(% style="width:308px" %)**2**|(% style="width:154px" %)**2** 295 -|**Value**|Bat|(% style="width:191px" %)((( 296 -Temperature(DS18B20) 297 - 298 -(PC13) 299 -)))|(% style="width:78px" %)((( 300 -ADC 301 - 302 -(PA4) 303 -)))|(% style="width:216px" %)((( 304 -Digital in(PB15) & 305 - 306 -Digital Interrupt(PA8) 307 - 308 - 309 -)))|(% style="width:308px" %)((( 310 -Temperature 311 - 312 -(SHT20 or SHT31 or BH1750 Illumination Sensor) 313 -)))|(% style="width:154px" %)((( 314 -Humidity 315 - 316 -(SHT20 or SHT31) 317 -))) 318 - 319 -[[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"]] 320 - 321 - 322 -==== 2.3.2.2 MOD~=2 (Distance Mode) ==== 323 - 324 -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. 325 - 326 -(% style="width:1011px" %) 327 -|**Size(bytes)**|**2**|(% style="width:196px" %)**2**|(% style="width:87px" %)**2**|(% style="width:189px" %)**1**|(% style="width:208px" %)**2**|(% style="width:117px" %)**2** 328 -|**Value**|BAT|(% style="width:196px" %)((( 329 -Temperature(DS18B20) 330 - 331 -(PC13) 332 -)))|(% style="width:87px" %)((( 333 -ADC 334 - 335 -(PA4) 336 -)))|(% style="width:189px" %)((( 337 -Digital in(PB15) & 338 - 339 -Digital Interrupt(PA8) 340 -)))|(% style="width:208px" %)((( 341 -Distance measure by: 342 -1) LIDAR-Lite V3HP 343 -Or 344 -2) Ultrasonic Sensor 345 -)))|(% style="width:117px" %)Reserved 346 - 347 -[[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"]] 348 - 349 -**Connection of LIDAR-Lite V3HP:** 350 - 351 -[[image:image-20230512173758-5.png||height="563" width="712"]] 352 - 353 -**Connection to Ultrasonic Sensor:** 354 - 355 -Need to remove R1 and R2 resistors to get low power,otherwise there will be 240uA standby current. 356 - 357 -[[image:image-20230512173903-6.png||height="596" width="715"]] 358 - 359 -For the connection to TF-Mini or TF-Luna , MOD2 payload is as below: 360 - 361 -(% style="width:1113px" %) 362 -|**Size(bytes)**|**2**|(% style="width:183px" %)**2**|(% style="width:173px" %)**1**|(% style="width:84px" %)**2**|(% style="width:323px" %)**2**|(% style="width:188px" %)**2** 363 -|**Value**|BAT|(% style="width:183px" %)((( 364 -Temperature(DS18B20) 365 - 366 -(PC13) 367 -)))|(% style="width:173px" %)((( 368 -Digital in(PB15) & 369 - 370 -Digital Interrupt(PA8) 371 -)))|(% style="width:84px" %)((( 372 -ADC 373 - 374 -(PA4) 375 -)))|(% style="width:323px" %)((( 376 -Distance measure by:1)TF-Mini plus LiDAR 377 -Or 378 -2) TF-Luna LiDAR 379 -)))|(% style="width:188px" %)Distance signal strength 380 - 381 -[[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"]] 382 - 383 -**Connection to [[TF-Mini plus>>url:http://en.benewake.com/product/detail/5c345cd0e5b3a844c472329b.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-20230512180609-7.png||height="555" width="802"]] 388 - 389 -**Connection to [[TF-Luna>>url:http://en.benewake.com/product/detail/5e1c1fd04d839408076b6255.html]] LiDAR (UART version):** 390 - 391 -Need to remove R3 and R4 resistors to get low power,otherwise there will be 400uA standby current. 392 - 393 -[[image:image-20230513105207-4.png||height="469" width="802"]] 394 - 395 - 396 -==== 2.3.2.3 MOD~=3 (3 ADC + I2C) ==== 397 - 398 -This mode has total 12 bytes. Include 3 x ADC + 1x I2C 399 - 400 -(% style="width:1031px" %) 401 -|=((( 282 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %) 283 +|=(% style="width: 90px;background-color:#D9E2F3" %)((( 402 402 **Size(bytes)** 403 -)))|=(% style="width: 68px;" %)**2**|=(% style="width: 75px;" %)**2**|=**2**|=**1**|=(% style="width: 304px;" %)2|=(% style="width: 163px;" %)2|=(% style="width: 53px;" %)1 404 -|**Value**|(% style="width:68px" %)((( 405 -ADC1 406 - 407 -(PA4) 408 -)))|(% style="width:75px" %)((( 409 -ADC2 410 - 411 -(PA5) 412 -)))|((( 413 -ADC3 414 - 415 -(PA8) 416 -)))|((( 417 -Digital Interrupt(PB15) 418 -)))|(% style="width:304px" %)((( 419 -Temperature 420 - 421 -(SHT20 or SHT31 or BH1750 Illumination Sensor) 422 -)))|(% style="width:163px" %)((( 423 -Humidity 424 - 425 -(SHT20 or SHT31) 426 -)))|(% style="width:53px" %)Bat 427 - 428 -[[image:image-20230513110214-6.png]] 429 - 430 - 431 -==== 2.3.2.4 MOD~=4 (3 x DS18B20) ==== 432 - 433 - 434 -This mode has total 11 bytes. As shown below: 435 - 436 -(% style="width:1017px" %) 437 -|**Size(bytes)**|**2**|(% style="width:186px" %)**2**|(% style="width:82px" %)**2**|(% style="width:210px" %)**1**|(% style="width:191px" %)**2**|(% style="width:183px" %)**2** 438 -|**Value**|BAT|(% style="width:186px" %)((( 439 -Temperature1(DS18B20) 440 -(PC13) 441 -)))|(% style="width:82px" %)((( 442 -ADC 443 - 444 -(PA4) 445 -)))|(% style="width:210px" %)((( 446 -Digital in(PB15) & 447 - 448 -Digital Interrupt(PA8) 449 -)))|(% style="width:191px" %)Temperature2(DS18B20) 450 -(PB9)|(% style="width:183px" %)Temperature3(DS18B20) 451 -(PB8) 452 - 453 -[[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"]] 454 - 455 -[[image:image-20230513134006-1.png||height="559" width="736"]] 456 - 457 - 458 -==== 2.3.2.5 MOD~=5(Weight Measurement by HX711) ==== 459 - 460 -[[image:image-20230512164658-2.png||height="532" width="729"]] 461 - 462 -Each HX711 need to be calibrated before used. User need to do below two steps: 463 - 464 -1. Zero calibration. Don't put anything on load cell and run **AT+WEIGRE** to calibrate to Zero gram. 465 -1. Adjust calibration factor (default value 400): Put a known weight thing on load cell and run **AT+WEIGAP** to adjust the Calibration Factor. 466 -1. ((( 467 -Weight has 4 bytes, the unit is g. 285 +)))|=(% 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 286 +|(% style="width:99px" %)**Value**|(% style="width:69px" %)((( 287 +[[Battery>>||anchor="HBattery:"]] 288 +)))|(% style="width:130px" %)((( 289 +[[Unix TimeStamp>>||anchor="H2.5.2UnixTimeStamp"]] 290 +)))|(% style="width:91px" %)((( 291 +[[Alarm Flag>>||anchor="HAlarmFlag26MOD:"]] 292 +)))|(% style="width:103px" %)((( 293 +[[Temperature>>||anchor="HTemperature:"]] 294 +)))|(% style="width:80px" %)((( 295 +[[Humidity>>||anchor="HHumidity:"]] 468 468 ))) 469 469 470 - Forexample:298 +==== (% style="color:#4472c4" %)**Battery**(%%) ==== 471 471 472 - **AT+GETSENSORVALUE=0**300 +Sensor Battery Level. 473 473 474 -Response: Weight is 401 g 475 - 476 -Check the response of this command and adjust the value to match the real value for thing. 477 - 478 -(% style="width:767px" %) 479 -|=((( 480 -**Size(bytes)** 481 -)))|=**2**|=(% style="width: 193px;" %)**2**|=(% style="width: 85px;" %)**2**|=(% style="width: 186px;" %)**1**|=(% style="width: 100px;" %)**4** 482 -|**Value**|BAT|(% style="width:193px" %)((( 483 -Temperature(DS18B20) 484 - 485 -(PC13) 486 - 487 - 488 -)))|(% style="width:85px" %)((( 489 -ADC 490 - 491 -(PA4) 492 -)))|(% style="width:186px" %)((( 493 -Digital in(PB15) & 494 - 495 -Digital Interrupt(PA8) 496 -)))|(% style="width:100px" %)Weight 497 - 498 -[[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"]] 499 - 500 - 501 -==== 2.3.2.6 MOD~=6 (Counting Mode) ==== 502 - 503 -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. 504 - 505 -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. 506 - 507 -[[image:image-20230512181814-9.png||height="543" width="697"]] 508 - 509 -**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. 510 - 511 -(% style="width:961px" %) 512 -|=**Size(bytes)**|=**2**|=(% style="width: 256px;" %)**2**|=(% style="width: 108px;" %)**2**|=(% style="width: 126px;" %)**1**|=(% style="width: 145px;" %)**4** 513 -|**Value**|BAT|(% style="width:256px" %)((( 514 -Temperature(DS18B20) 515 - 516 -(PC13) 517 -)))|(% style="width:108px" %)((( 518 -ADC 519 - 520 -(PA4) 521 -)))|(% style="width:126px" %)((( 522 -Digital in 523 - 524 -(PB15) 525 -)))|(% style="width:145px" %)((( 526 -Count 527 - 528 -(PA8) 529 -))) 530 - 531 -[[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"]] 532 - 533 - 534 -==== 2.3.2.7 MOD~=7 (Three interrupt contact modes) ==== 535 - 536 -(% style="width:1108px" %) 537 -|=((( 538 -**Size(bytes)** 539 -)))|=**2**|=(% style="width: 188px;" %)**2**|=(% style="width: 83px;" %)**2**|=(% style="width: 184px;" %)**1**|=(% style="width: 186px;" %)**1**|=(% style="width: 197px;" %)1|=(% style="width: 100px;" %)2 540 -|**Value**|BAT|(% style="width:188px" %)((( 541 -Temperature(DS18B20) 542 - 543 -(PC13) 544 -)))|(% style="width:83px" %)((( 545 -ADC 546 - 547 -(PA5) 548 -)))|(% style="width:184px" %)((( 549 -Digital Interrupt1(PA8) 550 -)))|(% style="width:186px" %)Digital Interrupt2(PA4)|(% style="width:197px" %)Digital Interrupt3(PB15)|(% style="width:100px" %)Reserved 551 - 552 -[[image:image-20230513111203-7.png||height="324" width="975"]] 553 - 554 -==== 2.3.2.8 MOD~=8 (3ADC+1DS18B20) ==== 555 - 556 -(% style="width:922px" %) 557 -|=((( 558 -**Size(bytes)** 559 -)))|=**2**|=(% style="width: 207px;" %)**2**|=(% style="width: 94px;" %)**2**|=(% style="width: 198px;" %)**1**|=(% style="width: 84px;" %)**2**|=(% style="width: 82px;" %)2 560 -|**Value**|BAT|(% style="width:207px" %)((( 561 -Temperature(DS18B20) 562 - 563 -(PC13) 564 -)))|(% style="width:94px" %)((( 565 -ADC1 566 - 567 -(PA4) 568 -)))|(% style="width:198px" %)((( 569 -Digital Interrupt(PB15) 570 -)))|(% style="width:84px" %)((( 571 -ADC2 572 - 573 -(PA5) 574 -)))|(% style="width:82px" %)((( 575 -ADC3 576 - 577 -(PA8) 578 -))) 579 - 580 -[[image:image-20230513111231-8.png||height="335" width="900"]] 581 - 582 - 583 -==== 2.3.2.9 MOD~=9 (3DS18B20+ two Interrupt count mode) ==== 584 - 585 -(% style="width:1010px" %) 586 -|=((( 587 -**Size(bytes)** 588 -)))|=**2**|=**2**|=**2**|=**1**|=(% style="width: 193px;" %)**2**|=(% style="width: 78px;" %)4|=(% style="width: 78px;" %)4 589 -|**Value**|BAT|((( 590 -Temperature1(DS18B20) 591 - 592 -(PC13) 593 -)))|((( 594 -Temperature2(DS18B20) 595 - 596 -(PB9) 597 -)))|((( 598 -Digital Interrupt 599 - 600 -(PB15) 601 -)))|(% style="width:193px" %)((( 602 -Temperature3(DS18B20) 603 - 604 -(PB8) 605 -)))|(% style="width:78px" %)((( 606 -Count1 607 - 608 -(PA8) 609 -)))|(% style="width:78px" %)((( 610 -Count2 611 - 612 -(PA4) 613 -))) 614 - 615 -[[image:image-20230513111255-9.png||height="341" width="899"]] 616 - 617 -**The newly added AT command is issued correspondingly:** 618 - 619 -**~ AT+INTMOD1** ** PA8** pin: Corresponding downlink: **06 00 00 xx** 620 - 621 -**~ AT+INTMOD2** **PA4** pin: Corresponding downlink:** 06 00 01 xx** 622 - 623 -**~ AT+INTMOD3** **PB15** pin: Corresponding downlink: ** 06 00 02 xx** 624 - 625 -**AT+SETCNT=aa,bb** 626 - 627 -When AA is 1, set the count of PA8 pin to BB Corresponding downlink:09 01 bb bb bb bb 628 - 629 -When AA is 2, set the count of PA4 pin to BB Corresponding downlink:09 02 bb bb bb bb 630 - 631 - 632 - 633 -=== 2.3.3 Decode payload === 634 - 635 -While using TTN V3 network, you can add the payload format to decode the payload. 636 - 637 -[[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"]] 638 - 639 -The payload decoder function for TTN V3 are here: 640 - 641 -SN50v3 TTN V3 Payload Decoder: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>url:https://github.com/dragino/dragino-end-node-decoder]] 642 - 643 - 644 -==== 2.3.3.1 Battery Info ==== 645 - 646 -Check the battery voltage for SN50v3. 647 - 648 648 Ex1: 0x0B45 = 2885mV 649 649 650 650 Ex2: 0x0B49 = 2889mV 651 651 652 652 653 -==== 2.3.3.2 Temperature (DS18B20) ==== 654 654 655 - Ifthere is a DS18B20connectedto PC13 pin.Thetemperaturewill be uploaded in the payload.308 +==== (% style="color:#4472c4" %)**Temperature**(%%) ==== 656 656 657 -More DS18B20 can check the [[3 DS18B20 mode>>url:http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/#2.3.4MOD3D4283xDS18B2029]] 658 - 659 -**Connection:** 660 - 661 -[[image:image-20230512180718-8.png||height="538" width="647"]] 662 - 663 663 **Example**: 664 664 665 665 If payload is: 0105H: (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree ... ... @@ -669,213 +669,195 @@ 669 669 (FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative) 670 670 671 671 672 -==== 2.3.3.3DigitalInput ====319 +==== (% style="color:#4472c4" %)**Humidity**(%%) ==== 673 673 674 -The digital input for pin PB15, 675 675 676 -* When PB15 is high, the bit 1 of payload byte 6 is 1. 677 -* When PB15 is low, the bit 1 of payload byte 6 is 0. 322 +Read:0x(0197)=412 Value: 412 / 10=41.2, So 41.2% 678 678 679 -(% class="wikigeneratedid" id="H2.3.3.4A0AnalogueDigitalConverter28ADC29" %) 680 -((( 681 -When the digital interrupt pin is set to AT+INTMODx=0, this pin is used as a digital input pin. 682 682 683 - **Note:**The maximumvoltageinputsupports 3.6V.325 +==== (% style="color:#4472c4" %)**Alarm Flag& MOD**(%%) ==== 684 684 685 - 686 -))) 687 687 688 - ==== 2.3.3.4 AnalogueDigital Converter (ADC) ====328 +**Example:** 689 689 690 - The measuring range ofthe ADC is onlyabout0Vto1.1VThe voltage resolutionis about0.24mv.330 +If payload & 0x01 = 0x01 **~-~->** This is an Alarm Message 691 691 692 - When the measured output voltage ofthe sensor is not within the range of 0V and 1.1V, the output voltage terminalf the sensor shall bedividedTheexampleinthefollowing figure is to reduce the output voltage of the sensor by three timesIfit isnecessarytoeducemore times, calculateaccording to the formulainthefigure and connect the corresponding resistanceinseries.332 +If payload & 0x01 = 0x00 **~-~->** This is a normal uplink message, no alarm 693 693 694 - [[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"]]334 +If payload >> 2 = 0x00 **~-~->** means MOD=1, This is a sampling uplink message 695 695 696 -** Note:**IftheADCtypesensorneedsto bepoweredby SN50_v3,itrecommended to use+5V tocontrolitsswitch.Onlysensorswith lowpowerconsumptioncan be poweredwith VDD.336 +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. 697 697 698 698 699 -== ==2.3.3.5DigitalInterrupt====339 +== 2.4 Payload Decoder file == 700 700 701 -Digital Interrupt refers to pin PA8, and there are different trigger methods. When there is a trigger, the SN50v3 will send a packet to the server. 702 702 703 - **~Interruptconnectionmethod:**342 +In TTN, use can add a custom payload so it shows friendly reading 704 704 705 - [[image:image-20230513105351-5.png||height="147"width="485"]]344 +In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from: 706 706 707 - **Exampleto use withsor:**346 +[[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]] 708 708 709 -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. 710 710 711 - [[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"]]349 +== 2.5 Datalog Feature == 712 712 713 -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. 714 714 715 - **~ Belowis theinstallation example:**352 +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. 716 716 717 -Fix one piece of the magnetic sensor to the door and connect the two pins to SN50_v3 as follows: 718 718 719 -* ((( 720 -One pin to SN50_v3's PA8 pin 721 -))) 722 -* ((( 723 -The other pin to SN50_v3's VDD pin 724 -))) 355 +=== 2.5.1 Ways to get datalog via LoRaWAN === 725 725 726 -Install the other piece to the door. Find a place where the two pieces will be close to each other when the door is closed. For this particular magnetic sensor, when the door is closed, the output will be short, and PA8 will be at the VCC voltage. 727 727 728 - Door sensors havetwotypes: **NC(Normalclose)**and**NO(normalopen)**.Theconnectionforbothtypensorsarethesame.But thedecoding forpayloadarereverse,userneedtomodifythis in theIoTServer decoder.358 +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. 729 729 730 -When door sensor is shorted, there will extra power consumption in the circuit, the extra current is 3v3/R14 = 3v3/1Mohm = 3uA which can be ignored. 360 +* a) S31x-LB will do an ACK check for data records sending to make sure every data arrive server. 361 +* 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. 731 731 732 - [[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/1656379283019-229.png?rev=1.1||alt="1656379283019-229.png"]]363 +Below is the typical case for the auto-update datalog feature (Set PNACKMD=1) 733 733 734 - Theabovephotos showsthetwof thenetic switchfittedtoadoor.365 +[[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"]] 735 735 736 - Thesoftware by default uses the falling edge on the signal line as an interrupt.Weneed to modifyit to acceptboth the rising edge (0v ~-~-> VCC , door close)and the falling edge (VCC ~-~-> 0v , door open)as the interrupt.367 +=== 2.5.2 Unix TimeStamp === 737 737 738 -The command is: 739 739 740 - **AT+INTMOD1=1**~/~/(more info about INMOD pleaserefer** **[[**AT CommandManual**>>url:http://www.dragino.com/downloads/index.php?dir=LSN50-LoRaST/&file=DRAGINO_LSN50_AT_Commands_v1.5.1.pdf]]**.**)370 +S31x-LB uses Unix TimeStamp format based on 741 741 742 - BelowshowsscreencapturesinTTN V3:372 +[[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"]] 743 743 744 - [[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"]]374 +User can get this time from link: [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] : 745 745 746 - In MOD=1, user can use byte 6 to seethestatus for door openorclose. TTN V3 decoderis as below:376 +Below is the converter example 747 747 748 -doo r= (bytes[6] &0x80)? "CLOSE":"OPEN";378 +[[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"]] 749 749 380 +So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25 750 750 751 -==== 2.3.3.6 I2C Interface (SHT20 & SHT31) ==== 752 752 753 - TheSDA and SCK are I2C interface lines.You can useheseto connect to an I2C deviceand getthe sensor data.383 +=== 2.5.3 Set Device Time === 754 754 755 -We have made an example to show how to use the I2C interface to connect to the SHT20/ SHT31 Temperature and Humidity Sensor. 756 756 757 - Notice: Different I2Csensorshavedifferent I2C commandssetand initiate process,if user wanttouse other I2C sensors, User need toe-write the sourcecodetosupport those sensors. SHT20/ SHT31codeinSN50_v3 will beagoodreference.386 +User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command. 758 758 759 -Be low is the connection to SHT20/SHT31.Theconnection isasbelow:388 +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). 760 760 390 +(% 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.** 761 761 762 -[[image:image-20230513103633-3.png||height="448" width="716"]] 763 763 764 - Thedevice will be able to get the I2Csensor datanowanduploadto IoTServer.393 +=== 2.5.4 Datalog Uplink payload (FPORT~=3) === 765 765 766 -[[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"]] 767 767 768 - Convert theread byte to decimalanddivideitby ten.396 +The Datalog uplinks will use below payload format. 769 769 770 -** Example:**398 +**Retrieval data payload:** 771 771 772 -Temperature: Read:0116(H) = 278(D) Value: 278 /10=27.8℃; 400 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %) 401 +|=(% style="width: 80px;background-color:#D9E2F3" %)((( 402 +**Size(bytes)** 403 +)))|=(% 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** 404 +|(% style="width:103px" %)**Value**|(% style="width:54px" %)((( 405 +[[Temp_Black>>||anchor="HTemperatureBlack:"]] 406 +)))|(% 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"]] 773 773 774 - Humidity:Read:0248(H)=584(D)Value:584/ 10=58.4, So 58.4%408 +**Poll message flag & Ext:** 775 775 776 - If you want to useother I2Cdevice, pleaseefertheSHT20urcecodes reference.410 +[[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"]] 777 777 412 +**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) 778 778 779 - ====2.3.3.7DistanceReading====414 +**Poll Message Flag**: 1: This message is a poll message reply. 780 780 781 - Refer[[UltrasonicSensorsection>>url:http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/#H2.4.8UltrasonicSensor]].416 +* Poll Message Flag is set to 1. 782 782 418 +* Each data entry is 11 bytes, to save airtime and battery, devices will send max bytes according to the current DR and Frequency bands. 783 783 784 - ====2.3.3.8UltrasonicSensor====420 +For example, in US915 band, the max payload for different DR is: 785 785 786 - This FundamentalPrinciplesofthis sensorcanbefound 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]]422 +**a) DR0:** max is 11 bytes so one entry of data 787 787 788 - TheSN50_v3detectsthe pulsewidthofthe sensorandconvertsit to mm output. The accuracywillbe within 1 centimeter. Theusable range(thedistancebetweenhe ultrasonicprobeandhe measuredobject)isbetween 24cm and 600cm.424 +**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes) 789 789 790 - Theworkingprincipleof thissensorsimilar to the **HC-SR04** ultrasonic sensor.426 +**c) DR2:** total payload includes 11 entries of data 791 791 792 - Thepicturebelowshowstheconnection:428 +**d) DR3: **total payload includes 22 entries of data. 793 793 794 - [[image:image-20230512173903-6.png||height="596"width="715"]]430 +If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0 795 795 796 -Connect to the SN50_v3 and run **AT+MOD=2** to switch to ultrasonic mode (ULT). 797 797 798 -The ultrasonic sensor uses the 8^^th^^ and 9^^th^^ byte for the measurement value. 799 - 800 800 **Example:** 801 801 802 - Distance:Read: 0C2D(Hex) =3117(D)Value:3117mm=311.7cm435 +If S31x-LB has below data inside Flash: 803 803 437 +[[image:1682646494051-944.png]] 804 804 439 +If user sends below downlink command: 3160065F9760066DA705 805 805 806 - ====2.3.3.9BatteryOutput-BAT pin====441 +Where : Start time: 60065F97 = time 21/1/19 04:27:03 807 807 808 - 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.443 + Stop time: 60066DA7= time 21/1/19 05:27:03 809 809 810 810 811 - ==== 2.3.3.10+5VOutput====446 +**S31x-LB will uplink this payload.** 812 812 813 - SN50v3willenable+5Voutputbeforeall samplingand disablethe+5v afterl sampling.448 +[[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"]] 814 814 815 -The 5V output time can be controlled by AT Command. 450 +((( 451 +__**7FFF089801464160065F97**__ **__7FFF__ __088E__ __014B__ __41__ __60066009__** 7FFF0885014E41600660667FFF0875015141600662BE7FFF086B015541600665167FFF08660155416006676E7FFF085F015A41600669C67FFF0857015D4160066C1E 452 +))) 816 816 817 -**AT+5VT=1000** 454 +((( 455 +Where the first 11 bytes is for the first entry: 456 +))) 818 818 819 -Means set 5V valid time to have 1000ms. So the real 5V output will actually have 1000ms + sampling time for other sensors. 458 +((( 459 +7FFF089801464160065F97 460 +))) 820 820 821 -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. 462 +((( 463 +**Ext sensor data**=0x7FFF/100=327.67 464 +))) 822 822 466 +((( 467 +**Temp**=0x088E/100=22.00 468 +))) 823 823 470 +((( 471 +**Hum**=0x014B/10=32.6 472 +))) 824 824 825 -==== 2.3.3.11 BH1750 Illumination Sensor ==== 474 +((( 475 +**poll message flag & Ext**=0x41,means reply data,Ext=1 476 +))) 826 826 827 -MOD=1 support this sensor. The sensor value is in the 8^^th^^ and 9^^th^^ bytes. 478 +((( 479 +**Unix time** is 0x60066009=1611030423s=21/1/19 04:27:03 480 +))) 828 828 829 -[[image:image-20230512172447-4.png||height="416" width="712"]] 830 830 831 - [[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"]]483 +(% 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="单击并拖动以调整大小" %)的 832 832 485 +== 2.6 Temperature Alarm Feature == 833 833 834 -==== 2.3.3.12 Working MOD ==== 835 835 836 - TheworkingMOD info is contained in theDigitalin & Digital Interruptbyte(7^^th^^ Byte).488 +S31x-LB work flow with Alarm feature. 837 837 838 -User can use the 3^^rd^^ ~~ 7^^th^^ bit of this byte to see the working mod: 839 839 840 - Case7^^th^^ Byte>>2&0x1f:491 +[[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"]] 841 841 842 -* 0: MOD1 843 -* 1: MOD2 844 -* 2: MOD3 845 -* 3: MOD4 846 -* 4: MOD5 847 -* 5: MOD6 848 -* 6: MOD7 849 -* 7: MOD8 850 -* 8: MOD9 851 851 852 -== == 494 +== 2.7 Frequency Plans == 853 853 854 -== 2.4 Payload Decoder file == 855 855 497 +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. 856 856 857 -In TTN, use can add a custom payload so it shows friendly reading 858 - 859 -In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from: 860 - 861 -[[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]] 862 - 863 - 864 - 865 -== 2.5 Frequency Plans == 866 - 867 - 868 -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. 869 - 870 870 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]] 871 871 872 872 873 -= 3. Configure S N50v3-LB =502 += 3. Configure S31x-LB = 874 874 875 875 == 3.1 Configure Methods == 876 876 877 877 878 -S N50v3-LB supports below configure method:507 +S31x-LB supports below configure method: 879 879 880 880 * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]]. 881 881 * 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]]. ... ... @@ -894,7 +894,7 @@ 894 894 [[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/]] 895 895 896 896 897 -== 3.3 Commands special design for S N50v3-LB ==526 +== 3.3 Commands special design for S31x-LB == 898 898 899 899 900 900 These commands only valid for S31x-LB, as below: ... ... @@ -902,6 +902,7 @@ 902 902 903 903 === 3.3.1 Set Transmit Interval Time === 904 904 534 + 905 905 Feature: Change LoRaWAN End Node Transmit Interval. 906 906 907 907 (% style="color:blue" %)**AT Command: AT+TDC** ... ... @@ -927,167 +927,118 @@ 927 927 * Example 1: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds 928 928 * Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 929 929 930 -=== === 931 - 932 932 === 3.3.2 Get Device Status === 933 933 934 -Send a LoRaWAN downlink to ask the device to send its status. 935 935 563 +Send a LoRaWAN downlink to ask device send Alarm settings. 564 + 936 936 (% style="color:blue" %)**Downlink Payload: **(%%)0x26 01 937 937 938 938 Sensor will upload Device Status via FPORT=5. See payload section for detail. 939 939 940 940 941 -=== 3.3.3 Set InterruptMode===570 +=== 3.3.3 Set Temperature Alarm Threshold === 942 942 943 - Feature,SetInterrupt modefor GPIO_EXIT.572 +* (% style="color:blue" %)**AT Command:** 944 944 945 -(% style="color: blue" %)**ATCommand: AT+INTMOD1,AT+INTMOD2,AT+INTMOD3**574 +(% style="color:#037691" %)**AT+SHTEMP=min,max** 946 946 947 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 948 -|=(% style="width: 154px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 196px;background-color:#D9E2F3" %)**Function**|=(% style="width: 157px;background-color:#D9E2F3" %)**Response** 949 -|(% style="width:154px" %)AT+INTMOD1=?|(% style="width:196px" %)Show current interrupt mode|(% style="width:157px" %)((( 950 -0 951 -OK 952 -the mode is 0 =Disable Interrupt 953 -))) 954 -|(% style="width:154px" %)AT+INTMOD1=2|(% style="width:196px" %)((( 955 -Set Transmit Interval 956 -0. (Disable Interrupt), 957 -~1. (Trigger by rising and falling edge) 958 -2. (Trigger by falling edge) 959 -3. (Trigger by rising edge) 960 -)))|(% style="width:157px" %)OK 961 -|(% style="width:154px" %)AT+INTMOD2=3|(% style="width:196px" %)((( 962 -Set Transmit Interval 576 +* When min=0, and max≠0, Alarm higher than max 577 +* When min≠0, and max=0, Alarm lower than min 578 +* When min≠0 and max≠0, Alarm higher than max or lower than min 963 963 964 -trigger by rising edge. 965 -)))|(% style="width:157px" %)OK 966 -|(% style="width:154px" %)AT+INTMOD3=0|(% style="width:196px" %)Disable Interrupt|(% style="width:157px" %)OK 580 +Example: 967 967 968 - (%style="color:blue"%)**DownlinkCommand:0x06**582 + AT+SHTEMP=0,30 ~/~/ Alarm when temperature higher than 30. 969 969 970 - Format:CommandCode(0x06)followedby 3 bytes.584 +* (% style="color:blue" %)**Downlink Payload:** 971 971 972 - Thismeanshat theinterrupt modeofthe end node is set to0x000003=3(risingedgetrigger),andthetypecodeis06.586 +(% style="color:#037691" %)**0x(0C 01 00 1E)** (%%) ~/~/ Set AT+SHTEMP=0,30 973 973 974 -* Example 1: Downlink Payload: 06000000 **~-~-->** AT+INTMOD1=0 975 -* Example 2: Downlink Payload: 06000003 **~-~-->** AT+INTMOD1=3 976 -* Example 3: Downlink Payload: 06000102 **~-~-->** AT+INTMOD2=2 977 -* Example 4: Downlink Payload: 06000201 **~-~-->** AT+INTMOD3=1 588 +(% style="color:red" %)**(note: 3^^rd^^ byte= 0x00 for low limit(not set), 4^^th^^ byte = 0x1E for high limit: 30)** 978 978 979 -=== === 980 980 981 -=== 3.3.4 Set Power OutputDuration===591 +=== 3.3.4 Set Humidity Alarm Threshold === 982 982 983 - Controltheoutput duration 5V . Beforeeachsampling,device will593 +* (% style="color:blue" %)**AT Command:** 984 984 985 - ~1.firstenablethe poweroutput to externalsensor,595 +(% style="color:#037691" %)**AT+SHHUM=min,max** 986 986 987 -2. keep it on as per duration, read sensor value and construct uplink payload 597 +* When min=0, and max≠0, Alarm higher than max 598 +* When min≠0, and max=0, Alarm lower than min 599 +* When min≠0 and max≠0, Alarm higher than max or lower than min 988 988 989 - 3. final, closethe power output.601 +Example: 990 990 991 - (%style="color:blue"%)**ATCommand:AT+5VT**603 + AT+SHHUM=70,0 ~/~/ Alarm when humidity lower than 70%. 992 992 993 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 994 -|=(% style="width: 154px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 196px;background-color:#D9E2F3" %)**Function**|=(% style="width: 157px;background-color:#D9E2F3" %)**Response** 995 -|(% style="width:154px" %)AT+5VT=?|(% style="width:196px" %)Show 5V open time.|(% style="width:157px" %)((( 996 -500(default) 605 +* (% style="color:blue" %)**Downlink Payload:** 997 997 998 -OK 999 -))) 1000 -|(% style="width:154px" %)AT+5VT=1000|(% style="width:196px" %)((( 1001 -Close after a delay of 1000 milliseconds. 1002 -)))|(% style="width:157px" %)OK 607 +(% style="color:#037691" %)**0x(0C 02 46 00)**(%%) ~/~/ Set AT+SHTHUM=70,0 1003 1003 1004 -(% style="color: blue" %)**Downlink Command:0x07**609 +(% style="color:red" %)**(note: 3^^rd^^ byte= 0x46 for low limit (70%), 4^^th^^ byte = 0x00 for high limit (not set))** 1005 1005 1006 -Format: Command Code (0x07) followed by 2 bytes. 1007 1007 1008 - Thefirstand second bytesare the timeto turnon.612 +=== 3.3.5 Set Alarm Interval === 1009 1009 1010 -* Example 1: Downlink Payload: 070000 **~-~-->** AT+5VT=0 1011 -* Example 2: Downlink Payload: 0701F4 **~-~-->** AT+5VT=500 614 +The shortest time of two Alarm packet. (unit: min) 1012 1012 1013 - =====616 +* (% style="color:blue" %)**AT Command:** 1014 1014 1015 -= ==3.3.5SetWeighingparameters===618 +(% 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. 1016 1016 1017 - Feature:Workingmode 5 isffective,weight initialization and weight factor setting of HX711.620 +* (% style="color:blue" %)**Downlink Payload:** 1018 1018 1019 -(% style="color: blue" %)**ATCommand:AT+WEIGRE,AT+WEIGAP**622 +(% style="color:#037691" %)**0x(0D 00 1E)**(%%) **~-~--> ** Set AT+ATDC=0x 00 1E = 30 minutes 1020 1020 1021 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 1022 -|=(% style="width: 154px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 196px;background-color:#D9E2F3" %)**Function**|=(% style="width: 157px;background-color:#D9E2F3" %)**Response** 1023 -|(% style="width:154px" %)AT+WEIGRE|(% style="width:196px" %)Weight is initialized to 0.|(% style="width:157px" %)OK 1024 -|(% style="width:154px" %)AT+WEIGAP=?|(% style="width:196px" %)400.0|(% style="width:157px" %)OK(default) 1025 -|(% style="width:154px" %)AT+WEIGAP=400.3|(% style="width:196px" %)Set the factor to 400.3.|(% style="width:157px" %)OK 1026 1026 1027 - (%style="color:blue"%)**DownlinkCommand: 0x08**625 +=== 3.3.6 Get Alarm settings === 1028 1028 1029 -Format: Command Code (0x08) followed by 2 bytes or 4 bytes. 1030 1030 1031 - UseAT+WEIGREwhen thefirstbytes 1, only 1 byte.Whenit is 2, useAT+WEIGAP, thereare3 bytes.628 +Send a LoRaWAN downlink to ask device send Alarm settings. 1032 1032 1033 - Thesecondand thirdbytesare multipliedby 10times to be the AT+WEIGAPvalue.630 +* (% style="color:#037691" %)**Downlink Payload: **(%%)0x0E 01 1034 1034 1035 -* Example 1: Downlink Payload: 0801 **~-~-->** AT+WEIGRE 1036 -* Example 2: Downlink Payload: 08020FA3 **~-~-->** AT+WEIGAP=400.3 1037 -* Example 3: Downlink Payload: 08020FA0 **~-~-->** AT+WEIGAP=400.0 632 +**Example:** 1038 1038 1039 -== = ===634 +[[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"]] 1040 1040 1041 -=== 3.3.6 Set Digital pulse count value === 1042 1042 1043 - Feature: Set thepulse count value.637 +**Explain:** 1044 1044 1045 - Count1isPA8pinofmode6andmode9. Count 2isPA4pinofmode9.639 +* Alarm & MOD bit is 0x7C, 0x7C >> 2 = 0x31: Means this message is the Alarm settings message. 1046 1046 1047 - (%style="color:blue"%)**AT Command:AT+SETCNT**641 +=== 3.3.7 Set Interrupt Mode === 1048 1048 1049 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 1050 -|=(% style="width: 154px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 196px;background-color:#D9E2F3" %)**Function**|=(% style="width: 157px;background-color:#D9E2F3" %)**Response** 1051 -|(% style="width:154px" %)AT+SETCNT=1,100|(% style="width:196px" %)Initialize the count value 1 to 100.|(% style="width:157px" %)OK 1052 -|(% style="width:154px" %)AT+SETCNT=2,0|(% style="width:196px" %)Initialize the count value 2 to 0.|(% style="width:157px" %)OK 1053 1053 1054 - (%style="color:blue"%)**DownlinkCommand:0x09**644 +Feature, Set Interrupt mode for GPIO_EXIT. 1055 1055 1056 - Format: CommandCode (0x09) followed by 5 bytes.646 +(% style="color:blue" %)**AT Command: AT+INTMOD** 1057 1057 1058 -The first byte is to select which count value to initialize, and the next four bytes are the count value to be initialized. 1059 - 1060 -* Example 1: Downlink Payload: 090100000000 **~-~-->** AT+SETCNT=1,0 1061 -* Example 2: Downlink Payload: 0902000003E8 **~-~-->** AT+SETCNT=2,1000 1062 - 1063 -=== === 1064 - 1065 -=== 3.3.7 Set Workmode === 1066 - 1067 -Feature: Switch working mode. 1068 - 1069 -(% style="color:blue" %)**AT Command: AT+MOD** 1070 - 1071 1071 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 1072 1072 |=(% style="width: 154px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 196px;background-color:#D9E2F3" %)**Function**|=(% style="width: 157px;background-color:#D9E2F3" %)**Response** 1073 -|(% style="width:154px" %)AT+MOD=?|(% style="width:196px" %)Get the current working mode.|(% style="width:157px" %)((( 650 +|(% style="width:154px" %)AT+INTMOD=?|(% style="width:196px" %)Show current interrupt mode|(% style="width:157px" %)((( 651 +0 1074 1074 OK 653 +the mode is 0 =Disable Interrupt 1075 1075 ))) 1076 -|(% style="width:154px" %)AT+MOD=4|(% style="width:196px" %)Set the working mode to 3DS18B20s.|(% style="width:157px" %)((( 1077 -OK 655 +|(% style="width:154px" %)AT+INTMOD=2|(% style="width:196px" %)((( 656 +Set Transmit Interval 657 +0. (Disable Interrupt), 658 +~1. (Trigger by rising and falling edge) 659 +2. (Trigger by falling edge) 660 +3. (Trigger by rising edge) 661 +)))|(% style="width:157px" %)OK 1078 1078 1079 -Attention:Take effect after ATZ 1080 -))) 663 +(% style="color:blue" %)**Downlink Command: 0x06** 1081 1081 1082 - (% style="color:blue"%)**DownlinkCommand:0x0A**665 +Format: Command Code (0x06) followed by 3 bytes. 1083 1083 1084 - Format:CommandCode(0x0A)followedby1bytes.667 +This means that the interrupt mode of the end node is set to 0x000003=3 (rising edge trigger), and the type code is 06. 1085 1085 1086 -* Example 1: Downlink Payload: 0 A01**~-~-->**AT+MOD=11087 -* Example 2: Downlink Payload: 0 A04**~-~-->**AT+MOD=4669 +* Example 1: Downlink Payload: 06000000 ~/~/ Turn off interrupt mode 670 +* Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger 1088 1088 1089 -= = 1090 - 1091 1091 = 4. Battery & Power Consumption = 1092 1092 1093 1093 ... ... @@ -1116,10 +1116,7 @@ 1116 1116 1117 1117 = 6. FAQ = 1118 1118 1119 -== 6.1 Where can i find source code of SN50v3-LB? == 1120 1120 1121 -* **[[Hardware Source Files>>https://github.com/dragino/Lora/tree/master/LSN50/v3.0]].** 1122 -* **[[Software Source Code & Compile instruction>>https://github.com/dragino/SN50v3]].** 1123 1123 1124 1124 = 7. Order Info = 1125 1125 ... ... @@ -1161,4 +1161,4 @@ 1161 1161 1162 1162 1163 1163 * 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. 1164 -* 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.c c>>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]]742 +* 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