Show last authors
1
2
3 (% style="text-align:center" %)
4 [[image:image-20240103095714-2.png]]
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 SN50v3-LB/LS LoRaWAN Generic Node ==
23
24
25 (% style="color:blue" %)**SN50V3-LB/LS **(%%)LoRaWAN Sensor Node is a Long Range LoRa Sensor Node. It is designed for outdoor use and powered by (% style="color:blue" %)** 8500mAh Li/SOCl2 battery**(%%)  or (% style="color:blue" %)**solar powered + Li-ion battery**(%%) for long term use.SN50V3-LB/LS is designed to facilitate developers to quickly deploy industrial level LoRa and IoT solutions. It help users to turn the idea into a practical application and make the Internet of Things a reality. It is easy to program, create and connect your things everywhere.
26
27 (% style="color:blue" %)**SN50V3-LB/LS wireless part**(%%) is based on SX1262 allows the user 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 minimising current consumption.It targets professional wireless sensor network applications such as irrigation systems, smart metering, smart cities, and so on.
28
29 SN50V3-LB/LS has a powerful (% style="color:blue" %)**48Mhz ARM microcontroller with 256KB flash and 64KB RAM**(%%). It has (% style="color:blue" %)**multiplex I/O pins**(%%) to connect to different sensors.
30
31 SN50V3-LB/LS has a (% style="color:blue" %)**built-in BLE module**(%%), user can configure the sensor remotely via Mobile Phone. It also support (% style="color:blue" %)**OTA upgrade**(%%) via private LoRa protocol for easy maintaining.
32
33 SN50V3-LB/LS is the 3^^rd^^ generation of LSN50 series generic sensor node from Dragino. It is an (% style="color:blue" %)**open source project**(%%) and has a mature LoRaWAN stack and application software. User can use the pre-load software for their IoT projects or easily customize the software for different requirements.
34
35 == 1.2 ​Features ==
36
37
38 * LoRaWAN 1.0.3 Class A
39 * Ultra-low power consumption
40 * Open-Source hardware/software
41 * Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865
42 * Support Bluetooth v5.1 and LoRaWAN remote configure
43 * Support wireless OTA update firmware
44 * Uplink on periodically
45 * Downlink to change configure
46 * 8500mAh Li/SOCl2 Battery (SN50v3-LB)
47 * Solar panel + 3000mAh Li-ion battery (SN50v3-LS)
48
49 == 1.3 Specification ==
50
51
52 (% style="color:#037691" %)**Common DC Characteristics:**
53
54 * Supply Voltage: Built-in Battery , 2.5v ~~ 3.6v
55 * Operating Temperature: -40 ~~ 85°C
56
57 (% style="color:#037691" %)**I/O Interface:**
58
59 * Battery output (2.6v ~~ 3.6v depends on battery)
60 * +5v controllable output
61 * 3 x Interrupt or Digital IN/OUT pins
62 * 3 x one-wire interfaces
63 * 1 x UART Interface
64 * 1 x I2C Interface
65
66 (% style="color:#037691" %)**LoRa Spec:**
67
68 * Frequency Range,  Band 1 (HF): 862 ~~ 1020 Mhz
69 * Max +22 dBm constant RF output vs.
70 * RX sensitivity: down to -139 dBm.
71 * Excellent blocking immunity
72
73 (% style="color:#037691" %)**Battery:**
74
75 * Li/SOCI2 un-chargeable battery
76 * Capacity: 8500mAh
77 * Self-Discharge: <1% / Year @ 25°C
78 * Max continuously current: 130mA
79 * Max boost current: 2A, 1 second
80
81 (% style="color:#037691" %)**Power Consumption**
82
83 * Sleep Mode: 5uA @ 3.3v
84 * LoRa Transmit Mode: 125mA @ 20dBm, 82mA @ 14dBm
85
86 == 1.4 Sleep mode and working mode ==
87
88
89 (% 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.
90
91 (% 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.
92
93
94 == 1.5 Button & LEDs ==
95
96
97 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/RS485-LB_Waterproof_RS485UART_to_LoRaWAN_Converter/WebHome/image-20240103160425-4.png?rev=1.1||alt="image-20240103160425-4.png"]]
98
99 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
100 |=(% 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**
101 |(% style="width:167px" %)Pressing ACT between 1s < time < 3s|(% style="width:117px" %)Send an uplink|(% style="width:225px" %)(((
102 If sensor is already Joined to LoRaWAN network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once.
103 Meanwhile, BLE module will be active and user can connect via BLE to configure device.
104 )))
105 |(% style="width:167px" %)Pressing ACT for more than 3s|(% style="width:117px" %)Active Device|(% style="width:225px" %)(((
106 (% 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.
107 (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.
108 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.
109 )))
110 |(% 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.
111
112 == 1.6 BLE connection ==
113
114
115 SN50v3-LB/LS supports BLE remote configure.
116
117
118 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:
119
120 * Press button to send an uplink
121 * Press button to active device.
122 * Device Power on or reset.
123
124 If there is no activity connection on BLE in 60 seconds, sensor will shut down BLE module to enter low power mode.
125
126
127 == 1.7 Pin Definitions ==
128
129
130 [[image:image-20230610163213-1.png||height="404" width="699"]]
131
132
133 == 1.8 Mechanical ==
134
135 === 1.8.1 for LB version ===
136
137
138 [[image:image-20240924112806-1.png||height="548" width="894"]]
139
140
141
142 === 1.8.2 for LS version ===
143
144 [[image:image-20231231203439-3.png||height="385" width="886"]]
145
146
147 == 1.9 Hole Option ==
148
149
150 SN50v3-LB/LS has different hole size options for different size sensor cable. The options provided are M12, M16 and M20. The definition is as below:
151
152 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/image-20220627104757-1.png?rev=1.1||alt="image-20220627104757-1.png"]]
153
154 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/1656298089706-973.png?rev=1.1||alt="1656298089706-973.png"]]
155
156
157 = 2. Configure SN50v3-LB/LS to connect to LoRaWAN network =
158
159 == 2.1 How it works ==
160
161
162 The SN50v3-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 SN50v3-LB/LS. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 20 minutes.
163
164
165 == 2.2 ​Quick guide to connect to LoRaWAN server (OTAA) ==
166
167
168 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.
169
170 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.
171
172
173 (% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from SN50v3-LB/LS.
174
175 Each SN50v3-LB/LS is shipped with a sticker with the default device EUI as below:
176
177 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/S31-LB_S31B-LB/WebHome/image-20230426084152-1.png?width=502&height=233&rev=1.1||alt="图片-20230426084152-1.png" height="233" width="502"]]
178
179
180 You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
181
182
183 (% style="color:blue" %)**Register the device**
184
185 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/1654935135620-998.png?rev=1.1||alt="1654935135620-998.png"]]
186
187
188 (% style="color:blue" %)**Add APP EUI and DEV EUI**
189
190 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-4.png?width=753&height=551&rev=1.1||alt="图片-20220611161308-4.png"]]
191
192
193 (% style="color:blue" %)**Add APP EUI in the application**
194
195
196 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-5.png?width=742&height=601&rev=1.1||alt="图片-20220611161308-5.png"]]
197
198
199 (% style="color:blue" %)**Add APP KEY**
200
201 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-6.png?width=744&height=485&rev=1.1||alt="图片-20220611161308-6.png"]]
202
203 (% style="color:blue" %)**Step 2:**(%%) Activate SN50v3-LB/LS
204
205 Press the button for 5 seconds to activate the SN50v3-LB/LS.
206
207 (% 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.
208
209 After join success, it will start to upload messages to TTN and you can see the messages in the panel.
210
211
212 == 2.3 ​Uplink Payload ==
213
214 === 2.3.1 Device Status, FPORT~=5 ===
215
216
217 Users can use the downlink command(**0x26 01**) to ask SN50v3-LB/LS to send device configure detail, include device configure status. SN50v3-LB/LS will uplink a payload via FPort=5 to server.
218
219 The Payload format is as below.
220
221
222 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
223 |(% colspan="6" style="background-color:#4f81bd; color:white" %)**Device Status (FPORT=5)**
224 |(% style="width:103px" %)**Size (bytes)**|(% style="width:72px" %)**1**|**2**|(% style="width:91px" %)**1**|(% style="width:86px" %)**1**|(% style="width:44px" %)**2**
225 |(% 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
226
227 Example parse in TTNv3
228
229
230 (% style="color:#037691" %)**Sensor Model**(%%): For SN50v3-LB/LS, this value is 0x1C
231
232 (% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
233
234 (% style="color:#037691" %)**Frequency Band**:
235
236 0x01: EU868
237
238 0x02: US915
239
240 0x03: IN865
241
242 0x04: AU915
243
244 0x05: KZ865
245
246 0x06: RU864
247
248 0x07: AS923
249
250 0x08: AS923-1
251
252 0x09: AS923-2
253
254 0x0a: AS923-3
255
256 0x0b: CN470
257
258 0x0c: EU433
259
260 0x0d: KR920
261
262 0x0e: MA869
263
264
265 (% style="color:#037691" %)**Sub-Band**:
266
267 AU915 and US915:value 0x00 ~~ 0x08
268
269 CN470: value 0x0B ~~ 0x0C
270
271 Other Bands: Always 0x00
272
273
274 (% style="color:#037691" %)**Battery Info**:
275
276 Check the battery voltage.
277
278 Ex1: 0x0B45 = 2885mV
279
280 Ex2: 0x0B49 = 2889mV
281
282
283 === 2.3.2 Working Modes & Sensor Data. Uplink via FPORT~=2 ===
284
285
286 SN50v3-LB/LS has different working mode for the connections of different type of sensors. This section describes these modes. Use can use the AT Command (% style="color:blue" %)**AT+MOD**(%%) to set SN50v3-LB/LS to different working modes.
287
288 For example:
289
290 (% style="color:blue" %)**AT+MOD=2  ** (%%) ~/~/ will set the SN50v3 to work in MOD=2 distance mode which target to measure distance via Ultrasonic Sensor.
291
292
293 (% style="color:red" %) **Important Notice:**
294
295 ~1. Some working modes has payload more than 12 bytes, The US915/AU915/AS923 frequency bands' definition has maximum 11 bytes in (% style="color:blue" %)**DR0**(%%). Server sides will see NULL payload while SN50v3-LB/LS transmit in DR0 with 12 bytes payload.
296
297 2. All modes share the same Payload Explanation from HERE.
298
299 3. By default, the device will send an uplink message every 20 minutes.
300
301
302 ==== 2.3.2.1  MOD~=1 (Default Mode) ====
303
304
305 In this mode, uplink payload includes in total 11 bytes. Uplink packets use FPORT=2.
306
307 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:517px" %)
308 |(% style="background-color:#4f81bd; color:white; width:50px" %)**Size(bytes)**|(% style="background-color:#4f81bd; color:white; width:20px" %)**2**|(% style="background-color:#4f81bd; color:white; width:100px" %)**2**|(% style="background-color:#4f81bd; color:white; width:50px" %)**2**|(% style="background-color:#4f81bd; color:white; width:90px" %)**1**|(% style="background-color:#4f81bd; color:white; width:128px" %)**2**|(% style="background-color:#4f81bd; color:white; width:79px" %)**2**
309 |Value|Bat|(% style="width:191px" %)(((
310 Temperature(DS18B20)(PC13)
311 )))|(% style="width:78px" %)(((
312 ADC(PA4)
313 )))|(% style="width:216px" %)(((
314 Digital in(PB15)&Digital Interrupt(PA8)
315 )))|(% style="width:308px" %)(((
316 Temperature(SHT20 or SHT31 or BH1750 Illumination Sensor)
317 )))|(% style="width:154px" %)(((
318 Humidity(SHT20 or SHT31)
319 )))
320
321 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/image-20220627150949-6.png?rev=1.1||alt="image-20220627150949-6.png"]]
322
323
324 ==== 2.3.2.2  MOD~=2 (Distance Mode) ====
325
326
327 This mode is target to measure the distance. The payload of this mode is totally 11 bytes. The 8^^th^^ and 9^^th^^ bytes is for the distance.
328
329 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:517px" %)
330 |(% style="background-color:#4f81bd; color:white; width:50px" %)**Size(bytes)**|(% style="background-color:#4f81bd; color:white; width:29px" %)**2**|(% style="background-color:#4f81bd; color:white; width:108px" %)**2**|(% style="background-color:#4f81bd; color:white; width:40px" %)**2**|(% style="background-color:#4f81bd; color:white; width:110px" %)**1**|(% style="background-color:#4f81bd; color:white; width:140px" %)**2**|(% style="background-color:#4f81bd; color:white; width:40px" %)**2**
331 |Value|BAT|(% style="width:196px" %)(((
332 Temperature(DS18B20)(PC13)
333 )))|(% style="width:87px" %)(((
334 ADC(PA4)
335 )))|(% style="width:189px" %)(((
336 Digital in(PB15) & Digital Interrupt(PA8)
337 )))|(% style="width:208px" %)(((
338 Distance measure by: 1) LIDAR-Lite V3HP
339 Or 2) Ultrasonic Sensor
340 )))|(% style="width:117px" %)Reserved
341
342 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/1656324539647-568.png?rev=1.1||alt="1656324539647-568.png"]]
343
344
345 (% style="color:blue" %)**Connection of LIDAR-Lite V3HP:**
346
347 [[image:image-20230512173758-5.png||height="563" width="712"]]
348
349
350 (% style="color:blue" %)**Connection to Ultrasonic Sensor:**
351
352 (% style="color:red" %)**Need to remove R1 and R2 resistors to get low power,otherwise there will be 240uA standby current.**
353
354 [[image:image-20230512173903-6.png||height="596" width="715"]]
355
356
357 For the connection to TF-Mini or TF-Luna , MOD2 payload is as below:
358
359 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:517px" %)
360 |(% style="background-color:#4f81bd; color:white; width:50px" %)**Size(bytes)**|(% style="background-color:#4f81bd; color:white; width:20px" %)**2**|(% style="background-color:#4f81bd; color:white; width:100px" %)**2**|(% style="background-color:#4f81bd; color:white; width:100px" %)**1**|(% style="background-color:#4f81bd; color:white; width:50px" %)**2**|(% style="background-color:#4f81bd; color:white; width:120px" %)**2**|(% style="background-color:#4f81bd; color:white; width:77px" %)**2**
361 |Value|BAT|(% style="width:183px" %)(((
362 Temperature(DS18B20)(PC13)
363 )))|(% style="width:173px" %)(((
364 Digital in(PB15) & Digital Interrupt(PA8)
365 )))|(% style="width:84px" %)(((
366 ADC(PA4)
367 )))|(% style="width:323px" %)(((
368 Distance measure by:1)TF-Mini plus LiDAR
369 Or 2) TF-Luna LiDAR
370 )))|(% style="width:188px" %)Distance signal  strength
371
372 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/1656376779088-686.png?rev=1.1||alt="1656376779088-686.png"]]
373
374
375 **Connection to [[TF-Mini plus>>url:http://en.benewake.com/product/detail/5c345cd0e5b3a844c472329b.html]] LiDAR(UART version):**
376
377 (% style="color:red" %)**Need to remove R3 and R4 resistors to get low power,otherwise there will be 400uA standby current.**
378
379 [[image:image-20230512180609-7.png||height="555" width="802"]]
380
381
382 **Connection to [[TF-Luna>>url:http://en.benewake.com/product/detail/5e1c1fd04d839408076b6255.html]] LiDAR (UART version):**
383
384 (% style="color:red" %)**Need to remove R3 and R4 resistors to get low power,otherwise there will be 400uA standby current.**
385
386 [[image:image-20230610170047-1.png||height="452" width="799"]]
387
388
389 ==== 2.3.2.3  MOD~=3 (3 ADC + I2C) ====
390
391
392 This mode has total 12 bytes. Include 3 x ADC + 1x I2C
393
394 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:517px" %)
395 |=(% style="width: 50px;background-color:#4F81BD;color:white" %)(((
396 **Size(bytes)**
397 )))|=(% style="width: 50px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 50px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 50px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 90px;background-color:#4F81BD;color:white" %)**1**|=(% style="width: 110px;background-color:#4F81BD;color:white" %)2|=(% style="width: 97px;background-color:#4F81BD;color:white" %)2|=(% style="width: 20px;background-color:#4F81BD;color:white" %)1
398 |Value|(% style="width:68px" %)(((
399 ADC1(PA4)
400 )))|(% style="width:75px" %)(((
401 ADC2(PA5)
402 )))|(((
403 ADC3(PA8)
404 )))|(((
405 Digital Interrupt(PB15)
406 )))|(% style="width:304px" %)(((
407 Temperature(SHT20 or SHT31 or BH1750 Illumination Sensor)
408 )))|(% style="width:163px" %)(((
409 Humidity(SHT20 or SHT31)
410 )))|(% style="width:53px" %)Bat
411
412 [[image:image-20230513110214-6.png]]
413
414
415 ==== 2.3.2.4 MOD~=4 (3 x DS18B20) ====
416
417
418 This mode has total 11 bytes. As shown below:
419
420 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:517px" %)
421 |(% style="background-color:#4f81bd; color:white; width:50px" %)**Size(bytes)**|(% style="background-color:#4f81bd; color:white; width:20px" %)**2**|(% style="background-color:#4f81bd; color:white; width:100px" %)**2**|(% style="background-color:#4f81bd; color:white; width:50px" %)**2**|(% style="background-color:#4f81bd; color:white; width:99px" %)**1**|(% style="background-color:#4f81bd; color:white; width:99px" %)**2**|(% style="background-color:#4f81bd; color:white; width:99px" %)**2**
422 |Value|BAT|(% style="width:186px" %)(((
423 Temperature1(DS18B20)(PC13)
424 )))|(% style="width:82px" %)(((
425 ADC(PA4)
426 )))|(% style="width:210px" %)(((
427 Digital in(PB15) & Digital Interrupt(PA8) 
428 )))|(% style="width:191px" %)Temperature2(DS18B20)
429 (PB9)|(% style="width:183px" %)Temperature3(DS18B20)(PB8)
430
431 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/1656377606181-607.png?rev=1.1||alt="1656377606181-607.png"]]
432
433
434 [[image:image-20230513134006-1.png||height="559" width="736"]]
435
436
437 ==== 2.3.2.5  MOD~=5(Weight Measurement by HX711) ====
438
439
440 [[image:image-20230512164658-2.png||height="532" width="729"]]
441
442 Each HX711 need to be calibrated before used. User need to do below two steps:
443
444 1. Zero calibration. Don't put anything on load cell and run (% style="color:blue" %)**AT+WEIGRE**(%%) to calibrate to Zero gram.
445 1. Adjust calibration factor (default value 400): Put a known weight thing on load cell and run (% style="color:blue" %)**AT+WEIGAP**(%%) to adjust the Calibration Factor.
446 1. (((
447 Weight has 4 bytes, the unit is g.
448
449
450
451 )))
452
453 For example:
454
455 (% style="color:blue" %)**AT+GETSENSORVALUE =0**
456
457 Response:  Weight is 401 g
458
459 Check the response of this command and adjust the value to match the real value for thing.
460
461 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:517px" %)
462 |=(% style="width: 50px;background-color:#4F81BD;color:white" %)(((
463 **Size(bytes)**
464 )))|=(% style="width: 20px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 150px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 50px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 198px;background-color:#4F81BD;color:white" %)**1**|=(% style="width: 49px;background-color:#4F81BD;color:white" %)**4**
465 |Value|BAT|(% style="width:193px" %)(((
466 Temperature(DS18B20)(PC13)
467 )))|(% style="width:85px" %)(((
468 ADC(PA4)
469 )))|(% style="width:186px" %)(((
470 Digital in(PB15) & Digital Interrupt(PA8)
471 )))|(% style="width:100px" %)Weight
472
473 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/image-20220820120036-2.png?width=1003&height=469&rev=1.1||alt="image-20220820120036-2.png" height="469" width="1003"]]
474
475
476 ==== 2.3.2.6  MOD~=6 (Counting Mode) ====
477
478
479 In this mode, the device will work in counting mode. It counts the interrupt on the interrupt pins and sends the count on TDC time.
480
481 Connection is as below. The PIR sensor is a count sensor, it will generate interrupt when people come close or go away. User can replace the PIR sensor with other counting sensors.
482
483 [[image:image-20230512181814-9.png||height="543" width="697"]]
484
485
486 (% style="color:red" %)**Note:** **LoRaWAN wireless transmission will infect the PIR sensor. Which cause the counting value increase +1 for every uplink. User can change PIR sensor or put sensor away of the SN50_v3 to avoid this happen.**
487
488 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:517px" %)
489 |=(% style="width: 60px;background-color:#4F81BD;color:white" %)**Size(bytes)**|=(% style="width: 40px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 180px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 60px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 100px;background-color:#4F81BD;color:white" %)**1**|=(% style="width: 77px;background-color:#4F81BD;color:white" %)**4**
490 |Value|BAT|(% style="width:256px" %)(((
491 Temperature(DS18B20)(PC13)
492 )))|(% style="width:108px" %)(((
493 ADC(PA4)
494 )))|(% style="width:126px" %)(((
495 Digital in(PB15)
496 )))|(% style="width:145px" %)(((
497 Count(PA8)
498 )))
499
500 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/1656378441509-171.png?rev=1.1||alt="1656378441509-171.png"]]
501
502
503 ==== 2.3.2.7  MOD~=7 (Three interrupt contact modes) ====
504
505
506 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:517px" %)
507 |=(% style="width: 50px;background-color:#4F81BD;color:white" %)(((
508 **Size(bytes)**
509 )))|=(% style="width: 20px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 90px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 50px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 89px;background-color:#4F81BD;color:white" %)**1**|=(% style="width: 89px;background-color:#4F81BD;color:white" %)**1**|=(% style="width: 89px;background-color:#4F81BD;color:white" %)1|=(% style="width: 40px;background-color:#4F81BD;color:white" %)2
510 |Value|BAT|(% style="width:188px" %)(((
511 Temperature(DS18B20)
512 (PC13)
513 )))|(% style="width:83px" %)(((
514 ADC(PA5)
515 )))|(% style="width:184px" %)(((
516 Digital Interrupt1(PA8)
517 )))|(% style="width:186px" %)Digital Interrupt2(PA4)|(% style="width:197px" %)Digital Interrupt3(PB15)|(% style="width:100px" %)Reserved
518
519 [[image:image-20230513111203-7.png||height="324" width="975"]]
520
521
522 ==== 2.3.2.8  MOD~=8 (3ADC+1DS18B20) ====
523
524
525 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:517px" %)
526 |=(% style="width: 50px;background-color:#4F81BD;color:white" %)(((
527 **Size(bytes)**
528 )))|=(% style="width: 30px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 110px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 70px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 119px;background-color:#4F81BD;color:white" %)**1**|=(% style="width: 69px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 69px;background-color:#4F81BD;color:white" %)2
529 |Value|BAT|(% style="width:207px" %)(((
530 Temperature(DS18B20)
531 (PC13)
532 )))|(% style="width:94px" %)(((
533 ADC1(PA4)
534 )))|(% style="width:198px" %)(((
535 Digital Interrupt(PB15)
536 )))|(% style="width:84px" %)(((
537 ADC2(PA5)
538 )))|(% style="width:82px" %)(((
539 ADC3(PA8)
540 )))
541
542 [[image:image-20230513111231-8.png||height="335" width="900"]]
543
544
545 ==== 2.3.2.9  MOD~=9 (3DS18B20+ two Interrupt count mode) ====
546
547
548 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:517px" %)
549 |=(% style="width: 50px;background-color:#4F81BD;color:white" %)(((
550 **Size(bytes)**
551 )))|=(% style="width: 20px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 90px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 90px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 60px;background-color:#4F81BD;color:white" %)**1**|=(% style="width: 89px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 59px;background-color:#4F81BD;color:white" %)4|=(% style="width: 59px;background-color:#4F81BD;color:white" %)4
552 |Value|BAT|(((
553 Temperature
554 (DS18B20)(PC13)
555 )))|(((
556 Temperature2
557 (DS18B20)(PB9)
558 )))|(((
559 Digital Interrupt
560 (PB15)
561 )))|(% style="width:193px" %)(((
562 Temperature3
563 (DS18B20)(PB8)
564 )))|(% style="width:78px" %)(((
565 Count1(PA8)
566 )))|(% style="width:78px" %)(((
567 Count2(PA4)
568 )))
569
570 [[image:image-20230513111255-9.png||height="341" width="899"]]
571
572 (% style="color:blue" %)**The newly added AT command is issued correspondingly:**
573
574 (% style="color:#037691" %)** AT+INTMOD1 PA8**(%%)  pin:  Corresponding downlink:  (% style="color:#037691" %)**06 00 00 xx**
575
576 (% style="color:#037691" %)** AT+INTMOD2 PA4**(%%)  pin:  Corresponding downlink: (% style="color:#037691" %)**06 00 01 xx**
577
578 (% style="color:#037691" %)** AT+INTMOD3 PB15**(%%)  pin:  Corresponding downlink:  (% style="color:#037691" %)** 06 00 02 xx**
579
580
581 (% style="color:blue" %)**AT+SETCNT=aa,bb** 
582
583 When AA is 1, set the count of PA8 pin to BB Corresponding downlink:09 01 bb bb bb bb
584
585 When AA is 2, set the count of PA4 pin to BB Corresponding downlink:09 02 bb bb bb bb
586
587
588 ==== 2.3.2.10  MOD~=10 (PWM input capture and output mode,Since firmware v1.2)(% style="display:none" %) (%%) ====
589
590
591 (% style="color:red" %)**Note: Firmware not release, contact Dragino for testing.**
592
593 In this mode, the uplink can perform PWM input capture, and the downlink can perform PWM output.
594
595 [[It should be noted when using PWM mode.>>||anchor="H2.3.3.12A0PWMMOD"]]
596
597
598 ===== 2.3.2.10.a  Uplink, PWM input capture =====
599
600
601 [[image:image-20230817172209-2.png||height="439" width="683"]]
602
603 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:515px" %)
604 |(% style="background-color:#4f81bd; color:white; width:50px" %)**Size(bytes)**|(% style="background-color:#4f81bd; color:white; width:20px" %)**2**|(% style="background-color:#4f81bd; color:white; width:100px" %)**2**|(% style="background-color:#4f81bd; color:white; width:50px" %)**2**|(% style="background-color:#4f81bd; color:white; width:135px" %)**1**|(% style="background-color:#4f81bd; color:white; width:70px" %)**2**|(% style="background-color:#4f81bd; color:white; width:90px" %)**2**
605 |Value|Bat|(% style="width:191px" %)(((
606 Temperature(DS18B20)(PC13)
607 )))|(% style="width:78px" %)(((
608 ADC(PA4)
609 )))|(% style="width:135px" %)(((
610 PWM_Setting
611 &Digital Interrupt(PA8)
612 )))|(% style="width:70px" %)(((
613 Pulse period
614 )))|(% style="width:89px" %)(((
615 Duration of high level
616 )))
617
618 [[image:image-20230817170702-1.png||height="161" width="1044"]]
619
620
621 When the device detects the following PWM signal ,decoder will converts the pulse period and high-level duration to frequency and duty cycle.
622
623 **Frequency:**
624
625 (% class="MsoNormal" %)
626 (% lang="EN-US" %)If (% style="background-attachment:initial; background-clip:initial; background-image:initial; background-origin:initial; background-position:initial; background-repeat:initial; background-size:initial; color:blue; font-family:Arial,sans-serif" %)**AT+PWMSET**(%%)**=0, **(% lang="EN-US" %)Frequency= 1000000/(%%)Pulse period(HZ);
627
628 (% class="MsoNormal" %)
629 (% lang="EN-US" %)If (% style="background-attachment:initial; background-clip:initial; background-image:initial; background-origin:initial; background-position:initial; background-repeat:initial; background-size:initial; color:blue; font-family:Arial,sans-serif" %)**AT+PWMSET**(%%)**=1, **(% lang="EN-US" %)Frequency= 1000/(%%)Pulse period(HZ);
630
631
632 (% class="MsoNormal" %)
633 **Duty cycle:**
634
635 Duty cycle= Duration of high level/ Pulse period*100 ~(%).
636
637 [[image:image-20230818092200-1.png||height="344" width="627"]]
638
639
640 ===== 2.3.2.10.b  Uplink, PWM output =====
641
642
643 [[image:image-20230817172209-2.png||height="439" width="683"]]
644
645 (% style="background-attachment:initial; background-clip:initial; background-image:initial; background-origin:initial; background-position:initial; background-repeat:initial; background-size:initial; color:blue; font-family:Arial,sans-serif" %)**AT+PWMOUT=a,b,c**
646
647 a is the time delay of the output, the unit is ms.
648
649 b is the output frequency, the unit is HZ.
650
651 c is the duty cycle of the output, the unit is %.
652
653 (% style="background-attachment:initial; background-clip:initial; background-image:initial; background-origin:initial; background-position:initial; background-repeat:initial; background-size:initial; color:blue; font-family:Arial,sans-serif" %)**Downlink**(%%):  (% style="color:#037691" %)**0B 01 bb cc aa **
654
655 aa is the time delay of the output, the unit is ms.
656
657 bb is the output frequency, the unit is HZ.
658
659 cc is the duty cycle of the output, the unit is %.
660
661
662 For example, send a AT command: AT+PWMOUT=65535,1000,50  The PWM is always out, the frequency is 1000HZ, and the duty cycle is 50.
663
664 The oscilloscope displays as follows:
665
666 [[image:image-20231213102404-1.jpeg||height="688" width="821"]]
667
668
669 ===== 2.3.2.10.c  Downlink, PWM output =====
670
671
672 [[image:image-20230817173800-3.png||height="412" width="685"]]
673
674 Downlink:  (% style="color:#037691" %)**0B xx xx xx yy zz zz**
675
676 xx xx xx is the output frequency, the unit is HZ.
677
678 yy is the duty cycle of the output, the unit is %.
679
680 zz zz is the time delay of the output, the unit is ms.
681
682
683 For example, send a downlink command: 0B 00 61 A8 32 13 88, the frequency is 25KHZ, the duty cycle is 50, and the output time is 5 seconds.
684
685 The oscilloscope displays as follows:
686
687 [[image:image-20230817173858-5.png||height="634" width="843"]]
688
689
690
691 ==== 2.3.2.11  MOD~=11 (TEMP117)(Since firmware V1.3.0) ====
692
693
694 In this mode, uplink payload includes in total 11 bytes. Uplink packets use FPORT=2.
695
696 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:517px" %)
697 |(% style="background-color:#4f81bd; color:white; width:50px" %)**Size(bytes)**|(% style="background-color:#4f81bd; color:white; width:20px" %)**2**|(% style="background-color:#4f81bd; color:white; width:100px" %)**2**|(% style="background-color:#4f81bd; color:white; width:50px" %)**2**|(% style="background-color:#4f81bd; color:white; width:90px" %)**1**|(% style="background-color:#4f81bd; color:white; width:128px" %)**2**|(% style="background-color:#4f81bd; color:white; width:79px" %)**2**
698 |Value|Bat|(% style="width:191px" %)(((
699 Temperature(DS18B20)(PC13)
700 )))|(% style="width:78px" %)(((
701 ADC(PA4)
702 )))|(% style="width:216px" %)(((
703 Digital in(PB15)&Digital Interrupt(PA8)
704 )))|(% style="width:308px" %)(((
705 Temperature
706
707 (TEMP117)
708 )))|(% style="width:154px" %)(((
709 Reserved position, meaningless
710
711 (0x0000)
712 )))
713
714 [[image:image-20240717113113-1.png||height="352" width="793"]]
715
716 Connection:
717
718 [[image:image-20240717141528-2.jpeg||height="430" width="654"]]
719
720
721 ==== 2.3.2.12  MOD~=12 (Count+SHT31)(Since firmware V1.3.1) ====
722
723
724 This mode has total 11 bytes. As shown below:
725
726 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:517px" %)
727 |=(% style="width: 86px; background-color: rgb(79, 129, 189); color: white;" %)**Size(bytes)**|=(% style="width: 86px; background-color: rgb(79, 129, 189); color: white;" %)**2**|=(% style="width: 86px; background-color: rgb(79, 129, 189); color: white;" %)**2**|=(% style="width: 86px; background-color: rgb(79, 129, 189); color: white;" %)**2**|=(% style="width: 86px; background-color: rgb(79, 129, 189); color: white;" %)**1**|=(% style="width: 86px; background-color: rgb(79, 129, 189); color: white;" %)**4**
728 |Value|BAT|(% style="width:86px" %)(((
729 Temperature_SHT31
730 )))|(% style="width:86px" %)(((
731 Humidity_SHT31
732 )))|(% style="width:86px" %)(((
733 Digital in(PB15)
734 )))|(% style="width:86px" %)(((
735 Count(PA8)
736 )))
737
738 [[image:image-20240717150948-5.png||height="389" width="979"]]
739
740 Wiring example:
741
742 [[image:image-20240717152224-6.jpeg||height="359" width="680"]]
743
744
745 === 2.3.3  ​Decode payload ===
746
747
748 While using TTN V3 network, you can add the payload format to decode the payload.
749
750 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/1656378466788-734.png?rev=1.1||alt="1656378466788-734.png"]]
751
752 The payload decoder function for TTN V3 are here:
753
754 SN50v3-LB/LS TTN V3 Payload Decoder:  [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>url:https://github.com/dragino/dragino-end-node-decoder]]
755
756
757 ==== 2.3.3.1 Battery Info ====
758
759
760 Check the battery voltage for SN50v3-LB/LS.
761
762 Ex1: 0x0B45 = 2885mV
763
764 Ex2: 0x0B49 = 2889mV
765
766
767 ==== 2.3.3.2  Temperature (DS18B20) ====
768
769
770 If there is a DS18B20 connected to PC13 pin. The temperature will be uploaded in the payload.
771
772 More DS18B20 can check the [[3 DS18B20 mode>>||anchor="H2.3.2.4MOD3D4283xDS18B2029"]]
773
774 (% style="color:blue" %)**Connection:**
775
776 [[image:image-20230512180718-8.png||height="538" width="647"]]
777
778
779 (% style="color:blue" %)**Example**:
780
781 If payload is: 0105H:  (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree
782
783 If payload is: FF3FH :  (FF3F & 8000 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
784
785 (FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative)
786
787
788 ==== 2.3.3.3 Digital Input ====
789
790
791 The digital input for pin PB15,
792
793 * When PB15 is high, the bit 1 of payload byte 6 is 1.
794 * When PB15 is low, the bit 1 of payload byte 6 is 0.
795
796 (% class="wikigeneratedid" id="H2.3.3.4A0AnalogueDigitalConverter28ADC29" %)
797 (((
798 When the digital interrupt pin is set to AT+INTMODx=0, this pin is used as a digital input pin.
799
800 (% style="color:red" %)**Note: The maximum voltage input supports 3.6V.**
801
802
803 )))
804
805 ==== 2.3.3.4  Analogue Digital Converter (ADC) ====
806
807
808 The measuring range of the ADC is only about 0.1V to 1.1V The voltage resolution is about 0.24mv.
809
810 When the measured output voltage of the sensor is not within the range of 0.1V and 1.1V, the output voltage terminal of the sensor shall be divided The example in the following figure is to reduce the output voltage of the sensor by three times If it is necessary to reduce more times, calculate according to the formula in the figure and connect the corresponding resistance in series.
811
812 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20220628150112-1.png?width=285&height=241&rev=1.1||alt="image-20220628150112-1.png" height="241" width="285"]]
813
814
815 (% style="color:red" %)**Note: If the ADC type sensor needs to be powered by SN50_v3, it is recommended to use +5V to control its switch.Only sensors with low power consumption can be powered with VDD.**
816
817
818 The position of PA5 on the hardware after **LSN50 v3.3** is changed to the position shown in the figure below, and the collected voltage becomes one-sixth of the original.
819
820 [[image:image-20230811113449-1.png||height="370" width="608"]]
821
822
823
824 ==== 2.3.3.5 Digital Interrupt ====
825
826
827 Digital Interrupt refers to pin PA8, and there are different trigger methods. When there is a trigger, the SN50v3-LB/LS will send a packet to the server.
828
829 (% style="color:blue" %)** Interrupt connection method:**
830
831 [[image:image-20230513105351-5.png||height="147" width="485"]]
832
833
834 (% style="color:blue" %)**Example to use with door sensor :**
835
836 The door sensor is shown at right. It is a two wire magnetic contact switch used for detecting the open/close status of doors or windows.
837
838 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/1656379210849-860.png?rev=1.1||alt="1656379210849-860.png"]]
839
840 When the two pieces are close to each other, the 2 wire output will be short or open (depending on the type), while if the two pieces are away from each other, the 2 wire output will be the opposite status. So we can use SN50v3-LB/LS interrupt interface to detect the status for the door or window.
841
842
843 (% style="color:blue" %)**Below is the installation example:**
844
845 Fix one piece of the magnetic sensor to the door and connect the two pins to SN50v3-LB/LS as follows:
846
847 * (((
848 One pin to SN50v3-LB/LS's PA8 pin
849 )))
850 * (((
851 The other pin to SN50v3-LB/LS's VDD pin
852 )))
853
854 Install the other piece to the door. Find a place where the two pieces will be close to each other when the door is closed. For this particular magnetic sensor, when the door is closed, the output will be short, and PA8 will be at the VCC voltage.
855
856 Door sensors have two types: (% style="color:blue" %)** NC (Normal close)**(%%) and (% style="color:blue" %)**NO (normal open)**(%%). The connection for both type sensors are the same. But the decoding for payload are reverse, user need to modify this in the IoT Server decoder.
857
858 When door sensor is shorted, there will extra power consumption in the circuit, the extra current is 3v3/R14 = 3v3/1Mohm = 3uA which can be ignored.
859
860 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/1656379283019-229.png?rev=1.1||alt="1656379283019-229.png"]]
861
862 The above photos shows the two parts of the magnetic switch fitted to a door.
863
864 The software by default uses the falling edge on the signal line as an interrupt. We need to modify it to accept both the rising edge (0v ~-~-> VCC , door close) and the falling edge (VCC ~-~-> 0v , door open) as the interrupt.
865
866 The command is:
867
868 (% style="color:blue" %)**AT+INTMOD1=1   ** (%%) ~/~/  (more info about INMOD please refer** **[[**AT Command Manual**>>url:http://www.dragino.com/downloads/index.php?dir=LSN50-LoRaST/&file=DRAGINO_LSN50_AT_Commands_v1.5.1.pdf]]**. **)
869
870 Below shows some screen captures in TTN V3:
871
872 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/1656379339508-835.png?rev=1.1||alt="1656379339508-835.png"]]
873
874
875 In **MOD=1**, user can use byte 6 to see the status for door open or close. TTN V3 decoder is as below:
876
877 door= (bytes[6] & 0x80)? "CLOSE":"OPEN";
878
879
880 ==== 2.3.3.6 I2C Interface (SHT20 & SHT31) ====
881
882
883 The SDA and SCK are I2C interface lines. You can use these to connect to an I2C device and get the sensor data.
884
885 We have made an example to show how to use the I2C interface to connect to the SHT20/ SHT31 Temperature and Humidity Sensor.
886
887 (% style="color:red" %)**Notice: Different I2C sensors have different I2C commands set and initiate process, if user want to use other I2C sensors, User need to re-write the source code to support those sensors. SHT20/ SHT31 code in SN50v3-LB/LS will be a good reference.**
888
889
890 Below is the connection to SHT20/ SHT31. The connection is as below:
891
892 [[image:image-20230610170152-2.png||height="501" width="846"]]
893
894
895 The device will be able to get the I2C sensor data now and upload to IoT Server.
896
897 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/1656379664142-345.png?rev=1.1||alt="1656379664142-345.png"]]
898
899 Convert the read byte to decimal and divide it by ten.
900
901 **Example:**
902
903 Temperature:  Read:0116(H) = 278(D)  Value:  278 /10=27.8℃;
904
905 Humidity:    Read:0248(H)=584(D)  Value:  584 / 10=58.4, So 58.4%
906
907 If you want to use other I2C device, please refer the SHT20 part source code as reference.
908
909
910 ==== 2.3.3.7  ​Distance Reading ====
911
912
913 Refer [[Ultrasonic Sensor section>>||anchor="H2.3.3.8UltrasonicSensor"]].
914
915
916 ==== 2.3.3.8 Ultrasonic Sensor ====
917
918
919 This Fundamental Principles of this sensor can be found at this link: [[https:~~/~~/wiki.dfrobot.com/Weather_-_proof_Ultrasonic_Sensor_with_Separate_Probe_SKU~~_~~__SEN0208>>url:https://wiki.dfrobot.com/Weather_-_proof_Ultrasonic_Sensor_with_Separate_Probe_SKU___SEN0208]]
920
921 The SN50v3-LB/LS detects the pulse width of the sensor and converts it to mm output. The accuracy will be within 1 centimeter. The usable range (the distance between the ultrasonic probe and the measured object) is between 24cm and 600cm.
922
923 The working principle of this sensor is similar to the (% style="color:blue" %)**HC-SR04**(%%) ultrasonic sensor.
924
925 The picture below shows the connection:
926
927 [[image:image-20230512173903-6.png||height="596" width="715"]]
928
929
930 Connect to the SN50v3-LB/LS and run (% style="color:blue" %)**AT+MOD=2**(%%) to switch to ultrasonic mode (ULT).
931
932 The ultrasonic sensor uses the 8^^th^^ and 9^^th^^ byte for the measurement value.
933
934 **Example:**
935
936 Distance:  Read: 0C2D(Hex) = 3117(D)  Value:  3117 mm=311.7 cm
937
938
939 ==== 2.3.3.9  Battery Output - BAT pin ====
940
941
942 The BAT pin of SN50v3-LB/LS is connected to the Battery directly. If users want to use BAT pin to power an external sensor. User need to make sure the external sensor is of low power consumption. Because the BAT pin is always open. If the external sensor is of high power consumption. the battery of SN50v3-LB/LS will run out very soon.
943
944
945 ==== 2.3.3.10  +5V Output ====
946
947
948 SN50v3-LB/LS will enable +5V output before all sampling and disable the +5v after all sampling. 
949
950 The 5V output time can be controlled by AT Command.
951
952 (% style="color:blue" %)**AT+5VT=1000**
953
954 Means set 5V valid time to have 1000ms. So the real 5V output will actually have 1000ms + sampling time for other sensors.
955
956 By default the **AT+5VT=500**. If the external sensor which require 5v and require more time to get stable state, user can use this command to increase the power ON duration for this sensor.
957
958
959 ==== 2.3.3.11  BH1750 Illumination Sensor ====
960
961
962 MOD=1 support this sensor. The sensor value is in the 8^^th^^ and 9^^th^^ bytes.
963
964 [[image:image-20230512172447-4.png||height="416" width="712"]]
965
966
967 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/image-20220628110012-12.png?rev=1.1||alt="image-20220628110012-12.png" height="361" width="953"]]
968
969
970 ==== 2.3.3.12  PWM MOD ====
971
972
973 * (((
974 The maximum voltage that the SDA pin of SN50v3 can withstand is 3.6V, and it cannot exceed this voltage value, otherwise the chip may be burned.
975 )))
976 * (((
977 If the PWM pin connected to the SDA pin cannot maintain a high level when it is not working, you need to remove the resistor R2 or replace it with a resistor with a larger resistance, otherwise a sleep current of about 360uA will be generated. The position of the resistor is shown in the figure below:
978 )))
979
980 [[image:image-20230817183249-3.png||height="320" width="417"]]
981
982 * (((
983 The signal captured by the input should preferably be processed by hardware filtering and then connected in. The software processing method is to capture four values, discard the first captured value, and then take the middle value of the second, third, and fourth captured values.
984 )))
985 * (((
986 Since the device can only detect a pulse period of 50ms when [[AT+PWMSET=0>>||anchor="H3.3.8PWMsetting"]] (counting in microseconds), it is necessary to change the value of PWMSET according to the frequency of input capture.
987 )))
988 * (((
989 PWM Input allows low power consumption. PWM Output to achieve real-time control, you need to go to class C. Power consumption will not be low.
990
991 For PWM Output Feature, there are two consideration to see if the device can be powered by battery or have to be powered by external DC.
992
993 a) If real-time control output is required, the SN50v3-LB/LS is already operating in class C and an external power supply must be used.
994
995 b) If the output duration is more than 30 seconds, better to use external power source. 
996 )))
997
998 ==== 2.3.3.13  Working MOD ====
999
1000
1001 The working MOD info is contained in the Digital in & Digital Interrupt byte (7^^th^^ Byte).
1002
1003 User can use the 3^^rd^^ ~~ 7^^th^^  bit of this byte to see the working mod:
1004
1005 Case 7^^th^^ Byte >> 2 & 0x1f:
1006
1007 * 0: MOD1
1008 * 1: MOD2
1009 * 2: MOD3
1010 * 3: MOD4
1011 * 4: MOD5
1012 * 5: MOD6
1013 * 6: MOD7
1014 * 7: MOD8
1015 * 8: MOD9
1016 * 9: MOD10
1017
1018 == 2.4 Payload Decoder file ==
1019
1020
1021 In TTN, use can add a custom payload so it shows friendly reading
1022
1023 In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from:
1024
1025 [[https:~~/~~/github.com/dragino/dragino-end-node-decoder/tree/main/SN50_v3-LB>>https://github.com/dragino/dragino-end-node-decoder/tree/main/SN50_v3-LB]]
1026
1027
1028 == 2.5 Frequency Plans ==
1029
1030
1031 The SN50v3-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.
1032
1033 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]]
1034
1035
1036 = 3. Configure SN50v3-LB/LS =
1037
1038 == 3.1 Configure Methods ==
1039
1040
1041 SN50v3-LB/LS supports below configure method:
1042
1043 * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
1044 * 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]].
1045 * LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
1046
1047 == 3.2 General Commands ==
1048
1049
1050 These commands are to configure:
1051
1052 * General system settings like: uplink interval.
1053 * LoRaWAN protocol & radio related command.
1054
1055 They are same for all Dragino Devices which support DLWS-005 LoRaWAN Stack. These commands can be found on the wiki:
1056
1057 [[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/]]
1058
1059
1060 == 3.3 Commands special design for SN50v3-LB/LS ==
1061
1062
1063 These commands only valid for SN50v3-LB/LS, as below:
1064
1065
1066 === 3.3.1 Set Transmit Interval Time ===
1067
1068
1069 Feature: Change LoRaWAN End Node Transmit Interval.
1070
1071 (% style="color:blue" %)**AT Command: AT+TDC**
1072
1073 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
1074 |=(% 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**
1075 |(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|(((
1076 30000
1077 OK
1078 the interval is 30000ms = 30s
1079 )))
1080 |(% style="width:156px" %)AT+TDC=60000|(% style="width:137px" %)Set Transmit Interval|(((
1081 OK
1082 Set transmit interval to 60000ms = 60 seconds
1083 )))
1084
1085 (% style="color:blue" %)**Downlink Command: 0x01**
1086
1087 Format: Command Code (0x01) followed by 3 bytes time value.
1088
1089 If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01.
1090
1091 * Example 1: Downlink Payload: 0100001E  ~/~/  Set Transmit Interval (TDC) = 30 seconds
1092 * Example 2: Downlink Payload: 0100003C  ~/~/  Set Transmit Interval (TDC) = 60 seconds
1093
1094 === 3.3.2 Get Device Status ===
1095
1096
1097 Send a LoRaWAN downlink to ask the device to send its status.
1098
1099 (% style="color:blue" %)**Downlink Payload: 0x26 01**
1100
1101 Sensor will upload Device Status via **FPORT=5**. See payload section for detail.
1102
1103
1104 === 3.3.3 Set Interrupt Mode ===
1105
1106
1107 Feature, Set Interrupt mode for PB14, PB15, PA4.
1108
1109 Before using the interrupt function of the **INT** pin, users can set the interrupt triggering mode as required.
1110
1111 (% style="color:#037691" %)**AT Command:**(% style="color:blue" %)** **(% style="color:#4472c4" %)**AT+INTMODx**
1112
1113 (% style="color:#4472c4" %)**AT+INTMODx:**
1114
1115 * (% style="color:#4472c4" %)**AT+INTMOD1   **(%%)~/~/ Set the interrupt mode for (% style="background-color:yellow" %)** PB14**(%%) pin.
1116 * (% style="color:#4472c4" %)**AT+INTMOD2   **(%%)~/~/ Set the interrupt mode for (% style="background-color:yellow" %)** PB15**(%%) pin.
1117 * (% style="color:#4472c4" %)**AT+INTMOD3   **(%%)~/~/ Set the interrupt mode for (% style="background-color:yellow" %)** PA4**(%%) pin.
1118
1119 **Parameter setting:**
1120
1121 * **0:** Disable Interrupt
1122 * **1:** Trigger by rising and falling edge
1123 * **2:** Trigger by falling edge
1124 * **3: **Trigger by rising edge
1125
1126 **Example:**
1127
1128 * AT+INTMOD1=0  ~/~/Disable the PB14 pin interrupt function
1129 * AT+INTMOD2=2  ~/~/Set the interrupt of the PB15 pin to be triggered by the falling edge
1130 * AT+INTMOD3=3  ~/~/Set the interrupt of the PA4 pin to be triggered by the rising edge
1131
1132 (% style="color:#037691" %)**Downlink Command:**(% style="color:blue" %)** **(% style="color:#4472c4" %)**0x06 00 aa bb**
1133
1134 Format: Command Code (0x06) followed by 3 bytes.
1135
1136 (% style="color:#4472c4" %)**aa:**(%%) Set the corresponding pin. ((% style="background-color:yellow" %)**00**(%%): PB14 Pin;  (% style="background-color:yellow" %)**01**(%%)**: **PB15 Pin;  (% style="background-color:yellow" %)**02**(%%): PA4 Pin.)
1137
1138 (% style="color:#4472c4" %)**bb: **(%%)Set interrupt mode. ((% style="background-color:yellow" %)**00**(%%) Disable, (% style="background-color:yellow" %)**01**(%%) falling or rising, (% style="background-color:yellow" %)**02**(%%) falling, (% style="background-color:yellow" %)**03**(%%) rising)
1139
1140 **Example:**
1141
1142 * Downlink Payload: **06 00 00 01     **~/~/ Equal to AT+INTMOD1=1
1143 * Downlink Payload: **06 00 01 02     **~/~/ Equal to AT+INTMOD2=2
1144 * Downlink Payload: **06 00 02 03     **~/~/ Equal to AT+INTMOD3=3
1145
1146 === 3.3.4 Set Power Output Duration ===
1147
1148
1149 Control the output duration 5V . Before each sampling, device will
1150
1151 ~1. first enable the power output to external sensor,
1152
1153 2. keep it on as per duration, read sensor value and construct uplink payload
1154
1155 3. final, close the power output.
1156
1157 (% style="color:blue" %)**AT Command: AT+5VT**
1158
1159 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
1160 |=(% style="width: 155px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 197px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 158px;background-color:#4F81BD;color:white" %)**Response**
1161 |(% style="width:154px" %)AT+5VT=?|(% style="width:196px" %)Show 5V open time.|(% style="width:157px" %)(((
1162 500(default)
1163 OK
1164 )))
1165 |(% style="width:154px" %)AT+5VT=1000|(% style="width:196px" %)(((
1166 Close after a delay of 1000 milliseconds.
1167 )))|(% style="width:157px" %)OK
1168
1169 (% style="color:blue" %)**Downlink Command: 0x07**
1170
1171 Format: Command Code (0x07) followed by 2 bytes.
1172
1173 The first and second bytes are the time to turn on.
1174
1175 * Example 1: Downlink Payload: 070000  **~-~-->**  AT+5VT=0
1176 * Example 2: Downlink Payload: 0701F4  **~-~-->**  AT+5VT=500
1177
1178 === 3.3.5 Set Weighing parameters ===
1179
1180
1181 Feature: Working mode 5 is effective, weight initialization and weight factor setting of HX711.
1182
1183 (% style="color:blue" %)**AT Command: AT+WEIGRE,AT+WEIGAP**
1184
1185 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
1186 |=(% style="width: 155px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 197px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 158px;background-color:#4F81BD;color:white" %)**Response**
1187 |(% style="width:154px" %)AT+WEIGRE|(% style="width:196px" %)Weight is initialized to 0.|(% style="width:157px" %)OK
1188 |(% style="width:154px" %)AT+WEIGAP=?|(% style="width:196px" %)400.0|(% style="width:157px" %)OK(default)
1189 |(% style="width:154px" %)AT+WEIGAP=400.3|(% style="width:196px" %)Set the factor to 400.3.|(% style="width:157px" %)OK
1190
1191 (% style="color:blue" %)**Downlink Command: 0x08**
1192
1193 Format: Command Code (0x08) followed by 2 bytes or 4 bytes.
1194
1195 Use AT+WEIGRE when the first byte is 1, only 1 byte. When it is 2, use AT+WEIGAP, there are 3 bytes.
1196
1197 The second and third bytes are multiplied by 10 times to be the AT+WEIGAP value.
1198
1199 * Example 1: Downlink Payload: 0801  **~-~-->**  AT+WEIGRE
1200 * Example 2: Downlink Payload: 08020FA3  **~-~-->**  AT+WEIGAP=400.3
1201 * Example 3: Downlink Payload: 08020FA0  **~-~-->**  AT+WEIGAP=400.0
1202
1203 === 3.3.6 Set Digital pulse count value ===
1204
1205
1206 Feature: Set the pulse count value.
1207
1208 Count 1 is PA8 pin of mode 6 and mode 9. Count 2 is PA4 pin of mode 9.
1209
1210 (% style="color:blue" %)**AT Command: AT+SETCNT**
1211
1212 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
1213 |=(% style="width: 155px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 197px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 158px;background-color:#4F81BD;color:white" %)**Response**
1214 |(% style="width:154px" %)AT+SETCNT=1,100|(% style="width:196px" %)Initialize the count value 1 to 100.|(% style="width:157px" %)OK
1215 |(% style="width:154px" %)AT+SETCNT=2,0|(% style="width:196px" %)Initialize the count value 2 to 0.|(% style="width:157px" %)OK
1216
1217 (% style="color:blue" %)**Downlink Command: 0x09**
1218
1219 Format: Command Code (0x09) followed by 5 bytes.
1220
1221 The first byte is to select which count value to initialize, and the next four bytes are the count value to be initialized.
1222
1223 * Example 1: Downlink Payload: 090100000000  **~-~-->**  AT+SETCNT=1,0
1224 * Example 2: Downlink Payload: 0902000003E8  **~-~-->**  AT+SETCNT=2,1000
1225
1226 === 3.3.7 Set Workmode ===
1227
1228
1229 Feature: Switch working mode.
1230
1231 (% style="color:blue" %)**AT Command: AT+MOD**
1232
1233 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
1234 |=(% style="width: 155px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 197px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 158px;background-color:#4F81BD;color:white" %)**Response**
1235 |(% style="width:154px" %)AT+MOD=?|(% style="width:196px" %)Get the current working mode.|(% style="width:157px" %)(((
1236 OK
1237 )))
1238 |(% style="width:154px" %)AT+MOD=4|(% style="width:196px" %)Set the working mode to 3DS18B20s.|(% style="width:157px" %)(((
1239 OK
1240 Attention:Take effect after ATZ
1241 )))
1242
1243 (% style="color:blue" %)**Downlink Command: 0x0A**
1244
1245 Format: Command Code (0x0A) followed by 1 bytes.
1246
1247 * Example 1: Downlink Payload: 0A01  **~-~-->**  AT+MOD=1
1248 * Example 2: Downlink Payload: 0A04  **~-~-->**  AT+MOD=4
1249
1250 === 3.3.8 PWM setting ===
1251
1252
1253 Feature: Set the time acquisition unit for PWM input capture.
1254
1255 (% style="color:blue" %)**AT Command: AT+PWMSET**
1256
1257 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
1258 |=(% style="width: 155px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 225px; background-color: #4F81BD;color:white" %)**Function**|=(% style="width: 130px; background-color:#4F81BD;color:white" %)**Response**
1259 |(% style="width:154px" %)AT+PWMSET=?|(% style="width:223px" %)0|(% style="width:130px" %)(((
1260 0(default)
1261 OK
1262 )))
1263 |(% style="width:154px" %)AT+PWMSET=0|(% style="width:223px" %)The unit of PWM capture time is microsecond. The capture frequency range is between 20HZ and 100000HZ.   |(% style="width:130px" %)(((
1264 OK
1265
1266 )))
1267 |(% style="width:154px" %)AT+PWMSET=1|(% style="width:223px" %)The unit of PWM capture time is millisecond.  The capture frequency range is between 5HZ and 250HZ. |(% style="width:130px" %)OK
1268
1269 (% style="color:blue" %)**Downlink Command: 0x0C**
1270
1271 Format: Command Code (0x0C) followed by 1 bytes.
1272
1273 * Example 1: Downlink Payload: 0C00  **~-~-->**  AT+PWMSET=0
1274 * Example 2: Downlink Payload: 0C01  **~-~-->**  AT+PWMSET=1
1275
1276 **Feature: Set PWM output time, output frequency and output duty cycle.**
1277
1278 (% style="color:blue" %)**AT Command: AT+PWMOUT**
1279
1280 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
1281 |=(% style="width: 183px; background-color: #4F81BD;color:white" %)**Command Example**|=(% style="width: 193px; background-color: #4F81BD;color:white" %)**Function**|=(% style="width: 134px; background-color: #4F81BD;color:white" %)**Response**
1282 |(% style="width:183px" %)AT+PWMOUT=?|(% style="width:193px" %)0|(% style="width:137px" %)(((
1283 0,0,0(default)
1284 OK
1285 )))
1286 |(% style="width:183px" %)AT+PWMOUT=0,0,0|(% style="width:193px" %)The default is PWM input detection|(% style="width:137px" %)(((
1287 OK
1288
1289 )))
1290 |(% style="width:183px" %)AT+PWMOUT=5,1000,50|(% style="width:193px" %)(((
1291 The PWM output time is 5ms, the output frequency is 1000HZ, and the output duty cycle is 50%.
1292
1293
1294 )))|(% style="width:137px" %)(((
1295 OK
1296 )))
1297
1298 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
1299 |=(% style="width: 155px; background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 112px; background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 242px; background-color:#4F81BD;color:white" %)**parameters**
1300 |(% colspan="1" rowspan="3" style="width:155px" %)(((
1301 AT+PWMOUT=a,b,c
1302
1303
1304 )))|(% colspan="1" rowspan="3" style="width:112px" %)(((
1305 Set PWM output time, output frequency and output duty cycle.
1306
1307 (((
1308
1309 )))
1310
1311 (((
1312
1313 )))
1314 )))|(% style="width:242px" %)(((
1315 a: Output time (unit: seconds)
1316 The value ranges from 0 to 65535.
1317 When a=65535, PWM will always output.
1318 )))
1319 |(% style="width:242px" %)(((
1320 b: Output frequency (unit: HZ)
1321
1322 range 5~~100000HZ
1323 )))
1324 |(% style="width:242px" %)(((
1325 c: Output duty cycle (unit: %)
1326 The value ranges from 0 to 100.
1327 )))
1328
1329 (% style="color:blue" %)**Downlink Command: 0x0B**
1330
1331 Format: Command Code (0x0B) followed by 6 bytes.
1332
1333 0B + Output frequency (3bytes)+ Output duty cycle (1bytes)+Output time (2bytes)
1334
1335 Downlink payload:0B bb cc aa **~-~--> **AT+PWMOUT=a,b,c
1336
1337 * Example 1: Downlink Payload: 0B 0003E8 32 0005 **~-~-->**  AT+PWMOUT=5,1000,50
1338 * Example 2: Downlink Payload: 0B 0007D0 3C 000A **~-~-->**  AT+PWMOUT=10,2000,60
1339
1340 = 4. Battery & Power Cons =
1341
1342
1343 SN50v3-LB use ER26500 + SPC1520 battery pack and SN50v3-LS use 3000mAh Recharable Battery with Solar Panel. See below link for detail information about the battery info and how to replace.
1344
1345 [[**Battery Info & Power Consumption Analyze**>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
1346
1347
1348 = 5. OTA Firmware update =
1349
1350
1351 (% class="wikigeneratedid" %)
1352 **User can change firmware SN50v3-LB/LS to:**
1353
1354 * Change Frequency band/ region.
1355 * Update with new features.
1356 * Fix bugs.
1357
1358 **Firmware and changelog can be downloaded from :** **[[Firmware download link>>https://www.dropbox.com/sh/4rov7bcp6u28exp/AACt-wAySd4si5AXi8DBmvSca?dl=0]]**
1359
1360 **Methods to Update Firmware:**
1361
1362 * (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/]]**
1363 * 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]]**.
1364
1365 = 6.  Developer Guide =
1366
1367 SN50v3 is an open source project, developer can use compile their firmware for customized applications. User can get the source code from:
1368
1369 * (((
1370 Software Source Code: [[Releases · dragino/SN50v3 (github.com)>>url:https://github.com/dragino/SN50v3/releases]]
1371 )))
1372 * (((
1373 Hardware Design files:  **[[Hardware Source Files>>https://github.com/dragino/Lora/tree/master/LSN50/v3.0]].**
1374 )))
1375 * (((
1376 Compile instruction:[[Compile instruction>>https://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LA66%20LoRaWAN%20Module/Compile%20and%20Upload%20Code%20to%20ASR6601%20Platform/]]
1377 )))
1378
1379 **~1. If you want to change frequency, modify the Preprocessor Symbols.**
1380
1381 For example, change EU868 to US915
1382
1383 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/1656318662202-530.png?rev=1.1||alt="1656318662202-530.png"]]
1384
1385 **2. Compile and build**
1386
1387 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/image-20220627163212-17.png?rev=1.1||alt="image-20220627163212-17.png"]]
1388
1389 = 7. FAQ =
1390
1391 == 7.1 How to generate PWM Output in SN50v3-LB/LS? ==
1392
1393
1394 See this document: **[[Generate PWM Output on SN50v3>>https://www.dropbox.com/scl/fi/r3trcet2knujg40w0mgyn/Generate-PWM-Output-on-SN50v3.pdf?rlkey=rxsgmrhhrv62iiiwjq9sv10bn&dl=0]]**.
1395
1396
1397 == 7.2 How to put several sensors to a SN50v3-LB/LS? ==
1398
1399
1400 When we want to put several sensors to A SN50v3-LB/LS, the waterproof at the grand connector will become an issue. User can try to exchange the grand connector to below type.
1401
1402 [[Reference Supplier>>https://www.yscableglands.com/cable-glands/nylon-cable-glands/cable-gland-rubber-seal.html]].
1403
1404 [[image:image-20230810121434-1.png||height="242" width="656"]]
1405
1406
1407 = 8. Order Info =
1408
1409
1410 Part Number: (% style="color:blue" %)**SN50v3-LB-XX-YY**(%%) or (% style="color:blue" %)**SN50v3-LS-XX-YY**
1411
1412 (% style="color:red" %)**XX**(%%): The default frequency band
1413
1414 * (% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band
1415 * (% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band
1416 * (% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band
1417 * (% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band
1418 * (% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band
1419 * (% style="color:red" %)**US915**(%%): LoRaWAN US915 band
1420 * (% style="color:red" %)**IN865**(%%): LoRaWAN IN865 band
1421 * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
1422
1423 (% style="color:red" %)**YY: ** (%%)Hole Option
1424
1425 * (% style="color:red" %)**12**(%%): With M12 waterproof cable hole
1426 * (% style="color:red" %)**16**(%%): With M16 waterproof cable hole
1427 * (% style="color:red" %)**20**(%%): With M20 waterproof cable hole
1428 * (% style="color:red" %)**NH**(%%): No Hole
1429
1430 = 9. ​Packing Info =
1431
1432
1433 (% style="color:#037691" %)**Package Includes**:
1434
1435 * SN50v3-LB or SN50v3-LS LoRaWAN Generic Node
1436
1437 (% style="color:#037691" %)**Dimension and weight**:
1438
1439 * Device Size: cm
1440 * Device Weight: g
1441 * Package Size / pcs : cm
1442 * Weight / pcs : g
1443
1444 = 10. Support =
1445
1446
1447 * 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.
1448
1449 * 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>>url:http://../../../../../../D:%5C%E5%B8%82%E5%9C%BA%E8%B5%84%E6%96%99%5C%E8%AF%B4%E6%98%8E%E4%B9%A6%5CLoRa%5CLT%E7%B3%BB%E5%88%97%5Csupport@dragino.cc]]
Copyright ©2010-2024 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0