Changes for page SDI-12-LB/LS -- SDI-12 to LoRaWAN Converter User Manual
Last modified by Xiaoling on 2025/04/25 08:58
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -269,7 +269,7 @@ 269 269 270 270 **Parameter: **aa: ASCII value of SDI-12 sensor address in downlink or HEX value in AT Command) 271 271 272 -**Example : 272 +**Example : **AT+ADDRI=0 ( Equal to downlink: 0x AA 00 30) 273 273 274 274 275 275 The following is the display information on the serial port and the server. ... ... @@ -387,7 +387,7 @@ 387 387 [[image:image-20230201092208-15.png||height="214" width="1140"]] 388 388 389 389 390 -=== 2.3.2 Advance SDI-12 Debug command ===390 +=== 2.3.2 Advance SDI-12 Debug command === 391 391 392 392 393 393 This command can be used to debug all SDI-12 command. ... ... @@ -421,7 +421,6 @@ 421 421 422 422 [[image:image-20230201092355-17.png||height="426" width="1135"]] 423 423 424 - 425 425 426 426 427 427 === 2.3.3 Convert ASCII to String === ... ... @@ -443,9 +443,6 @@ 443 443 444 444 [[image:1675214856590-846.png]] 445 445 446 - 447 - 448 - 449 449 450 450 451 451 === 2.3.4 Define periodically SDI-12 commands and uplink. === ... ... @@ -520,7 +520,6 @@ 520 520 * **XX XX XX XX **: AT+COMMAND or AT+DATACUT command 521 521 * **YY **: If YY=0, RS485-LN will execute the downlink command without uplink; if YY=1, RS485-LN will execute an uplink after got this command. 522 522 523 - 524 524 **Example:** 525 525 526 526 [[image:image-20230201094129-18.png]] ... ... @@ -554,7 +554,7 @@ 554 554 555 555 If user don't want to use DATACUT for some command, he simply want to uplink all returns. AT+ALLDATAMOD can be set to 1. 556 556 557 -**AT+ALLDATAMOD** will simply get all return and don ’t do CRC check as result for SDI-12 command. AT+DATACUTx command has higher priority, if AT+DATACUTx has been set, AT+ALLDATAMOD will be ignore for this SDI-12 command.552 +**AT+ALLDATAMOD** will simply get all return and don't do CRC check as result for SDI-12 command. AT+DATACUTx command has higher priority, if AT+DATACUTx has been set, AT+ALLDATAMOD will be ignore for this SDI-12 command. 558 558 559 559 560 560 **For example: ** as below photo, AT+ALLDATAMOD=1, but AT+DATACUT1 has been set, AT+DATACUT1 will be still effect the result. ... ... @@ -569,6 +569,7 @@ 569 569 570 570 **Compose Uplink** 571 571 567 + 572 572 **AT+DATAUP=0** 573 573 574 574 Compose the uplink payload with value returns in sequence and send with A SIGNLE UPLINK. ... ... @@ -621,14 +621,13 @@ 621 621 The application server should parse the correct value based on FPORT settings. 622 622 623 623 624 -2.4.1 Device Payload, FPORT=5 620 +=== 2.4.1 Device Payload, FPORT~=5 === 625 625 622 + 626 626 Include device configure status. Once SDI-12-LB Joined the network, it will uplink this message to the server. 627 627 628 - 629 629 Users can also use the downlink command(0x26 01) to ask SDI-12-LB to resend this uplink. 630 630 631 - 632 632 (% border="1" cellspacing="4" style="background-color:#f7faff; width:437px" %) 633 633 |(% colspan="6" style="width:434px" %)**Device Status (FPORT=5)** 634 634 |(% style="width:102px" %)**Size (bytes)**|(% style="width:67px" %)**1**|(% style="width:80px" %)**2**|(% style="width:89px" %)**1**|(% style="width:52px" %)**1**|(% style="width:44px" %)**2** ... ... @@ -638,6 +638,7 @@ 638 638 639 639 [[image:1675215946738-635.png]] 640 640 636 + 641 641 **Sensor Model**: For SDI-12-LB, this value is 0x17 642 642 643 643 **Firmware Version**: 0x0100, Means: v1.0.0 version ... ... @@ -691,10 +691,9 @@ 691 691 Ex2: 0x0B49 = 2889mV 692 692 693 693 694 -1. 695 -11. 696 -111. Uplink Payload, FPORT=2 690 +=== 2.4.2 Uplink Payload, FPORT~=2 === 697 697 692 + 698 698 There are different cases for uplink. See below 699 699 700 700 * SDI-12 Debug Command return: FPORT=100 ... ... @@ -701,30 +701,24 @@ 701 701 702 702 * Periodically Uplink: FPORT=2 703 703 704 -|((( 705 -**Size** 706 - 707 -**(bytes)** 708 -)))|**2**|**1**|**Length depends on the return from the commands** 709 -|**Value**|((( 699 +(% border="1" cellspacing="4" style="background-color:#f7faff; width:510px" %) 700 +|(% style="width:93px" %)((( 701 +**Size(bytes)** 702 +)))|(% style="width:83px" %)**2**|(% style="width:70px" %)**1**|(% style="width:234px" %)**Length depends on the return from the commands** 703 +|(% style="width:93px" %)**Value**|(% style="width:83px" %)((( 710 710 Battery(mV) 711 - 712 712 & 713 - 714 714 Interrupt_Flag 715 -)))|[[PAYLOAD_VER>>path:#Probe_Model]]|((( 716 -If the valid payload is too long and exceed the maximum support 717 - 707 +)))|(% style="width:70px" %)[[PAYLOAD_VER>>path:#Probe_Model]]|(% style="width:234px" %)((( 708 +If the valid payload is too long and exceed the maximum support. 718 718 Payload length in server,server will show payload not provided in the LoRaWAN server. 719 719 ))) 720 720 721 -[[image: file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image034.png]]712 +[[image:1675216282284-923.png]] 722 722 723 723 715 +=== 2.4.3 Battery Info === 724 724 725 -1. 726 -11. 727 -111. Battery Info 728 728 729 729 Check the battery voltage for SDI-12-LB. 730 730 ... ... @@ -733,216 +733,37 @@ 733 733 Ex2: 0x0B49 = 2889mV 734 734 735 735 736 -1. 737 -11. 738 -111. Interrupt Pin 725 +=== 2.4.4 Interrupt Pin === 739 739 727 + 740 740 This data field shows if this packet is generated by **Interrupt Pin** or not. [[Click here>>path:#Int_mod]] for the hardware and software set up. Note: The Internet Pin is a separate pin in the screw terminal. See [[pin mapping>>path:#pins]]. 741 741 730 +**Example:** 742 742 743 -Example: 744 - 745 745 Ex1: 0x0B45:0x0B&0x80= 0x00 Normal uplink packet. 746 746 747 747 Ex2: 0x8B49:0x8B&0x80= 0x80 Interrupt Uplink Packet. 748 748 749 749 750 -1. 751 -11. 752 -111. Payload version 737 +=== 2.4.5 Payload version === 753 753 754 754 755 755 741 +=== 2.4.6 Decode payload in The Things Network === 756 756 757 757 758 -1. 759 -11. 760 -111. Decode payload in The Things Network 761 - 762 762 While using TTN network, you can add the payload format to decode the payload. 763 763 764 -[[image: file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image035.png]]746 +[[image:1675216779406-595.png]] 765 765 766 766 767 767 There is no fix payload decoder in LoRaWAN server because the SDI-12 sensors returns are different. User need to write the decoder themselves for their case. 768 768 751 +SDI-12-LB TTN Payload Decoder: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>url:https://github.com/dragino/dragino-end-node-decoder]] 769 769 770 -下面的解码生成超链接放进去. 771 771 772 -function Decoder(bytes, port) { 773 773 774 - if(port==5) 775 - 776 - { 777 - 778 - var freq_band; 779 - 780 - var sub_band; 781 - 782 - var sensor; 783 - 784 - 785 - if(bytes[0]==0x17) 786 - 787 - sensor= "SDI12-LB"; 788 - 789 - 790 - var firm_ver= (bytes[1]&0x0f)+'.'+(bytes[2]>>4&0x0f)+'.'+(bytes[2]&0x0f); 791 - 792 - 793 - if(bytes[3]==0x01) 794 - 795 - freq_band="EU868"; 796 - 797 - else if(bytes[3]==0x02) 798 - 799 - freq_band="US915"; 800 - 801 - else if(bytes[3]==0x03) 802 - 803 - freq_band="IN865"; 804 - 805 - else if(bytes[3]==0x04) 806 - 807 - freq_band="AU915"; 808 - 809 - else if(bytes[3]==0x05) 810 - 811 - freq_band="KZ865"; 812 - 813 - else if(bytes[3]==0x06) 814 - 815 - freq_band="RU864"; 816 - 817 - else if(bytes[3]==0x07) 818 - 819 - freq_band="AS923"; 820 - 821 - else if(bytes[3]==0x08) 822 - 823 - freq_band="AS923_1"; 824 - 825 - else if(bytes[3]==0x09) 826 - 827 - freq_band="AS923_2"; 828 - 829 - else if(bytes[3]==0x0A) 830 - 831 - freq_band="AS923_3"; 832 - 833 - else if(bytes[3]==0x0F) 834 - 835 - freq_band="AS923_4"; 836 - 837 - else if(bytes[3]==0x0B) 838 - 839 - freq_band="CN470"; 840 - 841 - else if(bytes[3]==0x0C) 842 - 843 - freq_band="EU433"; 844 - 845 - else if(bytes[3]==0x0D) 846 - 847 - freq_band="KR920"; 848 - 849 - else if(bytes[3]==0x0E) 850 - 851 - freq_band="MA869"; 852 - 853 - 854 - if(bytes[4]==0xff) 855 - 856 - sub_band="NULL"; 857 - 858 - else 859 - 860 - sub_band=bytes[4]; 861 - 862 - 863 - var bat= (bytes[5]<<8 | bytes[6])/1000; 864 - 865 - 866 - return { 867 - 868 - SENSOR_MODEL:sensor, 869 - 870 - FIRMWARE_VERSION:firm_ver, 871 - 872 - FREQUENCY_BAND:freq_band, 873 - 874 - SUB_BAND:sub_band, 875 - 876 - BAT:bat, 877 - 878 - } 879 - 880 - } 881 - 882 - else if(port==100) 883 - 884 - { 885 - 886 - var datas_sum={}; 887 - 888 - for(var j=0;j<bytes.length;j++) 889 - 890 - { 891 - 892 - var datas= String.fromCharCode(bytes[j]); 893 - 894 - if(j=='0') 895 - 896 - datas_sum.datas_sum=datas; 897 - 898 - else 899 - 900 - datas_sum.datas_sum+=datas; 901 - 902 - } 903 - 904 - 905 - return datas_sum; 906 - 907 - } 908 - 909 - else 910 - 911 - { 912 - 913 - var decode={}; 914 - 915 - decode.EXTI_Trigger= (bytes[0] & 0x80)? "TRUE":"FALSE"; 916 - 917 - decode.BatV= ((bytes[0]<<8 | bytes[1])&0x7FFF)/1000; 918 - 919 - decode.Payver= bytes[2]; 920 - 921 - for(var i=3;i<bytes.length;i++) 922 - 923 - { 924 - 925 - var data= String.fromCharCode(bytes[i]); 926 - 927 - if(i=='3') 928 - 929 - decode.data_sum=data; 930 - 931 - else 932 - 933 - decode.data_sum+=data; 934 - 935 - } 936 - 937 - return decode; 938 - 939 - } 940 - 941 - 942 -} 943 - 944 - 945 -1. 755 +1. 946 946 11. Uplink Interval 947 947 948 948 The SDI-12-LB by default uplink the sensor data every 20 minutes. User can change this interval by AT Command or LoRaWAN Downlink Command. See this link: ... ... @@ -951,7 +951,7 @@ 951 951 952 952 953 953 954 -1. 764 +1. 955 955 11. Frequency Plans 956 956 957 957 The SDI12-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. ... ... @@ -961,7 +961,7 @@ 961 961 962 962 963 963 964 -1. 774 +1. 965 965 11. Firmware Change Log 966 966 967 967 **Firmware download link:** ... ... @@ -1000,7 +1000,7 @@ 1000 1000 1001 1001 1002 1002 1003 -1. 813 +1. 1004 1004 11. Set Transmit Interval Time 1005 1005 1006 1006 Feature: Change LoRaWAN End Node Transmit Interval. ... ... @@ -1030,7 +1030,7 @@ 1030 1030 * Example 1: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds 1031 1031 * Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 1032 1032 1033 -1. 843 +1. 1034 1034 11. Set Interrupt Mode 1035 1035 1036 1036 Feature, Set Interrupt mode for GPIO_EXIT. ... ... @@ -1063,7 +1063,7 @@ 1063 1063 * Example 1: Downlink Payload: 06000000 ~/~/ Turn off interrupt mode 1064 1064 * Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger 1065 1065 1066 -1. 876 +1. 1067 1067 11. Set the output time 1068 1068 1069 1069 Feature, Control the output 3V3 , 5V or 12V. ... ... @@ -1144,7 +1144,7 @@ 1144 1144 * Example 5: Downlink Payload: 070301F4 -> AT+12VT=500 1145 1145 * Example 6: Downlink Payload: 07030000 -> AT+12VT=0 1146 1146 1147 -1. 957 +1. 1148 1148 11. Set the all data mode 1149 1149 1150 1150 Feature, Set the all data mode. ... ... @@ -1167,7 +1167,7 @@ 1167 1167 * Example 1: Downlink Payload: AB 00 ~/~/ AT+ALLDATAMOD=0 1168 1168 * Example 2: Downlink Payload: AB 01 ~/~/ AT+ALLDATAMOD=1 1169 1169 1170 -1. 980 +1. 1171 1171 11. Set the splicing payload for uplink 1172 1172 1173 1173 Feature, splicing payload for uplink. ... ... @@ -1208,7 +1208,7 @@ 1208 1208 This means that the interval is set to 0x000014=20S 1209 1209 1210 1210 1211 -1. 1021 +1. 1212 1212 11. Set the payload version 1213 1213 1214 1214 Feature, Set the payload version. ... ... @@ -1247,7 +1247,7 @@ 1247 1247 SDI-12-LB: 2.45v ~~ 3.6v 1248 1248 1249 1249 1250 -1. 1060 +1. 1251 1251 11. Replace Battery 1252 1252 1253 1253 Any battery with range 2.45 ~~ 3.6v can be a replacement. We recommend to use Li-SOCl2 Battery. ... ... @@ -1256,7 +1256,7 @@ 1256 1256 1257 1257 1258 1258 1259 -1. 1069 +1. 1260 1260 11. Power Consumption Analyze 1261 1261 1262 1262 Dragino Battery powered product are all runs in Low Power mode. We have an update battery calculator which base on the measurement of the real device. User can use this calculator to check the battery life and calculate the battery life if want to use different transmit interval. ... ... @@ -1296,14 +1296,14 @@ 1296 1296 1297 1297 1298 1298 1. 1299 -11. 1109 +11. 1300 1300 111. Battery Note 1301 1301 1302 1302 The Li-SICO battery is designed for small current / long period application. It is not good to use a high current, short period transmit method. The recommended minimum period for use of this battery is 5 minutes. If you use a shorter period time to transmit LoRa, then the battery life may be decreased. 1303 1303 1304 1304 1305 -1. 1306 -11. 1115 +1. 1116 +11. 1307 1307 111. Replace the battery 1308 1308 1309 1309 You can change the battery in the SDI-12-LB.The type of battery is not limited as long as the output is between 3v to 3.6v. On the main board, there is a diode (D1) between the battery and the main circuit. If you need to use a battery with less than 3.3v, please remove the D1 and shortcut the two pads of it so there won’t be voltage drop between battery and main board. ... ... @@ -1324,7 +1324,7 @@ 1324 1324 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]] 1325 1325 1326 1326 1327 -1. 1137 +1. 1328 1328 11. AT Command Set 1329 1329 1330 1330 1. OTA firmware update ... ... @@ -1357,7 +1357,6 @@ 1357 1357 * Weight / pcs : g 1358 1358 1359 1359 1360 - 1361 1361 1. Support 1362 1362 1363 1363 * 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.