Table of Contents:

1. Introduction

1.1 What is LWL02 LoRaWAN Water Leak Sensor

The Dragino LWL02 is a 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.

LWL02 is powered by 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.

The LWL02 will send periodically data every day as well as for each water leak event. It also counts the water leak times and 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.

Each LWL02 is 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.



1.2 Features

  • LoRaWAN Class A v1.0.3
  • Frequency Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865/RU864
  • SX1262 LoRa Core
  • Water Leak detect
  • 2 x AAA LR03 Batteries
  • AT Commands to change parameters
  • Uplink on periodically and open/close action
  • Remote configure parameters via LoRa Downlink
  • Firmware upgradable via program port

1.3 Applications

  • Smart Buildings & Home Automation
  • Logistics and Supply Chain Management
  • Smart Metering
  • Smart Agriculture
  • Smart Cities
  • Smart Factory

1.4 Dimension



1.5 Firmware Change log


2. Power ON LWL02

When receive the LWL02, please open the enclosure and add 2 x AAA batteries to power it. The LED will blink when device is powered. 

3. How to install LWL02

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.



4. Operation Mode

4.1 How it works?

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 the LWL02. It will auto join the network via OTAA.

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 to set the keys in the devices.

4.2 Example to join LoRaWAN network

Here shows an example for how to join the TTN V3 Network. Below is the network structure, we use LG308 as LoRaWAN gateway here.  


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.

  • A keep-alive message which send once per day.

  • An emergency event message when detect a water leak. (Alarm event can be disabled)

  • A periodically update at every 10 minutes when in water leak.

  • A message when switch from water leak to none water leak. (Alarm event can be disabled)


The LG308 is already set to connect to TTN V3 network . What we need to now is only configure the TTN V3:

Step 1: Create a device in TTN V3 with the OTAA keys from LWL02.

Each LWL02 is shipped with a sticker with unique device EUI:


User can enter this key in their LoRaWAN Server portal. Below is TTN V3 screen shot:

Add APP EUI in the application







Step 2: Power on 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.


4.3 Uplink Payload

Uplink Payload total 10 bytes.




Last  water leak duration(unit:min)

