Changes for page SN50v3-LB/LS -- LoRaWAN Sensor Node User Manual
Last modified by Bei Jinggeng on 2025/01/10 15:51
Change comment:
Uploaded new attachment "image-20230512180718-8.png", version {1}
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 8 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Edwin1 +XWiki.Saxer - Content
-
... ... @@ -288,7 +288,6 @@ 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 - 292 292 ==== 2.3.2.1 MOD~=1 (Default Mode) ==== 293 293 294 294 In this mode, uplink payload includes in total 11 bytes. Uplink packets use FPORT=2. ... ... @@ -395,8 +395,6 @@ 395 395 396 396 [[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"]] 397 397 398 -(% class="wikigeneratedid" %) 399 -=== === 400 400 401 401 ==== 2.3.2.5 MOD~=5(Weight Measurement by HX711) ==== 402 402 ... ... @@ -428,8 +428,6 @@ 428 428 429 429 [[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"]] 430 430 431 -(% class="wikigeneratedid" %) 432 -=== === 433 433 434 434 ==== 2.3.2.6 MOD~=6 (Counting Mode) ==== 435 435 ... ... @@ -460,7 +460,6 @@ 460 460 Digital in(PA12)&Digital Interrupt1(PB14) 461 461 )))|Digital Interrupt2(PB15)|Digital Interrupt3(PA4)|Reserved 462 462 463 - 464 464 ==== 2.3.2.8 MOD~=8 (3ADC+1DS18B20) ==== 465 465 466 466 |=((( ... ... @@ -479,8 +479,6 @@ 479 479 480 480 [[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"]] 481 481 482 -(% class="wikigeneratedid" %) 483 -=== === 484 484 485 485 ==== 2.3.2.9 MOD~=9 (3DS18B20+ two Interrupt count mode) ==== 486 486 ... ... @@ -518,8 +518,10 @@ 518 518 519 519 When AA is 2, set the count of PB15 pin to BB Corresponding downlink:09 02 bb bb bb bb 520 520 521 -=== 2.3.10 Decode payload in The Things Network === 522 522 514 + 515 +=== 2.3.3 Decode payload === 516 + 523 523 While using TTN V3 network, you can add the payload format to decode the payload. 524 524 525 525 [[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"]] ... ... @@ -526,39 +526,28 @@ 526 526 527 527 The payload decoder function for TTN V3 are here: 528 528 529 - LSN50 TTN V3 Payload Decoder: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>url:https://github.com/dragino/dragino-end-node-decoder]]523 +SN50v3 TTN V3 Payload Decoder: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>url:https://github.com/dragino/dragino-end-node-decoder]] 530 530 531 531 532 - SensorDatais uplinkvia FPORT=2526 +==== 2.3.3.1 Battery Info ==== 533 533 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 -))) 528 +Check the battery voltage for SN50v3. 549 549 550 -==== (% style="color:#4472c4" %)**Battery**(%%) ==== 551 - 552 -Sensor Battery Level. 553 - 554 554 Ex1: 0x0B45 = 2885mV 555 555 556 556 Ex2: 0x0B49 = 2889mV 557 557 558 558 535 +==== 2.3.3.2 Temperature (DS18B20) ==== 559 559 560 - ====(% style="color:#4472c4"%)**Temperature**(%%)====537 +If there is a DS18B20 connected to PB3 pin. The temperature will be uploaded in the payload. 561 561 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 + 562 562 **Example**: 563 563 564 564 If payload is: 0105H: (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree ... ... @@ -568,195 +568,247 @@ 568 568 (FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative) 569 569 570 570 571 -==== (%style="color:#4472c4"%)**Humidity**(%%)====554 +==== 2.3.3.3 Digital Input ==== 572 572 556 +The digital input for pin PA12, 573 573 574 -Read:0x(0197)=412 Value: 412 / 10=41.2, So 41.2% 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. 575 575 561 +==== 2.3.3.4 Analogue Digital Converter (ADC) ==== 576 576 577 - ====(%style="color:#4472c4"%)**AlarmFlag&MOD**(%%)====563 +The ADC pins in LSN50 can measure range from 0~~Vbat, it use reference voltage from . If user need to measure a voltage > VBat, please use resistors to divide this voltage to lower than VBat, otherwise, it may destroy the ADC pin. 578 578 565 +Note: minimum VBat is 2.5v, when batrrey lower than this value. Device won't be able to send LoRa Uplink. 579 579 580 - **Example:**567 +The ADC monitors the voltage on the PA0 line, in mV. 581 581 582 - Ifpayload &0x01 =0x01 **~-~->** This is an AlarmMessage569 +Ex: 0x021F = 543mv, 583 583 584 - Ifpayload & 0x01= 0x00**~-~->**Thisisa normaluplinkmessage,noalarm571 +**~ Example1:** Reading an Oil Sensor (Read a resistance value): 585 585 586 -If payload >> 2 = 0x00 **~-~->** means MOD=1, This is a sampling uplink message 587 587 588 - If payload >> 2 = 0x31 **~-~->** means MOD=31, thismessages areply message for polling, this message containsthelarmsettings. see [[thislink>>path:#HPolltheAlarmsettings:]] fordetail.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"]] 589 589 576 +In the LSN50, we can use PB4 and PA0 pin to calculate the resistance for the oil sensor. 577 + 590 590 591 - == 2.4 Payload Decoder file ==579 +**Steps:** 592 592 581 +1. Solder a 10K resistor between PA0 and VCC. 582 +1. Screw oil sensor's two pins to PA0 and PB4. 593 593 594 - InTTN,usecanadd acustompayloadsoitshowsfriendly reading584 +The equipment circuit is as below: 595 595 596 - In the page(% style="color:#037691" %)**Applications~-~-> PayloadFormats~-~-> Custom ~-~-> decoder**(%%) toadd thedecoderfrom: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"]] 597 597 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]]588 +According to above diagram: 599 599 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"]] 600 600 601 - == 2.5 Datalog Feature ==592 +So 602 602 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"]] 603 603 604 - DatalogFeatureis to ensure IoT Servercan get all samplingdatafrom SensoreveniftheLoRaWANetwork isdown. Forachsampling, S31x-LBwillstorethe reading forfutureretrievingpurposes.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"]] is the reading of ADC. So if ADC=0x05DC=0.9 v and VCC (BAT) is 2.9v 605 605 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 606 606 607 - ===2.5.1Waysto get datalogviaLoRaWAN===600 +Since the Bouy is linear resistance from 10 ~~ 70cm. 608 608 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. 609 609 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. 611 611 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. 605 +==== 2.3.3.5 Digital Interrupt ==== 614 614 615 - Belowisthe typicalcase for theauto-updatedatalogfeature(SetPNACKMD=1)607 +Digital Interrupt refers to pin PB14, and there are different trigger methods. When there is a trigger, the SN50v3 will send a packet to the server. 616 616 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"]]609 +**~ Interrupt connection method:** 618 618 619 - === 2.5.2 UnixTimeStamp=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"]] 620 620 613 +**Example to use with door sensor :** 621 621 622 - S31x-LBusesUnixTimeStampformatbased on615 +The door sensor is shown at right. It is a two wire magnetic contact switch used for detecting the open/close status of doors or windows. 623 623 624 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/L HT65N%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"]]617 +[[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"]] 625 625 626 - Usercanget thistimefromlink:[[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]]:619 +When the two pieces are close to each other, the 2 wire output will be short or open (depending on the type), while if the two pieces are away from each other, the 2 wire output will be the opposite status. So we can use LSN50 interrupt interface to detect the status for the door or window. 627 627 628 -Below is the converterexample621 +**~ Below is the installation example:** 629 629 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"]]623 +Fix one piece of the magnetic sensor to the door and connect the two pins to LSN50 as follows: 631 631 632 -So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25 625 +* ((( 626 +One pin to LSN50's PB14 pin 627 +))) 628 +* ((( 629 +The other pin to LSN50's VCC pin 630 +))) 633 633 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. 634 634 635 - ===2.5.3SetDevice Time===634 +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. 636 636 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 - Usereedtot (%style="color:blue"%)**SYNCMOD=1**(%%) toableync timeviaMAC command.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"]] 639 639 640 - OnceS31x-LB JoinedLoRaWAN network, it willsendthe MAC command(DeviceTimeReq) andtheserverwillreply with (DeviceTimeAns)tosendthecurrent time to S31x-LB. If S31x-LB fails togetthe timefrom theserver, S31x-LBwill usetheinternaltimeandwaitfornext time request (AT+SYNCTDC to set the time request period, defaultis 10days).640 +The above photos shows the two parts of the magnetic switch fitted to a door. 641 641 642 - (%style="color:red"%)**Note:LoRaWANServerneedtosupport LoRaWANv1.0.3(MAC v1.0.3) or highertosupportthis MAC commandfeature, Chirpstack,TTNV3 v3andloriotsupportbutTTN V3 v2 doesn'tsupport.Ifserverdoesn't supportthiscommand,itwill throughaway uplinkpacketwiththiscommand,souserwill losethe packetwithtimeequestfor TTN V3 v2 if SYNCMOD=1.**642 +The software by default uses the falling edge on the signal line as an interrupt. We need to modify it to accept both the rising edge (0v ~-~-> VCC , door close) and the falling edge (VCC ~-~-> 0v , door open) as the interrupt. 643 643 644 +The command is: 644 644 645 -= ==2.5.4DatalogUplinkpayload(FPORT~=3)===646 +**AT+INTMOD=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]]**. **) 646 646 648 +Below shows some screen captures in TTN V3: 647 647 648 - The Dataloguplinkswill usebelowpayload650 +[[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"]] 649 649 650 - **Retrievaldata payload:**652 +In MOD=1, user can use byte 6 to see the status for door open or close. TTN V3 decoder is as below: 651 651 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"]] 654 +door= (bytes[6] & 0x80)? "CLOSE":"OPEN"; 659 659 660 -** Poll messageflag&Ext:**656 +**Notice for hardware version LSN50 v1 < v1.3** (produced before 2018-Nov). 661 661 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"]]658 +In this hardware version, there is no R14 resistance solder. When use the latest firmware, it should set AT+INTMOD=0 to close the interrupt. If user need to use Interrupt in this hardware version, user need to solder R14 with 10M resistor and C1 (0.1uF) on board. 663 663 664 - **No ACK Message**:1: This message means this payloadfromnUplink Message whichdoesn't getACK from theverbefore( for**PNACKMD=1** feature)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"]] 665 665 666 -**Poll Message Flag**: 1: This message is a poll message reply. 667 667 668 - *PollMessageFlagis set to 1.663 +==== 2.3.3.6 I2C Interface (SHT20) ==== 669 669 670 - * Eachdataentryis11bytes,tosaveairtimeandbattery,deviceswill sendmax bytes accordingothecurrent DR and Frequencybands.665 +The PB6(SDA) and PB7(SCK) are I2C interface lines. You can use these to connect to an I2C device and get the sensor data. 671 671 672 - Forexample,inUS915band,the maxpayloadfor different DRis:667 +We have made an example to show how to use the I2C interface to connect to the SHT20 Temperature and Humidity Sensor. This is supported in the stock firmware since v1.5 with **AT+MOD=1 (default value).** 673 673 674 - **a)DR0:** maxis11bytes so one entryofdata669 +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 code in LSN50 will be a good reference. 675 675 676 - **b)DR1:** maxis53 bytessodevices willupload4entriesofdata(total44bytes)671 +Below is the connection to SHT20/ SHT31. The connection is as below: 677 677 678 - **c) DR2:**totalpayloadcludes11entriesf data673 +[[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"]] 679 679 680 - **d)DR3: **totalpayloadincludes22entriesfdata.675 +The device will be able to get the I2C sensor data now and upload to IoT Server. 681 681 682 - If devisen't haveanydata inthepolling time.Device will uplink11bytes of 0677 +[[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"]] 683 683 679 +Convert the read byte to decimal and divide it by ten. 684 684 685 685 **Example:** 686 686 687 - If S31x-LB has below datainsideFlash:683 +Temperature: Read:0116(H) = 278(D) Value: 278 /10=27.8℃; 688 688 689 - [[image:1682646494051-944.png]]685 +Humidity: Read:0248(H)=584(D) Value: 584 / 10=58.4, So 58.4% 690 690 691 -If use rsendsbelowdownlinkcommand:3160065F9760066DA705687 +If you want to use other I2C device, please refer the SHT20 part source code as reference. 692 692 693 -Where : Start time: 60065F97 = time 21/1/19 04:27:03 694 694 695 - Stop time:60066DA7= time21/1/19 05:27:03690 +==== 2.3.3.7 Distance Reading ==== 696 696 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]]. 697 697 698 -**S31x-LB will uplink this payload.** 699 699 700 - [[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"]]695 +==== 2.3.3.8 Ultrasonic Sensor ==== 701 701 702 -((( 703 -__**7FFF089801464160065F97**__ **__7FFF__ __088E__ __014B__ __41__ __60066009__** 7FFF0885014E41600660667FFF0875015141600662BE7FFF086B015541600665167FFF08660155416006676E7FFF085F015A41600669C67FFF0857015D4160066C1E 704 -))) 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]] 705 705 706 -((( 707 -Where the first 11 bytes is for the first entry: 708 -))) 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. 709 709 710 -((( 711 -7FFF089801464160065F97 712 -))) 701 +The picture below shows the connection: 713 713 714 -((( 715 -**Ext sensor data**=0x7FFF/100=327.67 716 -))) 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"]] 717 717 718 -((( 719 -**Temp**=0x088E/100=22.00 720 -))) 705 +Connect to the LSN50 and run **AT+MOD=2** to switch to ultrasonic mode (ULT). 721 721 722 -((( 723 -**Hum**=0x014B/10=32.6 724 -))) 707 +The ultrasonic sensor uses the 8^^th^^ and 9^^th^^ byte for the measurement value. 725 725 726 -((( 727 -**poll message flag & Ext**=0x41,means reply data,Ext=1 728 -))) 709 +**Example:** 729 729 730 -((( 731 -**Unix time** is 0x60066009=1611030423s=21/1/19 04:27:03 732 -))) 711 +Distance: Read: 0C2D(Hex) = 3117(D) Value: 3117 mm=311.7 cm 733 733 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"]] 734 734 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"]](%ria-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"]](%ria-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="单击并拖动以调整大小" %)的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"]] 736 736 737 - ==2.6TemperatureAlarm Feature==717 +You can see the serial output in ULT mode as below: 738 738 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"]] 739 739 740 - S31x-LBworkflowwith Alarm feature.721 +**In TTN V3 server:** 741 741 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"]] 742 742 743 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50 v2-D20-D22-D23%20LoRaWAN%20Temperature%20Sensor%20User%20Manual/WebHome/image-20220623090437-1.png?rev=1.1||alt="图片-20220623090437-1.png"]]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"]] 744 744 727 +==== 2.3.3.9 Battery Output - BAT pin ==== 745 745 746 - ==2.7FrequencyPlans==729 +The BAT pin of SN50v3 is connected to the Battery directly. If users want to use BAT pin to power an external sensor. User need to make sure the external sensor is of low power consumption. Because the BAT pin is always open. If the external sensor is of high power consumption. the battery of SN50v3-LB will run out very soon. 747 747 748 748 749 - TheS31x-LBusesOTAA mode and below frequencyplans by default.If user want to use it with different frequency plan, please refer the AT command sets.732 +==== 2.3.3.10 +5V Output ==== 750 750 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 + 751 751 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]] 752 752 753 753 754 -= 3. Configure S3 1x-LB =789 += 3. Configure SN50v3-LB = 755 755 756 756 == 3.1 Configure Methods == 757 757 758 758 759 -S3 1x-LB supports below configure method:794 +SN50v3-LB supports below configure method: 760 760 761 761 * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]]. 762 762 * 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]]. ... ... @@ -775,7 +775,7 @@ 775 775 [[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/]] 776 776 777 777 778 -== 3.3 Commands special design for S3 1x-LB ==813 +== 3.3 Commands special design for SN50v3-LB == 779 779 780 780 781 781 These commands only valid for S31x-LB, as below: ... ... @@ -811,7 +811,6 @@ 811 811 812 812 === 3.3.2 Get Device Status === 813 813 814 - 815 815 Send a LoRaWAN downlink to ask device send Alarm settings. 816 816 817 817 (% style="color:blue" %)**Downlink Payload: **(%%)0x26 01 ... ... @@ -819,77 +819,6 @@ 819 819 Sensor will upload Device Status via FPORT=5. See payload section for detail. 820 820 821 821 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 - 893 893 === 3.3.7 Set Interrupt Mode === 894 894 895 895 ... ... @@ -949,8 +949,13 @@ 949 949 950 950 = 6. FAQ = 951 951 915 +== 6.1 Where can i find source code of SN50v3-LB? == 952 952 917 +* **[[Hardware Source Files>>https://github.com/dragino/Lora/tree/master/LSN50/v3.0]].** 918 +* **[[Software Source Code & Compile instruction>>https://github.com/dragino/SN50v3]].** 953 953 920 + 921 + 954 954 = 7. Order Info = 955 955 956 956
- image-20230512163509-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Saxer - Size
-
... ... @@ -1,0 +1,1 @@ 1 +1.5 MB - Content
- image-20230512164658-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Saxer - Size
-
... ... @@ -1,0 +1,1 @@ 1 +2.0 MB - Content
- image-20230512170701-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Saxer - Size
-
... ... @@ -1,0 +1,1 @@ 1 +2.5 MB - Content
- image-20230512172447-4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Saxer - Size
-
... ... @@ -1,0 +1,1 @@ 1 +2.0 MB - Content
- image-20230512173758-5.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Saxer - Size
-
... ... @@ -1,0 +1,1 @@ 1 +2.1 MB - Content
- image-20230512173903-6.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Saxer - Size
-
... ... @@ -1,0 +1,1 @@ 1 +2.3 MB - Content
- image-20230512180609-7.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Saxer - Size
-
... ... @@ -1,0 +1,1 @@ 1 +2.3 MB - Content
- image-20230512180718-8.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Saxer - Size
-
... ... @@ -1,0 +1,1 @@ 1 +2.3 MB - Content