Version 75.5 by Xiaoling on 2024/01/19 15:00

Show last authors
1
2
3 (% style="text-align:center" %)
4 [[image:image-20220519085532-1.png||_mstalt="431171" height="429" width="366"]]
5
6
7
8
9
10 **Table of Contents:**
11
12 {{toc/}}
13
14
15
16
17
18
19 = 1. Introduction =
20
21 == 1.1 What is SW3L LoRaWAN Flow Sensor ==
22
23
24 (((
25 The Dragino SW3L is a (% style="color:#037691" %)**LoRaWAN Flow Sensor**(%%). It detects water flow volume and uplink to IoT server via LoRaWAN network. User can use this to** (% style="color:#037691" %)monitor the water usage for buildings.(%%)**
26 )))
27
28 (((
29 SW3L is powered by (% style="color:#037691" %)**8500mAh Li-SOCI2 battery**(%%), It is designed for long term use up to 10 years. (Actually Battery life depends on the use environment, update period.)
30 )))
31
32 (((
33 The SW3L will send water flow volume every 20 minutes. It can also (% style="color:#037691" %)**detect the water flow status**(%%) and (% style="color:#037691" %)**send Alarm**(%%), to avoid the waste for water usage such as broken toilet case.
34 )))
35
36 (((
37 SW3L is designed for both indoor and outdoor use. It has a weatherproof enclosure and industrial level battery to work in low to high temperatures.
38 )))
39
40 (((
41 Each SW3L 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
42 )))
43
44 (((
45 *Battery life depends on how often to send data, please see battery analyzer.
46 )))
47
48
49 == 1.2 Features ==
50
51
52 * LoRaWAN v1.0.3 Class A protocol.
53 * Frequency Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865/RU864
54 * Upload water flow volume
55 * Monitor water waste
56 * 8500mAh industrial battery(none-rechargeable)
57 * AT Commands to change parameters
58 * Uplink on periodically and open/close event
59 * Datalog feature
60 * Remote configure parameters via LoRa Downlink
61 * Firmware upgradable via program port
62 * Wall Mountable
63 * Outdoor Use
64
65 == 1.3 Installation ==
66
67
68 Each SW3L package is shipped with a flow sensor. Install the flow sensor into water pipe with correct flow direction to start monitoring.
69
70
71 == 1.4 Storage & Operation Temperature ==
72
73
74 -40°C to +85°C
75
76
77 == 1.5 Applications ==
78
79
80 * Flow Sensor application
81 * Water Control
82 * Toilet Flow Sensor
83 * Monitor Waste water
84
85 == 1.6 Flow Sensor Spec ==
86
87
88 (((
89 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
90 |=(% style="width: 80px;background-color:#4F81BD;color:white" %)**Model**|=(% style="width: 80px;background-color:#4F81BD;color:white" %)**Probe**|=(% style="width: 80px;background-color:#4F81BD;color:white" %)**Diameter**|=(% style="width: 80px;background-color:#4F81BD;color:white" %)**Range**|=(% style="width: 80px;background-color:#4F81BD;color:white" %)**Max Pressure**|=(% style="width: 110px;background-color:#4F81BD;color:white" %)**Measure**
91 |(% style="width:88px" %)SW3L-004|(% style="width:75px" %)DW-004|(% style="width:107px" %)G1/2" /DN15|(% style="width:101px" %)1~~30L/min|(% style="width:116px" %)≤ 2.0Mpa|(% style="width:124px" %)450 pulse = 1 L
92 |(% style="width:88px" %)SW3L-006|(% style="width:75px" %)DW-006|(% style="width:107px" %)G3/4" /DN20|(% style="width:101px" %)1~~60L/min|(% style="width:116px" %)≤ 1.2Mpa|(% style="width:124px" %)390 pulse = 1 L
93 |(% style="width:88px" %)SW3L-010|(% style="width:75px" %)DW-010|(% style="width:107px" %)G 1" /DN25|(% style="width:101px" %)2~~100L/min|(% style="width:116px" %)≤ 2.0Mpa|(% style="width:124px" %)64 pulse = 1 L
94 |(% style="width:88px" %)SW3L-020|(% style="width:75px" %)DW-020|(% style="width:107px" %)G 2" /DN50|(% style="width:101px" %)10~~300L/min|(% style="width:116px" %)≤ 1.75Mpa|(% style="width:124px" %)12 pulse = 1 L
95
96
97 )))
98
99
100 == 1.7 Mechanical ==
101
102
103 [[image:1652922789057-479.png||_mstalt="299312"]]
104
105 [[image:1652922797548-885.png||_mstalt="300391"]]
106
107
108
109 **DW-004 Flow Sensor: diameter: G1/2” / DN15.  450 pulse = 1 L**
110
111 [[image:image-20220519091350-1.png||_mstalt="429611" height="385" width="722"]]
112
113
114
115 **006: DW-006 Flow Sensor: diameter: G3/4” / DN20.  390 pulse = 1 L**
116
117 [[image:image-20220519091423-2.png||_mstalt="5391646" height="258" width="723"]]
118
119
120
121 **010: DW-010 Flow Sensor: diameter: G 1” / DN25. 64 pulse = 1 L**
122
123 [[image:image-20220519091423-3.png||_mstalt="5391971" height="448" width="724"]]
124
125
126 **020: DW-020 Flow Sensor: diameter: G 2” / DN50. 12 pulse = 1 L**
127
128 [[image:image-20240118091715-1.png||height="209" width="447"]][[image:image-20240118091821-2.png]]
129
130
131 == 1.8 Pin Definitions and Switch ==
132
133
134 [[image:1652923899427-927.png||_mstalt="299377" height="372" width="723"]]
135
136
137 === 1.8.1 Pin Definition ===
138
139
140 SW3L is pre-configured to connect to two external wires. The other pins are not used. If user wants to know more about other pins, please refer to the user manual of LSN50v2 at:
141
142 [[https:~~/~~/www.dropbox.com/sh/djkxs7mr17y94mi/AABVlWbM9uzK9OA3mXyAT10Za?dl=0>>https://www.dropbox.com/sh/djkxs7mr17y94mi/AABVlWbM9uzK9OA3mXyAT10Za?dl=0]]
143
144 (% style="color:red" %)**Add PA11 digital input and PA12 digital input(Since firmware v1.2.0)**
145
146
147 === 1.8.2 Jumper JP2(Power ON/OFF) ===
148
149
150 Power on Device when putting this jumper.
151
152
153 === 1.8.3 BOOT MODE / SW1 ===
154
155
156 (((
157 1) ISP: upgrade mode, device won't have any signal in this mode. but ready for upgrade firmware. LED won't work. Firmware won't run. 
158 2) Flash: work mode, the device starts to work and send out console output for further debug
159 )))
160
161
162 === 1.8.4 Reset Button ===
163
164
165 Press to reboot the device.
166
167
168 === 1.8.5 LED ===
169
170
171 It will flash:
172 1)   Boot the device in flash mode
173 2)   Send an uplink packe
174
175
176 = 2. Operation Mode =
177
178 == 2.1 How it works? ==
179
180
181 Each SW3L is shipped with a worldwide unique set of OTAA keys. To use SW3L in a LoRaWAN network, user needs to input the OTAA keys in the LoRaWAN network server. So SW3L can join the LoRaWAN network and start to transmit sensor data.
182
183
184 == 2.2 Example to use for LoRaWAN network ==
185
186
187 This section shows an example of how to join the TTN V3 LoRaWAN IoT server. Usages with other LoRaWAN IoT servers are similar.
188
189
190 [[image:1652944563101-603.png||_mstalt="292279" height="321" width="729"]]
191
192
193 * In this use case, the SW3L is connected into water line to measure water flow and send the status to the LoRaWAN server. The SW3L will uplink different types of messages to the LoRaWAN server. See [[Uplink payload>>||anchor="H2.3UplinkPayload"]] for detail.
194
195 (((
196 Assume the DLOS8 is already set to connect to the [[TTN V3 network >>url:https://eu1.cloud.thethings.network]]. We need to add the SW3L device in TTN V3:
197
198
199 )))
200
201 (((
202 (% style="color:blue" %)**Step 1**(%%): Create a device in TTN V3 with the OTAA keys from SW3L.
203 )))
204
205 (((
206 Each SW3L is shipped with a sticker with the default device EUI as below:
207 )))
208
209 [[image:image-20230426085254-1.png||height="236" width="508"]]
210
211
212 Users can enter these keys in the LoRaWAN Server portal. Below is the TTN V3 screenshot:
213
214 Add APP EUI in the application.
215
216
217
218 [[image:image-20220519151704-1.png||_mstalt="429715"]]
219
220
221 [[image:image-20220519151704-2.png||_mstalt="430079" height="322" width="717"]]
222
223
224 [[image:image-20220519151704-3.png||_mstalt="430443"]]
225
226
227 [[image:image-20220519151704-4.png||_mstalt="430807"]]
228
229 Add APP KEY and DEV EUI
230
231
232
233 (% style="color:blue" %)**Step 2**(%%): Power on SW3L
234
235 [[image:image-20220519094347-1.png||_mstalt="432549" height="430" width="725"]]
236
237
238 (((
239 Put the jumper to power on SW3L and it will auto-join to the TTN V3 network. After join success, it will start to upload sensor data to TTN V3 and the user can see it in the panel.
240 )))
241
242 [[image:1652924675638-547.png||_mstalt="298363" height="254" width="732"]]
243
244
245 == 2.3 Uplink Payload ==
246
247
248 (((
249 Uplink payloads have two types:
250 )))
251
252 * (((
253 Open/Close Status: Use FPORT=2
254 )))
255 * (((
256 Other control commands: Use other FPORT fields.
257 )))
258
259 (((
260 The application server should parse the correct value based on FPORT settings.
261
262
263 )))
264
265 === 2.3.1 Device Status, FPORT~=5 ===
266
267
268 (((
269 (((
270 Include device configure status. Once SW3L Joined the network, it will uplink this message to the server. After that, SW3L will uplink Device Status every 12 hours.
271 )))
272 )))
273
274 (((
275 (((
276 Users can also use the downlink command(0x26 01) to ask SW3L to resend this uplink. This uplink payload also includes the DeviceTimeReq to get time.
277
278 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
279 |(% colspan="6" style="background-color:#4f81bd; color:white" %)**Device Status (FPORT=5)**
280 |(% style="width:103px" %)**Size (bytes)**|(% style="width:72px" %)**1**|**2**|(% style="width:91px" %)**1**|(% style="width:86px" %)**1**|(% style="width:44px" %)**2**
281 |(% 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
282 )))
283 )))
284
285
286 Example parse in TTNv3
287
288 [[image:1652925144491-755.png||_mstalt="296296" height="139" width="732"]]
289
290 * (% style="color:#037691" %)**Sensor Model**(%%): For SW3L, this value is 0x11
291
292 * (% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
293
294 * (% style="color:#037691" %)**Frequency Band**(%%):
295
296 *0x01: EU868
297
298 *0x02: US915
299
300 *0x03: IN865
301
302 *0x04: AU915
303
304 *0x05: KZ865
305
306 *0x06: RU864
307
308 *0x07: AS923
309
310 *0x08: AS923-1
311
312 *0x09: AS923-2
313
314 *0x0a: AS923-3
315
316 *0x0b: CN470
317
318 *0x0c: EU433
319
320 *0x0d: KR920
321
322 *0x0e: MA869
323
324 * (((
325 (% style="color:#037691" %)**Sub-Band**:
326
327 * AU915 and US915:value 0x00 ~~ 0x08
328 * CN470: value 0x0B ~~ 0x0C
329 * Other Bands: Always 0x00
330
331
332 )))
333
334 * (% style="color:#037691" %)**Battery Info:**
335
336 Check the battery voltage.
337
338 **Ex1**: 0x0B45 = 2885mV
339
340 **Ex2**: 0x0B49 = 2889mV
341
342
343 === 2.3.2 Sensor Configuration, FPORT~=4 ===
344
345
346 SW3L will only send this command after getting the downlink command (0x26 02) from the server.
347
348 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
349 |(% 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**
350 |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
351
352 * (% style="color:#037691" %)**TDC: (default: 0x0004B0)**
353
354 Uplink interval for the total pulse count, default value is 0x0004B0 which is 1200 seconds = 20 minutes.
355
356
357 * (% style="color:#037691" %)**STOP Duration & Alarm Timer**
358
359 Shows the configure value of [[Alarm for continuously water flow>>||anchor="H3.4Alarmforcontinuouslywaterflow"]]
360
361 [[image:image-20220519095747-2.png||_mstalt="434460" height="113" width="723"]]
362
363
364 === 2.3.3 Water Flow Value, Uplink FPORT~=2 ===
365
366
367 (((
368 SW3L will send this uplink **after** Device Status once join the LoRaWAN network successfully. And SW3L will:
369 )))
370
371 (((
372 periodically send this uplink every 20 minutes, this interval [[can be changed>>||anchor="H3.1SetTransmitIntervalTime"]].
373 )))
374
375 (((
376 Uplink Payload totals 11 bytes.
377 )))
378
379 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
380 |=(% colspan="6" style="width: 510px;background-color:#4F81BD;color:white" %)**Water Flow Value,  FPORT=2**
381 |(% style="width:60px" %)**Size(bytes)**|(% style="width:130px" %)**1**|(% style="width:130px" %)**4**|(% style="width:30px" %)**1**|(% style="width:50px" %)**1**|(% style="width:80px" %)**4**
382 |(% style="width:110px" %)Value|(% style="width:81px" %)Calculate Flag & [[Alarm>>||anchor="H3.4Alarmforcontinuouslywaterflow"]]|(% style="width:95px" %)(((
383 Total pulse Or Last Pulse
384 )))|(% style="width:55px" %)MOD|(% style="width:115px" %)Reserve(0x01)|(% style="width:129px" %)[[Unix TimeStamp>>||anchor="H2.4.1UnixTimeStamp"]]
385
386 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:470px" %)
387 |=(% colspan="4" style="width: 470px;background-color:#4F81BD;color:white" %)**Status & Alarm field**
388 |(% style="width:60px" %)**Size(bit)**|(% style="width:80px" %)**6**|(% style="width:310px" %)**1**|(% style="width:20px" %)**1**
389 |(% style="width:88px" %)Value|(% style="width:117px" %)Calculate Flag|(% style="width:221px" %)Alarm: 0: No Alarm; 1: Alarm|(% style="width:64px" %)N/A
390
391 [[image:image-20220519095946-3.png||_mstalt="435110" height="284" width="736"]]
392
393
394 * (((
395 (% style="color:#037691" %)**Calculate Flag**
396 )))
397
398 (((
399 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.
400 )))
401
402 (((
403 **Example: in the default payload:**
404 )))
405
406 (((
407 * calculate flag=0: for SW3L-004 Flow Sensor: 450 pulse = 1 L
408 * calculate flag=1: for SW3L-006 Flow Sensor: 390 pulse = 1 L
409 * calculate flag=2: for SW3L-010 Flow Sensor: 64 pulse = 1 L
410 * calculate flag=3: for SW3L-020 Flow Sensor: 12 pulse = 1 L
411 )))
412
413 (((
414 Default value: 0. 
415 )))
416
417 (((
418 Range (6 bits): (b)000000 ~~ (b) 111111
419
420 If user use with a meter for example is 0.02L/pulse. To proper decode the correct value in server,
421
422 1) User can set the Calculate Flag of this sensor to 3.
423
424 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.
425 )))
426
427 (((
428 (% 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.6Setthecalculateflag"]]
429
430
431 )))
432
433 * (((
434 (% style="color:#037691" %)**Alarm**
435 )))
436
437 (((
438 See [[Alarm for continuously water flow>>||anchor="H3.4Alarmforcontinuouslywaterflow"]]
439 )))
440
441 [[image:image-20220519095946-4.png||_mstalt="435474" height="65" width="724"]]
442
443
444 * (((
445 (% style="color:#037691" %)**Total pulse**
446 )))
447
448 (((
449 Total pulse/counting since factory
450 )))
451
452 (((
453 Range (4 Bytes) : 0x00000000~~ 0xFFFFFFFF .
454
455
456 )))
457
458 * (((
459 (% style="color:#037691" %)**Last Pulse**
460 )))
461
462 (((
463 Total pulse since last FPORT=2 uplink. (Default 20 minutes)
464 )))
465
466 (((
467 Range (4 Bytes) : 0x00000000~~ 0xFFFFFFFF .
468
469
470 )))
471
472 * (((
473 (% style="color:#037691" %)**MOD: Default =0**
474 )))
475
476 (((
477 MOD=0 ~-~-> Uplink Total Pulse since factory
478 )))
479
480 (((
481 MOD=1 ~-~-> Uplink total pulse since last FPORT=2 uplink.
482
483
484 )))
485
486 * (((
487 (% style="color:#037691" %)**Water Flow Value**
488
489
490
491 )))
492
493 (((
494 Total Water Flow Volume = (Calculate Flag) x (Total Pulse)=9597/450=21.3L
495
496
497 )))
498
499 [[image:image-20220519095946-5.png||_mstalt="435838" height="50" width="727"]]
500
501
502
503 (((
504 Total Water Flow for TDC timer = (Calculate Flag) x (Last Pulse)=79/450=0.2L
505
506
507 )))
508
509 [[image:image-20220519095946-6.png||_mstalt="436202" height="43" width="733"]] ** **
510
511
512 === 2.3.4 Historical Water Flow Status, FPORT~=3 ===
513
514
515 (((
516 SW3L stores sensor values and users can retrieve these history values via the [[downlink command>>||anchor="H2.4DatalogFeature"]].
517 )))
518
519 (((
520 The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time water flow status.
521 )))
522
523 * (((
524 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.
525 )))
526
527 (((
528 For example, in the US915 band, the max payload for different DR is:
529 )))
530
531 (((
532 **a) DR0:** max is 11 bytes so one entry of data
533 )))
534
535 (((
536 **b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
537 )))
538
539 (((
540 **c) DR2:** total payload includes 11 entries of data
541 )))
542
543 (((
544 **d) DR3:** total payload includes 22 entries of data.
545 )))
546
547 (((
548 If SW3L doesn't have any data in the polling time. It will uplink 11 bytes of 0
549
550
551 )))
552
553 (((
554 (% style="color:#037691" %)**Downlink:**
555 )))
556
557 (((
558 0x31 62 46 B1 F0 62 46 B3 94 07
559 )))
560
561 [[image:1652926690850-712.png||_mstalt="295178" height="115" width="726"]]
562
563
564 (((
565 (% style="color:#037691" %)**Uplink:**
566 )))
567
568 (((
569 00 00 01 00 00 00 00 62 46 B2 26 00 00 01 00 00 00 00 62 46 B2 5D 00 00 01 00 00 00 00 62 46 B2 99 00 00 01 00 00 00 00 62 46 B2 D5 00 00 01 00 00 01 15 62 46 B3 11 00 00 01 00 00 01 1F 62 46 B3 7E
570
571
572 )))
573
574 (((
575 (% style="color:#037691" %)**Parsed Value:**
576 )))
577
578 (((
579 [Alarm, Calculate Flag, MOD, Total pulse or Last Pulse,** **Water Flow Value, TIME]
580 )))
581
582 (((
583
584 )))
585
586 (((
587 [FALSE,0,0,0,0.0,2022-04-01 08:04:54],
588 )))
589
590 (((
591 [FALSE,0,0,0,0.0,2022-04-01 08:05:49],
592 )))
593
594 (((
595 [FALSE,0,0,0,0.0,2022-04-01 08:06:49],
596 )))
597
598 (((
599 [FALSE,0,0,0,0.0,2022-04-01 08:07:49],
600 )))
601
602 (((
603 [FALSE,0,0,277,0.6,2022-04-01 08:08:49],
604 )))
605
606 (((
607 [FALSE,0,0,287,0.6,2022-04-01 08:10:38],
608
609
610 )))
611
612 [[image:1652926777796-267.png||_mstalt="300183" height="279" width="724"]]
613
614
615 == 2.4 Datalog Feature ==
616
617
618 When a user wants to retrieve sensor value, he can send a poll command from the IoT platform to ask the sensor to send value in the required time slot.
619
620
621 === 2.4.1 Unix TimeStamp ===
622
623
624 SW3L uses Unix TimeStamp format based on
625
626 [[image:1652926852443-847.png||_mstalt="297427" height="112" width="724"]]
627
628 Users can get this time from the link:  [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] :
629
630 Below is the converter example
631
632 [[image:1652926913271-611.png||_mstalt="293605" height="421" width="720"]]
633
634
635 === 2.4.2 Set Device Time ===
636
637
638 (% style="color:#4f81bd" %)**Through LoRaWAN MAC Command**
639
640 (((
641 Once SW3L Joined the LoRaWAN network, it will send the MAC command (DeviceTimeReq) and the server will reply with (DeviceTimeAns) to send the current time to SW3L. If SW3L fails to get the time from the server, SW3L will use the internal time and wait for the next time request ~[[[via Device Status (FPORT=5)>>||anchor="H2.3.1DeviceStatus2CFPORT3D5"]]].
642
643
644 )))
645
646 (((
647 (% style="color:red" %)**Note: LoRaWAN Server needs to support LoRaWAN v1.0.3(MAC v1.0.3) or higher to support this MAC command feature.**
648
649
650 )))
651
652 === 2.4.3 Poll sensor value ===
653
654
655 Users can poll sensor values based on timestamps. Below is the downlink command.
656
657 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:459px" %)
658 |=(% colspan="4" style="width: 456px;background-color:#4F81BD;color:white" %)**Downlink Command to poll Open/Close status (0x31)**
659 |(% style="width:62px" %)**1byte**|(% style="width:137px" %)**4bytes**|(% style="width:136px" %)**4bytes**|(% style="width:120px" %)**1byte**
660 |(% style="width:62px" %)31|(% style="width:137px" %)Timestamp start|(% style="width:136px" %)Timestamp end|(% style="width:120px" %)Uplink Interval
661
662 (((
663 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.
664 )))
665
666 (((
667 For example, downlink command[[image:image-20220519152849-5.png||_mstalt="434772"]]
668 )))
669
670 (((
671 Is to check 2021/11/12 12:00:00 to 2021/11/12 15:00:00's data
672 )))
673
674 (((
675 Uplink Internal =5s,means CPL01 will send one packet every 5s. range 5~~255s.
676
677
678 )))
679
680 === 2.4.4 Decoder in TTN V3 ===
681
682
683 [[image:1652927365661-475.png||_mstalt="297089" height="359" width="723"]]
684
685 Please check the decoder from this link:  [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]]
686
687
688 == 2.5 Show data on Datacake ==
689
690
691 (((
692 Datacake IoT platform provides a human-friendly interface to show the sensor data, once we have sensor data in TTN V3, we can use Datacake to connect to TTN V3 and see the data in Datacake. Below are the steps:
693 )))
694
695 (((
696 (% style="color:blue" %)**Step 1**(%%): Link TTNv3 to Datacake [[https:~~/~~/docs.datacake.de/lorawan/lns/thethingsindustries#create-integration-on-tti>>url:https://docs.datacake.de/lorawan/lns/thethingsindustries#create-integration-on-tti]]
697 )))
698
699 (((
700 (% style="color:blue" %)**Step 2**(%%): Configure SW3L in Datacake  ​​​​
701
702
703 )))
704
705 [[image:image-20220519103234-7.png||_mstalt="430482" height="562" width="492"]]
706
707
708 [[image:image-20220519103234-8.png||_mstalt="430846" height="550" width="549"]]
709
710
711 [[image:image-20220519103234-9.png||_mstalt="431210" height="493" width="666"]]
712
713
714 [[image:image-20220519103234-10.png||_mstalt="451217" height="234" width="724"]]
715
716
717 [[image:image-20220519103234-11.png||_mstalt="451594" height="386" width="727"]]
718
719
720 [[image:image-20220519103234-12.png||_mstalt="451971" height="262" width="728"]]
721
722
723 [[image:image-20220519103234-13.png||_mstalt="452348" height="216" width="727"]]
724
725
726 [[image:image-20220519103234-14.png||_mstalt="452725" height="464" width="722"]]
727
728
729 [[image:image-20220519103234-15.png||_mstalt="453102" height="488" width="725"]]
730
731
732 [[image:image-20220519103234-16.png||_mstalt="453479" height="407" width="722"]]
733
734
735 = 3. Configure SW3L via AT Command or LoRaWAN Downlink =
736
737
738 Use can configure SW3L via AT Command or LoRaWAN Downlink.
739
740 * AT Command Connection: See [[FAQ>>||anchor="H5.FAQ"]].
741 * LoRaWAN Downlink instruction for different platforms: [[IoT LoRaWAN Server>>doc:Main.WebHome]]
742
743 There are two kinds of commands to configure SW3L, they are:
744
745
746 * (% style="color:#4f81bd" %)**General Commands**.
747
748 These commands are to configure:
749
750 * General system settings like uplink interval.
751 * LoRaWAN protocol & radio related command.
752
753 They are the same for all Dragino Devices which support DLWS-005 LoRaWAN Stack(Note~*~*). These commands can be found on the wiki: [[End Device AT Commands and Downlink Command>>doc:Main.End Device AT Commands and Downlink Command.WebHome]]
754
755
756 * (% style="color:#4f81bd" %)**Commands special design for SW3L**
757
758 These commands are only valid for SW3L, as below:
759
760
761 == 3.1 Set Transmit Interval Time ==
762
763
764 Feature: Change LoRaWAN End Node Transmit Interval.
765
766
767 (% style="color:#4f81bd" %)**AT Command: AT+TDC**
768
769 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
770 |=(% style="width: 160px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 140px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 210px;background-color:#4F81BD;color:white" %)**Response**
771 |(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|(((
772 30000
773 OK
774 the interval is 30000ms = 30s
775 )))
776 |(% style="width:156px" %)AT+TDC=60000|(% style="width:137px" %)Set Transmit Interval|(((
777 OK
778 Set transmit interval to 60000ms = 60 seconds
779 )))
780
781 (% style="color:#4f81bd" %)**Downlink Command: 0x01**
782
783 Format: Command Code (0x01) followed by 3 bytes time value.
784
785 If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01.
786
787 * **Example 1**: Downlink Payload: 0100001E  ~/~/  Set Transmit Interval (TDC) = 30 seconds
788 * **Example 2**: Downlink Payload: 0100003C  ~/~/  Set Transmit Interval (TDC) = 60 seconds
789
790 == 3.2 Set Password ==
791
792
793 Feature: Set device password, max 9 digits
794
795
796 (% style="color:#4f81bd" %)**AT Command: AT+PWORD**
797
798 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:405px" %)
799 |=(% style="width: 170px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 124px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 110px;background-color:#4F81BD;color:white" %)**Response**
800 |(% style="width:170px" %)(((
801 AT+PWORD=?
802 )))|(% style="width:123px" %)(((
803 Show password
804 )))|(% style="width:109px" %)(((
805 (((
806 123456
807 )))
808
809 (((
810 OK
811 )))
812 )))
813 |(% style="width:170px" %)(((
814 AT+PWORD=999999
815 )))|(% style="width:123px" %)(((
816 Set password
817 )))|(% style="width:109px" %)(((
818 OK
819 )))
820
821 (% style="color:#4f81bd" %)**Downlink Command:**
822
823 No downlink command for this feature.
824
825
826 == 3.3 Quit AT Command ==
827
828
829 (((
830 Feature: Quit AT Command mode, so user needs to input the password again before using AT Commands.
831 (% style="color:#4f81bd" %)**AT Command: AT+DISAT**
832 )))
833
834 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:452px" %)
835 |=(% style="width: 155px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 198px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 99px;background-color:#4F81BD;color:white" %)**Response**
836 |(% style="width:155px" %)AT+DISAT|(% style="width:198px" %)Quit AT Commands mode|(% style="width:96px" %)OK
837
838 (% style="color:#4f81bd" %)**Downlink Command:**
839
840 No downlink command for this feature.
841
842
843 == 3.4 Alarm for continuously water flow ==
844
845
846 (((
847 This feature is to monitor and send Alarm for continuously water flow.
848 )))
849
850 (((
851 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.
852 )))
853
854 (((
855 To monitor this faulty and send alarm, there are two settings:
856 )))
857
858 * (((
859 (% style="color:#4f81bd" %)**Stop Duration: Unit: Second**
860 )))
861
862 (((
863 Default: 15s, If SW3L didn't see any water flow in 15s, SW3L will consider stop of water flow event.
864 )))
865
866 * (((
867 (% style="color:#4f81bd" %)**Alarm Timer: Units: Minute; Default 0 minutes (means Alarm disable)**
868 )))
869
870 (((
871
872
873 **Example:** 3 minutes, if SW3L detect a start of water flow event and didn't detect a stop event within Alarm timer, SW3L will send an Alarm to indicate a water flow abnormal alarm.
874 )))
875
876 (((
877 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.
878 )))
879
880 (((
881 (% 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.**
882
883
884 )))
885
886 (((
887 (% style="color:#4f81bd" %)**AT Command**(%%) to configure:
888 )))
889
890 * (((
891 AT+PTRIG=15,3  ~-~-> Set Stop duration: 15s, Alarm Timer: 3 minutes.
892 )))
893 * (((
894 AT+ PTRIG=15,0  ~-~-> Default Value, disable water waste Alarm.
895 )))
896
897 (((
898
899
900 (% style="color:#4f81bd" %)**Downlink Command**(%%) to configure: 
901 )))
902
903 (((
904 Command: **0xAA aa bb cc**
905 )))
906
907 (((
908 AA: Command Type Code
909 )))
910
911 (((
912 aa: Stop duration
913 )))
914
915 (((
916 bb cc: Alarm Timer
917 )))
918
919 (((
920 If user send 0xAA 0F 00 03: equal to AT+PTRIG=15,3
921 )))
922
923
924 == 3.5 Clear Flash Record ==
925
926
927 Feature: Clear flash storage for data log feature.
928
929
930 (% style="color:#4f81bd" %)**AT Command: AT+CLRDTA**
931
932 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
933 |=(% style="width: 156px; background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 177px; background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 177px; background-color:#4F81BD;color:white" %)**Response**
934 |(% style="width:154px" %)AT+CLRDTA|(% style="width:177px" %)Clear flash storage for data log feature.|(% style="width:177px" %)Clear all stored sensor data... OK
935
936 (% style="color:#4f81bd" %)**Downlink Command:**
937
938 * **Example**: 0xA301  ~/~/  Same as AT+CLRDTA
939
940 == 3.6 Set the calculate flag ==
941
942
943 Feature: Set the calculate flag
944
945
946 (% style="color:#4f81bd" %)**AT Command: AT+CALCFLAG**
947
948 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:462px" %)
949 |=(% style="width: 161px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 204px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 97px;background-color:#4F81BD;color:white" %)**Response**
950 |(% style="width:161px" %)AT+CALCFLAG=1|(% style="width:202px" %)Set the calculate flag to 1.|(% style="width:95px" %)OK
951 |(% style="width:161px" %)AT+CALCFLAG=2|(% style="width:202px" %)Set the calculate flag to 2.|(% style="width:95px" %)OK
952
953 (% style="color:#4f81bd" %)**Downlink Command:**
954
955 * **Example**: 0XA501  ~/~/  Same as AT+CALCFLAG=1
956
957 == 3.7 Set count number ==
958
959
960 Feature: Manually set the count number
961
962
963 (% style="color:#4f81bd" %)**AT Command: AT+SETCNT**
964
965 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:481px" %)
966 |=(% style="width: 162px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 224px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 95px;background-color:#4F81BD;color:white" %)**Response**
967 |(% style="width:162px" %)AT+SETCNT=0|(% style="width:222px" %)Set the count number to 0.|(% style="width:93px" %)OK
968 |(% style="width:162px" %)AT+SETCNT=100|(% style="width:222px" %)Set the count number to 100.|(% style="width:93px" %)OK
969
970 (% style="color:#4f81bd" %)**Downlink Command:**
971
972 * **Example**: 0xA600000001  ~/~/  Same as AT+SETCNT=1
973 * **Example**: 0xA600000064  ~/~/  Same as AT+SETCNT=100
974
975 == 3.8 Set work mode ==
976
977
978 Feature: Manually set the work mode
979
980
981 (% style="color:#4f81bd" %)**AT Command: AT+MOD**
982
983 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:463px" %)
984 |=(% 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**
985 |(% style="width:162px" %)AT+MOD=0|(% style="width:191px" %)Set the work mode to 0.|(% style="width:106px" %)OK
986 |(% style="width:162px" %)AT+MOD=1|(% style="width:191px" %)Set the work mode to 1|(% style="width:106px" %)OK
987
988 (% style="color:#4f81bd" %)**Downlink Command:**
989
990 * **Example: **0x0A00  ~/~/  Same as AT+MOD=0
991 * **Example:** 0x0A01  ~/~/  Same as AT+MOD=1
992
993 = 4. Battery & Power Consumption =
994
995
996 SW3L uses ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
997
998 [[**Battery Info & Power Consumption Analyze**>>url:http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
999
1000
1001 = 5. FAQ =
1002
1003 == 5.1 How to use AT Command to configure SW3 ==
1004
1005
1006 SW3L UART connection photo
1007
1008 [[image:1652943554687-149.png||_mstalt="298155" height="354" width="724"]]
1009
1010
1011 (((
1012 In the PC, you need to set the serial baud rate to (% style="color:green" %)**9600**(%%) to access the serial console for LSN50. LSN50 will output system info once power on as below:
1013 )))
1014
1015 [[image:1652943563580-704.png||_mstalt="295191" height="504" width="720"]]
1016
1017
1018 == 5.2 How to upgrade the firmware? ==
1019
1020
1021 (((
1022 A new firmware might be available for:
1023 )))
1024
1025 * (((
1026 Support new features
1027 )))
1028 * (((
1029 For bug fix
1030 )))
1031 * (((
1032 Change LoRaWAN bands.
1033 )))
1034
1035 (((
1036 Instruction for how to upgrade: [[Firmware Upgrade Instruction>>doc:Main.Firmware Upgrade Instruction for STM32 base products.WebHome||anchor="H2.HardwareUpgradeMethodSupportList" _mstmutation="1"]]
1037 )))
1038
1039 (((
1040 Firmware location:  [[https:~~/~~/www.dropbox.com/sh/jktldt8q674i87l/AADqk1zoUEekCjDR_4ic2Tg0a?dl=0>>https://www.dropbox.com/sh/jktldt8q674i87l/AADqk1zoUEekCjDR_4ic2Tg0a?dl=0]]
1041 )))
1042
1043
1044 == 5.3 How to change the LoRa Frequency Bands/Region? ==
1045
1046
1047 Users can follow the introduction for how to upgrade images. When downloading the images, choose the required image file for download.
1048
1049
1050 == 5.4 Can I connect 3rd party flow sensor other than the default one? ==
1051
1052
1053 If a user wants to connect SW3L to a 3rd party flow sensor such as a [[DN50 flow sensor>>https://valvesdirect.net/product/flow-sensor-2-inch-15-400lpm/]], that is possible. A flow sensor with pulse output is needed.
1054
1055 (% style="background-color:yellow" %)**Below is the notice for the connection:**
1056
1057 ~1. Connect the 3rd party flow meter to the pulse input and GND of SW3L.
1058
1059 2. Make sure the pulse output voltage of 3rd party flow sensor is less than 5v.
1060
1061 3. It is not recommended to use SW3L to power the external flow meter, unless you are sure the external flow sensor is low power ( several uA). Otherwise the battery of SW3L will be running out soon.
1062
1063 4. After connection, user needs to set the [[Calculator Flag and change the payload>>||anchor="H2.3.3A0WaterFlowValue2CUplinkFPORT3D2"]] so to get the correct reading in the platform.
1064
1065
1066 [[image:image-20220614233814-2.png||_mstalt="429949" height="280" width="383"]]
1067
1068
1069 = 6. Order Info =
1070
1071
1072 Part Number: (% style="color:#4f81bd" %)**SW3L-XXX-YYY**
1073
1074 (% style="color:#4f81bd" %)**XXX**(%%): The default frequency band
1075
1076 * (% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band
1077 * (% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band
1078 * (% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band
1079 * (% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band
1080 * (% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band
1081 * (% style="color:red" %)**US915**(%%): LoRaWAN US915 band
1082 * (% style="color:red" %)**IN865**(%%): LoRaWAN IN865 band
1083 * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
1084
1085 (((
1086 (% style="color:#4f81bd" %)**YYY**(%%): Flow Sensor Model:
1087 )))
1088
1089 * 004: DW-004 Flow Sensor: diameter: G1/2” / DN15.  450 pulse = 1 L
1090 * 006: DW-006 Flow Sensor: diameter: G3/4” / DN20. 390 pulse = 1 L
1091 * 010: DW-010 Flow Sensor: diameter: G 1” / DN25. 64 pulse = 1 L
1092 * 020: DW-020 Flow Sensor: diameter: G 2” / DN50. 12 pulse = 1 L
1093
1094 = 7. Packing Info =
1095
1096
1097 **Package Includes**:
1098
1099 * SW3L Water Flow Sensor x 1
1100
1101 = 8. Support =
1102
1103
1104 * (((
1105 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.
1106 )))
1107 * (((
1108 Provide as much information as possible regarding your inquiry (product models, accurately describe your problem and steps to replicate it etc) and send a mail to [[support@dragino.com>>url:file:///D:/市场资料/说明书/LoRa/LT系列/support@dragino.com]].
1109
1110
1111
1112
1113 )))