Version 93.1 by Mengting Qiu on 2025/05/07 17:37

Show last authors
1 (% style="text-align:center" %)
2 [[image:image-20250207150946-1.jpeg||height="553" width="553"]]
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 == 1.1 What is the LWL02 LoRaWAN Water Leak Sensor ==
26
27
28 The Dragino LWL02 is a (% style="color:#4f81bd" %)**LoRaWAN Water Leak Sensor**(%%) equipped with two external metal probes. When water is detected between the two metal probes, the LWL02 identifies a water leak and sends an uplink to the registered LoRaWAN network server.
29
30 The LWL02 is powered by (% style="color:#4f81bd" %)**2 x AAA batteries**(%%) and is designed for long-term use. These two batteries can support approximately 16,000 to 70,000 uplink packets, resulting in a battery life of 2 to 10 years. Once the batteries are depleted, users can easily open the enclosure and replace them with standard AAA batteries.
31
32 The LWL02 sends data periodically every day and also for each water leak event. It records the number of water leak occurrences and calculates the duration of the most recent leak. Users can disable uplinks for each individual water leak event if desired. In this case, the device will count each event and send the data periodically.
33
34 Each LWL02 comes preloaded with a unique set of key/EUIs for LoRaWAN registration. By registering these keys to the LoRaWAN network server, the device will automatically connect upon powering on.
35
36
37
38 == 1.2 Features ==
39
40
41 * **LoRaWAN Class A v1.0.3**
42 * **Frequency Bands:** CN470, EU433, KR920, US915, EU868, AS923, AU915, IN865, RU864
43 * **SX1262 LoRa Core**
44 * **Water Leak Detection**
45 * **2 x AAA LR03 Batteries**
46 * **AT Commands** to change parameters
47 * **Periodic Uplink** and uplink triggered by open/close actions
48 * **Remote Configuration** of parameters via LoRa Downlink
49 * **Firmware Upgradable** via programming port
50
51 == 1.3 Storage & Operation Temperature ==
52
53
54 -10 ~~ 50 °C  or -40 ~~ 60 °C (depending on the battery type; see [[FAQ>>||anchor="H7.6Whyiseedifferentworkingtemperatureforthedevice3F"]])
55
56
57 == 1.4 Applications ==
58
59
60 * Smart Buildings & Home Automation
61 * Logistics and Supply Chain Management
62 * Smart Metering
63 * Smart Agriculture
64 * Smart Cities
65 * Smart Factory
66
67 == 1.5 Dimensions ==
68
69
70 [[image:image-20220608143952-2.png]]
71
72
73 [[image:1654670405145-346.png]]
74
75
76 == 1.6 Firmware Change log ==
77
78
79 (((
80 The LWL02 uses the same firmware as the LDS01:  [[https:~~/~~/www.dropbox.com/sh/6ls5i0zsvujvbc8/AABe3V5aQXdy7zSxEdEA3DHOa?dl=0>>https://www.dropbox.com/sh/6ls5i0zsvujvbc8/AABe3V5aQXdy7zSxEdEA3DHOa?dl=0]]
81 )))
82
83 == 1.7 Hardware Variant (Since LDWS v2.4 PCB) ==
84
85
86 Starting from the LDWS v2.4 motherboard, we made adjustments to the button and LED light of LWL02, and the corresponding adjustments were also made to the shell at the same time.
87
88
89 === 1.7.1 Changes in Button & LED Layout ===
90
91
92 From PCB version **v2.4**, the hardware layout has been updated with the following modifications:
93
94 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
95 |=(% style="width: 138px; background-color: rgb(79, 129, 189); color: white;" %)Component|=(% style="width: 196px; background-color: rgb(79, 129, 189); color: white;" %)Old Version (Pre-v2.4)|=(% style="width: 176px; background-color: rgb(79, 129, 189); color: white;" %)New Version (v2.4+)
96 |(% style="width:126px" %)(% style="color:blue" %)**Reset Button**|(% style="width:196px" %)Hidden (requires enclosure removal)|(% style="width:176px" %)(((
97 **Moved**(Position: Old LED location)
98 )))
99 |(% colspan="1" style="width:126px" %)(% style="color:blue" %)**LED Indicator**|(% style="width:196px" %)Top enclosure hole position|(% style="width:176px" %)**Moved** (Below ACT button)
100
101 (% style="color:blue" %)**Actual hardware motherboard comparison chart:**
102
103 [[image:image-20250507163202-5.jpeg||height="439" width="564"]]
104
105
106 === 1.7.2 How to identify the old and new versions ===
107
108
109 Check the **external enclosure** for these differences:
110
111 ~1. RESET Button Hole
112
113 * New Version: Larger hole (Corresponding to the position of the RESET button on the motherboard).
114 * Old Version: Smaller hole (The original position of the LED).
115
116 2. LED
117
118 * New Version: Thinner circular area below RESET hole (for LED light transmission).
119 * Old Version: The small hole directly above the shell (Corresponding to the position of the LED on the motherboard).
120
121 3. Arrow Marking
122
123 * New Version: Edge-embossed arrow shape.
124 * Old Version: Fully recessed arrow shape.
125
126 (% style="color:blue" %)**Actual appearance comparison picture:**
127
128 [[image:image-20250507161458-4.jpeg||height="456" width="665"]]
129
130
131 === 1.7.3 RESET button & LED Display ===
132
133
134 **1. RESET button**
135
136 Restart the device through the physical reset button.
137
138 It is suitable for rapid restart when the equipment malfunctions (such as communication failure, sensor unresponsiveness).
139
140 * For old version, the RESET button was located inside the device enclosure, requiring the housing to be opened for access.
141 * For new version, the RESET button is located in a small hole in the device's case and can simply be pressed with a thin pin without opening the case.
142
143 Example:
144
145 [[image:image-20250507172832-6.png||height="372" width="274"]]
146
147
148 **2. LED display**
149
150 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:463px" %)
151 |=(% style="width: 186px;background-color:#4F81BD;color:white" %)**Action**|=(% style="width: 277px;background-color:#4F81BD;color:white" %)**LED behavior**
152 |(% style="width:184px" %)Power On|(% style="width:275px" %)(% style="color:green" %)**GREEN LED on 1s, **(% style="color:red" %)**RED LED on 1s,**(%%)** (% style="color:blue" %)BLUE LED on 1s(%%)**
153 |(% style="width:184px" %)Joined successful|(% style="width:275px" %)(% style="color:green" %)**GRENN LED **(%%)on 5s
154 |(% style="width:184px" %)Send an uplink message|(% style="width:275px" %)(% style="color:green" %)**GREEN LED**(%%) blinks once
155 |(% style="width:184px" %)Received a downlink message|(% style="width:275px" %)(% style="color:blue" %)**BLUE LED**(%%) blinks once
156
157
158
159 = 2. Power on LWL02 =
160
161
162 When you receive the LWL02, open the enclosure and insert 2 AAA batteries to power it on. The [[LED>>||anchor="H4.7LEDs"]] will blink when the device is powered.
163
164
165 = 3. How to Install LWL02 =
166
167
168 **Fixing with screws:**
169
170 * Detach the bottom lid of the enclosure. You will notice two holes on the bottom lid for inserting screws. First, attach the bottom lid to the surface using screws. Then snap the top part of the enclosure onto the bottom. You will hear a clicking sound once they are securely fitted together.
171
172 [[image:image-20231222114059-1.jpeg||height="412" width="624"]]
173
174
175 **Fixing with double-sided adhesive pads:**
176
177 * A double-sided adhesive pad is included with the LWL02. First remove the protective backing of one side only. Then affix it on the bottom of the sensor enclosure. Once the tape is in place, remove the remaining protective backing and secure the enclosure to the surface.
178
179 [[image:image-20231222114211-2.jpeg||height="409" width="613"]]
180
181
182 (((
183 When installing the LWL02 on a wall, please follow the instructions as shown in the image below to ensure the water leak probe is submerged in water for detection purposes. The LWL02 main body is not waterproof, so please avoid allowing water to enter the main body.
184
185
186 )))
187
188 [[image:image-20220608144447-4.png]]
189
190
191 = 4. Operation Mode =
192
193 == 4.1 How It works? ==
194
195
196 (((
197 The LWL02 is configured as a LoRaWAN Class A device by default. It contains a DevEUI, AppEUI, and AppKey, which allow it to join a LoRaWAN network using OTAA (Over-The-Air Activation). To connect the LWL02 to a LoRaWAN network, you need to configure these keys and identifiers with the LoRaWAN network server first, and then [[power on>>||anchor="H2.PowerONLWL02"]] the LWL02. The device will automatically join the network using OTAA. This device information can be found in your package, printed on a sticker.
198
199
200 [[image:image-20230426084834-1.png||height="239" width="515"]]
201
202
203 )))
204
205 (((
206 If you cannot set the device registration information, such as the DevEUI, AppEUI, and AppKey, in the network server, you must use the information generated by the network server, which differs from the information already stored on the device. In this case, you can use [[AT Command>>||anchor="H6.UseATCommand"]] to write the new information to the device.
207 )))
208
209
210 == 4.2 Example to joining a LoRaWAN network ==
211
212
213
214 The following figure shows how the LWL02 connects to [[The Things Stack>>url:https://eu1.cloud.thethings.network/]]. The LWL02 sends messages (uplinks) to The Things Stack via a LoRaWAN gateway (e.g., Dragino LPS8N) and can also receive messages (downlinks) from The Things Stack. The Things Stack can be integrated with ThingsEye, allowing it to forward uplinks to ThingsEye. ThingsEye is an IoT platform used for visualizing and analyzing sensor data. You can also send downlinks from ThingsEye (via The Things Stack) to the LWL02.
215
216
217
218 [[image:lwl02-tts.jpg]]
219
220
221 (((
222 The LWL02 has a water leak detection probe, as shown above. When water is present between the two probes, they will short-circuit and generate a water leak event, sending the status to the LoRaWAN server. The LWL02 uplinks the following types of messages to the server:
223
224 * A keep-alive message, sent once per day.
225 * An emergency event message when a water leak is detected ([[this alarm event can be disabled>>||anchor="H7.3CanIdisableuplinkforeacheventtosavebatterylife3F"]]).
226 * A periodic update every 10 minutes while in a water leak state.
227 * A message when switching from a water leak state to no water leak ([[this alarm event can be disabled>>||anchor="H7.3CanIdisableuplinkforeacheventtosavebatterylife3F"]]).
228
229 === 4.2.1 Setting up ===
230
231 * Sign up for a free account with [[The Things Stack Sandbox>>url:https://eu1.cloud.thethings.network]] if you do not have one yet.
232 * Log in to your **The Things Stack** account.
233 * Create an **application** with The Things Stack if you do not have one yet.
234 ** On the left navigation, click **Applications**.
235 ** Then click **+ Add Application** button.
236
237 [[image:lwl02-4.png]]
238
239 * On the **Create Application **page, configure the following:
240 ** **Application ID**: Provide a unique identification for your application within The Things Stack.
241 ** **Application name**: (optional) Provide a descriptive name.
242 ** **Description**: (optional) Provide a description.
243 * Click on **Create application **button.
244 )))
245
246
247 [[image:lwl02-5.png]]
248
249
250 * Go to the newly created application and click on the **End devices** in the left menu.
251 * On the End devices page, click on **+ Register end device**.
252
253 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS02%20-%20LoRaWAN%20Door%20Sensor%20User%20Manual/WebHome/lds02-step-5.png?rev=1.1||alt="lds02-step-5.png"]]
254
255
256 * Two registration options are available:
257 ** Using the LoRaWAN Device Repositoty
258 ** Manual registration
259
260 === 4.2.2 Using the LoRaWAN Device Repository ===
261
262 * On the **Register end device** page:
263 ** Select the option **Select the end device in the LoRaWAN Device Repository **under **Input method**.
264 ** Select the **End device brand**, **Model**, **Hardware version**, **Firmware version**, and **Profile (Region)** from the respective dropdown lists.
265 *** **End device brand**: Dragino Technology Co., Limited
266 *** **Model**: LWL02 - Water Leak Sensor
267 *** **Hardware ver**: Unknown
268 *** **Firmware ver**: 1.6
269 *** **Profile (Region)**: Select the region that matches your device.
270 ** Select the **Frequency plan** that matches your device from the **Frequency plan** dropdown list.
271 ** Enter the **AppEUI** in the **JoinEUI** field and click the **Confirm** button. If The Things Stack accepts the JoinEUI you provided, it will display the message 'This end device can be registered on the network.
272
273 [[image:lwl02-1.png]]
274
275
276
277
278 * In the **DevEUI** field, enter the **DevEUI**.
279 * In the **AppKey** field, enter the **AppKey.**
280 * In the **End device ID** field, enter a unique name for your LWL02 within this application.
281 * Under **After registration**, select the **View registered end device** option.
282 * Click **Register end device** button.
283
284 [[image:lwl02-2.png]]
285
286
287
288 * You will be navigated to the Device overview page.
289
290 [[image:lwl02-3.png]]
291
292
293 * Click on the Live Data tab and then **Power on** the LWL02. It will first join The Things Stack network server. You can confirm this by looking for the Join-request and Join-accept messages. After successfully joining the network, the LWL02 will start sending uplink messages to The Things Stack, and you can see them in the **Live Data** panel.
294
295 [[image:1654681465260-713.png]]
296
297
298 == 4.3 Uplink Payload ==
299
300
301 The uplink payload is a total of 10 bytes.
302
303 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
304 |(% style="background-color:#4f81bd; color:white; width:60px" %)**Size(bytes)**|(% style="background-color:#4f81bd; color:white; width:80px" %)**2**|(% style="background-color:#4f81bd; color:white; width:100px" %)**1**|(% style="background-color:#4f81bd; color:white; width:100px" %)**3**|(% style="background-color:#4f81bd; color:white; width:110px" %)**3**|(% style="background-color:#4f81bd; color:white; width:60px" %)**1**
305 |value|(% style="width:92px" %)Status & BAT|(% style="width:150px" %)(((
306 MOD Always:0x02
307 )))|(% style="width:126px" %)Total_water_leak_events|(% style="width:140px" %)(((
308 Last  water leak duration (unit:min)
309 )))|(% style="width:153px" %)(((
310 Alarm status
311 )))
312
313 === 4.3.1 Battery Info ===
314
315 Check the battery voltage:
316
317 Example 1: 0x0B88&3FFF = 2952mV
318
319 Example 2: 0xD152&3FFF = 4434mV
320
321
322 === 4.3.2 Status ===
323
324 Check the door state:
325
326 **Example**:
327
328 If the payload is: **0B**:  (0000 1011&0100 0000== 0), **DOOR_OPEN_STATUS** is 0(**CLOSE**)
329
330 If the payload is: **D1**: (1101 0001&0100 0000== 1), **DOOR_OPEN_STATUS** is 1(**OPEN**)
331
332
333 === 4.3.3 MOD ===
334
335 Check the working mode (MOD):
336
337 **Example:**
338
339 If the payload is: 02, the MOD is 2.
340
341
342 === 4.3.4 Total_water_leak_events ===
343
344 Get the total number of door open events:
345
346 **Example**:
347
348 If payload is: **00 00 93, **the total is 147 events.
349
350 If payload is: **00 00 00, **the total is 0 events.
351
352
353 === 4.3.5 Last  water leak duration (unit: min) ===
354
355 Get the last door open duration:
356
357 **Example:**
358
359 If the payload is: **00 00 25, **the last door open duration is 37 minutes.
360
361 If payload is: **00 00 01,** the last door open duration is 1 minute.
362
363
364 === 4.3.6 Alarm ===
365
366 Get alarm status.
367
368 **Example:**
369
370 If the payload is: 01:  (0001 & 0001== 1), the alarm status is 1
371
372 If the payload is: 00:  (0000 & 0001== 0), the alarm status is 0
373
374
375
376 **Example:**
377
378 [[image:1654672186477-234.png]]
379
380
381 (((
382 The **payload decoder** for The Things Stack can be downloaded from:  [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder/tree/main/LWL02]]
383 )))
384
385
386 == 4.4 Downlink Payload ==
387
388
389 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:505px" %)
390 |=(% style="width: 182px;background-color:#4F81BD;color:white" %)**Downlink Control Type**|=(% style="width: 96px;background-color:#4F81BD;color:white" %)**Type Code**|=(% style="width: 227px;background-color:#4F81BD;color:white" %)**Downlink payload size(bytes)**
391 |(% style="width:180px" %)TDC (Transmit Time Interval—Keep Alive Interval)|(% style="width:80px" %)0x01|(% style="width:150px" %)4
392 |(% style="width:180px" %)RESET|(% style="width:80px" %)0x04|(% style="width:224px" %)2
393 |(% style="width:180px" %)[[Set confirmed mode>>||anchor="HTypeCode0x05"]]|(% style="width:80px" %)0x05|(% style="width:150px" %)2
394 |(% style="width:180px" %)[[Clear Counting>>||anchor="HTypeCode0xA6"]]|(% style="width:80px" %)0xA6|(% style="width:150px" %)2
395 |(% style="width:180px" %)[[Enable/Disable Alarm>>||anchor="HTypeCode0xA7"]]|(% style="width:80px" %)0xA7|(% style="width:150px" %)2
396 |(% style="width:180px" %)[[Control ADR/DR>>||anchor="HTypeCode0xA8"]]|(% style="width:80px" %)0xA8|(% style="width:150px" %)3
397 |(% style="width:180px" %)[[Set Alarm Timeout>>||anchor="HTypeCode0xA9"]]|(% style="width:80px" %)0xA9|(% style="width:150px" %)4
398
399 The following image illustrates how to send a downlink payload from The Things Stack.
400
401 [[image:1654673412319-976.png]]
402
403
404 === (% style="color:#037691" %)**Type Code 0x01**(%%) ===
405
406 For example, if the payload is **0100003C**, the LWL02's Keep Alive interval is set to **0x00003C (60 seconds)**.
407
408
409 === (% style="color:#037691" %)**Type Code 0x04**(%%) ===
410
411 For example, if the payload is **0x04FF**, it **resets** the LWL02.
412
413
414 === (% style="color:#037691" %)**Type Code 0x05**(%%) ===
415
416 * The payload **0x05 00** sets the uplink to LoRaWAN **unconfirmed** mode.
417 * The payload **0x05 01** sets the uplink to LoRaWAN **confirmed** mode
418
419 === (% style="color:#037691" %)**Type Code 0xA6**(%%) ===
420
421 The payload **0xA601** is used to "**clear the counting**." For the LWL02, it resets both the count numbers and the time.
422
423
424 === (% style="color:#037691" %)**Type Code 0xA7**(%%) ===
425
426 * The payload **0xA7 01** is equivalent to **AT+DISALARM=1**.
427 * The payload **0xA7 00** is Equivalent to **AT+DISALARM=0**.
428
429 === (% style="color:#037691" %)**Type Code 0xA8**(%%) ===
430
431 **Downlink Payload Format**: 0xA8 AA BB
432
433 * **0xA8**: Type code
434 * **AA**:
435 ** **1**: Enable ADR
436 ** **0**: Disable ADR (same as the **AT+CADR** command)
437 * **BB**: Set DR (same as **AT+CDATARATE**; only valid after ADR = 0)
438
439 **Example**: 0xA8 00 02: Set ADR = 0 and DR = 2
440
441
442 === (% style="color:#037691" %)**Type Code 0xA9**(%%) ===
443
444 For more information, see [[Alarm Base Timeout>>||anchor="H4.6AlarmBaseonTimeout"]].
445
446
447 == 4.5 Integrate with IoT Platforms ==
448
449
450 The Things Stack can be integrated with many IoT platforms, including ThingsEye and Datacake, for visualizing and analyzing data coming from the LWL02. Most of these IoT platforms also support sending downlinks to the LWL02.
451
452
453 === 4.5.1 Integrate with ThingsEye ===
454
455
456 The Things Stack application supports integration with ThingsEye.io. Once integrated, ThingsEye.io acts as an MQTT client for The Things Stack MQTT broker, allowing it to subscribe to upstream traffic and publish downlink traffic.
457
458
459 ==== 4.5.1.1 Configuring The Things Stack ====
460
461
462 We use The Things Stack Sandbox in this example:
463
464 * In **The Things Stack Sandbox**, go to the **Application **for the LWL02 you added.
465 * Select **MQTT** under **Integrations** in the left menu.
466 * In the **Connection information **section, under **Connection credentials**, The Things Stack displays an auto-generated **username**. You can use it or provide a new one.
467 * Click the **Generate new API key** button to generate a password. You can view it by clicking on the **visibility toggle/eye** icon. The API key works as the password.
468
469 {{info}}
470 The username and  password (API key) you created here are required in the next section.
471 {{/info}}
472
473 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/tts-mqtt-integration.png?rev=1.1||alt="tts-mqtt-integration.png"]]
474
475
476 ==== 4.5.1.2 Configuring ThingsEye.io ====
477
478
479 The ThingsEye.io IoT platform is not open for self-registration at the moment. If you are interested in testing the platform, please send your project information to [[admin@thingseye.io>>mailto:admin@thingseye.io]], and we will create an account for you.
480
481 * Login to your [[ThingsEye.io >>url:https://thingseye.io]]account.
482 * Under the **Integrations center**, click **Integrations**.
483 * Click the **Add integration** button (the button with the **+** symbol)
484
485 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye-io-step-1.png?rev=1.2||alt="thingseye-io-step-1.png" height="804" width="1287"]]
486
487
488 On the **Add integration** window, configure the following:
489
490 **Basic settings:**
491
492 * Select **The Things Stack Community** from the **Integration type** list.
493 * Enter a suitable name for your integration in the **Name **text** **box or keep the default name.
494 * Ensure the following options are turned on.
495 ** Enable integration
496 ** Debug mode
497 ** Allow creating devices or assets
498 * Click the **Next** button. you will be navigated to the **Uplink data converter** tab.
499
500 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye-io-step-2.png?rev=1.1||alt="thingseye-io-step-2.png" height="825" width="1321"]]
501
502
503 **Uplink data converter:**
504
505 * Click the **Create new** button if it is not selected by default.
506 * Enter a suitable name for the uplink data converter in the **Name **text** **box or keep the default name.
507 * Click the **JavaScript** button.
508 * Paste the uplink decoder function into the text area (first, delete the default code). The demo uplink decoder function can be found [[here>>url:https://raw.githubusercontent.com/ThingsEye-io/te-platform/refs/heads/main/Data%20Converters/The_Things_Network_MQTT_Uplink_Converter.js]].
509 * Click the **Next** button. You will be navigated to the **Downlink data converter **tab.
510
511 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye-io-step-3.png?rev=1.1||alt="thingseye-io-step-3.png" height="841" width="1346"]]
512
513
514 **Downlink data converter (this is an optional step):**
515
516 * Click the **Create new** button if it is not selected by default.
517 * Enter a suitable name for the downlink data converter in the **Name **text** **box or keep the default name.
518 * Click the **JavaScript** button.
519 * Paste the downlink decoder function into the text area (first, delete the default code). The demo downlink decoder function can be found [[here>>url:https://raw.githubusercontent.com/ThingsEye-io/te-platform/refs/heads/main/Data%20Converters/The_Things_Network_MQTT_Downlink_Converter.js]].
520 * Click the **Next** button. You will be navigated to the **Connection** tab.
521
522 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye-io-step-4.png?rev=1.1||alt="thingseye-io-step-4.png" height="841" width="1346"]]
523
524
525 **Connection:**
526
527 * Choose **Region** from the **Host type**.
528 * Enter the **cluster** of your **The Things Stack** in the **Region** textbox. You can find the cluster in the url (e.g., https:~/~/**eu1**.cloud.thethings.network/...).
529 * Enter the **Username** and **Password** of the MQTT integration in the **Credentials** section. The **username **and **password **can be found on the MQTT integration page of your The Things Stack account (see **4.5.1.1 Configuring The Things Stack**).
530 * Click the **Check connection** button to test the connection. If the connection is successful, you will see the message saying **Connected**.
531
532 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/message-1.png?rev=1.1||alt="message-1.png"]]
533
534
535
536 * Click the **Add** button.
537
538 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye-io-step-5.png?rev=1.1||alt="thingseye-io-step-5.png" height="842" width="1348"]]
539
540
541 Your integration has been added to the** Integrations** list and will be displayed on the **Integrations** page. Check whether the status is shown as **Active**. If not, review your configuration settings and correct any errors.
542
543
544 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye.io_integrationsCenter_integrations.png?rev=1.2||alt="thingseye.io_integrationsCenter_integrations.png" height="928" width="1352"]]
545
546
547 ==== 4.5.1.3 Viewing integration details ====
548
549 Click on your integration from the list. The **Integration details** window will appear with the **Details **tab selected. The **Details **tab shows all the settings you have provided for this integration.
550
551
552 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/integration-details.png?rev=1.1||alt="integration-details.png" height="928" width="1352"]]
553
554
555 If you want to edit the settings you have provided, click on the **Toggle edit mode** button. Once you have done click on the **Apply changes **button.
556
557 {{info}}
558 See also [[ThingsEye documentation>>url:https://wiki.thingseye.io/xwiki/bin/view/Main/]].
559 {{/info}}
560
561
562 ==== 4.5.1.4 Viewing events ====
563
564 The **Events **tab displays all the uplink messages from the LWL02.
565
566 * Select **Debug **from the **Event type** dropdown.
567 * Select the** time frame** from the **time window**.
568
569 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye-events.png?rev=1.1||alt="thingseye-events.png" height="931" width="1357"]]
570
571
572 * To view the **JSON payload** of a message, click on the **three dots (...)** in the **Message** column of the desired message.
573
574 [image coming soon]
575
576
577 ==== 4.5.1.5 Deleting an integration ====
578
579
580 If you want to delete an integration, click the **Delete integration** button on the Integrations page.
581
582
583 ==== 4.5.1.6 Viewing sensor data on a dashboard ====
584
585
586 You can create a dashboard with ThingsEye to visualize the sensor data coming from the LWL02. The following image shows a dashboard created for the LWL02. See **Creating a dashboard** in ThingsEye documentation for more information.
587
588 [[image:Screenshot 2025-01-28 at 20.40.24.png||height="710" width="1344"]]
589
590
591 == 4.5.2 Integrate with Datacake ==
592
593
594 Datacake is a multi-purpose, low-code IoT platform that allows you to integrate sensor data for visualization and analysis. With The Things Stack, you can easily create an integration with Datacake to forward your sensor data to the Datacake IoT platform.
595
596
597 === 4.5.2.1 Prerequisites ===
598
599
600 * The LWL02 device is joined to The Things Stack.
601 * Uplinks from the LWL02 device are being received by The Things Stack.
602 * A Datacake account (a free account is sufficient for this example).
603
604 === 4.5.2.2 Procedure ===
605
606
607 * In the Datacake workspace, on the left navigation, click **Account Settings**.
608 * Then click **API Token**.
609 * In the **API Token** tab, click the **Copy** button to copy the API token. You will need this API token when creating a webhook with The Things Stack.
610
611 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS02%20-%20LoRaWAN%20Door%20Sensor%20User%20Manual/WebHome/datacake-1.png?rev=1.1||alt="datacake-1.png" height="847" width="1356"]]
612
613
614
615 To configure the Application to forward data to Datacake you will need to add integration. To add the Datacake integration, perform the following steps:
616
617 * In The Things Stack console, on the left navigation,
618 ** First select your **application** (**Applications -> <your application>**)
619 ** Then select **Integrations -> Webhooks**
620 * On the **Webhooks** page, click + **Add Webhook** button.
621
622 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS02%20-%20LoRaWAN%20Door%20Sensor%20User%20Manual/WebHome/tts-webhook-1.png?rev=1.1||alt="tts-webhook-1.png" height="844" width="1351"]]
623
624
625 * On the **Choose webhook template** page, select **Datacake**.
626
627 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS02%20-%20LoRaWAN%20Door%20Sensor%20User%20Manual/WebHome/tts-webhook-2.png?rev=1.1||alt="tts-webhook-2.png" height="847" width="1356"]]
628
629
630 * On the Setup webhook for Datacake page,
631 ** **Webhook ID**: provide an unique identifier for this webhook
632 ** **Token**: Paste the **Datacake API Token** when you copied from the Datacake **Account Settings**.
633 * Click on the **Create Datacake webhook** button.
634
635 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS02%20-%20LoRaWAN%20Door%20Sensor%20User%20Manual/WebHome/tts-webhook-3.png?rev=1.1||alt="tts-webhook-3.png" height="846" width="1354"]]
636
637
638 Now the Webhook is created and displayed on the **Webhooks** page.
639
640
641 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS02%20-%20LoRaWAN%20Door%20Sensor%20User%20Manual/WebHome/tts-webhook-4.png?rev=1.1||alt="tts-webhook-4.png" height="835" width="1337"]]
642
643
644 * In the Datacake workspace, on the left navigation, click **Devices**.
645 * On the Devices page, click **+Add Device**.
646
647 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS02%20-%20LoRaWAN%20Door%20Sensor%20User%20Manual/WebHome/datacake-2.png?rev=1.1||alt="datacake-2.png" height="841" width="1346"]]
648
649
650 * On the **Add Device** window, click **LoRaWAN** option.
651 * Click on the **Next** button.
652
653 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS02%20-%20LoRaWAN%20Door%20Sensor%20User%20Manual/WebHome/datacake-3.png?rev=1.1||alt="datacake-3.png" height="848" width="1358"]]
654
655
656 * On the **Add LoRaWAN Device** window, **STEP 1**, click on **New Product from template** option.
657 * Under **Device Template**, search **lwl02**. Then click on **Dragino LWL02 Water leakage** option.
658 * Click on the **Next** button.
659
660 [[image:lwl02-dk-1.png||height="841" width="1346"]]
661
662
663 * On the **Add LoRaWAN Device** window, **STEP 2**, under **Network Server**, click on **The Things Stack V3** option.
664 * Click on the **Next** button.
665
666 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS02%20-%20LoRaWAN%20Door%20Sensor%20User%20Manual/WebHome/datacake-5.png?rev=1.1||alt="datacake-5.png" height="847" width="1356"]]
667
668
669 * On the **Add LoRaWAN Device** window, **STEP 3**, under **Add Devices**, click **Manual** tab.
670 * In the **DEVEUI** textbox, enter your LWL02's 8 bytes **DevEUI**.
671 * In the **NAME** textbox, enter a suitable name to identify your LWL02.
672 * Click on the **Next** button.
673
674 [[image:lwl02-dk-2.png||height="848" width="1358"]]
675
676
677 * On the **Add LoRaWAN Device** window, **STEP 4**, select **Individual device plans** tab.
678 * Click **Free** option.
679 * Click on the **Add 1 Device** button.
680
681 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS02%20-%20LoRaWAN%20Door%20Sensor%20User%20Manual/WebHome/datacake-7.png?rev=1.1||alt="datacake-7.png" height="843" width="1350"]]
682
683
684
685
686 * The device is now added to the Datacake workspace and is ready to receive uplinks from the LWL02 via The Things Stack.
687 * In the **DEVICE** column, click **lwl02**.
688
689 [[image:lwl02-dk-3.png||height="846" width="1354"]]
690
691
692 You can see the **pre-built dashboard** from our template, displaying the LWL02's sensor data on various **widgets**.
693
694
695 [[image:lwl02-dk-4.png||height="845" width="1353"]]
696
697
698
699
700 == 4.6 Alarm Based on Timeout ==
701
702
703 (((
704 The LWL02 can monitor the timeout for a status change. This feature can be used to monitor events, such as the duration of water leakage, and more.
705
706 (% style="color:red" %)**(This command is specifically applicable to LDS02. For the LWL02, this command can only enable the alarm, but the alarm time is fixed at 10 minutes)**
707 )))
708
709 (((
710 You can configure this feature using the following:
711 )))
712
713 (((
714
715 )))
716
717 (((
718 **AT Command Configuration:**
719
720 * (% style="color:red" %)**AT+TTRIG=1,30**(%%) ~-~-> When the status changes from "**close**" to "**open**," the LWL02 remains in the "**open**" status for more than 30 seconds. Then it will send an uplink packet. The alarm bit (the lowest bit of the 10th byte of the payload) in this uplink packet is set to 1.
721 * (% style="color:red" %)**AT+TTRIG=0,0**(%%) ~-~-> Default value, disables the timeout alarm.
722
723
724 )))
725
726 (((
727 **Downlink Command Configuration:**
728
729 **Command**: 0xA9 AA BB CC
730
731 * **0xA9**: Type Code
732 * **AA**: Status to be monitored
733 * **BB CC**: Timeout
734
735 If you send **0xA9 01 00 1E**, it is equivalent to **AT+TTRIG=1,30**.
736
737 Or, if you send** 0xA9 00 00 00**, it is equivalent to **AT+TTRIG=0,0** (disables the timeout alarm).
738 )))
739
740 (((
741
742 )))
743
744 == 4.7 LED Indicators ==
745
746
747 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:463px" %)
748 |=(% style="width: 186px;background-color:#4F81BD;color:white" %)**Action**|=(% style="width: 277px;background-color:#4F81BD;color:white" %)**LED behavior**
749 |(% style="width:184px" %)Power On|(% style="width:275px" %)(% style="color:green" %)**GREEN LED on for 1s, **(% style="color:red" %)**RED LED on for 1s,**(%%)** (% style="color:blue" %)BLUE LED on for 1s(%%)**
750 |(% style="width:184px" %)Joined successfully|(% style="width:275px" %)(% style="color:green" %)**GREEN LED **(%%)on for 5s
751 |(% style="width:184px" %)Send an uplink message|(% style="width:275px" %)(% style="color:green" %)**GREEN LED**(%%) blinks once
752 |(% style="width:184px" %)Receive a downlink message|(% style="width:275px" %)(% style="color:blue" %)**BLUE LED**(%%) blinks once
753
754 = 5. Battery =
755
756
757 The LWL02 is equipped with 2 AAA LR03 batteries.
758
759
760 == 5.1 Replacing Batteries ==
761
762
763 (((
764 The LWL02 is equipped with 2 x AAA LR03 batteries. If the batteries are running low (showing 2.1V on the platform), the user can buy generic AAA batteries and replace them.
765
766 **Note:**
767
768 1. The LWL02 doesn’t have any screws; you can use a nail to open it from the middle.
769 1. Make sure the direction is correct when installing the AAA batteries.
770
771 **Important Note: **Ensure you use new AAA LR03 batteries, and that the battery surfaces are not damaged.
772
773
774 Example of AAA LR03 battery:
775 )))
776
777 [[image:1654675278044-307.png]]
778
779
780 == 5.2 Power Consumption Analysis ==
781
782
783 (((
784 Dragino battery-powered products all run in Low Power mode. You can refer to the guidelines from this [[**link**>>url:https://www.dragino.com/downloads/downloads/LoRa_End_Node/Battery_Analyze/DRAGINO_Battery_Life_Guide.pdf]] to estimate battery life.
785
786
787 )))
788
789 = 6. Use AT Commands =
790
791 == 6.1 Access AT Commands ==
792
793
794 The LWL02 supports an AT command set. You can use a USB to TTL adapter to configure the LWL02 via AT commands, as shown below.
795
796 [[image:image-20221226104917-1.png||height="557" width="850"]]
797
798
799 (((
800 On the PC, the user needs to set the **serial tool** (such as [[PuTTY>>url:https://www.chiark.greenend.org.uk/~~sgtatham/putty/latest.html]] or SecureCRT) baud rate to **115200** to access the serial console of the LWL02. Below is the output for reference:
801 )))
802
803 (((
804 The AT command access password is (% style="color:red" %)**123456**.
805 )))
806
807 [[image:1654675618022-630.png]]
808
809
810 (((
811 Each AT command needs to have an **ENTER** key pressed at the end before sending.
812
813 When entering the first command, the **RED LED** will turn on, and the user can now input AT commands. After entering all the required AT commands, input **AT+CLPM=1** to set the device to Low Power mode, and the **RED LED** will turn off.
814
815 More details can be found in the [[AT Command Manual>>url:http://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/LDS01/]].
816 )))
817
818 (((
819 [[url:http://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/LDS01/]]
820 )))
821
822
823 = 7. FAQ =
824
825 == 7.1 How to upgrade the image? ==
826
827
828 You can upgrade the LWL02 for bug fixes, new features, or to change the working region. The upgrade instructions are here: [[LDS02/LWL02 Update method>>http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS02%20-%20LoRaWAN%20Door%20Sensor%20User%20Manual/#H7.1Howtoupgradetheimage3F]].
829
830
831 == 7.2 How to change the LoRa Frequency Bands/Region? ==
832
833
834 If you have the US915 frequency and want to change it to the AS923 frequency, you can follow the instructions for upgrading the image in [[how to upgrade image>>||anchor="H7.1Howtoupgradetheimage3F"]] section. When downloading the image, select the required file.
835
836
837 == 7.3 Can I disable uplinks for each event to save battery life? ==
838
839
840 Yes, you can use one of the method below:
841
842 **Via AT Command**:
843
844 **AT+DISALARM=1** : The end node will only send packets during the TDC time.
845
846 **AT+DISALARM=0** : The end node will send packets either during the TDC time or when there is a status change in the door sensor.
847
848
849 **Via LoRaWAN downlink Command**:
850
851 **0xA701** : Equivalent to AT+DISALARM=1
852
853 **0xA700** : Equivalent to AT+DISALARM=0
854
855
856 == 7.4 How can I change the Subband for LWL02? ==
857
858
859 **Before v1.6 firmware:**
860 LWL02 operates in Subband 2 by default in the AU915/US915 band. If the LoRaWAN server operates on another subband, LWL02 may have trouble joining the server. In this case, the user can use the AT command to change the subband. See the AT Command chapter for hardware connection details. Below are the steps to change the subband:
861
862 1. Press the reset button.
863 1. Send the password **123456**.
864 1. Send the command: **AT+CFREQBANDMASK=0006** (use 0001 for Subband 1, 0002 for Subband 2, etc.).
865 1. Press the reset button to restart and switch to the new subband.
866
867 Example output:
868
869 (% class="mark small" %)[3369]DRAGINO LWL01 Device
870 [3370]Frequency Band: US915 v1.5
871 [3373]OTAA
872 [3374]DevEui= 7896785455246354
873 [3377]class type A
874 [3379]freq mode intra(%%)
875 (% class="mark mark small small" %)[3381]**scan chn mask 0x0002   ~-~-> use subband 2**
876
877 (% class="mark small" %)LM502:~~# [10793]txDone
878 123456       ~-~-> ENTER PASSWORD
879 Correct Password
880
881 (% class="mark small" %)[105115]rxTimeOut
882 **AT+CFREQBANDMASK=0001   ~-~-> Change to Subband1**
883 OK
884
885 (% class="mark small" %)[3371]DRAGINO LWL01 Device
886 [3373]Frequency Band: US915 v1.5
887 [3376]OTAA
888 [3377]DevEui= 7896785455246354
889 [3380]class type A
890 [3382]freq mode intra
891 [3384]**scan chn mask 0x0001  ~-~-> reboot and works on Subband1 now**
892
893
894 **Since firmware v1.6:**
895
896 LWL02 works with the channel mask 0x0000, which covers all subbands. Therefore, there is no need to use AT commands to change the subband, and it will work for every subband.
897
898
899 == 7.5 My sensor worked for Helium AU915 before, but now it doesn't work. Why? ==
900
901
902 This is a sub-band issue. See chapter 7.4. Helium changed the sub-band for AU915 from subband 2 to subband 6, which caused the sensor to stop working.
903
904
905 == 7.6 Why do I see different working temperatures for the device? ==
906
907
908 The working temperature range of the device depends on the battery the user chooses.
909
910 * A standard AAA battery can support a working range of -10°C to 50°C.
911 * A special AAA battery can support a working range of -40°C to 60°C. For example, [[Energizer L92>>url:https://data.energizer.com/pdfs/l92.pdf]][[url:https://data.energizer.com/pdfs/l92.pdf]]
912
913 = 8. Ordering Information =
914
915
916 **Part Number: (% style="color:blue" %)LWL02-XXX(%%)**
917
918 (% style="color:blue" %)**XXX:**
919
920 * (% style="color:red" %)**EU433**(%%): frequency  bands EU433
921 * (% style="color:red" %)**EU868**(%%): frequency  bands EU868
922 * (% style="color:red" %)**KR920**(%%): frequency  bands KR920
923 * (% style="color:red" %)**CN470**(%%): frequency bands CN470
924 * (% style="color:red" %)**AS923**(%%): frequency  bands AS923
925 * (% style="color:red" %)**AU915**(%%): frequency bands AU915
926 * (% style="color:red" %)**US915**(%%): frequency bands  US915
927 * (% style="color:red" %)**IN865**(%%):  frequency bands  IN865
928
929 = 9. Packaging Information =
930
931
932 **Package Includes**:
933
934 * LWL02 x 1
935
936 = 10. Support =
937
938
939 * Support is provided Monday to Friday, from 09:00 to 18:00 GMT+8. Due to different time zones, we cannot offer live support. However, your questions will be answered as soon as possible during the aforementioned hours.
940 * Please provide as much information as possible regarding your inquiry (e.g., product models, a detailed description of the problem, and steps to replicate it), and send an email to  [[support@dragino.com>>url:file:///D:/市场资料/说明书/LoRa/LT系列/support@dragino.com]].