Version 101.11 by Xiaoling on 2023/10/10 14:02

Show last authors
1 (% style="text-align:center" %)
2 [[image:image-20231010090810-1.png||height="518" width="839"]]
3
4
5
6
7
8
9
10
11 **Table of Contents:**
12
13 {{toc/}}
14
15
16
17
18
19
20 = 1. Introduction =
21
22 == 1.1 What is SW3L-NB NB-IoT Flow Sensor ==
23
24
25 The Dragino SW3L-NB is a (% style="color:blue" %)**NB-IoT Flow Sensor**(%%). It detects water flow volume and uplink to IoT server via NB-IoT network. User can use this to (% style="color:blue" %)**monitor the water usage for buildings**.
26
27 The SW3L-NB will send water flow volume every 20 minutes. It can also detect the (% style="color:blue" %)**water flow status and send Alarm**(%%), to avoid the waste for water usage such as broken toilet case.
28
29 SW3L-NB is designed for both indoor and outdoor use. It has a weatherproof enclosure and industrial level battery to (% style="color:blue" %)**work in low to high temperatures**.
30
31 SW3L-NB supports different uplink methods including (% style="color:blue" %)**MQTT, MQTTs, UDP & TCP**(%%) for different application requirement, and support uplinks to various IoT Servers.
32
33 SW3L-NB (% style="color:blue" %)**supports BLE configure **(%%)and(% style="color:blue" %)** OTA update**(%%) which make user easy to use.
34
35 SW3L-NB is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long-term use up to several years.
36
37 SW3L-NB has optional built-in SIM card and default IoT server connection version. Which makes it works with simple configuration.
38
39 [[image:image-20231010091546-2.png||height="348" width="909"]]
40
41
42 == 1.2 ​Features ==
43
44
45 * NB-IoT Bands: B1/B2/B3/B4/B5/B8/B12/B13/B17/B18/B19/B20/B25/B28/B66/B70/B85 @H-FDD
46 * Ultra-low power consumption
47 * Upload water flow volume
48 * Monitor water waste
49 * Multiply Sampling and one uplink
50 * Support Bluetooth v5.1 remote configure and update firmware
51 * Uplink on periodically
52 * Downlink to change configure
53 * 8500mAh Battery for long term use
54 * Nano SIM card slot for NB-IoT SIM
55
56 == 1.3 Specification ==
57
58
59 (% style="color:blue" %)**Common DC Characteristics:**
60
61 * Supply Voltage: 2.5v ~~ 3.6v
62 * Operating Temperature: -40 ~~ 85°C
63
64 (% style="color:blue" %)**NB-IoT Spec:**
65
66 (% style="color:#037691" %)**NB-IoT Module: BC660K-GL**
67
68 (% style="color:#037691" %)**Support Bands:**
69
70 * B1 @H-FDD: 2100MHz
71 * B2 @H-FDD: 1900MHz
72 * B3 @H-FDD: 1800MHz
73 * B4 @H-FDD: 2100MHz
74 * B5 @H-FDD: 860MHz
75 * B8 @H-FDD: 900MHz
76 * B12 @H-FDD: 720MHz
77 * B13 @H-FDD: 740MHz
78 * B17 @H-FDD: 730MHz
79 * B18 @H-FDD: 870MHz
80 * B19 @H-FDD: 870MHz
81 * B20 @H-FDD: 790MHz
82 * B25 @H-FDD: 1900MHz
83 * B28 @H-FDD: 750MHz
84 * B66 @H-FDD: 2000MHz
85 * B70 @H-FDD: 2000MHz
86 * B85 @H-FDD: 700MHz
87
88 (% style="color:blue" %)**Battery:**
89
90 * Li/SOCI2 un-chargeable battery
91 * Capacity: 8500mAh
92 * Self Discharge: <1% / Year @ 25°C
93 * Max continuously current: 130mA
94 * Max boost current: 2A, 1 second
95
96 (% style="color:blue" %)**Power Consumption**
97
98 * STOP Mode: 10uA @ 3.3v
99 * Max transmit power: 350mA@3.3v
100
101 (% class="wikigeneratedid" id="H1.4Ratedenvironmentalconditions" %)
102 (% style="display:none" %) (%%)
103
104 == 1.4 Flow Sensor Spec ==
105
106
107 (((
108 (% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %)
109 |=(% style="width: 80px;background-color:#D9E2F3;color:#0070C0" %)**Model**|=(% style="width: 80px;background-color:#D9E2F3;color:#0070C0" %)**Probe**|=(% style="width: 80px;background-color:#D9E2F3;color:#0070C0" %)**Diameter**|=(% style="width: 80px;background-color:#D9E2F3;color:#0070C0" %)**Range**|=(% style="width: 80px;background-color:#D9E2F3;color:#0070C0" %)**Max Pressure**|=(% style="width: 110px;background-color:#D9E2F3;color:#0070C0" %)**Measure**
110 |(% 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
111 |(% 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
112 |(% 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
113 )))
114
115
116 == 1.5 Applications ==
117
118
119 * Flow Sensor application
120 * Water Control
121 * Toilet Flow Sensor
122 * Monitor Waste water
123
124 == 1.6 Sleep mode and working mode ==
125
126
127 (% style="color:blue" %)**Deep Sleep Mode: **(%%)Sensor doesn't have any NB-IoT activate. This mode is used for storage and shipping to save battery life.
128
129 (% style="color:blue" %)**Working Mode:** (%%)In this mode, Sensor will work as NB-IoT Sensor to Join NB-IoT 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.
130
131
132 == 1.7 Button & LEDs ==
133
134
135 [[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675071855856-879.png]]
136
137
138 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
139 |=(% style="width: 167px;background-color:#4F81BD;color:white" %)**Behavior on ACT**|=(% style="width: 117px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width:225px;background-color:#4F81BD;color:white" %)**Action**
140 |(% style="width:167px" %)Pressing ACT between 1s < time < 3s|(% style="width:117px" %)Send an uplink|(% style="width:225px" %)(((
141 If sensor has already attached to NB-IoT network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once.
142 Meanwhile, BLE module will be active and user can connect via BLE to configure device.
143 )))
144 |(% style="width:167px" %)Pressing ACT for more than 3s|(% style="width:117px" %)Active Device|(% style="width:225px" %)(((
145 (% 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 attach NB-IoT network.
146 (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.
147 Once sensor is active, BLE module will be active and user can connect via BLE to configure device, no matter if device attach NB-IoT network or not.
148 )))
149 |(% style="width:167px" %)Fast press ACT 5 times.|(% 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.
150
151 == 1.8 BLE connection ==
152
153
154 SW3L-NB support BLE remote configure and firmware update.
155
156
157 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:
158
159 * Press button to send an uplink
160 * Press button to active device.
161 * Device Power on or reset.
162
163 If there is no activity connection on BLE in 60 seconds, sensor will shut down BLE module to enter low power mode.
164
165
166 == 1.9 Pin Definitions & Switch ==
167
168
169 [[image:image-20230819104805-5.png]]
170
171
172 === 1.10.1 Jumper JP2 ===
173
174
175 Power on Device when put this jumper.
176
177
178 === 1.10.2 BOOT MODE / SW1 ===
179
180
181 **1)** (% style="color:blue" %)**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.
182
183 **2)** (% style="color:blue" %)**Flash**(%%): work mode, device starts to work and send out console output for further debug
184
185
186 === 1.10.3 Reset Button ===
187
188
189 Press to reboot the device.
190
191 (% style="display:none" %)
192
193
194 == 1.11 Mechanical ==
195
196 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual/WebHome/1675143884058-338.png?rev=1.1||alt="1675143884058-338.png"]]
197
198 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual/WebHome/1675143899218-599.png?rev=1.1||alt="1675143899218-599.png"]]
199
200 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual/WebHome/1675143909447-639.png?rev=1.1||alt="1675143909447-639.png"]]
201
202
203
204 **Probe Mechanical:**
205
206
207 (% style="color:blue" %)**DW-004 Flow Sensor: diameter: G1/2” / DN15.  450 pulse = 1 L**
208
209 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/SW3L%20LoRaWAN%20Outdoor%20Flow%20Sensor/WebHome/image-20220519091350-1.png?width=722&height=385&rev=1.1||alt="image-20220519091350-1.png"]]
210
211
212 (% style="color:blue" %)**006: DW-006 Flow Sensor: diameter: G3/4” / DN20.  390 pulse = 1 L**
213
214 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/SW3L%20LoRaWAN%20Outdoor%20Flow%20Sensor/WebHome/image-20220519091423-2.png?width=723&height=258&rev=1.1||alt="image-20220519091423-2.png"]]
215
216
217 (% style="color:blue" %)**010: DW-010 Flow Sensor: diameter: G 1” / DN25. 64 pulse = 1 L**
218
219 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/SW3L%20LoRaWAN%20Outdoor%20Flow%20Sensor/WebHome/image-20220519091423-3.png?width=724&height=448&rev=1.1||alt="image-20220519091423-3.png"]]
220
221
222 = 2. Use SW3L-NB to communicate with IoT Server =
223
224 == 2.1 Send data to IoT server via NB-IoT network ==
225
226
227 The SW3L-NB is equipped with a NB-IoT module, the pre-loaded firmware in SW3L-NB will get environment data from sensors and send the value to local NB-IoT network via the NB-IoT module.  The NB-IoT network will forward this value to IoT server via the protocol defined by SW3L-NB.
228
229
230 Below shows the network structure:
231
232 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/SW3L-NB_NB-IoT_Flow_Sensor_User_Manual/WebHome/image-20231010091546-2.png?width=909&height=348&rev=1.1||alt="image-20231010091546-2.png"]]
233
234
235 There are two version: (% style="color:blue" %)**-GE**(%%) and (% style="color:blue" %)**-1D**(%%) version of SW3L-NB.
236
237
238 (% style="color:blue" %)**GE Version**(%%): This version doesn't include SIM card or point to any IoT server. User needs to use AT Commands to configure below two steps to set SW3L-NB send data to IoT server.
239
240 * Install NB-IoT SIM card and configure APN. See instruction of [[Attach Network>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H2.AttachNetwork]].
241
242 * Set up sensor to point to IoT Server. See instruction of [[Configure to Connect Different Servers>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.Configuretoconnecttodifferentservers]]. 
243
244 Below shows result of different server as a glance.
245
246 (% border="1" cellspacing="4" style="width:515px" %)
247 |(% style="background-color:#4f81bd; color:white; width:100px" %)**Servers**|(% style="background-color:#4f81bd; color:white; width:300px" %)**Dash Board**|(% style="background-color:#4f81bd; color:white; width:115px" %)**Comments**
248 |(% style="width:127px" %)[[Node-Red>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.5A0Node-RedA028viaA0MQTT29]]|(% style="width:385px" %)(((
249 (% style="text-align:center" %)
250 [[image:image-20230819113244-8.png||height="183" width="367"]]
251 )))|(% style="width:170px" %)
252 |(% style="width:127px" %)[[DataCake>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.4Datacake]]|(% style="width:385px" %)(((
253 (% style="text-align:center" %)
254 [[image:image-20230819113244-9.png||height="119" width="367"]]
255 )))|(% style="width:170px" %)
256 |(% style="width:127px" %)[[Tago.IO>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.7A0Tago.ioA028viaA0MQTT29]]|(% style="width:385px" %) |(% style="width:170px" %)
257 |(% style="width:127px" %)[[General UDP>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.1GeneralA0UDPA0Connection]]|(% style="width:385px" %)Raw Payload. Need Developer to design Dash Board|(% style="width:170px" %)
258 |(% style="width:127px" %)[[General MQTT>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.2GeneralA0MQTTA0Connection]]|(% style="width:385px" %)Raw Payload. Need Developer to design Dash Board|(% style="width:170px" %)
259 |(% style="width:127px" %)[[ThingSpeak>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.3A0ThingSpeakA028viaA0MQTT29]]|(% style="width:385px" %)(((
260 (% style="text-align:center" %)
261 [[image:image-20230819113244-10.png||height="104" width="367"]]
262 )))|(% style="width:170px" %)
263 |(% style="width:127px" %)[[ThingsBoard>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.6A0ThingsBoard.CloudA028viaA0MQTT29]]|(% style="width:385px" %)(((
264 (% style="text-align:center" %)
265 [[image:image-20230819113244-11.png||height="141" width="367"]]
266 )))|(% style="width:170px" %)
267
268 (% style="color:blue" %)**1D Version**(%%): This version has 1NCE SIM card pre-installed and configure to send value to DataCake. User Just need to select the sensor type in DataCake and Activate SW3L-NB and user will be able to see data in DataCake. See here for [[DataCake Config Instruction>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.4Datacake]].
269
270
271 == 2.2 ​Payload Types ==
272
273
274 To meet different server requirement, SW3L-NB supports different payload type.
275
276 **Includes:**
277
278 * [[General JSON format payload>>||anchor="H2.2.1GeneralJsonFormat28Type3D529"]]. (Type=5)
279
280 * [[HEX format Payload>>||anchor="H2.2.2HEXformatPayload28Type3D029"]]. (Type=0)
281
282 * [[ThingSpeak Format>>||anchor="H2.2.4ThingSpeakPayload28Type3D129"]]. (Type=1)
283
284 * [[ThingsBoard Format>>||anchor="H2.2.3ThingsBoardPayload28Type3D329"]]. (Type=3)
285
286 User can specify the payload type when choose the connection protocol. Example:
287
288 (% style="color:#037691" %)**AT+PRO=2,0**  (%%) ~/~/ Use UDP Connection & hex Payload
289
290 (% style="color:#037691" %)**AT+PRO=2,5**   (%%) ~/~/ Use UDP Connection & Json Payload
291
292 (% style="color:#037691" %)**AT+PRO=3,5 ** (%%) ~/~/ Use MQTT Connection & Json Payload
293
294
295 === 2.2.1 General Json Format(Type~=5) ===
296
297
298 This is the General Json Format. As below:
299
300 (% style="color:#4472c4" %)**{"IMEI":"866207058378443","Model":"SW3L-NB","distance":217,"battery":3.54,"signal":24,"1":{221,2023/09/20 09:47:01},"2":{0,2023/09/20 09:15:04},"3":{0,2023/09/20 09:00:04},"4":{0,2023/09/20 08:45:03},"5":{0,2023/09/20 08:30:03},"6":{0,2023/09/20 08:15:03},"7":{0,2023/09/20 08:00:04},"8":{0,2023/09/20 07:45:04}}**
301
302
303 [[image:image-20230920175015-3.png||height="613" width="890"]]
304
305
306 (% style="color:red" %)**Notice, from above payload:**
307
308 * Distance , Battery & Signal are the value at uplink time.
309
310 * Json entry 1 ~~ 8 are the last 1 ~~ 8 sampling data as specify by (% style="color:#037691" %)**AT+NOUD=8 ** (%%)Command. Each entry includes (from left to right): Distance, Sampling time.
311
312 === 2.2.2 HEX format Payload(Type~=0) ===
313
314
315 This is the HEX Format. As below:
316
317 (% style="color:#4472c4" %)**f8662070583784430b640dda15010003a4650abc400000650ab8180000650ab4940000650ab10f0000650aad8b0000650aaa070000650aa6840000650aa3000000650a9308**
318
319 [[image:image-20230920172200-1.png||height="191" width="1047"]]
320
321
322 If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the NB sensor uplink data.
323
324 [[image:image-20230920173352-2.png||height="636" width="919"]]
325
326
327 (% style="color:blue" %)**Version:**
328
329 These bytes include the hardware and software version.
330
331 (% style="color:#037691" %)**Higher byte:**(%%) Specify Sensor Model: 0x0b for SW3L-NB
332
333 (% style="color:#037691" %)**Lower byte:**(%%) Specify the software version: 0x64=100, means firmware version 1.0.0
334
335
336 (% style="color:blue" %)**BAT (Battery Info):**
337
338 Ex1: 0x0dda = 3546mV
339
340
341 (% style="color:blue" %)**Signal Strength:**
342
343 NB-IoT Network signal Strength.
344
345 **Ex1: 0x15 = 21**
346
347 **0**  -113dBm or less
348
349 **1**  -111dBm
350
351 **2...30** -109dBm... -53dBm
352
353 **31**   -51dBm or greater
354
355 **99**    Not known or not detectable
356
357
358 (% style="color:blue" %)**Distance:  **
359
360 Ex1: 0x03a4 = 932 mm
361
362
363 (% style="color:blue" %)**Timestamp:   **
364
365 Unit Timestamp Example: 650abc40(H) = 1695202368(D)
366
367 Put the decimal value into this link([[https:~~/~~/www.epochconverter.com)>>https://www.epochconverter.com]]) to get the time.
368
369
370 === 2.2.3 ThingsBoard Payload(Type~=3) ===
371
372
373 Type3 payload special design for ThingsBoard, it will also configure other default server to ThingsBoard.
374
375 (% style="color:#4472c4" %)** {"IMEI": "866207058378443","Model": "SW3L","distance": 502,"battery": 3.57,"signal": 23}**
376
377 [[image:image-20230922094043-2.png||height="558" width="851"]]
378
379
380
381 === 2.2.4 ThingSpeak Payload(Type~=1) ===
382
383
384 This payload meets ThingSpeak platform requirement. It includes only four fields. Form 1~~3 are:
385
386 Distance, Battery & Signal. This payload type only valid for ThingsSpeak Platform
387
388 As below:
389
390 (% style="color:#4472c4" %)**field1=Distance value&field2=Battery value&field3=Singal value**
391
392 [[image:image-20230921104741-1.png||height="565" width="826"]]
393
394
395 == 2.3  ​Uplink Payload ==
396
397 === 2.3.1 Sensor Configuration, FPORT~=4 ===
398
399
400 SW3L-LB will only send this command after getting the downlink command **(0x26 02)** from the server.
401
402 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
403 |(% style="background-color:#d9e2f3; color:#0070c0; width:70px" %) **Size(bytes)**|(% style="background-color:#d9e2f3; color:#0070c0; width:105px" %)**3**|(% style="background-color:#d9e2f3; color:#0070c0; width:60px" %)**1**|(% style="background-color:#d9e2f3; color:#0070c0; width:96px" %)**1**|(% style="background-color:#d9e2f3; color:#0070c0; width:105px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:74px" %)**1**
404 |**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
405
406 Example parse in TTNv3
407
408 [[image:image-20230614172555-4.png||height="151" width="853"]]
409
410
411 * (% style="color:blue" %)**TDC: (default: 0x0004B0)**
412
413 Uplink interval for the total pulse count, default value is 0x0004B0 which is 1200 seconds = 20 minutes.
414
415
416 * (% style="color:blue" %)**STOP Duration & Alarm Timer**
417
418 Shows the configure value of [[Alarm for continuously water flow>>||anchor="H3.3.4Alarmforcontinuouslywaterflow"]]
419
420
421 === 2.3.2 Water Flow Value, Uplink FPORT~=2 ===
422
423
424 (((
425 SW3L-LB will send this uplink **after** Device Status once join the LoRaWAN network successfully. And SW3L-LB will:
426 )))
427
428 (((
429 periodically send this uplink every 20 minutes, this interval [[can be changed>>||anchor="H3.3.1SetTransmitIntervalTime"]].
430 )))
431
432 (((
433 Uplink Payload totals 11 bytes.
434 )))
435
436 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
437 |=(% colspan="6" style="width: 515px; background-color:#D9E2F3;color:#0070C0" %)**Water Flow Value,  FPORT=2**
438 |(% 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**
439 |(% style="width:110px" %)**Value**|(% style="width:81px" %)Calculate Flag & [[Alarm>>||anchor="H3.3.4Alarmforcontinuouslywaterflow"]]|(% style="width:95px" %)(((
440 Total pulse Or Last Pulse
441 )))|(% style="width:78px" %)(((
442 MOD & PA4_status & PB15_status
443 )))|(% style="width:92px" %)Reserve(0x01)|(% style="width:134px" %)[[Unix TimeStamp>>||anchor="H2.5.2UnixTimeStamp"]]
444
445 **Calculate Flag & Alarm:**
446
447 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %)
448 |(% style="background-color:#d9e2f3; color:#0070c0; width:70px" %)**Size(bit)**|(% style="background-color:#d9e2f3; color:#0070c0; width:70px" %)**[bit7:bit6]**|(% style="background-color:#d9e2f3; color:#0070c0; width:90px" %)**[bit5:bit2]**|(% style="background-color:#d9e2f3; color:#0070c0; width:140px" %)**bit1**|(% style="background-color:#d9e2f3; color:#0070c0; width:130px" %)**bit0**
449 |(% 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
450
451 **MOD & PA4_status & PB15_status:**
452
453 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:230px" %)
454 |(% style="background-color:#d9e2f3; color:#0070c0; width:50px" %)**Size(bit)**|(% style="background-color:#d9e2f3; color:#0070c0; width:60px" %)**bit7**|(% style="background-color:#d9e2f3; color:#0070c0; width:60px" %)**bit6**|(% style="background-color:#d9e2f3; color:#0070c0; width:60px" %)**[bit5:bit0]**
455 |(% style="width:88px" %)**Value**|(% style="width:117px" %)PA4_status|(% style="width:117px" %)PB15_status|(% style="width:118px" %)MOD
456
457 (% style="color:#037691" %)** **[[image:image-20230626093242-1.png||height="276" width="892"]]
458
459
460 * (((
461 (% style="color:blue" %)**Calculate Flag**
462 )))
463
464 (((
465 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.
466
467
468 )))
469
470 (((
471 **Example: in the default payload:**
472 )))
473
474 * (((
475 calculate flag=0: for SW3L-004 Flow Sensor: 450 pulse = 1 L
476 )))
477 * (((
478 calculate flag=1: for SW3L-006 Flow Sensor: 390 pulse = 1 L
479 )))
480 * (((
481 calculate flag=2: for SW3L-010 Flow Sensor: 64 pulse = 1 L
482 )))
483
484 (((
485 Default value: 0. 
486 )))
487
488 (((
489 Range (4 bits): (b)0000 ~~ (b) 1111
490
491 If user use with a meter for example is 0.02L/pulse. To proper decode the correct value in server,
492
493 1) User can set the Calculate Flag of this sensor to 3.
494
495 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.
496 )))
497
498 (((
499 (% 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"]]
500
501 (((
502
503 )))
504 )))
505
506
507 * (((
508 (% style="color:blue" %)**Alarm**
509 )))
510
511 (((
512 See [[Alarm for continuously water flow>>||anchor="H3.3.4Alarmforcontinuouslywaterflow"]]
513 )))
514
515 [[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"]]
516
517
518 (((
519 * (% style="color:blue" %)**TDC flag**
520
521 When the flag is 1, it means sending packets at normal time intervals.
522
523 Otherwise, it is a packet sent at non-TDC time.
524 )))
525
526 * (((
527 (% style="color:blue" %)**Total pulse**
528 )))
529
530 (((
531 Total pulse/counting since factory
532 )))
533
534 (((
535 Range (4 Bytes) : 0x00000000~~ 0xFFFFFFFF .
536
537
538 )))
539
540 * (((
541 (% style="color:blue" %)**Last Pulse**
542 )))
543
544 (((
545 Total pulse since last FPORT=2 uplink. (Default 20 minutes)
546 )))
547
548 (((
549 Range (4 Bytes) : 0x00000000~~ 0xFFFFFFFF .
550
551
552 * (((
553 (% style="color:blue" %)**PA4_status: Support digital level input below 3.3V**
554 )))
555
556 (((
557 0 ~-~-> PA4 is at low level.
558 )))
559
560 (((
561 1 ~-~-> PA4 is at high level.
562
563
564 * (((
565 (% style="color:blue" %)**PB15_status: Support digital level input below 3.3V**
566 )))
567
568 (((
569 0 ~-~-> PB15 is at low level.
570 )))
571
572 (((
573 1 ~-~-> PB15 is at high level..
574 )))
575 )))
576 )))
577
578 * (((
579 (% style="color:blue" %)**MOD: Default =0**
580 )))
581
582 (((
583 MOD=0 ~-~-> Uplink Total Pulse since factory
584 )))
585
586 (((
587 MOD=1 ~-~-> Uplink total pulse since last FPORT=2 uplink.
588
589
590 )))
591
592 * (((
593 (% style="color:blue" %)**Water Flow Value**
594 )))
595
596 (((
597 **Total Water Flow Volume = (Calculate Flag) x (Total Pulse)=9597/450=21.3L**
598 )))
599
600 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/SW3L%20LoRaWAN%20Outdoor%20Flow%20Sensor/WebHome/image-20220519095946-5.png?width=727&height=50&rev=1.1||alt="image-20220519095946-5.png"]]
601
602
603 (((
604 **Total Water Flow for TDC timer = (Calculate Flag) x (Last Pulse)=79/450=0.2L**
605 )))
606
607 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/SW3L%20LoRaWAN%20Outdoor%20Flow%20Sensor/WebHome/image-20220519095946-6.png?width=733&height=43&rev=1.1||alt="image-20220519095946-6.png"]] ** **
608
609
610 === 2.3.3 Historical Water Flow Status, FPORT~=3 ===
611
612
613 (((
614 SW3L-LB stores sensor values and users can retrieve these history values via the [[downlink command>>||anchor="H2.5DatalogFeature"]].
615 )))
616
617 (((
618 The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time water flow status.
619
620 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
621 |=(% colspan="6" style="width: 515px; background-color:#D9E2F3;color:#0070C0" %)**Water Flow Value,  FPORT=3**
622 |(% 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**
623 |(% style="width:110px" %)**Value**|(% style="width:81px" %)Calculate Flag & [[Alarm>>||anchor="H3.3.4Alarmforcontinuouslywaterflow"]]|(% style="width:95px" %)(((
624 Total pulse Or Last Pulse
625 )))|(% style="width:78px" %)(((
626 MOD & PA4_status & PB15_status
627 )))|(% style="width:92px" %)Reserve(0x01)|(% style="width:134px" %)[[Unix TimeStamp>>||anchor="H2.5.2UnixTimeStamp"]]
628
629 **Calculate Flag & Alarm:**
630
631 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
632 |(% style="background-color:#d9e2f3; color:#0070c0; width:50px" %)**Size(bit)**|(% style="background-color:#d9e2f3; color:#0070c0; width:89px" %)**bit7**|(% style="background-color:#d9e2f3; color:#0070c0; width:89px" %)**bit6**|(% style="background-color:#d9e2f3; color:#0070c0; width:69px" %)**[bit5:bit2]**|(% style="background-color:#d9e2f3; color:#0070c0; width:129px" %)**bit1**|(% style="background-color:#d9e2f3; color:#0070c0; width:89px" %)**bit0**
633 |(% style="width:88px" %)**Value**|(% style="width:96px" %)(((
634 No ACK message
635 )))|(% 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
636
637 **MOD & PA4_status & PB15_status:**
638
639 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:240px" %)
640 |(% style="background-color:#d9e2f3; color:#0070c0; width:60px" %)**Size(bit)**|(% style="background-color:#d9e2f3; color:#0070c0; width:60px" %)**bit7**|(% style="background-color:#d9e2f3; color:#0070c0; width:60px" %)**bit6**|(% style="background-color:#d9e2f3; color:#0070c0; width:60px" %)**[bit5:bit0]**
641 |(% style="width:88px" %)**Value**|(% style="width:117px" %)PA4_status|(% style="width:117px" %)PB15_status|(% style="width:118px" %)MOD
642 )))
643
644 * (((
645 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.
646 )))
647
648 (((
649 For example, in the US915 band, the max payload for different DR is:
650 )))
651
652 (((
653 (% style="color:blue" %)**a) DR0:**(%%) max is 11 bytes so one entry of data
654 )))
655
656 (((
657 (% style="color:blue" %)**b) DR1:**(%%) max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
658 )))
659
660 (((
661 (% style="color:blue" %)**c) DR2:**(%%) total payload includes 11 entries of data
662 )))
663
664 (((
665 (% style="color:blue" %)**d) DR3:**(%%) total payload includes 22 entries of data.
666 )))
667
668 (((
669 If SW3L-LB doesn't have any data in the polling time. It will uplink 11 bytes of 0
670
671
672 )))
673
674 (((
675 (% style="color:#037691" %)**Downlink:**
676 )))
677
678 (((
679 0x31 64 92 C5 AC 64 92 C7 8C 05
680 )))
681
682 [[image:image-20230626093440-2.png||height="160" width="890"]]
683
684
685 (((
686 (% style="color:#037691" %)**Uplink:**
687 )))
688
689 (((
690 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
691
692
693 )))
694
695 (((
696 (% style="color:#037691" %)**Parsed Value:**
697 )))
698
699 (((
700 [TDC_flag, Alarm, Calculate Flag, PA4_status, PB15_status, MOD, Total pulse or Last Pulse,** **Water Flow Value, TIME]
701 )))
702
703
704 (((
705 [YES,FALSE,0,L,L, 0,8, 0.0,2023-06-21 09:41:56],
706
707 [NO,FALSE,0,L,L, 0,8, 0.0,2023-06-21 09:42:30],
708
709 [YES,FALSE,2,L,H,1,0, 0.0,2023-06-21 09:44:43],
710
711 [YES,FALSE,2,H,L,1,0, 0.0,2023-06-21 09:47:32],
712
713 [NO,TRUE ,2, L,L,1,45,0.7,2023-06-21 09:48:44],
714
715
716 )))
717
718 [[image:image-20230626093703-3.png||height="156" width="894"]]
719
720
721
722 == 2.4 Test Uplink and Change Update Interval ==
723
724
725 By default, Sensor will send uplinks (% style="color:blue" %)**every 2 hours**(%%) & AT+NOUD=8
726
727 User can use below commands to change the (% style="color:blue" %)**uplink interval**.
728
729 (% style="color:#037691" %)**AT+TDC=600 ** (%%) ~/~/ Set Update Interval to 600s
730
731 User can also push the button for more than 1 seconds to activate an uplink.
732
733
734 == 2.5 Multi-Samplings and One uplink ==
735
736
737 To save battery life, SW3L-NB will sample Distance data every 15 minutes and send one uplink every 2 hours. So each uplink it will include 8 stored data + 1 real-time data. They are defined by:
738
739 * (% style="color:#037691" %)**AT+TR=900**   (%%) ~/~/ The unit is seconds, and the default is to record data once every 900 seconds (15 minutes, the minimum can be set to 180 seconds)
740
741 * (% style="color:#037691" %)**AT+NOUD=8**     (%%)~/~/  The device uploads 8 sets of recorded data by default. Up to 32 sets of record data can be uploaded.
742
743 The diagram below explains the relationship between TR, NOUD, and TDC more clearly:
744
745 [[image:1692424376354-959.png]]
746
747
748 == 2.6 Trggier an uplink by external interrupt ==
749
750
751 SW3L-NB has an external trigger interrupt function. Users can use the PB15 pin to trigger the upload of data packets.
752
753 (% style="color:blue" %)**AT command:**
754
755 * (% style="color:#037691" %)**AT+INTMOD **(%%) ~/~/ Set the trigger interrupt mode
756
757 * (% style="color:#037691" %)**AT+INTMOD=0 **(%%) ~/~/ Disable Interrupt
758
759 * (% style="color:#037691" %)**AT+INTMOD=1 **(%%) ~/~/ Trigger by rising and falling edge
760
761 * (% style="color:#037691" %)**AT+INTMOD=2 **(%%) ~/~/ Trigger by falling edge
762
763 * (% style="color:#037691" %)**AT+INTMOD=3  **(%%) ~/~/ Trigger by rising edge
764
765 = 3. Configure SW3L-NB =
766
767 == 3.1 Configure Methods ==
768
769
770 SW3L-NB supports below configure method:
771
772 * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
773
774 * 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]].
775
776 == 3.2 AT Commands Set ==
777
778
779 AT+<CMD>?        : Help on <CMD>
780
781 AT+<CMD>         : Run <CMD>
782
783 AT+<CMD>=<value> : Set the value
784
785 AT+<CMD>=?       : Get the value
786
787
788 (% style="color:blue" %)**General Commands**      
789
790 AT                    : Attention       
791
792 AT?  : Short Help     
793
794 ATZ  : MCU Reset    
795
796 AT+TDC  : Application Data Transmission Interval
797
798 AT+CFG  : Print all configurations
799
800 AT+CFGMOD           : Working mode selection
801
802 AT+DEUI  : Get or set the Device ID
803
804 AT+INTMOD            : Set the trigger interrupt mode
805
806 AT+5VT           : Set extend the time of 5V power  
807
808 AT+PRO          : Choose agreement
809
810 AT+RXDL  : Extend the sending and receiving time
811
812 AT+DNSCFG  : Get or Set DNS Server
813
814 AT+GETSENSORVALUE   : Returns the current sensor measurement
815
816 AT+NOUD  : Get or Set the number of data to be uploaded
817
818 AT+CDP     : Read or Clear cached data
819
820 AT+SHTEMP:  Get or Set alarm of temp
821
822 AT+SHHUM:  Get or Set alarm of moisture
823
824 AT+SERVADDR :  Server Address
825
826
827 (% style="color:blue" %)**UDP Management**
828
829 AT+CFM  :  Upload confirmation mode (only valid for UDP)
830
831
832 (% style="color:blue" %)**MQTT Management**
833
834 AT+CLIENT               : Get or Set MQTT client
835
836 AT+UNAME              : Get or Set MQTT Username
837
838 AT+PWD                  : Get or Set MQTT password
839
840 AT+PUBTOPIC  : Get or Set MQTT publish topic
841
842 AT+SUBTOPIC  : Get or Set MQTT subscription topic
843
844
845 (% style="color:blue" %)**Information**          
846
847 AT+FDR  : Factory Data Reset
848
849 AT+PWORD  : Serial Access Password
850
851 AT+LDATA  : Get the last upload data
852
853 AT+CDP  : Read or Clear cached data
854
855
856 = 4. Battery & Power Consumption =
857
858
859 SW3L-NB use ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
860
861 [[**Battery Info & Power Consumption Analyze**>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
862
863
864 = 5. Firmware update =
865
866
867 User can change device firmware to::
868
869 * Update with new features.
870
871 * Fix bugs.
872
873 Firmware and changelog can be downloaded from : **[[Firmware download link>>https://www.dropbox.com/sh/l0bszumyrmil3yv/AAAg8LYGeAgDsD_ycCnweD72a?dl=0]]**
874
875 Methods to Update Firmware:
876
877 * (Recommended way) OTA firmware update via BLE: [[**Instruction**>>url:http://wiki.dragino.com/xwiki/bin/view/Main/BLE_Firmware_Update_NB_Sensors_BC660K-GL/]].
878
879 * 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]]**.
880
881 = 6. FAQ =
882
883 == 6.1 How can I access t BC660K-GL AT Commands? ==
884
885
886 User can access to BC660K-GL directly and send AT Commands.
887
888 [[See BC660K-GL AT Command set>>url:https://www.dropbox.com/sh/5f6ssda5fum8rvs/AABT68l8ZzWOvZ5eg2qwOoFda?dl=0]]
889
890
891 == 6.2 Can I use SW3L-NB in condensation environment? ==
892
893
894 SW3L-NB is not suitable to be used in condensation environment. Condensation on the SW3L-NB probe will affect the reading and always got 0.
895
896
897 = 7. Trouble Shooting =
898
899 == 7.1 Why does the sensor reading show 0 or "No sensor" ==
900
901
902 ~1. The measurement object is very close to the sensor, but in the blind spot of the sensor.
903
904 2. Sensor wiring is disconnected
905
906 3. Not using the correct decoder
907
908
909 == 7.2 Abnormal readings The gap between multiple readings is too large or the gap between the readings and the actual value is too large ==
910
911
912 1) Please check if there is something on the probe affecting its measurement (condensed water, volatile oil, etc.)
913
914 2) Does it change with temperature, temperature will affect its measurement
915
916 3) If abnormal data occurs, you can turn on DEBUG mode, Please use downlink or AT COMMAN to enter DEBUG mode.
917
918 downlink command: (% style="color:blue" %)**F1 01**(%%), AT command: (% style="color:blue" %)**AT+DDEBUG=1**
919
920 4) After entering the debug mode, it will send 20 pieces of data at a time, and you can send its uplink to us for analysis
921
922 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS75%20-%20LoRaWAN%20Distance%20Detection%20Sensor%20User%20Manual/WebHome/image-20230113135125-2.png?width=1057&height=136&rev=1.1||alt="image-20230113135125-2.png"]]
923
924
925 Its original payload will be longer than other data. Even though it is being parsed, it can be seen that it is abnormal data.
926
927 Please send the data to us for check.
928
929
930 = 8. Order Info =
931
932
933 Part Number: (% style="color:blue" %)**SW3L-NB-XX-YY**
934
935 (% style="color:red" %)**XX**(%%):
936
937 * (% style="color:#037691" %)**GE**(%%): General version ( Exclude SIM card)
938
939 * (% style="color:#037691" %)**1D**(%%): with 1NCE* 10 years 500MB SIM card and Pre-configure to DataCake server
940
941 (% style="color:#037691" %)**1NCE SIM Card NB-IoT network coverage**(%%): Austria, Belgium, Bulgaria, Croatia, Czech Republic, Denmark, Finland, Germany, Great Britain, Greece, Hungary, Ireland, Italy, Latvia, Malta, Netherlands, Norway, Puerto Rico, Russia, Slovak , Republic, Slovenia, Spain, Sweden, Switzerland, Taiwan, USA, US Virgin Islands
942
943 (((
944 (% style="color:blue" %)**YY**(%%): Flow Sensor Model:
945 )))
946
947 (((
948 **004:** DW-004 Flow Sensor: diameter: G1/2” / DN15.  450 pulse = 1 L
949 )))
950
951 (((
952 **006:** DW-006 Flow Sensor: diameter: G3/4” / DN20. 390 pulse = 1 L
953 )))
954
955 (((
956 **010:** DW-010 Flow Sensor: diameter: G 1” / DN25. 64 pulse = 1 L
957 )))
958
959 * (((
960 calculate flag=0: for SW3L-004 Flow Sensor: 450 pulse = 1 L
961 )))
962
963 * (((
964 calculate flag=1: for SW3L-006 Flow Sensor: 390 pulse = 1 L
965 )))
966
967 * (((
968 calculate flag=2: for SW3L-010 Flow Sensor: 64  pulse = 1 L
969
970
971
972 )))
973
974 = 9. ​Packing Info =
975
976
977 (% style="color:#037691" %)**Package Includes**:
978
979 * SW3L-NB NB-IoT Distance Detection sensor x 1
980
981 * External antenna x 1
982
983 (% style="color:#037691" %)**Dimension and weight**:
984
985 * Device Size: 13.0 x 5 x 4.5 cm
986
987 * Device Weight: 150g
988
989 * Package Size / pcs : 14.0 x 8x 5 cm
990
991 * Weight / pcs : 180g
992
993 = 10. Support =
994
995
996 * 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.
997
998 * 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]].
999
1000 (% style="display:none" %) (%%)