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, 22 removed)
- 1701149922873-259.png
- 1701152902759-553.png
- 1701152946067-561.png
- 1701155076393-719.png
- 1701155150328-206.png
- 1701155390576-216.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
- image-20231128151132-2.png
Details
- Page properties
-
- Title
-
... ... @@ -1,1 +1,1 @@ 1 -DS2 0L -- LoRaWANSmartDistanceDetector User Manual1 +LDS12-LB -- LoRaWAN LiDAR ToF Distance 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-20230614153353-1.png]] 3 3 4 4 5 5 ... ... @@ -7,7 +7,6 @@ 7 7 8 8 9 9 10 - 11 11 **Table of Contents:** 12 12 13 13 {{toc/}} ... ... @@ -19,66 +19,178 @@ 19 19 20 20 = 1. Introduction = 21 21 22 -== 1.1 What is LoRaWAN SmartDistanceDetector ==21 +== 1.1 What is LoRaWAN LiDAR ToF Distance Sensor == 23 23 24 24 25 -The Dragino (% style="color:blue" %)** DS20L isasmartdistancedetector**(%%)baseonlong-rangewireless LoRaWANtechnology. Ituses(% style="color:blue"%)**LiDARsensor**(%%) to detectthe distancebetweenDS20Landobject,thenDS20Lwill send thedistancedatatotheIoTPlatformviaLoRaWAN.DS20Lcan measurerangebetween3cm ~~ 200cm.24 +The Dragino LDS12-LB is a (% style="color:blue" %)**LoRaWAN LiDAR ToF (Time of Flight) Distance Sensor**(%%) for Internet of Things solution. It is capable to measure the distance to an object as close as 10 centimeters (+/- 5cm up to 6m) and as far as 12 meters (+/-1% starting at 6m)!. The LiDAR probe uses laser induction technology for distance measurement. 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. 26 +The LDS12-LB can be applied to scenarios such as horizontal distance measurement, parking management system, object proximity and presence detection, intelligent trash can management system, robot obstacle avoidance, automatic control, sewer, etc. 29 29 30 - DS20Lhasa (% style="color:blue"%)**built-in2400mAh non-chargeablebattery**(%%) for long-term useupto severalyears*. Userscan alsopower DS20L withanexternalpowersourcefor (%style="color:blue"%)**continuousmeasuringanddistancealarm/ countingpurposes.**28 +It detects the distance between the measured object and the sensor, and uploads the value via wireless to LoRaWAN IoT Server. 31 31 32 - DS20L isfullycompatiblewith(%style="color:blue"%)**LoRaWANv1.0.3 ClassAprotocol**(%%),itcanworkwithastandardLoRaWAN gateway.30 +The LoRa wireless technology used in LDS12-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 32 +LDS12-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"]]34 +LDS12-LB is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long term use up to 5 years. 36 36 36 +Each LDS12-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 38 +[[image:image-20230615152941-1.png||height="459" width="800"]] 39 + 40 + 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 44 +* LoRaWAN 1.0.3 Class A 45 +* Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865 46 +* Ultra-low power consumption 47 +* Laser technology for distance detection 48 +* Measure Distance: 0.1m~~12m @ 90% Reflectivity 49 +* Accuracy : ±5cm@(0.1-6m), ±1%@(6m-12m) 50 +* Monitor Battery Level 51 +* Support Bluetooth v5.1 and LoRaWAN remote configure 52 +* 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 54 +* Downlink to change configure 55 +* 8500mAh Battery for long term use 49 49 57 + 58 + 50 50 == 1.3 Specification == 51 51 52 52 53 -(% style="color:#037691" %)** LiDARSensor:**62 +(% style="color:#037691" %)**Common DC Characteristics:** 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 64 +* Supply Voltage: built in 8500mAh Li-SOCI2 battery , 2.5v ~~ 3.6v 65 +* Operating Temperature: -40 ~~ 85°C 62 62 63 - ==1.4PowerConsumption==67 +(% style="color:#037691" %)**Probe Specification:** 64 64 69 +* Storage temperature:-20℃~~75℃ 70 +* Operating temperature : -20℃~~60℃ 71 +* Measure Distance: 72 +** 0.1m ~~ 12m @ 90% Reflectivity 73 +** 0.1m ~~ 4m @ 10% Reflectivity 74 +* Accuracy : ±5cm@(0.1-6m), ±1%@(6m-12m) 75 +* Distance resolution : 5mm 76 +* Ambient light immunity : 70klux 77 +* Enclosure rating : IP65 78 +* Light source : LED 79 +* Central wavelength : 850nm 80 +* FOV : 3.6° 81 +* Material of enclosure : ABS+PC 82 +* Wire length : 25cm 65 65 66 -(% style="color:#037691" %)** BatteryPower Mode:**84 +(% style="color:#037691" %)**LoRa Spec:** 67 67 68 -* Idle: 0.003 mA @ 3.3v 69 -* Max : 360 mA 86 +* Frequency Range, Band 1 (HF): 862 ~~ 1020 Mhz 87 +* Max +22 dBm constant RF output vs. 88 +* RX sensitivity: down to -139 dBm. 89 +* Excellent blocking immunity 70 70 71 -(% style="color:#037691" %)** Continuously mode**:91 +(% style="color:#037691" %)**Battery:** 72 72 73 -* Idle: 21 mA @ 3.3v 74 -* Max : 360 mA 93 +* Li/SOCI2 un-chargeable battery 94 +* Capacity: 8500mAh 95 +* Self-Discharge: <1% / Year @ 25°C 96 +* Max continuously current: 130mA 97 +* Max boost current: 2A, 1 second 75 75 76 - =2. Configure DS20LtoconnecttoLoRaWANnetwork =99 +(% style="color:#037691" %)**Power Consumption** 77 77 101 +* Sleep Mode: 5uA @ 3.3v 102 +* LoRa Transmit Mode: 125mA @ 20dBm, 82mA @ 14dBm 103 + 104 + 105 + 106 +== 1.4 Applications == 107 + 108 + 109 +* Horizontal distance measurement 110 +* Parking management system 111 +* Object proximity and presence detection 112 +* Intelligent trash can management system 113 +* Robot obstacle avoidance 114 +* Automatic control 115 +* Sewer 116 + 117 + 118 + 119 +(% style="display:none" %) 120 + 121 +== 1.5 Sleep mode and working mode == 122 + 123 + 124 +(% 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. 125 + 126 +(% 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. 127 + 128 + 129 +== 1.6 Button & LEDs == 130 + 131 + 132 +[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675071855856-879.png]] 133 + 134 + 135 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 136 +|=(% 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** 137 +|(% style="width:167px" %)Pressing ACT between 1s < time < 3s|(% style="width:117px" %)Send an uplink|(% style="width:225px" %)((( 138 +If sensor is already Joined to LoRaWAN network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once. 139 +Meanwhile, BLE module will be active and user can connect via BLE to configure device. 140 +))) 141 +|(% style="width:167px" %)Pressing ACT for more than 3s|(% style="width:117px" %)Active Device|(% style="width:225px" %)((( 142 +(% 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. 143 +(% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network. 144 +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. 145 +))) 146 +|(% 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. 147 + 148 + 149 + 150 +== 1.7 BLE connection == 151 + 152 + 153 +LDS12-LB support BLE remote configure. 154 + 155 +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: 156 + 157 +* Press button to send an uplink 158 +* Press button to active device. 159 +* Device Power on or reset. 160 + 161 +If there is no activity connection on BLE in 60 seconds, sensor will shut down BLE module to enter low power mode. 162 + 163 + 164 +== 1.8 Pin Definitions == 165 + 166 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/WL03A-LB_LoRaWAN_None-Position_Rope_Type_Water_Leak_Controller_User_Manual/WebHome/image-20230613144156-1.png?rev=1.1||alt="image-20230613144156-1.png"]] 167 + 168 + 169 +== 1.9 Mechanical == 170 + 171 + 172 +[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143884058-338.png]] 173 + 174 + 175 +[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143899218-599.png]] 176 + 177 + 178 +[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143909447-639.png]] 179 + 180 + 181 +(% style="color:blue" %)**Probe Mechanical:** 182 + 183 + 184 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LLDS12-LoRaWAN%20LiDAR%20ToF%20Distance%20Sensor%20User%20Manual/WebHome/1654827224480-952.png?rev=1.1||alt="1654827224480-952.png"]] 185 + 186 + 187 += 2. Configure LDS12-LB to connect to LoRaWAN network = 188 + 78 78 == 2.1 How it works == 79 79 80 80 81 -The DS2 0L 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.192 +The LDS12-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 LDS12-LB. 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 83 (% style="display:none" %) (%%) 84 84 ... ... @@ -87,14 +87,15 @@ 87 87 88 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. 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" %)201 +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. 91 91 92 -[[image:image-202311 10102635-5.png||height="402" width="807"]](% style="display:none" %)203 +[[image:image-20230615153004-2.png||height="459" width="800"]](% style="display:none" %) 93 93 94 -(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from DS20L. 95 95 96 - EachDS20Lisshipped withastickerwith thedefaultdevice EUI asbelow:206 +(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from LDS12-LB. 97 97 208 +Each LDS12-LB is shipped with a sticker with the default device EUI as below: 209 + 98 98 [[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]] 99 99 100 100 ... ... @@ -122,11 +122,10 @@ 122 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"]] 123 123 124 124 125 -(% style="color:blue" %)**Step 2:**(%%) Activate on DS2 0L237 +(% style="color:blue" %)**Step 2:**(%%) Activate on LDS12-LB 126 126 127 -[[image:image-20231128133704-1.png||height="189" width="441"]] 128 128 129 -Press the button for 5 seconds to activate the DS2 0L.240 +Press the button for 5 seconds to activate the LDS12-LB. 130 130 131 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. 132 132 ... ... @@ -135,336 +135,356 @@ 135 135 136 136 == 2.3 Uplink Payload == 137 137 138 -=== 2.3.1 Device Status, FPORT~=5 === 139 139 250 +((( 251 +LDS12-LB will uplink payload via LoRaWAN with below payload format: 252 +))) 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. 254 +((( 255 +Uplink payload includes in total 11 bytes. 256 +))) 142 142 143 -The Payload format is as below. 144 - 145 145 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 146 -|=(% style="width: 6 0px;background-color:#4F81BD;color:white" %)(((259 +|=(% style="width: 62.5px;background-color:#4F81BD;color:white" %)((( 147 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 261 +)))|=(% style="width: 62.5px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 62.5px;background-color:#4F81BD;color:white" %)**2**|=(% style="background-color:#4F81BD;color:white" %)**2**|=(% style="background-color:#4F81BD;color:white" %)**2**|=(% style="background-color:#4F81BD;color:white" %)**1**|=(% style="background-color:#4F81BD;color:white" %)**1**|=(% style="background-color:#4F81BD;color:white" %)**1** 262 +|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)[[BAT>>||anchor="H2.3.1BatteryInfo"]]|(% style="width:62.5px" %)((( 263 +[[Temperature DS18B20>>||anchor="H2.3.2DS18B20Temperaturesensor"]] 264 +)))|[[Distance>>||anchor="H2.3.3Distance"]]|[[Distance signal strength>>||anchor="H2.3.4Distancesignalstrength"]]|((( 265 +[[Interrupt flag>>||anchor="H2.3.5InterruptPin"]] 266 +)))|[[LiDAR temp>>||anchor="H2.3.6LiDARtemp"]]|((( 267 +[[Message Type>>||anchor="H2.3.7MessageType"]] 268 +))) 150 150 151 - ExampleparsenTTNv3270 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LLDS12-LoRaWAN%20LiDAR%20ToF%20Distance%20Sensor%20User%20Manual/WebHome/1654833689380-972.png?rev=1.1||alt="1654833689380-972.png"]] 152 152 153 -[[image:1701149922873-259.png]] 154 154 155 - (%style="color:blue"%)**SensorModel**(%%): For DS20L, this value is 0x21273 +=== 2.3.1 Battery Info === 156 156 157 -(% style="color:blue" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version 158 158 159 - (%style="color:blue"%)**FrequencyBand**:276 +Check the battery voltage for LDS12-LB. 160 160 161 - 0x01:EU868278 +Ex1: 0x0B45 = 2885mV 162 162 163 - 0x02:US915280 +Ex2: 0x0B49 = 2889mV 164 164 165 -0x03: IN865 166 166 167 - 0x04:AU915283 +=== 2.3.2 DS18B20 Temperature sensor === 168 168 169 -0x05: KZ865 170 170 171 - 0x06:RU864286 +This is optional, user can connect external DS18B20 sensor to the +3.3v, 1-wire and GND pin . and this field will report temperature. 172 172 173 -0x07: AS923 174 174 175 - 0x08:AS923-1289 +**Example**: 176 176 177 -0 x09:AS923-2291 +If payload is: 0105H: (0105 & FC00 == 0), temp = 0105H /10 = 26.1 degree 178 178 179 - 0x0a:AS923-3293 +If payload is: FF3FH : (FF3F & FC00 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees. 180 180 181 -0x0b: CN470 182 182 183 - 0x0c:EU433296 +=== 2.3.3 Distance === 184 184 185 -0x0d: KR920 186 186 187 -0 x0e:MA869299 +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. 188 188 189 -(% style="color:blue" %)**Sub-Band**: 190 190 191 - AU915and US915:value0x00 ~~ 0x08302 +**Example**: 192 192 193 - CN470:value 0x0B~~0x0C304 +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. 194 194 195 -Other Bands: Always 0x00 196 196 197 - (%style="color:blue"%)**Battery Info**:307 +=== 2.3.4 Distance signal strength === 198 198 199 -Check the battery voltage. 200 200 201 - Ex1:0x0B45=2885mV310 +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. 202 202 203 -Ex2: 0x0B49 = 2889mV 204 204 313 +**Example**: 205 205 206 - ===2.3.2 Uplink Payload,FPORT~=2===315 +If payload is: 01D7(H)=471(D), distance signal strength=471, 471>100,471≠65535, the measured value of Dist is considered credible. 207 207 317 +Customers can judge whether they need to adjust the environment based on the signal strength. 208 208 209 -==== (% style="color:red" %)**MOD~=1**(%%) ==== 210 210 211 - Regularlydetect distance and report.Whenhedistance exceeds the limit, the alarm flag is set to 1, and thereportcan be triggered by externalinterrupts.320 +=== 2.3.5 Interrupt Pin === 212 212 213 -Uplink Payload totals 10 bytes. 214 214 215 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 216 -|(% style="background-color:#4f81bd; color:white; width:60px" %)**Size(bytes)**|(% style="background-color:#4f81bd; color:white; width:30px" %)**2**|(% style="background-color:#4f81bd; color:white; width:130px" %)**1**|(% style="background-color:#4f81bd; color:white; width:70px" %)**2**|(% style="background-color:#4f81bd; color:white; width:100px" %)**1**|(% style="background-color:#4f81bd; color:white; width:120px" %)**4** 217 -|(% style="width:91px" %)Value|(% style="width:41px" %)BAT|(% style="width:176px" %)MOD+ Alarm+Interrupt|(% style="width:74px" %)Distance|(% style="width:100px" %)Sensor State|(% style="width:119px" %)Interrupt Count 323 +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. 218 218 219 -[[imag e:1701155076393-719.png]]325 +Note: The Internet Pin is a separate pin in the screw terminal. See [[pin mapping>>||anchor="H1.8PinDefinitions"]]. 220 220 221 - (% style="color:blue" %)**Battery Info:**327 +**Example:** 222 222 223 - Checkthe batteryvoltagefor DS20L329 +0x00: Normal uplink packet. 224 224 225 - Ex1:0x0E10=3600mV331 +0x01: Interrupt Uplink Packet. 226 226 227 227 228 - (% style="color:blue"%)**MOD&Alarm& Interrupt:**334 +=== 2.3.6 LiDAR temp === 229 229 230 -(% style="color:red" %)**MOD:** 231 231 232 - **Example:**(0x60>>6)&0x3f=1337 +Characterize the internal temperature value of the sensor. 233 233 234 -**0x01:** Regularly detect distance and report. 235 -**0x02: ** Uninterrupted measurement (external power supply). 339 +**Example: ** 340 +If payload is: 1C(H) <<24>>24=28(D),LiDAR temp=28℃. 341 +If payload is: F2(H) <<24>>24=-14(D),LiDAR temp=-14℃. 236 236 237 -(% style="color:red" %)**Alarm:** 238 238 239 - Whenthedetection distance exceedsthe limit, thealarm flagis setto 1.344 +=== 2.3.7 Message Type === 240 240 241 -(% style="color:red" %)**Interrupt:** 242 242 243 -Whether it is an external interrupt. 347 +((( 348 +For a normal uplink payload, the message type is always 0x01. 349 +))) 244 244 351 +((( 352 +Valid Message Type: 353 +))) 245 245 246 -(% style="color:blue" %)**Distance info:** 355 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:499px" %) 356 +|=(% 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** 357 +|(% style="width:160px" %)0x01|(% style="width:163px" %)Normal Uplink|(% style="width:173px" %)[[Normal Uplink Payload>>||anchor="H2.3200BUplinkPayload"]] 358 +|(% style="width:160px" %)0x02|(% style="width:163px" %)Reply configures info|(% style="width:173px" %)[[Configure Info Payload>>||anchor="H3.ConfigureLDS12-LB"]] 247 247 248 -**Example**: 249 249 250 -If payload is: 0708H: distance = 0708H = 1800 mm 251 251 362 +=== 2.3.8 Decode payload in The Things Network === 252 252 253 -(% style="color:blue" %)**Sensor State:** 254 254 255 - Ex1:0x00:Normalcollection distance365 +While using TTN network, you can add the payload format to decode the payload. 256 256 257 - Ex2x0x:Distancecollectionis wrong367 +[[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"]] 258 258 259 259 260 -(% style="color:blue" %)**Interript Count:** 370 +((( 371 +The payload decoder function for TTN is here: 372 +))) 261 261 262 -If payload is:000007D0H: count = 07D0H =2000 374 +((( 375 +LDS12-LB TTN Payload Decoder: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]] 376 +))) 263 263 264 264 379 +== 2.4 Uplink Interval == 265 265 266 -==== (% style="color:red" %)**MOD~=2**(%%)** ** ==== 267 267 268 - Uninterrupted measurement. Whenthedistanceexceeds theimit,the output IOissetighand reportsare reportedeveryfiveminutes.Thetimecanbesetand poweredby anexternalpowersupply.UplinkPayload totals11bytes.382 +The LDS12-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"]] 269 269 270 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 271 -|(% style="background-color:#4f81bd; color:white; width:70px" %)**Size(bytes)**|(% style="background-color:#4f81bd; color:white; width:40px" %)**2**|(% style="background-color:#4f81bd; color:white; width:130px" %)**1**|(% style="background-color:#4f81bd; color:white; width:130px" %)**4**|(% style="background-color:#4f81bd; color:white; width:70px" %)**2**|(% style="background-color:#4f81bd; color:white; width:70px" %)**2** 272 -|(% style="width:91px" %)Value|(% style="width:41px" %)BAT|(% style="width:176px" %)MOD+Alarm+Do+Limit flag|(% style="width:74px" %)Distance Limit Alarm count|(% style="width:100px" %)Upper limit|(% style="width:119px" %)Lower limit 273 273 274 - [[image:1701155150328-206.png]]385 +== 2.5 Show Data in DataCake IoT Server == 275 275 276 -(% style="color:blue" %)**MOD & Alarm & Do & Limit flag:** 277 277 278 -(% style="color:red" %)**MOD:** 388 +((( 389 +[[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: 390 +))) 279 279 280 -**Example: ** (0x60>>6) & 0x3f =1 281 281 282 -**0x01:** Regularly detect distance and report. 283 -**0x02: ** Uninterrupted measurement (external power supply). 393 +((( 394 +(% style="color:blue" %)**Step 1**(%%)**: Be sure that your device is programmed and properly connected to the network at this time.** 395 +))) 284 284 285 -(% style="color:red" %)**Alarm:** 397 +((( 398 +(% style="color:blue" %)**Step 2**(%%)**: To configure the Application to forward data to DATACAKE you will need to add integration. To add the DATACAKE integration, perform the following steps:** 399 +))) 286 286 287 -When the detection distance exceeds the limit, the alarm flag is set to 1. 288 288 289 - (% style="color:red"%)**Do:**402 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS75%20-%20LoRaWAN%20Distance%20Detection%20Sensor%20User%20Manual/WebHome/1654592790040-760.png?rev=1.1||alt="1654592790040-760.png"]] 290 290 291 -When the distance exceeds the set threshold, pull the Do pin high. 292 292 293 - (% style="color:red"%)**Limitflag:**405 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS75%20-%20LoRaWAN%20Distance%20Detection%20Sensor%20User%20Manual/WebHome/1654592800389-571.png?rev=1.1||alt="1654592800389-571.png"]] 294 294 295 -Mode for setting threshold: 0~~5 296 296 297 - 0:doesnotseupper andlower limits408 +(% style="color:blue" %)**Step 3**(%%)**: Create an account or log in Datacake.** 298 298 299 - 1:Useper andlowerlimits410 +(% style="color:blue" %)**Step 4**(%%)**: Search the LDS12-LB and add DevEUI.** 300 300 301 - 2:hanhelowerimitvalue412 +[[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"]] 302 302 303 -3: is greater than the lower limit value 304 304 305 - 4:isless thantheupperlimit415 +After added, the sensor data arrive TTN V3, it will also arrive and show in Datacake. 306 306 307 - 5:sgreater thanheupper417 +[[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"]] 308 308 309 309 310 - (%style="color:blue"%)**Upperlimit:**420 +== 2.6 Datalog Feature == 311 311 312 -The upper limit of the threshold cannot exceed 2000mm. 313 313 423 +Datalog Feature is to ensure IoT Server can get all sampling data from Sensor even if the LoRaWAN network is down. For each sampling, LDS12-LB will store the reading for future retrieving purposes. 314 314 315 -(% style="color:blue" %)**Lower limit:** 316 316 317 - Thelowerlimitofthehresholdcannotbelessthan3mm.426 +=== 2.6.1 Ways to get datalog via LoRaWAN === 318 318 319 319 320 -= ==2.3.3Historical measuring distance,FPORT~=3===429 +Set PNACKMD=1, LDS12-LB will wait for ACK for every uplink, when there is no LoRaWAN network,LDS12-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. 321 321 431 +* ((( 432 +a) LDS12-LB will do an ACK check for data records sending to make sure every data arrive server. 433 +))) 434 +* ((( 435 +b) LDS12-LB will send data in **CONFIRMED Mode** when PNACKMD=1, but LDS12-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 LDS12-LB gets a ACK, LDS12-LB will consider there is a network connection and resend all NONE-ACK messages. 436 +))) 322 322 323 - DS20Lstoressensor valuesand userscanretrievethesehistory values viahe[[downlinkcommand>>||anchor="H2.5.4Pollsensorvalue"]].438 +Below is the typical case for the auto-update datalog feature (Set PNACKMD=1) 324 324 325 - Theistoricalpayloadcludesneormultiplies entriesdeveryentryhas thesamepayload as Real-Timemeasuringdistance.440 +[[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"]] 326 326 327 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 328 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)((( 329 -**Size(bytes)** 330 -)))|=(% 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 331 -|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)Interrupt flag & Interrupt_level|(% style="width:62.5px" %)((( 332 -Reserve(0xFF) 333 -)))|Distance|Distance signal strength|(% style="width:88px" %)((( 334 -LiDAR temp 335 -)))|(% style="width:85px" %)Unix TimeStamp 336 336 337 - **Interruptflag& Interruptlevel:**443 +=== 2.6.2 Unix TimeStamp === 338 338 339 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:480px" %) 340 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)((( 341 -**Size(bit)** 342 -)))|=(% 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** 343 -|(% 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" %)((( 344 -Interrupt flag 345 -))) 346 346 347 -* ((( 348 -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. 349 -))) 446 +LDS12-LB uses Unix TimeStamp format based on 350 350 351 - Forexample,intheUS915 band, themaxpayload for differentDRis:448 +[[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"]] 352 352 353 - **a)DR0:** maxis11 bytesso oneyofdata450 +User can get this time from link: [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] : 354 354 355 - **b)DR1:** maxis53 bytesso devices will upload 4 entriesof data (total44 bytes)452 +Below is the converter example 356 356 357 - **c) DR2:**totalpayloadcludesentriesofdata454 +[[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"]] 358 358 359 -**d) DR3:** total payload includes 22 entries of data. 360 360 361 - IfDS20Ldoesn'thaveanydatainthepollingtime.Itwilluplink11bytesof0457 +So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25 362 362 363 363 364 - **Downlink:**460 +=== 2.6.3 Set Device Time === 365 365 366 -0x31 64 CC 68 0C 64 CC 69 74 05 367 367 368 - [[image:image-20230805144936-2.png||height="113"width="746"]]463 +User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command. 369 369 370 - **Uplink:**465 +Once LDS12-LB Joined LoRaWAN network, it will send the MAC command (DeviceTimeReq) and the server will reply with (DeviceTimeAns) to send the current time to LDS12-LB. If LDS12-LB fails to get the time from the server, LDS12-LB will use the internal time and wait for next time request (AT+SYNCTDC to set the time request period, default is 10 days). 371 371 372 - 43FF0E1000B01E64CC 68 0C 40 FF 0D DE 00A81E 64CC68 29 40FF 09 92 00 D31E64CC686540 FF 02 3A02 BC1E64CC68A141FF0E1A00A41E64CC68C040FF0D2A00B81E64CC68E840FF00C8116A1E64CC692440FF0E2400AD 1E 64CC 69 6D467 +(% 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.** 373 373 374 374 375 - **ParsedValue:**470 +=== 2.6.4 Poll sensor value === 376 376 377 -[DISTANCE , DISTANCE_SIGNAL_STRENGTH,LIDAR_TEMP,EXTI_STATUS , EXTI_FLAG , TIME] 378 378 473 +Users can poll sensor values based on timestamps. Below is the downlink command. 379 379 380 -[360,176,30,High,True,2023-08-04 02:53:00], 475 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:425.818px" %) 476 +|(% colspan="4" style="background-color:#d9e2f3; color:#0070c0; width:423px" %)**Downlink Command to poll Open/Close status (0x31)** 477 +|(% style="width:58px" %)**1byte**|(% style="width:127px" %)**4bytes**|(% style="width:124px" %)**4bytes**|(% style="width:114px" %)**1byte** 478 +|(% style="width:58px" %)31|(% style="width:127px" %)Timestamp start|(% style="width:124px" %)Timestamp end|(% style="width:114px" %)Uplink Interval 381 381 382 -[355,168,30,Low,False,2023-08-04 02:53:29], 480 +((( 481 +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. 482 +))) 383 383 384 -[245,211,30,Low,False,2023-08-04 02:54:29], 484 +((( 485 +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"]] 486 +))) 385 385 386 -[57,700,30,Low,False,2023-08-04 02:55:29], 488 +((( 489 +Is to check 2021/11/12 12:00:00 to 2021/11/12 15:00:00's data 490 +))) 387 387 388 -[361,164,30,Low,True,2023-08-04 02:56:00], 492 +((( 493 +Uplink Internal =5s,means LDS12-LB will send one packet every 5s. range 5~~255s. 494 +))) 389 389 390 -[337,184,30,Low,False,2023-08-04 02:56:40], 391 391 392 - [20,4458,30,Low,False,2023-08-0402:57:40],497 +== 2.7 Frequency Plans == 393 393 394 -[362,173,30,Low,False,2023-08-04 02:58:53], 395 395 500 +The LDS12-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. 396 396 397 - **History readfromserial port:**502 +[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]] 398 398 399 -[[image:image-20230805145056-3.png]] 400 400 505 +== 2.8 LiDAR ToF Measurement == 401 401 402 -=== 2. 3.4 DecodepayloadinTheThingsNetwork===507 +=== 2.8.1 Principle of Distance Measurement === 403 403 404 404 405 - WhileusingTTNnetwork,youddthepayload format todecode thepayload.510 +The LiDAR probe is based on TOF, namely, Time of Flight principle. To be specific, the product emits modulation wave of near infrared ray on a periodic basis, which will be reflected after contacting object. The product obtains the time of flight by measuring round-trip phase difference and then calculates relative range between the product and the detection object, as shown below. 406 406 407 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LLDS12-LoRaWAN%20LiDAR%20ToF%20Distance%20Sensor%20User%20Manual/WebHome/1654592 762713-715.png?rev=1.1||alt="1654592762713-715.png"]]512 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LLDS12-LoRaWAN%20LiDAR%20ToF%20Distance%20Sensor%20User%20Manual/WebHome/1654831757579-263.png?rev=1.1||alt="1654831757579-263.png"]] 408 408 409 409 410 -((( 411 -The payload decoder function for TTN is here: 412 -))) 515 +=== 2.8.2 Distance Measurement Characteristics === 413 413 414 -((( 415 -DS20L TTN Payload Decoder: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]] 416 -))) 417 417 518 +With optimization of light path and algorithm, The LiDAR probe has minimized influence from external environment on distance measurement performance. Despite that, the range of distance measurement may still be affected by the environment illumination intensity and the reflectivity of detection object. As shown in below: 418 418 419 - == 2.4 ShowDataDataCakeIoTver520 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LLDS12-LoRaWAN%20LiDAR%20ToF%20Distance%20Sensor%20User%20Manual/WebHome/1654831774373-275.png?rev=1.1||alt="1654831774373-275.png"]] 420 420 421 421 422 422 ((( 423 - [[DATACAKE>>url:https://datacake.co/]] providesahuman friendly interface toshowthesensordata,oncewehavedatainTTN,wecanuse [[DATACAKE>>url:https://datacake.co/]]toconnectoTTN andsee the data inDATACAKE. Belowarethe steps:524 +(% style="color:blue" %)**① **(%%)Represents the detection blind zone of The LiDAR probe, 0-10cm, within which the output data is unreliable. 424 424 ))) 425 425 426 - 427 427 ((( 428 -(% style="color:blue" %)** Step1**(%%)**: Besure thatyourdeviceisprogrammedandproperly connectedtothenetworkatthistime.**528 +(% style="color:blue" %)**② **(%%)Represents the operating range of The LiDAR probe detecting black target with 10% reflectivity, 0.1-5m. 429 429 ))) 430 430 431 431 ((( 432 -(% style="color:blue" %)** Step2**(%%)**: To configure theApplicationto forwarddata toDATACAKEyou willneedto add integration.To add the DATACAKEintegration,performthefollowing steps:**532 +(% style="color:blue" %)**③ **(%%)Represents the operating range of The LiDAR probe detecting white target with 90% reflectivity, 0.1-12m. 433 433 ))) 434 434 435 435 436 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS75%20-%20LoRaWAN%20Distance%20Detection%20Sensor%20User%20Manual/WebHome/1654592790040-760.png?rev=1.1||alt="1654592790040-760.png"]] 536 +((( 537 +Vertical Coordinates: Represents the radius of light spot for The LiDAR probe at different distances. The diameter of light spot depends on the FOV of The LiDAR probe (the term of FOV generally refers to the smaller value between the receiving angle and the transmitting angle), which is calculated as follows: 538 +))) 437 437 540 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LLDS12-LoRaWAN%20LiDAR%20ToF%20Distance%20Sensor%20User%20Manual/WebHome/1654831797521-720.png?rev=1.1||alt="1654831797521-720.png"]] 438 438 439 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS75%20-%20LoRaWAN%20Distance%20Detection%20Sensor%20User%20Manual/WebHome/1654592800389-571.png?rev=1.1||alt="1654592800389-571.png"]] 542 +((( 543 +In the formula above, d is the diameter of light spot; D is detecting range; β is the value of the receiving angle of The LiDAR probe, 3.6°. Correspondence between the diameter of light spot and detecting range is given in Table below. 544 +))) 440 440 546 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LLDS12-LoRaWAN%20LiDAR%20ToF%20Distance%20Sensor%20User%20Manual/WebHome/1654831810009-716.png?rev=1.1||alt="1654831810009-716.png"]] 441 441 442 -(% style="color:blue" %)**Step 3**(%%)**: Create an account or log in Datacake.** 548 +((( 549 +If the light spot reaches two objects with different distances, as shown in Figure 3, the output distance value will be a value between the actual distance values of the two objects. For a high accuracy requirement in practice, the above situation should be noticed to avoid the measurement error. 550 +))) 443 443 444 -(% style="color:blue" %)**Step 4**(%%)**: Search the DS20L and add DevEUI.** 445 445 446 - [[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"]]553 +=== 2.8.3 Notice of usage === 447 447 448 448 449 - After added, thesensor data arriveTTN V3,it willalsoarrivendshowinDatacake.556 +Possible invalid /wrong reading for LiDAR ToF tech: 450 450 451 -[[image:1701152946067-561.png]] 558 +* Measure high reflectivity object such as: Mirror, Smooth ceramic tile, static milk surface, will have possible wrong readings. 559 +* While there is transparent object such as glass, water drop between the measured object and the LiDAR sensor, the reading might be wrong. 560 +* The LiDAR probe is cover by dirty things; the reading might be wrong. In this case, need to clean the probe. 561 +* The sensor window is made by Acrylic. Don't touch it with alcohol material. This will destroy the sensor window. 452 452 453 453 454 -== 2.5 Frequency Plans == 455 455 565 +=== 2.8.4 Reflectivity of different objects === 456 456 457 -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. 458 458 459 -[[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 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:379px" %) 569 +|=(% style="width: 54px;background-color:#4F81BD;color:white" %)Item|=(% style="width: 231px;background-color:#4F81BD;color:white" %)Material|=(% style="width: 94px;background-color:#4F81BD;color:white" %)Relectivity 570 +|(% style="width:53px" %)1|(% style="width:229px" %)Black foam rubber|(% style="width:93px" %)2.4% 571 +|(% style="width:53px" %)2|(% style="width:229px" %)Black fabric|(% style="width:93px" %)3% 572 +|(% style="width:53px" %)3|(% style="width:229px" %)Black rubber|(% style="width:93px" %)4% 573 +|(% style="width:53px" %)4|(% style="width:229px" %)Coal (different types of coal)|(% style="width:93px" %)4~~8% 574 +|(% style="width:53px" %)5|(% style="width:229px" %)Black car paint|(% style="width:93px" %)5% 575 +|(% style="width:53px" %)6|(% style="width:229px" %)Black Jam|(% style="width:93px" %)10% 576 +|(% style="width:53px" %)7|(% style="width:229px" %)Opaque black plastic|(% style="width:93px" %)14% 577 +|(% style="width:53px" %)8|(% style="width:229px" %)Clean rough board|(% style="width:93px" %)20% 578 +|(% style="width:53px" %)9|(% style="width:229px" %)Translucent plastic bottle|(% style="width:93px" %)62% 579 +|(% style="width:53px" %)10|(% style="width:229px" %)Carton cardboard|(% style="width:93px" %)68% 580 +|(% style="width:53px" %)11|(% style="width:229px" %)Clean pine|(% style="width:93px" %)70% 581 +|(% style="width:53px" %)12|(% style="width:229px" %)Opaque white plastic|(% style="width:93px" %)87% 582 +|(% style="width:53px" %)13|(% style="width:229px" %)White Jam|(% style="width:93px" %)90% 583 +|(% style="width:53px" %)14|(% style="width:229px" %)Kodak Standard Whiteboard|(% style="width:93px" %)100% 584 +|(% style="width:53px" %)15|(% style="width:229px" %)((( 585 +Unpolished white metal surface 586 +)))|(% style="width:93px" %)130% 587 +|(% style="width:53px" %)16|(% style="width:229px" %)Glossy light metal surface|(% style="width:93px" %)150% 588 +|(% style="width:53px" %)17|(% style="width:229px" %)stainless steel|(% style="width:93px" %)200% 589 +|(% style="width:53px" %)18|(% style="width:229px" %)Reflector plate, reflective tape|(% style="width:93px" %)>300% 460 460 461 461 462 -= 3. Configure DS20L = 463 463 593 += 3. Configure LDS12-LB = 594 + 464 464 == 3.1 Configure Methods == 465 465 466 466 467 -DS2 0L supports below configure method:598 +LDS12-LB supports below configure method: 468 468 469 469 * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]]. 470 470 ... ... @@ -472,6 +472,8 @@ 472 472 473 473 * LoRaWAN Downlink. Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section. 474 474 606 + 607 + 475 475 == 3.2 General Commands == 476 476 477 477 ... ... @@ -486,10 +486,10 @@ 486 486 [[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/]] 487 487 488 488 489 -== 3.3 Commands special design for DS2 0L ==622 +== 3.3 Commands special design for LDS12-LB == 490 490 491 491 492 -These commands only valid for DS2 0L, as below:625 +These commands only valid for LDS12-LB, as below: 493 493 494 494 495 495 === 3.3.1 Set Transmit Interval Time === ... ... @@ -531,15 +531,18 @@ 531 531 Example 1: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds 532 532 ))) 533 533 * ((( 534 -Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 667 +Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 668 + 669 + 670 + 535 535 ))) 536 536 537 537 === 3.3.2 Set Interrupt Mode === 538 538 539 539 540 -Feature, Set Interrupt mode for pinofGPIO_EXTI.676 +Feature, Set Interrupt mode for PA8 of pin. 541 541 542 -When AT+INTMOD=0 is set, GPIO_EXTIis used as a digital input port.678 +When AT+INTMOD=0 is set, PA8 is used as a digital input port. 543 543 544 544 (% style="color:blue" %)**AT Command: AT+INTMOD** 545 545 ... ... @@ -550,11 +550,7 @@ 550 550 OK 551 551 the mode is 0 =Disable Interrupt 552 552 ))) 553 -|(% style="width:154px" %)((( 554 -AT+INTMOD=3 555 - 556 -(default) 557 -)))|(% style="width:196px" %)((( 689 +|(% style="width:154px" %)AT+INTMOD=2|(% style="width:196px" %)((( 558 558 Set Transmit Interval 559 559 0. (Disable Interrupt), 560 560 ~1. (Trigger by rising and falling edge) ... ... @@ -572,134 +572,123 @@ 572 572 573 573 * Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger 574 574 575 -== 3.3.3 Set work mode == 576 576 577 577 578 - Feature:Switchworkingmode709 +=== 3.3.3 Get Firmware Version Info === 579 579 580 -(% style="color:blue" %)**AT Command: AT+MOD** 581 581 582 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %) 583 -|=(% style="width: 162px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 193px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 155px;background-color:#4F81BD;color:white" %)**Response** 584 -|(% style="width:162px" %)AT+MOD=?|(% style="width:191px" %)Get the current working mode.|(% style="width:106px" %)OK 585 -|(% style="width:162px" %)AT+MOD=1|(% style="width:191px" %)Set the working mode to Regular measurements.|(% style="width:106px" %)((( 586 -OK 587 -Attention:Take effect after ATZ 588 -))) 712 +Feature: use downlink to get firmware version. 589 589 590 -(% style="color:blue" %)**Downlink Command:** 714 +(% style="color:blue" %)**Downlink Command: 0x26** 591 591 592 -* **Example: **0x0A00 ~/~/ Same as AT+MOD=0 716 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:492px" %) 717 +|(% style="background-color:#4f81bd; color:white; width:191px" %)**Downlink Control Type**|(% style="background-color:#4f81bd; color:white; width:57px" %)**FPort**|(% style="background-color:#4f81bd; color:white; width:91px" %)**Type Code**|(% style="background-color:#4f81bd; color:white; width:153px" %)**Downlink payload size(bytes)** 718 +|(% style="width:191px" %)Get Firmware Version Info|(% style="width:57px" %)Any|(% style="width:91px" %)26|(% style="width:151px" %)2 593 593 594 -* **Example:** 0x0A01 ~/~/ Same as AT+MOD=1 720 +* Reply to the confirmation package: 26 01 721 +* Reply to non-confirmed packet: 26 00 595 595 596 - ===3.3.4Set thresholdand thresholdmode ===723 +Device will send an uplink after got this downlink command. With below payload: 597 597 725 +Configures info payload: 598 598 599 -Feature, Set threshold and threshold mode 727 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %) 728 +|=(% style="background-color:#4F81BD;color:white" %)((( 729 +**Size(bytes)** 730 +)))|=(% style="background-color:#4F81BD;color:white" %)**1**|=(% style="background-color:#4F81BD;color:white" %)**1**|=(% style="background-color:#4F81BD;color:white" %)**1**|=(% style="background-color:#4F81BD;color:white" %)**1**|=(% style="background-color:#4F81BD;color:white" %)**1**|=(% style="background-color:#4F81BD;color:white" %)**5**|=(% style="background-color:#4F81BD;color:white" %)**1** 731 +|**Value**|Software Type|((( 732 +Frequency Band 733 +)))|Sub-band|((( 734 +Firmware Version 735 +)))|Sensor Type|Reserve|((( 736 +[[Message Type>>||anchor="H2.3.7MessageType"]] 737 +Always 0x02 738 +))) 600 600 601 - When(% style="color:#037691" %)**AT+DOL=0,0,0,0,400**(%%)is set, No threshold is used, the sampling time is400ms.740 +(% style="color:#037691" %)**Software Type**(%%): Always 0x03 for LLDS12 602 602 603 -(% style="color: blue" %)**ATCommand: AT+DOL**742 +(% style="color:#037691" %)**Frequency Band**: 604 604 605 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 606 -|(% style="background-color:#4f81bd; color:white; width:162px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:240px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:108px" %)**Response** 607 -|(% style="width:172px" %)AT+ DOL =?|(% style="width:279px" %)Get the current threshold mode and sampling time|(% style="width:118px" %)((( 608 -0,0,0,0,400 609 -OK 610 -))) 611 -|(% style="width:172px" %)AT+ DOL =1,1800,100,0,400|(% style="width:279px" %)Set only the upper and lower thresholds|(% style="width:118px" %)OK 744 +0x01: EU868 612 612 746 +0x02: US915 613 613 614 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 615 -|(% rowspan="11" style="color:blue; width:120px" %)**AT+DOL=5,1800,0,0,400**|(% rowspan="6" style="width:240px" %)The first bit sets the limit mode|(% style="width:150px" %)0: Do not use upper and lower limits 616 -|(% style="width:251px" %)1: Use upper and lower limits 617 -|(% style="width:251px" %)2: Less than the lower limit 618 -|(% style="width:251px" %)3: Greater than the lower limit 619 -|(% style="width:251px" %)4: Less than the upper limit 620 -|(% style="width:251px" %)5: Greater than the upper limit 621 -|(% style="width:226px" %)The second bit sets the upper limit value|(% style="width:251px" %)3~~2000MM 622 -|(% style="width:226px" %)The third bit sets the lower limit value|(% style="width:251px" %)3~~2000MM 623 -|(% 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 624 -|(% style="width:251px" %)1 Person or object counting statistics 625 -|(% style="width:226px" %)The fifth bit sets the sampling time|(% style="width:251px" %)((( 626 -0~~10000ms 748 +0x03: IN865 627 627 628 - 629 -))) 750 +0x04: AU915 630 630 631 - (% style="color:blue" %)**Downlink Command:0x07**752 +0x05: KZ865 632 632 633 - Format: Command Code (0x07)followed by 9bytes.754 +0x06: RU864 634 634 635 - * Example0:Downlink Payload: 070000000000000190 **~-~-->**AT+MOD=0,0,0,0,400756 +0x07: AS923 636 636 637 - * Example 1: Downlink Payload:070107080064000190**~-~-->**AT+MOD=1,1800,100,0,400758 +0x08: AS923-1 638 638 760 +0x09: AS923-2 639 639 640 - = 4. Battery& Power Consumption =762 +0xa0: AS923-3 641 641 642 642 643 - DS20Luse built-in 2400mAh non-chargeablebattery forlong-termuse up to several years*.Seebelow link fordetailinformation about thebatteryinfoand how to replace.765 +(% style="color:#037691" %)**Sub-Band**(%%): value 0x00 ~~ 0x08 644 644 645 - [[**BatteryInfo& PowerConsumption Analyze**>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .767 +(% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version 646 646 769 +(% style="color:#037691" %)**Sensor Type**: 647 647 648 - =5. OTA Firmware update =771 +0x01: LSE01 649 649 773 +0x02: LDDS75 650 650 651 -(% class="wikigeneratedid" %) 652 -User can change firmware DS20L to: 775 +0x03: LDDS20 653 653 654 - *Change Frequency band/ region.777 +0x04: LLMS01 655 655 656 - *Update with new features.779 +0x05: LSPH01 657 657 658 - * Fixbugs.781 +0x06: LSNPK01 659 659 660 - Firmware and changelog can be downloaded from:**[[Firmwaredownload link>>https://www.dropbox.com/sh/zqv1vt3komgp4tu/AAC33PnXIcWOVl_UXBEAeT_xa?dl=0]]**783 +0x07: LLDS12 661 661 662 -Methods to Update Firmware: 663 663 664 - *(Recommandedway) OTA firmware updateviawireless: **[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/]]**786 += 4. Battery & Power Consumption = 665 665 666 -* 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]]**. 667 667 668 - =6.FAQ=789 +LDS12-LB use ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace. 669 669 670 - == 6.1 Whatisthe frequencyplanforS20L?==791 +[[**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 672 672 673 - DS20Luse the same frequency as other Dragino products.Usercan see the detail fromthis link: [[Introduction>>doc:Main.End Device FrequencyBand.WebHome||anchor="H1.Introduction"]]794 += 5. OTA Firmware update = 674 674 675 675 676 -== 6.2 DS20L programming line == 797 +(% class="wikigeneratedid" %) 798 +User can change firmware LDS12-LB to: 677 677 800 +* Change Frequency band/ region. 678 678 679 - 缺图后续补上802 +* Update with new features. 680 680 681 - feature:804 +* Fix bugs. 682 682 683 - forATcommands806 +Firmware and changelog can be downloaded from : **[[Firmware download link>>url:https://www.dropbox.com/sh/w1p7ukjrx49e62r/AAB3uCNCt-koYUvMkZUPBRSca?dl=0]]** 684 684 685 -Update the firmwareof DS20L808 +Methods to Update Firmware: 686 686 687 - Support interruptmode810 +* (Recommanded way) OTA firmware update via wireless: **[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/]]** 688 688 812 +* 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]]**. 689 689 690 -== 6.3 LiDAR probe position == 691 691 692 692 693 - [[image:1701155390576-216.png||height="285"width="307"]]816 += 6. FAQ = 694 694 695 - TheblackovalholeinthepictureistheLiDARprobe.818 +== 6.1 What is the frequency plan for LDS12-LB? == 696 696 697 697 698 - ==6.4Interface definition ==821 +LDS12-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 -[[image:image-20231128151132-2.png||height="305" width="557"]] 701 701 702 - 703 703 = 7. Trouble Shooting = 704 704 705 705 == 7.1 AT Command input doesn't work == ... ... @@ -732,7 +732,7 @@ 732 732 = 8. Order Info = 733 733 734 734 735 -Part Number: (% style="color:blue" %)**DS2 0L-XXX**856 +Part Number: (% style="color:blue" %)**LDS12-LB-XXX** 736 736 737 737 (% style="color:red" %)**XXX**(%%): **The default frequency band** 738 738 ... ... @@ -752,12 +752,14 @@ 752 752 753 753 * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band 754 754 876 + 877 + 755 755 = 9. Packing Info = 756 756 757 757 758 758 (% style="color:#037691" %)**Package Includes**: 759 759 760 -* DS2 0L LoRaWANSmartDistanceDetector x 1883 +* LDS12-LB LoRaWAN LiDAR ToF Distance Sensor x 1 761 761 762 762 (% style="color:#037691" %)**Dimension and weight**: 763 763 ... ... @@ -769,6 +769,8 @@ 769 769 770 770 * Weight / pcs : g 771 771 895 + 896 + 772 772 = 10. Support = 773 773 774 774
- 1701149922873-259.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -24.5 KB - Content
- 1701152902759-553.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -52.2 KB - Content
- 1701152946067-561.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -52.2 KB - Content
- 1701155076393-719.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -54.6 KB - Content
- 1701155150328-206.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -54.6 KB - Content
- 1701155390576-216.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -293.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
- image-20231128151132-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -281.2 KB - Content