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 (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -288,6 +288,7 @@ 288 288 1. All modes share the same Payload Explanation from HERE. 289 289 1. By default, the device will send an uplink message every 20 minutes. 290 290 291 + 291 291 ==== 2.3.2.1 MOD~=1 (Default Mode) ==== 292 292 293 293 In this mode, uplink payload includes in total 11 bytes. Uplink packets use FPORT=2. ... ... @@ -394,6 +394,8 @@ 394 394 395 395 [[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"]] 396 396 398 +(% class="wikigeneratedid" %) 399 +=== === 397 397 398 398 ==== 2.3.2.5 MOD~=5(Weight Measurement by HX711) ==== 399 399 ... ... @@ -425,6 +425,8 @@ 425 425 426 426 [[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"]] 427 427 431 +(% class="wikigeneratedid" %) 432 +=== === 428 428 429 429 ==== 2.3.2.6 MOD~=6 (Counting Mode) ==== 430 430 ... ... @@ -455,6 +455,7 @@ 455 455 Digital in(PA12)&Digital Interrupt1(PB14) 456 456 )))|Digital Interrupt2(PB15)|Digital Interrupt3(PA4)|Reserved 457 457 463 + 458 458 ==== 2.3.2.8 MOD~=8 (3ADC+1DS18B20) ==== 459 459 460 460 |=((( ... ... @@ -473,6 +473,8 @@ 473 473 474 474 [[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-20220823164903-2.png?rev=1.1||alt="image-20220823164903-2.png"]] 475 475 482 +(% class="wikigeneratedid" %) 483 +=== === 476 476 477 477 ==== 2.3.2.9 MOD~=9 (3DS18B20+ two Interrupt count mode) ==== 478 478 ... ... @@ -510,10 +510,8 @@ 510 510 511 511 When AA is 2, set the count of PB15 pin to BB Corresponding downlink:09 02 bb bb bb bb 512 512 521 +=== 2.3.10 Decode payload in The Things Network === 513 513 514 - 515 -=== 2.3.3 Decode payload === 516 - 517 517 While using TTN V3 network, you can add the payload format to decode the payload. 518 518 519 519 [[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"]] ... ... @@ -520,28 +520,39 @@ 520 520 521 521 The payload decoder function for TTN V3 are here: 522 522 523 -SN50 v3TTN V3 Payload Decoder: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>url:https://github.com/dragino/dragino-end-node-decoder]]529 +LSN50 TTN V3 Payload Decoder: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>url:https://github.com/dragino/dragino-end-node-decoder]] 524 524 525 525 526 - ====2.3.3.1 BatteryInfo====532 +Sensor Data is uplink via FPORT=2 527 527 528 -Check the battery voltage for SN50v3. 534 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %) 535 +|=(% style="width: 90px;background-color:#D9E2F3" %)((( 536 +**Size(bytes)** 537 +)))|=(% 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 538 +|(% style="width:99px" %)**Value**|(% style="width:69px" %)((( 539 +[[Battery>>||anchor="HBattery:"]] 540 +)))|(% style="width:130px" %)((( 541 +[[Unix TimeStamp>>||anchor="H2.5.2UnixTimeStamp"]] 542 +)))|(% style="width:91px" %)((( 543 +[[Alarm Flag>>||anchor="HAlarmFlag26MOD:"]] 544 +)))|(% style="width:103px" %)((( 545 +[[Temperature>>||anchor="HTemperature:"]] 546 +)))|(% style="width:80px" %)((( 547 +[[Humidity>>||anchor="HHumidity:"]] 548 +))) 529 529 550 +==== (% style="color:#4472c4" %)**Battery**(%%) ==== 551 + 552 +Sensor Battery Level. 553 + 530 530 Ex1: 0x0B45 = 2885mV 531 531 532 532 Ex2: 0x0B49 = 2889mV 533 533 534 534 535 -==== 2.3.3.2 Temperature (DS18B20) ==== 536 536 537 - Ifthere is a DS18B20connectedto PB3 pin.Thetemperaturewill be uploaded in the payload.560 +==== (% style="color:#4472c4" %)**Temperature**(%%) ==== 538 538 539 -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]] 540 - 541 -**Connection:** 542 - 543 -[[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/1656378573379-646.png?rev=1.1||alt="1656378573379-646.png"]] 544 - 545 545 **Example**: 546 546 547 547 If payload is: 0105H: (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree ... ... @@ -551,247 +551,195 @@ 551 551 (FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative) 552 552 553 553 554 -==== 2.3.3.3DigitalInput ====571 +==== (% style="color:#4472c4" %)**Humidity**(%%) ==== 555 555 556 -The digital input for pin PA12, 557 557 558 -* When PA12 is high, the bit 1 of payload byte 6 is 1. 559 -* When PA12 is low, the bit 1 of payload byte 6 is 0. 574 +Read:0x(0197)=412 Value: 412 / 10=41.2, So 41.2% 560 560 561 -==== 2.3.3.4 Analogue Digital Converter (ADC) ==== 562 562 563 - TheADCpinsin LSN50 can measure range from 0~~Vbat, it usereference voltage from . If userneed to measure a voltage > VBat, please useresistorsto divide this voltageto lower than VBat, otherwise, it may destroy the ADCpin.577 +==== (% style="color:#4472c4" %)**Alarm Flag& MOD**(%%) ==== 564 564 565 -Note: minimum VBat is 2.5v, when batrrey lower than this value. Device won't be able to send LoRa Uplink. 566 566 567 - The ADCmonitors the voltageon the PA0 line, in mV.580 +**Example:** 568 568 569 - Ex:0x021F=543mv,582 +If payload & 0x01 = 0x01 **~-~->** This is an Alarm Message 570 570 571 - **~Example1:**ReadinganOil Sensor(Readaresistancevalue):584 +If payload & 0x01 = 0x00 **~-~->** This is a normal uplink message, no alarm 572 572 586 +If payload >> 2 = 0x00 **~-~->** means MOD=1, This is a sampling uplink message 573 573 574 - [[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-20220627172409-28.png?rev=1.1||alt="image-20220627172409-28.png"]]588 +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. 575 575 576 -In the LSN50, we can use PB4 and PA0 pin to calculate the resistance for the oil sensor. 577 - 578 578 579 - **Steps:**591 +== 2.4 Payload Decoder file == 580 580 581 -1. Solder a 10K resistor between PA0 and VCC. 582 -1. Screw oil sensor's two pins to PA0 and PB4. 583 583 584 -T heequipmentcircuitisasbelow:594 +In TTN, use can add a custom payload so it shows friendly reading 585 585 586 - [[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-20220627172500-29.png?rev=1.1||alt="image-20220627172500-29.png"]]596 +In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from: 587 587 588 - According tobove:598 +[[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]] 589 589 590 -[[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-20220628091043-4.png?rev=1.1||alt="image-20220628091043-4.png"]] 591 591 592 - So601 +== 2.5 Datalog Feature == 593 593 594 -[[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-20220628091344-6.png?rev=1.1||alt="image-20220628091344-6.png"]] 595 595 596 - [[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-20220628091621-8.png?rev=1.1||alt="image-20220628091621-8.png"]]ofADC. SoifADC=0x05DC=0.9vandVCC (BAT) is2.9v604 +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. 597 597 598 -The [[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-20220628091702-9.png?rev=1.1||alt="image-20220628091702-9.png"]] 4.5K ohm 599 599 600 - SincetheBouyislinearresistancefrom10 ~~ 70cm.607 +=== 2.5.1 Ways to get datalog via LoRaWAN === 601 601 602 -The position of Bouy is [[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-20220628091824-10.png?rev=1.1||alt="image-20220628091824-10.png"]] , from the bottom of Bouy. 603 603 610 +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. 604 604 605 -==== 2.3.3.5 Digital Interrupt ==== 612 +* a) S31x-LB will do an ACK check for data records sending to make sure every data arrive server. 613 +* 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. 606 606 607 - DigitalInterrupt refers topin PB14,andtherearedifferenttriggermethods. Whenthereisarigger,the SN50v3 will send a packetto the server.615 +Below is the typical case for the auto-update datalog feature (Set PNACKMD=1) 608 608 609 - **~ Interruptctionod:**617 +[[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"]] 610 610 611 - [[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/1656379178634-321.png?rev=1.1||alt="1656379178634-321.png"]]619 +=== 2.5.2 Unix TimeStamp === 612 612 613 -**Example to use with door sensor :** 614 614 615 - Thedoorsensoris shownat right.Itis a two wiremagnetic contactswitch usedfordetectingthe open/close statusofdoorsor windows.622 +S31x-LB uses Unix TimeStamp format based on 616 616 617 -[[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/1656379210849-860.png?rev=1.1||alt="1656379210849-860.png"]]624 +[[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"]] 618 618 619 - Whenthe two piecesarecloseoeach other, the 2 wireoutput will beshortoropen (dependingon thetype), while ifthe twopiecesare away fromeachther,the2 wireoutput will be the opposite status. Sowecan use LSN50 interrupt interface todetect the status forhedoorrwindow.626 +User can get this time from link: [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] : 620 620 621 - **~Below is theinstallation example:**628 +Below is the converter example 622 622 623 - Fix oneeceof themagneticsensortothedoorndconnectthewopinstoLSN50 as follows:630 +[[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"]] 624 624 625 -* ((( 626 -One pin to LSN50's PB14 pin 627 -))) 628 -* ((( 629 -The other pin to LSN50's VCC pin 630 -))) 632 +So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25 631 631 632 -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 PB14 will be at the VCC voltage. 633 633 634 - Doorsensorshavewotypes: ** NC (Normalclose)**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.635 +=== 2.5.3 Set Device Time === 635 635 636 -When door sensor is shorted, there will extra power consumption in the circuit, the extra current is 3v3/R14 = 3v2/1Mohm = 0.3uA which can be ignored. 637 637 638 - [[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"]]638 +User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command. 639 639 640 - Theabovephotosshows thetwoparts ofthe magneticswitchfitted toadoor.640 +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). 641 641 642 - Thesoftware bydefault usesthefallingedgeon thesignallineasaninterrupt.Weneedtoodifyittoacceptboththerisingedge(0v~-~->VCC,doorclose)and thefallingedge(VCC~-~->0v,door open)asthe interrupt.642 +(% 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.** 643 643 644 -The command is: 645 645 646 - **AT+INTMOD=1**~/~/(moreinfoaboutINMOD please refer** **[[**AT CommandManual**>>url:http://www.dragino.com/downloads/index.php?dir=LSN50-LoRaST/&file=DRAGINO_LSN50_AT_Commands_v1.5.1.pdf]]**.**)645 +=== 2.5.4 Datalog Uplink payload (FPORT~=3) === 647 647 648 -Below shows some screen captures in TTN V3: 649 649 650 - [[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"]]648 +The Datalog uplinks will use below payload format. 651 651 652 - In MOD=1, user can use byte 6 to see the status fordoor open or close.TTN V3decoder isasbelow:650 +**Retrieval data payload:** 653 653 654 -door= (bytes[6] & 0x80)? "CLOSE":"OPEN"; 652 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %) 653 +|=(% style="width: 80px;background-color:#D9E2F3" %)((( 654 +**Size(bytes)** 655 +)))|=(% 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** 656 +|(% style="width:103px" %)**Value**|(% style="width:54px" %)((( 657 +[[Temp_Black>>||anchor="HTemperatureBlack:"]] 658 +)))|(% 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"]] 655 655 656 -** Notice for hardwareversionLSN50 v1 < v1.3**(produced before 2018-Nov).660 +**Poll message flag & Ext:** 657 657 658 - In this hardwareversion, thereisnoR14 resistance solder. Whense the latestfirmware, it shouldset AT+INTMOD=0toclosetheinterrupt. Ifuserneedo useInterrupt in thishardware version,user need tosolder R14with10M resistornd C1(0.1uF) onboard.662 +[[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"]] 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/1656379563303-771.png?rev=1.1||alt="1656379563303-771.png"]]664 +**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) 661 661 666 +**Poll Message Flag**: 1: This message is a poll message reply. 662 662 663 - ====2.3.3.6I2C Interface(SHT20)====668 +* Poll Message Flag is set to 1. 664 664 665 - ThePB6(SDA)andPB7(SCK)areI2C interfacelines.Youcan usethesetoconnecttoanI2Cdeviceandget thesensordata.670 +* Each data entry is 11 bytes, to save airtime and battery, devices will send max bytes according to the current DR and Frequency bands. 666 666 667 - Wehavemade an exampleto show how to use the I2Cinterfacetoconnectto theSHT20 Temperatureand HumiditySensor.This is supportedin the stockfirmwaresince v1.5 with**AT+MOD=1(default value).**672 +For example, in US915 band, the max payload for different DR is: 668 668 669 - Notice:Different I2C sensors havedifferent I2C commandssetand initiateprocess,if user want touseother I2C sensors, Userneedtore-writethe sourcecodeto support those sensors. SHT20 code in LSN50 will beagood reference.674 +**a) DR0:** max is 11 bytes so one entry of data 670 670 671 - Belowis theconnectiontoSHT20/SHT31. Theconnectionisasbelow:676 +**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes) 672 672 673 - [[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-20220902163605-2.png?rev=1.1||alt="image-20220902163605-2.png"]]678 +**c) DR2:** total payload includes 11 entries of data 674 674 675 - Thedevicewillbeabletogetthe I2Csensordata nowanduploadto IoT Server.680 +**d) DR3: **total payload includes 22 entries of data. 676 676 677 - [[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"]]682 +If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0 678 678 679 -Convert the read byte to decimal and divide it by ten. 680 680 681 681 **Example:** 682 682 683 - Temperature:Read:0116(H)=278(D)Value:278 /10=27.8℃;687 +If S31x-LB has below data inside Flash: 684 684 685 - Humidity: Read:0248(H)=584(D) Value: 584/ 10=58.4, So 58.4%689 +[[image:1682646494051-944.png]] 686 686 687 -If youwant to useotherI2C device, pleasereferthe SHT20 part sourcecodeasreference.691 +If user sends below downlink command: 3160065F9760066DA705 688 688 693 +Where : Start time: 60065F97 = time 21/1/19 04:27:03 689 689 690 - ====2.3.3.7DistanceReading====695 + Stop time: 60066DA7= time 21/1/19 05:27:03 691 691 692 -Refer [[Ultrasonic Sensor section>>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]]. 693 693 698 +**S31x-LB will uplink this payload.** 694 694 695 - ==== 2.3.3.8UltrasonicSensor700 +[[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"]] 696 696 697 -The LSN50 v1.5 firmware supports ultrasonic sensor (with AT+MOD=2) such as SEN0208 from DF-Robot. This Fundamental Principles of this sensor can be found at this link: [[https:~~/~~/wiki.dfrobot.com/Weather_-_proof_Ultrasonic_Sensor_with_Separate_Probe_SKU~~_~~__SEN0208>>url:https://wiki.dfrobot.com/Weather_-_proof_Ultrasonic_Sensor_with_Separate_Probe_SKU___SEN0208]] 702 +((( 703 +__**7FFF089801464160065F97**__ **__7FFF__ __088E__ __014B__ __41__ __60066009__** 7FFF0885014E41600660667FFF0875015141600662BE7FFF086B015541600665167FFF08660155416006676E7FFF085F015A41600669C67FFF0857015D4160066C1E 704 +))) 698 698 699 -The LSN50 detects the pulse width of the sensor and converts it to mm output. The accuracy will be within 1 centimeter. The usable range (the distance between the ultrasonic probe and the measured object) is between 24cm and 600cm. 706 +((( 707 +Where the first 11 bytes is for the first entry: 708 +))) 700 700 701 -The picture below shows the connection: 710 +((( 711 +7FFF089801464160065F97 712 +))) 702 702 703 -[[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/1656380061365-178.png?rev=1.1||alt="1656380061365-178.png"]] 714 +((( 715 +**Ext sensor data**=0x7FFF/100=327.67 716 +))) 704 704 705 -Connect to the LSN50 and run **AT+MOD=2** to switch to ultrasonic mode (ULT). 718 +((( 719 +**Temp**=0x088E/100=22.00 720 +))) 706 706 707 -The ultrasonic sensor uses the 8^^th^^ and 9^^th^^ byte for the measurement value. 722 +((( 723 +**Hum**=0x014B/10=32.6 724 +))) 708 708 709 -**Example:** 726 +((( 727 +**poll message flag & Ext**=0x41,means reply data,Ext=1 728 +))) 710 710 711 -Distance: Read: 0C2D(Hex) = 3117(D) Value: 3117 mm=311.7 cm 730 +((( 731 +**Unix time** is 0x60066009=1611030423s=21/1/19 04:27:03 732 +))) 712 712 713 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/1656384895430-327.png?rev=1.1||alt="1656384895430-327.png"]] 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/1656384913616-455.png?rev=1.1||alt="1656384913616-455.png"]]735 +(% 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="单击并拖动以调整大小" %)的 716 716 717 - Youcanseethe serial output in ULT mode asbelow:737 +== 2.6 Temperature Alarm Feature == 718 718 719 -[[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/1656384939855-223.png?rev=1.1||alt="1656384939855-223.png"]] 720 720 721 - **InTTNV3server:**740 +S31x-LB work flow with Alarm feature. 722 722 723 -[[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/1656384961830-307.png?rev=1.1||alt="1656384961830-307.png"]] 724 724 725 -[[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/1656384973646-598.png?rev=1.1||alt="1656384973646-598.png"]]743 +[[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"]] 726 726 727 -==== 2.3.3.9 Battery Output - BAT pin ==== 728 728 729 - TheBAT pin of SN50v3 is connected to the Battery directly.If users want to useBAT pin to power an external sensor. User need to make surethe external sensor is of low powerconsumption. Because the BAT pin is alwaysopen. If the externalsensor is of high power consumption. the battery of SN50v3-LB will runout verysoon.746 +== 2.7 Frequency Plans == 730 730 731 731 732 - ====2.3.3.10+5VOutput====749 +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. 733 733 734 -SN50v3 will enable +5V output before all sampling and disable the +5v after all sampling. 735 - 736 -The 5V output time can be controlled by AT Command. 737 - 738 -**AT+5VT=1000** 739 - 740 -Means set 5V valid time to have 1000ms. So the real 5V output will actually have 1000ms + sampling time for other sensors. 741 - 742 -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. 743 - 744 - 745 - 746 -==== 2.3.3.11 BH1750 Illumination Sensor ==== 747 - 748 -MOD=1 support this sensor. The sensor value is in the 8^^th^^ and 9^^th^^ bytes. 749 - 750 -[[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-11.jpeg?rev=1.1||alt="image-20220628110012-11.jpeg"]] 751 - 752 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/image-20220628110012-12.png?rev=1.1||alt="image-20220628110012-12.png"]] 753 - 754 - 755 -==== 2.3.3.12 Working MOD ==== 756 - 757 -The working MOD info is contained in the Digital in & Digital Interrupt byte (7^^th^^ Byte). 758 - 759 -User can use the 3^^rd^^ ~~ 7^^th^^ bit of this byte to see the working mod: 760 - 761 -Case 7^^th^^ Byte >> 2 & 0x1f: 762 - 763 -* 0: MOD1 764 -* 1: MOD2 765 -* 2: MOD3 766 -* 3: MOD4 767 -* 4: MOD5 768 -* 5: MOD6 769 - 770 -== 2.4 Payload Decoder file == 771 - 772 - 773 -In TTN, use can add a custom payload so it shows friendly reading 774 - 775 -In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from: 776 - 777 -[[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]] 778 - 779 - 780 - 781 -== 2.5 Frequency Plans == 782 - 783 - 784 -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. 785 - 786 786 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]] 787 787 788 788 789 -= 3. Configure S N50v3-LB =754 += 3. Configure S31x-LB = 790 790 791 791 == 3.1 Configure Methods == 792 792 793 793 794 -S N50v3-LB supports below configure method:759 +S31x-LB supports below configure method: 795 795 796 796 * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]]. 797 797 * 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]]. ... ... @@ -810,7 +810,7 @@ 810 810 [[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/]] 811 811 812 812 813 -== 3.3 Commands special design for S N50v3-LB ==778 +== 3.3 Commands special design for S31x-LB == 814 814 815 815 816 816 These commands only valid for S31x-LB, as below: ... ... @@ -844,9 +844,9 @@ 844 844 * Example 1: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds 845 845 * Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 846 846 847 - 848 848 === 3.3.2 Get Device Status === 849 849 814 + 850 850 Send a LoRaWAN downlink to ask device send Alarm settings. 851 851 852 852 (% style="color:blue" %)**Downlink Payload: **(%%)0x26 01 ... ... @@ -854,6 +854,77 @@ 854 854 Sensor will upload Device Status via FPORT=5. See payload section for detail. 855 855 856 856 822 +=== 3.3.3 Set Temperature Alarm Threshold === 823 + 824 +* (% style="color:blue" %)**AT Command:** 825 + 826 +(% style="color:#037691" %)**AT+SHTEMP=min,max** 827 + 828 +* When min=0, and max≠0, Alarm higher than max 829 +* When min≠0, and max=0, Alarm lower than min 830 +* When min≠0 and max≠0, Alarm higher than max or lower than min 831 + 832 +Example: 833 + 834 + AT+SHTEMP=0,30 ~/~/ Alarm when temperature higher than 30. 835 + 836 +* (% style="color:blue" %)**Downlink Payload:** 837 + 838 +(% style="color:#037691" %)**0x(0C 01 00 1E)** (%%) ~/~/ Set AT+SHTEMP=0,30 839 + 840 +(% style="color:red" %)**(note: 3^^rd^^ byte= 0x00 for low limit(not set), 4^^th^^ byte = 0x1E for high limit: 30)** 841 + 842 + 843 +=== 3.3.4 Set Humidity Alarm Threshold === 844 + 845 +* (% style="color:blue" %)**AT Command:** 846 + 847 +(% style="color:#037691" %)**AT+SHHUM=min,max** 848 + 849 +* When min=0, and max≠0, Alarm higher than max 850 +* When min≠0, and max=0, Alarm lower than min 851 +* When min≠0 and max≠0, Alarm higher than max or lower than min 852 + 853 +Example: 854 + 855 + AT+SHHUM=70,0 ~/~/ Alarm when humidity lower than 70%. 856 + 857 +* (% style="color:blue" %)**Downlink Payload:** 858 + 859 +(% style="color:#037691" %)**0x(0C 02 46 00)**(%%) ~/~/ Set AT+SHTHUM=70,0 860 + 861 +(% style="color:red" %)**(note: 3^^rd^^ byte= 0x46 for low limit (70%), 4^^th^^ byte = 0x00 for high limit (not set))** 862 + 863 + 864 +=== 3.3.5 Set Alarm Interval === 865 + 866 +The shortest time of two Alarm packet. (unit: min) 867 + 868 +* (% style="color:blue" %)**AT Command:** 869 + 870 +(% 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. 871 + 872 +* (% style="color:blue" %)**Downlink Payload:** 873 + 874 +(% style="color:#037691" %)**0x(0D 00 1E)**(%%) **~-~--> ** Set AT+ATDC=0x 00 1E = 30 minutes 875 + 876 + 877 +=== 3.3.6 Get Alarm settings === 878 + 879 + 880 +Send a LoRaWAN downlink to ask device send Alarm settings. 881 + 882 +* (% style="color:#037691" %)**Downlink Payload: **(%%)0x0E 01 883 + 884 +**Example:** 885 + 886 +[[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"]] 887 + 888 + 889 +**Explain:** 890 + 891 +* Alarm & MOD bit is 0x7C, 0x7C >> 2 = 0x31: Means this message is the Alarm settings message. 892 + 857 857 === 3.3.7 Set Interrupt Mode === 858 858 859 859 ... ... @@ -885,7 +885,6 @@ 885 885 * Example 1: Downlink Payload: 06000000 ~/~/ Turn off interrupt mode 886 886 * Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger 887 887 888 - 889 889 = 4. Battery & Power Consumption = 890 890 891 891