Last modified by Mengting Qiu on 2023/12/14 11:15

From version 73.10
edited by Xiaoling
on 2023/06/13 11:36
Change comment: There is no comment for this version
To version 62.4
edited by Xiaoling
on 2023/05/30 09:19
Change comment: There is no comment for this version

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,1 @@
1 -DDS45-LB -- LoRaWAN Distance Detection Sensor User Manual
1 +CPL03-LB -- LoRaWAN Pulse/Contact Sensor User Manual
Content
... ... @@ -1,8 +1,7 @@
1 1  (% style="text-align:center" %)
2 -[[image:image-20230613100900-1.png||height="650" width="650"]]
2 +[[image:image-20230530084608-2.jpeg||height="707" width="707"]]
3 3  
4 4  
5 -
6 6  **Table of Contents:**
7 7  
8 8  {{toc/}}
... ... @@ -14,24 +14,26 @@
14 14  
15 15  = 1. Introduction =
16 16  
17 -== 1.1 What is LoRaWAN Distance Detection Sensor ==
16 +== 1.1 What is CPL03-LB LoRaWAN Pulse/Contact Sensor ==
18 18  
19 19  
20 -The Dragino DDS45-LB is a (% style="color:blue" %)** LoRaWAN Distance Detection Sensor**(%%) for Internet of Things solution. It is used to measure the distance between the sensor and a flat object. The distance detection sensor is a module that uses (% style="color:blue" %)** ultrasonic sensing technology**(%%) for (% style="color:blue" %)**distance measurement**(%%), and (% style="color:blue" %)** temperature compensation**(%%) is performed internally to improve the reliability of data. The DDS45-LB can be applied to scenarios such as horizontal distance measurement, liquid level measurement, parking management system, object proximity and presence detection, intelligent trash can management system, robot obstacle avoidance, automatic control, sewer, bottom water level monitoring, etc.
19 +The Dragino CPL03-LB is a (% style="color:blue" %)**LoRaWAN Contact Sensor**(%%) for Internet of Things solution. It detects dry contact status, open time, open counts, and then upload to IoT server via LoRaWAN wireless protocol.
21 21  
22 -It detects the distance(% style="color:blue" %)**  between the measured object and the sensor**(%%), and uploads the value via wireless to LoRaWAN IoT Server.
21 +The CPL03-LB will send periodically data every day as well as for each dry contact action. It also counts the contact open times and calculate last open duration. User can also disable the uplink for each open/close event, instead, device can count each open event and uplink periodically.
23 23  
24 -The LoRa wireless technology used in DDS45-LB allows device to send data and reach extremely long ranges at low data-rates. It provides ultra-long range spread spectrum communication and high interference immunity whilst minimizing current consumption.
23 +The LoRa wireless technology used in CPL03-LB allows device to send data and reach extremely long ranges at low data-rates. It provides ultra-long range spread spectrum communication and high interference immunity whilst minimizing current consumption.
25 25  
26 -DDS45-LB (% style="color:blue" %)**supports BLE configure**(%%) and (% style="color:blue" %)**wireless OTA update**(%%) which make user easy to use.
25 +CPL03-LB (% style="color:blue" %)**supports open alarm feature**(%%), user can set open alarm for instant notice. CPL03-LB (% style="color:blue" %)**supports Datalog feature**(%%), it can save the data when there is no LoRaWAN network and uplink when network recover.
27 27  
28 -DDS45-LB is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long term use up to 5 years.
27 +CPL03-LB is designed for outdoor use. It has a weatherproof enclosure and industrial level battery to work in low to high temperatures.
29 29  
30 -Each DDS45-LB is pre-load with a set of unique keys for LoRaWAN registrations, register these keys to local LoRaWAN server and it will auto connect after power on.
29 +CPL03-LB (% style="color:blue" %)**supports BLE configure**(%%) and (% style="color:blue" %)**wireless OTA update**(%%) which make user easy to use.
31 31  
32 -[[image:image-20230613102459-3.png||height="476" width="855"]]
31 +CPL03-LB is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long term use up to 5 years.
33 33  
33 +Each CPL03-LB is pre-load with a set of unique keys for LoRaWAN registrations, register these keys to local LoRaWAN server and it will auto connect after power on.
34 34  
35 +
35 35  == 1.2 ​Features ==
36 36  
37 37  
... ... @@ -38,20 +38,17 @@
38 38  * LoRaWAN 1.0.3 Class A
39 39  * Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865
40 40  * Ultra-low power consumption
41 -* Distance Detection by Ultrasonic technology
42 -* Flat object range 30mm - 4500mm
43 -* Accuracy: ±(1cm+S*0.3%) (S: Distance)
44 -* Measure Angle: 60°
45 -* Cable Length : 25cm
42 +* Open/Close detect
43 +* Open/Close statistics
44 +* Temperature & Humidity alarm
45 +* supports open alarm feature
46 +* supports Datalog feature
46 46  * Support Bluetooth v5.1 and LoRaWAN remote configure
47 47  * Support wireless OTA update firmware
48 -* AT Commands to change parameters
49 +* Uplink on periodically and open/close event
49 49  * Downlink to change configure
50 -* IP66 Waterproof Enclosure
51 51  * 8500mAh Battery for long term use
52 52  
53 -
54 -
55 55  == 1.3 Specification ==
56 56  
57 57  
... ... @@ -82,71 +82,24 @@
82 82  
83 83  
84 84  
85 -== 1.4 Rated environmental conditions ==
83 +== 1.4 Applications ==
86 86  
87 87  
88 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %)
89 -|(% style="background-color:#d9e2f3; color:#0070c0; width:163px" %)**Item**|(% style="background-color:#d9e2f3; color:#0070c0; width:90px" %)(((
90 -**Minimum value**
91 -)))|(% style="background-color:#d9e2f3; color:#0070c0; width:70px" %)(((
92 -**Typical value**
93 -)))|(% style="background-color:#d9e2f3; color:#0070c0; width:87px" %)(((
94 -**Maximum value**
95 -)))|(% style="background-color:#d9e2f3; color:#0070c0; width:40px" %)**Unit**|(% style="background-color:#d9e2f3; color:#0070c0; width:50px" %)**Remarks**
96 -|(% style="width:174px" %)Storage temperature|(% style="width:86px" %)-25|(% style="width:66px" %)25|(% style="width:90px" %)80|(% style="width:48px" %)℃|(% style="width:203px" %)
97 -|(% style="width:174px" %)Storage humidity|(% style="width:86px" %) |(% style="width:66px" %)65%|(% style="width:90px" %)90%|(% style="width:48px" %)RH|(% style="width:203px" %)(1)
98 -|(% style="width:174px" %)Operating temperature|(% style="width:86px" %)-15|(% style="width:66px" %)25|(% style="width:90px" %)60|(% style="width:48px" %)℃|(% style="width:203px" %)
99 -|(% style="width:174px" %)Working humidity|(% style="width:86px" %)(((
100 -
86 +* Open/Close Detection
87 +* Pulse meter application
88 +* Dry Contact Detection
101 101  
102 -
103 -)))|(% style="width:66px" %)65%|(% style="width:90px" %)80%|(% style="width:48px" %)RH|(% style="width:203px" %)(1)
104 104  
105 -(((
106 -(% style="color:red" %)**Remarks: (1) a. When the ambient temperature is 0-39 ℃, the maximum humidity is 90% (non-condensing);       **
107 107  
108 -(% style="color:red" %)** b. When the ambient temperature is 40-50 ℃, the highest humidity is the highest humidity in the natural world at the current temperature (no condensation)**
92 +== 1.5 Sleep mode and working mode ==
109 109  
110 -
111 -)))
112 112  
113 -== 1.5 Effective measurement range Reference beam pattern ==
114 -
115 -
116 -(% style="color:blue" %)**1. The tested object is a white cylindrical tube made of PVC, with a height of 100cm and a diameter of 7.5cm.**
117 -
118 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS75%20-%20LoRaWAN%20Distance%20Detection%20Sensor%20User%20Manual/WebHome/1654852253176-749.png?rev=1.1||alt="1654852253176-749.png"]]
119 -
120 -
121 -(% style="color:blue" %)**2. The object to be tested is a "corrugated cardboard box" perpendicular to the central axis of 0 °, and the length * width is 60cm * 50cm.**
122 -
123 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS75%20-%20LoRaWAN%20Distance%20Detection%20Sensor%20User%20Manual/WebHome/1654852175653-550.png?rev=1.1||alt="1654852175653-550.png"]]
124 -
125 -
126 -== 1.6 Applications ==
127 -
128 -
129 -* Horizontal distance measurement
130 -* Liquid level measurement
131 -* Parking management system
132 -* Object proximity and presence detection
133 -* Intelligent trash can management system
134 -* Robot obstacle avoidance
135 -* Automatic control
136 -* Sewer
137 -* Bottom water level monitoring
138 -
139 -
140 -
141 -== 1.7 Sleep mode and working mode ==
142 -
143 -
144 144  (% 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.
145 145  
146 146  (% 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.
147 147  
148 148  
149 -== 1.8 Button & LEDs ==
100 +== 1.5 Button & LEDs ==
150 150  
151 151  
152 152  [[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675071855856-879.png]]
... ... @@ -165,14 +165,12 @@
165 165  )))
166 166  |(% 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.
167 167  
119 +== 1.6 BLE connection ==
168 168  
169 169  
170 -== 1.9 BLE connection ==
122 +S31x-LB support BLE remote configure.
171 171  
172 172  
173 -DDS45-LB support BLE remote configure.
174 -
175 -
176 176  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:
177 177  
178 178  * Press button to send an uplink
... ... @@ -182,12 +182,12 @@
182 182  If there is no activity connection on BLE in 60 seconds, sensor will shut down BLE module to enter low power mode.
183 183  
184 184  
185 -== 1.10 Pin Definitions ==
134 +== 1.7 Pin Definitions ==
186 186  
187 187  [[image:image-20230523174230-1.png]]
188 188  
189 189  
190 -== 1.11 Mechanical ==
139 +== 1.8 Mechanical ==
191 191  
192 192  
193 193  [[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143884058-338.png]]
... ... @@ -199,19 +199,13 @@
199 199  [[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675143909447-639.png]]
200 200  
201 201  
202 -(% style="color:blue" %)**Probe Mechanical:**
151 += 2. Configure S31x-LB to connect to LoRaWAN network =
203 203  
204 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS45%20-%20LoRaWAN%20Distance%20Detection%20Sensor%20User%20Manual/WebHome/1654915562090-396.png?rev=1.1||alt="1654915562090-396.png"]]
205 -
206 -
207 -= 2. Configure DDS45-LB to connect to LoRaWAN network =
208 -
209 209  == 2.1 How it works ==
210 210  
211 211  
212 -The DDS45-LB 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 DDS45-LB. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 20 minutes.
156 +The S31x-LB 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 S31x-LB. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 20 minutes.
213 213  
214 -(% style="display:none" %) (%%)
215 215  
216 216  == 2.2 ​Quick guide to connect to LoRaWAN server (OTAA) ==
217 217  
... ... @@ -218,15 +218,13 @@
218 218  
219 219  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.
220 220  
221 -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.
164 +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.
222 222  
223 -[[image:image-20230613102426-2.png||height="476" width="855"]](% style="display:none" %)
224 224  
167 +(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from S31x-LB.
225 225  
226 -(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from DDS45-LB.
169 +Each S31x-LB is shipped with a sticker with the default device EUI as below:
227 227  
228 -Each DDS45-LB is shipped with a sticker with the default device EUI as below:
229 -
230 230  [[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]]
231 231  
232 232  
... ... @@ -254,10 +254,10 @@
254 254  [[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"]]
255 255  
256 256  
257 -(% style="color:blue" %)**Step 2:**(%%) Activate on DDS45-LB
198 +(% style="color:blue" %)**Step 2:**(%%) Activate on S31x-LB
258 258  
259 259  
260 -Press the button for 5 seconds to activate the DDS45-LB.
201 +Press the button for 5 seconds to activate the S31x-LB.
261 261  
262 262  (% 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.
263 263  
... ... @@ -264,167 +264,174 @@
264 264  After join success, it will start to upload messages to TTN and you can see the messages in the panel.
265 265  
266 266  
267 -== 2.3  ​Uplink Payload ==
208 +== 2.3 ​Uplink Payload ==
268 268  
210 +=== 2.3.1 Device Status, FPORT~=5 ===
269 269  
270 -(((
271 -DDS45-LB will uplink payload via LoRaWAN with below payload format: 
272 -)))
273 273  
274 -(((
275 -Uplink payload includes in total 8 bytes.
276 -)))
213 +Users can use the downlink command(**0x26 01**) to ask S31x-LB to send device configure detail, include device configure status. S31x-LB will uplink a payload via FPort=5 to server.
277 277  
278 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %)
279 -|=(% style="width: 62.5px;background-color:#D9E2F3;color:#0070C0" %)(((
280 -**Size(bytes)**
281 -)))|=(% style="width: 62.5px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="background-color:#D9E2F3;color:#0070C0" %)1|=(% style="background-color:#D9E2F3;color:#0070C0" %)2|=(% style="background-color:#D9E2F3;color:#0070C0" %)**1**
282 -|(% style="width:62.5px" %)**Value**|(% style="width:62.5px" %)[[BAT>>||anchor="H2.3.1A0BatteryInfo"]]|(((
283 -[[Distance>>||anchor="H2.3.2A0Distance"]]
284 -(unit: mm)
285 -)))|[[Digital Interrupt (Optional)>>||anchor="H2.3.3A0InterruptPin"]]|(((
286 -[[Temperature (Optional )>>||anchor="H2.3.4A0DS18B20Temperaturesensor"]]
287 -)))|[[Sensor Flag>>||anchor="H2.3.5A0SensorFlag"]]
215 +The Payload format is as below.
288 288  
289 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS75%20-%20LoRaWAN%20Distance%20Detection%20Sensor%20User%20Manual/WebHome/1654850511545-399.png?rev=1.1||alt="1654850511545-399.png"]]
290 290  
218 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
219 +|(% colspan="6" style="background-color:#d9e2f3; color:#0070c0" %)**Device Status (FPORT=5)**
220 +|(% style="width:103px" %)**Size (bytes)**|(% style="width:72px" %)**1**|**2**|(% style="width:91px" %)**1**|(% style="width:86px" %)**1**|(% style="width:44px" %)**2**
221 +|(% 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
291 291  
292 -=== 2.3.1  Battery Info ===
223 +Example parse in TTNv3
293 293  
225 +[[image:image-20230524144422-1.png||height="174" width="1080"]]
294 294  
295 -Check the battery voltage for DDS45-LB.
296 296  
297 -Ex1: 0x0B45 = 2885mV
228 +(% style="color:#037691" %)**Sensor Model**(%%): For S31x-LB, this value is 0x0A
298 298  
299 -Ex2: 0x0B49 = 2889mV
230 +(% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
300 300  
232 +(% style="color:#037691" %)**Frequency Band**:
301 301  
302 -=== 2.3.2  Distance ===
234 +*0x01: EU868
303 303  
236 +*0x02: US915
304 304  
305 -(((
306 -Get the distance. Flat object range 30mm - 4500mm.
307 -)))
238 +*0x03: IN865
308 308  
309 -(((
310 -For example, if the data you get from the register is **0x0B 0x05**, the distance between the sensor and the measured object is(% style="color:#4472c4" %)** **
240 +*0x04: AU915
311 311  
312 -(% style="color:blue" %)**0B05(H) = 2821 (D) = 2821 mm.**
313 -)))
242 +*0x05: KZ865
314 314  
315 -* If the sensor value is 0x0000, it means system doesn't detect ultrasonic sensor.
316 -* If the sensor value lower than 0x001E (30mm), the sensor value will be 0x00.
244 +*0x06: RU864
317 317  
246 +*0x07: AS923
318 318  
248 +*0x08: AS923-1
319 319  
320 -=== 2.3.3  Interrupt Pin ===
250 +*0x09: AS923-2
321 321  
252 +*0x0a: AS923-3
322 322  
323 -This data field shows if this packet is generated by interrupt or not. [[Click here>>||anchor="H3.3.2SetInterruptMode"]] for the hardware and software set up.
254 +*0x0b: CN470
324 324  
325 -**Example:**
256 +*0x0c: EU433
326 326  
327 -0x00: Normal uplink packet.
258 +*0x0d: KR920
328 328  
329 -0x01: Interrupt Uplink Packet.
260 +*0x0e: MA869
330 330  
331 331  
332 -=== 2.3.4  DS18B20 Temperature sensor ===
263 +(% style="color:#037691" %)**Sub-Band**:
333 333  
265 +AU915 and US915:value 0x00 ~~ 0x08
334 334  
335 -This is optional, user can connect external DS18B20 sensor to the +3.3v, 1-wire and GND pin . and this field will report temperature.
267 +CN470: value 0x0B ~~ 0x0C
336 336  
337 -**Example**:
269 +Other Bands: Always 0x00
338 338  
339 -If payload is: 0105H:  (0105 & FC00 == 0), temp = 0105H /10 = 26.1 degree
340 340  
341 -If payload is: FF3FH :  (FF3F & FC00 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
272 +(% style="color:#037691" %)**Battery Info**:
342 342  
274 +Check the battery voltage.
343 343  
344 -=== 2.3.5  Sensor Flag ===
276 +Ex1: 0x0B45 = 2885mV
345 345  
278 +Ex2: 0x0B49 = 2889mV
346 346  
347 -(((
348 -0x01: Detect Ultrasonic Sensor
349 -)))
350 350  
351 -(((
352 -0x00: No Ultrasonic Sensor
281 +=== 2.3.2  Sensor Data. FPORT~=2 ===
282 +
283 +
284 +Sensor Data is uplink via FPORT=2
285 +
286 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %)
287 +|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)(((
288 +**Size(bytes)**
289 +)))|=(% style="width: 40px;background-color:#D9E2F3;color:#0070C0" %)2|=(% style="width: 90px;background-color:#D9E2F3;color:#0070C0" %)4|=(% style="width: 150px; background-color: #D9E2F3;color:#0070C0" %)1|=(% style="width: 80px; background-color: #D9E2F3;color:#0070C0" %)**2**|=(% style="width: 80px; background-color: #D9E2F3;color:#0070C0" %)2
290 +|(% style="width:99px" %)Value|(% style="width:69px" %)(((
291 +Battery
292 +)))|(% style="width:130px" %)(((
293 +Unix TimeStamp
294 +)))|(% style="width:194px" %)(((
295 +Alarm Flag & MOD& Level of PA8
296 +)))|(% style="width:106px" %)(((
297 +Temperature
298 +)))|(% style="width:97px" %)(((
299 +Humidity
353 353  )))
354 354  
302 +[[image:image-20230524144456-2.png||height="180" width="1142"]]
355 355  
356 -=== 2.3.6  Decode payload in The Things Network ===
357 357  
305 +==== (% style="color:#4472c4" %)**Battery**(%%) ====
358 358  
359 -While using TTN network, you can add the payload format to decode the payload.
307 +Sensor Battery Level.
360 360  
361 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS75%20-%20LoRaWAN%20Distance%20Detection%20Sensor%20User%20Manual/WebHome/1654850829385-439.png?rev=1.1||alt="1654850829385-439.png"]]
309 +Ex1: 0x0B45 = 2885mV
362 362  
363 -The payload decoder function for TTN V3 is here:
311 +Ex2: 0x0B49 = 2889mV
364 364  
365 -(((
366 -DDS45-LB TTN V3 Payload Decoder:  [[ttps:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]]
367 -)))
368 368  
369 369  
370 -== 2.4  Uplink Interval ==
315 +==== (% style="color:#4472c4" %)**Temperature**(%%) ====
371 371  
317 +**Example**:
372 372  
373 -The DDS45-LB by default uplink the sensor data every 20 minutes. User can change this interval by AT Command or LoRaWAN Downlink Command. See this link: [[Change Uplink Interval>>||anchor="H3.3.1SetTransmitIntervalTime"]]
319 +If payload is: 0105H:  (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree
374 374  
321 +If payload is: FF3FH :  (FF3F & 8000 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
375 375  
376 -== 2.5  ​Show Data in DataCake IoT Server ==
323 +(FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative
377 377  
378 378  
379 -(((
380 -[[DATACAKE>>url:https://datacake.co/]] provides a human friendly interface to show the sensor data, once we have data in TTN, we can use [[DATACAKE>>url:https://datacake.co/]] to connect to TTN and see the data in DATACAKE. Below are the steps:
381 -)))
326 +==== (% style="color:#4472c4" %)**Humidity**(%%) ====
382 382  
383 383  
384 -(((
385 -(% style="color:blue" %)**Step 1**(%%)**: Be sure that your device is programmed and properly connected to the network at this time.**
386 -)))
329 +Read:0x(0197)=412    Value:  412 / 10=41.2, So 41.2%
387 387  
388 -(((
389 -(% style="color:blue" %)**Step 2**(%%)**: To configure the Application to forward data to DATACAKE you will need to add integration. To add the DATACAKE integration, perform the following steps:**
390 -)))
391 391  
332 +==== (% style="color:#4472c4" %)**Alarm Flag & MOD & Level of PA8**(%%) ====
392 392  
393 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS75%20-%20LoRaWAN%20Distance%20Detection%20Sensor%20User%20Manual/WebHome/1654592790040-760.png?rev=1.1||alt="1654592790040-760.png"]]
394 394  
335 +**Example:**
395 395  
396 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS75%20-%20LoRaWAN%20Distance%20Detection%20Sensor%20User%20Manual/WebHome/1654592800389-571.png?rev=1.1||alt="1654592800389-571.png"]]
337 +If payload & 0x01 = 0x01  **~-~->** This is an Alarm Message.It means that the temperature and humidity exceed the alarm value or trigger an interrupt.
397 397  
339 +If payload & 0x01 = 0x00  **~-~->** This is a normal uplink message, no alarm.
398 398  
399 -(% style="color:blue" %)**Step 3**(%%)**: Create an account or log in Datacake.**
341 +If payload & 0x80>>7 = 0x01  **~-~->** The PA8 is low level.
400 400  
401 -(% style="color:blue" %)**Step 4**(%%)**: Search the DDS45-LB and add DevEUI.**
343 +If payload & 0x80>>7 =0x00  **~-~->** The PA8 is high level.
402 402  
403 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS75%20-%20LoRaWAN%20Distance%20Detection%20Sensor%20User%20Manual/WebHome/1654851029373-510.png?rev=1.1||alt="1654851029373-510.png"]]
345 +If payload >> 2 = 0x00  **~-~->**  means MOD=1, This is a sampling uplink message.
404 404  
347 +If payload >> 2 = 0x31  **~-~->**  means MOD=31, this message is a reply message for polling, this message contains the alarm settings. see [[this link>>path:#HPolltheAlarmsettings:]] for detail. 
405 405  
406 -After added, the sensor data arrive TTN V3, it will also arrive and show in Datacake.
407 407  
408 -[[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-20220610165129-11.png?width=1088&height=595&rev=1.1||alt="image-20220610165129-11.png"]]
350 +== 2.4 Payload Decoder file ==
409 409  
410 410  
353 +In TTN, use can add a custom payload so it shows friendly reading
411 411  
412 -== 2.6 Datalog Feature ==
355 +In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from:
413 413  
357 +[[https:~~/~~/github.com/dragino/dragino-end-node-decoder/tree/main/S31-LB%26S31B-LB>>https://github.com/dragino/dragino-end-node-decoder/tree/main/S31-LB%26S31B-LB]]
414 414  
415 -Datalog Feature is to ensure IoT Server can get all sampling data from Sensor even if the LoRaWAN network is down. For each sampling, DDS45-LB will store the reading for future retrieving purposes.
416 416  
360 +== 2.5 Datalog Feature ==
417 417  
418 -=== 2.6.1 Ways to get datalog via LoRaWAN ===
419 419  
363 +Datalog Feature is to ensure IoT Server can get all sampling data from Sensor even if the LoRaWAN network is down. For each sampling, S31x-LB will store the reading for future retrieving purposes.
420 420  
421 -Set PNACKMD=1, DDS45-LB will wait for ACK for every uplink, when there is no LoRaWAN network,DDS45-LB will mark these records with non-ack messages and store the sensor data, and it will send all messages (10s interval) after the network recovery.
422 422  
366 +=== 2.5.1 Ways to get datalog via LoRaWAN ===
367 +
368 +
369 +Set [[PNACKMD=1>>||anchor="H2.5.4DatalogUplinkpayload28FPORT3D329"]], S31x-LB will wait for ACK for every uplink, when there is no LoRaWAN network,S31x-LB will mark these records with non-ack messages and store the sensor data, and it will send all messages (10s interval) after the network recovery.
370 +
423 423  * (((
424 -a) DDS45-LB will do an ACK check for data records sending to make sure every data arrive server.
372 +a) S31x-LB will do an ACK check for data records sending to make sure every data arrive server.
425 425  )))
426 426  * (((
427 -b) DDS45-LB will send data in **CONFIRMED Mode** when PNACKMD=1, but DDS45-LB won't re-transmit the packet if it doesn't get ACK, it will just mark it as a NONE-ACK message. In a future uplink if DDS45-LB gets a ACK, DDS45-LB will consider there is a network connection and resend all NONE-ACK messages.
375 +b) S31x-LB will send data in **CONFIRMED Mode** when PNACKMD=1, but S31x-LB won't re-transmit the packet if it doesn't get ACK, it will just mark it as a NONE-ACK message. In a future uplink if S31x-LB gets a ACK, S31x-LB will consider there is a network connection and resend all NONE-ACK messages.
428 428  )))
429 429  
430 430  Below is the typical case for the auto-update datalog feature (Set PNACKMD=1)
... ... @@ -432,10 +432,10 @@
432 432  [[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-20220703111700-2.png?width=1119&height=381&rev=1.1||alt="图片-20220703111700-2.png" height="381" width="1119"]]
433 433  
434 434  
435 -=== 2.6.2 Unix TimeStamp ===
383 +=== 2.5.2 Unix TimeStamp ===
436 436  
437 437  
438 -DDS45-LB uses Unix TimeStamp format based on
386 +S31x-LB uses Unix TimeStamp format based on
439 439  
440 440  [[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-20220523001219-11.png?width=627&height=97&rev=1.1||alt="图片-20220523001219-11.png" height="97" width="627"]]
441 441  
... ... @@ -449,66 +449,146 @@
449 449  So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25
450 450  
451 451  
452 -=== 2.6.3 Set Device Time ===
400 +=== 2.5.3 Set Device Time ===
453 453  
454 454  
455 455  User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command.
456 456  
457 -Once DDS45-LB Joined LoRaWAN network, it will send the MAC command (DeviceTimeReq) and the server will reply with (DeviceTimeAns) to send the current time to DDS45-LB. If DDS45-LB fails to get the time from the server, DDS45-LB will use the internal time and wait for next time request (AT+SYNCTDC to set the time request period, default is 10 days).
405 +Once S31x-LB Joined LoRaWAN network, it will send the MAC command (DeviceTimeReq) and the server will reply with (DeviceTimeAns) to send the current time to S31x-LB. If S31x-LB fails to get the time from the server, S31x-LB will use the internal time and wait for next time request (AT+SYNCTDC to set the time request period, default is 10 days).
458 458  
459 459  (% style="color:red" %)**Note: LoRaWAN Server need to support LoRaWAN v1.0.3(MAC v1.0.3) or higher to support this MAC command feature, Chirpstack,TTN V3 v3 and loriot support but TTN V3 v2 doesn't support. If server doesn't support this command, it will through away uplink packet with this command, so user will lose the packet with time request for TTN V3 v2 if SYNCMOD=1.**
460 460  
461 461  
462 -=== 2.6.4 Poll sensor value ===
410 +=== 2.5.4 Datalog Uplink payload (FPORT~=3) ===
463 463  
464 464  
465 -Users can poll sensor values based on timestamps. Below is the downlink command.
413 +The Datalog uplinks will use below payload format.
466 466  
467 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:425.818px" %)
468 -|(% colspan="4" style="background-color:#d9e2f3; color:#0070c0; width:423px" %)**Downlink Command to poll Open/Close status (0x31)**
469 -|(% style="width:58px" %)**1byte**|(% style="width:127px" %)**4bytes**|(% style="width:124px" %)**4bytes**|(% style="width:114px" %)**1byte**
470 -|(% style="width:58px" %)31|(% style="width:127px" %)Timestamp start|(% style="width:124px" %)Timestamp end|(% style="width:114px" %)Uplink Interval
415 +**Retrieval data payload:**
471 471  
417 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %)
418 +|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)(((
419 +**Size(bytes)**
420 +)))|=(% style="width: 40px; background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 55px; background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 65px; background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 180px; background-color:#D9E2F3;color:#0070C0" %)**1**|=(% style="width: 100px; background-color:#D9E2F3;color:#0070C0" %)**4**
421 +|(% style="width:103px" %)Value|(% style="width:68px" %)(((
422 +ignore
423 +)))|(% style="width:104px" %)(((
472 472  (((
473 -Timestamp start and Timestamp end-use Unix TimeStamp format as mentioned above. Devices will reply with all data logs during this period, using the uplink interval.
425 +Humidity
474 474  )))
475 475  
476 476  (((
477 -For example, downlink command [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/CPL01%20LoRaWAN%20Outdoor%20PulseContact%20%20Sensor%20Manual/WebHome/image-20220518162852-1.png?rev=1.1||alt="image-20220518162852-1.png"]]
429 +
478 478  )))
431 +)))|(% style="width:87px" %)(((
432 +Temperature
433 +)))|(% style="width:178px" %)(((
434 +Poll message flag & Alarm Flag& Level of PA8
435 +)))|(% style="width:137px" %)Unix Time Stamp
479 479  
437 +**Poll message flag & Alarm Flag & Level of PA8:**
438 +
439 +[[image:image-20230524114302-1.png||height="115" width="736"]]
440 +
441 +
442 +**No ACK Message**:  1: This message means this payload is fromn Uplink Message which doesn't get ACK from the server before ( for **PNACKMD=1** feature)
443 +
444 +**Poll Message Flag**: 1: This message is a poll message reply.
445 +
446 +* Poll Message Flag is set to 1.
447 +
448 +* Each data entry is 11 bytes, to save airtime and battery, devices will send max bytes according to the current DR and Frequency bands.
449 +
450 +For example, in US915 band, the max payload for different DR is:
451 +
452 +**a) DR0:** max is 11 bytes so one entry of data
453 +
454 +**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
455 +
456 +**c) DR2:** total payload includes 11 entries of data
457 +
458 +**d) DR3: **total payload includes 22 entries of data.
459 +
460 +If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0   
461 +
462 +**Example:**
463 +
464 +If S31x-LB has below data inside Flash:
465 +
466 +[[image:image-20230524114654-2.png]]
467 +
468 +
469 +If user sends below downlink command: 31646D84E1646D856C05
470 +
471 +Where : Start time: 646D84E1 = time 23/5/24 03:30:41
472 +
473 + Stop time: 646D856C= time 23/5/24 03:33:00
474 +
475 +
476 +**S31x-LB will uplink this payload.**
477 +
478 +[[image:image-20230524114826-3.png||height="448" width="1244"]]
479 +
480 480  (((
481 -Is to check 2021/11/12 12:00:00 to 2021/11/12 15:00:00's data
481 +00 00 02 36 01 10 40 64 6D 84 E1 00 00 02 37 01 10 40 64 6D 84 F8 00 00 02 37 01 0F 40 64 6D 85 04 00 00 02 3A 01 0F 40 64 6D 85 18 00 00 02 3C 01 0F 40 64 6D 85 36 00 00 02 3D 01 0E 40 64 6D 85 3F 00 00 02 3F 01 0E 40 64 6D 85 60 00 00 02 40 01 0E 40 64 6D 85 6A
482 482  )))
483 483  
484 484  (((
485 -Uplink Internal =5s,means DDS45-LB will send one packet every 5s. range 5~~255s.
485 +Where the first 11 bytes is for the first entry:
486 486  )))
487 487  
488 +(((
489 +00 00 02 36 01 10 40 64 6D 84 E1
490 +)))
488 488  
492 +(((
493 +**Hum**=0x0236/10=56.6
494 +)))
495 +
496 +(((
497 +**Temp**=0x0110/10=27.2
498 +)))
499 +
500 +(((
501 +**poll message flag & Alarm Flag & Level of PA8**=0x40,means reply data,sampling uplink message,the PA8 is low level.
502 +)))
503 +
504 +(((
505 +**Unix time** is 0x646D84E1=1684899041s=23/5/24 03:30:41
506 +)))
507 +
508 +
509 +(% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||alt="数据 URI 图片" data-widget="image" draggable="true" height="15" role="presentation" title="单击并拖动以移动" width="15"]](% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220, 220, 220, 0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||alt="数据 URI 图片" draggable="true" height="15" role="presentation" title="单击并拖动以移动" width="15"]](% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" title="单击并拖动以调整大小" %)的(% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||alt="数据 URI 图片" data-widget="image" draggable="true" height="15" role="presentation" title="单击并拖动以移动" width="15"]](% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220, 220, 220, 0.5); display:none" tabindex="-1" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||alt="数据 URI 图片" draggable="true" height="15" role="presentation" title="单击并拖动以移动" width="15"]](% aria-label="数据 URI 图像图像小部件" contenteditable="false" role="region" style="background-image:url(http://wiki1.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" tabindex="-1" title="单击并拖动以调整大小" %)的
510 +
511 +== 2.6 Temperature Alarm Feature ==
512 +
513 +
514 +S31x-LB work flow with Alarm feature.
515 +
516 +
517 +[[image:image-20230524110125-3.png||height="768" width="1115"]]
518 +
519 +
520 +
489 489  == 2.7 Frequency Plans ==
490 490  
491 491  
492 -The DDS45-LB uses OTAA mode and below frequency plans by default. If user want to use it with different frequency plan, please refer the AT command sets.
524 +The S31x-LB uses OTAA mode and below frequency plans by default. If user want to use it with different frequency plan, please refer the AT command sets.
493 493  
494 494  [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]]
495 495  
496 496  
497 -= 3. Configure DDS45-LB =
529 += 3. Configure S31x-LB =
498 498  
499 499  == 3.1 Configure Methods ==
500 500  
501 501  
502 -DDS45-LB supports below configure method:
534 +S31x-LB supports below configure method:
503 503  
504 504  * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
505 -
506 506  * 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]].
507 -
508 508  * LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
509 509  
510 -
511 -
512 512  == 3.2 General Commands ==
513 513  
514 514  
... ... @@ -515,7 +515,6 @@
515 515  These commands are to configure:
516 516  
517 517  * General system settings like: uplink interval.
518 -
519 519  * LoRaWAN protocol & radio related command.
520 520  
521 521  They are same for all Dragino Devices which support DLWS-005 LoRaWAN Stack. These commands can be found on the wiki:
... ... @@ -523,25 +523,21 @@
523 523  [[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/]]
524 524  
525 525  
526 -== 3.3 Commands special design for DDS45-LB ==
553 +== 3.3 Commands special design for S31x-LB ==
527 527  
528 528  
529 -These commands only valid for DDS45-LB, as below:
556 +These commands only valid for S31x-LB, as below:
530 530  
531 531  
532 532  === 3.3.1 Set Transmit Interval Time ===
533 533  
534 534  
535 -(((
536 536  Feature: Change LoRaWAN End Node Transmit Interval.
537 -)))
538 538  
539 -(((
540 540  (% style="color:blue" %)**AT Command: AT+TDC**
541 -)))
542 542  
543 543  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
544 -|=(% style="width: 156px;background-color:#D9E2F3; color:#0070c0" %)**Command Example**|=(% style="width: 137px;background-color:#D9E2F3; color:#0070c0" %)**Function**|=(% style="background-color:#D9E2F3; color:#0070c0" %)**Response**
567 +|=(% style="width: 156px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 137px;background-color:#D9E2F3" %)**Function**|=(% style="background-color:#D9E2F3" %)**Response**
545 545  |(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|(((
546 546  30000
547 547  OK
... ... @@ -552,159 +552,196 @@
552 552  Set transmit interval to 60000ms = 60 seconds
553 553  )))
554 554  
555 -(((
556 556  (% style="color:blue" %)**Downlink Command: 0x01**
557 -)))
558 558  
559 -(((
560 560  Format: Command Code (0x01) followed by 3 bytes time value.
561 -)))
562 562  
563 -(((
564 564  If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01.
565 -)))
566 566  
567 -* (((
568 -Example 1: Downlink Payload: 0100001E  ~/~/ Set Transmit Interval (TDC) = 30 seconds
569 -)))
570 -* (((
571 -Example 2: Downlink Payload: 0100003C  ~/~/ Set Transmit Interval (TDC) = 60 seconds 
572 -)))
584 +* Example 1: Downlink Payload: 0100001E  ~/~/  Set Transmit Interval (TDC) = 30 seconds
585 +* Example 2: Downlink Payload: 0100003C  ~/~/  Set Transmit Interval (TDC) = 60 seconds
573 573  
587 +=== 3.3.2 Get Device Status ===
574 574  
575 575  
576 -=== 3.3.2 Set Interrupt Mode ===
590 +Send a LoRaWAN downlink to ask device send Alarm settings.
577 577  
592 +(% style="color:blue" %)**Downlink Payload:  **(%%)0x26 01
578 578  
579 -Feature, Set Interrupt mode for PA8 of pin.
594 +Sensor will upload Device Status via FPORT=5. See payload section for detail.
580 580  
581 -When AT+INTMOD=0 is set, PA8 is used as a digital input port.
582 582  
583 -(% style="color:blue" %)**AT Command: AT+INTMOD**
597 +=== 3.3.3 Set Temperature Alarm Threshold ===
584 584  
585 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
586 -|=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 197px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 158px;background-color:#D9E2F3;color:#0070C0" %)**Response**
587 -|(% style="width:154px" %)AT+INTMOD=?|(% style="width:196px" %)Show current interrupt mode|(% style="width:157px" %)(((
588 -0
589 -OK
590 -the mode is 0 =Disable Interrupt
591 -)))
592 -|(% style="width:154px" %)AT+INTMOD=2|(% style="width:196px" %)(((
593 -Set Transmit Interval
594 -0. (Disable Interrupt),
595 -~1. (Trigger by rising and falling edge)
596 -2. (Trigger by falling edge)
597 -3. (Trigger by rising edge)
598 -)))|(% style="width:157px" %)OK
599 599  
600 -(% style="color:blue" %)**Downlink Command: 0x06**
600 +* (% style="color:blue" %)**AT Command:**
601 601  
602 -Format: Command Code (0x06) followed by 3 bytes.
602 +(% style="color:#037691" %)**AT+SHTEMP=min,max**
603 603  
604 -This means that the interrupt mode of the end node is set to 0x000003=3 (rising edge trigger), and the type code is 06.
604 +* When min=0, and max≠0, Alarm higher than max
605 +* When min≠0, and max=0, Alarm lower than min
606 +* When min≠0 and max≠0, Alarm higher than max or lower than min
605 605  
606 -* Example 1: Downlink Payload: 06000000  ~/~/  Turn off interrupt mode
608 +Example:
607 607  
608 -* Example 2: Downlink Payload: 0600000 ~/~/  Set the interrupt mode to rising edge trigger
610 + AT+SHTEMP=0,30   ~/~/ Alarm when temperature higher than 30.
609 609  
612 +* (% style="color:blue" %)**Downlink Payload:**
610 610  
614 +(% style="color:#037691" %)**0x(0C 01 00 1E)**  (%%) ~/~/ Set AT+SHTEMP=0,30
611 611  
612 -= 4. Battery & Power Consumption =
616 +(% style="color:red" %)**(note: 3^^rd^^ byte= 0x00 for low limit(not set), 4^^th^^ byte = 0x1E for high limit: 30)**
613 613  
614 614  
615 -DDS45-LB use ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
619 +=== 3.3.4 Set Humidity Alarm Threshold ===
616 616  
617 -[[**Battery Info & Power Consumption Analyze**>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
618 618  
622 +* (% style="color:blue" %)**AT Command:**
619 619  
620 -= 5. OTA Firmware update =
624 +(% style="color:#037691" %)**AT+SHHUM=min,max**
621 621  
626 +* When min=0, and max≠0, Alarm higher than max
627 +* When min≠0, and max=0, Alarm lower than min
628 +* When min≠0 and max≠0, Alarm higher than max or lower than min
622 622  
623 -(% class="wikigeneratedid" %)
624 -User can change firmware DDS45-LB to:
630 +Example:
625 625  
626 -* Change Frequency band/ region.
632 + AT+SHHUM=70,0  ~/~/ Alarm when humidity lower than 70%.
627 627  
628 -* Update with new features.
634 +* (% style="color:blue" %)**Downlink Payload:**
629 629  
630 -* Fix bugs.
636 +(% style="color:#037691" %)**0x(0C 02 46 00)**(%%)  ~/~/ Set AT+SHTHUM=70,0
631 631  
632 -Firmware and changelog can be downloaded from : **[[Firmware download link>>url:https://www.dropbox.com/sh/a5ue0nfrzqy9nz6/AABbvlATosDJKDwBmbirVbMYa?dl=0]]**
638 +(% style="color:red" %)**(note: 3^^rd^^ byte= 0x46 for low limit (70%), 4^^th^^ byte = 0x00 for high limit (not set))**
633 633  
634 -Methods to Update Firmware:
635 635  
636 -* (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/]]
641 +=== 3.3.5 Set Alarm Interval ===
637 637  
638 -* 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]]**.
639 639  
644 +The shortest time of two Alarm packet. (unit: min)
640 640  
646 +* (% style="color:blue" %)**AT Command:**
641 641  
642 -= 6. FAQ =
648 +(% style="color:#037691" %)**AT+ATDC=30** (%%) ~/~/ The shortest interval of two Alarm packets is 30 minutes, Means is there is an alarm packet uplink, there won't be another one in the next 30 minutes.
643 643  
644 -== 6.1  What is the frequency plan for DDS45-LB? ==
650 +* (% style="color:blue" %)**Downlink Payload:**
645 645  
652 +(% style="color:#037691" %)**0x(0D 00 1E)**(%%)     **~-~--> ** Set AT+ATDC=0x 00 1E = 30 minutes
646 646  
647 -DDS45-LB use the same frequency as other Dragino products. User can see the detail from this link:  [[Introduction>>doc:Main.End Device Frequency Band.WebHome||anchor="H1.Introduction"]]
648 648  
655 +=== 3.3.6 Get Alarm settings ===
649 649  
650 -== 6.2  Can I use DDS45-LB in condensation environment? ==
651 651  
658 +Send a LoRaWAN downlink to ask device send Alarm settings.
652 652  
653 -DDS45-LB is not suitable to be used in condensation environment. Condensation on the DDS45-LB probe will affect the reading and always got 0.
660 +* (% style="color:#037691" %)**Downlink Payload:  **(%%)0x0E 01
654 654  
662 +**Example:**
655 655  
656 -= 7.  Trouble Shooting =
664 +[[image:image-20230524110211-4.png]]
657 657  
658 -== 7.1  Why I can't join TTN V3 in US915 / AU915 bands? ==
666 +**Explain:**
659 659  
668 +* Alarm & MOD bit is 0x7C, 0x7C >> 2 = 0x31: Means this message is the Alarm settings message.
660 660  
661 -It is due to channel mapping. Please see below link:  [[Frequency band>>doc:Main.LoRaWAN Communication Debug.WebHome||anchor="H2.NoticeofUS9152FCN4702FAU915Frequencyband"]]
670 +=== 3.3.7 Set Interrupt Mode ===
662 662  
663 663  
664 -== 7.2  AT Command input doesn't work ==
673 +Feature, Set Interrupt mode for PA8 of pin.
665 665  
675 +When AT+INTMOD=0 is set, PA8 is used as a digital input port.
666 666  
667 -In the case if user can see the console output but can't type input to the device. Please check if you already include the (% style="color:blue" %)**ENTER**(%%) while sending out the command. Some serial tool doesn't send (% style="color:blue" %)**ENTER**(%%) while press the send key, user need to add ENTER in their string.
677 +(% style="color:blue" %)**AT Command: AT+INTMOD**
668 668  
679 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
680 +|=(% style="width: 155px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 197px;background-color:#D9E2F3" %)**Function**|=(% style="width: 158px;background-color:#D9E2F3" %)**Response**
681 +|(% style="width:154px" %)AT+INTMOD=?|(% style="width:196px" %)Show current interrupt mode|(% style="width:157px" %)(((
682 +0
683 +OK
684 +the mode is 0 =Disable Interrupt
685 +)))
686 +|(% style="width:154px" %)AT+INTMOD=2|(% style="width:196px" %)(((
687 +Set Transmit Interval
688 +0. (Disable Interrupt),
689 +~1. (Trigger by rising and falling edge)
690 +2. (Trigger by falling edge)
691 +3. (Trigger by rising edge)
692 +)))|(% style="width:157px" %)OK
669 669  
670 -== 7.3  Why does the sensor reading show 0 or "No sensor" ==
694 +(% style="color:blue" %)**Downlink Command: 0x06**
671 671  
696 +Format: Command Code (0x06) followed by 3 bytes.
672 672  
673 -~1. The measurement object is very close to the sensor, but in the blind spot of the sensor.
698 +This means that the interrupt mode of the end node is set to 0x000003=3 (rising edge trigger), and the type code is 06.
674 674  
675 -2. Sensor wiring is disconnected
700 +* Example 1: Downlink Payload: 06000000  ~/~/  Turn off interrupt mode
701 +* Example 2: Downlink Payload: 06000003  ~/~/  Set the interrupt mode to rising edge trigger
676 676  
677 -3. Not using the correct decoder
703 +=== 3.3.8 Set Power Output Duration ===
678 678  
679 679  
680 -== 7.4  Abnormal readings The gap between multiple readings is too large or the gap between the readings and the actual value is too large ==
706 +Control the output duration 5V . Before each sampling, device will
681 681  
708 +~1. first enable the power output to external sensor,
682 682  
683 -1) Please check if there is something on the probe affecting its measurement (condensed water, volatile oil, etc.)
710 +2. keep it on as per duration, read sensor value and construct uplink payload
684 684  
685 -2) Does it change with temperature, temperature will affect its measurement
712 +3. final, close the power output.
686 686  
687 -3) If abnormal data occurs, you can turn on DEBUG mode, Please use downlink or AT COMMAN to enter DEBUG mode.
714 +(% style="color:blue" %)**AT Command: AT+5VT**
688 688  
689 -downlink command: (% style="color:blue" %)**F1 01**(%%), AT command: (% style="color:blue" %)**AT+DDEBUG=1**
716 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
717 +|=(% style="width: 155px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 197px;background-color:#D9E2F3" %)**Function**|=(% style="width: 158px;background-color:#D9E2F3" %)**Response**
718 +|(% style="width:154px" %)AT+5VT=?|(% style="width:196px" %)Show 5V open time.|(% style="width:157px" %)0 (default)
719 +OK
720 +|(% style="width:154px" %)AT+5VT=500|(% style="width:196px" %)Close after a delay of 1000 milliseconds.|(% style="width:157px" %)OK
690 690  
691 -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
722 +(% style="color:blue" %)**Downlink Command: 0x07**
692 692  
693 -[[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"]]
724 +Format: Command Code (0x07) followed by 2 bytes.
694 694  
726 +The first and second bytes are the time to turn on.
695 695  
696 -Its original payload will be longer than other data. Even though it is being parsed, it can be seen that it is abnormal data.
728 +* Example 1: Downlink Payload: 070000  **~-~-->**  AT+5VT=0
729 +* Example 2: Downlink Payload: 0701F4  **~-~-->**  AT+5VT=500
697 697  
698 -Please send the data to us for check.
731 += 4. Battery & Power Consumption =
699 699  
700 700  
701 -= 8. Order Info =
734 +S31x-LB use ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
702 702  
736 +[[**Battery Info & Power Consumption Analyze**>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
703 703  
704 -Part Number: (% style="color:blue" %)**DDS45-LB-XXX**
705 705  
706 -(% style="color:red" %)**XXX**(%%): **The default frequency band**
739 += 5. OTA Firmware update =
707 707  
741 +
742 +(% class="wikigeneratedid" %)
743 +User can change firmware S31x-LB to:
744 +
745 +* Change Frequency band/ region.
746 +* Update with new features.
747 +* Fix bugs.
748 +
749 +Firmware and changelog can be downloaded from : **[[Firmware download link>>url:https://www.dropbox.com/sh/kwqv57tp6pejias/AAAopYMATh1GM6fZ-VRCLrpDa?dl=0]]**
750 +
751 +
752 +Methods to Update Firmware:
753 +
754 +* (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/]]
755 +* 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]]**.
756 +
757 += 6. FAQ =
758 +
759 +
760 +
761 += 7. Order Info =
762 +
763 +
764 +Part Number: (% style="color:blue" %)**S31-LB-XX  / S31B-LB-XX**
765 +
766 +(% style="color:red" %)**XX**(%%): The default frequency band
767 +
708 708  * (% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band
709 709  
710 710  * (% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band
... ... @@ -721,14 +721,12 @@
721 721  
722 722  * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
723 723  
784 += 8. ​Packing Info =
724 724  
725 725  
726 -= 9. ​Packing Info =
727 -
728 -
729 729  (% style="color:#037691" %)**Package Includes**:
730 730  
731 -* DDS45-LB LoRaWAN Distance Detection Sensor x 1
789 +* S31x-LB LoRaWAN Temperature & Humidity Sensor
732 732  
733 733  (% style="color:#037691" %)**Dimension and weight**:
734 734  
... ... @@ -740,11 +740,9 @@
740 740  
741 741  * Weight / pcs : g
742 742  
801 += 9. Support =
743 743  
744 744  
745 -= 10. Support =
746 -
747 -
748 748  * 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.
749 749  
750 750  * 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]].
image-20230530111051-3.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -85.1 KB
Content
image-20230530111412-4.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -85.0 KB
Content
image-20230530135919-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -87.6 KB
Content
image-20230530135929-2.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -87.6 KB
Content
image-20230530140053-1.jpeg
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -1.3 MB
Content
image-20230612170349-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -164.2 KB
Content
image-20230612170943-2.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -86.4 KB
Content
image-20230612171032-3.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -86.4 KB
Content
image-20230613100900-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -184.0 KB
Content
image-20230613102426-2.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -89.3 KB
Content
image-20230613102459-3.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -89.3 KB
Content