Changes for page DS20L -- LoRaWAN Smart Distance Detector User Manual 01
Last modified by Mengting Qiu on 2023/12/14 11:15
From version 140.1
edited by Mengting Qiu
on 2023/12/07 14:51
on 2023/12/07 14:51
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 20 removed)
- 1701149922873-259.png
- 1701152902759-553.png
- 1701152946067-561.png
- 1701155076393-719.png
- 1701155150328-206.png
- 1701155390576-216.png
- image-20231128151132-2.png
- image-20231129085201-1.png
- image-20231129100454-2.png
- image-20231206143515-1.png
- image-20231206144950-2.png
- image-20231206151412-3.png
- image-20231206154621-4.png
- image-20231206194804-5.png
- image-20231206195704-6.png
- image-20231207142208-1.png
- image-20231207144600-2.png
- image-20231207144837-3.png
- image-20231207144856-4.png
- image-20231207145121-5.png
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. ting1 +XWiki.Xiaoling - Content
-
... ... @@ -8,7 +8,7 @@ 8 8 9 9 10 10 11 -**Table of Contents :(% style="display:none" %) (%%)**11 +**Table of Contents:** 12 12 13 13 {{toc/}} 14 14 ... ... @@ -60,6 +60,8 @@ 60 60 * ToF FoV: ±9°, Total 18° 61 61 * Light source: VCSEL 62 62 63 + 64 + 63 63 == 1.4 Power Consumption == 64 64 65 65 ... ... @@ -73,6 +73,8 @@ 73 73 * Idle: 21 mA @ 3.3v 74 74 * Max : 360 mA 75 75 78 + 79 + 76 76 = 2. Configure DS20L to connect to LoRaWAN network = 77 77 78 78 == 2.1 How it works == ... ... @@ -91,7 +91,7 @@ 91 91 92 92 [[image:image-20231110102635-5.png||height="402" width="807"]](% style="display:none" %) 93 93 94 -= ==Step 1: Create a device in TTN with the OTAA keys from DS20L.===98 +(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from DS20L. 95 95 96 96 Each DS20L is shipped with a sticker with the default device EUI as below: 97 97 ... ... @@ -98,24 +98,33 @@ 98 98 [[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]] 99 99 100 100 101 -You can enter this key in the LoRaWAN Server portal. V3screenshot:105 +You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot: 102 102 103 103 104 104 (% style="color:blue" %)**Register the device** 105 105 106 -[[image:i mage-20231207144600-2.png||height="703" width="756"]]110 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/1654935135620-998.png?rev=1.1||alt="1654935135620-998.png"]] 107 107 108 108 109 -(% style="color:blue" %)**Add DevEUI andAppKey**113 +(% style="color:blue" %)**Add APP EUI and DEV EUI** 110 110 111 -[[image:i mage-20231207145121-5.png||height="540" width="756"]]115 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-4.png?width=753&height=551&rev=1.1||alt="图片-20220611161308-4.png"]] 112 112 113 113 118 +(% style="color:blue" %)**Add APP EUI in the application** 114 114 115 -=== Step 2: Activate on DS20L === 116 116 117 -[[image:i mage-20231128133704-1.png||height="189" width="441"]]121 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-5.png?width=742&height=601&rev=1.1||alt="图片-20220611161308-5.png"]] 118 118 123 + 124 +(% style="color:blue" %)**Add APP KEY** 125 + 126 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-6.png?width=744&height=485&rev=1.1||alt="图片-20220611161308-6.png"]] 127 + 128 + 129 +(% style="color:blue" %)**Step 2:**(%%) Activate on DS20L 130 + 131 + 119 119 Press the button for 5 seconds to activate the DS20L. 120 120 121 121 (% 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. ... ... @@ -123,7 +123,6 @@ 123 123 After join success, it will start to upload messages to TTN and you can see the messages in the panel. 124 124 125 125 126 - 127 127 == 2.3 Uplink Payload == 128 128 129 129 === 2.3.1 Device Status, FPORT~=5 === ... ... @@ -141,9 +141,9 @@ 141 141 142 142 Example parse in TTNv3 143 143 144 -[[image:image-2023 1206151412-3.png||height="179" width="1070"]]156 +[[image:image-20230805103904-1.png||height="131" width="711"]] 145 145 146 -(% style="color:blue" %)**Sensor Model**(%%): For DS20L, this value is 0x2 1158 +(% style="color:blue" %)**Sensor Model**(%%): For DS20L, this value is 0x24 147 147 148 148 (% style="color:blue" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version 149 149 ... ... @@ -197,123 +197,222 @@ 197 197 === 2.3.2 Uplink Payload, FPORT~=2 === 198 198 199 199 200 -==== (% style="color:red" %)**MOD~=1**(%%) ==== 212 +((( 213 +DS20L will send this uplink **after** Device Status once join the LoRaWAN network successfully. And DS20L will: 201 201 202 - Regularlydetect distanceandreport. When the distanceexceedsthelimit, the alarm flagisset to 1, andtheeportcan betriggered by externalinterrupts.215 +periodically send this uplink every 20 minutes, this interval [[can be changed>>||anchor="H3.3.1SetTransmitIntervalTime"]]. 203 203 204 -Uplink Payload totals 10 bytes. 217 +Uplink Payload totals 11 bytes. 218 +))) 205 205 206 206 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 207 -|(% 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** 208 -|(% 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 221 +|=(% style="width: 60px;background-color:#4F81BD;color:white" %)((( 222 +**Size(bytes)** 223 +)))|=(% style="width: 30px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 80px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 50px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 70px;background-color:#4F81BD;color:white" %)**2**|=(% style="background-color:#4F81BD;color:white; width: 80px;" %)**1**|=(% style="background-color: #4F81BD;color:white; width: 70px;" %)**1**|=(% style="background-color: #4F81BD;color:white; width: 70px;" %)**1** 224 +|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)[[BAT>>||anchor="HBatteryInfo"]]|(% style="width:62.5px" %)((( 225 +[[Temperature DS18B20>>||anchor="HDS18B20Temperaturesensor"]] 226 +)))|[[Distance>>||anchor="HDistance"]]|[[Distance signal strength>>||anchor="HDistancesignalstrength"]]|(% style="width:122px" %)((( 227 +[[Interrupt flag & Interrupt_level>>||anchor="HInterruptPin26A0InterruptLevel"]] 228 +)))|(% style="width:54px" %)[[LiDAR temp>>||anchor="HLiDARtemp"]]|(% style="width:96px" %)((( 229 +[[Message Type>>||anchor="HMessageType"]] 230 +))) 209 209 210 -[[image:image-20231 206195704-6.png||height="238" width="999"]]232 +[[image:image-20230805104104-2.png||height="136" width="754"]] 211 211 212 -(% style="color:blue" %)**Battery Info:** 213 213 214 - CheckthevoltageforDS20L235 +==== (% style="color:blue" %)**Battery Info**(%%) ==== 215 215 216 -Ex1: 0x0E10 = 3600mV 217 217 238 +Check the battery voltage for DS20L. 218 218 219 - (% style="color:blue"%)**MOD&Alarm& Interrupt:**240 +Ex1: 0x0B45 = 2885mV 220 220 221 - (%style="color:red"%)**MOD:**242 +Ex2: 0x0B49 = 2889mV 222 222 223 -**Example: ** (0x60>>6) & 0x3f =1 224 224 225 -**0x01:** Regularly detect distance and report. 226 -**0x02: ** Uninterrupted measurement (external power supply). 245 +==== (% style="color:blue" %)**DS18B20 Temperature sensor**(%%) ==== 227 227 228 -(% style="color:red" %)**Alarm:** 229 229 230 - Whenthedetectiondistance exceeds thelimit,the alarmflagisset to 1.248 +This is optional, user can connect external DS18B20 sensor to the +3.3v, 1-wire and GND pin . and this field will report temperature. 231 231 232 -(% style="color:red" %)**Interrupt:** 233 233 234 - Whether it is an externalinterrupt.251 +**Example**: 235 235 253 +If payload is: 0105H: (0105 & FC00 == 0), temp = 0105H /10 = 26.1 degree 236 236 237 - (%style="color:blue"%)**Distanceinfo:**255 +If payload is: FF3FH : (FF3F & FC00 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees. 238 238 257 + 258 +==== (% style="color:blue" %)**Distance**(%%) ==== 259 + 260 + 261 +Represents the distance value of the measurement output, the default unit is cm, and the value range parsed as a decimal number is 0-1200. In actual use, when the signal strength value Strength. 262 + 263 + 239 239 **Example**: 240 240 241 -If payloadis:0708H:distance=0708H =1800 mm266 +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. 242 242 243 243 244 -(% style="color:blue" %)** SensorState:**269 +==== (% style="color:blue" %)**Distance signal strength**(%%) ==== 245 245 246 -Ex1: 0x00: Normal collection distance 247 247 248 - Ex20x0x:Distance collection iswrong272 +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. 249 249 250 250 251 - (% style="color:blue" %)**Interript Count:**275 +**Example**: 252 252 253 -If payload is:0 00007D0H:count= 07D0H=2000277 +If payload is: 01D7(H)=471(D), distance signal strength=471, 471>100,471≠65535, the measured value of Dist is considered credible. 254 254 279 +Customers can judge whether they need to adjust the environment based on the signal strength. 255 255 256 256 257 - ====(%style="color:red"%)**MOD~=2**(%%)** ** ====282 +**1) When the sensor detects valid data:** 258 258 259 - Uninterruptedmeasurement.Whenthedistance exceeds the limit, the output IO is set highand reportsare reported every five minutes. The time can be set and powered by an external power supply.Uplink Payloadotals 11bytes.284 +[[image:image-20230805155335-1.png||height="145" width="724"]] 260 260 286 + 287 +**2) When the sensor detects invalid data:** 288 + 289 +[[image:image-20230805155428-2.png||height="139" width="726"]] 290 + 291 + 292 +**3) When the sensor is not connected:** 293 + 294 +[[image:image-20230805155515-3.png||height="143" width="725"]] 295 + 296 + 297 +==== (% style="color:blue" %)**Interrupt Pin & Interrupt Level**(%%) ==== 298 + 299 + 300 +This data field shows if this packet is generated by interrupt or not. [[Click here>>||anchor="H3.3.2SetInterruptMode"]] for the hardware and software set up. 301 + 302 +Note: The Internet Pin is a separate pin in the screw terminal. See pin mapping of GPIO_EXTI . 303 + 304 +**Example:** 305 + 306 +If byte[0]&0x01=0x00 : Normal uplink packet. 307 + 308 +If byte[0]&0x01=0x01 : Interrupt Uplink Packet. 309 + 310 + 311 +==== (% style="color:blue" %)**LiDAR temp**(%%) ==== 312 + 313 + 314 +Characterize the internal temperature value of the sensor. 315 + 316 +**Example: ** 317 +If payload is: 1C(H) <<24>>24=28(D),LiDAR temp=28℃. 318 +If payload is: F2(H) <<24>>24=-14(D),LiDAR temp=-14℃. 319 + 320 + 321 +==== (% style="color:blue" %)**Message Type**(%%) ==== 322 + 323 + 324 +((( 325 +For a normal uplink payload, the message type is always 0x01. 326 +))) 327 + 328 +((( 329 +Valid Message Type: 330 +))) 331 + 332 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:499px" %) 333 +|=(% style="width: 161px;background-color:#4F81BD;color:white" %)**Message Type Code**|=(% style="width: 164px;background-color:#4F81BD;color:white" %)**Description**|=(% style="width: 174px;background-color:#4F81BD;color:white" %)**Payload** 334 +|(% style="width:160px" %)0x01|(% style="width:163px" %)Normal Uplink|(% style="width:173px" %)Normal Uplink Payload 335 +|(% style="width:160px" %)0x02|(% style="width:163px" %)Reply configures info|(% style="width:173px" %)Configure Info Payload 336 + 337 +[[image:image-20230805150315-4.png||height="233" width="723"]] 338 + 339 + 340 +=== 2.3.3 Historical measuring distance, FPORT~=3 === 341 + 342 + 343 +DS20L stores sensor values and users can retrieve these history values via the [[downlink command>>||anchor="H2.5.4Pollsensorvalue"]]. 344 + 345 +The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time measuring distance. 346 + 261 261 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 262 -|(% 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** 263 -|(% 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 348 +|=(% style="width: 60px;background-color:#4F81BD;color:white" %)((( 349 +**Size(bytes)** 350 +)))|=(% style="width: 80px;background-color:#4F81BD;color:white" %)1|=(% style="width: 80px;background-color:#4F81BD;color:white" %)**1**|=(% style="width: 50px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 70px;background-color:#4F81BD;color:white" %)**2**|=(% style="background-color:#4F81BD; color: white; width: 85px;" %)**1**|=(% style="background-color: #4F81BD; color: white; width: 85px;" %)4 351 +|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)Interrupt flag & Interrupt_level|(% style="width:62.5px" %)((( 352 +Reserve(0xFF) 353 +)))|Distance|Distance signal strength|(% style="width:88px" %)((( 354 +LiDAR temp 355 +)))|(% style="width:85px" %)Unix TimeStamp 264 264 265 - [[image:1701155150328-206.png]]357 +**Interrupt flag & Interrupt level:** 266 266 267 -(% style="color:blue" %)**MOD & Alarm & Do & Limit flag:** 359 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:480px" %) 360 +|=(% style="width: 60px;background-color:#4F81BD;color:white" %)((( 361 +**Size(bit)** 362 +)))|=(% style="width: 90px;background-color:#4F81BD;color:white" %)**bit7**|=(% style="width: 90px;background-color:#4F81BD;color:white" %)**bit6**|=(% style="width: 60px;background-color:#4F81BD;color:white" %)**[bit5:bit2]**|=(% style="width: 90px; background-color: #4F81BD; color: white;" %)**bit1**|=(% style="background-color: #4F81BD; color: white; width: 90px;" %)**bit0** 363 +|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)No ACK message|(% style="width:62.5px" %)Poll Message Flag|Reserve|(% style="width:91px" %)Interrupt level|(% style="width:88px" %)((( 364 +Interrupt flag 365 +))) 268 268 269 -(% style="color:red" %)**MOD:** 367 +* ((( 368 +Each data entry is 11 bytes and has the same structure as [[Uplink Payload>>||anchor="H2.3.2UplinkPayload2CFPORT3D2"]], to save airtime and battery, DS20L will send max bytes according to the current DR and Frequency bands. 369 +))) 270 270 271 - **Example:**(0x60>>6)&0x3f=1371 +For example, in the US915 band, the max payload for different DR is: 272 272 273 -**0x01:** Regularly detect distance and report. 274 -**0x02: ** Uninterrupted measurement (external power supply). 373 +**a) DR0:** max is 11 bytes so one entry of data 275 275 276 - (%style="color:red"%)**Alarm:**375 +**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes) 277 277 278 - Whenthe detectiondistance exceedsthelimit, thealarm flagisset to1.377 +**c) DR2:** total payload includes 11 entries of data 279 279 280 - (%style="color:red"%)**Do:**379 +**d) DR3:** total payload includes 22 entries of data. 281 281 282 - Whendistanceexceedsthesetthreshold,pull theDopinhigh.381 +If DS20L doesn't have any data in the polling time. It will uplink 11 bytes of 0 283 283 284 -(% style="color:red" %)**Limit flag:** 285 285 286 - Mode for setting threshold:0~~5**384 +**Downlink:** 287 287 288 - **0:**doesnotuseupperandlowerlimits386 +0x31 64 CC 68 0C 64 CC 69 74 05 289 289 290 - **1:** Useupper and lowerlimits388 +[[image:image-20230805144936-2.png||height="113" width="746"]] 291 291 292 -** 2:**is less than the lower limit value390 +**Uplink:** 293 293 294 - **3:**isgreaterthanthelowerlimitvalue392 +43 FF 0E 10 00 B0 1E 64 CC 68 0C 40 FF 0D DE 00 A8 1E 64 CC 68 29 40 FF 09 92 00 D3 1E 64 CC 68 65 40 FF 02 3A 02 BC 1E 64 CC 68 A1 41 FF 0E 1A 00 A4 1E 64 CC 68 C0 40 FF 0D 2A 00 B8 1E 64 CC 68 E8 40 FF 00 C8 11 6A 1E 64 CC 69 24 40 FF 0E 24 00 AD 1E 64 CC 69 6D 295 295 296 -**4:** is less than the upper limit 297 297 298 -** 5:** is greaterthan the upper limit395 +**Parsed Value:** 299 299 397 +[DISTANCE , DISTANCE_SIGNAL_STRENGTH,LIDAR_TEMP,EXTI_STATUS , EXTI_FLAG , TIME] 300 300 301 -(% style="color:blue" %)**Upper limit:** 302 302 303 - The upper limit of the threshold cannot exceed2000mm.400 +[360,176,30,High,True,2023-08-04 02:53:00], 304 304 402 +[355,168,30,Low,False,2023-08-04 02:53:29], 305 305 306 - (% style="color:blue" %)**Lowerlimit:**404 +[245,211,30,Low,False,2023-08-04 02:54:29], 307 307 308 - The lower limit of the threshold cannot beless than3mm.406 +[57,700,30,Low,False,2023-08-04 02:55:29], 309 309 408 +[361,164,30,Low,True,2023-08-04 02:56:00], 310 310 311 - == 2.4Decode payload in The ThingsNetwork==410 +[337,184,30,Low,False,2023-08-04 02:56:40], 312 312 412 +[20,4458,30,Low,False,2023-08-04 02:57:40], 313 313 414 +[362,173,30,Low,False,2023-08-04 02:58:53], 415 + 416 + 417 +**History read from serial port:** 418 + 419 +[[image:image-20230805145056-3.png]] 420 + 421 + 422 +=== 2.3.4 Decode payload in The Things Network === 423 + 424 + 314 314 While using TTN network, you can add the payload format to decode the payload. 315 315 316 -[[image:i mage-20231206143515-1.png||height="534" width="759"]]427 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LLDS12-LoRaWAN%20LiDAR%20ToF%20Distance%20Sensor%20User%20Manual/WebHome/1654592762713-715.png?rev=1.1||alt="1654592762713-715.png"]] 317 317 318 318 319 319 ((( ... ... @@ -325,7 +325,7 @@ 325 325 ))) 326 326 327 327 328 -== 2. 5Show Data in DataCake IoT Server ==439 +== 2.4 Show Data in DataCake IoT Server == 329 329 330 330 331 331 ((( ... ... @@ -357,9 +357,81 @@ 357 357 358 358 After added, the sensor data arrive TTN V3, it will also arrive and show in Datacake. 359 359 360 -[[image:image-202 31129100454-2.png||height="501" width="928"]]471 +[[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"]] 361 361 362 362 474 +== 2.5 Datalog Feature == 475 + 476 + 477 +Datalog Feature is to ensure IoT Server can get all sampling data from Sensor even if the LoRaWAN network is down. For each sampling, DS20L will store the reading for future retrieving purposes. 478 + 479 + 480 +=== 2.5.1 Ways to get datalog via LoRaWAN === 481 + 482 + 483 +Set PNACKMD=1, DS20L will wait for ACK for every uplink, when there is no LoRaWAN network, DS20L will mark these records with non-ack messages and store the sensor data, and it will send all messages (10s interval) after the network recovery. 484 + 485 +* ((( 486 +a) DS20L will do an ACK check for data records sending to make sure every data arrive server. 487 +))) 488 +* ((( 489 +b) DS20L will send data in **CONFIRMED Mode** when PNACKMD=1, but DS20L won't re-transmit the packet if it doesn't get ACK, it will just mark it as a NONE-ACK message. In a future uplink if DS20L gets a ACK, DS20L will consider there is a network connection and resend all NONE-ACK messages. 490 +))) 491 + 492 +=== 2.5.2 Unix TimeStamp === 493 + 494 + 495 +DS20L uses Unix TimeStamp format based on 496 + 497 +[[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"]] 498 + 499 +User can get this time from link: [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] : 500 + 501 +Below is the converter example 502 + 503 +[[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"]] 504 + 505 + 506 +So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25 507 + 508 + 509 +=== 2.5.3 Set Device Time === 510 + 511 + 512 +User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command. 513 + 514 +Once DS20L Joined LoRaWAN network, it will send the MAC command (DeviceTimeReq) and the server will reply with (DeviceTimeAns) to send the current time to DS20L. If DS20L fails to get the time from the server, DS20L will use the internal time and wait for next time request (AT+SYNCTDC to set the time request period, default is 10 days). 515 + 516 +(% 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.** 517 + 518 + 519 +=== 2.5.4 Poll sensor value === 520 + 521 + 522 +Users can poll sensor values based on timestamps. Below is the downlink command. 523 + 524 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:425.818px" %) 525 +|(% colspan="4" style="background-color:#4f81bd; color:white; width:423px" %)**Downlink Command to poll Open/Close status (0x31)** 526 +|(% style="width:58px" %)**1byte**|(% style="width:127px" %)**4bytes**|(% style="width:124px" %)**4bytes**|(% style="width:114px" %)**1byte** 527 +|(% style="width:58px" %)31|(% style="width:127px" %)Timestamp start|(% style="width:124px" %)Timestamp end|(% style="width:114px" %)Uplink Interval 528 + 529 +((( 530 +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. 531 +))) 532 + 533 +((( 534 +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"]] 535 +))) 536 + 537 +((( 538 +Is to check 2021/11/12 12:00:00 to 2021/11/12 15:00:00's data 539 +))) 540 + 541 +((( 542 +Uplink Internal =5s,means DS20L will send one packet every 5s. range 5~~255s. 543 +))) 544 + 545 + 363 363 == 2.6 Frequency Plans == 364 364 365 365 ... ... @@ -368,7 +368,7 @@ 368 368 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]] 369 369 370 370 371 - =3. Configure DS20L=554 +3. Configure DS20L 372 372 373 373 == 3.1 Configure Methods == 374 374 ... ... @@ -440,7 +440,7 @@ 440 440 Example 1: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds 441 441 ))) 442 442 * ((( 443 -Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 626 +Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 444 444 445 445 446 446 ... ... @@ -463,7 +463,7 @@ 463 463 the mode is 0 =Disable Interrupt 464 464 ))) 465 465 |(% style="width:154px" %)((( 466 -AT+INTMOD= 3649 +AT+INTMOD=2 467 467 468 468 (default) 469 469 )))|(% style="width:196px" %)((( ... ... @@ -484,100 +484,6 @@ 484 484 485 485 * Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger 486 486 487 -=== 3.3.3 Set work mode === 488 - 489 - 490 -Feature: Switch working mode 491 - 492 -(% style="color:blue" %)**AT Command: AT+MOD** 493 - 494 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %) 495 -|=(% 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** 496 -|(% style="width:162px" %)AT+MOD=?|(% style="width:191px" %)Get the current working mode.|(% style="width:106px" %)OK 497 -|(% style="width:162px" %)AT+MOD=1|(% style="width:191px" %)Set the working mode to Regular measurements.|(% style="width:106px" %)((( 498 -OK 499 -Attention:Take effect after ATZ 500 -))) 501 - 502 -(% style="color:blue" %)**Downlink Command:** 503 - 504 -* **Example: **0x0A01 ~/~/ Same as AT+MOD=1 505 - 506 -* **Example:** 0x0A02 ~/~/ Same as AT+MOD=2 507 - 508 -=== 3.3.4 Set threshold and threshold mode === 509 - 510 - 511 -Feature, Set threshold and threshold mode 512 - 513 -When (% style="color:#037691" %)**AT+DOL=0,0,0,0,400**(%%) is set, No threshold is used, the sampling time is 400ms. 514 - 515 -(% style="color:blue" %)**AT Command: AT+DOL** 516 - 517 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 518 -|(% 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** 519 -|(% style="width:172px" %)AT+ DOL =?|(% style="width:279px" %)Get the current threshold mode and sampling time|(% style="width:118px" %)((( 520 -0,0,0,0,400 521 -OK 522 -))) 523 -|(% style="width:172px" %)AT+ DOL =1,1800,100,0,400|(% style="width:279px" %)Set only the upper and lower thresholds|(% style="width:118px" %)OK 524 - 525 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 526 -|(% rowspan="11" style="color:blue; width:120px" %)((( 527 - 528 - 529 - 530 - 531 - 532 - 533 - 534 - 535 - 536 - 537 - 538 -**AT+DOL=5,1800,0,0,400** 539 -)))|(% rowspan="6" style="width:240px" %)((( 540 - 541 - 542 - 543 - 544 - 545 - 546 -The first bit sets the limit mode 547 -)))|(% style="width:150px" %)0: Do not use upper and lower limits 548 -|(% style="width:251px" %)1: Use upper and lower limits 549 -|(% style="width:251px" %)2: Less than the lower limit 550 -|(% style="width:251px" %)3: Greater than the lower limit 551 -|(% style="width:251px" %)4: Less than the upper limit 552 -|(% style="width:251px" %)5: Greater than the upper limit 553 -|(% style="width:226px" %)The second bit sets the upper limit value|(% style="width:251px" %)3~~2000MM 554 -|(% style="width:226px" %)The third bit sets the lower limit value|(% style="width:251px" %)3~~2000MM 555 -|(% 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 556 -|(% style="width:251px" %)1 Person or object counting statistics 557 -|(% style="width:226px" %)The fifth bit sets the sampling time|(% style="width:251px" %)((( 558 -0~~10000ms 559 - 560 - 561 -))) 562 - 563 -(% style="color:blue" %)**Downlink Command: 0x07** 564 - 565 -Format: Command Code (0x07) followed by 9 bytes. 566 - 567 -If the downlink payload=**07 01 0708 0064 00 0190**, it means set the END Node's limit mode to 0x01,upper limit value to 0x0708=1800(mm), lower limit value to 0x0064=100(mm), to over-limit alarm(0x00) ,the sampling time to 0x0190=400(ms), while type code is 0x07. 568 - 569 -* Example 0: Downlink Payload: 07 00 0000 0000 00 0190 **~-~-->** AT+MOD=0,0,0,0,400 570 - 571 -* Example 1: Downlink Payload: 070107080064000190 **~-~-->** AT+MOD=1,1800,100,0,400 572 - 573 -* Example 2: Downlink Payload: 070200000064000190 **~-~-->** AT+MOD=2,0,100,0,400 574 - 575 -* Example 3: Downlink Payload: 070300000064000190 **~-~-->** AT+MOD=3,1800,100,0,400 576 - 577 -* Example 4: Downlink Payload: 070407080000000190 **~-~-->** AT+MOD=4,0,100,0,400 578 - 579 -* Example 5: Downlink Payload: 070507080000000190 **~-~-->** AT+MOD=5,1800,100,0,400 580 - 581 581 = 4. Battery & Power Consumption = 582 582 583 583 ... ... @@ -614,33 +614,6 @@ 614 614 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"]] 615 615 616 616 617 -== 6.2 DS20L programming line == 618 - 619 - 620 -缺图 后续补上 621 - 622 -feature: 623 - 624 -for AT commands 625 - 626 -Update the firmware of DS20L 627 - 628 -Support interrupt mode 629 - 630 - 631 -== 6.3 LiDAR probe position == 632 - 633 - 634 -[[image:1701155390576-216.png||height="285" width="307"]] 635 - 636 -The black oval hole in the picture is the LiDAR probe. 637 - 638 - 639 -== 6.4 Interface definition == 640 - 641 -[[image:image-20231128151132-2.png||height="305" width="557"]] 642 - 643 - 644 644 = 7. Trouble Shooting = 645 645 646 646 == 7.1 AT Command input doesn't work ==
- 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-20231128151132-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -281.2 KB - Content
- image-20231129085201-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -70.6 KB - Content
- image-20231129100454-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -70.1 KB - Content
- image-20231206143515-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.ting - Size
-
... ... @@ -1,1 +1,0 @@ 1 -89.5 KB - Content
- image-20231206144950-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.ting - Size
-
... ... @@ -1,1 +1,0 @@ 1 -41.0 KB - Content
- image-20231206151412-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.ting - Size
-
... ... @@ -1,1 +1,0 @@ 1 -58.8 KB - Content
- image-20231206154621-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.ting - Size
-
... ... @@ -1,1 +1,0 @@ 1 -71.2 KB - Content
- image-20231206194804-5.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.ting - Size
-
... ... @@ -1,1 +1,0 @@ 1 -53.7 KB - Content
- image-20231206195704-6.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.ting - Size
-
... ... @@ -1,1 +1,0 @@ 1 -64.1 KB - Content
- image-20231207142208-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.ting - Size
-
... ... @@ -1,1 +1,0 @@ 1 -27.2 KB - Content
- image-20231207144600-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.ting - Size
-
... ... @@ -1,1 +1,0 @@ 1 -55.4 KB - Content
- image-20231207144837-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.ting - Size
-
... ... @@ -1,1 +1,0 @@ 1 -31.1 KB - Content
- image-20231207144856-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.ting - Size
-
... ... @@ -1,1 +1,0 @@ 1 -31.1 KB - Content
- image-20231207145121-5.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.ting - Size
-
... ... @@ -1,1 +1,0 @@ 1 -33.3 KB - Content