Alarm status(Only used in



Example Payload Decoder in TTN V3:

4.4 Downlink Payload

Downlink Control TypeType CodeDownlink payload size(bytes)
TDC (Transmit Time Interval—Keep Alive Interval)0x014
Set confirmed mode0x052
Clear Counting0xA62
Enable/Disable Alarm0xA72
Control ADR/DR0xA83
Set Alarm Timeout0xA94

Example Downlink payload setting in TTN V3:


Type Code 0x01

If the payload=0100003C, means to control the LWL02's Keep Alive interval to 0x00003C=60(S)

Type Code 0x04

If payload = 0x04FF, it will reset the LWL02.

Type Code 0x05

0x05 00: Set uplink to LoRaWAN unconfirmed mode

0x05 01: Set uplink to LoRaWAN confirmed mode

Type Code 0xA6

Example: 0xA601: Clear Counting
For LWL02: reset both count number and time. 

Type Code 0xA7

0xA7 01 : Equal to AT+DISALARM=1

0xA7 00 : Equal to AT+DISALARM=0

Type Code 0xA8

Format: 0xA8 aa bb

aa: 1: Enable ADR; 0: Disable ADR (Same as AT+CADR command)

bb: set DR (Same as AT+CDATARATE ,only valid after ADR=0)

Example: 0x A8 00 02 : Set ADR=0 and DR=1

Type Code 0xA9

See Alarm Base Timeout for detail.

4.5 Integrate with Datacake

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:

Step 1: Be sure that your device is programmed and properly connected to the network at this time.

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:




Step 3: Create an account or log in Datacake.

Step 4: Search LWL02 and add DevEUI.


4.6 Alarm Base on Timeout

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.

(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)

User configure this feature by using:


AT Command to configure:

  • AT+TTRIG=1,30   --> When status change from close to open, and device keep in open

status for more than 30 seconds. LWL02 will send an uplink packet, the Alarm bit (the lowest bit of 10th byte of payload) on this uplink packet is set to 1.

  • AT+TTRIG=0,0       -->  Default Value, disable timeout Alarm.


Downlink Command to configure:

Command: 0xA9 aa bb cc

A9: Command Type Code

aa: status to be monitor

bb cc: timeout.


If user send 0xA9 01 00 1E: equal to AT+TTRIG=1,30


0xA9 00 00 00: Equal to AT+TTRIG=0,0. Disable timeout Alarm.


4.7 LEDs

ActionLED behavior
Power OnGREEN on 1s, RED on 1s, BLUE on 1s
Joined successfulGRENN LED on 5s
Send an uplink messageGREEN LED blinks once
Got a downlink messageBLUE LED blinks once

5. Battery & How to replace

5.1 Battery Type and replace

LWL02 is equipped with 2 x AAA LR03 batteries. If the batteries running low(see 2.3~2.5v in the platform). User can buy generic AAA battery and replace it. Note:

  1. The LWL02 doesn't have any screw, use can use nail to open it by the middle.

  2. Make sure the direction is correct when install the AAA batteries.

Important Notice: Make sure use new AAA LR03 battery and the battery doesn't have broken surface.


Example of AAA LR03 batter:


5.2 Power Consumption Analyze

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:

6. Use AT Command

6.1 Access AT Command

LWL02 supports AT Command set. User can use a USB to TTL adapter to configure LWL02 via use AT command, as below.


In PC, User needs to set serial tool(such as putty, SecureCRT) baud rate to 115200 to access to access serial console of LWL02. Below is the output for reference:

The AT Access password is 123456.


Each AT Command need to add an ENTER at the end before send.

When entering the first command, the 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 RED LED will be off.

More detail AT Command manual can be found at AT Command Manual

7. FAQ

7.1 How to upgrade the image?

User can upgrade the of LWL02 for bug fix, new features, or change working region. The upgrade instruction is here: Firmware Upgrade Instruction

7.2 How to change the LoRa Frequency Bands/Region?

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. When download the images, choose the required image file for download.

7.3 Can I disable uplink for each event to save battery life?

Yes, User can use below method to disable this:

via AT Command:

AT+DISALARM=1,    End node will only send packet in TDC time.

AT+DISALARM=0,    End node will send packet in TDC time or status change for door sensor.  

via LoRaWAN downlink Command:

0xA701 :    Equal to AT+DISALARM=1

0xA700 :    Equal to AT+DISALARM=0

7.4 How to change Sub-Band for LWL02?

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:

  • Press rest button.
  • Send 123456 password
  • Send command AT+CFREQBANDMASK=0001 ( 0001 for subband 1, 0002 for subband 2, etc..)
  • Press rest button to restart to new subband
  • Example output:

[3369]DRAGINO LWL01 Device
[3370]Frequency Band: US915 v1.5
[3374]DevEui= 7896785455246354
[3377]class type A
[3379]freq mode intra

[3381]scan chn mask 0x0002   --> use subband 2

LM502:~# [10793]txDone
123456       --> ENTER PASSWORD
Correct Password

AT+CFREQBANDMASK=0001   --> Change to Subband1

[3371]DRAGINO LWL01 Device
[3373]Frequency Band: US915 v1.5
[3377]DevEui= 7896785455246354
[3380]class type A
[3382]freq mode intra
[3384]scan chn mask 0x0001  --> reboot and works on Subband1 now

Since firmware v1.6: LWL02 works in chn mask 0x0000. where cover all subbands. so no need to use AT Commands to change subband and it can works for every subband.

7.5 My sensor works for Helium AU915 before but not it doesn't work, Why?

It is sub-band issue, See chapter 7.4.Helium Change the Subband for AU915 from subband2 to Subband1 which cause the sensor doesn't work.

8. Order Info

Part Number: LWL02-XXX


  • EU433: frequency  bands EU433
  • EU868: frequency  bands EU868
  • KR920: frequency  bands KR920
  • CN470: frequency bands CN470
  • AS923: frequency  bands AS923
  • AU915: frequency bands AU915
  • US915: frequency bands  US915
  • IN865:  frequency bands  IN865
  • CN779: frequency bands CN779

9. Packing Info

Package Includes:

  • LWL02 x 1

10. Support

  • 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.
  • 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


Copyright ©2010-2022 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0