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, 0 added, 21 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 -DS20L -- LoRaWAN SmartDistanceDetector User Manual1 +DDS20-LB -- LoRaWAN Ultrasonic Liquid Level Sensor User Manual - Content
-
... ... @@ -1,5 +1,5 @@ 1 1 (% style="text-align:center" %) 2 -[[image:image-202311 10085342-2.png||height="481" width="481"]]2 +[[image:image-20230613133716-2.png||height="717" width="717"]] 3 3 4 4 5 5 ... ... @@ -19,423 +19,436 @@ 19 19 20 20 = 1. Introduction = 21 21 22 -== 1.1 What is LoRaWAN SmartDistanceDetector ==22 +== 1.1 What is LoRaWAN Ultrasonic liquid level Sensor == 23 23 24 24 25 -The Dragino (% style="color:blue" %)** DS20Lisasmartdistancedetector**(%%)baseonlong-rangewireless LoRaWANtechnology. It usesLiDAR sensor**(%%)detectthedistancebetweenDS20Landobject, thenDS20LwillsendthedistancedatatotheIoT Platformvia LoRaWAN.DS20L canmeasurerange between3cm~~ 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 hasa(% style="color:blue" %)**built-in2400mAhnon-chargeablebattery**(%%) forlong-termuseupto severalyears*.UserscanalsopowerDS20L withanexternalpowersourcefor (% style="color:blue" %)**continuousmeasuring anddistance 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 isfullycompatiblewith(%style="color:blue"%)**LoRaWANv1.0.3 ClassAprotocol**(%%),itcanworkwithastandardLoRaWAN 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 -== 1.3 Specification == 51 51 52 52 53 - (% style="color:#037691"%)**LiDARSensor:**62 +== 1.3 Specification == 54 54 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 62 62 63 - ==1.4 Power Consumption==65 +(% style="color:#037691" %)**Common DC Characteristics:** 64 64 67 +* Supply Voltage: built in 8500mAh Li-SOCI2 battery , 2.5v ~~ 3.6v 68 +* Operating Temperature: -40 ~~ 85°C 65 65 66 -(% style="color:#037691" %)** BatteryPower Mode:**70 +(% style="color:#037691" %)**LoRa Spec:** 67 67 68 -* Idle: 0.003 mA @ 3.3v 69 -* Max : 360 mA 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 70 70 71 -(% style="color:#037691" %)** Continuously mode**:77 +(% style="color:#037691" %)**Battery:** 72 72 73 -* Idle: 21 mA @ 3.3v 74 -* Max : 360 mA 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 75 75 76 - =2. Configure DS20LtoconnecttoLoRaWANnetwork =85 +(% style="color:#037691" %)**Power Consumption** 77 77 78 -== 2.1 How it works == 87 +* Sleep Mode: 5uA @ 3.3v 88 +* LoRa Transmit Mode: 125mA @ 20dBm, 82mA @ 14dBm 79 79 90 +== 1.4 Suitable Container & Liquid == 80 80 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. 82 82 83 -(% style="display:none" %) (%%) 93 +* Solid Wall container such as: steel, iron, glass, ceramics, non-foaming plastics etc. 94 +* Container shape is regular, and surface is smooth. 95 +* Container Thickness: 96 +** Pure metal material. 2~~8mm, best is 3~~5mm 97 +** Pure non metal material: <10 mm 98 +* Pure liquid without irregular deposition. 84 84 85 -== 2.2 Quick guide to connect to LoRaWAN server (OTAA) == 86 86 101 +(% style="display:none" %) 87 87 88 - Followingis anexample for howto 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 aLoRaWANgateway in this example.103 +== 1.5 Install DDS20-LB == 89 89 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" %) 91 91 92 - [[image:image-20231110102635-5.png||height="402"width="807"]](% style="display:none"%)106 +(% style="color:blue" %)**Step 1**(%%): Choose the installation point. 93 93 94 -(% style="color: blue" %)**Step 1:**(%%)CreateadeviceinTTN with theOTAAkeysfrom DS20L.108 +DDS20-LB (% style="color:red" %)**MUST**(%%) be installed on the container bottom middle position. 95 95 96 - EachDS20L is shippedwithastickerwith thefaultdeviceEUI asbelow:110 +[[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 -[[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]] 99 99 113 +((( 114 +(% style="color:blue" %)**Step 2**(%%): Polish the installation point. 115 +))) 100 100 101 -You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot: 117 +((( 118 +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. 119 +))) 102 102 121 +[[image:image-20230613143052-5.png]] 103 103 104 -(% style="color:blue" %)**Register the device** 105 105 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"]]124 +No polish needed if the container is shine metal surface without paint or non-metal container. 107 107 126 +[[image:image-20230613143125-6.png]] 108 108 109 -(% style="color:blue" %)**Add APP EUI and DEV EUI** 110 110 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"]] 129 +((( 130 +(% style="color:blue" %)**Step3: **(%%)Test the installation point. 131 +))) 112 112 133 +((( 134 +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. 135 +))) 113 113 114 -(% style="color:blue" %)**Add APP EUI in the application** 137 +((( 138 +It is necessary to put the coupling paste between the sensor and the container, otherwise DDS20-LB won't detect the liquid level. 139 +))) 115 115 141 +((( 142 +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. 143 +))) 116 116 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"]] 118 118 146 +((( 147 +(% style="color:blue" %)**LED Status:** 148 +))) 119 119 120 -(% style="color:blue" %)**Add APP KEY** 150 +* ((( 151 +Onboard LED: When power on device, the onboard LED will fast blink 4 times which means detect the sensor well. 152 +))) 121 121 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"]] 154 +* ((( 155 +(% 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. 156 +))) 157 +* ((( 158 +(% style="color:blue" %)**BLUE LED**(% style="color:red" %)** slowly blinking**(%%): Sensor detects Liquid Level, The installation point is good. 159 +))) 123 123 161 +((( 162 +LDDS20 will enter into low power mode at 30 seconds after system reset or power on, Blue LED will be off after that. 163 +))) 124 124 125 -(% style="color:blue" %)**Step 2:**(%%) Activate on DS20L 126 126 127 -[[image:image-20231128133704-1.png||height="189" width="441"]] 166 +((( 167 +(% style="color:red" %)**Note :(%%) (% style="color:blue" %)Ultrasonic coupling paste** (%%) is subjected in most shipping way. So the default package doesn't include it and user needs to purchase locally. 168 +))) 128 128 129 -Press the button for 5 seconds to activate the DS20L. 130 130 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. 171 +((( 172 +(% style="color:blue" %)**Step4: **(%%)Install use Epoxy ab glue. 173 +))) 132 132 133 -After join success, it will start to upload messages to TTN and you can see the messages in the panel. 175 +((( 176 +Prepare Eproxy AB glue. 177 +))) 134 134 179 +((( 180 +Put Eproxy AB glue in the sensor and press it hard on the container installation point. 181 +))) 135 135 136 -== 2.3 Uplink Payload == 183 +((( 184 +Reset DDS20-LB and see if the BLUE LED is slowly blinking. 185 +))) 137 137 138 -== =2.3.1DeviceStatus, FPORT~=5187 +[[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 140 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. 190 +((( 191 +(% style="color:red" %)**Note 1:**(%%)** (% style="color:blue" %)Eproxy AB glue(%%)** needs 3~~ 5 minutes to stable attached. we can use other glue material to keep it in the position. 192 +))) 142 142 143 -The Payload format is as below. 194 +((( 195 +(% style="color:red" %)**Note 2:**(%%)** (% style="color:blue" %)Eproxy AB glue(%%)** is subjected in most shipping way. So the default package doesn't include it and user needs to purchase locally. 196 +))) 144 144 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 150 150 151 - ExampleparseinTTNv3199 +== 1.6 Applications == 152 152 153 -[[image:1701149922873-259.png]] 154 154 155 - (%style="color:blue"%)**SensorModel**(%%):For DS20L, thisvalueis 0x21202 +* Smart liquid control solution. 156 156 157 - (% style="color:blue" %)**FirmwareVersion**(%%): 0x0100, Means:v1.0.0 version204 +* Smart liquefied gas solution. 158 158 159 - (% style="color:blue"%)**Frequency Band**:206 +== 1.7 Precautions == 160 160 161 -0x01: EU868 162 162 163 - 0x02:US915209 +* 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. 164 164 165 - 0x03:IN865211 +* 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. 166 166 167 - 0x04:AU915213 +* 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" %) 168 168 169 - 0x05:KZ865215 +== 1.8 Sleep mode and working mode == 170 170 171 -0x06: RU864 172 172 173 - 0x07:AS923218 +(% 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. 174 174 175 - 0x08: AS923-1220 +(% 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. 176 176 177 -0x09: AS923-2 178 178 179 - 0x0a:AS923-3223 +== 1.9 Button & LEDs == 180 180 181 -0x0b: CN470 182 182 183 - 0x0c: EU433226 +[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675071855856-879.png]] 184 184 185 -0x0d: KR920 186 186 187 -0x0e: MA869 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. 188 188 189 - (% style="color:blue" %)**Sub-Band**:242 +== 1.10 BLE connection == 190 190 191 -AU915 and US915:value 0x00 ~~ 0x08 192 192 193 - CN470:value0x0B~~0x0C245 +DDS20-LB support BLE remote configure. 194 194 195 - Other Bands:Always0x00247 +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: 196 196 197 -(% style="color:blue" %)**Battery Info**: 249 +* Press button to send an uplink 250 +* Press button to active device. 251 +* Device Power on or reset. 198 198 199 - Checkthebatteryvoltage.253 +If there is no activity connection on BLE in 60 seconds, sensor will shut down BLE module to enter low power mode. 200 200 201 -Ex1: 0x0B45 = 2885mV 202 202 203 - Ex2:0x0B49=2889mV256 +== 1.11 Pin Definitions == 204 204 258 +[[image:image-20230523174230-1.png]] 205 205 206 -=== 2.3.2 Uplink Payload, FPORT~=2 === 207 207 261 +== 1.12 Mechanical == 208 208 209 -((( 210 -DS20L will send this uplink **after** Device Status once join the LoRaWAN network successfully. And DS20L will: 211 211 212 - periodically send this uplinkevery20 minutes, this interval[[canbechanged>>||anchor="H3.3.1SetTransmitIntervalTime"]].264 +[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143884058-338.png]] 213 213 214 -Uplink Payload totals 11 bytes. 215 -))) 216 216 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 -))) 267 +[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143899218-599.png]] 228 228 229 -[[image:image-20230805104104-2.png||height="136" width="754"]] 230 230 270 +[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143909447-639.png]] 231 231 232 -==== (% style="color:blue" %)**Battery Info**(%%) ==== 233 233 273 +(% style="color:blue" %)**Probe Mechanical:** 234 234 235 - Check the battery voltage275 +[[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"]] 236 236 237 -Ex1: 0x0B45 = 2885mV 238 238 239 - Ex2:0x0B49889mV278 +[[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"]] 240 240 241 241 242 -= ===(%style="color:blue"%)**DS18B20Temperaturesensor**(%%)====281 += 2. Configure DDS20-LB to connect to LoRaWAN network = 243 243 283 +== 2.1 How it works == 244 244 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. 246 246 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. 247 247 248 - **Example**:288 +(% style="display:none" %) (%%) 249 249 250 - Ifpayloadis:0105H:(0105&FC00 == 0),temp=0105H /10 = 26.1 degree290 +== 2.2 Quick guide to connect to LoRaWAN server (OTAA) == 251 251 252 -If payload is: FF3FH : (FF3F & FC00 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees. 253 253 293 +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. 254 254 255 - ====(%style="color:blue" %)**Distance**(%%)====295 +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. 256 256 297 +[[image:image-20230613140140-4.png||height="453" width="800"]](% style="display:none" %) 257 257 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. 259 259 300 +(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from DDS20-LB. 260 260 261 - **Example**:302 +Each DDS20-LB is shipped with a sticker with the default device EUI as below: 262 262 263 - If the data youget fromtheregister is0x0B0xEA,thedistancebetween the sensor ande measured object is 0BEA(H)=3050(D)/10 = 305cm.304 +[[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]] 264 264 265 265 266 - ====(%style="color:blue"%)**Distancesignal strength**(%%)====307 +You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot: 267 267 268 268 269 - Refersto thesignal strength, the default output valuewill be between 0-65535. When the distance measurement gear is fixed, the farther the distance measurement is, the lower the signalstrength; the lowerthe target reflectivity,thelower the signal strength. When Strengthisgreater than 100 and notequalto 65535, the measuredvalueof Dist isconsidered credible.310 +(% style="color:blue" %)**Register the device** 270 270 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"]] 271 271 272 -**Example**: 273 273 274 - If payload is: 01D7(H)=471(D),distance signalstrength=471, 471>100,471≠65535, the measured valueofDistisconsideredcredible.315 +(% style="color:blue" %)**Add APP EUI and DEV EUI** 275 275 276 - Customers canjudgewhetherhey needadjust theenvironmentbased onsignal strength.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"]] 277 277 278 278 279 - **1)Whenthesensor detectsvalid data:**320 +(% style="color:blue" %)**Add APP EUI in the application** 280 280 281 -[[image:image-20230805155335-1.png||height="145" width="724"]] 282 282 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"]] 283 283 284 -**2) When the sensor detects invalid data:** 285 285 286 - [[image:image-20230805155428-2.png||height="139"width="726"]]326 +(% style="color:blue" %)**Add APP KEY** 287 287 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"]] 288 288 289 -**3) When the sensor is not connected:** 290 290 291 - [[image:image-20230805155515-3.png||height="143"width="725"]]331 +(% style="color:blue" %)**Step 2:**(%%) Activate on DDS20-LB 292 292 293 293 294 - ==== (%style="color:blue"%)**InterruptPin & InterruptLevel**(%%)====334 +Press the button for 5 seconds to activate the DDS20-LB. 295 295 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. 296 296 297 - This datafieldshowsifthispacket isgeneratedbyinterrupt ornot.[[Click here>>||anchor="H3.3.2SetInterruptMode"]]forthehardwareandsoftwareset up.338 +After join success, it will start to upload messages to TTN and you can see the messages in the panel. 298 298 299 -Note: The Internet Pin is a separate pin in the screw terminal. See pin mapping of GPIO_EXTI . 300 300 301 - **Example:**341 +== 2.3 Uplink Payload == 302 302 303 -If byte[0]&0x01=0x00 : Normal uplink packet. 304 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 - 321 321 ((( 322 - Fora normal uplink payload,themessagetypeis always0x01.345 +DDS20-LB will uplink payload via LoRaWAN with below payload format: 323 323 ))) 324 324 325 325 ((( 326 - ValidMessageType:349 +Uplink payload includes in total 8 bytes. 327 327 ))) 328 328 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 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"]] 333 333 334 -[[image:i mage-20230805150315-4.png||height="233"width="723"]]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"]] 335 335 336 336 337 -=== 2.3. 3Historical measuringdistance,FPORT~=3===366 +=== 2.3.1 Battery Info === 338 338 339 339 340 - DS20L stores sensor values and userscanretrieve thesehistory values viathe[[downlinkcommand>>||anchor="H2.5.4Pollsensorvalue"]].369 +Check the battery voltage for DDS20-LB. 341 341 342 - Thehistoricalpayloadincludes one ormultiplies entries and every entry has the same payload as Real-Time measuring distance.371 +Ex1: 0x0B45 = 2885mV 343 343 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 373 +Ex2: 0x0B49 = 2889mV 353 353 354 -**Interrupt flag & Interrupt level:** 355 355 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 -))) 376 +=== 2.3.2 Distance === 363 363 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. 378 + 379 +((( 380 +Get the distance. Flat object range 20mm - 2000mm. 366 366 ))) 367 367 368 -For example, in the US915 band, the max payload for different DR is: 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" %)** ** 369 369 370 -**a) DR0:** max is 11 bytes so one entry of data 386 +(% style="color:blue" %)**0605(H) = 1541 (D) = 1541 mm.** 387 +))) 371 371 372 -* *b)DR1:** maxis 53 bytessodeviceswillupload4entriesofdata(total44 bytes)389 +* If the sensor value is 0x0000, it means system doesn't detect ultrasonic sensor. 373 373 374 -* *c)DR2:**totalpayloadincludes11entriesofdata391 +* If the sensor value lower than 0x0014 (20mm), the sensor value will be invalid. 375 375 376 - **d)DR3:**totalpayloadincludes22 entries of data.393 +=== 2.3.3 Interrupt Pin === 377 377 378 -If DS20L doesn't have any data in the polling time. It will uplink 11 bytes of 0 379 379 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. 380 380 381 -** Downlink:**398 +**Example:** 382 382 383 -0x 31 64 CC 680C64CC69 74 05400 +0x00: Normal uplink packet. 384 384 385 - [[image:image-20230805144936-2.png||height="113"width="746"]]402 +0x01: Interrupt Uplink Packet. 386 386 387 -**Uplink:** 388 388 389 - 43FF 0E 10 00 B0 1E 64 CC 68 0C 40 FF 0D DE 00 A8 1E 64 CC 682940FF 09 92 00D31E 64 CC 6865 40 FF 02 3A 02BC 1E 64 CC 68 A1 41 FF 0E 1A 00 A4 1E 64 CC 68 C0 40 FF 0D2A00B81E64 CC 68 E8 40 FF 00 C8 11 6A 1E 64 CC 69 24 40 FF 0E 24 00 AD 1E 64 CC 69 6D405 +=== 2.3.4 DS18B20 Temperature sensor === 390 390 391 391 392 - **ParsedValue:**408 +This is optional, user can connect external DS18B20 sensor to the +3.3v, 1-wire and GND pin . and this field will report temperature. 393 393 394 - [DISTANCE, DISTANCE_SIGNAL_STRENGTH,LIDAR_TEMP,EXTI_STATUS , EXTI_FLAG , TIME]410 +**Example**: 395 395 412 +If payload is: 0105H: (0105 & FC00 == 0), temp = 0105H /10 = 26.1 degree 396 396 397 - [360,176,30,High,True,2023-08-0402:53:00],414 +If payload is: FF3FH : (FF3F & FC00 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees. 398 398 399 -[355,168,30,Low,False,2023-08-04 02:53:29], 400 400 401 - [245,211,30,Low,False,2023-08-0402:54:29],417 +=== 2.3.5 Sensor Flag === 402 402 403 -[57,700,30,Low,False,2023-08-04 02:55:29], 404 404 405 -[361,164,30,Low,True,2023-08-04 02:56:00], 420 +((( 421 +0x01: Detect Ultrasonic Sensor 422 +))) 406 406 407 -[337,184,30,Low,False,2023-08-04 02:56:40], 424 +((( 425 +0x00: No Ultrasonic Sensor 426 +))) 408 408 409 -[20,4458,30,Low,False,2023-08-04 02:57:40], 410 410 411 - [362,173,30,Low,False,2023-08-0402:58:53],429 +=== 2.3.6 Decode payload in The Things Network === 412 412 413 413 414 -**History read from serial port:** 415 - 416 -[[image:image-20230805145056-3.png]] 417 - 418 - 419 -=== 2.3.4 Decode payload in The Things Network === 420 - 421 - 422 422 While using TTN network, you can add the payload format to decode the payload. 423 423 424 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/L LDS12-LoRaWAN%20LiDAR%20ToF%20Distance%20Sensor%20User%20Manual/WebHome/1654592762713-715.png?rev=1.1||alt="1654592762713-715.png"]]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"]] 425 425 436 +The payload decoder function for TTN V3 is here: 426 426 427 427 ((( 428 -T hepayloaddecoderfunctionforTTNis here:439 +DDS20-LB TTN V3 Payload Decoder: [[ttps:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]] 429 429 ))) 430 430 431 -((( 432 -DS20L TTN Payload Decoder: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]] 433 -))) 434 434 443 +== 2.4 Uplink Interval == 435 435 436 -== 2.4 Show Data in DataCake IoT Server == 437 437 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"]] 438 438 448 + 449 +== 2.5 Show Data in DataCake IoT Server == 450 + 451 + 439 439 ((( 440 440 [[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: 441 441 ))) ... ... @@ -458,7 +458,7 @@ 458 458 459 459 (% style="color:blue" %)**Step 3**(%%)**: Create an account or log in Datacake.** 460 460 461 -(% style="color:blue" %)**Step 4**(%%)**: Search the DS20L and add DevEUI.** 474 +(% style="color:blue" %)**Step 4**(%%)**: Search the DDS20-LB and add DevEUI.** 462 462 463 463 [[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"]] 464 464 ... ... @@ -468,20 +468,98 @@ 468 468 [[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"]] 469 469 470 470 471 -== 2.5 Frequency Plans == 472 472 485 +== 2.6 Datalog Feature == 473 473 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. 475 475 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 + 476 476 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]] 477 477 478 478 479 -= 3. Configure DS20L = 570 += 3. Configure DDS20-LB = 480 480 481 481 == 3.1 Configure Methods == 482 482 483 483 484 -DS20L supports below configure method: 575 +DDS20-LB supports below configure method: 485 485 486 486 * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]]. 487 487 ... ... @@ -503,10 +503,10 @@ 503 503 [[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/]] 504 504 505 505 506 -== 3.3 Commands special design for DS20L == 597 +== 3.3 Commands special design for DDS20-LB == 507 507 508 508 509 -These commands only valid for DS20L, as below: 600 +These commands only valid for DDS20-LB, as below: 510 510 511 511 512 512 === 3.3.1 Set Transmit Interval Time === ... ... @@ -521,7 +521,7 @@ 521 521 ))) 522 522 523 523 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 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**615 +|=(% 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** 525 525 |(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|((( 526 526 30000 527 527 OK ... ... @@ -548,31 +548,26 @@ 548 548 Example 1: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds 549 549 ))) 550 550 * ((( 551 -Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 642 +Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 552 552 ))) 553 553 554 - 555 555 === 3.3.2 Set Interrupt Mode === 556 556 557 557 558 -Feature, Set Interrupt mode for pinofGPIO_EXTI.648 +Feature, Set Interrupt mode for PA8 of pin. 559 559 560 -When AT+INTMOD=0 is set, GPIO_EXTIis used as a digital input port.650 +When AT+INTMOD=0 is set, PA8 is used as a digital input port. 561 561 562 562 (% style="color:blue" %)**AT Command: AT+INTMOD** 563 563 564 564 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 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**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** 566 566 |(% style="width:154px" %)AT+INTMOD=?|(% style="width:196px" %)Show current interrupt mode|(% style="width:157px" %)((( 567 567 0 568 568 OK 569 569 the mode is 0 =Disable Interrupt 570 570 ))) 571 -|(% style="width:154px" %)((( 572 -AT+INTMOD=3 573 - 574 -(default) 575 -)))|(% style="width:196px" %)((( 661 +|(% style="width:154px" %)AT+INTMOD=2|(% style="width:196px" %)((( 576 576 Set Transmit Interval 577 577 0. (Disable Interrupt), 578 578 ~1. (Trigger by rising and falling edge) ... ... @@ -590,82 +590,10 @@ 590 590 591 591 * Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger 592 592 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" %)**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 - 665 665 = 4. Battery & Power Consumption = 666 666 667 667 668 -DS20L use built-in2400mAhnon-chargeablebatteryfor long-term use upto several years*. See below link for detail information about the battery info and how to replace.682 +DDS20-LB use ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace. 669 669 670 670 [[**Battery Info & Power Consumption Analyze**>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] . 671 671 ... ... @@ -674,7 +674,7 @@ 674 674 675 675 676 676 (% class="wikigeneratedid" %) 677 -User can change firmware DS20L to: 691 +User can change firmware DDS20-LB to: 678 678 679 679 * Change Frequency band/ region. 680 680 ... ... @@ -682,7 +682,7 @@ 682 682 683 683 * Fix bugs. 684 684 685 -Firmware and changelog can be downloaded from : **[[Firmware download link>>https://www.dropbox.com/sh/ zqv1vt3komgp4tu/AAC33PnXIcWOVl_UXBEAeT_xa?dl=0]]**699 +Firmware and changelog can be downloaded from : **[[Firmware download link>>url:https://www.dropbox.com/sh/ph4uyz0rchflrnw/AADr1f_5Sg30804NItpfOQbla?dl=0]]** 686 686 687 687 Methods to Update Firmware: 688 688 ... ... @@ -690,40 +690,42 @@ 690 690 691 691 * 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]]**. 692 692 707 + 693 693 = 6. FAQ = 694 694 695 -== 6.1 What is the frequency plan for DS20L? == 710 +== 6.1 What is the frequency plan for DDS20-LB? == 696 696 697 697 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 +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"]] 699 699 700 700 701 -= 7.Trouble Shooting=716 +== 6.2 Can I use DDS20-LB in condensation environment? == 702 702 703 -== 7.1 AT Command input doesn't work == 704 704 719 +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. 705 705 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. 707 707 722 += 7. Trouble Shooting = 708 708 709 -== 7. 2Significanterror betweentheoutputdistantvalueofLiDARandactual distance==724 +== 7.1 Why I can't join TTN V3 in US915 / AU915 bands? == 710 710 711 711 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 +It is due to channel mapping. Please see below link: [[Frequency band>>doc:Main.LoRaWAN Communication Debug.WebHome||anchor="H2.NoticeofUS9152FCN4702FAU915Frequencyband"]] 715 715 716 -((( 717 -(% style="color:red" %)**Troubleshooting**(%%): Please avoid use of this product under such circumstance in practice. 718 -))) 719 719 730 +== 7.2 AT Command input doesn't work == 720 720 721 -((( 722 -(% style="color:blue" %)**Cause ②**(%%)**: **The IR-pass filters are blocked. 723 -))) 724 724 733 +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. 734 + 735 + 736 +== 7.3 Why i always see 0x0000 or 0 for the distance value? == 737 + 738 + 725 725 ((( 726 -(% style="color:red" %)**Troubleshooting**(%%): please use dry dust-free cloth to gently remove the foreign matter. 740 +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. 741 + 742 +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. 727 727 ))) 728 728 729 729 ... ... @@ -730,7 +730,7 @@ 730 730 = 8. Order Info = 731 731 732 732 733 -Part Number: (% style="color:blue" %)**DS20L-XXX** 749 +Part Number: (% style="color:blue" %)**DDS20-LB-XXX** 734 734 735 735 (% style="color:red" %)**XXX**(%%): **The default frequency band** 736 736 ... ... @@ -755,7 +755,7 @@ 755 755 756 756 (% style="color:#037691" %)**Package Includes**: 757 757 758 -* DS20L LoRaWAN SmartDistanceDetector x 1774 +* DDS20-LB LoRaWAN Ultrasonic Liquid Level Sensor x 1 759 759 760 760 (% style="color:#037691" %)**Dimension and weight**: 761 761
- 1701149922873-259.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -24.5 KB - Content
- 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
- image-20231128133704-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -190.6 KB - Content