Last modified by Mengting Qiu on 2023/12/14 11:15

From version 79.14
edited by Xiaoling
on 2023/06/13 15:20
Change comment: There is no comment for this version
To version 118.1
edited by Xiaoling
on 2023/11/28 13:38
Change comment: Uploaded new attachment "1701149922873-259.png", version {1}

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,1 @@
1 -DDS20-LB -- LoRaWAN Ultrasonic Liquid Level Sensor User Manual
1 +DS20L -- LoRaWAN Smart Distance Detector User Manual
Content
... ... @@ -1,5 +1,5 @@
1 1  (% style="text-align:center" %)
2 -[[image:image-20230613133716-2.png||height="717" width="717"]]
2 +[[image:image-20231110085342-2.png||height="481" width="481"]]
3 3  
4 4  
5 5  
... ... @@ -19,436 +19,427 @@
19 19  
20 20  = 1. Introduction =
21 21  
22 -== 1.1 What is LoRaWAN Ultrasonic liquid level Sensor ==
22 +== 1.1 What is LoRaWAN Smart Distance Detector ==
23 23  
24 24  
25 -The Dragino DDS20-LB is a (% style="color:blue" %)**LoRaWAN Ultrasonic liquid level sensor**(%%) for Internet of Things solution. It uses (% style="color:blue" %)**none-contact method **(%%)to measure the (% style="color:blue" %)**height of liquid**(%%) in a container without opening the container, and send the value via LoRaWAN network to IoT Server.
25 +The Dragino (% style="color:blue" %)**DS20L is a smart distance detector**(%%) base on long-range wireless LoRaWAN technology. It uses (% style="color:blue" %)**LiDAR sensor**(%%) to detect the distance between DS20L and object, then DS20L will send the distance data to the IoT Platform via LoRaWAN. DS20L can measure range between 3cm ~~ 200cm.
26 26  
27 -The DDS20-LB sensor is installed directly below the container to detect the height of the liquid level. User doesn't need to open a hole on the container to be tested. The none-contact measurement makes the measurement safety, easier and possible for some strict situation. 
27 +DS20L allows users to send data and reach extremely long ranges via LoRaWAN. It provides ultra-long range spread spectrum communication and high interference immunity whilst minimizing current 
28 +consumption. It targets professional wireless sensor network applications such smart cities, building automation, and so on.
28 28  
29 -DDS20-LB uses (% style="color:blue" %)**ultrasonic sensing technology**(%%) for distance measurement. DDS20-LB is of high accuracy to measure various liquid such as: (% style="color:blue" %)**toxic substances**(%%), (% style="color:blue" %)**strong acids**(%%), (% style="color:blue" %)**strong alkalis**(%%) and (% style="color:blue" %)**various pure liquids**(%%) in high-temperature and high-pressure airtight containers.
30 +DS20L has a (% style="color:blue" %)**built-in 2400mAh non-chargeable battery**(%%) for long-term use up to several years*. Users can also power DS20L with an external power source for (% style="color:blue" %)**continuous measuring and distance alarm / counting purposes.**
30 30  
31 -The LoRa wireless technology used in DDS20-LB allows device to send data and reach extremely long ranges at low data-rates. It provides ultra-long range spread spectrum communication and high interference immunity whilst minimizing current consumption.
32 +DS20L is fully compatible with (% style="color:blue" %)**LoRaWAN v1.0.3 Class A protocol**(%%), it can work with a standard LoRaWAN gateway.
32 32  
33 -DDS20-LB (% style="color:blue" %)**supports BLE configure**(%%) and (% style="color:blue" %)**wireless OTA update**(%%) which make user easy to use.
34 34  
35 -DDS20-LB is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long term use up to 5 years.
35 +[[image:image-20231110102635-5.png||height="402" width="807"]]
36 36  
37 -Each DDS20-LB is pre-load with a set of unique keys for LoRaWAN registrations, register these keys to local LoRaWAN server and it will auto connect after power on.
38 38  
39 -[[image:image-20230613140115-3.png||height="453" width="800"]]
40 -
41 -
42 42  == 1.2 ​Features ==
43 43  
44 44  
45 -* LoRaWAN 1.0.3 Class A
46 -* Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865
47 -* Ultra-low power consumption
48 -* Liquid Level Measurement by Ultrasonic technology
49 -* Measure through container, No need to contact Liquid
50 -* Valid level range 20mm - 2000mm
51 -* Accuracy: ±(5mm+S*0.5%) (S: Measure Value)
52 -* Cable Length : 25cm
53 -* Support Bluetooth v5.1 and LoRaWAN remote configure
54 -* Support wireless OTA update firmware
41 +* LoRaWAN Class A protocol
42 +* LiDAR distance detector, range 3 ~~ 200cm
43 +* Periodically detect or continuously detect mode
55 55  * AT Commands to change parameters
56 -* Downlink to change configure
57 -* IP66 Waterproof Enclosure
58 -* 8500mAh Battery for long term use
45 +* Remotely configure parameters via LoRaWAN Downlink
46 +* Alarm & Counting mode
47 +* Firmware upgradable via program port or LoRa protocol
48 +* Built-in 2400mAh battery or power by external power source
59 59  
60 60  == 1.3 Specification ==
61 61  
62 62  
63 -(% style="color:#037691" %)**Common DC Characteristics:**
53 +(% style="color:#037691" %)**LiDAR Sensor:**
64 64  
65 -* Supply Voltage: built in 8500mAh Li-SOCI2 battery , 2.5v ~~ 3.6v
66 -* Operating Temperature: -40 ~~ 85°C
55 +* Operation Temperature: -40 ~~ 80 °C
56 +* Operation Humidity: 0~~99.9%RH (no Dew)
57 +* Storage Temperature: -10 ~~ 45°C
58 +* Measure Range: 3cm~~200cm @ 90% reflectivity
59 +* Accuracy: ±2cm @ (3cm~~100cm); ±5% @ (100~~200cm)
60 +* ToF FoV: ±9°, Total 18°
61 +* Light source: VCSEL
67 67  
68 -(% style="color:#037691" %)**LoRa Spec:**
69 69  
70 -* Frequency Range,  Band 1 (HF): 862 ~~ 1020 Mhz
71 -* Max +22 dBm constant RF output vs.
72 -* RX sensitivity: down to -139 dBm.
73 -* Excellent blocking immunity
74 74  
75 -(% style="color:#037691" %)**Battery:**
65 +== 1.4 Power Consumption ==
76 76  
77 -* Li/SOCI2 un-chargeable battery
78 -* Capacity: 8500mAh
79 -* Self-Discharge: <1% / Year @ 25°C
80 -* Max continuously current: 130mA
81 -* Max boost current: 2A, 1 second
82 82  
83 -(% style="color:#037691" %)**Power Consumption**
68 +(% style="color:#037691" %)**Battery Power Mode:**
84 84  
85 -* Sleep Mode: 5uA @ 3.3v
86 -* LoRa Transmit Mode: 125mA @ 20dBm, 82mA @ 14dBm
70 +* Idle: 0.003 mA @ 3.3v
71 +* Max : 360 mA
87 87  
88 -== 1.4 Suitable Container & Liquid ==
73 +(% style="color:#037691" %)**Continuously mode**:
89 89  
75 +* Idle: 21 mA @ 3.3v
76 +* Max : 360 mA
90 90  
91 -* Solid Wall container such as: steel, iron, glass, ceramics, non-foaming plastics etc.
92 -* Container shape is regular, and surface is smooth.
93 -* Container Thickness:
94 -** Pure metal material.  2~~8mm, best is 3~~5mm
95 -** Pure non metal material: <10 mm
96 -* Pure liquid without irregular deposition.(% style="display:none" %)
97 97  
98 -== 1.5 Install DDS20-LB ==
99 99  
80 += 2. Configure DS20L to connect to LoRaWAN network =
100 100  
101 -(% style="color:blue" %)**Step 1**(%%):  Choose the installation point.
82 +== 2.1 How it works ==
102 102  
103 -DDS20-LB (% style="color:red" %)**MUST**(%%) be installed on the container bottom middle position.
104 104  
105 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS20%20-%20LoRaWAN%20Liquid%20Level%20Sensor%20User%20Manual/WebHome/image-20220615091045-3.png?rev=1.1||alt="image-20220615091045-3.png"]]
85 +The DS20L is configured as (% style="color:#037691" %)**LoRaWAN OTAA Class A**(%%) mode by default. It has OTAA keys to join LoRaWAN network. To connect a local LoRaWAN network, you need to input the OTAA keys in the LoRaWAN IoT server and press the button to activate the DS20L. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 20 minutes.
106 106  
87 +(% style="display:none" %) (%%)
107 107  
108 -(((
109 -(% style="color:blue" %)**Step 2**(%%):  Polish the installation point.
110 -)))
89 +== 2.2 ​Quick guide to connect to LoRaWAN server (OTAA) ==
111 111  
112 -(((
113 -For Metal Surface with paint, it is important to polish the surface, first use crude sand paper to polish the paint level , then use exquisite sand paper to polish the metal level to make it shine & smooth.
114 -)))
115 115  
116 -[[image:image-20230613143052-5.png]]
92 +Following is an example for how to join the [[TTN v3 LoRaWAN Network>>url:https://console.cloud.thethings.network/]]. Below is the network structure; we use the [[LPS8v2>>url:https://www.dragino.com/products/lora-lorawan-gateway/item/228-lps8v2.html]] as a LoRaWAN gateway in this example.
117 117  
94 +The LPS8v2 is already set to connected to [[TTN network >>url:https://console.cloud.thethings.network/]], so what we need to now is configure the TTN server.(% style="display:none" %)
118 118  
119 -No polish needed if the container is shine metal surface without paint or non-metal container.
96 +[[image:image-20231110102635-5.png||height="402" width="807"]](% style="display:none" %)
120 120  
121 -[[image:image-20230613143125-6.png]]
98 +(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from DS20L.
122 122  
100 +Each DS20L is shipped with a sticker with the default device EUI as below:
123 123  
124 -(((
125 -(% style="color:blue" %)**Step3:   **(%%)Test the installation point.
126 -)))
102 +[[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]]
127 127  
128 -(((
129 -Power on DDS20-LB, check if the blue LED is on, If the blue LED is on, means the sensor works. Then put ultrasonic coupling paste on the sensor and put it tightly on the installation point.
130 -)))
131 131  
132 -(((
133 -It is necessary to put the coupling paste between the sensor and the container, otherwise DDS20-LB won't detect the liquid level.
134 -)))
105 +You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
135 135  
136 -(((
137 -After paste the DDS20-LB well, power on DDS20-LB. In the first 30 seconds of booting, device will check the sensors status and BLUE LED will show the status as below. After 30 seconds, BLUE LED will be off to save battery life.
138 -)))
139 139  
108 +(% style="color:blue" %)**Register the device**
140 140  
141 -(((
142 -(% style="color:red" %)**LED Status:**
143 -)))
110 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/1654935135620-998.png?rev=1.1||alt="1654935135620-998.png"]]
144 144  
145 -* (((
146 -Onboard LED: When power on device, the onboard LED will fast blink 4 times which means detect the sensor well.
147 -)))
148 148  
149 -* (((
150 -(% style="color:blue" %)**BLUE LED**(% style="color:red" %)** always ON**(%%): Sensor is power on but doesn't detect liquid. There is problem in installation point.
151 -)))
152 -* (((
153 -(% style="color:blue" %)**BLUE LED**(% style="color:red" %)** slowly blinking**(%%): Sensor detects Liquid Level, The installation point is good.
154 -)))
113 +(% style="color:blue" %)**Add APP EUI and DEV EUI**
155 155  
156 -(((
157 -LDDS20 will enter into low power mode at 30 seconds after system reset or power on, Blue LED will be off after that.
158 -)))
115 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-4.png?width=753&height=551&rev=1.1||alt="图片-20220611161308-4.png"]]
159 159  
160 160  
161 -(((
162 -(% style="color:red" %)**Note 2:**
163 -)))
118 +(% style="color:blue" %)**Add APP EUI in the application**
164 164  
165 -(((
166 -(% style="color:red" %)**Ultrasonic coupling paste** (%%) is subjected in most shipping way. So the default package doesn't include it and user needs to purchase locally.
167 -)))
168 168  
121 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-5.png?width=742&height=601&rev=1.1||alt="图片-20220611161308-5.png"]]
169 169  
170 -(((
171 -(% style="color:blue" %)**Step4:   **(%%)Install use Epoxy ab glue.
172 -)))
173 173  
174 -(((
175 -Prepare Eproxy AB glue.
176 -)))
124 +(% style="color:blue" %)**Add APP KEY**
177 177  
178 -(((
179 -Put Eproxy AB glue in the sensor and press it hard on the container installation point.
180 -)))
126 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-6.png?width=744&height=485&rev=1.1||alt="图片-20220611161308-6.png"]]
181 181  
182 -(((
183 -Reset DDS20-LB and see if the BLUE LED is slowly blinking.
184 -)))
185 185  
186 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS20%20-%20LoRaWAN%20Liquid%20Level%20Sensor%20User%20Manual/WebHome/image-20220615091045-8.png?width=341&height=203&rev=1.1||alt="image-20220615091045-8.png"]] [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS20%20-%20LoRaWAN%20Liquid%20Level%20Sensor%20User%20Manual/WebHome/image-20220615091045-9.png?width=284&height=200&rev=1.1||alt="image-20220615091045-9.png"]]
129 +(% style="color:blue" %)**Step 2:**(%%) Activate on DS20L
187 187  
188 188  
189 -(((
190 -(% style="color:red" %)**Note 1:**(%%)** (% style="color:blue" %)Eproxy AB glue(%%)** needs 3~~ 5 minutes to stable attached. we can use other glue material to keep it in the position.
191 -)))
132 +Press the button for 5 seconds to activate the DS20L.
192 192  
193 -(((
194 -(% style="color:red" %)**Note 2:**(%%)** (% style="color:blue" %)Eproxy AB glue(%%)** is subjected in most shipping way. So the default package doesn't include it and user needs to purchase locally.
195 -)))
134 +(% style="color:green" %)**Green led**(%%) will fast blink 5 times, device will enter (% style="color:blue" %)**OTA mode**(%%) for 3 seconds. And then start to JOIN LoRaWAN network. (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.
196 196  
136 +After join success, it will start to upload messages to TTN and you can see the messages in the panel.
197 197  
198 -== 1.6 Applications ==
199 199  
139 +== 2.3 ​Uplink Payload ==
200 200  
201 -* Smart liquid control solution.
141 +=== 2.3.1 Device Status, FPORT~=5 ===
202 202  
203 -* Smart liquefied gas solution.
204 204  
205 -== 1.7 Precautions ==
144 +Users can use the downlink command(**0x26 01**) to ask DS20L to send device configure detail, include device configure status. DS20L will uplink a payload via FPort=5 to server.
206 206  
146 +The Payload format is as below.
207 207  
208 -* At room temperature, containers of different materials, such as steel, glass, iron, ceramics, non-foamed plastics and other dense materials, have different detection blind areas and detection limit heights.
148 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
149 +|=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
150 +**Size(bytes)**
151 +)))|=(% style="width: 100px; background-color: #4F81BD;color:white;" %)**1**|=(% style="width: 100px; background-color: #4F81BD;color:white;" %)**2**|=(% style="background-color: #4F81BD;color:white; width: 100px;" %)**1**|=(% style="background-color: #4F81BD;color:white; width: 100px;" %)**1**|=(% style="background-color: #4F81BD;color:white; width: 50px;" %)**2**
152 +|(% style="width:62.5px" %)Value|(% style="width:110px" %)Sensor Model|(% style="width:48px" %)Firmware Version|(% style="width:94px" %)Frequency Band|(% style="width:91px" %)Sub-band|(% style="width:60px" %)BAT
209 209  
210 -* For containers of the same material at room temperature, the detection blind zone and detection limit height are also different for the thickness of the container.
154 +Example parse in TTNv3
211 211  
212 -* When the detected liquid level exceeds the effective detection value of the sensor, and the liquid level of the liquid to be measured shakes or tilts, the detected liquid height is unstable.(% style="display:none" %)
156 +[[image:image-20230805103904-1.png||height="131" width="711"]]
213 213  
214 -== 1.8 Sleep mode and working mode ==
158 +(% style="color:blue" %)**Sensor Model**(%%): For DS20L, this value is 0x24
215 215  
160 +(% style="color:blue" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
216 216  
217 -(% style="color:blue" %)**Deep Sleep Mode: **(%%)Sensor doesn't have any LoRaWAN activate. This mode is used for storage and shipping to save battery life.
162 +(% style="color:blue" %)**Frequency Band**:
218 218  
219 -(% style="color:blue" %)**Working Mode:** (%%)In this mode, Sensor will work as LoRaWAN Sensor to Join LoRaWAN network and send out sensor data to server. Between each sampling/tx/rx periodically, sensor will be in IDLE mode), in IDLE mode, sensor has the same power consumption as Deep Sleep mode.
164 +0x01: EU868
220 220  
166 +0x02: US915
221 221  
222 -== 1.9 Button & LEDs ==
168 +0x03: IN865
223 223  
170 +0x04: AU915
224 224  
225 -[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675071855856-879.png]]
172 +0x05: KZ865
226 226  
174 +0x06: RU864
227 227  
228 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
229 -|=(% style="width: 167px;background-color:#D9E2F3;color:#0070C0" %)**Behavior on ACT**|=(% style="width: 117px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 225px;background-color:#D9E2F3;color:#0070C0" %)**Action**
230 -|(% style="width:167px" %)Pressing ACT between 1s < time < 3s|(% style="width:117px" %)Send an uplink|(% style="width:225px" %)(((
231 -If sensor is already Joined to LoRaWAN network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once.
232 -Meanwhile, BLE module will be active and user can connect via BLE to configure device.
233 -)))
234 -|(% style="width:167px" %)Pressing ACT for more than 3s|(% style="width:117px" %)Active Device|(% style="width:225px" %)(((
235 -(% style="color:green" %)**Green led**(%%) will fast blink 5 times, device will enter (% style="color:#037691" %)**OTA mode**(%%) for 3 seconds. And then start to JOIN LoRaWAN network.
236 -(% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.
237 -Once sensor is active, BLE module will be active and user can connect via BLE to configure device, no matter if device join or not join LoRaWAN network.
238 -)))
239 -|(% style="width:167px" %)Fast press ACT 5 times.|(% style="width:117px" %)Deactivate Device|(% style="width:225px" %)(% style="color:red" %)**Red led**(%%) will solid on for 5 seconds. Means device is in Deep Sleep Mode.
176 +0x07: AS923
240 240  
241 -== 1.10 BLE connection ==
178 +0x08: AS923-1
242 242  
180 +0x09: AS923-2
243 243  
244 -DDS20-LB support BLE remote configure.
182 +0x0a: AS923-3
245 245  
246 -BLE can be used to configure the parameter of sensor or see the console output from sensor. BLE will be only activate on below case:
184 +0x0b: CN470
247 247  
248 -* Press button to send an uplink
249 -* Press button to active device.
250 -* Device Power on or reset.
186 +0x0c: EU433
251 251  
252 -If there is no activity connection on BLE in 60 seconds, sensor will shut down BLE module to enter low power mode.
188 +0x0d: KR920
253 253  
190 +0x0e: MA869
254 254  
255 -== 1.11 Pin Definitions ==
192 +(% style="color:blue" %)**Sub-Band**:
256 256  
257 -[[image:image-20230523174230-1.png]]
194 +AU915 and US915:value 0x00 ~~ 0x08
258 258  
196 +CN470: value 0x0B ~~ 0x0C
259 259  
260 -== 1.12 Mechanical ==
198 +Other Bands: Always 0x00
261 261  
200 +(% style="color:blue" %)**Battery Info**:
262 262  
263 -[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143884058-338.png]]
202 +Check the battery voltage.
264 264  
204 +Ex1: 0x0B45 = 2885mV
265 265  
266 -[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143899218-599.png]]
206 +Ex2: 0x0B49 = 2889mV
267 267  
268 268  
269 -[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143909447-639.png]]
209 +=== 2.3.2 Uplink Payload, FPORT~=2 ===
270 270  
271 271  
272 -(% style="color:blue" %)**Probe Mechanical:**
212 +(((
213 +DS20L will send this uplink **after** Device Status once join the LoRaWAN network successfully. And DS20L will:
273 273  
274 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS20%20-%20LoRaWAN%20Liquid%20Level%20Sensor%20User%20Manual/WebHome/image-20220615090910-1.png?rev=1.1||alt="image-20220615090910-1.png"]]
215 +periodically send this uplink every 20 minutes, this interval [[can be changed>>||anchor="H3.3.1SetTransmitIntervalTime"]].
275 275  
217 +Uplink Payload totals 11 bytes.
218 +)))
276 276  
277 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS20%20-%20LoRaWAN%20Liquid%20Level%20Sensor%20User%20Manual/WebHome/image-20220615090910-2.png?rev=1.1||alt="image-20220615090910-2.png"]]
220 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
221 +|=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
222 +**Size(bytes)**
223 +)))|=(% style="width: 30px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 80px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 50px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 70px;background-color:#4F81BD;color:white" %)**2**|=(% style="background-color:#4F81BD;color:white; width: 80px;" %)**1**|=(% style="background-color: #4F81BD;color:white; width: 70px;" %)**1**|=(% style="background-color: #4F81BD;color:white; width: 70px;" %)**1**
224 +|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)[[BAT>>||anchor="HBatteryInfo"]]|(% style="width:62.5px" %)(((
225 +[[Temperature DS18B20>>||anchor="HDS18B20Temperaturesensor"]]
226 +)))|[[Distance>>||anchor="HDistance"]]|[[Distance signal strength>>||anchor="HDistancesignalstrength"]]|(% style="width:122px" %)(((
227 +[[Interrupt flag & Interrupt_level>>||anchor="HInterruptPin26A0InterruptLevel"]]
228 +)))|(% style="width:54px" %)[[LiDAR temp>>||anchor="HLiDARtemp"]]|(% style="width:96px" %)(((
229 +[[Message Type>>||anchor="HMessageType"]]
230 +)))
278 278  
232 +[[image:image-20230805104104-2.png||height="136" width="754"]]
279 279  
280 -= 2. Configure DDS20-LB to connect to LoRaWAN network =
281 281  
282 -== 2.1 How it works ==
235 +==== (% style="color:blue" %)**Battery Info**(%%) ====
283 283  
284 284  
285 -The DDS20-LB is configured as (% style="color:#037691" %)**LoRaWAN OTAA Class A**(%%) mode by default. It has OTAA keys to join LoRaWAN network. To connect a local LoRaWAN network, you need to input the OTAA keys in the LoRaWAN IoT server and press the button to activate the DDS20-LB. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 20 minutes.
238 +Check the battery voltage for DS20L.
286 286  
287 -(% style="display:none" %) (%%)
240 +Ex1: 0x0B45 = 2885mV
288 288  
289 -== 2.2 ​Quick guide to connect to LoRaWAN server (OTAA) ==
242 +Ex2: 0x0B49 = 2889mV
290 290  
291 291  
292 -Following is an example for how to join the [[TTN v3 LoRaWAN Network>>url:https://console.cloud.thethings.network/]]. Below is the network structure; we use the [[LPS8v2>>url:https://www.dragino.com/products/lora-lorawan-gateway/item/228-lps8v2.html]] as a LoRaWAN gateway in this example.
245 +==== (% style="color:blue" %)**DS18B20 Temperature sensor**(%%) ====
293 293  
294 -The LPS8v2 is already set to connected to [[TTN network >>url:https://console.cloud.thethings.network/]], so what we need to now is configure the TTN server.
295 295  
296 -[[image:image-20230613140140-4.png||height="453" width="800"]](% style="display:none" %)
248 +This is optional, user can connect external DS18B20 sensor to the +3.3v, 1-wire and GND pin . and this field will report temperature.
297 297  
298 298  
299 -(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from DDS20-LB.
251 +**Example**:
300 300  
301 -Each DDS20-LB is shipped with a sticker with the default device EUI as below:
253 +If payload is: 0105H:  (0105 & FC00 == 0), temp = 0105H /10 = 26.1 degree
302 302  
303 -[[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]]
255 +If payload is: FF3FH :  (FF3F & FC00 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
304 304  
305 305  
306 -You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
258 +==== (% style="color:blue" %)**Distance**(%%) ====
307 307  
308 308  
309 -(% style="color:blue" %)**Register the device**
261 +Represents the distance value of the measurement output, the default unit is cm, and the value range parsed as a decimal number is 0-1200. In actual use, when the signal strength value Strength.
310 310  
311 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/1654935135620-998.png?rev=1.1||alt="1654935135620-998.png"]]
312 312  
264 +**Example**:
313 313  
314 -(% style="color:blue" %)**Add APP EUI and DEV EUI**
266 +If the data you get from the register is 0x0B 0xEA, the distance between the sensor and the measured object is 0BEA(H) = 3050 (D)/10 = 305cm.
315 315  
316 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-4.png?width=753&height=551&rev=1.1||alt="图片-20220611161308-4.png"]]
317 317  
269 +==== (% style="color:blue" %)**Distance signal strength**(%%) ====
318 318  
319 -(% style="color:blue" %)**Add APP EUI in the application**
320 320  
272 +Refers to the signal strength, the default output value will be between 0-65535. When the distance measurement gear is fixed, the farther the distance measurement is, the lower the signal strength; the lower the target reflectivity, the lower the signal strength. When Strength is greater than 100 and not equal to 65535, the measured value of Dist is considered credible.
321 321  
322 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-5.png?width=742&height=601&rev=1.1||alt="图片-20220611161308-5.png"]]
323 323  
275 +**Example**:
324 324  
325 -(% style="color:blue" %)**Add APP KEY**
277 +If payload is: 01D7(H)=471(D), distance signal strength=471, 471>100,471≠65535, the measured value of Dist is considered credible.
326 326  
327 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-6.png?width=744&height=485&rev=1.1||alt="图片-20220611161308-6.png"]]
279 +Customers can judge whether they need to adjust the environment based on the signal strength.
328 328  
329 329  
330 -(% style="color:blue" %)**Step 2:**(%%) Activate on DDS20-LB
282 +**1) When the sensor detects valid data:**
331 331  
284 +[[image:image-20230805155335-1.png||height="145" width="724"]]
332 332  
333 -Press the button for 5 seconds to activate the DDS20-LB.
334 334  
335 -(% style="color:green" %)**Green led**(%%) will fast blink 5 times, device will enter (% style="color:blue" %)**OTA mode**(%%) for 3 seconds. And then start to JOIN LoRaWAN network. (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.
287 +**2) When the sensor detects invalid data:**
336 336  
337 -After join success, it will start to upload messages to TTN and you can see the messages in the panel.
289 +[[image:image-20230805155428-2.png||height="139" width="726"]]
338 338  
339 339  
340 -== 2.3  ​Uplink Payload ==
292 +**3) When the sensor is not connected:**
341 341  
294 +[[image:image-20230805155515-3.png||height="143" width="725"]]
342 342  
343 -(((
344 -DDS20-LB will uplink payload via LoRaWAN with below payload format: 
345 -)))
346 346  
347 -(((
348 -Uplink payload includes in total 8 bytes.
349 -)))
297 +==== (% style="color:blue" %)**Interrupt Pin & Interrupt Level**(%%) ====
350 350  
351 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %)
352 -|=(% style="width: 62.5px;background-color:#D9E2F3;color:#0070C0" %)(((
353 -**Size(bytes)**
354 -)))|=(% style="width: 62.5px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="background-color:#D9E2F3;color:#0070C0" %)1|=(% style="background-color:#D9E2F3;color:#0070C0" %)2|=(% style="background-color:#D9E2F3;color:#0070C0" %)**1**
355 -|(% style="width:62.5px" %)**Value**|(% style="width:62.5px" %)[[BAT>>||anchor="H2.3.1A0BatteryInfo"]]|(((
356 -[[Distance>>||anchor="H2.3.2A0Distance"]]
357 -(unit: mm)
358 -)))|[[Digital Interrupt (Optional)>>||anchor="H2.3.3A0InterruptPin"]]|(((
359 -[[Temperature (Optional )>>||anchor="H2.3.4A0DS18B20Temperaturesensor"]]
360 -)))|[[Sensor Flag>>||anchor="H2.3.5A0SensorFlag"]]
361 361  
362 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS20%20-%20LoRaWAN%20Liquid%20Level%20Sensor%20User%20Manual/WebHome/1654850511545-399.png?rev=1.1||alt="1654850511545-399.png"]]
300 +This data field shows if this packet is generated by interrupt or not. [[Click here>>||anchor="H3.3.2SetInterruptMode"]] for the hardware and software set up.
363 363  
302 +Note: The Internet Pin is a separate pin in the screw terminal. See pin mapping of GPIO_EXTI .
364 364  
365 -=== 2.3.1  Battery Info ===
304 +**Example:**
366 366  
306 +If byte[0]&0x01=0x00 : Normal uplink packet.
367 367  
368 -Check the battery voltage for DDS20-LB.
308 +If byte[0]&0x01=0x01 : Interrupt Uplink Packet.
369 369  
370 -Ex1: 0x0B45 = 2885mV
371 371  
372 -Ex2: 0x0B49 = 2889mV
311 +==== (% style="color:blue" %)**LiDAR temp**(%%) ====
373 373  
374 374  
375 -=== 2.3.2  Distance ===
314 +Characterize the internal temperature value of the sensor.
376 376  
316 +**Example: **
317 +If payload is: 1C(H) <<24>>24=28(D),LiDAR temp=28℃.
318 +If payload is: F2(H) <<24>>24=-14(D),LiDAR temp=-14℃.
377 377  
320 +
321 +==== (% style="color:blue" %)**Message Type**(%%) ====
322 +
323 +
378 378  (((
379 -Get the distance. Flat object range 20mm - 2000mm.
325 +For a normal uplink payload, the message type is always 0x01.
380 380  )))
381 381  
382 382  (((
383 -For example, if the data you get from the register is **0x06 0x05**, the distance between the sensor and the measured object is(% style="color:#4472c4" %)** **
329 +Valid Message Type:
330 +)))
384 384  
385 -(% style="color:blue" %)**0605(H) = 1541 (D) = 1541 mm.**
332 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:499px" %)
333 +|=(% style="width: 161px;background-color:#4F81BD;color:white" %)**Message Type Code**|=(% style="width: 164px;background-color:#4F81BD;color:white" %)**Description**|=(% style="width: 174px;background-color:#4F81BD;color:white" %)**Payload**
334 +|(% style="width:160px" %)0x01|(% style="width:163px" %)Normal Uplink|(% style="width:173px" %)Normal Uplink Payload
335 +|(% style="width:160px" %)0x02|(% style="width:163px" %)Reply configures info|(% style="width:173px" %)Configure Info Payload
336 +
337 +[[image:image-20230805150315-4.png||height="233" width="723"]]
338 +
339 +
340 +=== 2.3.3 Historical measuring distance, FPORT~=3 ===
341 +
342 +
343 +DS20L stores sensor values and users can retrieve these history values via the [[downlink command>>||anchor="H2.5.4Pollsensorvalue"]].
344 +
345 +The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time measuring distance.
346 +
347 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
348 +|=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
349 +**Size(bytes)**
350 +)))|=(% style="width: 80px;background-color:#4F81BD;color:white" %)1|=(% style="width: 80px;background-color:#4F81BD;color:white" %)**1**|=(% style="width: 50px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 70px;background-color:#4F81BD;color:white" %)**2**|=(% style="background-color:#4F81BD; color: white; width: 85px;" %)**1**|=(% style="background-color: #4F81BD; color: white; width: 85px;" %)4
351 +|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)Interrupt flag & Interrupt_level|(% style="width:62.5px" %)(((
352 +Reserve(0xFF)
353 +)))|Distance|Distance signal strength|(% style="width:88px" %)(((
354 +LiDAR temp
355 +)))|(% style="width:85px" %)Unix TimeStamp
356 +
357 +**Interrupt flag & Interrupt level:**
358 +
359 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:480px" %)
360 +|=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
361 +**Size(bit)**
362 +)))|=(% style="width: 90px;background-color:#4F81BD;color:white" %)**bit7**|=(% style="width: 90px;background-color:#4F81BD;color:white" %)**bit6**|=(% style="width: 60px;background-color:#4F81BD;color:white" %)**[bit5:bit2]**|=(% style="width: 90px; background-color: #4F81BD; color: white;" %)**bit1**|=(% style="background-color: #4F81BD; color: white; width: 90px;" %)**bit0**
363 +|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)No ACK message|(% style="width:62.5px" %)Poll Message Flag|Reserve|(% style="width:91px" %)Interrupt level|(% style="width:88px" %)(((
364 +Interrupt flag
386 386  )))
387 387  
388 -* If the sensor value is 0x0000, it means system doesn't detect ultrasonic sensor.
367 +* (((
368 +Each data entry is 11 bytes and has the same structure as [[Uplink Payload>>||anchor="H2.3.2UplinkPayload2CFPORT3D2"]], to save airtime and battery, DS20L will send max bytes according to the current DR and Frequency bands.
369 +)))
389 389  
390 -* If the sensor value lower than 0x0014 (20mm), the sensor value will be invalid.
371 +For example, in the US915 band, the max payload for different DR is:
391 391  
392 -=== 2.3.3  Interrupt Pin ===
373 +**a) DR0:** max is 11 bytes so one entry of data
393 393  
375 +**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
394 394  
395 -This data field shows if this packet is generated by interrupt or not. [[Click here>>||anchor="H3.3.2SetInterruptMode"]] for the hardware and software set up.
377 +**c) DR2:** total payload includes 11 entries of data
396 396  
397 -**Example:**
379 +**d) DR3:** total payload includes 22 entries of data.
398 398  
399 -0x00: Normal uplink packet.
381 +If DS20L doesn't have any data in the polling time. It will uplink 11 bytes of 0
400 400  
401 -0x01: Interrupt Uplink Packet.
402 402  
384 +**Downlink:**
403 403  
404 -=== 2.3.4  DS18B20 Temperature sensor ===
386 +0x31 64 CC 68 0C 64 CC 69 74 05
405 405  
388 +[[image:image-20230805144936-2.png||height="113" width="746"]]
406 406  
407 -This is optional, user can connect external DS18B20 sensor to the +3.3v, 1-wire and GND pin . and this field will report temperature.
390 +**Uplink:**
408 408  
409 -**Example**:
392 +43 FF 0E 10 00 B0 1E 64 CC 68 0C 40 FF 0D DE 00 A8 1E 64 CC 68 29 40 FF 09 92 00 D3 1E 64 CC 68 65 40 FF 02 3A 02 BC 1E 64 CC 68 A1 41 FF 0E 1A 00 A4 1E 64 CC 68 C0 40 FF 0D 2A 00 B8 1E 64 CC 68 E8 40 FF 00 C8 11 6A 1E 64 CC 69 24 40 FF 0E 24 00 AD 1E 64 CC 69 6D
410 410  
411 -If payload is: 0105H:  (0105 & FC00 == 0), temp = 0105H /10 = 26.1 degree
412 412  
413 -If payload is: FF3FH :  (FF3F & FC00 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
395 +**Parsed Value:**
414 414  
397 +[DISTANCE , DISTANCE_SIGNAL_STRENGTH,LIDAR_TEMP,EXTI_STATUS , EXTI_FLAG , TIME]
415 415  
416 -=== 2.3.5  Sensor Flag ===
417 417  
400 +[360,176,30,High,True,2023-08-04 02:53:00],
418 418  
419 -(((
420 -0x01: Detect Ultrasonic Sensor
421 -)))
402 +[355,168,30,Low,False,2023-08-04 02:53:29],
422 422  
423 -(((
424 -0x00: No Ultrasonic Sensor
425 -)))
404 +[245,211,30,Low,False,2023-08-04 02:54:29],
426 426  
406 +[57,700,30,Low,False,2023-08-04 02:55:29],
427 427  
428 -=== 2.3.6  Decode payload in The Things Network ===
408 +[361,164,30,Low,True,2023-08-04 02:56:00],
429 429  
410 +[337,184,30,Low,False,2023-08-04 02:56:40],
430 430  
431 -While using TTN network, you can add the payload format to decode the payload.
412 +[20,4458,30,Low,False,2023-08-04 02:57:40],
432 432  
433 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS75%20-%20LoRaWAN%20Distance%20Detection%20Sensor%20User%20Manual/WebHome/1654850829385-439.png?rev=1.1||alt="1654850829385-439.png"]]
414 +[362,173,30,Low,False,2023-08-04 02:58:53],
434 434  
435 -The payload decoder function for TTN V3 is here:
436 436  
437 -(((
438 -DDS20-LB TTN V3 Payload Decoder:  [[ttps:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]]
439 -)))
417 +**History read from serial port:**
440 440  
419 +[[image:image-20230805145056-3.png]]
441 441  
442 -== 2.4  Uplink Interval ==
443 443  
422 +=== 2.3.4 Decode payload in The Things Network ===
444 444  
445 -The DDS20-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: [[Change Uplink Interval>>||anchor="H3.3.1SetTransmitIntervalTime"]]
446 446  
425 +While using TTN network, you can add the payload format to decode the payload.
447 447  
448 -== 2.5  ​Show Data in DataCake IoT Server ==
427 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LLDS12-LoRaWAN%20LiDAR%20ToF%20Distance%20Sensor%20User%20Manual/WebHome/1654592762713-715.png?rev=1.1||alt="1654592762713-715.png"]]
449 449  
450 450  
451 451  (((
431 +The payload decoder function for TTN is here:
432 +)))
433 +
434 +(((
435 +DS20L TTN Payload Decoder:  [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]]
436 +)))
437 +
438 +
439 +== 2.4 ​Show Data in DataCake IoT Server ==
440 +
441 +
442 +(((
452 452  [[DATACAKE>>url:https://datacake.co/]] provides a human friendly interface to show the sensor data, once we have data in TTN, we can use [[DATACAKE>>url:https://datacake.co/]] to connect to TTN and see the data in DATACAKE. Below are the steps:
453 453  )))
454 454  
... ... @@ -470,7 +470,7 @@
470 470  
471 471  (% style="color:blue" %)**Step 3**(%%)**: Create an account or log in Datacake.**
472 472  
473 -(% style="color:blue" %)**Step 4**(%%)**: Search the DDS20-LB and add DevEUI.**
464 +(% style="color:blue" %)**Step 4**(%%)**: Search the DS20L and add DevEUI.**
474 474  
475 475  [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS75%20-%20LoRaWAN%20Distance%20Detection%20Sensor%20User%20Manual/WebHome/1654851029373-510.png?rev=1.1||alt="1654851029373-510.png"]]
476 476  
... ... @@ -480,35 +480,29 @@
480 480  [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS75%20-%20LoRaWAN%20Distance%20Detection%20Sensor%20User%20Manual/WebHome/image-20220610165129-11.png?width=1088&height=595&rev=1.1||alt="image-20220610165129-11.png"]]
481 481  
482 482  
474 +== 2.5 Datalog Feature ==
483 483  
484 -== 2.6 Datalog Feature ==
485 485  
477 +Datalog Feature is to ensure IoT Server can get all sampling data from Sensor even if the LoRaWAN network is down. For each sampling, DS20L will store the reading for future retrieving purposes.
486 486  
487 -Datalog Feature is to ensure IoT Server can get all sampling data from Sensor even if the LoRaWAN network is down. For each sampling, DDS20-LB will store the reading for future retrieving purposes.
488 488  
480 +=== 2.5.1 Ways to get datalog via LoRaWAN ===
489 489  
490 -=== 2.6.1 Ways to get datalog via LoRaWAN ===
491 491  
483 +Set PNACKMD=1, DS20L will wait for ACK for every uplink, when there is no LoRaWAN network, DS20L 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.
492 492  
493 -Set PNACKMD=1, DDS20-LB will wait for ACK for every uplink, when there is no LoRaWAN network,DDS20-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.
494 -
495 495  * (((
496 -a) DDS20-LB will do an ACK check for data records sending to make sure every data arrive server.
486 +a) DS20L will do an ACK check for data records sending to make sure every data arrive server.
497 497  )))
498 498  * (((
499 -b) DDS20-LB will send data in **CONFIRMED Mode** when PNACKMD=1, but DDS20-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 DDS20-LB gets a ACK, DDS20-LB will consider there is a network connection and resend all NONE-ACK messages.
489 +b) DS20L will send data in **CONFIRMED Mode** when PNACKMD=1, but DS20L 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 DS20L gets a ACK, DS20L will consider there is a network connection and resend all NONE-ACK messages.
500 500  )))
501 501  
502 -Below is the typical case for the auto-update datalog feature (Set PNACKMD=1)
492 +=== 2.5.2 Unix TimeStamp ===
503 503  
504 -[[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"]]
505 505  
495 +DS20L uses Unix TimeStamp format based on
506 506  
507 -=== 2.6.2 Unix TimeStamp ===
508 -
509 -
510 -DDS20-LB uses Unix TimeStamp format based on
511 -
512 512  [[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"]]
513 513  
514 514  User can get this time from link:  [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] :
... ... @@ -521,23 +521,23 @@
521 521  So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25
522 522  
523 523  
524 -=== 2.6.3 Set Device Time ===
509 +=== 2.5.3 Set Device Time ===
525 525  
526 526  
527 527  User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command.
528 528  
529 -Once DDS20-LB Joined LoRaWAN network, it will send the MAC command (DeviceTimeReq) and the server will reply with (DeviceTimeAns) to send the current time to DDS20-LB. If DDS20-LB fails to get the time from the server, DDS20-LB will use the internal time and wait for next time request (AT+SYNCTDC to set the time request period, default is 10 days).
514 +Once DS20L Joined LoRaWAN network, it will send the MAC command (DeviceTimeReq) and the server will reply with (DeviceTimeAns) to send the current time to DS20L. If DS20L fails to get the time from the server, DS20L will use the internal time and wait for next time request (AT+SYNCTDC to set the time request period, default is 10 days).
530 530  
531 531  (% 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.**
532 532  
533 533  
534 -=== 2.6.4 Poll sensor value ===
519 +=== 2.5.4 Poll sensor value ===
535 535  
536 536  
537 537  Users can poll sensor values based on timestamps. Below is the downlink command.
538 538  
539 539  (% border="1" cellspacing="5" style="background-color:#f2f2f2; width:425.818px" %)
540 -|(% colspan="4" style="background-color:#d9e2f3; color:#0070c0; width:423px" %)**Downlink Command to poll Open/Close status (0x31)**
525 +|(% colspan="4" style="background-color:#4f81bd; color:white; width:423px" %)**Downlink Command to poll Open/Close status (0x31)**
541 541  |(% style="width:58px" %)**1byte**|(% style="width:127px" %)**4bytes**|(% style="width:124px" %)**4bytes**|(% style="width:114px" %)**1byte**
542 542  |(% style="width:58px" %)31|(% style="width:127px" %)Timestamp start|(% style="width:124px" %)Timestamp end|(% style="width:114px" %)Uplink Interval
543 543  
... ... @@ -554,24 +554,24 @@
554 554  )))
555 555  
556 556  (((
557 -Uplink Internal =5s,means DDS20-LB will send one packet every 5s. range 5~~255s.
542 +Uplink Internal =5s,means DS20L will send one packet every 5s. range 5~~255s.
558 558  )))
559 559  
560 560  
561 -== 2.7 Frequency Plans ==
546 +== 2.6 Frequency Plans ==
562 562  
563 563  
564 -The DDS20-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.
549 +The DS20L 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.
565 565  
566 566  [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]]
567 567  
568 568  
569 -= 3. Configure DDS20-LB =
554 +3. Configure DS20L
570 570  
571 571  == 3.1 Configure Methods ==
572 572  
573 573  
574 -DDS20-LB supports below configure method:
559 +DS20L supports below configure method:
575 575  
576 576  * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
577 577  
... ... @@ -593,10 +593,10 @@
593 593  [[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/]]
594 594  
595 595  
596 -== 3.3 Commands special design for DDS20-LB ==
581 +== 3.3 Commands special design for DS20L ==
597 597  
598 598  
599 -These commands only valid for DDS20-LB, as below:
584 +These commands only valid for DS20L, as below:
600 600  
601 601  
602 602  === 3.3.1 Set Transmit Interval Time ===
... ... @@ -611,7 +611,7 @@
611 611  )))
612 612  
613 613  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
614 -|=(% style="width: 156px;background-color:#D9E2F3; color:#0070c0" %)**Command Example**|=(% style="width: 137px;background-color:#D9E2F3; color:#0070c0" %)**Function**|=(% style="background-color:#D9E2F3; color:#0070c0" %)**Response**
599 +|=(% style="width: 156px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 137px;background-color:#4F81BD;color:white" %)**Function**|=(% style="background-color:#4F81BD;color:white" %)**Response**
615 615  |(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|(((
616 616  30000
617 617  OK
... ... @@ -639,25 +639,32 @@
639 639  )))
640 640  * (((
641 641  Example 2: Downlink Payload: 0100003C  ~/~/ Set Transmit Interval (TDC) = 60 seconds 
627 +
628 +
629 +
642 642  )))
643 643  
644 644  === 3.3.2 Set Interrupt Mode ===
645 645  
646 646  
647 -Feature, Set Interrupt mode for PA8 of pin.
635 +Feature, Set Interrupt mode for pin of GPIO_EXTI.
648 648  
649 -When AT+INTMOD=0 is set, PA8 is used as a digital input port.
637 +When AT+INTMOD=0 is set, GPIO_EXTI is used as a digital input port.
650 650  
651 651  (% style="color:blue" %)**AT Command: AT+INTMOD**
652 652  
653 653  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
654 -|=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 197px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 158px;background-color:#D9E2F3;color:#0070C0" %)**Response**
642 +|=(% style="width: 155px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 197px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 158px;background-color:#4F81BD;color:white" %)**Response**
655 655  |(% style="width:154px" %)AT+INTMOD=?|(% style="width:196px" %)Show current interrupt mode|(% style="width:157px" %)(((
656 656  0
657 657  OK
658 658  the mode is 0 =Disable Interrupt
659 659  )))
660 -|(% style="width:154px" %)AT+INTMOD=2|(% style="width:196px" %)(((
648 +|(% style="width:154px" %)(((
649 +AT+INTMOD=2
650 +
651 +(default)
652 +)))|(% style="width:196px" %)(((
661 661  Set Transmit Interval
662 662  0. (Disable Interrupt),
663 663  ~1. (Trigger by rising and falling edge)
... ... @@ -678,7 +678,7 @@
678 678  = 4. Battery & Power Consumption =
679 679  
680 680  
681 -DDS20-LB use ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
673 +DS20L use built-in 2400mAh non-chargeable battery for long-term use up to several years*. See below link for detail information about the battery info and how to replace.
682 682  
683 683  [[**Battery Info & Power Consumption Analyze**>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
684 684  
... ... @@ -687,7 +687,7 @@
687 687  
688 688  
689 689  (% class="wikigeneratedid" %)
690 -User can change firmware DDS20-LB to:
682 +User can change firmware DS20L to:
691 691  
692 692  * Change Frequency band/ region.
693 693  
... ... @@ -695,50 +695,48 @@
695 695  
696 696  * Fix bugs.
697 697  
698 -Firmware and changelog can be downloaded from : **[[Firmware download link>>url:https://www.dropbox.com/sh/ph4uyz0rchflrnw/AADr1f_5Sg30804NItpfOQbla?dl=0]]**
690 +Firmware and changelog can be downloaded from : **[[Firmware download link>>https://www.dropbox.com/sh/zqv1vt3komgp4tu/AAC33PnXIcWOVl_UXBEAeT_xa?dl=0]]**
699 699  
700 700  Methods to Update Firmware:
701 701  
702 -* (Recommanded way) OTA firmware update via wireless:  [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/]]
694 +* (Recommanded way) OTA firmware update via wireless:  **[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/]]**
703 703  
704 704  * Update through UART TTL interface: **[[Instruction>>url:http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H1.LoRaSTv4baseHardware]]**.
705 705  
706 -
707 707  = 6. FAQ =
708 708  
709 -== 6.1  What is the frequency plan for DDS20-LB? ==
700 +== 6.1 What is the frequency plan for DS20L? ==
710 710  
711 711  
712 -DDS20-LB use the same frequency as other Dragino products. User can see the detail from this link:  [[Introduction>>doc:Main.End Device Frequency Band.WebHome||anchor="H1.Introduction"]]
703 +DS20L use the same frequency as other Dragino products. User can see the detail from this link:  [[Introduction>>doc:Main.End Device Frequency Band.WebHome||anchor="H1.Introduction"]]
713 713  
714 714  
715 -== 6.2  Can I use DDS20-LB in condensation environment? ==
706 += 7Trouble Shooting =
716 716  
708 +== 7.1 AT Command input doesn't work ==
717 717  
718 -DDS20-LB is not suitable to be used in condensation environment. Condensation on the DDS20-LB probe will affect the reading and always got 0.
719 719  
711 +In the case if user can see the console output but can't type input to the device. Please check if you already include the (% style="color:blue" %)**ENTER**(%%) while sending out the command. Some serial tool doesn't send (% style="color:blue" %)**ENTER**(%%) while press the send key, user need to add ENTER in their string.
720 720  
721 -= 7.  Trouble Shooting =
722 722  
723 -== 7.1  Why I can't join TTN V3 in US915 / AU915 bands? ==
714 +== 7.2 Significant error between the output distant value of LiDAR and actual distance ==
724 724  
725 725  
726 -It is due to channel mapping. Please see below link:  [[Frequency band>>doc:Main.LoRaWAN Communication Debug.WebHome||anchor="H2.NoticeofUS9152FCN4702FAU915Frequencyband"]]
717 +(((
718 +(% style="color:blue" %)**Cause ①**(%%)**:**Due to the physical principles of The LiDAR probe, the above phenomenon is likely to occur if the detection object is the material with high reflectivity (such as mirror, smooth floor tile, etc.) or transparent substance. (such as glass and water, etc.)
719 +)))
727 727  
721 +(((
722 +(% style="color:red" %)**Troubleshooting**(%%): Please avoid use of this product under such circumstance in practice.
723 +)))
728 728  
729 -== 7.2  AT Command input doesn't work ==
730 730  
731 -
732 -In the case if user can see the console output but can't type input to the device. Please check if you already include the (% style="color:blue" %)**ENTER**(%%) while sending out the command. Some serial tool doesn't send (% style="color:blue" %)**ENTER**(%%) while press the send key, user need to add ENTER in their string.
733 -
734 -
735 -== 7.3  Why i always see 0x0000 or 0 for the distance value? ==
736 -
737 -
738 738  (((
739 -LDDS20 has a strict [[**installation requirement**>>||anchor="H1.5A0InstallDDS20-LB"]]. Please make sure the installation method exactly follows up with the installation requirement. Otherwise, the reading might be always 0x00.
727 +(% style="color:blue" %)**Cause ②**(%%)**: **The IR-pass filters are blocked.
728 +)))
740 740  
741 -If you have followed the instruction requirement exactly but still see the 0x00 reading issue, please. please double-check the decoder, you can check the raw payload to verify.
730 +(((
731 +(% style="color:red" %)**Troubleshooting**(%%): please use dry dust-free cloth to gently remove the foreign matter.
742 742  )))
743 743  
744 744  
... ... @@ -745,7 +745,7 @@
745 745  = 8. Order Info =
746 746  
747 747  
748 -Part Number: (% style="color:blue" %)**DDS20-LB-XXX**
738 +Part Number: (% style="color:blue" %)**DS20L-XXX**
749 749  
750 750  (% style="color:red" %)**XXX**(%%): **The default frequency band**
751 751  
... ... @@ -770,7 +770,7 @@
770 770  
771 771  (% style="color:#037691" %)**Package Includes**:
772 772  
773 -* DDS20-LB LoRaWAN Ultrasonic Liquid Level Sensor x 1
763 +* DS20L LoRaWAN Smart Distance Detector x 1
774 774  
775 775  (% style="color:#037691" %)**Dimension and weight**:
776 776  
1701149922873-259.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +24.5 KB
Content
image-20230614153353-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +112.1 KB
Content
image-20230614162334-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +88.3 KB
Content
image-20230614162359-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +88.3 KB
Content
image-20230615152941-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +87.9 KB
Content
image-20230615153004-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +87.9 KB
Content
image-20230805103904-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +46.9 KB
Content
image-20230805104104-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +46.3 KB
Content
image-20230805144259-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +872.7 KB
Content
image-20230805144936-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +37.5 KB
Content
image-20230805145056-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +30.7 KB
Content
image-20230805150315-4.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +90.6 KB
Content
image-20230805155335-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +45.4 KB
Content
image-20230805155428-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +45.5 KB
Content
image-20230805155515-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +45.7 KB
Content
image-20231110085300-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +613.3 KB
Content
image-20231110085342-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +178.7 KB
Content
image-20231110091447-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +85.4 KB
Content
image-20231110091506-4.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +85.4 KB
Content
image-20231110102635-5.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +84.7 KB
Content
image-20231128133704-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +190.6 KB
Content