Changes for page DS20L -- LoRaWAN Smart Distance Detector User Manual 01
Last modified by Mengting Qiu on 2023/12/14 11:15
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 21 added, 0 removed)
- 1701149922873-259.png
- image-20230614153353-1.png
- image-20230614162334-2.png
- image-20230614162359-3.png
- image-20230615152941-1.png
- image-20230615153004-2.png
- image-20230805103904-1.png
- image-20230805104104-2.png
- image-20230805144259-1.png
- image-20230805144936-2.png
- image-20230805145056-3.png
- image-20230805150315-4.png
- image-20230805155335-1.png
- image-20230805155428-2.png
- image-20230805155515-3.png
- image-20231110085300-1.png
- image-20231110085342-2.png
- image-20231110091447-3.png
- image-20231110091506-4.png
- image-20231110102635-5.png
- image-20231128133704-1.png
Details
- Page properties
-
- Title
-
... ... @@ -1,1 +1,1 @@ 1 -D DS20-LB-- LoRaWANUltrasonicLiquid LevelSensor User Manual1 +DS20L -- LoRaWAN Smart Distance Detector User Manual - Content
-
... ... @@ -1,5 +1,5 @@ 1 1 (% style="text-align:center" %) 2 -[[image:image-2023 0613133716-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,423 @@ 19 19 20 20 = 1. Introduction = 21 21 22 -== 1.1 What is LoRaWAN Ultrasonicliquid levelSensor ==22 +== 1.1 What is LoRaWAN Smart Distance Detector == 23 23 24 24 25 -The Dragino DDS20-LB is a(% style="color:blue" %)**LoRaWANUltrasonicliquidlevel sensor**(%%)forInternetofThings solution. It usesnone-contactmethod**(%%)tomeasure the(%style="color:blue"%)**heightofliquid**(%%)in a containerwithoutopeningthecontainer,andsendthevaluevia LoRaWAN networktoIoT 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 -D DS20-LBuses(% style="color:blue" %)**ultrasonicsensing technology**(%%) fordistancemeasurement.DDS20-LB isof high accuracytomeasureariousliquidsuchas: (%style="color:blue"%)**toxicsubstances**(%%), (%style="color:blue"%)**strongacids**(%%), (%style="color:blue"%)**strongalkalis**(%%) and (%style="color:blue" %)**variouspure liquids**(%%) in high-temperatureandhigh-pressure airtightcontainers.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 inDDS20-LBallowsdevice tosend data and reachextremelyngrangesatlowdata-rates.Itprovides ultra-long range spread spectrum communicationandhigh interferenceimmunity whilstminimizing currentconsumption.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 ispowered by (% style="color:blue" %)**8500mAh Li-SOCI2battery**(%%),it isdesigned for longterm 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 - 61 61 == 1.3 Specification == 62 62 63 63 64 -(% style="color:#037691" %)** CommonDCCharacteristics:**53 +(% style="color:#037691" %)**LiDAR Sensor:** 65 65 66 -* Supply Voltage: built in 8500mAh Li-SOCI2 battery , 2.5v ~~ 3.6v 67 -* 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 68 68 69 - (% style="color:#037691"%)**LoRaSpec:**63 +== 1.4 Power Consumption == 70 70 71 -* Frequency Range, Band 1 (HF): 862 ~~ 1020 Mhz 72 -* Max +22 dBm constant RF output vs. 73 -* RX sensitivity: down to -139 dBm. 74 -* Excellent blocking immunity 75 75 76 -(% style="color:#037691" %)**Battery:** 66 +(% style="color:#037691" %)**Battery Power Mode:** 77 77 78 -* Li/SOCI2 un-chargeable battery 79 -* Capacity: 8500mAh 80 -* Self-Discharge: <1% / Year @ 25°C 81 -* Max continuously current: 130mA 82 -* Max boost current: 2A, 1 second 68 +* Idle: 0.003 mA @ 3.3v 69 +* Max : 360 mA 83 83 84 -(% style="color:#037691" %)** PowerConsumption**71 +(% style="color:#037691" %)**Continuously mode**: 85 85 86 -* Sleep Mode:5uA @ 3.3v87 -* LoRaTransmit Mode:125mA @ 20dBm,82mA@ 14dBm73 +* Idle: 21 mA @ 3.3v 74 +* Max : 360 mA 88 88 89 -= =1.4 SuitableContainer&Liquid==76 += 2. Configure DS20L to connect to LoRaWAN network = 90 90 78 +== 2.1 How it works == 91 91 92 -* Solid Wall container such as: steel, iron, glass, ceramics, non-foaming plastics etc. 93 -* Container shape is regular, and surface is smooth. 94 -* Container Thickness: 95 -** Pure metal material. 2~~8mm, best is 3~~5mm 96 -** Pure non metal material: <10 mm 97 -* Pure liquid without irregular deposition. 98 98 99 -(% style="display :none"%)81 +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. 100 100 101 - ==1.5 InstallDDS20-LB==83 +(% style="display:none" %) (%%) 102 102 85 +== 2.2 Quick guide to connect to LoRaWAN server (OTAA) == 103 103 104 -(% style="color:blue" %)**Step 1**(%%): Choose the installation point. 105 105 106 - DDS20-LB(%style="color:red"%)**MUST**(%%)beinstalledonthecontainerbottommiddle position.88 +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. 107 107 108 - [[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"]]90 +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" %) 109 109 92 +[[image:image-20231110102635-5.png||height="402" width="807"]](% style="display:none" %) 110 110 111 -((( 112 -(% style="color:blue" %)**Step 2**(%%): Polish the installation point. 113 -))) 94 +(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from DS20L. 114 114 115 -((( 116 -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. 117 -))) 96 +Each DS20L is shipped with a sticker with the default device EUI as below: 118 118 119 -[[image:image-2023061 3143052-5.png]]98 +[[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]] 120 120 121 121 122 - Nopolishneededifthecontaineris shinemetalsurfacewithoutpaintornon-metalcontainer.101 +You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot: 123 123 124 -[[image:image-20230613143125-6.png]] 125 125 104 +(% style="color:blue" %)**Register the device** 126 126 127 -((( 128 -(% style="color:blue" %)**Step3: **(%%)Test the installation point. 129 -))) 106 +[[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"]] 130 130 131 -((( 132 -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. 133 -))) 134 134 135 -((( 136 -It is necessary to put the coupling paste between the sensor and the container, otherwise DDS20-LB won't detect the liquid level. 137 -))) 109 +(% style="color:blue" %)**Add APP EUI and DEV EUI** 138 138 139 -((( 140 -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. 141 -))) 111 +[[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"]] 142 142 143 143 144 -((( 145 -(% style="color:blue" %)**LED Status:** 146 -))) 114 +(% style="color:blue" %)**Add APP EUI in the application** 147 147 148 -* ((( 149 -**Onboard LED**: When power on device, the onboard LED will fast blink 4 times which means detect the sensor well. 150 -))) 151 151 152 -* ((( 153 -(% 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. 154 -))) 155 -* ((( 156 -(% style="color:blue" %)**BLUE LED**(% style="color:red" %)** slowly blinking**(%%): Sensor detects Liquid Level, The installation point is good. 157 -))) 117 +[[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"]] 158 158 159 -((( 160 -LDDS20 will enter into low power mode at 30 seconds after system reset or power on, Blue LED will be off after that. 161 -))) 162 162 120 +(% style="color:blue" %)**Add APP KEY** 163 163 164 -((( 165 -(% 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. 166 -))) 122 +[[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"]] 167 167 168 168 169 -((( 170 -(% style="color:blue" %)**Step4: **(%%)Install use Epoxy ab glue. 171 -))) 125 +(% style="color:blue" %)**Step 2:**(%%) Activate on DS20L 172 172 173 -((( 174 -Prepare Eproxy AB glue. 175 -))) 127 +[[image:image-20231128133704-1.png||height="189" width="441"]] 176 176 177 -((( 178 -Put Eproxy AB glue in the sensor and press it hard on the container installation point. 179 -))) 129 +Press the button for 5 seconds to activate the DS20L. 180 180 181 -((( 182 -Reset DDS20-LB and see if the BLUE LED is slowly blinking. 183 -))) 131 +(% 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. 184 184 185 - [[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"]]133 +After join success, it will start to upload messages to TTN and you can see the messages in the panel. 186 186 187 187 188 -((( 189 -(% style="color:red" %)**Note :** 136 +== 2.3 Uplink Payload == 190 190 191 -(% 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. 192 -))) 138 +=== 2.3.1 Device Status, FPORT~=5 === 193 193 194 -((( 195 -(% 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. 196 -))) 197 197 141 +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. 198 198 199 - ==1.6 Applications==143 +The Payload format is as below. 200 200 145 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 146 +|=(% style="width: 60px;background-color:#4F81BD;color:white" %)((( 147 +**Size(bytes)** 148 +)))|=(% 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** 149 +|(% 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 201 201 202 - * Smartliquidcontrolsolution.151 +Example parse in TTNv3 203 203 204 - * Smart liquefiedgas solution.153 +[[image:1701149922873-259.png]] 205 205 206 -= =1.7 Precautions==155 +(% style="color:blue" %)**Sensor Model**(%%): For DS20L, this value is 0x21 207 207 157 +(% style="color:blue" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version 208 208 209 - *At room temperature, containersof differentmaterials, such as steel, glass, iron,ceramics, non-foamed plastics andotherdense materials, havedifferent detectionblindareas anddetection limit heights.159 +(% style="color:blue" %)**Frequency Band**: 210 210 211 - *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.161 +0x01: EU868 212 212 213 - * 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"%)163 +0x02: US915 214 214 215 - ==1.8Sleep mode and working mode ==165 +0x03: IN865 216 216 167 +0x04: AU915 217 217 218 - (% 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.169 +0x05: KZ865 219 219 220 - (% 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.171 +0x06: RU864 221 221 173 +0x07: AS923 222 222 223 - ==1.9Button & LEDs ==175 +0x08: AS923-1 224 224 177 +0x09: AS923-2 225 225 226 - [[image:Main.UserManual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675071855856-879.png]]179 +0x0a: AS923-3 227 227 181 +0x0b: CN470 228 228 229 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 230 -|=(% 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** 231 -|(% style="width:167px" %)Pressing ACT between 1s < time < 3s|(% style="width:117px" %)Send an uplink|(% style="width:225px" %)((( 232 -If sensor is already Joined to LoRaWAN network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once. 233 -Meanwhile, BLE module will be active and user can connect via BLE to configure device. 234 -))) 235 -|(% style="width:167px" %)Pressing ACT for more than 3s|(% style="width:117px" %)Active Device|(% style="width:225px" %)((( 236 -(% 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. 237 -(% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network. 238 -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. 239 -))) 240 -|(% 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. 183 +0x0c: EU433 241 241 242 - == 1.10BLE connection ==185 +0x0d: KR920 243 243 187 +0x0e: MA869 244 244 245 - DDS20-LBsupportBLE remoteconfigure.189 +(% style="color:blue" %)**Sub-Band**: 246 246 247 - BLEcanbe usedto configure the parameter of sensor or see the console output from sensor.BLEwillbe only activate on below case:191 +AU915 and US915:value 0x00 ~~ 0x08 248 248 249 -* Press button to send an uplink 250 -* Press button to active device. 251 -* Device Power on or reset. 193 +CN470: value 0x0B ~~ 0x0C 252 252 253 - Ifthereis noactivity connection on BLE in 60 seconds,sensor willshutdown BLE module to enter low power mode.195 +Other Bands: Always 0x00 254 254 197 +(% style="color:blue" %)**Battery Info**: 255 255 256 - ==1.11 Pin Definitions==199 +Check the battery voltage. 257 257 258 - [[image:image-20230523174230-1.png]]201 +Ex1: 0x0B45 = 2885mV 259 259 203 +Ex2: 0x0B49 = 2889mV 260 260 261 -== 1.12 Mechanical == 262 262 206 +=== 2.3.2 Uplink Payload, FPORT~=2 === 263 263 264 -[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143884058-338.png]] 265 265 209 +((( 210 +DS20L will send this uplink **after** Device Status once join the LoRaWAN network successfully. And DS20L will: 266 266 267 - [[image:Main.UserManualforLoRaWAN EndNodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143899218-599.png]]212 +periodically send this uplink every 20 minutes, this interval [[can be changed>>||anchor="H3.3.1SetTransmitIntervalTime"]]. 268 268 214 +Uplink Payload totals 11 bytes. 215 +))) 269 269 270 -[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143909447-639.png]] 217 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 218 +|=(% style="width: 60px;background-color:#4F81BD;color:white" %)((( 219 +**Size(bytes)** 220 +)))|=(% 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** 221 +|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)[[BAT>>||anchor="HBatteryInfo"]]|(% style="width:62.5px" %)((( 222 +[[Temperature DS18B20>>||anchor="HDS18B20Temperaturesensor"]] 223 +)))|[[Distance>>||anchor="HDistance"]]|[[Distance signal strength>>||anchor="HDistancesignalstrength"]]|(% style="width:122px" %)((( 224 +[[Interrupt flag & Interrupt_level>>||anchor="HInterruptPin26A0InterruptLevel"]] 225 +)))|(% style="width:54px" %)[[LiDAR temp>>||anchor="HLiDARtemp"]]|(% style="width:96px" %)((( 226 +[[Message Type>>||anchor="HMessageType"]] 227 +))) 271 271 229 +[[image:image-20230805104104-2.png||height="136" width="754"]] 272 272 273 -(% style="color:blue" %)**Probe Mechanical:** 274 274 275 - [[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"]]232 +==== (% style="color:blue" %)**Battery Info**(%%) ==== 276 276 277 277 278 - [[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"]]235 +Check the battery voltage for DS20L. 279 279 237 +Ex1: 0x0B45 = 2885mV 280 280 281 - =2.Configure DDS20-LBto connect to LoRaWAN network=239 +Ex2: 0x0B49 = 2889mV 282 282 283 -== 2.1 How it works == 284 284 242 +==== (% style="color:blue" %)**DS18B20 Temperature sensor**(%%) ==== 285 285 286 -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. 287 287 288 - (%style="display:none"%)(%%)245 +This is optional, user can connect external DS18B20 sensor to the +3.3v, 1-wire and GND pin . and this field will report temperature. 289 289 290 -== 2.2 Quick guide to connect to LoRaWAN server (OTAA) == 291 291 248 +**Example**: 292 292 293 - Following is an exampleforhow to join the [[TTN v3 LoRaWAN Network>>url:https://console.cloud.thethings.network/]].Belowisthenetworkstructure;weusethe[[LPS8v2>>url:https://www.dragino.com/products/lora-lorawan-gateway/item/228-lps8v2.html]]asaLoRaWANgatewayin thisexample.250 +If payload is: 0105H: (0105 & FC00 == 0), temp = 0105H /10 = 26.1 degree 294 294 295 - TheLPS8v2 isalreadysettoconnectedto[[TTNnetwork>>url:https://console.cloud.thethings.network/]],sowhatweneedtonowisconfiguretheTTN server.252 +If payload is: FF3FH : (FF3F & FC00 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees. 296 296 297 -[[image:image-20230613140140-4.png||height="453" width="800"]](% style="display:none" %) 298 298 255 +==== (% style="color:blue" %)**Distance**(%%) ==== 299 299 300 -(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from DDS20-LB. 301 301 302 - Each DDS20-LB isippedwithastickerwiththe default deviceEUIas below:258 +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. 303 303 304 -[[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]] 305 305 261 +**Example**: 306 306 307 - Youcanenter thiskeyintheLoRaWANServerportal.BelowisTTNscreenshot:263 +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. 308 308 309 309 310 -(% style="color:blue" %)** Registerthedevice**266 +==== (% style="color:blue" %)**Distance signal strength**(%%) ==== 311 311 312 -[[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"]] 313 313 269 +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. 314 314 315 -(% style="color:blue" %)**Add APP EUI and DEV EUI** 316 316 317 - [[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"]]272 +**Example**: 318 318 274 +If payload is: 01D7(H)=471(D), distance signal strength=471, 471>100,471≠65535, the measured value of Dist is considered credible. 319 319 320 - (%style="color:blue"%)**AddAPPEUIin theapplication**276 +Customers can judge whether they need to adjust the environment based on the signal strength. 321 321 322 322 323 - [[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"]]279 +**1) When the sensor detects valid data:** 324 324 281 +[[image:image-20230805155335-1.png||height="145" width="724"]] 325 325 326 -(% style="color:blue" %)**Add APP KEY** 327 327 328 - [[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"]]284 +**2) When the sensor detects invalid data:** 329 329 286 +[[image:image-20230805155428-2.png||height="139" width="726"]] 330 330 331 -(% style="color:blue" %)**Step 2:**(%%) Activate on DDS20-LB 332 332 289 +**3) When the sensor is not connected:** 333 333 334 - Press thebutton for5secondstoactivate the DDS20-LB.291 +[[image:image-20230805155515-3.png||height="143" width="725"]] 335 335 336 -(% 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. 337 337 338 - Afterjoinsuccess, itwill start toupload messages to TTN and youcan seethemessagesin theanel.294 +==== (% style="color:blue" %)**Interrupt Pin & Interrupt Level**(%%) ==== 339 339 340 340 341 - ==2.3UplinkPayload==297 +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. 342 342 299 +Note: The Internet Pin is a separate pin in the screw terminal. See pin mapping of GPIO_EXTI . 343 343 301 +**Example:** 302 + 303 +If byte[0]&0x01=0x00 : Normal uplink packet. 304 + 305 +If byte[0]&0x01=0x01 : Interrupt Uplink Packet. 306 + 307 + 308 +==== (% style="color:blue" %)**LiDAR temp**(%%) ==== 309 + 310 + 311 +Characterize the internal temperature value of the sensor. 312 + 313 +**Example: ** 314 +If payload is: 1C(H) <<24>>24=28(D),LiDAR temp=28℃. 315 +If payload is: F2(H) <<24>>24=-14(D),LiDAR temp=-14℃. 316 + 317 + 318 +==== (% style="color:blue" %)**Message Type**(%%) ==== 319 + 320 + 344 344 ((( 345 - DDS20-LBwilluplink payloadvia LoRaWAN withbelowpayloadformat:322 +For a normal uplink payload, the message type is always 0x01. 346 346 ))) 347 347 348 348 ((( 349 - Uplink payloadincludesin total8 bytes.326 +Valid Message Type: 350 350 ))) 351 351 352 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %) 353 -|=(% style="width: 62.5px;background-color:#D9E2F3;color:#0070C0" %)((( 354 -**Size(bytes)** 355 -)))|=(% 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** 356 -|(% style="width:62.5px" %)**Value**|(% style="width:62.5px" %)[[BAT>>||anchor="H2.3.1A0BatteryInfo"]]|((( 357 -[[Distance>>||anchor="H2.3.2A0Distance"]] 358 -(unit: mm) 359 -)))|[[Digital Interrupt (Optional)>>||anchor="H2.3.3A0InterruptPin"]]|((( 360 -[[Temperature (Optional )>>||anchor="H2.3.4A0DS18B20Temperaturesensor"]] 361 -)))|[[Sensor Flag>>||anchor="H2.3.5A0SensorFlag"]] 329 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:499px" %) 330 +|=(% 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** 331 +|(% style="width:160px" %)0x01|(% style="width:163px" %)Normal Uplink|(% style="width:173px" %)Normal Uplink Payload 332 +|(% style="width:160px" %)0x02|(% style="width:163px" %)Reply configures info|(% style="width:173px" %)Configure Info Payload 362 362 363 -[[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"]]334 +[[image:image-20230805150315-4.png||height="233" width="723"]] 364 364 365 365 366 -=== 2.3. 1BatteryInfo===337 +=== 2.3.3 Historical measuring distance, FPORT~=3 === 367 367 368 368 369 - Checkthebattery voltageforDDS20-LB.340 +DS20L stores sensor values and users can retrieve these history values via the [[downlink command>>||anchor="H2.5.4Pollsensorvalue"]]. 370 370 371 - Ex1:0x0B45=2885mV342 +The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time measuring distance. 372 372 373 -Ex2: 0x0B49 = 2889mV 344 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 345 +|=(% style="width: 60px;background-color:#4F81BD;color:white" %)((( 346 +**Size(bytes)** 347 +)))|=(% 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 348 +|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)Interrupt flag & Interrupt_level|(% style="width:62.5px" %)((( 349 +Reserve(0xFF) 350 +)))|Distance|Distance signal strength|(% style="width:88px" %)((( 351 +LiDAR temp 352 +)))|(% style="width:85px" %)Unix TimeStamp 374 374 354 +**Interrupt flag & Interrupt level:** 375 375 376 -=== 2.3.2 Distance === 356 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:480px" %) 357 +|=(% style="width: 60px;background-color:#4F81BD;color:white" %)((( 358 +**Size(bit)** 359 +)))|=(% 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** 360 +|(% 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" %)((( 361 +Interrupt flag 362 +))) 377 377 378 - 379 -((( 380 -Get the distance. Flat object range 20mm - 2000mm. 364 +* ((( 365 +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. 381 381 ))) 382 382 383 -((( 384 -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" %)** ** 368 +For example, in the US915 band, the max payload for different DR is: 385 385 386 -(% style="color:blue" %)**0605(H) = 1541 (D) = 1541 mm.** 387 -))) 370 +**a) DR0:** max is 11 bytes so one entry of data 388 388 389 -* Ifthe sensorvalue is0x0000,itmeans systemdoesn'tdetectultrasonicsensor.372 +**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes) 390 390 391 -* Ifthe sensor valuelower than0x0014 (20mm), the sensor valuewillbeinvalid.374 +**c) DR2:** total payload includes 11 entries of data 392 392 393 - ===2.3.3InterruptPin===376 +**d) DR3:** total payload includes 22 entries of data. 394 394 378 +If DS20L doesn't have any data in the polling time. It will uplink 11 bytes of 0 395 395 396 -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. 397 397 398 -** Example:**381 +**Downlink:** 399 399 400 -0x0 0:Normaluplinkpacket.383 +0x31 64 CC 68 0C 64 CC 69 74 05 401 401 402 -0 x01: InterruptUplink Packet.385 +[[image:image-20230805144936-2.png||height="113" width="746"]] 403 403 387 +**Uplink:** 404 404 405 - ===2.3.4S18B20Temperaturesensor===389 +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 406 406 407 407 408 - This is optional, usercan connect external DS18B20sensor to the +3.3v, 1-wire andGND pin .and this field will report temperature.392 +**Parsed Value:** 409 409 410 - **Example**:394 +[DISTANCE , DISTANCE_SIGNAL_STRENGTH,LIDAR_TEMP,EXTI_STATUS , EXTI_FLAG , TIME] 411 411 412 -If payload is: 0105H: (0105 & FC00 == 0), temp = 0105H /10 = 26.1 degree 413 413 414 - If payload is: FF3FH : (FF3F & FC00 ==1),temp = (FF3FH65536)/10= -19.3 degrees.397 +[360,176,30,High,True,2023-08-04 02:53:00], 415 415 399 +[355,168,30,Low,False,2023-08-04 02:53:29], 416 416 417 - ===2.3.5SensorFlag===401 +[245,211,30,Low,False,2023-08-04 02:54:29], 418 418 403 +[57,700,30,Low,False,2023-08-04 02:55:29], 419 419 420 -((( 421 -0x01: Detect Ultrasonic Sensor 422 -))) 405 +[361,164,30,Low,True,2023-08-04 02:56:00], 423 423 424 -((( 425 -0x00: No Ultrasonic Sensor 426 -))) 407 +[337,184,30,Low,False,2023-08-04 02:56:40], 427 427 409 +[20,4458,30,Low,False,2023-08-04 02:57:40], 428 428 429 - === 2.3.6Decode payload in The ThingsNetwork===411 +[362,173,30,Low,False,2023-08-04 02:58:53], 430 430 431 431 432 - While using TTN network,youcan add thepayload formatto decode the payload.414 +**History read from serial port:** 433 433 434 -[[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"]]416 +[[image:image-20230805145056-3.png]] 435 435 436 -The payload decoder function for TTN V3 is here: 437 437 438 -((( 439 -DDS20-LB TTN V3 Payload Decoder: [[ttps:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]] 440 -))) 419 +=== 2.3.4 Decode payload in The Things Network === 441 441 442 442 443 - == 2.4 UplinkInterval==422 +While using TTN network, you can add the payload format to decode the payload. 444 444 424 +[[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"]] 445 445 446 -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"]] 447 447 427 +((( 428 +The payload decoder function for TTN is here: 429 +))) 448 448 449 -== 2.5 Show Data in DataCake IoT Server == 431 +((( 432 +DS20L TTN Payload Decoder: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]] 433 +))) 450 450 451 451 436 +== 2.4 Show Data in DataCake IoT Server == 437 + 438 + 452 452 ((( 453 453 [[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: 454 454 ))) ... ... @@ -471,7 +471,7 @@ 471 471 472 472 (% style="color:blue" %)**Step 3**(%%)**: Create an account or log in Datacake.** 473 473 474 -(% style="color:blue" %)**Step 4**(%%)**: Search the D DS20-LBand add DevEUI.**461 +(% style="color:blue" %)**Step 4**(%%)**: Search the DS20L and add DevEUI.** 475 475 476 476 [[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"]] 477 477 ... ... @@ -481,98 +481,20 @@ 481 481 [[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"]] 482 482 483 483 471 +== 2.5 Frequency Plans == 484 484 485 -== 2.6 Datalog Feature == 486 486 474 +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. 487 487 488 -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. 489 - 490 - 491 -=== 2.6.1 Ways to get datalog via LoRaWAN === 492 - 493 - 494 -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. 495 - 496 -* ((( 497 -a) DDS20-LB will do an ACK check for data records sending to make sure every data arrive server. 498 -))) 499 -* ((( 500 -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. 501 -))) 502 - 503 -Below is the typical case for the auto-update datalog feature (Set PNACKMD=1) 504 - 505 -[[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"]] 506 - 507 - 508 -=== 2.6.2 Unix TimeStamp === 509 - 510 - 511 -DDS20-LB uses Unix TimeStamp format based on 512 - 513 -[[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"]] 514 - 515 -User can get this time from link: [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] : 516 - 517 -Below is the converter example 518 - 519 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20220523001219-12.png?width=720&height=298&rev=1.1||alt="图片-20220523001219-12.png" height="298" width="720"]] 520 - 521 - 522 -So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25 523 - 524 - 525 -=== 2.6.3 Set Device Time === 526 - 527 - 528 -User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command. 529 - 530 -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). 531 - 532 -(% 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.** 533 - 534 - 535 -=== 2.6.4 Poll sensor value === 536 - 537 - 538 -Users can poll sensor values based on timestamps. Below is the downlink command. 539 - 540 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:425.818px" %) 541 -|(% colspan="4" style="background-color:#d9e2f3; color:#0070c0; width:423px" %)**Downlink Command to poll Open/Close status (0x31)** 542 -|(% style="width:58px" %)**1byte**|(% style="width:127px" %)**4bytes**|(% style="width:124px" %)**4bytes**|(% style="width:114px" %)**1byte** 543 -|(% style="width:58px" %)31|(% style="width:127px" %)Timestamp start|(% style="width:124px" %)Timestamp end|(% style="width:114px" %)Uplink Interval 544 - 545 -((( 546 -Timestamp start and Timestamp end-use Unix TimeStamp format as mentioned above. Devices will reply with all data logs during this period, using the uplink interval. 547 -))) 548 - 549 -((( 550 -For example, downlink command [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/CPL01%20LoRaWAN%20Outdoor%20PulseContact%20%20Sensor%20Manual/WebHome/image-20220518162852-1.png?rev=1.1||alt="image-20220518162852-1.png"]] 551 -))) 552 - 553 -((( 554 -Is to check 2021/11/12 12:00:00 to 2021/11/12 15:00:00's data 555 -))) 556 - 557 -((( 558 -Uplink Internal =5s,means DDS20-LB will send one packet every 5s. range 5~~255s. 559 -))) 560 - 561 - 562 -== 2.7 Frequency Plans == 563 - 564 - 565 -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. 566 - 567 567 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]] 568 568 569 569 570 -= 3. Configure D DS20-LB=479 += 3. Configure DS20L = 571 571 572 572 == 3.1 Configure Methods == 573 573 574 574 575 -D DS20-LBsupports below configure method:484 +DS20L supports below configure method: 576 576 577 577 * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]]. 578 578 ... ... @@ -594,10 +594,10 @@ 594 594 [[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/]] 595 595 596 596 597 -== 3.3 Commands special design for D DS20-LB==506 +== 3.3 Commands special design for DS20L == 598 598 599 599 600 -These commands only valid for D DS20-LB, as below:509 +These commands only valid for DS20L, as below: 601 601 602 602 603 603 === 3.3.1 Set Transmit Interval Time === ... ... @@ -612,7 +612,7 @@ 612 612 ))) 613 613 614 614 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 615 -|=(% style="width: 156px;background-color:# D9E2F3;#0070c0" %)**Command Example**|=(% style="width: 137px;background-color:#D9E2F3;#0070c0" %)**Function**|=(% style="background-color:#D9E2F3;#0070c0" %)**Response**524 +|=(% 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** 616 616 |(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|((( 617 617 30000 618 618 OK ... ... @@ -639,26 +639,31 @@ 639 639 Example 1: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds 640 640 ))) 641 641 * ((( 642 -Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 551 +Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 643 643 ))) 644 644 554 + 645 645 === 3.3.2 Set Interrupt Mode === 646 646 647 647 648 -Feature, Set Interrupt mode for PA8ofpin.558 +Feature, Set Interrupt mode for pin of GPIO_EXTI. 649 649 650 -When AT+INTMOD=0 is set, P A8is used as a digital input port.560 +When AT+INTMOD=0 is set, GPIO_EXTI is used as a digital input port. 651 651 652 652 (% style="color:blue" %)**AT Command: AT+INTMOD** 653 653 654 654 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 655 -|=(% 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**565 +|=(% 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** 656 656 |(% style="width:154px" %)AT+INTMOD=?|(% style="width:196px" %)Show current interrupt mode|(% style="width:157px" %)((( 657 657 0 658 658 OK 659 659 the mode is 0 =Disable Interrupt 660 660 ))) 661 -|(% style="width:154px" %)AT+INTMOD=2|(% style="width:196px" %)((( 571 +|(% style="width:154px" %)((( 572 +AT+INTMOD=3 573 + 574 +(default) 575 +)))|(% style="width:196px" %)((( 662 662 Set Transmit Interval 663 663 0. (Disable Interrupt), 664 664 ~1. (Trigger by rising and falling edge) ... ... @@ -676,10 +676,82 @@ 676 676 677 677 * Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger 678 678 593 + 594 + 595 +== 3.3.3 Set work mode == 596 + 597 + 598 +Feature: Switch working mode 599 + 600 +(% style="color:blue" %)**AT Command: AT+MOD** 601 + 602 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:463px" %) 603 +|=(% style="width: 162px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 193px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 108px;background-color:#4F81BD;color:white" %)**Response** 604 +|(% style="width:162px" %)AT+MOD=?|(% style="width:191px" %)Get the current working mode.|(% style="width:106px" %)OK 605 +|(% style="width:162px" %)AT+MOD=1|(% style="width:191px" %)Set the working mode to Regular measurements.|(% style="width:106px" %)((( 606 +OK 607 + 608 +Attention:Take effect after ATZ 609 +))) 610 + 611 +(% style="color:blue" %)**Downlink Command:** 612 + 613 +* **Example: **0x0A00 ~/~/ Same as AT+MOD=0 614 + 615 +* **Example:** 0x0A01 ~/~/ Same as AT+MOD=1 616 + 617 + 618 +=== 3.3.4 Set threshold and threshold mode === 619 + 620 + 621 +Feature, Set threshold and threshold mode 622 + 623 +When **AT+DOL=0,0,0,0,400** is set, No threshold is used, the sampling time is 400ms. 624 + 625 +(% style="color:blue" %)**AT Command: AT+DOL** 626 + 627 +(% border="1" cellspacing="4" style="width:571.818px" %) 628 +|(% style="width:172px;background-color:#4F81BD;color:white" %)**Command Example**|(% style="width:279px;background-color:#4F81BD;color:white" %)**Function**|(% style="width:118px;background-color:#4F81BD;color:white" %)**Response** 629 +|(% style="width:172px" %)AT+ DOL =?|(% style="width:279px" %)Get the current threshold mode and sampling time|(% style="width:118px" %)((( 630 +0,0,0,0,400 631 + 632 +OK 633 +))) 634 +|(% style="width:172px" %)AT+ DOL =1,1800,100,0,400|(% style="width:279px" %)Set only the upper and lower thresholds|(% style="width:118px" %)OK 635 + 636 + 637 +(% border="1" cellspacing="4" style="width:668.818px" %) 638 +|(% rowspan="11" style="width:166px;color:blue" %)**AT+DOL=5,1800,0,0,400**|(% rowspan="6" style="width:226px" %)The first bit sets the limit mode|(% style="width:251px" %)0:Do not use upper and lower limits 639 +|(% style="width:251px" %)1:Use upper and lower limits 640 +|(% style="width:251px" %)2:Less than the lower limit 641 +|(% style="width:251px" %)3:Greater than the lower limit 642 +|(% style="width:251px" %)4:Less than the upper limit 643 +|(% style="width:251px" %)5: Greater than the upper limit 644 +|(% style="width:226px" %)The second bit sets the upper limit value|(% style="width:251px" %)3~~2000MM 645 +|(% style="width:226px" %)The third bit sets the lower limit value|(% style="width:251px" %)3~~2000MM 646 +|(% rowspan="2" style="width:226px" %)The fourth bit sets the over-limit alarm or person or object count.|(% style="width:251px" %)0 Over-limit alarm, DO output is high 647 +|(% style="width:251px" %)1 Person or object counting statistics 648 +|(% style="width:226px" %)The fifth bit sets the sampling time|(% style="width:251px" %)((( 649 +0~~10000ms 650 + 651 + 652 +))) 653 + 654 +(% style="color:blue" %)**Downlink Command: 0x07** 655 + 656 +Format: Command Code (0x07) followed by 9bytes. 657 + 658 +* Example 0: Downlink Payload: 070000000000000190 **~-~-->** AT+MOD=0,0,0,0,400 659 + 660 +* Example 1: Downlink Payload: 070107080064000190 **~-~-->** AT+MOD=1,1800,100,0,400 661 + 662 + 663 + 664 + 679 679 = 4. Battery & Power Consumption = 680 680 681 681 682 -D DS20-LBuseER26500+SPC1520battery pack. See below link for detail information about the battery info and how to replace.668 +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. 683 683 684 684 [[**Battery Info & Power Consumption Analyze**>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] . 685 685 ... ... @@ -688,7 +688,7 @@ 688 688 689 689 690 690 (% class="wikigeneratedid" %) 691 -User can change firmware D DS20-LBto:677 +User can change firmware DS20L to: 692 692 693 693 * Change Frequency band/ region. 694 694 ... ... @@ -696,7 +696,7 @@ 696 696 697 697 * Fix bugs. 698 698 699 -Firmware and changelog can be downloaded from : **[[Firmware download link>> url:https://www.dropbox.com/sh/ph4uyz0rchflrnw/AADr1f_5Sg30804NItpfOQbla?dl=0]]**685 +Firmware and changelog can be downloaded from : **[[Firmware download link>>https://www.dropbox.com/sh/zqv1vt3komgp4tu/AAC33PnXIcWOVl_UXBEAeT_xa?dl=0]]** 700 700 701 701 Methods to Update Firmware: 702 702 ... ... @@ -706,39 +706,38 @@ 706 706 707 707 = 6. FAQ = 708 708 709 -== 6.1 DS20-LB? ==695 +== 6.1 What is the frequency plan for DS20L? == 710 710 711 711 712 -D DS20-LBuse 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"]]698 +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.2Can IuseDDS20-LB in condensationenvironment?==701 += 7. Trouble Shooting = 716 716 703 +== 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 706 +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. 1Why Ican'tjoinTTNV3inUS915/AU915bands?==709 +== 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"]] 712 +((( 713 +(% 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.) 714 +))) 727 727 716 +((( 717 +(% style="color:red" %)**Troubleshooting**(%%): Please avoid use of this product under such circumstance in practice. 718 +))) 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. 722 +(% style="color:blue" %)**Cause ②**(%%)**: **The IR-pass filters are blocked. 723 +))) 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. 725 +((( 726 +(% 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" %)**D DS20-LB-XXX**733 +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 -* D DS20-LBLoRaWANUltrasonicLiquid LevelSensor x 1758 +* 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