Show last authors
1 (% style="text-align:center" %)
2 [[image:image-20220927133941-2.png]]
3
4
5
6
7
8
9
10
11 **Table of Contents:**
12
13 {{toc/}}
14
15
16
17
18
19
20
21
22
23 = 1. Introduction =
24
25
26 == 1.1 What is LWL02 LoRaWAN Water Leak Sensor ==
27
28
29 (((
30 The Dragino LWL02 is a (% style="color:#4f81bd" %)**LoRaWAN Water Sensor**(%%). When there is water between the two metal probes, LWL02 indicates a water leak event and uplink to IoT server via LoRaWAN network.
31 )))
32
33 (((
34 LWL02 is powered by (% style="color:#4f81bd" %)**2 x AAA batteries**(%%) and target for long time use, these two batteries can provide about 16,000 ~~ 70,000 uplink packets, which result in 2 ~~ 10 years battery life. After battery running out, user can easily open the enclosure and replace with 2 common AAA batteries.
35 )))
36
37 (((
38 The LWL02 will send periodically data every day as well as for each water leak event. It also (% style="color:#4f81bd" %)**counts the water leak times**(%%) and (% style="color:#4f81bd" %)**calculate last water leak duration**(%%). User can also disable the uplink for each water leak event, instead, device can count each event and uplink periodically.
39 )))
40
41 (((
42 Each LWL02 is (% style="color:#4f81bd" %)**pre-load with a set of unique keys**(%%) for LoRaWAN registration, register these keys to LoRaWAN server and it will auto connect after power on.
43
44
45 )))
46
47 [[image:image-20220927113420-3.png]]
48
49
50
51 == 1.2 Features ==
52
53
54 * LoRaWAN Class A v1.0.3
55 * Frequency Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865/RU864
56 * SX1262 LoRa Core
57 * Water Leak detect
58 * 2 x AAA LR03 Batteries
59 * AT Commands to change parameters
60 * Uplink on periodically and open/close action
61 * Remote configure parameters via LoRa Downlink
62 * Firmware upgradable via program port
63
64 == 1.3 Applications ==
65
66
67 * Smart Buildings & Home Automation
68 * Logistics and Supply Chain Management
69 * Smart Metering
70 * Smart Agriculture
71 * Smart Cities
72 * Smart Factory
73
74 == 1.4 Dimension ==
75
76
77 [[image:image-20220608143952-2.png]]
78
79
80 [[image:1654670405145-346.png]]
81
82
83
84 == 1.5 Firmware Change log ==
85
86
87 (((
88 LWL02 use the same firmware as LDS01:  [[https:~~/~~/www.dropbox.com/sh/6ls5i0zsvujvbc8/AABe3V5aQXdy7zSxEdEA3DHOa?dl=0>>https://www.dropbox.com/sh/6ls5i0zsvujvbc8/AABe3V5aQXdy7zSxEdEA3DHOa?dl=0]]
89 )))
90
91 (((
92
93 )))
94
95
96 = 2. Power ON LWL02 =
97
98
99 When receive the LWL02, please open the enclosure and add 2 x AAA batteries to power it. The [[LED>>||anchor="H4.7LEDs"]] will blink when device is powered.
100
101
102
103 = 3. How to install LWL02 =
104
105
106 (((
107 When install the LWL02 on wall. Please install as below so the water leak probe will be soak in water for water detect purpose. The LWL02 main body is not water proof. Please don't let water go inside the LWL02 main body.
108
109
110 )))
111
112 [[image:image-20220608144447-4.png]]
113
114
115
116 = 4. Operation Mode =
117
118
119 == 4.1 How it works? ==
120
121
122 (((
123 The LWL02 is configured as LoRaWAN OTAA Class A mode by default. It has OTAA keys to join network. To connect a local LoRaWAN network, user just need to input the OTAA keys in the network server and [[power on>>||anchor="H2.PowerONLWL02"]] the LWL02. It will auto join the network via OTAA.
124 )))
125
126 (((
127 In case user can't set the OTAA keys in the network server and has to use the existing keys from server. User can [[use AT Command>>||anchor="H6.UseATCommand"]] to set the keys in the devices.
128 )))
129
130
131
132 == 4.2 Example to join LoRaWAN network ==
133
134
135 Here shows an example for how to join the [[TTN V3 Network>>url:https://eu1.cloud.thethings.network/]]. Below is the network structure, we use [[LG308>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/140-lg308.html]] as LoRaWAN gateway here. 
136
137 [[image:image-20220927113401-2.png]]
138
139
140 (((
141 The LWL02 has water leak detect probe as above. When there is water between these two detect probe, they will be short and generate the water leak event. and send the status to LoRaWAN server. The LWL02 will uplink two type of messages to the server.
142 )))
143
144 * (((
145 A keep-alive message which send once per day.
146 )))
147 * (((
148 An emergency event message when detect a water leak. ([[Alarm event can be disabled>>||anchor="H7.3CanIdisableuplinkforeacheventtosavebatterylife3F"]])
149 )))
150 * (((
151 A periodically update at every 10 minutes when in water leak.
152 )))
153 * (((
154 A message when switch from water leak to none water leak. ([[Alarm event can be disabled>>||anchor="H7.3CanIdisableuplinkforeacheventtosavebatterylife3F"]])
155 )))
156
157 (((
158
159
160 The LG308 is already set to connect to [[TTN V3 network >>url:https://eu1.cloud.thethings.network/]]. What we need to now is only configure the TTN V3:
161 )))
162
163 (((
164 (% style="color:blue" %)**Step 1**(%%): Create a device in TTN V3 with the OTAA keys from LWL02.
165 )))
166
167 (((
168 Each LWL02 is shipped with a sticker with unique device EUI:
169 )))
170
171 [[image:1654671040430-368.png]]
172
173
174 User can enter this key in their LoRaWAN Server portal. Below is TTN V3 screen shot:
175
176
177 **Add APP EUI in the application**
178
179 [[image:1654671794691-956.png]]
180
181
182 [[image:1654671809850-574.png]]
183
184 [[image:1654671820156-640.png]]
185
186
187 [[image:1654671832011-696.png]]
188
189
190 **Add APP KEY and DEV EUI**
191
192 [[image:1654671889112-678.png]]
193
194
195
196 (% style="color:blue" %)**Step 2**(%%): **[[Power on>>||anchor="H2.PowerONLWL02"]]** LWL02 and it will auto join to the TTN V3 network. After join success, it will start to upload message to TTN V3 and user can see in the panel.
197
198
199 [[image:1654681465260-713.png]]
200
201
202
203 == 4.3 Uplink Payload ==
204
205
206 Uplink Payload total 10 bytes.
207
208
209 (% border="1.5" cellspacing="5" style="background-color:#ffffcc; color:green; width:500px" %)
210 |=(% scope="row" style="width: 60px;" %)**Size(bytes)**|(% style="width:60px" %)**2**|(% style="width:60px" %)**1**|(% style="width:100px" %)**3**|(% style="width:110px" %)**3**|(% style="width:110px" %)**1**
211 |=**value**|Status&BAT|(((
212 MOD
213 Always:0x02
214 )))|(% style="width:126px" %)Total_water_leak_events|(% style="width:140px" %)(((
215 Last  water leak duration(unit:min)
216 )))|(% style="width:186px" %)(((
217 Alarm status(Only used in
218 LDS02)Always:0x00
219 )))
220
221 **Example:**
222
223 [[image:1654672186477-234.png]]
224
225
226 (((
227 Example Payload Decoder in TTN V3:  [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]]
228 )))
229
230
231
232 == 4.4 Downlink Payload ==
233
234
235 (% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:410px" %)
236 |=(% style="width: 180px;" %)**Downlink Control Type**|=(% style="width: 80px;" %)**Type Code**|=(% style="width: 150px;" %)**Downlink payload size(bytes)**
237 |(% style="width:180px" %)TDC (Transmit Time Interval—Keep Alive Interval)|(% style="width:80px" %)0x01|(% style="width:150px" %)4
238 |(% style="width:180px" %)RESET|(% style="width:80px" %)0x04|(% style="width:224px" %)2
239 |(% style="width:180px" %)[[Set confirmed mode>>||anchor="HTypeCode0x05"]]|(% style="width:80px" %)0x05|(% style="width:150px" %)2
240 |(% style="width:180px" %)[[Clear Counting>>||anchor="HTypeCode0xA6"]]|(% style="width:80px" %)0xA6|(% style="width:150px" %)2
241 |(% style="width:180px" %)[[Enable/Disable Alarm>>||anchor="HTypeCode0xA7"]]|(% style="width:80px" %)0xA7|(% style="width:150px" %)2
242 |(% style="width:180px" %)[[Control ADR/DR>>||anchor="HTypeCode0xA8"]]|(% style="width:80px" %)0xA8|(% style="width:150px" %)3
243 |(% style="width:180px" %)[[Set Alarm Timeout>>||anchor="HTypeCode0xA9"]]|(% style="width:80px" %)0xA9|(% style="width:150px" %)4
244
245 Example Downlink payload setting in TTN V3:
246
247 [[image:1654673412319-976.png]]
248
249
250 === (% style="color:#037691" %)**Type Code 0x01**(%%) ===
251
252 If the payload=0100003C, means to control the LWL02's Keep Alive interval to 0x00003C=60(S)
253
254
255 === (% style="color:#037691" %)**Type Code 0x04**(%%) ===
256
257 If payload = 0x04FF, it will reset the LWL02.
258
259
260 === (% style="color:#037691" %)**Type Code 0x05**(%%) ===
261
262 0x05 00: Set uplink to LoRaWAN unconfirmed mode
263
264 0x05 01: Set uplink to LoRaWAN confirmed mode
265
266
267 === (% style="color:#037691" %)**Type Code 0xA6**(%%) ===
268
269 Example: 0xA601: Clear Counting
270 For LWL02: reset both count number and time.
271
272
273 === (% style="color:#037691" %)**Type Code 0xA7**(%%) ===
274
275 0xA7 01 : Equal to AT+DISALARM=1
276
277 0xA7 00 : Equal to AT+DISALARM=0
278
279
280 === (% style="color:#037691" %)**Type Code 0xA8**(%%) ===
281
282 Format: 0xA8 aa bb
283
284 aa: 1: Enable ADR; 0: Disable ADR (Same as AT+CADR command)
285
286 bb: set DR (Same as AT+CDATARATE ,only valid after ADR=0)
287
288 Example: 0x A8 00 02 : Set ADR=0 and DR=1
289
290
291 === (% style="color:#037691" %)**Type Code 0xA9**(%%) ===
292
293 See [[Alarm Base Timeout>>||anchor="H4.6AlarmBaseonTimeout"]] for detail.
294
295
296
297 == 4.5 Integrate with Datacake ==
298
299
300 (((
301 Datacake provides a human friendly interface to show the sensor data, once we have data in TTN V3, we can use Datacake to connect to TTN V3 and see the data in Datacake. Below are the steps:
302 )))
303
304
305 (% style="color:blue" %)**Step 1**(%%): Be sure that your device is programmed and properly connected to the network at this time.
306
307 (% 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:
308
309
310 [[image:1654674520913-519.png]]
311
312
313 [[image:1654674530910-914.png]]
314
315
316 [[image:1654674543078-401.png]]
317
318
319 (% style="color:blue" %)**Step 3**(%%): Create an account or log in Datacake.
320
321 (% style="color:blue" %)**Step 4**(%%): Search LWL02 and add DevEUI.
322
323 [[image:1654674556510-911.png]]
324
325
326
327 == 4.6 Alarm Base on Timeout ==
328
329
330 (((
331 LWL02 can monitor the timeout for a status change, this feature can be used to monitor some event such as monitoring water leakage duration etc.
332
333 (% style="color:red" %)**(This command is only applicable to LDS02.In lwl02, this command can only open the alarm, but the alarm time is fixed to 10 minutes)**
334 )))
335
336 (((
337 User configure this feature by using:
338 )))
339
340 (((
341
342 )))
343
344 (((
345 (% style="color:blue" %)**AT Command**(%%) to configure:
346 )))
347
348 * (((
349 (% style="color:red" %)**AT+TTRIG=1,30 **(%%) **~-~->** When status change from close to open, and device keep in open
350 )))
351
352 (((
353 status for more than 30 seconds. LWL02 will send an uplink packet, the Alarm bit (the lowest bit of 10^^th^^ byte of payload) on this uplink packet is set to 1.
354 )))
355
356 * (((
357 (% style="color:red" %)**AT+TTRIG=0,0** (%%) **~-~->**  Default Value, disable timeout Alarm.
358
359
360
361 )))
362
363 (((
364 (% style="color:blue" %)**Downlink Command**(%%) to configure:
365 )))
366
367 (((
368 **Command: 0xA9 aa bb cc**
369 )))
370
371 (((
372 A9: Command Type Code
373 )))
374
375 (((
376 aa: status to be monitor
377 )))
378
379 (((
380 bb cc: timeout.
381 )))
382
383 (((
384
385 )))
386
387 (((
388 If user send 0xA9 01 00 1E: equal to AT+TTRIG=1,30
389 )))
390
391 (((
392 Or
393 )))
394
395 (((
396 0xA9 00 00 00: Equal to AT+TTRIG=0,0. Disable timeout Alarm.
397
398
399
400 )))
401
402 == 4.7 LEDs ==
403
404
405 (% border="1" cellspacing="10" style="background-color:#ffffcc; width:463px" %)
406 |=(% style="width: 184px;" %)**Action**|=(% style="width: 275px;" %)**LED behavior**
407 |(% style="width:184px" %)Power On|(% style="width:275px" %)(% style="color:green" %)**GREEN on 1s, **(% style="color:red" %)**RED on 1s,**(%%)** (% style="color:blue" %)BLUE on 1s(%%)**
408 |(% style="width:184px" %)Joined successful|(% style="width:275px" %)(% style="color:green" %)**GRENN LED **(%%)on 5s
409 |(% style="width:184px" %)Send an uplink message|(% style="width:275px" %)(% style="color:green" %)**GREEN LED**(%%) blinks once
410 |(% style="width:184px" %)Got a downlink message|(% style="width:275px" %)(% style="color:blue" %)**BLUE LED**(%%) blinks once
411
412 = 5. Battery & How to replace =
413
414
415 == 5.1 Battery Type and replace ==
416
417
418 (((
419 LWL02 is equipped with 2 x AAA LR03 batteries. If the batteries running low(see 2.1v in the platform). User can buy generic AAA battery and replace it. Note:
420 )))
421
422 1. (((
423 The LWL02 doesn't have any screw, use can use nail to open it by the middle.
424 )))
425 1. (((
426 Make sure the direction is correct when install the AAA batteries.
427 )))
428
429 (((
430 (% style="color:red" %)**Important Notice: Make sure use new AAA LR03 battery and the battery doesn't have broken surface.**
431 )))
432
433 (((
434
435 )))
436
437 (((
438 Example of AAA LR03 batter:
439 )))
440
441 [[image:1654675278044-307.png]]
442
443
444
445 == 5.2 Power Consumption Analyze ==
446
447
448 (((
449 Dragino battery powered products are all run in Low Power mode. User can check the guideline from this link to calculate the estimate battery life:
450 )))
451
452 (((
453 [[https:~~/~~/www.dragino.com/downloads/downloads/LoRa_End_Node/Battery_Analyze/DRAGINO_Battery_Life_Guide.pdf>>url:https://www.dragino.com/downloads/downloads/LoRa_End_Node/Battery_Analyze/DRAGINO_Battery_Life_Guide.pdf]]
454 )))
455
456
457
458 = 6. Use AT Command =
459
460
461 == 6.1 Access AT Command ==
462
463
464 LWL02 supports AT Command set. User can use a USB to TTL adapter to configure LWL02 via use AT command, as below.
465
466 [[image:image-20221226104917-1.png||height="557" width="850"]]
467
468
469 (((
470 In PC, User needs to set (% style="color:#037691" %)**serial tool**(%%)(such as [[putty>>url:https://www.chiark.greenend.org.uk/~~sgtatham/putty/latest.html]], SecureCRT) baud rate to (% style="color:green" %)**115200**(%%) to access to access serial console of LWL02. Below is the output for reference:
471 )))
472
473 (((
474 The AT Access password is (% style="color:red" %)**123456**.
475 )))
476
477 [[image:1654675618022-630.png]]
478
479
480 (((
481 Each AT Command need to (% style="color:red" %)**add an ENTER**(%%) at the end before send.
482 )))
483
484 (((
485 When entering the first command, the (% style="color:red" %)**RED LED**(%%) will on and user can now input AT Commands. After input all needed AT Commands, please input **AT+CLPM=1** to set the device to work in Low Power mode and (% style="color:red" %)**RED LED**(%%) will be off.
486 )))
487
488 (((
489 More detail AT Command manual can be found at [[AT Command Manual>>url:http://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/LDS01/]]
490 )))
491
492
493
494 = 7. FAQ =
495
496
497 == 7.1 How to upgrade the image? ==
498
499
500 User can upgrade the of LWL02 for bug fix, new features, or change working region. The upgrade instruction is here: [[Firmware Upgrade Instruction>>doc:Main.Firmware Upgrade Instruction for STM32 base products.WebHome]]
501
502
503
504 == 7.2 How to change the LoRa Frequency Bands/Region? ==
505
506
507 If user has for example US915 frequency and want to change it to AS923 frequency. User can follow the introduction for [[how to upgrade image>>||anchor="H7.1Howtoupgradetheimage3F"]]. When download the images, choose the required image file for download.
508
509
510
511 == 7.3 Can I disable uplink for each event to save battery life? ==
512
513
514 Yes, User can use below method to disable this:
515
516
517 (% style="color:blue" %)**via AT Command**:
518
519 (% style="color:red" %)**AT+DISALARM=1**(%%),  End node will only send packet in TDC time.
520
521 (% style="color:red" %)**AT+DISALARM=0**(%%),  End node will send packet in TDC time or status change for door sensor. 
522
523
524 (% style="color:blue" %)**via LoRaWAN downlink Command**:
525
526 (% style="color:red" %)**0xA701** (%%):  Equal to AT+DISALARM=1
527
528 (% style="color:red" %)**0xA700** (%%):  Equal to AT+DISALARM=0
529
530
531 == 7.4 How to change Sub-Band for LWL02? ==
532
533 * **Before v1.6 firmware**: LWL02 works in Subband 2 by default in AU915 / US915 band. So if the LoRaWAN server works in other subband, there will be issue for LWL02 to Join the server. In this case, User can use AT COmmand to change the subband. See AT Command chapther for the hardware connection. Below are the steps to change sub-band:
534 ** Press rest button.
535 ** Send **123456** password
536 ** Send command **AT+CFREQBANDMASK=0001 **( 0001 for subband 1, 0002 for subband 2, etc..)
537 ** Press rest button to restart to new subband
538 ** Example output:
539
540 (% class="small mark" %)[3369]DRAGINO LWL01 Device
541 (% class="small mark" %)[3370]Frequency Band: US915 v1.5
542 (% class="small mark" %)[3373]OTAA
543 (% class="small mark" %)[3374]DevEui= 7896785455246354
544 (% class="small mark" %)[3377]class type A
545 (% class="small mark" %)[3379]freq mode intra
546 (% class="small mark" %)[3381]scan chn mask 0x0002
547
548
549
550 = 8. Order Info =
551
552
553 **Part Number: (% style="color:blue" %)LWL02-XXX(%%)**
554
555 (% style="color:blue" %)**XXX:**
556
557 * (% style="color:red" %)**EU433**(%%): frequency  bands EU433
558 * (% style="color:red" %)**EU868**(%%): frequency  bands EU868
559 * (% style="color:red" %)**KR920**(%%): frequency  bands KR920
560 * (% style="color:red" %)**CN470**(%%): frequency bands CN470
561 * (% style="color:red" %)**AS923**(%%): frequency  bands AS923
562 * (% style="color:red" %)**AU915**(%%): frequency bands AU915
563 * (% style="color:red" %)**US915**(%%): frequency bands  US915
564 * (% style="color:red" %)**IN865**(%%):  frequency bands  IN865
565 * (% style="color:red" %)**CN779**(%%): frequency bands CN779
566
567 = 9. Packing Info =
568
569
570 **Package Includes**:
571
572 * LWL02 x 1
573
574 = 10. Support =
575
576
577 * Support is provided Monday to Friday, from 09:00 to 18:00 GMT+8. Due to different timezones we cannot offer live support. However, your questions will be answered as soon as possible in the before-mentioned schedule.
578 * Provide as much information as possible regarding your enquiry (product models, accurately describe your problem and steps to replicate it etc) and send a mail to [[support@dragino.com>>url:file:///D:/市场资料/说明书/LoRa/LT系列/support@dragino.com]].
Copyright ©2010-2022 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0