Show last authors
1
2
3 (% style="text-align:center" %)
4 [[image:1654679359875-169.png]]
5
6
7
8
9
10
11
12
13
14 **Table of Contents:**
15
16 {{toc/}}
17
18
19
20
21
22
23
24
25 = 1. Introduction =
26
27 == 1.1 What is the LDS02 LoRaWAN Door Sensor? ==
28
29
30 (((
31 (((
32 The** Dragino LDS02 **is a **LoRaWAN Door Sensor** designed to detect door open/close status and send data to a LoRaWAN Network Server. Users can view the door status, open time, and open counts in an IoT platform by integrating it with the LoRaWAN Network Server.
33 )))
34
35 (((
36 The sensor is powered by **two AAA batteries**, making it suitable for long-term use. These batteries can provide approximately 16,000 to 70,000 uplink packets. When the batteries run out, users can easily open the enclosure and replace them with standard AAA batteries.
37
38 The device sends data periodically every day and for each door open/close action. It also **counts the number of door openings** and **calculates the duration of the last door opening**. Users can disable the uplink for each open/close event if preferred. In this mode, the device will count each event and upload the data periodically instead.
39
40 The LDS02 **features an open alarm**, which can be configured to send an alarm if the door remains open for a specified duration.
41
42 Each sensor comes with information (keys and identifiers) for LoRaWAN Network registration. Registering these keys with a LoRaWAN server allows the device to connect automatically upon powering on.
43
44
45 The following figure shows how the LDS02 is connected to a typical LoRaWAN network server.
46
47 [[image:LDS02-lorawan.jpg]]
48
49
50 )))
51 )))
52
53
54 == 1.2 Features ==
55
56
57 * LoRaWAN Class A v1.0.3
58 * Frequency Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865
59 * Door Open/Close detect
60 * Door open/close statistics
61 * 2 x AAA LR03 Batteries
62 * AT Commands to change parameters
63 * Uplink on periodically and open/close action
64 * Remote configure parameters via LoRa Downlink
65 * Firmware upgradable via program port
66
67 == 1.3 Storage & Operation Temperature ==
68
69
70 -10 ~~ 50 °C  or -40 ~~ 60 °C (depends on the battery type, see [[FAQ>>||anchor="H7.6Whyiseedifferentworkingtemperatureforthedevice3F"]])
71
72
73 == 1.4 Applications ==
74
75
76 * Smart Buildings & Home Automation
77 * Logistics and Supply Chain Management
78 * Smart Metering
79 * Smart Agriculture
80 * Smart Cities
81 * Smart Factory
82
83 == 1.5 Dimension ==
84
85
86 Units in mm
87
88 [[image:1654680563545-120.png]]
89
90
91 [[image:1654680510816-654.png]]
92
93
94 == 1.6 Firmware Change Log ==
95
96
97 (((
98 (((
99 LDS02 uses the same firmware as LDS01:[[LDS02 Image files – Download link>>https://www.dropbox.com/sh/9j35mnsxnz0y3ye/AACj5gHGOURGEHCpj-E861Mua?dl=0]]
100 )))
101 )))
102
103
104 = 2. Power ON LDS02 =
105
106
107 When receive the LDS02, open the enclosure and insert two AAA batteries to power it. The [[LED>>||anchor="H4.7LEDs"]] will blink when the device is powered on.
108
109
110 = 3. How to Install LDS02 =
111
112
113 The LDS02 has two parts: sensor and the magnet. These parts can be attached to a surface using either screws or double sided tapes.For example, if you install it to detect door open/close events, the sensor part can be attached to the door frame, and the magnet can be attached to the door panel.
114
115
116 Fixing with screws:
117
118 * Each part has a bottom lid that can be detached from its enclosure. Detach the bottom lids of both the sensor and the magnet enclosures. You will notice two holes on each bottom lid for inserting screws. First, attach the bottom lids to the surface using screws, ensuring a minimal gap between them. Then snap the top part of the enclosure onto the bottom. You will hear a clicking sound once they are securely fitted together.
119
120 [[image:image-20231222111730-1.jpeg||height="428" width="686"]]
121
122
123 Fixing with double-sided adhesive pads:
124
125 * The double-sided adhesive pad included with the LDS01 has a pre-cut section that can be attached to the bottom of the magnet enclosure (first remove the protective backing of one side only). The remaining section should be affixed to the bottom of the sensor enclosure. Once the tape is in place, remove the protective backing and secure both enclosures to the surface, ensuring a minimal gap between them.
126
127 [[image:image-20231222111834-2.jpeg||height="443" width="685"]]
128
129
130 (((
131 (((
132 When installing the LDS02, make sure to install it as shown below so that the marks align closely when the door is closed.
133 )))
134
135 (((
136 Open/Close threshold range (the minimum gap between sensor enclosure and the magnet enclosure): ~~ 10mm
137 )))
138 )))
139
140 [[image:1654680716522-793.png||height="505" width="497"]]
141
142
143 = 4. Operation Mode =
144
145 == 4.1 How It Works? ==
146
147
148 (((
149 The LDS02 is configured as a LoRaWAN Class A device by default. It contains a DevEUI, AppEUI, and AppKey, which allow it to join a LoRaWAN network using OTAA (Over-The-Air Activation). To connect the LDS02 to a LoRaWAN network, you need to configure these keys and identifiers with the LoRaWAN network server first, and then [[power on>>||anchor="H2.PowerONLDS02"]] the LDS02. The device will automatically join the network using OTAA. This device information can be found in your package, printed on a sticker.
150
151 [[image:image-20230426084924-1.png||height="229" width="493"]]
152
153 If you cannot set the device registration information, such as the DevEUI, AppEUI, and AppKey, in the network server, you must use the information generated by the network server, which differs from the information already stored on the device. In this case, you can use [[AT Command>>||anchor="H6.UseATCommand"]]s to write the new information to the device.
154 )))
155
156
157 == 4.2 Example of Joining a LoRaWAN Network ==
158
159
160 The following figure shows how the LDS02 connects to [[The Things Stack>>https://eu1.cloud.thethings.network/]]. The LDS02 sends messages (uplinks) to The Things Stack via a LoRaWAN gateway (e.g., Dragino LPS8N) and can also receive messages (downlinks) from The Things Stack. The Things Stack can be integrated with ThingsEye, allowing it to forward uplinks to ThingsEye. ThingsEye is an IoT platform used for visualizing and analyzing sensor data. You can also send downlinks from ThingsEye (via The Things Stack) to the LDS02.
161
162
163 [[image:LDS02-tts.jpg]]
164
165
166
167 === 4.2.1 Prerequisites: ===
168
169 (((
170 * The LDS02 is installed with the magnet on the door and the sensor part on the door frame to detect open/close events and send the status to the LoRaWAN server. The LDS02 will uplink two types of messages to the server:
171 ** A keep-alive message, which is sent once per day.
172 ** A door event message when a door is opened or closed ([[Alarm event can be disabled>>||anchor="H7.3CanIdisableuplinkforeacheventtosavebatterylife3F"]])
173 * The Things Stack community network coverage, or private LoRaWAN Network Coverage with any The Things Stack deployment plan.
174 )))
175
176
177 ==== 4.2.1.1 Setting up ====
178
179 * Sign up for a free account with [[The Things Stack Sandbox>>url:https://eu1.cloud.thethings.network]] if you do not have one yet.
180 * Log in to your **The Things Stack** account.
181 * Create an **application** with The Things Stack if you do not have one yet.
182 ** On the left navigation, click **Applications**.
183 ** Then click **+ Add Application** button.
184
185 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LWL02%20-%20LoRaWAN%20Door%20Sensor%20User%20Manual/WebHome/lwl02-4.png?rev=1.1||alt="lwl02-4.png"]]
186
187
188 * On the **Create Application **page, configure the following:
189 ** **Application ID**: Provide a unique identification for your application within The Things Stack.
190 ** **Application name**: (optional) Provide a descriptive name.
191 ** **Description**: (optional) Provide a description.
192 * Click on **Create application **button.
193
194 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LWL02%20-%20LoRaWAN%20Door%20Sensor%20User%20Manual/WebHome/lwl02-5.png?rev=1.1||alt="lwl02-5.png"]]
195
196
197
198 * Go to your application's page and click on the **End devices** in the left menu.
199 * On the End devices page, click on **+ Register end device**.
200
201 [[image:lds02-step-5.png]]
202
203 * Two registration options are available:
204 ** Using the LoRaWAN Device Repositoty
205 ** Manual registration
206
207 ==== 4.2.1.2 Using the LoRaWAN Device Repository ====
208
209 * On the **Register end device** page:
210 ** Select the option **Select the end device in the LoRaWAN Device Repository **under **Input method**.
211 ** Select the **End device brand**, **Model**, **Hardware version**, **Firmware version**, and **Profile (Region)** from the respective dropdown lists.
212 *** **End device brand**: Dragino Technology Co., Limited
213 *** **Model**: LDS02 - Door Sensor
214 *** **Hardware ver**: Unknown
215 *** **Firmware ver**: 1.6
216 *** **Profile (Region)**: Select the region that matches your device.
217 ** Select the **Frequency plan** that matches your device from the **Frequency plan** dropdown list.
218 ** Enter the **AppEUI** in the **JoinEUI** field and click the **Confirm** button. If The Things Stack accepts the JoinEUI you provided, it will display the message 'This end device can be registered on the network.
219
220 [[image:lds02-step-2.png]]
221
222
223
224 * In the **DevEUI** field, enter the **DevEUI**.
225 * In the **AppKey** field, enter the **AppKey.**
226 * In the **End device ID** field, enter a unique name for your LDS02 within this application.
227 * Under **After registration**, select the **View registered end device** option.
228 * Click **Register end device** button.
229
230 [[image:lds02-step-3.png]]
231
232
233 * You will be navigated to the Device overview page.
234
235 [[image:lds02-step-4.png]]
236
237
238 * Click on the Live Data tab and then **[[Power on>>||anchor="H2.PowerONLDS02"]]** the LDS02. It will first join The Things Stack network server. You can confirm this by looking for the Join-request and Join-accept messages. After successfully joining the network, the LDS02 will start sending uplink messages to The Things Stack, and you can see them in the Live Data panel.
239
240 [[image:1654681390551-993.png]]
241
242
243 == 4.3 Uplink Payload ==
244
245
246 The uplink payload is a total of 10 bytes.
247
248 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:480px" %)
249 |=(% style="width: 80px;background-color:#4F81BD;color:white" %)**Size (bytes)**|=(% style="width: 80px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 80px;background-color:#4F81BD;color:white" %)**1**|=(% style="width: 80px;background-color:#4F81BD;color:white" %)**3**|=(% style="width: 80px;background-color:#4F81BD;color:white" %)**3**|=(% style="width: 80px;background-color:#4F81BD;color:white" %)**1**
250 |Value|Door State & BAT|(((
251 MOD
252 Always:0x01
253 )))|Total open door events|(((
254 Last door open
255 duration (unit: min)
256 )))|(((
257 [[Alarm>>||anchor="H4.6AlarmBaseonTimeout"]]
258
259 (Only used in LWL02) Always:0x00
260 )))
261
262 **Example:**
263
264 [[image:1654681706301-731.png]]
265
266 [[image:1654681714641-440.png]]
267
268 (((
269
270
271 This example uses the payload decoder in The Things Stack V3: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder/tree/main/LDS02>>https://github.com/dragino/dragino-end-node-decoder/tree/main/LDS02]]
272
273
274 === 4.3.1 Battery Info ===
275
276
277 Check the battery voltage:
278
279 Example 1: 0x0B88&3FFF = 2952mV
280
281 Example 2: 0xD152&3FFF = 4434mV
282
283
284 === 4.3.2 Status ===
285
286
287 Check the door state:
288
289 **Example**:
290
291 If the payload is: **0B**:  (0000 1011&1000 0000== 0), **DOOR_OPEN_STATUS** is 0(**CLOSE**)
292
293 If the payload is: **D1**: (1101 0001&1000 0000== 1), **DOOR_OPEN_STATUS** is 1(**OPEN**)
294
295
296 === 4.3.3 MOD ===
297
298
299 Check the working mode (MOD):
300
301 **Example:**
302
303 If the payload is: 01, the MOD is 1.
304
305
306 === 4.3.4 Total door open events ===
307
308
309 Get the total number of door open events:
310
311 **Example**:
312
313 If payload is: **00 00 93, **the total is 147 events.
314
315 If payload is: **00 00 00, **the total is 0 events.
316
317
318 === 4.3.5 Last door open duration (unit: min) ===
319
320
321 Get the last door open duration:
322
323 **Example:**
324
325 If the payload is: **00 00 25, **the last door open duration is 37 minutes.
326
327 If payload is: **00 00 01,** the last door open duration is 1 minute.
328
329
330 === 4.3.6 Alarm (Only used in LWL02) Always:0x00 ===
331
332
333 Get alarm status.
334
335 **Example:**
336
337 If the payload is: 01:  (0001 & 0001== 1), the alarm status is 1
338
339 If the payload is: 00:  (0000 & 0001== 0), the alarm status is 0
340
341
342 )))
343
344 == 4.4 Downlink Payload ==
345
346
347 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:505px" %)
348 |=(% style="width: 182px;background-color:#4F81BD;color:white" %)**Downlink Control Type**|=(% style="width: 96px;background-color:#4F81BD;color:white" %)**Type Code**|=(% style="width: 227px;background-color:#4F81BD;color:white" %)**Downlink Payload Size (bytes)**
349 |(% style="width:180px" %)TDC (Transmit Time Interval—Keep Alive Interval)|(% style="width:94px" %)0x01|(% style="width:226px" %)4
350 |(% style="width:180px" %)RESET|(% style="width:94px" %)0x04|(% style="width:226px" %)2
351 |(% style="width:180px" %)[[Set confirmed mode>>||anchor="HTypeCode0x05"]]|(% style="width:94px" %)0x05|(% style="width:226px" %)2
352 |(% style="width:180px" %)[[Clear Counting>>||anchor="HTypeCode0xA6"]]|(% style="width:94px" %)0xA6|(% style="width:226px" %)2
353 |(% style="width:180px" %)[[Enable/Disable Alarm>>||anchor="HTypeCode0xA7"]]|(% style="width:94px" %)0xA7|(% style="width:226px" %)2
354 |(% style="width:180px" %)[[Control ADR/DR>>||anchor="HTypeCode0xA8"]]|(% style="width:94px" %)0xA8|(% style="width:226px" %)3
355 |(% style="width:180px" %)[[Set Alarm Timeout>>||anchor="HTypeCode0xA9"]]|(% style="width:94px" %)0xA9|(% style="width:226px" %)4
356
357 The following image illustrates how to send a downlink payload from The Things Stack.
358
359 [[image:1654673412319-976.png]]
360
361
362 === (% style="color:#037691" %)**Type Code 0x01**(%%) ===
363
364 If the payload is **0100003C**, it means controlling the LDS02’s Keep Alive interval to **0x00003C = 60 seconds (s)**.
365
366
367 === (% style="color:#037691" %)**Type Code 0x04**(%%) ===
368
369 If the payload is **0x04FF**, it will reset the LDS02.
370
371
372 === (% style="color:#037691" %)**Type Code 0x05**(%%) ===
373
374 (((
375 **0x05 00**: Set uplink to LoRaWAN unconfirmed mode
376 )))
377
378 (((
379 **0x05 01**: Set uplink to LoRaWAN confirmed mode
380 )))
381
382
383 === (% style="color:#037691" %)**Type Code 0xA6**(%%) ===
384
385 (((
386 **Example:** 0xA601 – Clear Counting
387 For the LDS02: Resets both the count number and time.
388 )))
389
390
391 === (% style="color:#037691" %)**Type Code 0xA7**(%%) ===
392
393 (((
394 **0xA701**: Equivalent to AT+DISALARM=1
395 )))
396
397 (((
398 **0xA700**: Equivalent to AT+DISALARM=0
399 )))
400
401
402 === (% style="color:#037691" %)**Type Code 0xA8**(%%) ===
403
404 (((
405 **Format:** 0xA8 aa bb
406
407 * **aa**: 1 – Enable ADR; 0 – Disable ADR (same as the AT+CADR command)
408 * **bb**: Set DR (same as AT+CDATARATE; only valid after ADR=0)
409
410 **Example:** 0xA80001 – Set ADR=0 and DR=1
411 )))
412
413
414 === (% style="color:#037691" %)**Type Code 0xA9**(%%) ===
415
416 See, [[Alarm Base Timeout>>||anchor="H4.6AlarmBaseonTimeout"]] for details.
417
418
419 == 4.5 Integrate with IoT Platforms ==
420
421
422 The Things Stack can be integrated with many IoT platforms, including ThingsEye and Datacake, for visualizing and analyzing data coming from the LDS02. Most of these IoT platforms also support sending downlinks to the LDS02.
423
424 === 4.5.1 Integrate with ThingsEye ===
425
426
427 The Things Stack application supports integration with ThingsEye.io. Once integrated, ThingsEye.io acts as an MQTT client for The Things Stack MQTT broker, allowing it to subscribe to upstream traffic and publish downlink traffic.
428
429
430 ==== 4.5.1.1 Configuring The Things Stack ====
431
432 We use The Things Stack Sandbox in this example:
433
434 * In **The Things Stack Sandbox**, go to the **Application **for the LDS02 you added.
435 * Select **MQTT** under **Integrations** in the left menu.
436 * In the **Connection information **section, under **Connection credentials**, The Things Stack displays an auto-generated **username**. You can use it or provide a new one.
437 * Click the **Generate new API key** button to generate a password. You can view it by clicking on the **visibility toggle/eye** icon. The API key works as the password.
438
439 {{info}}
440 The username and  password (API key) you created here are required in the next section.
441 {{/info}}
442
443
444 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/tts-mqtt-integration.png?rev=1.1||alt="tts-mqtt-integration.png"]]
445
446
447 ==== 4.5.1.2 Configuring ThingsEye.io ====
448
449 The ThingsEye.io IoT platform is not open for self-registration at the moment. If you are interested in testing the platform, please send your project information to admin@thingseye.io, and we will create an account for you.
450
451 * Login to your [[ThingsEye.io >>url:https://thingseye.io]]account.
452 * Under the **Integrations center**, click **Integrations**.
453 * Click the **Add integration** button (the button with the **+** symbol).
454
455 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye-io-step-1.png?rev=1.2||alt="thingseye-io-step-1.png"]]
456
457
458 On the **Add integration** window, configure the following:
459
460 **Basic settings:**
461
462 * Select **The Things Stack Community** from the **Integration type** list.
463 * Enter a suitable name for your integration in the **Name **text** **box or keep the default name.
464 * Ensure the following options are turned on.
465 ** Enable integration
466 ** Debug mode
467 ** Allow creating devices or assets
468 * Click the **Next** button. you will be navigated to the **Uplink data converter** tab.
469
470 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye-io-step-2.png?rev=1.1||alt="thingseye-io-step-2.png"]]
471
472
473 **Uplink data converter:**
474
475 * Click the **Create new** button if it is not selected by default.
476 * Enter a suitable name for the uplink data converter in the **Name **text** **box or keep the default name.
477 * Click the **JavaScript** button.
478 * Paste the uplink decoder function into the text area (first, delete the default code). The demo uplink decoder function can be found [[here>>url:https://raw.githubusercontent.com/ThingsEye-io/te-platform/refs/heads/main/Data%20Converters/The_Things_Network_MQTT_Uplink_Converter.js]].
479 * Click the **Next** button. You will be navigated to the **Downlink data converter **tab.
480
481 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye-io-step-3.png?rev=1.1||alt="thingseye-io-step-3.png"]]
482
483
484 **Downlink data converter (this is an optional step):**
485
486 * Click the **Create new** button if it is not selected by default.
487 * Enter a suitable name for the downlink data converter in the **Name **text** **box or keep the default name.
488 * Click the **JavaScript** button.
489 * Paste the downlink decoder function into the text area (first, delete the default code). The demo downlink decoder function can be found [[here>>url:https://raw.githubusercontent.com/ThingsEye-io/te-platform/refs/heads/main/Data%20Converters/The_Things_Network_MQTT_Downlink_Converter.js]].
490 * Click the **Next** button. You will be navigated to the **Connection** tab.
491
492 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye-io-step-4.png?rev=1.1||alt="thingseye-io-step-4.png"]]
493
494
495 **Connection:**
496
497 * Choose **Region** from the **Host type**.
498 * Enter the **cluster** of your **The Things Stack** in the **Region** textbox. You can find the cluster in the url (e.g., https:~/~/**eu1**.cloud.thethings.network/...).
499 * Enter the **Username** and **Password** of the MQTT integration in the **Credentials** section. The **username **and **password **can be found on the MQTT integration page of your The Things Stack account (see **4.5.1.1 Configuring The Things Stack**).
500 * Click the **Check connection** button to test the connection. If the connection is successful, you will see the message saying **Connected**.
501
502 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/message-1.png?rev=1.1||alt="message-1.png"]]
503
504
505 * Click the **Add** button.
506
507 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye-io-step-5.png?rev=1.1||alt="thingseye-io-step-5.png"]]
508
509
510 Your integration has been added to the** Integrations** list and will be displayed on the **Integrations** page. Check whether the status is shown as **Active**. If not, review your configuration settings and correct any errors.
511
512
513 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye.io_integrationsCenter_integrations.png?rev=1.2||alt="thingseye.io_integrationsCenter_integrations.png"]]
514
515
516 ==== 4.5.1.3 Viewing integration details ====
517
518
519 Click on your integration from the list. The **Integration details** window will appear with the **Details **tab selected. The **Details **tab shows all the settings you have provided for this integration.
520
521
522 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/integration-details.png?rev=1.1||alt="integration-details.png"]]
523
524
525 If you want to edit the settings you have provided, click on the **Toggle edit mode** button. Once you have done click on the **Apply changes **button.
526
527 {{info}}
528 See also [[ThingsEye documentation>>url:https://wiki.thingseye.io/xwiki/bin/view/Main/]].
529 {{/info}}
530
531
532 ==== 4.5.1.4 Viewing events ====
533
534
535 The **Events **tab displays all the uplink messages from the LDS02.
536
537 * Select **Debug **from the **Event type** dropdown.
538 * Select the** time frame** from the **time window**.
539
540 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LT-22222-L/WebHome/thingseye-events.png?rev=1.1||alt="thingseye-events.png"]]
541
542
543 * To view the **JSON payload** of a message, click on the **three dots (...)** in the **Message** column of the desired message.
544
545 [[image:lds02-thingseye-payload.png]]
546
547
548 ==== 4.5.1.5 Deleting an integration ====
549
550
551 If you want to delete an integration, click the **Delete integration** button on the Integrations page.
552
553
554 ==== 4.5.1.6 Viewing sensor data on a dashboard ====
555
556
557 You can create a dashboard with ThingsEye to visualize the sensor data coming from the LDS02. The following image shows a dashboard created for the LDS02. See **Creating a dashboard** in ThingsEye documentation for more information.
558
559
560 [[image:lds02-thingseye-dashboard.png]]
561
562
563
564
565 === 4.5.2 Integrate with Datacake ===
566
567
568 (((
569 Datacake is a multi-purpose, low-code IoT platform that allows you to integrate sensor data for visualization and analysis. With The Things Stack, you can easily create an integration with Datacake to forward your sensor data to the Datacake IoT platform.
570
571
572 ==== 4.5.2.1 Prerequisites ====
573
574 * The LDS02 device is joined to The Things Stack.
575 * Uplinks from the LDS02 device are being received by The Things Stack.
576 * A Datacake account (a free account is sufficient for this example).
577
578 ==== 4.5.2.2 Procedure ====
579
580
581 * In the Datacake workspace, on the left navigation, click **Account Settings**.
582 * Then click **API Token**.
583 * In the **API Token** tab, click the **Copy** button to copy the API token. You will need this API token when creating a webhook with The Things Stack.
584
585 [[image:datacake-1.png]]
586
587
588 )))
589
590 (((
591 To configure the Application to forward data to Datacake you will need to add integration. To add the Datacake integration, perform the following steps:
592
593 * In The Things Stack console, on the left navigation,
594 ** First select your **application** (**Applications -> <your application>**)
595 ** Then select **Integrations -> Webhooks**
596 * On the **Webhooks** page, click + **Add Webhook** button.
597
598 [[image:tts-webhook-1.png]]
599
600
601 * On the **Choose webhook template** page, select **Datacake**.
602 )))
603
604
605
606 [[image:tts-webhook-2.png]]
607
608
609 * On the Setup webhook for Datacake page,
610 ** **Webhook ID**: provide an unique identifier for this webhook
611 ** **Token**: Paste the **Datacake API Token** when you copied from the Datacake **Account Settings**.
612 * Click on the **Create Datacake webhook** button.
613
614 [[image:tts-webhook-3.png]]
615
616
617 Now the Webhook is created and displayed on the Webhooks page.
618
619 [[image:tts-webhook-4.png]]
620
621
622 * In the Datacake workspace, on the left navigation, click **Devices**.
623 * On the Devices page, click **+Add Device**.
624
625 [[image:datacake-2.png]]
626
627
628 * On the **Add Device** window, click **LoRaWAN** option.
629 * Click on the **Next** button.
630
631 [[image:datacake-3.png]]
632
633
634 * On the **Add LoRaWAN Device** window, **STEP 1**, click on **New Product from template** option.
635 * Under **Device Template**, search **lds02**. Then click on **Dragino LDS02 Door Sensor** option.
636 * Click on the **Next** button.
637
638 [[image:datacake-4.png]]
639
640
641
642
643 * On the **Add LoRaWAN Device** window, **STEP 2**, under **Network Server**, click on **The Things Stack V3** option.
644 * Click on the **Next** button.
645
646 [[image:datacake-5.png]]
647
648
649 * On the **Add LoRaWAN Device** window, **STEP 3**, under **Add Devices**, click **Manual** tab.
650 * In the **DEVEUI** textbox, enter your LDS02's 8 bytes **DevEUI**.
651 * In the **NAME** textbox, enter a suitable name to identify your LDS02.
652 * Click on the **Next** button.
653
654 [[image:datacake-6.png]]
655
656
657 * On the **Add LoRaWAN Device** window, **STEP 4**, select **Individual device plans** tab.
658 * Click **Free** option.
659 * Click on the **Add 1 Device** button.
660
661 [[image:datacake-7.png]]
662
663
664 * The device is now added to the Datacake workspace and is ready to receive uplinks from the LDS02 via The Things Stack.
665 * In the **DEVICE** column, click **lds02**.
666
667 [[image:datacake-8.png]]
668
669
670 You can see the **pre-built dashboard** from our template, displaying the LDS02's sensor data on various **widgets**.
671
672 [[image:datacake-9.png]]
673
674
675 == 4.6 Alarm Based on Timeout ==
676
677
678 (((
679 The LDS02 can monitor the timeout for a status change. This feature can be used to monitor events such as a fridge being left open for too long, etc. You can configure this feature using either AT commands or a downlink command:
680 )))
681
682 (((
683 (% style="color:blue" %)**Using AT Commands**(%%)**:**
684 )))
685
686 (((
687
688
689 * **AT+TTRIG=1,30 ~-~-> **When the status changes from closed to open, and the device remains in the open status for more than 30 seconds, the LDS02 will send an uplink packet. The Alarm bit (the lowest bit of the 10th byte of the payload) in this uplink packet is set to 1.
690 * **AT+TTRIG=0,0 ~-~-> **Default value, disables the timeout alarm.
691 )))
692
693 (((
694 (% style="color:blue" %)**Using Downlink Commands**(%%)**:**
695 )))
696
697 (((
698 **Command:** 0xA9 aa bb cc
699
700 * **A9:** Command Type Code
701 * **aa:** Status to be monitored
702 * **bb cc:** Timeout
703
704 If the user sends **0xA9 01 00 1E**, this is equivalent to **AT+TTRIG=1,30**.
705
706 Or
707
708 **0xA9 00 00 00**, this is equivalent to **AT+TTRIG=0,0**, which disables the timeout alarm.
709 )))
710
711
712 == 4.7 EDC Mode(Since firmware v1.8.2) ==
713
714
715 Feature: Set EDC mode, when the cumulative number of opening/closing reaches the set count value, LDS02 will send the packet.
716
717 (% style="color:blue" %)**AT Command: AT+EDC**
718
719
720 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
721 |=(% style="width: 126px; background-color: rgb(79, 129, 189); color: white;" %)**Command Example**|=(% style="width: 196px; background-color: rgb(79, 129, 189); color: white;" %)**Function**|=(% style="width: 176px; background-color: rgb(79, 129, 189); color: white;" %)**Response/Parameters**
722 |(% style="width:126px" %)AT+EDC?|(% style="width:196px" %)Show current Settings|(% style="width:176px" %)(((
723 0,0 (default)
724
725 OK
726 )))
727 |(% colspan="1" rowspan="2" style="width:126px" %)(((
728
729
730
731
732 AT+EDC=aa,bb
733 )))|(% style="width:196px" %)aa: Set the open/close cumulative packet sending mode|(% style="width:176px" %)(((
734 0: Set the close cumulative packet sending mode
735
736 1: Set the open cumulative packet sending mode
737 )))
738 |(% style="width:196px" %)bb: Set the cumulative count and send packets when the cumulative count is reached|(% style="width:176px" %)
739
740 (% style="color:blue" %)**Downlink Command: 0X02**
741
742 Format: Command Code (0x02) followed by 4 bytes.
743
744 (% style="color:red" %)**Note: To use the EDC mode, you need to set AT+DISALARM=1(downlink payload: A701), so that LDS02 will send packets only when the TDC time and cumulative count reach the set value.**
745
746
747 == 4.8 Set count value(Since firmware v1.8.2) ==
748
749
750 Feature: Set the initial count value.
751
752 (% style="color:blue" %)**AT Command: AT+SETCNT**
753
754
755 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:500px" %)
756 |=(% style="width: 154px; background-color: rgb(79, 129, 189); color: white;" %)**Command Example**|=(% style="width: 170px; background-color: rgb(79, 129, 189); color: white;" %)**Function**|=(% style="width: 173px; background-color: rgb(79, 129, 189); color: white;" %)**Response**
757 |(% style="width:154px" %)AT+SETCNT=100|(% style="width:170px" %)Initialize the count value to 100.|(% style="width:173px" %)(((
758 OK
759 )))
760
761 (% style="color:blue" %)**Downlink Command: 0XAA**
762
763
764 The first byte is to select which count value to initialize, and the next four bytes are the count value to be initialized.
765
766 * Example 1: Downlink Payload: 090100000000  **~-~-->**  AT+SETCNT=1,0
767 * Example 2: Downlink Payload: 0902000003E8  **~-~-->**  AT+SETCNT=2,1000
768
769
770
771
772 == 4.9 LEDs ==
773
774
775 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:463px" %)
776 |=(% style="width: 186px;background-color:#4F81BD;color:white" %)**Action**|=(% style="width: 277px;background-color:#4F81BD;color:white" %)**LED behavior**
777 |(% style="width:184px" %)Power On|(% style="width:275px" %)(% style="color:green" %)**GREEN LED on 1s, **(% style="color:red" %)**RED LED on 1s,**(%%)** (% style="color:blue" %)BLUE LED on 1s(%%)**
778 |(% style="width:184px" %)Joined successful|(% style="width:275px" %)(% style="color:green" %)**GRENN LED **(%%)on 5s
779 |(% style="width:184px" %)Send an uplink message|(% style="width:275px" %)(% style="color:green" %)**GREEN LED**(%%) blinks once
780 |(% style="width:184px" %)Received a downlink message|(% style="width:275px" %)(% style="color:blue" %)**BLUE LED**(%%) blinks once
781
782 = 5. Battery & How to replace =
783
784 == 5.1 Battery Type and replace ==
785
786
787 (((
788 The LDS02 is equipped with 2 x AAA LR03 batteries. If the batteries are running low (showing 2.1V on the platform), the user can buy generic AAA batteries and replace them.
789
790 (% style="color:red" %)**Note:**
791
792 1. The LDS02 doesn’t have any screws; you can use a nail to open it from the middle.
793 1. Make sure the direction is correct when installing the AAA batteries.
794 )))
795
796 (((
797 (% style="color:red" %)**Important Note: **(%%)Ensure you use new AAA LR03 batteries, and that the battery surfaces are not damaged.
798 )))
799
800 (((
801
802 )))
803
804 (((
805 Example of AAA LR03 battery:
806 )))
807
808 [[image:1654675278044-307.png]]
809
810
811 == 5.2 Power Consumption Analysis ==
812
813
814 (((
815 Dragino battery-powered products all run in Low Power mode. Users can refer to the guidelines from this [[**link**>>https://www.dragino.com/downloads/downloads/LoRa_End_Node/Battery_Analyze/DRAGINO_Battery_Life_Guide.pdf]] to estimate battery life:
816 )))
817
818
819 = 6. Use AT Commands =
820
821 == 6.1 Access AT Commands ==
822
823
824 The LDS02 supports an AT command set. You can use a USB to TTL adapter to configure the LDS02 via AT commands, as shown below.
825
826 [[image:image-20221226104705-1.png||height="572" width="872"]]
827
828
829 (((
830 On the PC, the user needs to set the **serial tool** (such as [[PuTTY>>https://www.chiark.greenend.org.uk/~~sgtatham/putty/latest.html]] or SecureCRT) baud rate to **115200** to access the serial console of the LDS02. Below is the output for reference:
831 )))
832
833 (((
834 The AT command access password is (% style="color:red" %)**123456**.
835 )))
836
837 [[image:1654675618022-630.png]]
838
839
840 Each AT command needs to have an **ENTER** key pressed at the end before sending.
841
842 When entering the first command, the **RED LED** will turn on, and the user can now input AT commands. After entering all the required AT commands, input **AT+CLPM=1** to set the device to Low Power mode, and the **RED LED** will turn off.
843
844 More details can be found in the [[AT Command Manual>>http://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/LDS01/]].
845
846
847 = 7. FAQ =
848
849 == 7.1 How to upgrade the image? ==
850
851
852 **~1. Connect the DAPLINK to the LDS02 as below:**
853
854
855
856 **3.3V<~-~-~-~-->VDD**
857
858 **CLK<~-~-~-~-~-~->CLK**
859
860 **DIO<~-~-~-~-~-~->DIO (SWD)**
861
862 **GND<~-~-~-~-~-~->GND**
863
864 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/Firmware%20Upgrade%20Instruction/WebHome/image-20220527084230-4.png?rev=1.1||alt="image-20220527084230-4.png"]]
865
866 [[image:image-20230726175624-1.jpeg||height="565" width="753"]]
867
868
869 **2. Install PSoC Programmer 3.27.1**
870
871 Download Link: [[PSoCProgrammer3.27.1>>url:https://www.dragino.com/downloads/index.php?dir=tools/]]
872
873 Then, use PSoC Programmer to upgrade the firmware (**must use this version: PSoC Programmer 3.27.1**).
874
875 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/Firmware%20Upgrade%20Instruction/WebHome/image-20220527084537-7.png?rev=1.1||alt="image-20220527084537-7.png"]]
876
877
878 **3. Download Sensor Firmware**
879
880 Downlink [[Firmware Location(same as LDS01)>>url:https://www.dropbox.com/sh/9j35mnsxnz0y3ye/AACj5gHGOURGEHCpj-E861Mua?dl=0]] to prepare the update.
881
882
883 **4. Upgrade Firmware**
884
885 * Open PSoC Programmer, then select the default configuration.
886
887 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/Firmware%20Upgrade%20Instruction/WebHome/image-20220527084612-8.png?rev=1.1||alt="image-20220527084612-8.png"]]
888
889 * Click the file icon to select the software to be burned.
890
891 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/Firmware%20Upgrade%20Instruction/WebHome/image-20220527084705-9.png?rev=1.1||alt="image-20220527084705-9.png"]]
892
893 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/Firmware%20Upgrade%20Instruction/WebHome/image-20220527084739-10.png?width=1034&height=453&rev=1.1||alt="image-20220527084739-10.png" height="453" width="1034"]]
894
895 * Click the download icon, and the progress bar, as shown in the figure below, will appear. When **PASS** appears, it indicates that the burning was successful.
896
897 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/Firmware%20Upgrade%20Instruction/WebHome/image-20220527084831-11.png?rev=1.1||alt="image-20220527084831-11.png"]]
898
899 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/Firmware%20Upgrade%20Instruction/WebHome/image-20220527084907-12.png?rev=1.1||alt="image-20220527084907-12.png"]]
900
901
902 **It is very important to press the reset button after the upgrade. This sets the device to work in Low Power mode.**
903
904 **If you change to a different LoRa frequency band/region, you need to use the AT+FDR command to restore the factory data after the program is successfully applied.**
905
906
907 == 7.2 How to change the LoRa Frequency Bands/Region? ==
908
909
910 If you have the US915 frequency and want to change it to the AS923 frequency, you can follow the same instructions mentioned in the [[How to upgrade the image?>>doc:||anchor="How to upgrade the image?"]] section to upgrade the image. When downloading the image, select the required file.
911
912
913 == 7.3 Can I disable uplinks for each event to save battery life? ==
914
915
916 Yes, you can use one of the methods below:
917
918
919 (% style="color:blue" %)**Via AT Command**:
920
921 (% style="color:red" %)**AT+DISALARM=1**(%%) : The end node will only send packets during the TDC time.
922
923 (% style="color:red" %)**AT+DISALARM=0**(%%) : The end node will send packets either during the TDC time or when there is a status change in the door sensor.
924
925
926 (% style="color:blue" %)**Via LoRaWAN downlink Command**:
927
928 (% style="color:red" %)**0xA701**(%%) : Equivalent to AT+DISALARM=1
929
930 (% style="color:red" %)**0xA700**(%%) : Equivalent to AT+DISALARM=0
931
932
933 == 7.4 How can I change the Subband for LDS02? ==
934
935
936 **Before v1.6 firmware:**
937 LDS02 operates in Subband 2 by default in the AU915/US915 band. If the LoRaWAN server operates on another subband, LDS02 may have trouble joining the server. In this case, the user can use the AT command to change the subband. See the AT Command chapter for hardware connection details. Below are the steps to change the subband:
938
939 1. Press the reset button.
940 1. Send the password **123456**.
941 1. Send the command: **AT+CFREQBANDMASK=0006** (use 0001 for Subband 1, 0002 for Subband 2, etc.).
942 1. Press the reset button to restart and switch to the new subband.
943
944 Example output:
945
946 (% class="mark small" %)[3369]DRAGINO LWL01 Device
947 [3370]Frequency Band: US915 v1.5
948 [3373]OTAA
949 [3374]DevEui= 7896785455246354
950 [3377]class type A
951 [3379]freq mode intra
952 [3381]**scan chn mask 0x0002   ~-~-> use subband 2**
953
954 (% class="mark small" %)LM502:~~# [10793]txDone
955 123456       ~-~-> ENTER PASSWORD
956 Correct Password
957
958 (% class="mark small" %)[105115]rxTimeOut
959 **AT+CFREQBANDMASK=0020 ~-~-> Change to Subband6**
960 OK
961
962 (% class="mark small" %)[3371]DRAGINO LWL01 Device
963 [3373]Frequency Band: US915 v1.5
964 [3376]OTAA
965 [3377]DevEui= 7896785455246354
966 [3380]class type A
967 [3382]freq mode intra
968 [3384]**scan chn mask 0x0001  ~-~-> reboot and works on Subband1 now**
969
970 [[image:image-20230103143821-1.png]]
971
972
973 **Since firmware v1.6:**
974
975 LDS02 works with the channel mask 0x0000, which covers all subbands. Therefore, there is no need to use AT commands to change the subband, and it will work for every subband.
976
977
978 == 7.5 My sensor worked for Helium AU915 before, but now it doesn't work. Why? ==
979
980
981 This is a sub-band issue. See chapter 7.4. Helium changed the sub-band for AU915 from subband 2 to subband 6, which caused the sensor to stop working.
982
983
984 == 7.6 Why do I see different working temperatures for the device? ==
985
986
987 The working temperature range of the device depends on the battery the user chooses.
988
989 * A standard AAA battery can support a working range of -10°C to 50°C.
990 * A special AAA battery can support a working range of -40°C to 60°C. For example, [[Energizer L92>>url:https://data.energizer.com/pdfs/l92.pdf]]
991
992 == 7.7 The device keeps rejoining the network and is not working properly ==
993
994
995 **Cause of the problem:**
996
997 When the DR of AU915 and AS923 is 2 or the DR of US915 is 0, upon receiving the MAC Command from the server, the node will enter deep sleep and will not send packets because the attached MAC answer exceeds the number of bytes.
998
999 **Solution:**
1000
1001 1. Manually restart the device, then downlink 21 03 (only needs to be set once to be effective).
1002 1. Manually restart the device, then set AT+RPL=3 (only needs to be set once to be effective).
1003 1. Update the firmware to version v1.8 or above.
1004
1005 = 8. Ordering Information =
1006
1007
1008 **Part Number: (% style="color:blue" %)LDS02-XXX(%%)**
1009
1010 (% style="color:blue" %)**XXX:**(%%) The default frequency band
1011
1012 * (% style="color:red" %)**EU433**(%%): frequency  bands EU433
1013 * (% style="color:red" %)**EU868**(%%): frequency  bands EU868
1014 * (% style="color:red" %)**KR920**(%%): frequency  bands KR920
1015 * (% style="color:red" %)**CN470**(%%): frequency bands CN470
1016 * (% style="color:red" %)**AS923**(%%): frequency  bands AS923
1017 * (% style="color:red" %)**AU915**(%%): frequency bands AU915
1018 * (% style="color:red" %)**US915**(%%): frequency bands  US915
1019 * (% style="color:red" %)**IN865**(%%):  frequency bands  IN865
1020 * (% style="color:red" %)**CN779**(%%): frequency bands CN779
1021
1022 = 9. Packaging Information =
1023
1024
1025 (((
1026 **Package Includes**:
1027 )))
1028
1029 * (((
1030 LDS02 x 1
1031 )))
1032
1033 (((
1034 **Dimension and weight**:
1035 )))
1036
1037 * (((
1038 Device Size: 69.2 x 29.2 x 14.8 mm
1039
1040
1041 )))
1042
1043 = 10. Support =
1044
1045
1046 * Support is provided Monday to Friday, from 09:00 to 18:00 GMT+8. Due to different time zones, we cannot offer live support. However, your questions will be answered as soon as possible during the aforementioned schedule.
1047 * Please provide as much information as possible regarding your inquiry (product models, a clear description of the problem, steps to replicate it, etc.) and send an email to [[support@dragino.com>>mailto:support@dragino.com]].
Copyright ©2010-2024 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0