Last modified by Mengting Qiu on 2025/07/03 16:36

From version 22.1
edited by Saxer Lin
on 2023/06/30 16:11
Change comment: There is no comment for this version
To version 1.1
edited by Edwin Chen
on 2023/04/22 23:28
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.Saxer
1 +XWiki.Edwin
Content
... ... @@ -1,5 +1,4 @@
1 -(% style="text-align:center" %)
2 -[[image:image-20230516085523-1.jpeg||height="491" width="491"]]
1 +
3 3  
4 4  
5 5  **Table of Contents:**
... ... @@ -13,64 +13,57 @@
13 13  
14 14  = 1. Introduction =
15 15  
16 -== 1.1 What is DS03A-LB LoRaWAN Door Sensor ==
15 +== 1.1 What is D2x-LB LoRaWAN Temperature Sensor ==
17 17  
18 18  
19 19  (((
20 -The Dragino DS03A-LB is a (% style="color:blue" %)**LoRaWAN Door Sensor**(%%) for Internet of Things solution. It detects door open/close status and uplinks to IoT server via LoRaWAN network. user can see the door status, open duration, open counts in the IoT Server.
19 +The Dragino D2x-LB is a (% style="color:blue" %)**LoRaWAN Temperature Sensor**(%%) for Internet of Things solution. D2x-LB has 1 ~~ 3 temperature probes. D2x-LB will convert the Temperature reading to LoRaWAN wireless data and send to IoT platform via LoRaWAN gateway.
21 21  )))
22 22  
23 23  (((
24 -The LoRa wireless technology used in DS03A-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 D2x-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 26  
27 27  (((
28 -The DS03A-LB will send periodically data every 2 hours as well as for each door open/close action. It also counts the door open times and calculates the last door open duration. Users can also disable the uplink for each open/close event, instead, DS03A-LB can count each open event and uplink periodically.
27 +The temperature sensor used in D2x-LB can (% style="color:blue" %)**measure -55°C ~~ 125°C with accuracy ±0.5°C (max ±2.0 °C)**(%%).
29 29  )))
30 30  
31 31  (((
32 -DS03A-LB supports (% style="color:blue" %)**Datalog Feature,**(%%) it can save the data when there is no LoRaWAN network and uplink when network recover.
31 +D2x-LB supports (% style="color:blue" %)**temperature alarm feature,**(%%) user can set temperature alarm for instant notice. D2x-LB supports Datalog feature, it can save the data when there is no LoRaWAN network and uplink when network recover.
33 33  )))
34 34  
35 35  (((
36 -DS03A-LB has the (% style="color:blue" %)**Open Alarm Feature**(%%), user can set this feature so the device will send an alarm if the door has been open for a certain time.
37 -
38 -DS03A-LB is designed for outdoor use. It has a weatherproof enclosure and industrial level battery to work in low to high temperatures
35 +D2x-LB has max 3 probes which measure maximum 3 temperature points.
39 39  )))
40 40  
41 41  (((
42 -DS03A-LB (% style="color:blue" %)**supports BLE configure**(%%) and (% style="color:blue" %)**wireless OTA update**(%%) which make user easy to use.
39 +D2x-LB (% style="color:blue" %)**supports BLE configure**(%%) and (% style="color:blue" %)**wireless OTA update**(%%) which make user easy to use.
43 43  )))
44 44  
45 45  (((
46 -DS03A-LB is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long term use up to 5 years.
43 +D2x-LB is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long term use up to 5 years.
47 47  )))
48 48  
49 49  (((
50 -Each DS03A-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.
47 +Each D2x-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.
51 51  )))
52 52  
53 53  
54 -[[image:image-20230522092934-2.png||height="346" width="774"]]
55 -
56 -
57 57  == 1.2 ​Features ==
58 58  
59 -
60 60  * LoRaWAN 1.0.3 Class A
61 61  * Ultra-low power consumption
55 +* 1 ~~ 3 External Temperature Probes
56 +* Measure range -55°C ~~ 125°C
57 +* Temperature alarm
62 62  * Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865
63 -* Door Open/Close detect
64 -* Door open/close statistics
65 -* Datalog Feature, Open Alarm Feature
66 66  * Support Bluetooth v5.1 and LoRaWAN remote configure
67 67  * Support wireless OTA update firmware
68 68  * Uplink on periodically
69 69  * Downlink to change configure
70 70  * 8500mAh Battery for long term use
71 -* Wall Mountable
72 -* Outdoor Use
73 73  
65 +
74 74  == 1.3 Specification ==
75 75  
76 76  
... ... @@ -79,10 +79,11 @@
79 79  * Supply Voltage: built in 8500mAh Li-SOCI2 battery , 2.5v ~~ 3.6v
80 80  * Operating Temperature: -40 ~~ 85°C
81 81  
82 -(% style="color:#037691" %)**Sensor Detect Distance:**
74 +(% style="color:#037691" %)**Temperature Sensor:**
83 83  
84 -* Wood Door: 10mm ~~ 30mm
85 -* Iron Door: 30 ~~ 45mm
76 +* Dallas DS18B20
77 +* Range: -55 to + 125°C
78 +* Accuracy ±0.5°C (max ±2.0 °C).
86 86  
87 87  (% style="color:#037691" %)**LoRa Spec:**
88 88  
... ... @@ -104,24 +104,19 @@
104 104  * Sleep Mode: 5uA @ 3.3v
105 105  * LoRa Transmit Mode: 125mA @ 20dBm, 82mA @ 14dBm
106 106  
107 -== 1.4 Applications ==
108 108  
101 +== 1.4 Sleep mode and working mode ==
109 109  
110 -[[image:Main.User Manual for LoRaWAN End Nodes.LDS03A - Outdoor LoRaWAN OpenClose Door Sensor Manual.WebHome@1654741400370-813.png]]
111 111  
112 -
113 -== 1.5 Sleep mode and working mode ==
114 -
115 -
116 116  (% 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.
117 117  
118 118  (% 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.
119 119  
120 120  
121 -== 1.6 Button & LEDs ==
109 +== 1.5 Button & LEDs ==
122 122  
123 123  
124 -[[image:Main.User Manual for LoRaWAN End Nodes.PS-LB -- LoRaWAN Pressure Sensor.WebHome@1675071855856-879.png]]
112 +[[image:1675071855856-879.png]]
125 125  
126 126  
127 127  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
... ... @@ -135,14 +135,15 @@
135 135  (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.
136 136  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.
137 137  )))
138 -|(% 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.
126 +|(% 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 D2x-LB is in Deep Sleep Mode.
139 139  
140 -== 1.7 BLE connection ==
141 141  
129 +== 1.6 BLE connection ==
142 142  
143 -DS03A-LB support BLE remote configure.
144 144  
132 +D2x-LB support BLE remote configure.
145 145  
134 +
146 146  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:
147 147  
148 148  * Press button to send an uplink
... ... @@ -152,82 +152,112 @@
152 152  If there is no activity connection on BLE in 60 seconds, sensor will shut down BLE module to enter low power mode.
153 153  
154 154  
155 -== 1.8 Pin Definitions ==
144 +== 1. Hardware Variant ==
156 156  
157 -[[image:image-20230630160843-7.png]]
158 158  
159 -== 1.9 Mechanical ==
147 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %)
148 +|=(% style="width: 102px;background-color:#D9E2F3;color:#0070C0" %)Model|=(% style="width: 190px;background-color:#D9E2F3;color:#0070C0" %)Photo|=(% style="width: 218px;background-color:#D9E2F3;color:#0070C0" %)Probe Info
149 +|(% style="width:102px" %)D20-LB|(% style="width:190px" %) |(% style="width:297px" %)(((
150 +1 x DS28B20 Probe
160 160  
152 +Cable Length : 2 meters
161 161  
162 -[[image:Main.User Manual for LoRaWAN End Nodes.LDS03A - Outdoor LoRaWAN OpenClose Door Sensor Manual.WebHome@1654741444887-479.png||height="399" width="513"]]
154 +
155 +)))
156 +|(% style="width:102px" %)D22-LB|(% style="width:190px" %) |(% style="width:297px" %)(((
157 +2 x DS28B20 Probes
163 163  
159 +Cable lengths total 1.5meters per probe
164 164  
165 -[[image:Main.User Manual for LoRaWAN End Nodes.PS-LB -- LoRaWAN Pressure Sensor.WebHome@1675143884058-338.png]]
161 +Cable Drawing: [[See This Link>>url:https://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/LSN50v2-D20/Cable_Drawing/&file=CAB0-35IC-K21G-210811.pdf]]
162 +)))
163 +|(% style="width:102px" %)(((
164 +(((
165 +D23-LB
166 +)))
166 166  
168 +(((
169 +
170 +)))
171 +)))|(% style="width:190px" %) |(% style="width:297px" %)(((
172 +3 x DS28B20 Probes
167 167  
168 -[[image:Main.User Manual for LoRaWAN End Nodes.PS-LB -- LoRaWAN Pressure Sensor.WebHome@1675143899218-599.png]]
174 +Cable lengths total 1.5meters per probe
169 169  
176 +Cable Drawing: [[See This Link>>url:https://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/LSN50v2-D20/Cable_Drawing/&file=CAB0-35IC-K31G-210811.pdf]]
177 +)))
170 170  
171 -[[image:Main.User Manual for LoRaWAN End Nodes.PS-LB -- LoRaWAN Pressure Sensor.WebHome@1675143909447-639.png]]
179 +(% style="display:none" %)
172 172  
173 173  
174 -= 2. Configure DS03A-LB to connect to LoRaWAN network =
175 175  
183 +== 1.8 Mechanical ==
184 +
185 +
186 +[[image:1675143884058-338.png]]
187 +
188 +
189 +[[image:1675143899218-599.png]]
190 +
191 +
192 +[[image:1675143909447-639.png]]
193 +
194 +
195 += 2. Configure D2x-LB to connect to LoRaWAN network =
196 +
176 176  == 2.1 How it works ==
177 177  
178 178  
179 -The DS03A-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 DS03A-LB. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 2 hours.
200 +The D2x-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 D2x-LB. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 20 minutes.
180 180  
181 181  
182 182  == 2.2 ​Quick guide to connect to LoRaWAN server (OTAA) ==
183 183  
184 184  
185 -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. (% style="display:none" %)
206 +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.
186 186  
187 -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.
188 188  
189 -[[image:image-20230522092858-1.png||height="391" width="874"]]
209 +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.
190 190  
191 191  
192 -(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from DS03A-LB.
212 +(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from D2x-LB.
193 193  
194 -Each DS03A-LB is shipped with a sticker with the default device EUI as below:
214 +Each D2x-LB is shipped with a sticker with the default device EUI as below:
195 195  
196 -[[image:image-20230426085205-1.png||height="238" width="512"]]
216 +[[image:image-20230131134744-2.jpeg]]
197 197  
198 198  
219 +
199 199  You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
200 200  
201 -(% style="display:none" %) (%%)
202 202  
203 203  (% style="color:blue" %)**Register the device**
204 204  
225 +[[image:1675144099263-405.png]]
205 205  
206 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual/WebHome/1675144099263-405.png?rev=1.1||alt="1675144099263-405.png"]](% style="display:none" %)
207 207  
208 -
209 209  (% style="color:blue" %)**Add APP EUI and DEV EUI**
210 210  
211 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual/WebHome/1675144117571-832.png?rev=1.1||alt="1675144117571-832.png"]]
230 +[[image:1675144117571-832.png]]
212 212  
213 213  
214 214  (% style="color:blue" %)**Add APP EUI in the application**
215 215  
216 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual/WebHome/1675144143021-195.png?rev=1.1||alt="1675144143021-195.png"]]
217 217  
236 +[[image:1675144143021-195.png]]
218 218  
238 +
219 219  (% style="color:blue" %)**Add APP KEY**
220 220  
221 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual/WebHome/1675144157838-392.png?rev=1.1||alt="1675144157838-392.png"]]
241 +[[image:1675144157838-392.png]]
222 222  
243 +(% style="color:blue" %)**Step 2:**(%%) Activate on D2x-LB
223 223  
224 -(% style="color:blue" %)**Step 2:**(%%) Activate on DS03A-LB
225 225  
246 +Press the button for 5 seconds to activate the D2x-LB.
226 226  
227 -Press the button for 5 seconds to activate the DS03A-LB.
248 +(% 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.
228 228  
229 -(% 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.
230 -
231 231  After join success, it will start to upload messages to TTN and you can see the messages in the panel.
232 232  
233 233  
... ... @@ -236,7 +236,7 @@
236 236  === 2.3.1 Device Status, FPORT~=5 ===
237 237  
238 238  
239 -Users can use the downlink command(**0x26 01**) to ask DS03A-LB to send device configure detail, include device configure status. DS03A-LB will uplink a payload via FPort=5 to server.
258 +Users can use the downlink command(**0x26 01**) to ask D2x-LB to send device configure detail, include device configure status. D2x-LB will uplink a payload via FPort=5 to server.
240 240  
241 241  The Payload format is as below.
242 242  
... ... @@ -248,42 +248,42 @@
248 248  
249 249  Example parse in TTNv3
250 250  
251 -[[image:image-20230630155406-1.png||height="190" width="873"]]
270 +[[image:image-20230415153147-2.png||height="220" width="1120"]]
252 252  
253 253  
254 -(% style="color:#037691" %)**Sensor Model**(%%): For DS03A-LB, this value is 0x1B
273 +(% style="color:#037691" %)**Sensor Model**(%%): For D2x-LB, this value is 0x19
255 255  
256 256  (% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
257 257  
258 258  (% style="color:#037691" %)**Frequency Band**:
259 259  
260 -0x01: EU868
279 +*0x01: EU868
261 261  
262 -0x02: US915
281 +*0x02: US915
263 263  
264 -0x03: IN865
283 +*0x03: IN865
265 265  
266 -0x04: AU915
285 +*0x04: AU915
267 267  
268 -0x05: KZ865
287 +*0x05: KZ865
269 269  
270 -0x06: RU864
289 +*0x06: RU864
271 271  
272 -0x07: AS923
291 +*0x07: AS923
273 273  
274 -0x08: AS923-1
293 +*0x08: AS923-1
275 275  
276 -0x09: AS923-2
295 +*0x09: AS923-2
277 277  
278 -0x0a: AS923-3
297 +*0x0a: AS923-3
279 279  
280 -0x0b: CN470
299 +*0x0b: CN470
281 281  
282 -0x0c: EU433
301 +*0x0c: EU433
283 283  
284 -0x0d: KR920
303 +*0x0d: KR920
285 285  
286 -0x0e: MA869
305 +*0x0e: MA869
287 287  
288 288  
289 289  (% style="color:#037691" %)**Sub-Band**:
... ... @@ -304,142 +304,121 @@
304 304  Ex2: 0x0B49 = 2889mV
305 305  
306 306  
307 -=== (% id="cke_bm_182700S" style="display:none" %) (%%)2.3.2  Sensor Configuration, FPORT~=4 ===
326 +=== 2.3.2  Sensor Data. FPORT~=2 ===
308 308  
309 309  
310 -DS03A-LB will only send this command after getting the downlink command (0x26 02) from the server.
329 +D2x-LB will uplink below payload via FPORT=2 after Joined LoRaWAN Network.
311 311  
312 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
313 -|(% colspan="5" style="background-color:#d9e2f3; color:#0070c0; width:504px" %)**Sensor Configuration FPORT=4**
314 -|**Size(bytes)**|(% style="width:75px" %)**3**|(% style="width:77px" %)**1**|(% style="width:96px" %)**1**|(% style="width:158px" %)**2**
315 -|**Value**|(% style="width:75px" %)TDC (unit:sec)|(% style="width:77px" %)Disalarm|(% style="width:96px" %)Keep status|(% style="width:158px" %)Keep time (unit: min)
331 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %)
332 +|=(% style="width: 62.5px;background-color:#D9E2F3" %)(((
333 +**Size(bytes)**
334 +)))|=(% style="width: 60px;background-color:#D9E2F3" %)2|=(% style="width: 120px;background-color:#D9E2F3" %)2|=(% style="width: 60px;background-color:#D9E2F3" %)2|=(% style="width: 65px;background-color:#D9E2F3" %)1|=(% style="width: 65px;background-color:#D9E2F3" %)**2**|=(% style="width: 65px;background-color:#D9E2F3" %)2
335 +|(% style="width:65px" %)**Value**|(((
336 +[[Battery>>||anchor="HBattery:"]]
337 +)))|(% style="width:91px" %)(((
338 +[[Temp_ Red or Temp _White>>||anchor="HTemperatureREDorTemperatureWhite:"]]
339 +)))|(% style="width:61px" %)(((
340 +ignore
341 +)))|(% style="width:91px" %)(((
342 +[[Alarm Flag>>||anchor="HAlarmFlag26MOD:"]]
343 +)))|(% style="width:99px" %)(((
344 +[[Temp_White>>||anchor="HTemperatureWhite:"]]
345 +)))|(% style="width:97px" %)(((
346 +[[Temp_Black>>||anchor="HTemperatureBlack:"]]
316 316  
317 -* (((
318 -(% style="color:blue" %)**TDC: (default: 0x001C20)**
348 +
319 319  )))
320 320  
321 -Uplink interval for the Open/Close Event, default value is 0x001C20 which is 7200 seconds = 2 hours.
351 +**Payload per each model.**
322 322  
353 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-D20-D22-D23%20LoRaWAN%20Temperature%20Sensor%20User%20Manual/WebHome/image-20220916152530-2.png?rev=1.1||alt="image-20220916152530-2.png" height="240" width="901"]]
323 323  
324 -* (((
325 -(% style="color:blue" %)**Disalarm: (default: 0)**
326 -)))
327 327  
328 - **If Disalarm = 1**, DS03A-LB will only send uplink at every TDC periodically. This is normally use for pulse meter application, in this application, there are many open/close event, and platform only care about the total number of pulse.
356 +[[image:image-20230415154139-3.png||height="215" width="1179"]]
329 329  
330 - **If Disalarm = 0**, DS03A-LB will send uplink at every TDC periodically and send data on each open/close event. This is useful for the application user need to monitor the open/close event in real-time.
331 331  
359 +==== (% style="color:#4472c4" %)**Decode corresponding probe color:**(%%) ====
332 332  
333 -(% style="color:red" %)** Note: When Disalarm=0, a high frequently open/close event will cause lots of uplink and drain battery very fast. **
361 +**D20:**
334 334  
363 +Red <~-~-> C1
335 335  
336 -* (((
337 -(% style="color:blue" %)**Keep Status & Keep Time**
338 -)))
365 +**D22:**
339 339  
340 -Shows the configure value of [[Alarm Base on Timeout Feature>>url:http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS03A%20-%20Outdoor%20LoRaWAN%20OpenClose%20Door%20Sensor%20Manual/#H3.8A0AlarmBaseonTimeout]]
367 +White <~-~-> C1 Red <~-~-> C2
341 341  
342 -[[image:image-20230630155527-3.png||height="146" width="902"]]
369 +**D23:**
343 343  
371 +White <~-~->C1 Red <~-~-> C2 Black <~-~-> C3
344 344  
345 -=== 2.3.3  Real-Time Open/Close Status, Uplink FPORT~=2 ===
346 346  
347 347  
348 -DS03A-LB will send this uplink **after** Device Status once join the LoRaWAN network successfully. And DS03A-LB will send uplinks when:
375 +==== (% style="color:#4472c4" %)**Battery:**(%%) ====
349 349  
350 -* Every 2 hours, this interval [[can be changed>>||anchor="H3.3.1SetTransmitIntervalTime"]].
351 -* There is an Open/Close event.  (This info can be disabled by AT+DISALARM=1)
377 +Sensor Battery Level.
352 352  
353 -Uplink Payload totals 11 bytes.
379 +Ex1: 0x0B45 = 2885mV
354 354  
355 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
356 -|=(% colspan="5" style="background-color:#D9E2F3;color:#0070C0;width:515px" %)**Real-Time Open/Close Status, FPORT=2**
357 -|(% style="width:94px" %)**Size(bytes)**|(% style="width:77px" %)**1**|(% style="width:97px" %)**3**|(% style="width:143px" %)**3**|(% style="width:107px" %)**4**
358 -|(% style="width:95px" %)**Value**|(% style="width:78px" %)Status & [[Alarm>>||anchor="H3.3.4A0AlarmBaseonTimeout"]]|(% style="width:98px" %)Total open door events|(% style="width:144px" %)(((
359 -The last door open duration (unit: min)
360 -)))|(% style="width:108px" %)[[Unix TimeStamp>>||anchor="H2.5.2UnixTimeStamp"]]
381 +Ex2: 0x0B49 = 2889mV
361 361  
362 -**Status & Alarm:**
363 363  
364 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
365 -|(% style="background-color:#d9e2f3; color:#0070c0; width:59px" %)**Size(bit)**|(% style="background-color:#d9e2f3; color:#0070c0; width:79px" %)**bit7**|(% style="background-color:#d9e2f3; color:#0070c0; width:79px" %)**bit6**|(% style="background-color:#d9e2f3; color:#0070c0; width:59px" %)**[bit5:bit2]**|(% style="background-color:#d9e2f3; color:#0070c0; width:129px" %)**bit1**|(% style="background-color:#d9e2f3; color:#0070c0; width:110px" %)**bit0**
366 -|(% style="width:76px" %)**Value**|(% style="width:79px" %)(((
367 -No ACK Message
368 -)))|(% style="width:84px" %)(((
369 -Poll Message Flag
370 -)))|(% style="width:96px" %)Reserve|(% style="width:197px" %)[[Enable/disable Timeout Alarm>>||anchor="H3.3.3A0Enable2FDisableAlarm"]]
371 -0: No Alarm; 1: Alarm|(% style="width:104px" %)Status 0: Close, 1: Open
372 372  
373 -[[image:image-20230630155451-2.png||height="246" width="928"]]
385 +==== (% style="color:#4472c4" %)**Temperature RED or Temperature White :**(%%) ====
374 374  
375 -[[image:image-20230630155908-6.png||height="295" width="927"]]
387 +**This point to the Red probe in D20-LB or the probe of D22-LB/D23-LB White**
376 376  
389 +**Example**:
377 377  
378 -=== 2.3.4  Historical Door Open/Close Event, FPORT~=3 ===
391 +If payload is: 0105H:  (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree
379 379  
393 +If payload is: FF3FH :  (FF3F & 8000 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
380 380  
381 -DS03A-LB stores sensor values and users can retrieve these history values via the [[downlink command>>||anchor="H2.5DatalogFeature"]].
395 +(FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative
382 382  
383 -The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time open/close status.
384 384  
385 -* (((
386 -Each data entry is 11 bytes and has the same structure as [[Real-Time open/close status>>||anchor="H2.3.2A0Real-TimeOpen2FCloseStatus2CUplinkFPORT3D2"]], to save airtime and battery, DS03A-LB will send max bytes according to the current DR and Frequency bands.
387 -)))
388 388  
389 -For example, in the US915 band, the max payload for different DR is:
399 +==== (% style="color:#4472c4" %)**Temperature White:**(%%) ====
390 390  
391 -(((
392 -**~1. DR0**: max is 11 bytes so one entry of data
393 -)))
394 394  
395 -(((
396 -**2. DR1**: max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
397 -)))
402 +**This point to the Red probe in D22-LB/D23-LB**
398 398  
399 -(((
400 -**3. DR2**: total payload includes 11 entries of data
401 -)))
402 402  
403 -(((
404 -**4. DR3**: total payload includes 22 entries of data.
405 -)))
405 +**Example**:
406 406  
407 -If DS03A-LB doesn't have any data in the polling time. It will uplink 11 bytes of 0
407 +If payload is: 0105H:  (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree
408 408  
409 -[[image:image-20230630155556-4.png||height="146" width="938"]]
409 +If payload is: FF3FH :  (FF3F & 8000 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
410 410  
411 -**Downlink:**
411 +(FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative)
412 412  
413 -0x31 64 9E 7D 34 64 9E 7E 9C 05
414 414  
415 415  
416 -**Uplink:**
415 +==== (% style="color:#4472c4" %)**Temperature Black:**(%%) ====
417 417  
418 -45 00 00 00 00 00 00 64 9E 7D 48 40 00 00 00 00 00 63 64 9E 7D 9C 41 00 00 01 00 00 63 64 9E 7D A4 40 00 00 01 00 00 8D 64 9E 7E 31 43 00 00 02 00 00 8D 64 9E 7E 44 48 00 00 02 00 00 1F 64 9E 7E 59 4B 00 00 03 00 00 1F 64 9E 7E 6B
419 419  
418 +**This point to the BLACK probe in D23-LB**
420 420  
421 -**Parsed Value:**
422 422  
423 -[COUNTMOD, TDC_FLAG, ALARM,  DOOR_STATUS, DOOR_OPEN_TIMES, LAST_DOOR_OPEN_DURATION, TIME]
421 +**Example**:
424 424  
423 +If payload is: 0105H:  (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree
425 425  
426 -[SUM,YES,FALSE,OPEN,0,0,2023-06-30 06:59:20],
425 +If payload is: FF3FH :  (FF3F & 8000 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
427 427  
428 -[SUM,NO,FALSE,CLOSE,0,99,2023-06-30 07:00:44],
427 +FF3F & 8000:Judge whether the highest bit is 1, when the highest bit is 1, it is negative)
429 429  
430 -[SUM,NO,FALSE,OPEN, 1,99,2023-06-30 07:00:52],
431 431  
432 -[SUM,NO,FALSE,CLOSE,1,141,2023-06-30 07:03:13],
433 433  
434 -[SUM,NO,TRUE,OPEN, 2,141,2023-06-30 07:03:32],
431 +==== (% style="color:#4472c4" %)**Alarm Flag& MOD:**(%%) ====
435 435  
436 -[PART,NO,FALSE,CLOSE,2,31,2023-06-30 07:03:53],
437 437  
438 -[PART,NO,TRUE,OPEN, 3,31,2023-06-30 07:04:11],
434 +**Example:**
439 439  
440 -[[image:image-20230630155751-5.png||height="188" width="809"]]
436 +If payload & 0x01 = 0x01  **~-~->** This is an Alarm Message
441 441  
438 +If payload & 0x01 = 0x00  **~-~->** This is a normal uplink message, no alarm
442 442  
440 +
443 443  == 2.4 Payload Decoder file ==
444 444  
445 445  
... ... @@ -455,26 +455,25 @@
455 455  == 2.5 Datalog Feature ==
456 456  
457 457  
458 -(% style="color:blue" %)**Datalog Feature** (%%)is to ensure IoT Server can get all sampling data from Sensor even if the LoRaWAN network is down. For each sampling, DS03A-LB will store the reading for future retrieving purposes.
456 +Datalog Feature is to ensure IoT Server can get all sampling data from Sensor even if the LoRaWAN network is down. For each sampling, D2x-LB will store the reading for future retrieving purposes.
459 459  
460 460  
461 461  === 2.5.1 Ways to get datalog via LoRaWAN ===
462 462  
463 463  
464 -Set PNACKMD=1, DS03A-LB will wait for ACK for every uplink, when there is no LoRaWAN network,DS03A-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.
462 +Set [[PNACKMD=1>>||anchor="H2.5.4DatalogUplinkpayloadA028FPORT3D329"]], D2x-LB will wait for ACK for every uplink, when there is no LoRaWAN network,D2x-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.
465 465  
466 -* a) DS03A-LB will do an ACK check for data records sending to make sure every data arrive server.
467 -* b) DS03A-LB will send data in **CONFIRMED Mode** when PNACKMD=1, but DS03A-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 DS03A-LB gets a ACK, DS03A-LB will consider there is a network connection and resend all NONE-ACK Message.
464 +* a) D2x-LB will do an ACK check for data records sending to make sure every data arrive server.
465 +* b) D2x-LB will send data in **CONFIRMED Mode** when PNACKMD=1, but D2x-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 D2x-LB gets a ACK, D2x-LB will consider there is a network connection and resend all NONE-ACK Message.
468 468  
469 -Below is the typical case for the Datalog Feature (Set PNACKMD=1)
467 +Below is the typical case for the auto-update datalog feature (Set PNACKMD=1)
470 470  
471 471  [[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="image-20220703111700-2.png" height="381" width="1119"]]
472 472  
473 -
474 474  === 2.5.2 Unix TimeStamp ===
475 475  
476 476  
477 -DS03A-LB uses Unix TimeStamp format based on
474 +D2x-LB uses Unix TimeStamp format based on
478 478  
479 479  [[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="image-20220523001219-11.png" height="97" width="627"]]
480 480  
... ... @@ -492,55 +492,116 @@
492 492  
493 493  User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command.
494 494  
495 -Once DS03A-LB Joined LoRaWAN network, it will send the MAC command (DeviceTimeReq) and the server will reply with (DeviceTimeAns) to send the current time to DS03A-LB. If DS03A-LB fails to get the time from the server, DS03A-LB will use the internal time and wait for next time request (AT+SYNCTDC to set the time request period, default is 10 days).
492 +Once D2x-LB Joined LoRaWAN network, it will send the MAC command (DeviceTimeReq) and the server will reply with (DeviceTimeAns) to send the current time to D2x-LB. If D2x-LB fails to get the time from the server, D2x-LB will use the internal time and wait for next time request (AT+SYNCTDC to set the time request period, default is 10 days).
496 496  
497 -(% 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 and loriot support but TTN 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 v2 if SYNCMOD=1.**
494 +(% 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.**
498 498  
499 499  
500 -== 2.6 ​Show Data in DataCake IoT Server ==
497 +=== 2.5.4 Datalog Uplink payloa (FPORT~=3) ===
501 501  
502 502  
503 -Datacake IoT platform provides a human-friendly interface to show the sensor data, once we have sensor data in TTN V3, we can use Datacake to connect to TTN V3 and see the data in Datacake. Below are the steps:
500 +The Datalog poll reply uplink will use below payload format.
504 504  
502 +**Retrieval data payload:**
505 505  
506 -(% style="color:blue" %)**Step 1:**(%%)** Link TTNv3 to Datacake.**[[https:~~/~~/docs.datacake.de/lorawan/lns/thethingsindustries#create-integration-on-tti>>url:https://docs.datacake.de/lorawan/lns/thethingsindustries#create-integration-on-tti]]
504 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %)
505 +|=(% style="width: 90px;background-color:#D9E2F3" %)(((
506 +**Size(bytes)**
507 +)))|=(% style="width: 60px; background-color: rgb(217, 226, 243);" %)**2**|=(% style="width: 60px; background-color: rgb(217, 226, 243);" %)**2**|=(% style="width: 115px; background-color: rgb(217, 226, 243);" %)**2**|=(% style="width: 104px; background-color: rgb(217, 226, 243);" %)**1**|=(% style="width: 80px; background-color: rgb(217, 226, 243);" %)**4**
508 +|(% style="width:93px" %)**Value**|(% style="width:54px" %)(((
509 +[[Temp_Black>>||anchor="HTemperatureBlack:"]]
510 +)))|(% style="width:54px" %)[[Temp_White>>||anchor="HTemperatureWhite:"]]|(% style="width:87px" %)[[Temp_ Red or Temp _White>>||anchor="HTemperatureREDorTemperatureWhite:"]]|(% style="width:104px" %)Poll message flag & Ext|(% style="width:55px" %)[[Unix Time Stamp>>||anchor="H2.5.2UnixTimeStamp"]]
507 507  
508 -(% style="color:blue" %)**Step 2:**(%%)** Configure DS03A-LB in Datacake.**
512 +**Poll message flag & Ext:**
509 509  
510 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS03A%20-%20Outdoor%20LoRaWAN%20OpenClose%20Door%20Sensor%20Manual/WebHome/1654746350207-427.png?rev=1.1||alt="1654746350207-427.png"]]
514 +[[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-20221006192726-1.png?width=754&height=112&rev=1.1||alt="image-20221006192726-1.png" height="112" width="754"]]
511 511  
516 +**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)
512 512  
513 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS03A%20-%20Outdoor%20LoRaWAN%20OpenClose%20Door%20Sensor%20Manual/WebHome/1654747162439-840.png?rev=1.1||alt="1654747162439-840.png"]]
518 +**Poll Message Flag**: 1: This message is a poll message reply.
514 514  
520 +* Poll Message Flag is set to 1.
515 515  
516 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS03A%20-%20Outdoor%20LoRaWAN%20OpenClose%20Door%20Sensor%20Manual/WebHome/1654746405400-203.png?rev=1.1||alt="1654746405400-203.png"]]
522 +* Each data entry is 11 bytes, to save airtime and battery, devices will send max bytes according to the current DR and Frequency bands.
517 517  
524 +For example, in US915 band, the max payload for different DR is:
518 518  
519 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS03A%20-%20Outdoor%20LoRaWAN%20OpenClose%20Door%20Sensor%20Manual/WebHome/1654746763908-732.png?rev=1.1||alt="1654746763908-732.png"]]
526 +**a) DR0:** max is 11 bytes so one entry of data
520 520  
528 +**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
521 521  
522 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS03A%20-%20Outdoor%20LoRaWAN%20OpenClose%20Door%20Sensor%20Manual/WebHome/1654746716087-684.png?rev=1.1||alt="1654746716087-684.png"]]
530 +**c) DR2:** total payload includes 11 entries of data
523 523  
532 +**d) DR3: **total payload includes 22 entries of data.
524 524  
525 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS03A%20-%20Outdoor%20LoRaWAN%20OpenClose%20Door%20Sensor%20Manual/WebHome/1654746693868-718.png?rev=1.1||alt="1654746693868-718.png"]]
534 +If devise doesn't have any data in the polling time. Device will uplink 11 bytes of 0   
526 526  
527 527  
528 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS03A%20-%20Outdoor%20LoRaWAN%20OpenClose%20Door%20Sensor%20Manual/WebHome/1654746674738-826.png?rev=1.1||alt="1654746674738-826.png"]]
537 +**Example:**
529 529  
539 +If D2x-LB has below data inside Flash:
530 530  
531 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS03A%20-%20Outdoor%20LoRaWAN%20OpenClose%20Door%20Sensor%20Manual/WebHome/1654746646379-591.png?rev=1.1||alt="1654746646379-591.png"]]
541 +[[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-20220523144455-1.png?width=735&height=335&rev=1.1||alt="image-20220523144455-1.png" height="335" width="735"]]
532 532  
543 +If user sends below downlink command: 3160065F9760066DA705
533 533  
534 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS03A%20-%20Outdoor%20LoRaWAN%20OpenClose%20Door%20Sensor%20Manual/WebHome/1654746549277-209.png?rev=1.1||alt="1654746549277-209.png"]]
545 +Where : Start time: 60065F97 = time 21/1/19 04:27:03
535 535  
547 + Stop time: 60066DA7= time 21/1/19 05:27:03
536 536  
537 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS03A%20-%20Outdoor%20LoRaWAN%20OpenClose%20Door%20Sensor%20Manual/WebHome/1654746593411-887.png?rev=1.1||alt="1654746593411-887.png"]]
538 538  
550 +**D2x-LB will uplink this payload.**
539 539  
552 +[[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-13.png?width=727&height=421&rev=1.1||alt="image-20220523001219-13.png" height="421" width="727"]]
553 +
554 +(((
555 +__**7FFF089801464160065F97**__ **__7FFF__ __088E__ __014B__ __41__ __60066009__** 7FFF0885014E41600660667FFF0875015141600662BE7FFF086B015541600665167FFF08660155416006676E7FFF085F015A41600669C67FFF0857015D4160066C1E
556 +)))
557 +
558 +(((
559 +Where the first 11 bytes is for the first entry:
560 +)))
561 +
562 +(((
563 +7FFF089801464160065F97
564 +)))
565 +
566 +(((
567 +**Ext sensor data**=0x7FFF/100=327.67
568 +)))
569 +
570 +(((
571 +**Temp**=0x088E/100=22.00
572 +)))
573 +
574 +(((
575 +**Hum**=0x014B/10=32.6
576 +)))
577 +
578 +(((
579 +**poll message flag & Ext**=0x41,means reply data,Ext=1
580 +)))
581 +
582 +(((
583 +**Unix time** is 0x60066009=1611030423s=21/1/19 04:27:03
584 +)))
585 +
586 +
587 +(% aria-label="Data URI image image widget" 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==||data-widget="image" draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% aria-label="Data URI image image widget" 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==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% aria-label="Data URI image image widget" 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="Click and drag to resize" %)​(% aria-label="Data URI image image widget" 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==||data-widget="image" draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% aria-label="Data URI image image widget" 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==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% aria-label="Data URI image image widget" 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="Click and drag to resize" %)​
588 +
589 +== 2.6 Temperature Alarm Feature ==
590 +
591 +
592 +D2x-LB work flow with Alarm feature.
593 +
594 +
595 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-D20-D22-D23%20LoRaWAN%20Temperature%20Sensor%20User%20Manual/WebHome/image-20220623090437-1.png?rev=1.1||alt="image-20220623090437-1.png"]]
596 +
597 +
540 540  == 2.7 Frequency Plans ==
541 541  
542 542  
543 -The DS03A-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.
601 +The D2x-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.
544 544  
545 545  [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]]
546 546  
... ... @@ -548,20 +548,23 @@
548 548  == 2.8 ​Firmware Change Log ==
549 549  
550 550  
551 -**Firmware download link: **[[https:~~/~~/www.dropbox.com/sh/b0uwyzjs4px4eao/AADvI7fPRwsFKTglEmaRRuaaa?dl=0>>https://www.dropbox.com/sh/b0uwyzjs4px4eao/AADvI7fPRwsFKTglEmaRRuaaa?dl=0]]
609 +**Firmware download link:**
552 552  
611 +[[https:~~/~~/www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0>>url:https://www.dropbox.com/sh/gf1glloczbzz19h/AABbuYI4WY6VdAmpXo6o1V2Ka?dl=0]]
553 553  
554 -= 3. Configure DS03A-LB =
555 555  
614 += 3. Configure D2x-LB =
615 +
556 556  == 3.1 Configure Methods: ==
557 557  
558 558  
559 -DS03A-LB supports below configure method:
619 +D2x-LB supports below configure method:
560 560  
561 561  * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
562 562  * AT Command via UART Connection : See [[Connection>>http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H2.3UARTConnectionforSN50v3basemotherboard]].
563 563  * LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
564 564  
625 +
565 565  == 3.2 General Commands ==
566 566  
567 567  
... ... @@ -575,10 +575,10 @@
575 575  [[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/]]
576 576  
577 577  
578 -== 3.3 Commands special design for DS03A-LB ==
639 +== 3.3 Commands special design for D2x-LB ==
579 579  
580 580  
581 -These commands only valid for DS03A-LB, as below:
642 +These commands only valid for D2x-LB, as below:
582 582  
583 583  
584 584  === 3.3.1 Set Transmit Interval Time ===
... ... @@ -589,7 +589,7 @@
589 589  (% style="color:blue" %)**AT Command: AT+TDC**
590 590  
591 591  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
592 -|=(% 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**
653 +|=(% style="width: 156px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 137px;background-color:#D9E2F3" %)**Function**|=(% style="background-color:#D9E2F3" %)**Response**
593 593  |(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|(((
594 594  30000
595 595  OK
... ... @@ -609,6 +609,7 @@
609 609  * Example 1: Downlink Payload: 0100001E  ~/~/  Set Transmit Interval (TDC) = 30 seconds
610 610  * Example 2: Downlink Payload: 0100003C  ~/~/  Set Transmit Interval (TDC) = 60 seconds
611 611  
673 +
612 612  === 3.3.2 Get Device Status ===
613 613  
614 614  
... ... @@ -619,182 +619,119 @@
619 619  Sensor will upload Device Status via FPORT=5. See payload section for detail.
620 620  
621 621  
622 -=== 3.3.3  Enable / Disable Alarm ===
684 +=== 3.3.3 Set Alarm Thredhold ===
623 623  
624 624  
625 -Feature: Enable/Disable Alarm for open/close event. Default value 0.
687 +(% style="color:blue" %)**1.  Set for All Probes:**
626 626  
627 -(% style="color:blue" %)**AT Command: **
689 +(% style="color:#037691" %)**AT+18ALARM=min,max**
628 628  
629 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %)
630 -|(% style="background-color:#d9e2f3; color:#0070c0; width:154px" %)**Command Example**|(% style="background-color:#d9e2f3; color:#0070c0; width:278px" %)**Function**|(% style="background-color:#d9e2f3; color:#0070c0; width:88px" %)**Response**
631 -|(% style="width:154px" %)AT+DISALARM=1|(% style="width:278px" %)End node will only send packets in TDC time.|OK
632 -|(% style="width:154px" %)AT+DISALARM=0|(% style="width:278px" %)End node will send packets in TDC time or status change for door sensor|OK
691 +* When min=0, and max≠0, Alarm trigger when higher than max
692 +* When min≠0, and max=0, Alarm trigger when lower than min
693 +* When min≠0 and max≠0, Alarm trigger when higher than max or lower than min
633 633  
634 -(% style="color:blue" %)**Downlink Command: **
695 +**Example:**
635 635  
636 -0xA7 0 ~/~/ Same As AT+DISALARM=1
697 + AT+18ALARM=-10,30  ~/~/ Alarm when < -10 or higher than 30.
637 637  
638 -0xA7 00  ~/~/ Same As AT+DISALARM=0
639 639  
700 +* (% style="color:blue" %)**Downlink Payload:**
640 640  
641 -=== 3.3.4  Alarm Base on Timeout ===
702 +0x(0B F6 1E)   ~/~/ Same as AT+18ALARM=-10,30
642 642  
704 +(note: 0x1E= 30, 0xF6 means: 0xF6-0x100 = -10)
643 643  
644 -DS03A-LB can monitor the timeout for a status change, this feature can be used to monitor some events such as door opening too long etc. Related Parameters are:
645 645  
707 +(% style="color:blue" %)**2.  Set for Separate Probe:**
646 646  
647 -* (((
648 -(% style="color:blue" %)**Keep Status: Status to be monitor**
649 -)))
709 +(% style="color:#037691" %)**AT+18ALARM=min,max,index**
650 650  
651 -(% style="color:#037691" %)**Keep Status = 1**(%%): Monitor Close to Open event
711 +Index:
652 652  
653 -(% style="color:#037691" %)**Keep Status = 0**(%%): Monitor Open to Close event
713 +* 1: Temperature_Red
714 +* 2: Temperature_White
715 +* 3: Temperature_Black
654 654  
717 +**Example:**
655 655  
656 -* (((
657 -(% style="color:blue" %)**Keep Time: Timeout to send an Alarm**
658 -)))
719 + AT+18ALARM=-10,30,1   ~/~/ Alarm when temperature_red < -10 or higher than 30.
659 659  
660 -Range 0 ~~ 65535(0xFFFF) seconds.
661 661  
662 -If (% style="color:#037691" %)**keep time = 0**(%%), Disable Alarm Base on Timeout feature.
722 +* (% style="color:blue" %)**Downlink Payload:**
663 663  
664 -If (% style="color:#037691" %)**keep time > 0**(%%), device will monitor the keep status event and send an alarm when status doesn't change after timeout.
724 +0x(0B F6 1E 01)   ~/~/ Same as AT+18ALARM=-10,30,1
665 665  
726 +(note: 0x1E= 30, 0xF6 means: 0xF6-0x100 = -10)
666 666  
667 -(% style="color:blue" %)**AT Command to configure:**
668 668  
669 -* (((
670 -(% style="color:#037691" %)**AT+TTRIG=1,30** (%%) **~-~->** When the **Keep Status** change from close to open, and device remains in open status for more than 30 seconds. LDS03A will send an uplink packet, the [[Alarm bit>>||anchor="H2.3.2A0Real-TimeOpen2FCloseStatus2CUplinkFPORT3D2"]] (the second bit of 1^^st^^ byte of payload) on this uplink packet is set to 1.
671 -)))
729 +=== 3.3.4 Set Alarm Interval ===
672 672  
673 -* (((
674 -(% style="color:#037691" %)**AT+TTRIG=0,0**  (%%) **~-~-> ** Default Value, disable timeout Alarm.
675 -)))
676 676  
677 -(% style="color:blue" %)**Downlink Command to configure:**
732 +The shortest time of two Alarm packet. (unit: min)
678 678  
679 -(% style="color:#037691" %)**Command: 0xA9 aa bb cc**
734 +* (% style="color:blue" %)**AT Command:**
680 680  
681 -**A9:** Command Type Code
736 +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.
682 682  
683 -**aa:** status to be monitored
684 684  
685 -**bb cc:** timeout.
739 +* (% style="color:blue" %)**Downlink Payload:**
686 686  
741 +0x(0D 00 1E)     **~-~-->** Set AT+ATDC=0x 00 1E = 30 minutes
687 687  
688 -If user send 0xA9 01 00 1E: equal to AT+TTRIG=1,30
689 689  
690 -Or
744 +=== 3.3.5 Get Alarm settings  (什么FPORT?) ===
691 691  
692 -0xA9 00 00 00: Equal to AT+TTRIG=0,0. Disable timeout Alarm.
693 693  
747 +Send a LoRaWAN downlink to ask device send Alarm settings.
694 694  
695 -=== 3.3.5  Count Mod ===
749 +* (% style="color:#037691" %)**Downlink Payload **(%%)0x0E 01
696 696  
751 +**Example:**
697 697  
698 -(% style="color:blue" %)**AT Command:**
753 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-D20-D22-D23%20LoRaWAN%20Temperature%20Sensor%20User%20Manual/WebHome/1655948182791-225.png?rev=1.1||alt="1655948182791-225.png"]]
699 699  
700 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %)
701 -|=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 277px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 88px;background-color:#D9E2F3;color:#0070C0" %)**Response**
702 -|(% style="width:155px" %)(((
703 -AT+COUNTMOD=0
704 -)))|(% style="width:277px" %)(((
705 -the count value keeps accumulating mode
706 -)))|(% style="width:86px" %)(((
707 -OK
708 -)))
709 -|(% style="width:155px" %)(((
710 -AT+COUNTMOD=1
711 -)))|(% style="width:277px" %)(((
712 -the count value will be reset after each TDC time(Last Close Duration Reset after each uplink)
713 -)))|(% style="width:86px" %)(((
714 -OK
715 -)))
716 716  
717 -(% style="color:blue" %)**Downlink Command:**
756 +**Explain:**
718 718  
719 -Example:  0B aa  => AT+COUNTMOD = second byte
758 +* Alarm & MOD bit is 0x7C, 0x7C >> 2 = 0x31: Means this message is the Alarm settings message.
720 720  
721 721  
722 -=== 3.3.6  Interrupt Pin Channel Mod ===
761 +=== 3.3.6 Set Interrupt Mode ===
723 723  
724 724  
725 -(% style="color:blue" %)**AT Command:**
764 +Feature, Set Interrupt mode for GPIO_EXIT.
726 726  
727 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %)
728 -|=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 288px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 57px;background-color:#D9E2F3;color:#0070C0" %)**Response**
729 -|(% style="width:155px" %)(((
730 -AT+TTRCHANNEL=1
731 -)))|(% style="width:288px" %)(((
732 -set as single channel, only use PA8 pin as interrupt pin.
733 -)))|(% style="width:44px" %)(((
734 -OK
735 -)))
736 -|(% style="width:155px" %)(((
737 -AT+TTRCHANNEL=2
738 -)))|(% style="width:288px" %)(((
739 -is set as dual channel, use PA8 pin and PA4 pin as interrupt pin.
740 -)))|(% style="width:44px" %)(((
741 -OK
742 -)))
766 +(% style="color:blue" %)**AT Command: AT+INTMOD**
743 743  
744 -(% style="color:blue" %)**Downlink Command:**
745 -
746 -Example:  0D aa => AT+TTRCHANNEL = second byte
747 -
748 -
749 -=== 3.3.7  Change the name of AT+TTRIG to AT+TTRIG1 ===
750 -
751 -
752 -(% style="color:blue" %)**Downlink Command:**
753 -
754 -Example:  A9 01 aa bb cc  => AT+TTRIG1= third byte, 4th byte and 5th byte
755 -
756 -
757 -=== 3.3.8  Added AT+TTRIG2 for PB15 pin ===
758 -
759 -
760 -(% style="color:blue" %)**Downlink Command:**
761 -
762 -Example: A9 02 aa bb cc  => AT+TTRIG2= third byte, 4th byte and 5th byte
763 -
764 -
765 -=== 3.3.9  TTRIG1/2 timeout status alarm ===
766 -
767 -
768 -It needs to be used with AT+TTRIG1 or AT+TTRIG2. When TTRIG1 or TTRIG2 times out and causes an alarm, and the status does not change subsequently, an alarm packet will be sent at the alarm interval.
769 -
770 -(% style="color:blue" %)**AT Command:**
771 -
772 772  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
773 -|=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 279px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 76px;background-color:#D9E2F3;color:#0070C0" %)**Response**
774 -|(% style="width:155px" %)(((
775 -AT+TTRALARM=0
776 -)))|(% style="width:279px" %)(((
777 -disable continuous alarm
778 -)))|(% style="width:84px" %)(((
769 +|=(% style="width: 154px;background-color:#D9E2F3" %)**Command Example**|=(% style="width: 196px;background-color:#D9E2F3" %)**Function**|=(% style="width: 157px;background-color:#D9E2F3" %)**Response**
770 +|(% style="width:154px" %)AT+INTMOD=?|(% style="width:196px" %)Show current interrupt mode|(% style="width:157px" %)(((
771 +0
779 779  OK
773 +the mode is 0 =Disable Interrupt
780 780  )))
781 -|(% style="width:155px" %)(((
782 -AT+TTRALARM=60
783 -)))|(% style="width:279px" %)(((
784 -The alarm interval is 60 minutes (unit: minutes)
785 -)))|(% style="width:84px" %)(((
786 -OK
787 -)))
775 +|(% style="width:154px" %)AT+INTMOD=2|(% style="width:196px" %)(((
776 +Set Transmit Interval
777 +0. (Disable Interrupt),
778 +~1. (Trigger by rising and falling edge)
779 +2. (Trigger by falling edge)
780 +3. (Trigger by rising edge)
781 +)))|(% style="width:157px" %)OK
788 788  
789 -(% style="color:blue" %)**Downlink Command:**
783 +(% style="color:blue" %)**Downlink Command: 0x06**
790 790  
791 -Example 0C aa  => AT+TTRALARM= aa
785 +Format: Command Code (0x06) followed by 3 bytes.
792 792  
787 +This means that the interrupt mode of the end node is set to 0x000003=3 (rising edge trigger), and the type code is 06.
793 793  
789 +* Example 1: Downlink Payload: 06000000  ~/~/  Turn off interrupt mode
790 +* Example 2: Downlink Payload: 06000003  ~/~/  Set the interrupt mode to rising edge trigger
791 +
792 +
794 794  = 4. Battery & Power Consumption =
795 795  
796 796  
797 -DS03A-LB use ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
796 +D2x-LB use ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
798 798  
799 799  [[**Battery Info & Power Consumption Analyze**>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
800 800  
... ... @@ -802,7 +802,7 @@
802 802  = 5. OTA firmware update =
803 803  
804 804  
805 -User can change firmware DS03A-LB to:
804 +User can change firmware S31x-LB to:
806 806  
807 807  * Change Frequency band/ region.
808 808  * Update with new features.
... ... @@ -811,11 +811,12 @@
811 811  Firmware and changelog can be downloaded from : **[[Firmware download link>>http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/]]**
812 812  
813 813  
814 -**Methods to Update Firmware:**
813 +Methods to Update Firmware:
815 815  
816 -* (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/]]**
817 -* 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]]**.
815 +* (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/]]
816 +* 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]]**.
818 818  
818 +
819 819  = 6. FAQ =
820 820  
821 821  
... ... @@ -823,7 +823,7 @@
823 823  = 7. Order Info =
824 824  
825 825  
826 -Part Number: (% style="color:blue" %)**DS03A-LB-XX**
826 +Part Number: (% style="color:blue" %)**D20-LB-XX  / D22-LB-XX / D23-LB-XX**
827 827  
828 828  (% style="color:red" %)**XX**(%%): The default frequency band
829 829  
... ... @@ -843,12 +843,13 @@
843 843  
844 844  * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
845 845  
846 +
846 846  = 8. ​Packing Info =
847 847  
848 848  
849 849  (% style="color:#037691" %)**Package Includes**:
850 850  
851 -* DS03A-LB LoRaWAN Temperature Sensor
852 +* D2x-LB LoRaWAN Temperature Sensor
852 852  
853 853  (% style="color:#037691" %)**Dimension and weight**:
854 854  
... ... @@ -860,9 +860,10 @@
860 860  
861 861  * Weight / pcs : g
862 862  
864 +
863 863  = 9. Support =
864 864  
865 865  
866 866  * 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.
867 867  
868 -* 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]].
870 +* 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.com>>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.com]]
image-20230426085205-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -190.0 KB
Content
image-20230516085523-1.jpeg
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -1.3 MB
Content
image-20230522092858-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -156.5 KB
Content
image-20230522092934-2.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -156.5 KB
Content
image-20230522093256-3.jpeg
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -34.5 KB
Content
image-20230630155406-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Saxer
Size
... ... @@ -1,1 +1,0 @@
1 -41.8 KB
Content
image-20230630155451-2.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Saxer
Size
... ... @@ -1,1 +1,0 @@
1 -77.2 KB
Content
image-20230630155527-3.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Saxer
Size
... ... @@ -1,1 +1,0 @@
1 -39.2 KB
Content
image-20230630155556-4.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Saxer
Size
... ... @@ -1,1 +1,0 @@
1 -38.4 KB
Content
image-20230630155751-5.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Saxer
Size
... ... @@ -1,1 +1,0 @@
1 -37.1 KB
Content
image-20230630155908-6.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Saxer
Size
... ... @@ -1,1 +1,0 @@
1 -90.8 KB
Content
image-20230630160843-7.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Saxer
Size
... ... @@ -1,1 +1,0 @@
1 -511.7 KB
Content