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

From version 116.3
edited by Xiaoling
on 2023/11/13 10:38
Change comment: There is no comment for this version
To version 79.20
edited by Xiaoling
on 2023/06/14 15:26
Change comment: Update document after refactoring.

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,1 @@
1 -DS20L -- LoRaWAN Smart Distance Detector User Manual
1 +LDS12-LB_LoRaWAN_LiDAR_ToF_Distance_Sensor_User_Manual
Content
... ... @@ -1,5 +1,5 @@
1 1  (% style="text-align:center" %)
2 -[[image:image-20231110085342-2.png||height="481" width="481"]]
2 +[[image:image-20230613133716-2.png||height="717" width="717"]]
3 3  
4 4  
5 5  
... ... @@ -19,430 +19,450 @@
19 19  
20 20  = 1. Introduction =
21 21  
22 -== 1.1 What is LoRaWAN Smart Distance Detector ==
22 +== 1.1 What is LoRaWAN Ultrasonic liquid level Sensor ==
23 23  
24 24  
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.
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.
26 26  
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.
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. 
29 29  
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.**
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.
31 31  
32 -DS20L is fully compatible with (% style="color:blue" %)**LoRaWAN v1.0.3 Class A protocol**(%%), it can work with a standard LoRaWAN gateway.
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.
33 33  
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 -[[image:image-20231110102635-5.png||height="402" width="807"]]
35 +DDS20-LB is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long term use up to 5 years.
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.
37 37  
39 +[[image:image-20230613140115-3.png||height="453" width="800"]]
40 +
41 +
38 38  == 1.2 ​Features ==
39 39  
40 40  
41 -* LoRaWAN Class A protocol
42 -* LiDAR distance detector, range 3 ~~ 200cm
43 -* Periodically detect or continuously detect mode
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
44 44  * AT Commands to change parameters
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
56 +* Downlink to change configure
57 +* IP66 Waterproof Enclosure
58 +* 8500mAh Battery for long term use
49 49  
50 -(% style="display:none" %)
51 51  
61 +
52 52  == 1.3 Specification ==
53 53  
54 54  
55 -(% style="color:#037691" %)**LiDAR Sensor:**
65 +(% style="color:#037691" %)**Common DC Characteristics:**
56 56  
57 -* Operation Temperature: -40 ~~ 80 °C
58 -* Operation Humidity: 0~~99.9%RH (no Dew)
59 -* Storage Temperature: -10 ~~ 45°C
60 -* Measure Range: 3cm~~200cm @ 90% reflectivity
61 -* Accuracy: ±2cm @ (3cm~~100cm); ±5% @ (100~~200cm)
62 -* ToF FoV: ±9°, Total 18°
63 -* Light source: VCSEL
67 +* Supply Voltage: built in 8500mAh Li-SOCI2 battery , 2.5v ~~ 3.6v
68 +* Operating Temperature: -40 ~~ 85°C
64 64  
65 -(% style="display:none" %)
70 +(% style="color:#037691" %)**LoRa Spec:**
66 66  
72 +* Frequency Range,  Band 1 (HF): 862 ~~ 1020 Mhz
73 +* Max +22 dBm constant RF output vs.
74 +* RX sensitivity: down to -139 dBm.
75 +* Excellent blocking immunity
67 67  
68 -== 1.4 Power Consumption ==
77 +(% style="color:#037691" %)**Battery:**
69 69  
79 +* Li/SOCI2 un-chargeable battery
80 +* Capacity: 8500mAh
81 +* Self-Discharge: <1% / Year @ 25°C
82 +* Max continuously current: 130mA
83 +* Max boost current: 2A, 1 second
70 70  
71 -(% style="color:#037691" %)**Battery Power Mode:**
85 +(% style="color:#037691" %)**Power Consumption**
72 72  
73 -* Idle: 0.003 mA @ 3.3v
74 -* Max : 360 mA
87 +* Sleep Mode: 5uA @ 3.3v
88 +* LoRa Transmit Mode: 125mA @ 20dBm, 82mA @ 14dBm
75 75  
76 -(% style="color:#037691" %)**Continuously mode**:
77 77  
78 -* Idle: 21 mA @ 3.3v
79 -* Max : 360 mA
80 80  
92 +== 1.4 Suitable Container & Liquid ==
81 81  
82 82  
95 +* Solid Wall container such as: steel, iron, glass, ceramics, non-foaming plastics etc.
96 +* Container shape is regular, and surface is smooth.
97 +* Container Thickness:
98 +** Pure metal material.  2~~8mm, best is 3~~5mm
99 +** Pure non metal material: <10 mm
100 +* Pure liquid without irregular deposition.
83 83  
84 -= 2. Configure DS20L to connect to LoRaWAN network =
85 85  
86 -== 2.1 How it works ==
87 87  
104 +(% style="display:none" %)
88 88  
89 -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 +== 1.Install DDS20-LB ==
90 90  
91 -(% style="display:none" %) (%%)
92 92  
93 -== 2.2 ​Quick guide to connect to LoRaWAN server (OTAA) ==
109 +(% style="color:blue" %)**Step 1**(%%):  ** Choose the installation point.**
94 94  
111 +DDS20-LB (% style="color:red" %)**MUST**(%%) be installed on the container bottom middle position.
95 95  
96 -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.
113 +[[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"]]
97 97  
98 -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" %)
99 99  
100 -[[image:image-20231110102635-5.png||height="402" width="807"]](% style="display:none" %)
116 +(((
117 +(% style="color:blue" %)**Step 2**(%%):  **Polish the installation point.**
118 +)))
101 101  
102 -(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from DS20L.
120 +(((
121 +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.
122 +)))
103 103  
104 -Each DS20L is shipped with a sticker with the default device EUI as below:
124 +[[image:image-20230613143052-5.png]]
105 105  
106 -[[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]]
107 107  
127 +No polish needed if the container is shine metal surface without paint or non-metal container.
108 108  
109 -You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
129 +[[image:image-20230613143125-6.png]]
110 110  
111 111  
112 -(% style="color:blue" %)**Register the device**
132 +(((
133 +(% style="color:blue" %)**Step3:   **(%%)**Test the installation point.**
134 +)))
113 113  
114 -[[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"]]
136 +(((
137 +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.
138 +)))
115 115  
140 +(((
141 +It is necessary to put the coupling paste between the sensor and the container, otherwise DDS20-LB won't detect the liquid level.
142 +)))
116 116  
117 -(% style="color:blue" %)**Add APP EUI and DEV EUI**
144 +(((
145 +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.
146 +)))
118 118  
119 -[[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"]]
120 120  
149 +(((
150 +(% style="color:blue" %)**LED Status:**
151 +)))
121 121  
122 -(% style="color:blue" %)**Add APP EUI in the application**
153 +* (((
154 +**Onboard LED**: When power on device, the onboard LED will fast blink 4 times which means detect the sensor well.
155 +)))
123 123  
157 +* (((
158 +(% 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.
159 +)))
160 +* (((
161 +(% style="color:blue" %)**BLUE LED**(% style="color:red" %)** slowly blinking**(%%): Sensor detects Liquid Level, The installation point is good.
162 +)))
124 124  
125 -[[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"]]
164 +(((
165 +LDDS20 will enter into low power mode at 30 seconds after system reset or power on, Blue LED will be off after that.
166 +)))
126 126  
127 127  
128 -(% style="color:blue" %)**Add APP KEY**
169 +(((
170 +(% style="color:red" %)**Note :**(%%)** (% style="color:blue" %)Ultrasonic coupling paste(%%)**(% style="color:blue" %) (%%) is subjected in most shipping way. So the default package doesn't include it and user needs to purchase locally.
171 +)))
129 129  
130 -[[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"]]
131 131  
174 +(((
175 +(% style="color:blue" %)**Step4:   **(%%)**Install use Epoxy ab glue.**
176 +)))
132 132  
133 -(% style="color:blue" %)**Step 2:**(%%) Activate on DS20L
178 +(((
179 +Prepare Eproxy AB glue.
180 +)))
134 134  
182 +(((
183 +Put Eproxy AB glue in the sensor and press it hard on the container installation point.
184 +)))
135 135  
136 -Press the button for 5 seconds to activate the DS20L.
186 +(((
187 +Reset DDS20-LB and see if the BLUE LED is slowly blinking.
188 +)))
137 137  
138 -(% 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.
190 +[[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"]]
139 139  
140 -After join success, it will start to upload messages to TTN and you can see the messages in the panel.
141 141  
193 +(((
194 +(% style="color:red" %)**Note :**
142 142  
143 -== 2.3 ​Uplink Payload ==
196 +(% style="color:red" %)**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.
197 +)))
144 144  
145 -=== 2.3.1 Device Status, FPORT~=5 ===
199 +(((
200 +(% style="color:red" %)**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.
201 +)))
146 146  
147 147  
148 -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.
204 +== 1.6 Applications ==
149 149  
150 -The Payload format is as below.
151 151  
152 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
153 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
154 -**Size(bytes)**
155 -)))|=(% 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**
156 -|(% 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
207 +* Smart liquid control solution
157 157  
158 -Example parse in TTNv3
209 +* Smart liquefied gas solution
159 159  
160 -[[image:image-20230805103904-1.png||height="131" width="711"]]
161 161  
162 -(% style="color:blue" %)**Sensor Model**(%%): For DS20L, this value is 0x24
163 163  
164 -(% style="color:blue" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
213 +== 1.7 Precautions ==
165 165  
166 -(% style="color:blue" %)**Frequency Band**:
167 167  
168 -0x01: EU868
216 +* 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.
169 169  
170 -0x02: US915
218 +* 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.
171 171  
172 -0x03: IN865
220 +* 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.
173 173  
174 -0x04: AU915
175 175  
176 -0x05: KZ865
223 +(% style="display:none" %)
177 177  
178 -0x06: RU864
225 +== 1.8 Sleep mode and working mode ==
179 179  
180 -0x07: AS923
181 181  
182 -0x08: AS923-1
228 +(% 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.
183 183  
184 -0x09: AS923-2
230 +(% 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.
185 185  
186 -0x0a: AS923-3
187 187  
188 -0x0b: CN470
233 +== 1.9 Button & LEDs ==
189 189  
190 -0x0c: EU433
191 191  
192 -0x0d: KR920
236 +[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675071855856-879.png]]
193 193  
194 -0x0e: MA869
195 195  
196 -(% style="color:blue" %)**Sub-Band**:
239 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
240 +|=(% 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**
241 +|(% style="width:167px" %)Pressing ACT between 1s < time < 3s|(% style="width:117px" %)Send an uplink|(% style="width:225px" %)(((
242 +If sensor is already Joined to LoRaWAN network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once.
243 +Meanwhile, BLE module will be active and user can connect via BLE to configure device.
244 +)))
245 +|(% style="width:167px" %)Pressing ACT for more than 3s|(% style="width:117px" %)Active Device|(% style="width:225px" %)(((
246 +(% 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.
247 +(% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.
248 +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.
249 +)))
250 +|(% 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.
197 197  
198 -AU915 and US915:value 0x00 ~~ 0x08
199 199  
200 -CN470: value 0x0B ~~ 0x0C
201 201  
202 -Other Bands: Always 0x00
254 +== 1.10 BLE connection ==
203 203  
204 -(% style="color:blue" %)**Battery Info**:
205 205  
206 -Check the battery voltage.
257 +DDS20-LB support BLE remote configure.
207 207  
208 -Ex1: 0x0B45 = 2885mV
259 +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:
209 209  
210 -Ex2: 0x0B49 = 2889mV
261 +* Press button to send an uplink
262 +* Press button to active device.
263 +* Device Power on or reset.
211 211  
265 +If there is no activity connection on BLE in 60 seconds, sensor will shut down BLE module to enter low power mode.
212 212  
213 -=== 2.3.2 Uplink Payload, FPORT~=2 ===
214 214  
268 +== 1.11 Pin Definitions ==
215 215  
216 -(((
217 -DS20L will send this uplink **after** Device Status once join the LoRaWAN network successfully. And DS20L will:
270 +[[image:image-20230523174230-1.png]]
218 218  
219 -periodically send this uplink every 20 minutes, this interval [[can be changed>>||anchor="H3.3.1SetTransmitIntervalTime"]].
220 220  
221 -Uplink Payload totals 11 bytes.
222 -)))
273 +== 1.12 Mechanical ==
223 223  
224 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
225 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
226 -**Size(bytes)**
227 -)))|=(% 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**
228 -|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)[[BAT>>||anchor="HBatteryInfo"]]|(% style="width:62.5px" %)(((
229 -[[Temperature DS18B20>>||anchor="HDS18B20Temperaturesensor"]]
230 -)))|[[Distance>>||anchor="HDistance"]]|[[Distance signal strength>>||anchor="HDistancesignalstrength"]]|(% style="width:122px" %)(((
231 -[[Interrupt flag & Interrupt_level>>||anchor="HInterruptPin26A0InterruptLevel"]]
232 -)))|(% style="width:54px" %)[[LiDAR temp>>||anchor="HLiDARtemp"]]|(% style="width:96px" %)(((
233 -[[Message Type>>||anchor="HMessageType"]]
234 -)))
235 235  
236 -[[image:image-20230805104104-2.png||height="136" width="754"]]
276 +[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143884058-338.png]]
237 237  
238 238  
239 -==== (% style="color:blue" %)**Battery Info**(%%) ====
279 +[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143899218-599.png]]
240 240  
241 241  
242 -Check the battery voltage for DS20L.
282 +[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143909447-639.png]]
243 243  
244 -Ex1: 0x0B45 = 2885mV
245 245  
246 -Ex2: 0x0B49 = 2889mV
285 +(% style="color:blue" %)**Probe Mechanical:**
247 247  
287 +[[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"]]
248 248  
249 -==== (% style="color:blue" %)**DS18B20 Temperature sensor**(%%) ====
250 250  
290 +[[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"]]
251 251  
252 -This is optional, user can connect external DS18B20 sensor to the +3.3v, 1-wire and GND pin . and this field will report temperature.
253 253  
293 += 2. Configure DDS20-LB to connect to LoRaWAN network =
254 254  
255 -**Example**:
295 +== 2.1 How it works ==
256 256  
257 -If payload is: 0105H:  (0105 & FC00 == 0), temp = 0105H /10 = 26.1 degree
258 258  
259 -If payload is: FF3FH (FF3F & FC00 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
298 +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.
260 260  
300 +(% style="display:none" %) (%%)
261 261  
262 -==== (% style="color:blue" %)**Distance**(%%) ====
302 +== 2.2 ​Quick guide to connect to LoRaWAN server (OTAA) ==
263 263  
264 264  
265 -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.
305 +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.
266 266  
307 +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.
267 267  
268 -**Example**:
309 +[[image:image-20230613140140-4.png||height="453" width="800"]](% style="display:none" %)
269 269  
270 -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.
271 271  
312 +(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from DDS20-LB.
272 272  
273 -==== (% style="color:blue" %)**Distance signal strength**(%%) ====
314 +Each DDS20-LB is shipped with a sticker with the default device EUI as below:
274 274  
316 +[[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]]
275 275  
276 -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.
277 277  
319 +You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
278 278  
279 -**Example**:
280 280  
281 -If payload is: 01D7(H)=471(D), distance signal strength=471, 471>100,471≠65535, the measured value of Dist is considered credible.
322 +(% style="color:blue" %)**Register the device**
282 282  
283 -Customers can judge whether they need to adjust the environment based on the signal strength.
324 +[[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"]]
284 284  
285 285  
286 -**1) When the sensor detects valid data:**
327 +(% style="color:blue" %)**Add APP EUI and DEV EUI**
287 287  
288 -[[image:image-20230805155335-1.png||height="145" width="724"]]
329 +[[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"]]
289 289  
290 290  
291 -**2) When the sensor detects invalid data:**
332 +(% style="color:blue" %)**Add APP EUI in the application**
292 292  
293 -[[image:image-20230805155428-2.png||height="139" width="726"]]
294 294  
335 +[[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"]]
295 295  
296 -**3) When the sensor is not connected:**
297 297  
298 -[[image:image-20230805155515-3.png||height="143" width="725"]]
338 +(% style="color:blue" %)**Add APP KEY**
299 299  
340 +[[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"]]
300 300  
301 -==== (% style="color:blue" %)**Interrupt Pin & Interrupt Level**(%%) ====
302 302  
343 +(% style="color:blue" %)**Step 2:**(%%) Activate on DDS20-LB
303 303  
304 -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.
305 305  
306 -Note: The Internet Pin is a separate pin in the screw terminal. See pin mapping of GPIO_EXTI .
346 +Press the button for 5 seconds to activate the DDS20-LB.
307 307  
308 -**Example:**
348 +(% 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.
309 309  
310 -If byte[0]&0x01=0x00 : Normal uplink packet.
350 +After join success, it will start to upload messages to TTN and you can see the messages in the panel.
311 311  
312 -If byte[0]&0x01=0x01 : Interrupt Uplink Packet.
313 313  
353 +== 2.3  ​Uplink Payload ==
314 314  
315 -==== (% style="color:blue" %)**LiDAR temp**(%%) ====
316 316  
317 -
318 -Characterize the internal temperature value of the sensor.
319 -
320 -**Example: **
321 -If payload is: 1C(H) <<24>>24=28(D),LiDAR temp=28℃.
322 -If payload is: F2(H) <<24>>24=-14(D),LiDAR temp=-14℃.
323 -
324 -
325 -==== (% style="color:blue" %)**Message Type**(%%) ====
326 -
327 -
328 328  (((
329 -For a normal uplink payload, the message type is always 0x01.
357 +DDS20-LB will uplink payload via LoRaWAN with below payload format: 
330 330  )))
331 331  
332 332  (((
333 -Valid Message Type:
361 +Uplink payload includes in total 8 bytes.
334 334  )))
335 335  
336 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:499px" %)
337 -|=(% 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**
338 -|(% style="width:160px" %)0x01|(% style="width:163px" %)Normal Uplink|(% style="width:173px" %)Normal Uplink Payload
339 -|(% style="width:160px" %)0x02|(% style="width:163px" %)Reply configures info|(% style="width:173px" %)Configure Info Payload
364 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %)
365 +|=(% style="width: 62.5px;background-color:#D9E2F3;color:#0070C0" %)(((
366 +**Size(bytes)**
367 +)))|=(% 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**
368 +|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)[[BAT>>||anchor="H2.3.1A0BatteryInfo"]]|(((
369 +[[Distance>>||anchor="H2.3.2A0Distance"]]
370 +(unit: mm)
371 +)))|[[Digital Interrupt (Optional)>>||anchor="H2.3.3A0InterruptPin"]]|(((
372 +[[Temperature (Optional )>>||anchor="H2.3.4A0DS18B20Temperaturesensor"]]
373 +)))|[[Sensor Flag>>||anchor="H2.3.5A0SensorFlag"]]
340 340  
341 -[[image:image-20230805150315-4.png||height="233" width="723"]]
375 +[[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"]]
342 342  
343 343  
344 -=== 2.3.3 Historical measuring distance, FPORT~=3 ===
378 +=== 2.3. Battery Info ===
345 345  
346 346  
347 -DS20L stores sensor values and users can retrieve these history values via the [[downlink command>>||anchor="H2.5.4Pollsensorvalue"]].
381 +Check the battery voltage for DDS20-LB.
348 348  
349 -The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time measuring distance.
383 +Ex1: 0x0B45 = 2885mV
350 350  
351 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
352 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
353 -**Size(bytes)**
354 -)))|=(% 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
355 -|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)Interrupt flag & Interrupt_level|(% style="width:62.5px" %)(((
356 -Reserve(0xFF)
357 -)))|Distance|Distance signal strength|(% style="width:88px" %)(((
358 -LiDAR temp
359 -)))|(% style="width:85px" %)Unix TimeStamp
385 +Ex2: 0x0B49 = 2889mV
360 360  
361 -**Interrupt flag & Interrupt level:**
362 362  
363 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:480px" %)
364 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
365 -**Size(bit)**
366 -)))|=(% 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**
367 -|(% 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" %)(((
368 -Interrupt flag
369 -)))
388 +=== 2.3.2  Distance ===
370 370  
371 -* (((
372 -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.
390 +
391 +(((
392 +Get the distance. Flat object range 20mm - 2000mm.
373 373  )))
374 374  
375 -For example, in the US915 band, the max payload for different DR is:
395 +(((
396 +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" %)** **
376 376  
377 -**a) DR0:** max is 11 bytes so one entry of data
398 +(% style="color:blue" %)**0605(H) = 1541 (D) = 1541 mm.**
399 +)))
378 378  
379 -**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
401 +* If the sensor value is 0x0000, it means system doesn't detect ultrasonic sensor.
380 380  
381 -**c) DR2:** total payload includes 11 entries of data
403 +* If the sensor value lower than 0x0014 (20mm), the sensor value will be invalid.
382 382  
383 -**d) DR3:** total payload includes 22 entries of data.
384 384  
385 -If DS20L doesn't have any data in the polling time. It will uplink 11 bytes of 0
386 386  
407 +=== 2.3.3  Interrupt Pin ===
387 387  
388 -**Downlink:**
389 389  
390 -0x31 64 CC 68 0C 64 CC 69 74 05
410 +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.
391 391  
392 -[[image:image-20230805144936-2.png||height="113" width="746"]]
412 +**Example:**
393 393  
394 -**Uplink:**
414 +0x00: Normal uplink packet.
395 395  
396 -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
416 +0x01: Interrupt Uplink Packet.
397 397  
398 398  
399 -**Parsed Value:**
419 +=== 2.3.4  DS18B20 Temperature sensor ===
400 400  
401 -[DISTANCE , DISTANCE_SIGNAL_STRENGTH,LIDAR_TEMP,EXTI_STATUS , EXTI_FLAG , TIME]
402 402  
422 +This is optional, user can connect external DS18B20 sensor to the +3.3v, 1-wire and GND pin . and this field will report temperature.
403 403  
404 -[360,176,30,High,True,2023-08-04 02:53:00],
424 +**Example**:
405 405  
406 -[355,168,30,Low,False,2023-08-04 02:53:29],
426 +If payload is: 0105H:  (0105 & FC00 == 0), temp = 0105H /10 = 26.1 degree
407 407  
408 -[245,211,30,Low,False,2023-08-04 02:54:29],
428 +If payload is: FF3FH :  (FF3F & FC00 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
409 409  
410 -[57,700,30,Low,False,2023-08-04 02:55:29],
411 411  
412 -[361,164,30,Low,True,2023-08-04 02:56:00],
431 +=== 2.3.5  Sensor Flag ===
413 413  
414 -[337,184,30,Low,False,2023-08-04 02:56:40],
415 415  
416 -[20,4458,30,Low,False,2023-08-04 02:57:40],
434 +(((
435 +0x01: Detect Ultrasonic Sensor
436 +)))
417 417  
418 -[362,173,30,Low,False,2023-08-04 02:58:53],
438 +(((
439 +0x00: No Ultrasonic Sensor
440 +)))
419 419  
420 420  
421 -**History read from serial port:**
443 +=== 2.3.6  Decode payload in The Things Network ===
422 422  
423 -[[image:image-20230805145056-3.png]]
424 424  
425 -
426 -=== 2.3.4 Decode payload in The Things Network ===
427 -
428 -
429 429  While using TTN network, you can add the payload format to decode the payload.
430 430  
431 -[[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"]]
448 +[[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"]]
432 432  
450 +The payload decoder function for TTN V3 is here:
433 433  
434 434  (((
435 -The payload decoder function for TTN is here:
453 +DDS20-LB TTN V3 Payload Decoder:  [[ttps:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]]
436 436  )))
437 437  
438 -(((
439 -DS20L TTN Payload Decoder:  [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]]
440 -)))
441 441  
457 +== 2.4  Uplink Interval ==
442 442  
443 -== 2.4 ​Show Data in DataCake IoT Server ==
444 444  
460 +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"]]
445 445  
462 +
463 +== 2.5  ​Show Data in DataCake IoT Server ==
464 +
465 +
446 446  (((
447 447  [[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:
448 448  )))
... ... @@ -465,7 +465,7 @@
465 465  
466 466  (% style="color:blue" %)**Step 3**(%%)**: Create an account or log in Datacake.**
467 467  
468 -(% style="color:blue" %)**Step 4**(%%)**: Search the DS20L and add DevEUI.**
488 +(% style="color:blue" %)**Step 4**(%%)**: Search the DDS20-LB and add DevEUI.**
469 469  
470 470  [[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"]]
471 471  
... ... @@ -475,29 +475,34 @@
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/image-20220610165129-11.png?width=1088&height=595&rev=1.1||alt="image-20220610165129-11.png"]]
476 476  
477 477  
478 -== 2.5 Datalog Feature ==
498 +== 2.6 Datalog Feature ==
479 479  
480 480  
481 -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.
501 +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.
482 482  
483 483  
484 -=== 2.5.1 Ways to get datalog via LoRaWAN ===
504 +=== 2.6.1 Ways to get datalog via LoRaWAN ===
485 485  
486 486  
487 -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.
507 +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.
488 488  
489 489  * (((
490 -a) DS20L will do an ACK check for data records sending to make sure every data arrive server.
510 +a) DDS20-LB will do an ACK check for data records sending to make sure every data arrive server.
491 491  )))
492 492  * (((
493 -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.
513 +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.
494 494  )))
495 495  
496 -=== 2.5.2 Unix TimeStamp ===
516 +Below is the typical case for the auto-update datalog feature (Set PNACKMD=1)
497 497  
518 +[[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"]]
498 498  
499 -DS20L uses Unix TimeStamp format based on
500 500  
521 +=== 2.6.2 Unix TimeStamp ===
522 +
523 +
524 +DDS20-LB uses Unix TimeStamp format based on
525 +
501 501  [[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"]]
502 502  
503 503  User can get this time from link:  [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] :
... ... @@ -510,23 +510,23 @@
510 510  So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25
511 511  
512 512  
513 -=== 2.5.3 Set Device Time ===
538 +=== 2.6.3 Set Device Time ===
514 514  
515 515  
516 516  User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command.
517 517  
518 -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).
543 +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).
519 519  
520 520  (% 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.**
521 521  
522 522  
523 -=== 2.5.4 Poll sensor value ===
548 +=== 2.6.4 Poll sensor value ===
524 524  
525 525  
526 526  Users can poll sensor values based on timestamps. Below is the downlink command.
527 527  
528 528  (% border="1" cellspacing="5" style="background-color:#f2f2f2; width:425.818px" %)
529 -|(% colspan="4" style="background-color:#4f81bd; color:white; width:423px" %)**Downlink Command to poll Open/Close status (0x31)**
554 +|(% colspan="4" style="background-color:#d9e2f3; color:#0070c0; width:423px" %)**Downlink Command to poll Open/Close status (0x31)**
530 530  |(% style="width:58px" %)**1byte**|(% style="width:127px" %)**4bytes**|(% style="width:124px" %)**4bytes**|(% style="width:114px" %)**1byte**
531 531  |(% style="width:58px" %)31|(% style="width:127px" %)Timestamp start|(% style="width:124px" %)Timestamp end|(% style="width:114px" %)Uplink Interval
532 532  
... ... @@ -543,24 +543,24 @@
543 543  )))
544 544  
545 545  (((
546 -Uplink Internal =5s,means DS20L will send one packet every 5s. range 5~~255s.
571 +Uplink Internal =5s,means DDS20-LB will send one packet every 5s. range 5~~255s.
547 547  )))
548 548  
549 549  
550 -== 2.6 Frequency Plans ==
575 +== 2.7 Frequency Plans ==
551 551  
552 552  
553 -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.
578 +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.
554 554  
555 555  [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]]
556 556  
557 557  
558 -3. Configure DS20L
583 += 3. Configure DDS20-LB =
559 559  
560 560  == 3.1 Configure Methods ==
561 561  
562 562  
563 -DS20L supports below configure method:
588 +DDS20-LB supports below configure method:
564 564  
565 565  * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
566 566  
... ... @@ -568,6 +568,8 @@
568 568  
569 569  * LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
570 570  
596 +
597 +
571 571  == 3.2 General Commands ==
572 572  
573 573  
... ... @@ -582,10 +582,10 @@
582 582  [[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/]]
583 583  
584 584  
585 -== 3.3 Commands special design for DS20L ==
612 +== 3.3 Commands special design for DDS20-LB ==
586 586  
587 587  
588 -These commands only valid for DS20L, as below:
615 +These commands only valid for DDS20-LB, as below:
589 589  
590 590  
591 591  === 3.3.1 Set Transmit Interval Time ===
... ... @@ -600,7 +600,7 @@
600 600  )))
601 601  
602 602  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
603 -|=(% 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**
630 +|=(% 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**
604 604  |(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|(((
605 605  30000
606 606  OK
... ... @@ -636,24 +636,20 @@
636 636  === 3.3.2 Set Interrupt Mode ===
637 637  
638 638  
639 -Feature, Set Interrupt mode for pin of GPIO_EXTI.
666 +Feature, Set Interrupt mode for PA8 of pin.
640 640  
641 -When AT+INTMOD=0 is set, GPIO_EXTI is used as a digital input port.
668 +When AT+INTMOD=0 is set, PA8 is used as a digital input port.
642 642  
643 643  (% style="color:blue" %)**AT Command: AT+INTMOD**
644 644  
645 645  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
646 -|=(% 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**
673 +|=(% 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**
647 647  |(% style="width:154px" %)AT+INTMOD=?|(% style="width:196px" %)Show current interrupt mode|(% style="width:157px" %)(((
648 648  0
649 649  OK
650 650  the mode is 0 =Disable Interrupt
651 651  )))
652 -|(% style="width:154px" %)(((
653 -AT+INTMOD=2
654 -
655 -(default)
656 -)))|(% style="width:196px" %)(((
679 +|(% style="width:154px" %)AT+INTMOD=2|(% style="width:196px" %)(((
657 657  Set Transmit Interval
658 658  0. (Disable Interrupt),
659 659  ~1. (Trigger by rising and falling edge)
... ... @@ -671,10 +671,12 @@
671 671  
672 672  * Example 2: Downlink Payload: 06000003  ~/~/  Set the interrupt mode to rising edge trigger
673 673  
697 +
698 +
674 674  = 4. Battery & Power Consumption =
675 675  
676 676  
677 -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.
702 +DDS20-LB use ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
678 678  
679 679  [[**Battery Info & Power Consumption Analyze**>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
680 680  
... ... @@ -683,7 +683,7 @@
683 683  
684 684  
685 685  (% class="wikigeneratedid" %)
686 -User can change firmware DS20L to:
711 +User can change firmware DDS20-LB to:
687 687  
688 688  * Change Frequency band/ region.
689 689  
... ... @@ -691,7 +691,7 @@
691 691  
692 692  * Fix bugs.
693 693  
694 -Firmware and changelog can be downloaded from : **[[Firmware download link>>https://www.dropbox.com/sh/zqv1vt3komgp4tu/AAC33PnXIcWOVl_UXBEAeT_xa?dl=0]]**
719 +Firmware and changelog can be downloaded from : **[[Firmware download link>>url:https://www.dropbox.com/sh/ph4uyz0rchflrnw/AADr1f_5Sg30804NItpfOQbla?dl=0]]**
695 695  
696 696  Methods to Update Firmware:
697 697  
... ... @@ -699,40 +699,43 @@
699 699  
700 700  * 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]]**.
701 701  
727 +
728 +
702 702  = 6. FAQ =
703 703  
704 -== 6.1 What is the frequency plan for DS20L? ==
731 +== 6.1  What is the frequency plan for DDS20-LB? ==
705 705  
706 706  
707 -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"]]
734 +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"]]
708 708  
709 709  
710 -= 7Trouble Shooting =
737 +== 6.2  Can I use DDS20-LB in condensation environment? ==
711 711  
712 -== 7.1 AT Command input doesn't work ==
713 713  
740 +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.
714 714  
715 -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.
716 716  
743 += 7.  Trouble Shooting =
717 717  
718 -== 7.2 Significant error between the output distant value of LiDAR and actual distance ==
745 +== 7.1  Why I can't join TTN V3 in US915 / AU915 bands? ==
719 719  
720 720  
721 -(((
722 -(% 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.)
723 -)))
748 +It is due to channel mapping. Please see below link:  [[Frequency band>>doc:Main.LoRaWAN Communication Debug.WebHome||anchor="H2.NoticeofUS9152FCN4702FAU915Frequencyband"]]
724 724  
725 -(((
726 -(% style="color:red" %)**Troubleshooting**(%%): Please avoid use of this product under such circumstance in practice.
727 -)))
728 728  
751 +== 7.2  AT Command input doesn't work ==
729 729  
730 -(((
731 -(% style="color:blue" %)**Cause ②**(%%)**: **The IR-pass filters are blocked.
732 -)))
733 733  
754 +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.
755 +
756 +
757 +== 7.3  Why i always see 0x0000 or 0 for the distance value? ==
758 +
759 +
734 734  (((
735 -(% style="color:red" %)**Troubleshooting**(%%): please use dry dust-free cloth to gently remove the foreign matter.
761 +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.
762 +
763 +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.
736 736  )))
737 737  
738 738  
... ... @@ -739,7 +739,7 @@
739 739  = 8. Order Info =
740 740  
741 741  
742 -Part Number: (% style="color:blue" %)**DS20L-XXX**
770 +Part Number: (% style="color:blue" %)**DDS20-LB-XXX**
743 743  
744 744  (% style="color:red" %)**XXX**(%%): **The default frequency band**
745 745  
... ... @@ -759,12 +759,14 @@
759 759  
760 760  * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
761 761  
790 +
791 +
762 762  = 9. ​Packing Info =
763 763  
764 764  
765 765  (% style="color:#037691" %)**Package Includes**:
766 766  
767 -* DS20L LoRaWAN Smart Distance Detector x 1
797 +* DDS20-LB LoRaWAN Ultrasonic Liquid Level Sensor x 1
768 768  
769 769  (% style="color:#037691" %)**Dimension and weight**:
770 770  
... ... @@ -776,6 +776,8 @@
776 776  
777 777  * Weight / pcs : g
778 778  
809 +
810 +
779 779  = 10. Support =
780 780  
781 781  
image-20230614153353-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -112.1 KB
Content
image-20230614162334-2.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -88.3 KB
Content
image-20230614162359-3.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -88.3 KB
Content
image-20230615152941-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -87.9 KB
Content
image-20230615153004-2.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -87.9 KB
Content
image-20230805103904-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -46.9 KB
Content
image-20230805104104-2.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -46.3 KB
Content
image-20230805144259-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -872.7 KB
Content
image-20230805144936-2.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -37.5 KB
Content
image-20230805145056-3.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -30.7 KB
Content
image-20230805150315-4.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -90.6 KB
Content
image-20230805155335-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -45.4 KB
Content
image-20230805155428-2.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -45.5 KB
Content
image-20230805155515-3.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -45.7 KB
Content
image-20231110085300-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -613.3 KB
Content
image-20231110085342-2.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -178.7 KB
Content
image-20231110091447-3.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -85.4 KB
Content
image-20231110091506-4.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -85.4 KB
Content
image-20231110102635-5.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -84.7 KB
Content