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 ... ... @@ -42,7 +42,6 @@ 42 42 43 43 == 1.3 Specification == 44 44 45 - 46 46 (% style="color:#037691" %)**Common DC Characteristics:** 47 47 48 48 * Supply Voltage: built in 8500mAh Li-SOCI2 battery , 2.5v ~~ 3.6v ... ... @@ -79,7 +79,6 @@ 79 79 80 80 == 1.4 Sleep mode and working mode == 81 81 82 - 83 83 (% style="color:blue" %)**Deep Sleep Mode: **(%%)Sensor doesn't have any LoRaWAN activate. This mode is used for storage and shipping to save battery life. 84 84 85 85 (% style="color:blue" %)**Working Mode:** (%%)In this mode, Sensor will work as LoRaWAN Sensor to Join LoRaWAN network and send out sensor data to server. Between each sampling/tx/rx periodically, sensor will be in IDLE mode), in IDLE mode, sensor has the same power consumption as Deep Sleep mode. ... ... @@ -122,7 +122,7 @@ 122 122 == 1.7 Pin Definitions == 123 123 124 124 125 -[[image:image-2023051 3102034-2.png]]125 +[[image:image-20230511203450-2.png||height="443" width="785"]] 126 126 127 127 128 128 == 1.8 Mechanical == ... ... @@ -137,7 +137,6 @@ 137 137 138 138 == Hole Option == 139 139 140 - 141 141 SN50v3-LB has different hole size options for different size sensor cable. The options provided are M12, M16 and M20. The definition is as below: 142 142 143 143 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/image-20220627104757-1.png?rev=1.1||alt="image-20220627104757-1.png"]] ... ... @@ -150,7 +150,7 @@ 150 150 == 2.1 How it works == 151 151 152 152 153 -The 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. 154 154 155 155 156 156 == 2.2 Quick guide to connect to LoRaWAN server (OTAA) == ... ... @@ -161,11 +161,11 @@ 161 161 The LPS8V2 is already set to connected to [[TTN network >>url:https://console.cloud.thethings.network/]], so what we need to now is configure the TTN server. 162 162 163 163 164 -(% 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. 165 165 166 -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: 167 167 168 -[[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"]] 169 169 170 170 171 171 You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot: ... ... @@ -192,10 +192,10 @@ 192 192 [[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"]] 193 193 194 194 195 -(% style="color:blue" %)**Step 2:**(%%) Activate S N50v3-LB194 +(% style="color:blue" %)**Step 2:**(%%) Activate on S31x-LB 196 196 197 197 198 -Press the button for 5 seconds to activate the S N50v3-LB.197 +Press the button for 5 seconds to activate the S31x-LB. 199 199 200 200 (% 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. 201 201 ... ... @@ -207,7 +207,7 @@ 207 207 === 2.3.1 Device Status, FPORT~=5 === 208 208 209 209 210 -Users can use the downlink command(**0x26 01**) to ask 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. 211 211 212 212 The Payload format is as below. 213 213 ... ... @@ -219,9 +219,11 @@ 219 219 220 220 Example parse in TTNv3 221 221 221 +[[image:image-20230421171614-1.png||alt="图片-20230421171614-1.png"]] 222 222 223 -(% style="color:#037691" %)**Sensor Model**(%%): For SN50v3, this value is 0x1C 224 224 224 +(% style="color:#037691" %)**Sensor Model**(%%): For S31x-LB, this value is 0x0A 225 + 225 225 (% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version 226 226 227 227 (% style="color:#037691" %)**Frequency Band**: ... ... @@ -273,344 +273,39 @@ 273 273 Ex2: 0x0B49 = 2889mV 274 274 275 275 276 -=== 2.3.2 Working Modes &Sensor Data.Uplink viaFPORT~=2 ===277 +=== 2.3.2 Sensor Data. FPORT~=2 === 277 277 278 278 279 -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 280 280 281 -For example: 282 - 283 - **AT+MOD=2 ** ~/~/ will set the SN50v3 to work in MOD=2 distance mode which target to measure distance via Ultrasonic Sensor. 284 - 285 - 286 -(% style="color:red" %) **Important Notice:** 287 - 288 -1. Some working modes has payload more than 12 bytes, The US915/AU915/AS923 frequency bands' definition has maximum 11 bytes in **DR0**. Server sides will see NULL payload while SN50v3 transmit in DR0 with 12 bytes payload. 289 -1. All modes share the same Payload Explanation from HERE. 290 -1. By default, the device will send an uplink message every 20 minutes. 291 - 292 -==== 2.3.2.1 MOD~=1 (Default Mode) ==== 293 - 294 - 295 -In this mode, uplink payload includes in total 11 bytes. Uplink packets use FPORT=2. 296 - 297 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %) 298 -|(% style="width:50px;background-color:#D9E2F3;color:#0070C0" %)**Size(bytes)**|(% style="width:20px;background-color:#D9E2F3;color:#0070C0" %)**2**|(% style="width:100px;background-color:#D9E2F3;color:#0070C0" %)**2**|(% style="width:40px;background-color:#D9E2F3;color:#0070C0" %)**2**|(% style="width:90px;background-color:#D9E2F3;color:#0070C0" %)**1**|(% style="width:130px;background-color:#D9E2F3;color:#0070C0" %)**2**|(% style="width:90px;background-color:#D9E2F3;color:#0070C0" %)**2** 299 -|**Value**|Bat|(% style="width:191px" %)((( 300 -Temperature(DS18B20)(PC13) 301 -)))|(% style="width:78px" %)((( 302 -ADC(PA4) 303 -)))|(% style="width:216px" %)((( 304 -Digital in(PB15)&Digital Interrupt(PA8) 305 -)))|(% style="width:308px" %)((( 306 -Temperature(SHT20 or SHT31 or BH1750 Illumination Sensor) 307 -)))|(% style="width:154px" %)((( 308 -Humidity(SHT20 or SHT31) 309 -))) 310 - 311 -[[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"]] 312 - 313 - 314 -==== 2.3.2.2 MOD~=2 (Distance Mode) ==== 315 - 316 -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. 317 - 318 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %) 319 -|(% style="width:40px;background-color:#D9E2F3;color:#0070C0" %)**Size(bytes)**|(% style="width:40px;background-color:#D9E2F3;color:#0070C0" %)**2**|(% style="width:110px;background-color:#D9E2F3;color:#0070C0" %)**2**|(% style="width:40px;background-color:#D9E2F3;color:#0070C0" %)**2**|(% style="width:110px;background-color:#D9E2F3;color:#0070C0" %)**1**|(% style="width:140px;background-color:#D9E2F3;color:#0070C0" %)**2**|(% style="width:40px;background-color:#D9E2F3;color:#0070C0" %)**2** 320 -|**Value**|BAT|(% style="width:196px" %)((( 321 -Temperature(DS18B20)(PC13) 322 -)))|(% style="width:87px" %)((( 323 -ADC(PA4) 324 -)))|(% style="width:189px" %)((( 325 -Digital in(PB15) & Digital Interrupt(PA8) 326 -)))|(% style="width:208px" %)((( 327 -Distance measure by:1) LIDAR-Lite V3HP 328 -Or 2) Ultrasonic Sensor 329 -)))|(% style="width:117px" %)Reserved 330 - 331 -[[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"]] 332 - 333 -(% style="color:blue" %)**Connection of LIDAR-Lite V3HP:** 334 - 335 -[[image:image-20230512173758-5.png||height="563" width="712"]] 336 - 337 -(% style="color:blue" %)**Connection to Ultrasonic Sensor:** 338 - 339 -Need to remove R1 and R2 resistors to get low power,otherwise there will be 240uA standby current. 340 - 341 -[[image:image-20230512173903-6.png||height="596" width="715"]] 342 - 343 -For the connection to TF-Mini or TF-Luna , MOD2 payload is as below: 344 - 345 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %) 346 -|(% style="width:50px;background-color:#D9E2F3;color:#0070C0" %)**Size(bytes)**|(% 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" %)**1**|(% style="width:50px;background-color:#D9E2F3;color:#0070C0" %)**2**|(% style="width:120px;background-color:#D9E2F3;color:#0070C0" %)**2**|(% style="width:80px;background-color:#D9E2F3;color:#0070C0" %)**2** 347 -|**Value**|BAT|(% style="width:183px" %)((( 348 -Temperature(DS18B20)(PC13) 349 -)))|(% style="width:173px" %)((( 350 -Digital in(PB15) & Digital Interrupt(PA8) 351 -)))|(% style="width:84px" %)((( 352 -ADC(PA4) 353 -)))|(% style="width:323px" %)((( 354 -Distance measure by:1)TF-Mini plus LiDAR 355 -Or 356 -2) TF-Luna LiDAR 357 -)))|(% style="width:188px" %)Distance signal strength 358 - 359 -[[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"]] 360 - 361 -**Connection to [[TF-Mini plus>>url:http://en.benewake.com/product/detail/5c345cd0e5b3a844c472329b.html]] LiDAR(UART version):** 362 - 363 -Need to remove R3 and R4 resistors to get low power,otherwise there will be 400uA standby current. 364 - 365 -[[image:image-20230512180609-7.png||height="555" width="802"]] 366 - 367 -**Connection to [[TF-Luna>>url:http://en.benewake.com/product/detail/5e1c1fd04d839408076b6255.html]] LiDAR (UART version):** 368 - 369 -Need to remove R3 and R4 resistors to get low power,otherwise there will be 400uA standby current. 370 - 371 -[[image:image-20230513105207-4.png||height="469" width="802"]] 372 - 373 - 374 -==== 2.3.2.3 MOD~=3 (3 ADC + I2C) ==== 375 - 376 -This mode has total 12 bytes. Include 3 x ADC + 1x I2C 377 - 378 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %) 379 -|=((( 380 -(% style="width: 50px;" %)**Size(bytes)** 381 -)))|=(% style="width: 68px;" %)**2**|=(% style="width: 75px;" %)**2**|=**2**|=**1**|=(% style="width: 304px;" %)2|=(% style="width: 163px;" %)2|=(% style="width: 53px;" %)1 382 -|**Value**|(% style="width:68px" %)((( 383 -ADC1 384 -(PA4) 385 -)))|(% style="width:75px" %)((( 386 -ADC2 387 -(PA5) 388 -)))|((( 389 -ADC3 390 -(PA8) 391 -)))|((( 392 -Digital Interrupt(PB15) 393 -)))|(% style="width:304px" %)((( 394 -Temperature 395 -(SHT20 or SHT31 or BH1750 Illumination Sensor) 396 -)))|(% style="width:163px" %)((( 397 -Humidity 398 -(SHT20 or SHT31) 399 -)))|(% style="width:53px" %)Bat 400 - 401 -[[image:image-20230513110214-6.png]] 402 - 403 - 404 -==== 2.3.2.4 MOD~=4 (3 x DS18B20) ==== 405 - 406 - 407 -This mode has total 11 bytes. As shown below: 408 - 409 -(% style="width:1017px" %) 410 -|**Size(bytes)**|**2**|(% style="width:186px" %)**2**|(% style="width:82px" %)**2**|(% style="width:210px" %)**1**|(% style="width:191px" %)**2**|(% style="width:183px" %)**2** 411 -|**Value**|BAT|(% style="width:186px" %)((( 412 -Temperature1(DS18B20) 413 -(PC13) 414 -)))|(% style="width:82px" %)((( 415 -ADC 416 -(PA4) 417 -)))|(% style="width:210px" %)((( 418 -Digital in(PB15) & 419 -Digital Interrupt(PA8) 420 -)))|(% style="width:191px" %)Temperature2(DS18B20) 421 -(PB9)|(% style="width:183px" %)Temperature3(DS18B20) 422 -(PB8) 423 - 424 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/1656377606181-607.png?rev=1.1||alt="1656377606181-607.png"]] 425 - 426 -[[image:image-20230513134006-1.png||height="559" width="736"]] 427 - 428 - 429 -==== 2.3.2.5 MOD~=5(Weight Measurement by HX711) ==== 430 - 431 -[[image:image-20230512164658-2.png||height="532" width="729"]] 432 - 433 -Each HX711 need to be calibrated before used. User need to do below two steps: 434 - 435 -1. Zero calibration. Don't put anything on load cell and run **AT+WEIGRE** to calibrate to Zero gram. 436 -1. Adjust calibration factor (default value 400): Put a known weight thing on load cell and run **AT+WEIGAP** to adjust the Calibration Factor. 437 -1. ((( 438 -Weight has 4 bytes, the unit is g. 439 -))) 440 - 441 -For example: 442 - 443 -**AT+GETSENSORVALUE =0** 444 - 445 -Response: Weight is 401 g 446 - 447 -Check the response of this command and adjust the value to match the real value for thing. 448 - 449 -(% style="width:767px" %) 450 -|=((( 282 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %) 283 +|=(% style="width: 90px;background-color:#D9E2F3" %)((( 451 451 **Size(bytes)** 452 -)))|=**2**|=(% style="width: 193px;" %)**2**|=(% style="width: 85px;" %)**2**|=(% style="width: 186px;" %)**1**|=(% style="width: 100px;" %)**4** 453 -|**Value**|BAT|(% style="width:193px" %)((( 454 -Temperature(DS18B20) 455 -(PC13) 456 -)))|(% style="width:85px" %)((( 457 -ADC 458 -(PA4) 459 -)))|(% style="width:186px" %)((( 460 -Digital in(PB15) & 461 -Digital Interrupt(PA8) 462 -)))|(% style="width:100px" %)Weight 463 - 464 -[[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"]] 465 - 466 - 467 -==== 2.3.2.6 MOD~=6 (Counting Mode) ==== 468 - 469 -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. 470 - 471 -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. 472 - 473 -[[image:image-20230512181814-9.png||height="543" width="697"]] 474 - 475 -**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. 476 - 477 -(% style="width:961px" %) 478 -|=**Size(bytes)**|=**2**|=(% style="width: 256px;" %)**2**|=(% style="width: 108px;" %)**2**|=(% style="width: 126px;" %)**1**|=(% style="width: 145px;" %)**4** 479 -|**Value**|BAT|(% style="width:256px" %)((( 480 -Temperature(DS18B20) 481 - 482 -(PC13) 483 -)))|(% style="width:108px" %)((( 484 -ADC 485 -(PA4) 486 -)))|(% style="width:126px" %)((( 487 -Digital in 488 -(PB15) 489 -)))|(% style="width:145px" %)((( 490 -Count 491 -(PA8) 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:"]] 492 492 ))) 493 493 494 - [[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"]]298 +==== (% style="color:#4472c4" %)**Battery**(%%) ==== 495 495 300 +Sensor Battery Level. 496 496 497 -==== 2.3.2.7 MOD~=7 (Three interrupt contact modes) ==== 498 - 499 -(% style="width:1108px" %) 500 -|=((( 501 -**Size(bytes)** 502 -)))|=**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 503 -|**Value**|BAT|(% style="width:188px" %)((( 504 -Temperature(DS18B20) 505 -(PC13) 506 -)))|(% style="width:83px" %)((( 507 -ADC 508 -(PA5) 509 -)))|(% style="width:184px" %)((( 510 -Digital Interrupt1(PA8) 511 -)))|(% style="width:186px" %)Digital Interrupt2(PA4)|(% style="width:197px" %)Digital Interrupt3(PB15)|(% style="width:100px" %)Reserved 512 - 513 -[[image:image-20230513111203-7.png||height="324" width="975"]] 514 - 515 -==== 2.3.2.8 MOD~=8 (3ADC+1DS18B20) ==== 516 - 517 -(% style="width:922px" %) 518 -|=((( 519 -**Size(bytes)** 520 -)))|=**2**|=(% style="width: 207px;" %)**2**|=(% style="width: 94px;" %)**2**|=(% style="width: 198px;" %)**1**|=(% style="width: 84px;" %)**2**|=(% style="width: 82px;" %)2 521 -|**Value**|BAT|(% style="width:207px" %)((( 522 -Temperature(DS18B20) 523 -(PC13) 524 -)))|(% style="width:94px" %)((( 525 -ADC1 526 -(PA4) 527 -)))|(% style="width:198px" %)((( 528 -Digital Interrupt(PB15) 529 -)))|(% style="width:84px" %)((( 530 -ADC2 531 -(PA5) 532 -)))|(% style="width:82px" %)((( 533 -ADC3 534 -(PA8) 535 -))) 536 - 537 -[[image:image-20230513111231-8.png||height="335" width="900"]] 538 - 539 - 540 -==== 2.3.2.9 MOD~=9 (3DS18B20+ two Interrupt count mode) ==== 541 - 542 -(% style="width:1010px" %) 543 -|=((( 544 -**Size(bytes)** 545 -)))|=**2**|=**2**|=**2**|=**1**|=(% style="width: 193px;" %)**2**|=(% style="width: 78px;" %)4|=(% style="width: 78px;" %)4 546 -|**Value**|BAT|((( 547 -Temperature1(DS18B20) 548 -(PC13) 549 -)))|((( 550 -Temperature2(DS18B20) 551 -(PB9) 552 -)))|((( 553 -Digital Interrupt 554 -(PB15) 555 -)))|(% style="width:193px" %)((( 556 -Temperature3(DS18B20) 557 -(PB8) 558 -)))|(% style="width:78px" %)((( 559 -Count1 560 -(PA8) 561 -)))|(% style="width:78px" %)((( 562 -Count2 563 -(PA4) 564 -))) 565 - 566 -[[image:image-20230513111255-9.png||height="341" width="899"]] 567 - 568 -**The newly added AT command is issued correspondingly:** 569 - 570 -**~ AT+INTMOD1** ** PA8** pin: Corresponding downlink: **06 00 00 xx** 571 - 572 -**~ AT+INTMOD2** **PA4** pin: Corresponding downlink:** 06 00 01 xx** 573 - 574 -**~ AT+INTMOD3** **PB15** pin: Corresponding downlink: ** 06 00 02 xx** 575 - 576 -**AT+SETCNT=aa,bb** 577 - 578 -When AA is 1, set the count of PA8 pin to BB Corresponding downlink:09 01 bb bb bb bb 579 - 580 -When AA is 2, set the count of PA4 pin to BB Corresponding downlink:09 02 bb bb bb bb 581 - 582 - 583 - 584 -=== 2.3.3 Decode payload === 585 - 586 -While using TTN V3 network, you can add the payload format to decode the payload. 587 - 588 -[[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"]] 589 - 590 -The payload decoder function for TTN V3 are here: 591 - 592 -SN50v3 TTN V3 Payload Decoder: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>url:https://github.com/dragino/dragino-end-node-decoder]] 593 - 594 - 595 -==== 2.3.3.1 Battery Info ==== 596 - 597 -Check the battery voltage for SN50v3. 598 - 599 599 Ex1: 0x0B45 = 2885mV 600 600 601 601 Ex2: 0x0B49 = 2889mV 602 602 603 603 604 -==== 2.3.3.2 Temperature (DS18B20) ==== 605 605 606 - Ifthere is a DS18B20connectedto PC13 pin.Thetemperaturewill be uploaded in the payload.308 +==== (% style="color:#4472c4" %)**Temperature**(%%) ==== 607 607 608 -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]] 609 - 610 -**Connection:** 611 - 612 -[[image:image-20230512180718-8.png||height="538" width="647"]] 613 - 614 614 **Example**: 615 615 616 616 If payload is: 0105H: (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree ... ... @@ -620,211 +620,195 @@ 620 620 (FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative) 621 621 622 622 623 -==== 2.3.3.3DigitalInput ====319 +==== (% style="color:#4472c4" %)**Humidity**(%%) ==== 624 624 625 -The digital input for pin PB15, 626 626 627 -* When PB15 is high, the bit 1 of payload byte 6 is 1. 628 -* 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% 629 629 630 -(% class="wikigeneratedid" id="H2.3.3.4A0AnalogueDigitalConverter28ADC29" %) 631 -((( 632 -When the digital interrupt pin is set to AT+INTMODx=0, this pin is used as a digital input pin. 633 633 634 -(% style="color:red" %)**Note:**The maximum voltage input supports 3.6V. 635 -))) 325 +==== (% style="color:#4472c4" %)**Alarm Flag& MOD**(%%) ==== 636 636 637 -==== 2.3.3.4 Analogue Digital Converter (ADC) ==== 638 638 639 - The measuring range of the ADC is only about 0V to 1.1V Thevoltage resolution is about 0.24mv.328 +**Example:** 640 640 641 - When the measured output voltage ofthe sensor is not within the range of 0V and 1.1V, the output voltage terminalf the sensor shall bedividedTheexampleinthefollowingfigure is to reduce the output voltage of the sensor by three timesIfit isnecessaryto reduce more times, calculate according to the formulain thefigure and connect the corresponding resistancein series.330 +If payload & 0x01 = 0x01 **~-~->** This is an Alarm Message 642 642 643 - [[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"]]332 +If payload & 0x01 = 0x00 **~-~->** This is a normal uplink message, no alarm 644 644 645 - (% style="color:red" %)**Note:**Ifthe ADC type sensor needstobepoweredby SN50_v3,itisrecommended to use+5Vto controlitsswitch.Onlysensorswithlow power consumptioncanbepowered with VDD.334 +If payload >> 2 = 0x00 **~-~->** means MOD=1, This is a sampling uplink message 646 646 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. 647 647 648 -==== 2.3.3.5 Digital Interrupt ==== 649 649 650 - DigitalInterruptrefers to pinPA8,and therearedifferenttrigger methods. When thereis a trigger, the SN50v3 will senda packet to the server.339 +== 2.4 Payload Decoder file == 651 651 652 -(% style="color:blue" %)**~ Interrupt connection method:** 653 653 654 - [[image:image-20230513105351-5.png||height="147"width="485"]]342 +In TTN, use can add a custom payload so it shows friendly reading 655 655 656 -(% style="color: blue" %)**Exampletousewithdoorsensor :**344 +In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from: 657 657 658 - The doorsensoris shown atright. Itis a twowire magneticcontactswitchsed fordetectingtheopen/closestatus ofdoors orwindows.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]] 659 659 660 -[[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"]] 661 661 662 - Whenthetwo piecesare closeto each other, the 2 wire output will be short or open (dependingon thetype), while if the two piecesare away from each other, the 2 wire output will be the opposite status. So we can use SN50_v3 interrupt interfaceto detect the status for the door or window.349 +== 2.5 Datalog Feature == 663 663 664 -(% style="color:blue" %)**~ Below is the installation example:** 665 665 666 -Fi xonepiece ofthemagneticsensortothedoorandconnectthetwo pinstoSN50_v3asfollows: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. 667 667 668 -* ((( 669 -One pin to SN50_v3's PA8 pin 670 -))) 671 -* ((( 672 -The other pin to SN50_v3's VDD pin 673 -))) 674 674 675 - Installthe other piece to the door.Findaplace where the two pieceswill be closeto each otherwhen thedoor is closed. For this particular magnetic sensor, when the door is closed,the output willbe short,and PA8will be at the VCC voltage.355 +=== 2.5.1 Ways to get datalog via LoRaWAN === 676 676 677 -Door sensors have two types: ** NC (Normal close)** and **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. 678 678 679 - Whendoorsensor isshorted,therewillextrapower consumptionin thecircuit, the extracurrent is3v3/R14=3v3/1Mohm= 3uA whichcanbeignored.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. 680 680 681 -[[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"]] 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. 682 682 683 - Theabovephotosshowsthe twopartsof themagneticswitchfittedtoa door.363 +Below is the typical case for the auto-update datalog feature (Set PNACKMD=1) 684 684 685 - The softwareby defaultusesthe falling edge on the signal lineasaninterrupt.Weneedtomodify it toccept both theisingedge (0v ~-~-> VCC ,doorclose)andfallingdge (VCC ~-~->0v , door open)as the interrupt.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"]] 686 686 687 - Thecommandis:367 +=== 2.5.2 Unix TimeStamp === 688 688 689 -(% style="color:blue" %)**AT+INTMOD1=1 ** (%%) ~/~/(more info about INMOD please refer** **[[**AT Command Manual**>>url:http://www.dragino.com/downloads/index.php?dir=LSN50-LoRaST/&file=DRAGINO_LSN50_AT_Commands_v1.5.1.pdf]]**. **) 690 690 691 -B elowshowssomescreen capturesinTTN V3:370 +S31x-LB uses Unix TimeStamp format based on 692 692 693 -[[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/1656379339508-835.png?rev=1.1||alt="1656379339508-835.png"]]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"]] 694 694 695 - In MOD=1, user canusebyte6toseethestatusfordooropen orlose.TTN V3 decoderis as below:374 +User can get this time from link: [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] : 696 696 697 - door= (bytes[6]& 0x80)? "CLOSE":"OPEN";376 +Below is the converter example 698 698 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"]] 699 699 700 -= ===2.3.3.6I2CInterface(SHT20&SHT31)====380 +So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25 701 701 702 -The SDA and SCK are I2C interface lines. You can use these to connect to an I2C device and get the sensor data. 703 703 704 - Wehavemadean exampletoshow how to usethe I2Cinterfaceto connect to the SHT20/ SHT31 Temperatureand Humidity Sensor.383 +=== 2.5.3 Set Device Time === 705 705 706 -Notice: Different I2C sensors have different I2C commands set and initiate process, if user want to use other I2C sensors, User need to re-write the source code to support those sensors. SHT20/ SHT31 code in SN50_v3 will be a good reference. 707 707 708 - Belowis thennectiontoSHT20/ SHT31.The connectionisasbelow:386 +User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command. 709 709 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). 710 710 711 - [[image:image-20230513103633-3.png||height="448"width="716"]]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.** 712 712 713 -The device will be able to get the I2C sensor data now and upload to IoT Server. 714 714 715 - [[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"]]393 +=== 2.5.4 Datalog Uplink payload (FPORT~=3) === 716 716 717 -Convert the read byte to decimal and divide it by ten. 718 718 719 - **Example:**396 +The Datalog uplinks will use below payload format. 720 720 721 - Temperature: Read:0116(H)= 278(D) Value:278 /10=27.8℃;398 +**Retrieval data payload:** 722 722 723 -Humidity: Read:0248(H)=584(D) Value: 584 / 10=58.4, So 58.4% 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"]] 724 724 725 - If youwant to useother I2C device, pleaserefer the SHT20 partsourcecode as reference.408 +**Poll message flag & Ext:** 726 726 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"]] 727 727 728 - ====2.3.3.7DistanceReading ====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) 729 729 730 - 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]].414 +**Poll Message Flag**: 1: This message is a poll message reply. 731 731 416 +* Poll Message Flag is set to 1. 732 732 733 - ====2.3.3.8UltrasonicSensor====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. 734 734 735 - ThisFundamental Principlesof this sensorcanbe foundatthislink: [[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]]420 +For example, in US915 band, the max payload for different DR is: 736 736 737 - TheSN50_v3detectsthepulse width of theensorand convertsit tommoutput. The accuracy will be within1 centimeter.Theusable range (the distance between the ultrasonicprobeandthe measured object) is between 24cmand 600cm.422 +**a) DR0:** max is 11 bytes so one entry of data 738 738 739 - Theworkingprincipleofthis sensorissimilarto the**HC-SR04**ultrasonicsensor.424 +**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes) 740 740 741 - The picturebelowshowstheconnection:426 +**c) DR2:** total payload includes 11 entries of data 742 742 743 - [[image:image-20230512173903-6.png||height="596" width="715"]]428 +**d) DR3: **total payload includes 22 entries of data. 744 744 745 - ConnecttoSN50_v3andrun**AT+MOD=2**toswitchtoultrasonicmode(ULT).430 +If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0 746 746 747 -The ultrasonic sensor uses the 8^^th^^ and 9^^th^^ byte for the measurement value. 748 748 749 749 **Example:** 750 750 751 - Distance:Read: 0C2D(Hex) =3117(D)Value:3117mm=311.7cm435 +If S31x-LB has below data inside Flash: 752 752 437 +[[image:1682646494051-944.png]] 753 753 439 +If user sends below downlink command: 3160065F9760066DA705 754 754 755 - ====2.3.3.9BatteryOutput-BAT pin====441 +Where : Start time: 60065F97 = time 21/1/19 04:27:03 756 756 757 - 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 758 758 759 759 760 - ==== 2.3.3.10+5VOutput====446 +**S31x-LB will uplink this payload.** 761 761 762 - 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"]] 763 763 764 -The 5V output time can be controlled by AT Command. 450 +((( 451 +__**7FFF089801464160065F97**__ **__7FFF__ __088E__ __014B__ __41__ __60066009__** 7FFF0885014E41600660667FFF0875015141600662BE7FFF086B015541600665167FFF08660155416006676E7FFF085F015A41600669C67FFF0857015D4160066C1E 452 +))) 765 765 766 -(% style="color:blue" %)**AT+5VT=1000** 454 +((( 455 +Where the first 11 bytes is for the first entry: 456 +))) 767 767 768 -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 +))) 769 769 770 -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 +))) 771 771 466 +((( 467 +**Temp**=0x088E/100=22.00 468 +))) 772 772 470 +((( 471 +**Hum**=0x014B/10=32.6 472 +))) 773 773 774 -==== 2.3.3.11 BH1750 Illumination Sensor ==== 474 +((( 475 +**poll message flag & Ext**=0x41,means reply data,Ext=1 476 +))) 775 775 776 -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 +))) 777 777 778 -[[image:image-20230512172447-4.png||height="416" width="712"]] 779 779 780 - [[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="单击并拖动以调整大小" %)的 781 781 485 +== 2.6 Temperature Alarm Feature == 782 782 783 -==== 2.3.3.12 Working MOD ==== 784 784 785 - TheworkingMOD info is contained in theDigitalin & Digital Interruptbyte(7^^th^^ Byte).488 +S31x-LB work flow with Alarm feature. 786 786 787 -User can use the 3^^rd^^ ~~ 7^^th^^ bit of this byte to see the working mod: 788 788 789 - 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"]] 790 790 791 -* 0: MOD1 792 -* 1: MOD2 793 -* 2: MOD3 794 -* 3: MOD4 795 -* 4: MOD5 796 -* 5: MOD6 797 -* 6: MOD7 798 -* 7: MOD8 799 -* 8: MOD9 800 800 494 +== 2.7 Frequency Plans == 801 801 802 802 803 - ==2.4PayloadDecoder file==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. 804 804 805 - 806 -In TTN, use can add a custom payload so it shows friendly reading 807 - 808 -In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from: 809 - 810 -[[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]] 811 - 812 - 813 - 814 -== 2.5 Frequency Plans == 815 - 816 - 817 -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. 818 - 819 819 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]] 820 820 821 821 822 -= 3. Configure S N50v3-LB =502 += 3. Configure S31x-LB = 823 823 824 824 == 3.1 Configure Methods == 825 825 826 826 827 -S N50v3-LB supports below configure method:507 +S31x-LB supports below configure method: 828 828 829 829 * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]]. 830 830 * 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]]. ... ... @@ -843,7 +843,7 @@ 843 843 [[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/]] 844 844 845 845 846 -== 3.3 Commands special design for S N50v3-LB ==526 +== 3.3 Commands special design for S31x-LB == 847 847 848 848 849 849 These commands only valid for S31x-LB, as below: ... ... @@ -851,6 +851,7 @@ 851 851 852 852 === 3.3.1 Set Transmit Interval Time === 853 853 534 + 854 854 Feature: Change LoRaWAN End Node Transmit Interval. 855 855 856 856 (% style="color:blue" %)**AT Command: AT+TDC** ... ... @@ -876,165 +876,118 @@ 876 876 * Example 1: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds 877 877 * Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 878 878 879 - 880 - 881 881 === 3.3.2 Get Device Status === 882 882 883 -Send a LoRaWAN downlink to ask the device to send its status. 884 884 563 +Send a LoRaWAN downlink to ask device send Alarm settings. 564 + 885 885 (% style="color:blue" %)**Downlink Payload: **(%%)0x26 01 886 886 887 887 Sensor will upload Device Status via FPORT=5. See payload section for detail. 888 888 889 889 890 -=== 3.3.3 Set InterruptMode===570 +=== 3.3.3 Set Temperature Alarm Threshold === 891 891 892 - Feature,SetInterrupt modefor GPIO_EXIT.572 +* (% style="color:blue" %)**AT Command:** 893 893 894 -(% style="color: blue" %)**ATCommand: AT+INTMOD1,AT+INTMOD2,AT+INTMOD3**574 +(% style="color:#037691" %)**AT+SHTEMP=min,max** 895 895 896 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 897 -|=(% style="width: 154px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 196px;background-color:#D9E2F3" %)**Function**|=(% style="width: 157px;background-color:#D9E2F3" %)**Response** 898 -|(% style="width:154px" %)AT+INTMOD1=?|(% style="width:196px" %)Show current interrupt mode|(% style="width:157px" %)((( 899 -0 900 -OK 901 -the mode is 0 =Disable Interrupt 902 -))) 903 -|(% style="width:154px" %)AT+INTMOD1=2|(% style="width:196px" %)((( 904 -Set Transmit Interval 905 -0. (Disable Interrupt), 906 -~1. (Trigger by rising and falling edge) 907 -2. (Trigger by falling edge) 908 -3. (Trigger by rising edge) 909 -)))|(% style="width:157px" %)OK 910 -|(% style="width:154px" %)AT+INTMOD2=3|(% style="width:196px" %)((( 911 -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 912 912 913 -trigger by rising edge. 914 -)))|(% style="width:157px" %)OK 915 -|(% style="width:154px" %)AT+INTMOD3=0|(% style="width:196px" %)Disable Interrupt|(% style="width:157px" %)OK 580 +Example: 916 916 917 - (%style="color:blue"%)**DownlinkCommand:0x06**582 + AT+SHTEMP=0,30 ~/~/ Alarm when temperature higher than 30. 918 918 919 - Format:CommandCode(0x06)followedby 3 bytes.584 +* (% style="color:blue" %)**Downlink Payload:** 920 920 921 - 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 922 922 923 -* Example 1: Downlink Payload: 06000000 **~-~-->** AT+INTMOD1=0 924 -* Example 2: Downlink Payload: 06000003 **~-~-->** AT+INTMOD1=3 925 -* Example 3: Downlink Payload: 06000102 **~-~-->** AT+INTMOD2=2 926 -* 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)** 927 927 928 928 591 +=== 3.3.4 Set Humidity Alarm Threshold === 929 929 930 - ===3.3.4SetPowerOutputDuration===593 +* (% style="color:blue" %)**AT Command:** 931 931 932 - Controltheutput duration 5V . Beforeeach sampling,device will595 +(% style="color:#037691" %)**AT+SHHUM=min,max** 933 933 934 -~1. first enable the power output to external sensor, 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 935 935 936 - 2. keep it onasper duration, read sensor valueand construct uplink payload601 +Example: 937 937 938 - 3.final,closethepoweroutput.603 + AT+SHHUM=70,0 ~/~/ Alarm when humidity lower than 70%. 939 939 940 -(% style="color:blue" %)** ATCommand:AT+5VT**605 +* (% style="color:blue" %)**Downlink Payload:** 941 941 942 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 943 -|=(% style="width: 154px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 196px;background-color:#D9E2F3" %)**Function**|=(% style="width: 157px;background-color:#D9E2F3" %)**Response** 944 -|(% style="width:154px" %)AT+5VT=?|(% style="width:196px" %)Show 5V open time.|(% style="width:157px" %)((( 945 -500(default) 946 -OK 947 -))) 948 -|(% style="width:154px" %)AT+5VT=1000|(% style="width:196px" %)((( 949 -Close after a delay of 1000 milliseconds. 950 -)))|(% style="width:157px" %)OK 607 +(% style="color:#037691" %)**0x(0C 02 46 00)**(%%) ~/~/ Set AT+SHTHUM=70,0 951 951 952 -(% 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))** 953 953 954 -Format: Command Code (0x07) followed by 2 bytes. 955 955 956 - Thefirstand second bytesare the timeto turnon.612 +=== 3.3.5 Set Alarm Interval === 957 957 958 -* Example 1: Downlink Payload: 070000 **~-~-->** AT+5VT=0 959 -* Example 2: Downlink Payload: 0701F4 **~-~-->** AT+5VT=500 614 +The shortest time of two Alarm packet. (unit: min) 960 960 616 +* (% style="color:blue" %)**AT Command:** 961 961 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. 962 962 963 - ===3.3.5SetWeighingparameters ===620 +* (% style="color:blue" %)**Downlink Payload:** 964 964 965 - Feature: Workingmode5iseffective,weightinitializationandweightfactorsetting of HX711.622 +(% style="color:#037691" %)**0x(0D 00 1E)**(%%) **~-~--> ** Set AT+ATDC=0x 00 1E = 30 minutes 966 966 967 -(% style="color:blue" %)**AT Command: AT+WEIGRE,AT+WEIGAP** 968 968 969 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 970 -|=(% style="width: 154px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 196px;background-color:#D9E2F3" %)**Function**|=(% style="width: 157px;background-color:#D9E2F3" %)**Response** 971 -|(% style="width:154px" %)AT+WEIGRE|(% style="width:196px" %)Weight is initialized to 0.|(% style="width:157px" %)OK 972 -|(% style="width:154px" %)AT+WEIGAP=?|(% style="width:196px" %)400.0|(% style="width:157px" %)OK(default) 973 -|(% style="width:154px" %)AT+WEIGAP=400.3|(% style="width:196px" %)Set the factor to 400.3.|(% style="width:157px" %)OK 625 +=== 3.3.6 Get Alarm settings === 974 974 975 -(% style="color:blue" %)**Downlink Command: 0x08** 976 976 977 - Format:CommandCode (0x08) followedby2 bytesor4 bytes.628 +Send a LoRaWAN downlink to ask device send Alarm settings. 978 978 979 - UseAT+WEIGREwhen the firstbyteis1,only 1 byte. Whenit is 2, use AT+WEIGAP, thereare3bytes.630 +* (% style="color:#037691" %)**Downlink Payload: **(%%)0x0E 01 980 980 981 - The secondand third bytes aremultiplied by 10 times to be the AT+WEIGAP value.632 +**Example:** 982 982 983 -* Example 1: Downlink Payload: 0801 **~-~-->** AT+WEIGRE 984 -* Example 2: Downlink Payload: 08020FA3 **~-~-->** AT+WEIGAP=400.3 985 -* Example 3: Downlink Payload: 08020FA0 **~-~-->** AT+WEIGAP=400.0 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"]] 986 986 987 987 637 +**Explain:** 988 988 989 -= ==3.3.6SetDigitalpulsecountvalue===639 +* Alarm & MOD bit is 0x7C, 0x7C >> 2 = 0x31: Means this message is the Alarm settings message. 990 990 991 - Feature:Set thepulse countvalue.641 +=== 3.3.7 Set Interrupt Mode === 992 992 993 -Count 1 is PA8 pin of mode 6 and mode 9. Count 2 is PA4 pin of mode 9. 994 994 995 - (%style="color:blue"%)**AT Command:AT+SETCNT**644 +Feature, Set Interrupt mode for GPIO_EXIT. 996 996 997 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 998 -|=(% style="width: 154px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 196px;background-color:#D9E2F3" %)**Function**|=(% style="width: 157px;background-color:#D9E2F3" %)**Response** 999 -|(% style="width:154px" %)AT+SETCNT=1,100|(% style="width:196px" %)Initialize the count value 1 to 100.|(% style="width:157px" %)OK 1000 -|(% style="width:154px" %)AT+SETCNT=2,0|(% style="width:196px" %)Initialize the count value 2 to 0.|(% style="width:157px" %)OK 646 +(% style="color:blue" %)**AT Command: AT+INTMOD** 1001 1001 1002 -(% style="color:blue" %)**Downlink Command: 0x09** 1003 - 1004 -Format: Command Code (0x09) followed by 5 bytes. 1005 - 1006 -The first byte is to select which count value to initialize, and the next four bytes are the count value to be initialized. 1007 - 1008 -* Example 1: Downlink Payload: 090100000000 **~-~-->** AT+SETCNT=1,0 1009 -* Example 2: Downlink Payload: 0902000003E8 **~-~-->** AT+SETCNT=2,1000 1010 - 1011 - 1012 - 1013 -=== 3.3.7 Set Workmode === 1014 - 1015 -Feature: Switch working mode. 1016 - 1017 -(% style="color:blue" %)**AT Command: AT+MOD** 1018 - 1019 1019 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 1020 1020 |=(% style="width: 154px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 196px;background-color:#D9E2F3" %)**Function**|=(% style="width: 157px;background-color:#D9E2F3" %)**Response** 1021 -|(% 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 1022 1022 OK 653 +the mode is 0 =Disable Interrupt 1023 1023 ))) 1024 -|(% style="width:154px" %)AT+MOD=4|(% style="width:196px" %)Set the working mode to 3DS18B20s.|(% style="width:157px" %)((( 1025 -OK 1026 -Attention:Take effect after ATZ 1027 -))) 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 1028 1028 1029 -(% style="color:blue" %)**Downlink Command: 0x0 A**663 +(% style="color:blue" %)**Downlink Command: 0x06** 1030 1030 1031 -Format: Command Code (0x0 A) followed by1bytes.665 +Format: Command Code (0x06) followed by 3 bytes. 1032 1032 1033 -* Example 1: Downlink Payload: 0A01 **~-~-->** AT+MOD=1 1034 -* Example 2: Downlink Payload: 0A04 **~-~-->** AT+MOD=4 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. 1035 1035 669 +* Example 1: Downlink Payload: 06000000 ~/~/ Turn off interrupt mode 670 +* Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger 1036 1036 1037 - 1038 1038 = 4. Battery & Power Consumption = 1039 1039 1040 1040 ... ... @@ -1063,10 +1063,7 @@ 1063 1063 1064 1064 = 6. FAQ = 1065 1065 1066 -== 6.1 Where can i find source code of SN50v3-LB? == 1067 1067 1068 -* **[[Hardware Source Files>>https://github.com/dragino/Lora/tree/master/LSN50/v3.0]].** 1069 -* **[[Software Source Code & Compile instruction>>https://github.com/dragino/SN50v3]].** 1070 1070 1071 1071 = 7. Order Info = 1072 1072 ... ... @@ -1108,5 +1108,4 @@ 1108 1108 1109 1109 1110 1110 * 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. 1111 - 1112 -* 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]] 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