<
From version < 37.2 >
edited by Xiaoling
on 2023/02/01 10:02
To version < 37.1 >
edited by Xiaoling
on 2023/02/01 09:59
>
Change comment: Uploaded new attachment "1675216779406-595.png", version {1}

Summary

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 :   **AT+ADDRI=0 ( Equal to downlink: 0x AA 00 30)
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,6 +421,7 @@
421 421  
422 422  ​​​​​​​[[image:image-20230201092355-17.png||height="426" width="1135"]]
423 423  
424 +
424 424  ​​​​​​​
425 425  
426 426  === 2.3.3 Convert ASCII to String ===
... ... @@ -442,6 +442,9 @@
442 442  
443 443  [[image:1675214856590-846.png]]
444 444  
446 +
447 +
448 +
445 445  ​​​​​​​
446 446  
447 447  === 2.3.4 Define periodically SDI-12 commands and uplink. ===
... ... @@ -516,6 +516,7 @@
516 516  * **XX XX XX XX **: AT+COMMAND or AT+DATACUT command
517 517  * **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. 
518 518  
523 +
519 519  **Example:**
520 520  
521 521  [[image:image-20230201094129-18.png]]
... ... @@ -549,7 +549,7 @@
549 549  
550 550  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.
551 551  
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.
557 +**AT+ALLDATAMOD** will simply get all return and dont 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.
553 553  
554 554  
555 555  **For example: ** as below photo, AT+ALLDATAMOD=1, but AT+DATACUT1 has been set, AT+DATACUT1 will be still effect the result.
... ... @@ -564,7 +564,6 @@
564 564  
565 565  **Compose Uplink**
566 566  
567 -
568 568  **AT+DATAUP=0**
569 569  
570 570  Compose the uplink payload with value returns in sequence and send with A SIGNLE UPLINK.
... ... @@ -617,13 +617,14 @@
617 617  The application server should parse the correct value based on FPORT settings.
618 618  
619 619  
620 -=== 2.4.1 Device Payload, FPORT~=5 ===
624 +2.4.1 Device Payload, FPORT=5
621 621  
622 -
623 623  Include device configure status. Once SDI-12-LB Joined the network, it will uplink this message to the server.
624 624  
628 +
625 625  Users can also use the downlink command(0x26 01) to ask SDI-12-LB to resend this uplink.
626 626  
631 +
627 627  (% border="1" cellspacing="4" style="background-color:#f7faff; width:437px" %)
628 628  |(% colspan="6" style="width:434px" %)**Device Status (FPORT=5)**
629 629  |(% 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**
... ... @@ -633,7 +633,6 @@
633 633  
634 634  [[image:1675215946738-635.png]]
635 635  
636 -
637 637  **Sensor Model**: For SDI-12-LB, this value is 0x17
638 638  
639 639  **Firmware Version**: 0x0100, Means: v1.0.0 version
... ... @@ -687,9 +687,10 @@
687 687  Ex2: 0x0B49 = 2889mV
688 688  
689 689  
690 -=== 2.4.2 Uplink Payload, FPORT~=2 ===
694 +1.
695 +11.
696 +111. Uplink Payload, FPORT=2
691 691  
692 -
693 693  There are different cases for uplink. See below
694 694  
695 695  * SDI-12 Debug Command return: FPORT=100
... ... @@ -696,24 +696,30 @@
696 696  
697 697  * Periodically Uplink: FPORT=2
698 698  
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" %)(((
704 +|(((
705 +**Size**
706 +
707 +**(bytes)**
708 +)))|**2**|**1**|**Length depends on the return from the commands**
709 +|**Value**|(((
704 704  Battery(mV)
711 +
705 705  &
713 +
706 706  Interrupt_Flag
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.
715 +)))|[[PAYLOAD_VER>>path:#Probe_Model]]|(((
716 +If the valid payload is too long and exceed the maximum support
717 +
709 709  Payload length in server,server will show payload not provided in the LoRaWAN server.
710 710  )))
711 711  
712 -[[image:1675216282284-923.png]]
721 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image034.png]]
713 713  
714 714  
715 -=== 2.4.3 Battery Info ===
716 716  
725 +1.
726 +11.
727 +111. Battery Info
717 717  
718 718  Check the battery voltage for SDI-12-LB.
719 719  
... ... @@ -722,37 +722,216 @@
722 722  Ex2: 0x0B49 = 2889mV
723 723  
724 724  
725 -=== 2.4.4 Interrupt Pin ===
736 +1.
737 +11.
738 +111. Interrupt Pin
726 726  
727 -
728 728  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]].
729 729  
730 -**Example:**
731 731  
743 +Example:
744 +
732 732  Ex1: 0x0B45:0x0B&0x80= 0x00    Normal uplink packet.
733 733  
734 734  Ex2: 0x8B49:0x8B&0x80= 0x80    Interrupt Uplink Packet.
735 735  
736 736  
737 -=== 2.4.5 Payload version ===
750 +1.
751 +11.
752 +111. Payload version
738 738  
739 739  
740 740  
741 -=== 2.4.6 ​Decode payload in The Things Network ===
742 742  
743 743  
758 +1.
759 +11.
760 +111. ​Decode payload in The Things Network
761 +
744 744  While using TTN network, you can add the payload format to decode the payload.
745 745  
746 -[[image:1675216779406-595.png]]
764 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image035.png]]
747 747  
748 748  
749 749  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.
750 750  
751 -SDI-12-LB TTN Payload Decoder: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>url:https://github.com/dragino/dragino-end-node-decoder]]
752 752  
770 +下面的解码生成超链接放进去.
753 753  
772 +function Decoder(bytes, port) {
754 754  
755 -1.
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.
756 756  11. Uplink Interval
757 757  
758 758  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:
... ... @@ -761,7 +761,7 @@
761 761  
762 762  
763 763  
764 -1.
954 +1.
765 765  11. Frequency Plans
766 766  
767 767  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.
... ... @@ -771,7 +771,7 @@
771 771  
772 772  
773 773  
774 -1.
964 +1.
775 775  11. Firmware Change Log
776 776  
777 777  **Firmware download link:**
... ... @@ -810,7 +810,7 @@
810 810  
811 811  
812 812  
813 -1.
1003 +1.
814 814  11. Set Transmit Interval Time
815 815  
816 816  Feature: Change LoRaWAN End Node Transmit Interval.
... ... @@ -840,7 +840,7 @@
840 840  * Example 1: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds
841 841  * Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds
842 842  
843 -1.
1033 +1.
844 844  11. Set Interrupt Mode
845 845  
846 846  Feature, Set Interrupt mode for GPIO_EXIT.
... ... @@ -873,7 +873,7 @@
873 873  * Example 1: Downlink Payload: 06000000 ~/~/ Turn off interrupt mode
874 874  * Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger
875 875  
876 -1.
1066 +1.
877 877  11. Set the output time
878 878  
879 879  Feature, Control the output 3V3 , 5V or 12V.
... ... @@ -954,7 +954,7 @@
954 954  * Example 5: Downlink Payload: 070301F4  -> AT+12VT=500
955 955  * Example 6: Downlink Payload: 07030000  -> AT+12VT=0
956 956  
957 -1.
1147 +1.
958 958  11. Set the all data mode
959 959  
960 960  Feature, Set the all data mode.
... ... @@ -977,7 +977,7 @@
977 977  * Example 1: Downlink Payload: AB 00 ~/~/ AT+ALLDATAMOD=0
978 978  * Example 2: Downlink Payload: AB 01 ~/~/ AT+ALLDATAMOD=1
979 979  
980 -1.
1170 +1.
981 981  11. Set the splicing payload for uplink
982 982  
983 983  Feature, splicing payload for uplink.
... ... @@ -1018,7 +1018,7 @@
1018 1018  This means that the interval is set to 0x000014=20S
1019 1019  
1020 1020  
1021 -1.
1211 +1.
1022 1022  11. Set the payload version
1023 1023  
1024 1024  Feature, Set the payload version.
... ... @@ -1057,7 +1057,7 @@
1057 1057  SDI-12-LB:  2.45v ~~ 3.6v
1058 1058  
1059 1059  
1060 -1.
1250 +1.
1061 1061  11. Replace Battery
1062 1062  
1063 1063  Any battery with range 2.45 ~~ 3.6v can be a replacement. We recommend to use Li-SOCl2 Battery.
... ... @@ -1066,7 +1066,7 @@
1066 1066  
1067 1067  
1068 1068  
1069 -1.
1259 +1.
1070 1070  11. Power Consumption Analyze
1071 1071  
1072 1072  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.
... ... @@ -1106,14 +1106,14 @@
1106 1106  
1107 1107  
1108 1108  1.
1109 -11.
1299 +11.
1110 1110  111. ​Battery Note
1111 1111  
1112 1112  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.
1113 1113  
1114 1114  
1115 -1.
1116 -11.
1305 +1.
1306 +11.
1117 1117  111. ​Replace the battery
1118 1118  
1119 1119  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.
... ... @@ -1134,7 +1134,7 @@
1134 1134  [[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/]]
1135 1135  
1136 1136  
1137 -1.
1327 +1.
1138 1138  11. AT Command Set
1139 1139  
1140 1140  1. OTA firmware update
... ... @@ -1167,6 +1167,7 @@
1167 1167  * Weight / pcs : g
1168 1168  
1169 1169  
1360 +
1170 1170  1. ​Support
1171 1171  
1172 1172  * 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.
Copyright ©2010-2024 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0