Last modified by Mengting Qiu on 2025/07/03 19:22

Show last authors
1 (% style="display:none" %)
2
3 [[image:image-20240108093525-3.png||data-xwiki-image-style-alignment="center"]]
4
5
6
7
8
9 **Table of Contents :**
10
11 {{toc/}}
12
13
14
15
16
17
18 = 1. Introduction =
19
20 == 1.1 What is SW3L-LB/LS LoRaWAN Flow Sensor ==
21
22
23 The Dragino SW3L-LB/LS is a (% style="color:blue" %)**LoRaWAN Flow Sensor**(%%). It detects water flow volume and uplink to IoT server via LoRaWAN network. User can use this to(% style="color:blue" %)** monitor the water usage for buildings.**
24
25 The SW3L-LB/LS will send water flow volume every 20 minutes. It can also (% style="color:blue" %)**detect the water flow status**(%%) and (% style="color:blue" %)**send Alarm**(%%), to avoid the waste for water usage such as broken toilet case.
26
27 SW3L-LB/LS is designed for both indoor and outdoor use. It has a weatherproof enclosure and industrial level battery to work in low to high temperatures.
28
29 The LoRa wireless technology used in SW3L-LB/LS allows device to send data and reach extremely long ranges at low data-rates. It provides ultra-long range spread spectrum communication and high interference immunity whilst minimizing current consumption.
30
31 SW3L-LB/LS (% style="color:blue" %)**supports BLE configure**(%%) and (% style="color:blue" %)**wireless OTA update**(%%) which make user easy to use.
32
33 SW3L-LB/LS is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery **(%%)or (% style="color:blue" %)**solar powered + Li-ion battery**(%%), it is designed for long term use up to 5 years.
34
35 Each SW3L-LB/LS is pre-load with a set of unique keys for LoRaWAN registrations, register these keys to local LoRaWAN server and it will auto connect after power on.
36
37
38 == 1.2 ​Features ==
39
40
41 * LoRaWAN 1.0.3 Class A
42 * Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865
43 * Ultra-low power consumption
44 * Upload water flow volume
45 * Monitor water waste
46 * AT Commands to change parameters
47 * supports Datalog feature
48 * Support Bluetooth v5.1 and LoRaWAN remote configure
49 * Support wireless OTA update firmware
50 * Uplink on periodically and open/close event
51 * Downlink to change configure
52 * 8500mAh Li/SOCl2 Battery (SW3L-LB)
53 * Solar panel + 3000mAh Li-ion battery (SW3L-LS)
54
55 == 1.3 Specification ==
56
57
58 (% style="color:#037691" %)**Common DC Characteristics:**
59
60 * Supply Voltage: Built-in Battery , 2.5v ~~ 3.6v
61 * Operating Temperature: -40 ~~ 85°C
62
63 (% style="color:#037691" %)**LoRa Spec:**
64
65 * Frequency Range,  Band 1 (HF): 862 ~~ 1020 Mhz
66 * Max +22 dBm constant RF output vs.
67 * RX sensitivity: down to -139 dBm.
68 * Excellent blocking immunity
69
70 (% style="color:#037691" %)**Battery:**
71
72 * Li/SOCI2 un-chargeable battery
73 * Capacity: 8500mAh
74 * Self-Discharge: <1% / Year @ 25°C
75 * Max continuously current: 130mA
76 * Max boost current: 2A, 1 second
77
78 (% style="color:#037691" %)**Power Consumption**
79
80 * Sleep Mode: 5uA @ 3.3v
81 * LoRa Transmit Mode: 125mA @ 20dBm, 82mA @ 14dBm
82
83 == 1.4 Applications ==
84
85
86 * Flow Sensor application
87 * Water Control
88 * Toilet Flow Sensor
89 * Monitor Waste water
90
91 == 1.5 Sleep mode and working mode ==
92
93
94 (% style="color:blue" %)**Deep Sleep Mode: **(%%)Sensor doesn't have any LoRaWAN activate. This mode is used for storage and shipping to save battery life.
95
96 (% style="color:blue" %)**Working Mode:** (%%)In this mode, Sensor will work as LoRaWAN Sensor to Join LoRaWAN network and send out sensor data to server. Between each sampling/tx/rx periodically, sensor will be in IDLE mode), in IDLE mode, sensor has the same power consumption as Deep Sleep mode.
97
98
99 == 1.6 Button & LEDs ==
100
101
102 [[image:image-20250418151249-1.jpeg]]
103
104 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
105 |=(% style="width: 167px;background-color:#4F81BD;color:white" %)**Behavior on ACT**|=(% style="width: 117px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 226px;background-color:#4F81BD;color:white" %)**Action**
106 |[[image:1749538647670-330.png]] 1~~3s|(% style="width:117px" %)Send an uplink|(% style="width:225px" %)(((
107 If sensor is already Joined to LoRaWAN network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once.
108 Meanwhile, BLE module will be active and user can connect via BLE to configure device.
109 )))
110 |[[image:1749538650143-124.png]] >3s|(% style="width:117px" %)Active Device|(% style="width:225px" %)(((
111 (% style="color:green" %)**Green led**(%%) will fast blink 5 times, device will enter (% style="color:#037691" %)**OTA mode**(%%) for 3 seconds. And then start to JOIN LoRaWAN network.
112 (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.
113 Once sensor is active, BLE module will be active and user can connect via BLE to configure device, no matter if device join or not join LoRaWAN network.
114 )))
115 |[[image:1749538671176-940.png]] x5|(% style="width:117px" %)Deactivate Device|(% style="width:225px" %)(% style="color:red" %)**Red led**(%%) will solid on for 5 seconds. Means device is in Deep Sleep Mode.
116
117 == 1.7 BLE connection ==
118
119
120 SW3L-LB/LS support BLE remote configure.
121
122
123 BLE can be used to configure the parameter of sensor or see the console output from sensor. BLE will be only activate on below case:
124
125 * Press button to send an uplink
126 * Press button to active device.
127 * Device Power on or reset.
128
129 If there is no activity connection on BLE in 60 seconds, sensor will shut down BLE module to enter low power mode.
130
131
132 == 1.8 Pin Definitions ==
133
134
135 [[image:image-20230614172344-1.png]]
136
137
138 == 1.9 Flow Sensor Spec ==
139
140
141 (((
142 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:778px" %)
143 |=(% style="width: 103px; background-color:#4F81BD; color: white;" %)**Model**|=(% style="width: 133px; background-color: rgb(79, 129, 189); color: white;" %)SW3L-002-FE|=(% style="width: 135px; background-color: rgb(79, 129, 189); color: white;" %)**SW3L-004**|=(% style="width: 150px; background-color: rgb(79, 129, 189); color: white;" %)SW3L-006|=(% style="width: 120px; background-color: rgb(79, 129, 189); color: white;" %)SW3L-010|=(% style="width: 151px; background-color: rgb(79, 129, 189); color: white;" %)SW3L-020
144 |(% style="width:152px" %)**Probe #**|(% style="width:133px" %)DW-002-FE|(% style="width:135px" %)DW-004|(% style="width:150px" %)DW-006|(% style="width:120px" %)DW-010|(% style="width:151px" %)DW-020
145 |(% style="width:152px" %)**Diameter**|(% style="width:133px" %)G1/4" / DN10|(% style="width:135px" %)G1/2" / DN15|(% style="width:150px" %)G3/4" / DN20|(% style="width:120px" %)G1"  / DN25|(% style="width:151px" %)G2" / DN50
146 |(% style="width:152px" %)**Working Range**|(% style="width:133px" %)0.3 ~~ 6L/min|(% style="width:135px" %)1~~30L/min|(% style="width:150px" %)1~~60L/min|(% style="width:120px" %)2~~100L/min|(% style="width:151px" %)10~~300L/min
147 |(% style="width:152px" %)**Measure**|(% style="width:133px" %)1377 pulse = 1L|(% style="width:135px" %)450 pulse = 1 L|(% style="width:150px" %)390 pulse = 1 L|(% style="width:120px" %)64 pulse = 1 L|(% style="width:151px" %)12 pulse = 1 L
148 |(% style="width:152px" %)**Accurancy**|(% style="width:133px" %)±5%|(% style="width:135px" %)±5%|(% style="width:150px" %)±5%|(% style="width:120px" %)±5%|(% style="width:151px" %)±5%
149 |(% style="width:152px" %)**Power Consumption**|(% style="width:133px" %)1uA, 3.6v (Sensor Only)|(% style="width:135px" %)1uA, 3.6v (Sensor Only)|(% style="width:150px" %)1uA, 3.6v (Sensor Only)|(% style="width:120px" %)1uA, 3.6v (Sensor Only)|(% style="width:151px" %)1uA, 3.6v (Sensor Only)
150 |(% style="width:152px" %)**Max Pressure**|(% style="width:133px" %)≤0.8Mpa|(% style="width:135px" %)≤ 1.75Mpa|(% style="width:150px" %)≤ 1.75Mpa |(% style="width:120px" %)≤ 1.75Mpa|(% style="width:151px" %)≤ 1.75Mpa
151 |(% style="width:152px" %)**Temperature range**|(% style="width:133px" %)<80°C|(% style="width:135px" %)<80°C|(% style="width:150px" %)<80°C|(% style="width:120px" %)<80°C|(% style="width:151px" %)<80°C
152 |(% style="width:152px" %)**Humidity Range**|(% style="width:133px" %)35%~~90%RH (no frost)|(% style="width:135px" %)35%~~90%RH (no frost)|(% style="width:150px" %)35%~~90%RH (no frost)|(% style="width:120px" %)35%~~90%RH (no frost)|(% style="width:151px" %)35%~~90%RH (no frost)
153 )))
154
155 (% style="color:red" %)**Notice: SW3L-002-FE model is none off-shore model, only valid with MOQ of 200pcs ordering. **
156
157
158 == 1.10 Mechanical ==
159
160 === 1.10.1 for LB version ===
161
162 [[image:image-20250401111034-8.jpeg]]
163
164
165 (% style="color:blue" %)**002-FE:  diameter: G1/4” / DN10.  1377 pulse = 1 L**
166
167 [[image:image-20240209233838-1.png]]
168
169
170 (% style="color:blue" %)**004: DW-004 Flow Sensor: diameter: G1/2” / DN15.  450 pulse = 1 L**
171
172 [[image:image-20250401111103-9.jpeg]]
173
174
175 (% style="color:blue" %)**006: DW-006 Flow Sensor: diameter: G3/4” / DN20.  390 pulse = 1 L**
176
177 [[image:image-20250401111122-10.jpeg]]
178
179
180 (% style="color:blue" %)**010: DW-010 Flow Sensor: diameter: G 1” / DN25. 64 pulse = 1 L**
181
182 [[image:image-20250401111138-11.jpeg]]
183
184
185 (% style="color:blue" %)**020: DW-020 Flow Sensor: diameter: G 2”/ DN50.  12 pulse = 1 L**
186
187 [[image:image-20240125090731-1.png]]
188
189
190 === 1.10.2 for LS version ===
191
192
193 [[image:image-20250401104503-1.jpeg]]
194
195
196 = 2. Configure SW3L-LB/LS to connect to LoRaWAN network =
197
198 == 2.1 How it works ==
199
200
201 The SW3L-LB/LS is configured as (% style="color:#037691" %)**LoRaWAN OTAA Class A**(%%) mode by default. It has OTAA keys to join LoRaWAN network. To connect a local LoRaWAN network, you need to input the OTAA keys in the LoRaWAN IoT server and press the button to activate the SW3L-LB/LS. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 20 minutes.
202
203 (% style="display:none" %) (%%)
204
205 == 2.2 ​Quick guide to connect to LoRaWAN server (OTAA) ==
206
207
208 Following is an example for how to join the [[TTN v3 LoRaWAN Network>>url:https://console.cloud.thethings.network/]]. Below is the network structure; we use the [[LPS8v2>>url:https://www.dragino.com/products/lora-lorawan-gateway/item/228-lps8v2.html]] as a LoRaWAN gateway in this example.
209
210 The LPS8v2 is already set to connected to [[TTN network >>url:https://console.cloud.thethings.network/]], so what we need to now is configure the TTN server.
211
212 [[image:image-20250418153209-2.png]](% style="display:none" %)
213
214
215 (% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from SW3L-LB/LS.
216
217 Each SW3L-LB/LS is shipped with a sticker with the default device EUI as below:
218
219 [[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]]
220
221
222 You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
223
224 **Create the application.**
225
226 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/SAC01L_LoRaWAN_Temperature%26Humidity_Sensor_User_Manual/WebHome/image-20250423093843-1.png?width=756&height=264&rev=1.1||alt="image-20250423093843-1.png"]]
227
228 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LTC2-LB--LoRaWAN_Temperature_Transmitter_User_Manual/WebHome/image-20240907111305-2.png?width=1000&height=572&rev=1.1||alt="image-20240907111305-2.png"]]
229
230
231 **Add devices to the created Application.**
232
233 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LTC2-LB--LoRaWAN_Temperature_Transmitter_User_Manual/WebHome/image-20240907111659-3.png?width=977&height=185&rev=1.1||alt="image-20240907111659-3.png"]]
234
235 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LTC2-LB--LoRaWAN_Temperature_Transmitter_User_Manual/WebHome/image-20240907111820-5.png?width=975&height=377&rev=1.1||alt="image-20240907111820-5.png"]]
236
237
238 **Enter end device specifics manually.**
239
240 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LTC2-LB--LoRaWAN_Temperature_Transmitter_User_Manual/WebHome/image-20240907112136-6.png?width=697&height=687&rev=1.1||alt="image-20240907112136-6.png"]]
241
242
243 **Add DevEUI and AppKey. Customize a platform ID for the device.**
244
245 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LTC2-LB--LoRaWAN_Temperature_Transmitter_User_Manual/WebHome/image-20240907112427-7.png?rev=1.1||alt="image-20240907112427-7.png"]]
246
247
248 (% style="color:blue" %)**Step 2:**(%%) Add decoder.
249
250 In TTN, user can add a custom payload so it shows friendly reading.
251
252 Click this link to get the decoder: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder/tree/main/>>url:https://github.com/dragino/dragino-end-node-decoder/tree/main/]]
253
254 Below is TTN screen shot:
255
256 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS25-LBLDS25-LS--LoRaWAN_LiDAR_Distance_Auto-Clean_Sensor_User_Manual/WebHome/image-20241009140556-1.png?width=1184&height=488&rev=1.1||alt="image-20241009140556-1.png" height="488" width="1184"]]
257
258 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS25-LBLDS25-LS--LoRaWAN_LiDAR_Distance_Auto-Clean_Sensor_User_Manual/WebHome/image-20241009140603-2.png?width=1168&height=562&rev=1.1||alt="image-20241009140603-2.png" height="562" width="1168"]]
259
260
261 (% style="color:blue" %)**Step 3:**(%%) Activate on SW3L-LB/LS
262
263 Press the button for 5 seconds to activate the SW3L-LB/LS.
264
265 (% 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.
266
267 After join success, it will start to upload messages to TTN and you can see the messages in the panel.
268
269
270 == 2.3 ​Uplink Payload ==
271
272 === 2.3.1 Device Status, FPORT~=5 ===
273
274
275 Include device configure status. Once SW3L-LB/LS Joined the network, it will uplink this message to the server. After that, SW3L-LB/LS will uplink Device Status every 12 hours.
276
277 Users can also use the downlink command**(0x26 01)** to ask SW3L-LB/LS to resend this uplink. This uplink payload also includes the DeviceTimeReq to get time.
278
279 The Payload format is as below.
280
281 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
282 |(% colspan="6" style="background-color:#4f81bd; color:white" %)**Device Status (FPORT=5)**
283 |(% style="width:103px" %)**Size (bytes)**|(% style="width:72px" %)**1**|**2**|(% style="width:91px" %)**1**|(% style="width:86px" %)**1**|(% style="width:44px" %)**2**
284 |(% style="width:103px" %)Value|(% style="width:72px" %)Sensor Model|Firmware Version|(% style="width:91px" %)Frequency Band|(% style="width:86px" %)Sub-band|(% style="width:44px" %)BAT
285
286 Example parse in TTNv3
287
288 [[image:image-20230614172520-3.png||height="169" width="869"]]
289
290
291 (% style="color:#037691" %)**Sensor Model**(%%): For SW3L-LB/LS, this value is 0x1F
292
293 (% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
294
295 (% style="color:#037691" %)**Frequency Band**:
296
297 0x01: EU868
298
299 0x02: US915
300
301 0x03: IN865
302
303 0x04: AU915
304
305 0x05: KZ865
306
307 0x06: RU864
308
309 0x07: AS923
310
311 0x08: AS923-1
312
313 0x09: AS923-2
314
315 0x0a: AS923-3
316
317 0x0b: CN470
318
319 0x0c: EU433
320
321 0x0d: KR920
322
323 0x0e: MA869
324
325
326 (% style="color:#037691" %)**Sub-Band**:
327
328 AU915 and US915:value 0x00 ~~ 0x08
329
330 CN470: value 0x0B ~~ 0x0C
331
332 Other Bands: Always 0x00
333
334
335 (% style="color:#037691" %)**Battery Info**:
336
337 Check the battery voltage.
338
339 Ex1: 0x0B45 = 2885mV
340
341 Ex2: 0x0B49 = 2889mV
342
343
344 === 2.3.2 Sensor Configuration, FPORT~=4 ===
345
346
347 SW3L-LB/LS will only send this command after getting the downlink command **(0x26 02)** from the server.
348
349 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
350 |(% style="background-color:#4f81bd; color:white; width:70px" %) **Size(bytes)**|(% style="background-color:#4f81bd; color:white; width:105px" %)**3**|(% style="background-color:#4f81bd; color:white; width:60px" %)**1**|(% style="background-color:#4f81bd; color:white; width:96px" %)**1**|(% style="background-color:#4f81bd; color:white; width:105px" %)**2**|(% style="background-color:#4f81bd; color:white; width:74px" %)**1**
351 |Value|(% style="width:104px" %)TDC(unit:sec)|(% style="width:43px" %)N/A|(% style="width:91px" %)Stop Timer|(% style="width:100px" %)Alarm Timer|(% style="width:69px" %)Reserve
352
353 Example parse in TTNv3
354
355 [[image:image-20230614172555-4.png||height="151" width="853"]]
356
357
358 * (% style="color:blue" %)**TDC: (default: 0x0004B0)**
359
360 Uplink interval for the total pulse count, default value is 0x0004B0 which is 1200 seconds = 20 minutes.
361
362
363 * (% style="color:blue" %)**STOP Duration & Alarm Timer**
364
365 Shows the configure value of [[Alarm for continuously water flow>>||anchor="H3.3.4Alarmforcontinuouslywaterflow"]]
366
367
368 === 2.3.3 Water Flow Value, Uplink FPORT~=2 ===
369
370
371 (((
372 SW3L-LB/LS will send this uplink **after** Device Status once join the LoRaWAN network successfully. And SW3L-LB/LS will:
373 )))
374
375 (((
376 periodically send this uplink every 20 minutes, this interval [[can be changed>>||anchor="H3.3.1SetTransmitIntervalTime"]].
377 )))
378
379 (((
380 Uplink Payload totals 11 bytes.
381 )))
382
383 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
384 |=(% colspan="6" style="width: 515px; background-color:#4F81BD;color:white" %)**Water Flow Value,  FPORT=2**
385 |(% style="width:50px" %)**Size(bytes)**|(% style="width:110px" %)**1**|(% style="width:120px" %)**4**|(% style="width:110px" %)**1**|(% style="width:55px" %)**1**|(% style="width:70px" %)**4**
386 |(% style="width:110px" %)Value|(% style="width:81px" %)Calculate Flag & [[Alarm>>||anchor="H3.3.4Alarmforcontinuouslywaterflow"]]|(% style="width:95px" %)(((
387 Total pulse Or Last Pulse
388 )))|(% style="width:78px" %)(((
389 MOD & PA4_status & PB15_status
390 )))|(% style="width:92px" %)Reserve(0x01)|(% style="width:134px" %)[[Unix TimeStamp>>||anchor="H2.5.2UnixTimeStamp"]]
391
392 **Calculate Flag & Alarm:**
393
394 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %)
395 |(% style="background-color:#4f81bd; color:white; width:70px" %)**Size(bit)**|(% style="background-color:#4f81bd; color:white; width:70px" %)**[bit7:bit6]**|(% style="background-color:#4f81bd; color:white; width:90px" %)**[bit5:bit2]**|(% style="background-color:#4f81bd; color:white; width:140px" %)**bit1**|(% style="background-color:#4f81bd; color:white; width:130px" %)**bit0**
396 |(% style="width:88px" %)Value|(% style="width:117px" %)Reserve|(% style="width:117px" %)Calculate Flag|(% style="width:169px" %)Alarm: 0: No Alarm; 1: Alarm|(% style="width:150px" %)TDC flag 0:No;1:Yes
397
398 **MOD & PA4_status & PB15_status:**
399
400 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:230px" %)
401 |(% style="background-color:#4f81bd; color:white; width:50px" %)**Size(bit)**|(% style="background-color:#4f81bd; color:white; width:60px" %)**bit7**|(% style="background-color:#4f81bd; color:white; width:60px" %)**bit6**|(% style="background-color:#4f81bd; color:white; width:60px" %)**[bit5:bit0]**
402 |(% style="width:88px" %)Value|(% style="width:117px" %)PA4_status|(% style="width:117px" %)PB15_status|(% style="width:118px" %)MOD
403
404 (% style="color:#037691" %)** **[[image:image-20230626093242-1.png||height="276" width="892"]]
405
406
407 * (((
408 (% style="color:blue" %)**Calculate Flag**
409 )))
410
411 (((
412 The calculate flag is a user defined field, IoT server can use this flag to handle different meters with different pulse factors. For example, if there are 100 Flow Sensors, meters 1 ~~50 are 1 liter/pulse and meters 51 ~~ 100 has 1.5 liter/pulse.
413
414
415 )))
416
417 (((
418 **Example: in the default payload:**
419 )))
420
421 * (((
422 calculate flag=0: for SW3L-004 Flow Sensor: 450 pulse = 1 L
423 )))
424 * (((
425 calculate flag=1: for SW3L-006 Flow Sensor: 390 pulse = 1 L
426 )))
427 * (((
428 calculate flag=2: for SW3L-010 Flow Sensor: 64 pulse = 1 L
429 )))
430 * (((
431 for SW3L-020 Flow Sensor: 12 pulse = 1 L  Please use the following decoder:[[dragino-end-node-decoder/SW3L-LB/SW3L-LB_-020_TTN_Decoder.txt at main · dragino/dragino-end-node-decoder · GitHub>>url:https://github.com/dragino/dragino-end-node-decoder/blob/main/SW3L-LB/SW3L-LB_-020_TTN_Decoder.txt]]
432 )))
433
434 (((
435 Default value: 0. 
436 )))
437
438 (((
439 Range (4 bits): (b)0000 ~~ (b) 1111
440
441 If user use with a meter for example is 0.02L/pulse. To proper decode the correct value in server,
442
443 1) User can set the Calculate Flag of this sensor to 3.
444
445 2) In server side, when a sensor data arrive, the decoder will check the value of Calculate Flag, It the value is 3, the total volume = 0.02 x Pulse Count.
446 )))
447
448 (((
449 (% style="color:red" %)**NOTE: User need to set Calculate Flag to proper value before use Flow Sensor. Downlink or AT Command see: **(%%)Refer: [[Set Calculate Flag>>||anchor="H3.3.5Setthecalculateflag"]]
450
451 (((
452
453 )))
454 )))
455
456
457
458
459
460 * (((
461 (% style="color:blue" %)**Alarm**
462 )))
463
464 (((
465 See [[Alarm for continuously water flow>>||anchor="H3.3.4Alarmforcontinuouslywaterflow"]]
466 )))
467
468 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/SW3L%20LoRaWAN%20Outdoor%20Flow%20Sensor/WebHome/image-20220519095946-4.png?width=724&height=65&rev=1.1||alt="image-20220519095946-4.png"]]
469
470
471 (((
472 * (% style="color:blue" %)**TDC flag**
473
474 When the flag is 1, it means sending packets at normal time intervals.
475
476 Otherwise, it is a packet sent at non-TDC time.
477
478
479 )))
480
481 * (((
482 (% style="color:blue" %)**Total pulse**
483 )))
484
485 (((
486 Total pulse/counting since factory
487 )))
488
489 (((
490 Range (4 Bytes) : 0x00000000~~ 0xFFFFFFFF .
491
492
493 )))
494
495 * (((
496 (% style="color:blue" %)**Last Pulse**
497 )))
498
499 (((
500 Total pulse since last FPORT=2 uplink. (Default 20 minutes)
501 )))
502
503 (((
504 Range (4 Bytes) : 0x00000000~~ 0xFFFFFFFF .
505
506
507 * (((
508 (% style="color:blue" %)**PA4_status: Support digital level input below 3.3V**
509 )))
510
511 (((
512 0 ~-~-> PA4 is at low level.
513 )))
514
515 (((
516 1 ~-~-> PA4 is at high level.
517
518
519 * (((
520 (% style="color:blue" %)**PB15_status: Support digital level input below 3.3V**
521 )))
522
523 (((
524 0 ~-~-> PB15 is at low level.
525 )))
526
527 (((
528 1 ~-~-> PB15 is at high level..
529
530
531 )))
532 )))
533 )))
534
535 * (((
536 (% style="color:blue" %)**MOD: Default =0**
537 )))
538
539 (((
540 MOD=0 ~-~-> Uplink Total Pulse since factory
541 )))
542
543 (((
544 MOD=1 ~-~-> Uplink total pulse since last FPORT=2 uplink.
545
546
547 )))
548
549 * (((
550 (% style="color:blue" %)**Water Flow Value**
551 )))
552
553 (((
554 **Total Water Flow Volume = (Calculate Flag) x (Total Pulse)=9597/450=21.3L**
555 )))
556
557 [[image:image-20250401111421-12.jpeg]]
558
559
560 (((
561 **Total Water Flow for TDC timer = (Calculate Flag) x (Last Pulse)=79/450=0.2L**
562 )))
563
564 [[image:image-20250401111436-13.jpeg]] ** **
565
566
567 === 2.3.4 Historical Water Flow Status, FPORT~=3 ===
568
569
570 (((
571 SW3L-LB/LS stores sensor values and users can retrieve these history values via the [[downlink command>>||anchor="H2.5DatalogFeature"]].
572 )))
573
574 (((
575 The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time water flow status.
576
577 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
578 |=(% colspan="6" style="width: 515px; background-color:#4F81BD;color:white" %)**Water Flow Value,  FPORT=3**
579 |(% style="width:50px" %)**Size(bytes)**|(% style="width:110px" %)**1**|(% style="width:120px" %)**4**|(% style="width:110px" %)**1**|(% style="width:55px" %)**1**|(% style="width:70px" %)**4**
580 |(% style="width:110px" %)Value|(% style="width:81px" %)Calculate Flag & [[Alarm>>||anchor="H3.3.4Alarmforcontinuouslywaterflow"]]|(% style="width:95px" %)(((
581 Total pulse Or Last Pulse
582 )))|(% style="width:78px" %)(((
583 MOD & PA4_status & PB15_status
584 )))|(% style="width:92px" %)Reserve(0x01)|(% style="width:134px" %)[[Unix TimeStamp>>||anchor="H2.5.2UnixTimeStamp"]]
585
586 **Calculate Flag & Alarm:**
587
588 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
589 |(% style="background-color:#4f81bd; color:white; width:50px" %)**Size(bit)**|(% style="background-color:#4f81bd; color:white; width:89px" %)**bit7**|(% style="background-color:#4f81bd; color:white; width:89px" %)**bit6**|(% style="background-color:#4f81bd; color:white; width:69px" %)**[bit5:bit2]**|(% style="background-color:#4f81bd; color:white; width:129px" %)**bit1**|(% style="background-color:#4f81bd; color:white; width:89px" %)**bit0**
590 |(% style="width:88px" %)Value|(% style="width:96px" %)(((
591 No ACK message
592 )))|(% style="width:94px" %)Poll Message Flag|(% style="width:115px" %)Calculate Flag|(% style="width:136px" %)Alarm: 0: No Alarm; 1: Alarm|(% style="width:120px" %)TDC flag 0:No;1:Yes
593
594 **MOD & PA4_status & PB15_status:**
595
596 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:240px" %)
597 |(% style="background-color:#4f81bd; color:white; width:60px" %)**Size(bit)**|(% style="background-color:#4f81bd; color:white; width:60px" %)**bit7**|(% style="background-color:#4f81bd; color:white; width:60px" %)**bit6**|(% style="background-color:#4f81bd; color:white; width:60px" %)**[bit5:bit0]**
598 |(% style="width:88px" %)Value|(% style="width:117px" %)PA4_status|(% style="width:117px" %)PB15_status|(% style="width:118px" %)MOD
599 )))
600
601 * (((
602 Each data entry is 11 bytes and has the same structure as [[real time water flow status>>||anchor="H2.3.3A0WaterFlowValue2CUplinkFPORT3D2"]], to save airtime and battery, SW3L will send max bytes according to the current DR and Frequency bands.
603 )))
604
605 (((
606 For example, in the US915 band, the max payload for different DR is:
607 )))
608
609 (((
610 (% style="color:blue" %)**a) DR0:**(%%) max is 11 bytes so one entry of data
611 )))
612
613 (((
614 (% style="color:blue" %)**b) DR1:**(%%) max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
615 )))
616
617 (((
618 (% style="color:blue" %)**c) DR2:**(%%) total payload includes 11 entries of data
619 )))
620
621 (((
622 (% style="color:blue" %)**d) DR3:**(%%) total payload includes 22 entries of data.
623 )))
624
625 (((
626 If SW3L-LB/LS doesn't have any data in the polling time. It will uplink 11 bytes of 0
627
628
629 )))
630
631 (((
632 (% style="color:#037691" %)**Downlink:**
633 )))
634
635 (((
636 0x31 64 92 C5 AC 64 92 C7 8C 05
637 )))
638
639 [[image:image-20230626093440-2.png||height="160" width="890"]]
640
641
642 (((
643 (% style="color:#037691" %)**Uplink:**
644 )))
645
646 (((
647 41 00 01 00 00 00 08 64 92 C5 E4 40 00 01 00 00 00 08 64 92 C6 06 49 41 01 00 00 00 00 64 92 C6 8B 49 81 01 00 00 00 00 64 92 C7 34 4A 01 01 00 00 00 2D 64 92 C7 7C
648
649
650 )))
651
652 (((
653 (% style="color:#037691" %)**Parsed Value:**
654 )))
655
656 (((
657 [TDC_flag, Alarm, Calculate Flag, PA4_status, PB15_status, MOD, Total pulse or Last Pulse,** **Water Flow Value, TIME]
658 )))
659
660
661 (((
662 [YES,FALSE,0,L,L, 0,8, 0.0,2023-06-21 09:41:56],
663
664 [NO,FALSE,0,L,L, 0,8, 0.0,2023-06-21 09:42:30],
665
666 [YES,FALSE,2,L,H,1,0, 0.0,2023-06-21 09:44:43],
667
668 [YES,FALSE,2,H,L,1,0, 0.0,2023-06-21 09:47:32],
669
670 [NO,TRUE ,2, L,L,1,45,0.7,2023-06-21 09:48:44],
671
672
673 )))
674
675 [[image:image-20230626093703-3.png||height="156" width="894"]]
676
677
678 == 2.4 Payload Decoder file ==
679
680
681 In TTN, use can add a custom payload so it shows friendly reading
682
683 In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from: [[dragino-end-node-decoder/SW3L-LB at main · dragino/dragino-end-node-decoder · GitHub>>url:https://github.com/dragino/dragino-end-node-decoder/tree/main/SW3L-LB]]
684
685
686 == 2.5 Datalog Feature ==
687
688
689 Datalog Feature is to ensure IoT Server can get all sampling data from Sensor even if the LoRaWAN network is down. For each sampling, SW3L-LB/LS will store the reading for future retrieving purposes.
690
691
692 === 2.5.1 How datalog works ===
693
694
695 SW3L-LB/LS will wait for ACK for every uplink, when there is no LoRaWAN network,SW3L-LB/LS 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.
696
697 * (((
698 a) SW3L-LB/LS will do an ACK check for data records sending to make sure every data arrive server.
699 )))
700 * (((
701 b) SW3L-LB/LS will send data in **CONFIRMED Mode**, but SW3L-LB/LS 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 SW3L-LB/LS gets a ACK, SW3L-LB/LS will consider there is a network connection and resend all NONE-ACK messages.
702
703
704 )))
705
706 === 2.5.2 Enable Datalog ===
707
708
709 User need to make sure below two settings are enable to use datalog;
710
711 * (% style="color:blue" %)**SYNCMOD=1(Default)**(%%) to enable sync time via LoRaWAN MAC command, click here ([[AT+SYNCMOD>>https://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/#H4.6Settimesynchronizationmethod28ThenetworkservermustsupportLoRaWANv1.0.329]]) for detailed instructions.
712 * (% style="color:blue" %)**PNACKMD=1**(%%)** **to enable datalog feature, click here ([[AT+PNACKMD>>https://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/#H7.26RequesttheservertosendanACK]]) for detailed instructions.
713
714
715
716 Once SW3L-LB/LS Joined LoRaWAN network, it will send the MAC command (DeviceTimeReq) and the server will reply with (DeviceTimeAns) to send the current time to SW3L-LB/LS. If SW3L-LB/LS fails to get the time from the server, SW3L-LB/LS will use the internal time and wait for next time request (AT+SYNCTDC to set the time request period, default is 10 days).
717
718 (% 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.**
719
720
721 === 2.5.3 Unix TimeStamp ===
722
723
724 SW3L-LB/LS uses Unix TimeStamp format based on
725
726 [[image:image-20250401105347-6.jpeg]]
727
728 User can get this time from link:  [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] :
729
730 Below is the converter example
731
732 [[image:image-20250401105356-7.jpeg]]
733
734
735 So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25
736
737
738 === 2.5.4 Poll sensor value ===
739
740
741 Users can poll sensor values based on timestamps. Below is the downlink command.
742
743 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:425.818px" %)
744 |(% colspan="4" style="background-color:#4f81bd; color:white; width:423px" %)**Downlink Command to poll Open/Close status (0x31)**
745 |(% style="width:58px" %)**1byte**|(% style="width:127px" %)**4bytes**|(% style="width:124px" %)**4bytes**|(% style="width:114px" %)**1byte**
746 |(% style="width:58px" %)31|(% style="width:127px" %)Timestamp start|(% style="width:124px" %)Timestamp end|(% style="width:114px" %)Uplink Interval
747
748 (((
749 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.
750 )))
751
752 (((
753 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"]]
754 )))
755
756 (((
757 Is to check 2021/11/12 12:00:00 to 2021/11/12 15:00:00's data
758 )))
759
760 (((
761 Uplink Internal =5s,means SW3L-LB/LS will send one packet every 5s. range 5~~255s.
762 )))
763
764
765
766
767 == 2.6 Frequency Plans ==
768
769
770 The SW3L-LB/LS uses OTAA mode and below frequency plans by default. Each frequency band use different firmware, user update the firmware to the corresponding band for their country.
771
772 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]]
773
774
775 = 3. Configure SW3L-LB/LS =
776
777 == 3.1 Configure Methods ==
778
779
780 SW3L-LB/LS supports below configure method:
781
782 * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
783
784 * AT Command via UART Connection : See [[UART Connection>>http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H2.3UARTConnectionforSN50v3basemotherboard]].
785
786 * LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
787
788 == 3.2 General Commands ==
789
790
791 These commands are to configure:
792
793 * General system settings like: uplink interval.
794
795 * LoRaWAN protocol & radio related command.
796
797 They are same for all Dragino Devices which support DLWS-005 LoRaWAN Stack. These commands can be found on the wiki:
798
799 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/]]
800
801
802 == 3.3 Commands special design for SW3L-LB/LS ==
803
804
805 These commands only valid for SW3L-LB/LS, as below:
806
807
808 === 3.3.1 Set Transmit Interval Time ===
809
810
811 (((
812 Feature: Change LoRaWAN End Node Transmit Interval.
813 )))
814
815 (((
816 (% style="color:blue" %)**AT Command: AT+TDC**
817 )))
818
819 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
820 |=(% style="width: 156px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 137px;background-color:#4F81BD;color:white" %)**Function**|=(% style="background-color:#4F81BD;color:white" %)**Response**
821 |(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|(((
822 30000
823 OK
824 the interval is 30000ms = 30s
825 )))
826 |(% style="width:156px" %)AT+TDC=60000|(% style="width:137px" %)Set Transmit Interval|(((
827 OK
828 Set transmit interval to 60000ms = 60 seconds
829 )))
830
831 (((
832 (% style="color:blue" %)**Downlink Command: 0x01**
833 )))
834
835 (((
836 Format: Command Code (0x01) followed by 3 bytes time value.
837 )))
838
839 (((
840 If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01.
841 )))
842
843 * (((
844 Example 1: Downlink Payload: 0100001E  ~/~/ Set Transmit Interval (TDC) = 30 seconds
845 )))
846 * (((
847 Example 2: Downlink Payload: 0100003C  ~/~/ Set Transmit Interval (TDC) = 60 seconds
848
849
850
851 )))
852
853 === 3.3.2 Set Power Output Duration ===
854
855
856 Control the output duration 5V . Before each sampling, device will
857
858 ~1. first enable the power output to external sensor,
859
860 2. keep it on as per duration, read sensor value and construct uplink payload
861
862 3. final, close the power output.
863
864 (% style="color:blue" %)**AT Command:AT+5VT**
865
866 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:460px" %)
867 |=(% style="width: 156px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 175px; background-color: #4F81BD;color:white" %)**Function**|=(% style="background-color: #4F81BD;color:white; width: 126px;" %)**Response**
868 |(% style="width:156px" %)AT+5VT=?|(% style="width:175px" %)Show 5V open time.|(% style="width:126px" %)(((
869 0 (default)
870 OK
871 )))
872 |(% style="width:156px" %)AT+5VT=1000|(% style="width:175px" %)Close after a delay of 1000 milliseconds.|(% style="width:126px" %)(((
873 OK
874
875 )))
876
877 (% style="color:blue" %)**Downlink Command:0x07**
878
879 Format: Command Code (0x07) followed by 2 bytes.
880
881 The first and second bytes are the time to turn on.
882
883 * Example 1: Downlink Payload: 070000  **~-~-->**  AT+5VT=0
884 * Example 2: Downlink Payload: 0701F4  **~-~-->**  AT+5VT=500
885
886 === 3.3.3 Set Time Sync Mode ===
887
888
889 Feature: Enable/Disable Sync system time via LoRaWAN MAC Command (DeviceTimeReq), LoRaWAN server must support v1.0.3 protocol to reply to this command.
890
891 SYNCMOD is set to 1 by default. If user wants to set a different time from the LoRaWAN server, the user needs to set this to 0.
892
893 (% style="color:blue" %)**AT Command:**
894
895 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
896 |=(% style="width: 155px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 284px; background-color:#4F81BD;color:white" %)**Function**|=(% style="background-color:#4F81BD;color:white" %)**Response**
897 |(% style="width:156px" %)AT+SYNCMOD=1|(% style="width:284px" %)Enable Sync system time via LoRaWAN MAC Command (DeviceTimeReq) The default is zero time zone.|(% style="width:72px" %)(((
898 OK
899
900 )))
901 |(% style="width:156px" %)AT+SYNCMOD=1,8|(% style="width:284px" %)Enable Sync system time via LoRaWAN MAC Command (DeviceTimeReq) Set to East eight time zone.|(% style="width:72px" %)(((
902 OK
903
904 )))
905 |(% style="width:156px" %)AT+SYNCMOD=1,-12|(% style="width:284px" %)Enable Sync system time via LoRaWAN MAC Command (DeviceTimeReq) Set to West Twelve Time Zone.|(% style="width:72px" %)(((
906 OK
907 )))
908
909 (% style="color:blue" %)**Downlink Command:**
910
911 0x28 01  ~/~/ Same As AT+SYNCMOD=1
912
913 0x28 01 08  ~/~/ Same As AT+SYNCMOD=1,8
914
915 0x28 01 F4  ~/~/ Same As AT+SYNCMOD=1,-12
916
917 0x28 00  ~/~/ Same As AT+SYNCMOD=0
918
919
920 === 3.3.4 Alarm for continuously water flow ===
921
922
923 (((
924 This feature is to monitor and send Alarm for continuously water flow.
925 )))
926
927 (((
928 Example case is for Toilet water monitoring, if some one push toilet button, the toilet will have water flow. If the toilet button has broken and can't returned to original state, the water flow will keep for hours or days which cause huge waste for water.
929 )))
930
931 (((
932 To monitor this faulty and send alarm, there are two settings:
933 )))
934
935 * (((
936 (% style="color:blue" %)**Stop Duration: Unit: Second**
937 )))
938
939 (((
940 Default: 15s, If SW3L-LB/LS didn't see any water flow in 15s, SW3L-LB/LS will consider stop of water flow event.
941 )))
942
943 * (((
944 (% style="color:blue" %)**Alarm Timer: Units: Minute; Default 0 minutes (means Alarm disable)**
945 )))
946
947 (((
948 **Example:** 3 minutes, if SW3L-LB/LS detect a start of water flow event and didn't detect a stop event within Alarm timer, SW3L-LB/LS will send an Alarm to indicate a water flow abnormal alarm.
949 )))
950
951 (((
952 So for example, If we set stop duration=15s and Alarm Timer=3minutes. If the toilet water flow continuously for more than 3 minutes, Sensor will send an alarm (in Confirmed MODE) to platform.
953 )))
954
955 (((
956 (% style="color:red" %)**Note:** **After this alarm is send, sensor will consider a stop of water flow and count for another new event. So if water flow waste last for 1 hour, Sensor will keep sending alarm every 3 minutes.**
957 )))
958
959 (((
960 (% style="color:blue" %)**AT Command to configure:**
961 )))
962
963 * (((
964 AT+PTRIG=15,3  ~-~-> Set Stop duration: 15s, Alarm Timer: 3 minutes.
965 )))
966
967 * (((
968 AT+ PTRIG=15,0  ~-~-> Default Value, disable water waste Alarm.
969 )))
970
971 (((
972 (% style="color:blue" %)**Downlink Command to configure:** 
973 )))
974
975 (((
976 Command: **0xAA aa bb cc**
977 )))
978
979 (((
980 AA: Command Type Code
981 )))
982
983 (((
984 aa: Stop duration
985 )))
986
987 (((
988 bb cc: Alarm Timer
989 )))
990
991 (((
992 If user send 0xAA 0F 00 03: equal to AT+PTRIG=15,3
993 )))
994
995
996
997
998
999 === 3.3.5 Set the calculate flag ===
1000
1001
1002 Feature: Set the calculate flag
1003
1004 (% style="color:blue" %)**AT Command: AT+CALCFLAG**
1005
1006 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:461px" %)
1007 |=(% style="width: 158px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 193px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 110px;background-color:#4F81BD;color:white" %)**Response**
1008 |(% style="width:158px" %)AT+CALCFLAG =0|(% style="width:192px" %)Set the calculate flag to 1.|(% style="width:109px" %)OK
1009 |(% style="width:158px" %)AT+CALCFLAG =1|(% style="width:192px" %)Set the calculate flag to 2.|(% style="width:109px" %)OK
1010 |(% style="width:158px" %)AT+CALCFLAG =2|(% style="width:192px" %)Set the calculate flag to 3.|(% style="width:109px" %)OK
1011
1012 (% style="color:blue" %)**Downlink Command:**
1013
1014 * **Example**: 0XA501  ~/~/  Same as AT+CALCFLAG =1
1015
1016 === 3.3.6 Set count number ===
1017
1018
1019 Feature: Manually set the count number
1020
1021 (% style="color:blue" %)**AT Command: AT+SETCNT**
1022
1023 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:479px" %)
1024 |=(% style="width: 160px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 223px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 96px;background-color:#4F81BD;color:white" %)**Response**
1025 |(% style="width:160px" %)AT+ SETCNT =0|(% style="width:221px" %)Set the count number to 0.|(% style="width:95px" %)OK
1026 |(% style="width:160px" %)AT+ SETCNT =100|(% style="width:221px" %)Set the count number to 100.|(% style="width:95px" %)OK
1027
1028 (% style="color:blue" %)**Downlink Command: 0xA6**
1029
1030 Format: Command Code (0xA6) followed by 4 bytes.
1031
1032 * **Example**: 0xA600000001  ~/~/  Same as AT+ SETCNT =1
1033
1034 * **Example**: 0xA600000064  ~/~/  Same as AT+ SETCNT =100
1035
1036 === 3.3.7 Set count mode ===
1037
1038
1039 Feature: Manually set the count mode
1040
1041 (% style="color:blue" %)**AT Command: AT+MOD**
1042
1043 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:463px" %)
1044 |=(% style="width: 162px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 193px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 108px;background-color:#4F81BD;color:white" %)**Response**
1045 |(% style="width:162px" %)AT+MOD=0|(% style="width:191px" %)Accumulative (Default)|(% style="width:106px" %)OK
1046 |(% style="width:162px" %)AT+MOD=1|(% style="width:191px" %)Reset after uplink.|(% style="width:106px" %)OK
1047
1048 (% style="color:blue" %)**Downlink Command:**
1049
1050 * **Example: **0x0A00  ~/~/  Same as AT+MOD=0
1051
1052 * **Example:** 0x0A01  ~/~/  Same as AT+MOD=1
1053
1054 === 3.3.8 Clear Flash Record ===
1055
1056
1057 Feature: Clear flash storage for data log feature.
1058
1059 (% style="color:blue" %)**AT Command: AT+CLRDTA**
1060
1061 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %)
1062 |=(% style="width: 157px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 169px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 174px;background-color:#4F81BD;color:white" %)**Response**
1063 |(% style="width:157px" %)AT+CLRDTA|(% style="width:169px" %)Clear flash storage for data log feature.|Clear all stored sensor data… OK
1064
1065 = 4. Battery & Power Consumption =
1066
1067
1068 SW3L-LB use ER26500 + SPC1520 battery pack and SW3L-LS use 3000mAh Recharable Battery with Solar Panel. See below link for detail information about the battery info and how to replace.
1069
1070 [[**Battery Info & Power Consumption Analyze**>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
1071
1072
1073 = 5. OTA Firmware update =
1074
1075
1076 (% class="wikigeneratedid" %)
1077 User can change firmware SW3L-LB/LS to:
1078
1079 * Change Frequency band/ region.
1080
1081 * Update with new features.
1082
1083 * Fix bugs.
1084
1085 Firmware and changelog can be downloaded from : **[[Firmware download link>>https://www.dropbox.com/sh/qs74jsd0zecdk3q/AADHPJ4Sl6z980Cg-rCdzgeza?dl=0]]**
1086
1087 Methods to Update Firmware:
1088
1089 * (Recommanded way) OTA firmware update via wireless : **[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/]]**
1090
1091 * Update through UART TTL interface : **[[Instruction>>url:http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H1.LoRaSTv4baseHardware]]**.
1092
1093 = 6. FAQ =
1094
1095 == 6.1  AT Commands input doesn't work ==
1096
1097
1098 In the case if user can see the console output but can't type input to the device. Please check if you already include the (% style="color:green" %)**ENTER**(%%) while sending out the command. Some serial tool doesn't send (% style="color:green" %)**ENTER**(%%) while press the send key, user need to add ENTER in their string.
1099
1100
1101 == 6.2 Can I connect 3rd party flow sensor other than the default one? ==
1102
1103
1104 If a user wants to connect SW3L-LB to a 3rd party flow sensor such as a [[DN50 flow sensor>>url:https://valvesdirect.net/product/flow-sensor-2-inch-15-400lpm/]], that is possible. A flow sensor with pulse output is needed.
1105
1106 **Below is the notice for the connection:**
1107
1108 ~1. Connect the 3rd party flow meter to the pulse input and GND of SW3L-LB.
1109
1110 2. Make sure the pulse output voltage of 3rd party flow sensor is less than 5v.
1111
1112 3. It is not recommended to use SW3L-LB to power the external flow meter, unless you are sure the external flow sensor is low power ( several uA). Otherwise the battery of SW3L-LB will be running out soon.
1113
1114 4. After connection, user needs to set the [[Calculator Flag and change the payload>>path:#H2.3.3A0WaterFlowValue2CUplinkFPORT3D2]] so to get the correct reading in the platform.
1115
1116 **Connection:**
1117
1118 [[image:image-20240918172204-1.jpeg||height="503" width="776"]]
1119
1120
1121
1122 = 7. Order Info =
1123
1124
1125 **Part Number: (% style="color:blue" %)SW3L-LB-XXX-YYY  (%%)or (% style="color:blue" %)SW3L-LS-XX-YY(%%)**
1126
1127 (% style="color:red" %)**XX**(%%)**: The default frequency band**
1128
1129 * (% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band
1130
1131 * (% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band
1132
1133 * (% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band
1134
1135 * (% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band
1136
1137 * (% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band
1138
1139 * (% style="color:red" %)**US915**(%%): LoRaWAN US915 band
1140
1141 * (% style="color:red" %)**IN865**(%%): LoRaWAN IN865 band
1142
1143 * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
1144
1145 (((
1146 (% style="color:blue" %)**YY**(%%)**: Flow Sensor Model**
1147 )))
1148
1149 (((
1150 * **004:** DW-004 Flow Sensor: diameter: G1/2” / DN15.  450 pulse = 1 L
1151 )))
1152
1153 (((
1154 * **006:** DW-006 Flow Sensor: diameter: G3/4” / DN20. 390 pulse = 1 L
1155 )))
1156
1157 (((
1158 * **010:** DW-010 Flow Sensor: diameter: G 1” / DN25. 64 pulse = 1 L
1159 )))
1160
1161 (((
1162 * **020:** DW-020 Flow Sensor: diameter: G 2” / DN50.  12 pulse = 1 L
1163 )))
1164
1165
1166
1167
1168
1169 = 8. ​Packing Info =
1170
1171
1172 (% style="color:#037691" %)**Package Includes**:
1173
1174 * SW3L-LB or SW3L-LS LoRaWAN Flow Sensor
1175
1176 (% style="color:#037691" %)**Dimension and weight**:
1177
1178 * Device Size: cm
1179
1180 * Device Weight: g
1181
1182 * Package Size / pcs : cm
1183
1184 * Weight / pcs : g
1185
1186 = 9. Support =
1187
1188
1189 * 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.
1190
1191 * 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.cc>>mailto:Support@dragino.cc]].