Show last authors
1 (% style="text-align:center" %)
2 [[image:1654739676119-482.png||height="544" width="479"]]
3
4
5
6 **Contents:**
7
8
9
10
11
12
13
14 = 1.  Introduction =
15
16 == 1.1  ​What is LDS03A Open/Close Door Sensor ==
17
18 (((
19
20
21 (((
22 The Dragino LDS03A is an (% style="color:blue" %)**Open/Close LoRaWAN Door Sensor**(%%). 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.
23 )))
24
25 (((
26 LDS03A is powered by a (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%). It can be used for up to 10 years.
27 )))
28
29 (((
30 The LDS03A 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, LDS03A can count each open event and uplink periodically.
31 )))
32
33 (((
34 LDS03A has a (% style="color:blue" %)**Datalog feature**(%%), it will record the open/close event and the user can retrieve the history from LoRaWAN.
35 )))
36
37 (((
38 LDS03A 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.
39 )))
40
41 (((
42 LDS03A is designed for outdoor use. It has a weatherproof enclosure and industrial level battery to work in low to high temperatures.
43 )))
44
45 (((
46 Each LDS03A is pre-load with a set of unique keys for LoRaWAN registration, register these keys to LoRaWAN server and it will auto-connect after power on.
47 )))
48
49 (((
50 *Battery life depends on how often to send data, please see [[battery analyzer>>||anchor="H4.Battery26Howtoreplace"]].
51 )))
52 )))
53
54
55
56
57 == ​1.2  Features ==
58
59 * LoRaWAN v1.0.3 Class A protocol.
60 * Frequency Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865/RU864
61 * Door Open/Close detect
62 * Door open/close statistics
63 * 8500mAh industrial battery(none-rechargeable)
64 * AT Commands to change parameters
65 * Uplink on periodically and open/close event
66 * Datalog feature
67 * Remote configure parameters via LoRa Downlink
68 * Firmware upgradable via program port
69 * Wall Mountable
70 * Outdoor Use
71
72 == 1.3  Storage & Operation Temperature ==
73
74
75 -40°C to +85°C
76
77
78 == 1.4  ​Applications ==
79
80
81 [[image:1654741400370-813.png]]
82
83
84 == 1.5  Mechanical ==
85
86 [[image:1654741444887-479.png]]
87
88
89 [[image:1654741488515-626.png]]
90
91 [[image:1654741510204-377.png]]
92
93
94 == 1.6  Pin Definitions and Switch ==
95
96 [[image:1654741572060-177.png]]
97
98 **LDS03A is based on LSN50v2**
99
100
101 === 1.6.1  Pin Definition ===
102
103 (((
104 The device is pre-configured to connect to a door sensor. The other pins are not used. If user wants to know more about other pins, please refer to the user manual of LSN50v2 at: [[http:~~/~~/www.dragino.com/downloads/index.php?dir=LSN50-LoRaST/>>url:http://www.dragino.com/downloads/index.php?dir=LSN50-LoRaST/]]
105 )))
106
107
108 === 1.6.2  Jumper JP2(Power ON/OFF) ===
109
110 Power on Device when putting this jumper.
111
112
113 === 1.6.3  BOOT MODE / SW1 ===
114
115 1) ISP: upgrade mode, device won't have any signal in this mode. but ready for upgrade firmware. LED won't work. Firmware won’t run.
116
117 2) Flash: work mode, the device starts to work and send out console output for further debug
118
119
120 === 1.6.4  Reset Button ===
121
122 Press to reboot the device.
123
124
125 === 1.6.5  LED ===
126
127 It will flash:
128
129 1. Boot the device in flash mode
130 1. Send an uplink packet
131
132 = 2.  Operation Mode =
133
134 == 2.1  How it works ==
135
136 (((
137 (((
138 Each LDS03A is shipped with a worldwide unique set of OTAA keys. To use LDS03A in a LoRaWAN network, user needs to input the OTAA keys in the LoRaWAN network server. So LDS03A can join the LoRaWAN network and start to transmit sensor data.
139 )))
140 )))
141
142
143 == 2.2  Example to use for LoRaWAN network ==
144
145 (((
146 This section shows an example of how to join the TTN V3 LoRaWAN IoT server. Usages with other LoRaWAN IoT servers are similar.
147 )))
148
149 (((
150 [[image:1654742304325-850.png]]
151
152
153 )))
154
155 (((
156 * In this user case, the LDS03A is installed on the door edge to detect the open/close event and send the status to the LoRaWAN server. The LDS03A will uplink different types of messages to the LoRaWAN server. See [[Uplink payload>>||anchor="H2.3200BUplinkPayload"]] for detail.
157
158 (((
159 Assume the LG308 is already set to connect to the [[TTN V3 network >>url:https://eu1.cloud.thethings.network]]. We need to add the LDS03A device in TTN V3:
160 )))
161 )))
162
163 (((
164 (((
165 (% style="color:blue" %)**Step 1**(%%):  Create a device in TTN V3 with the OTAA keys from LDS03A.
166 )))
167
168 (((
169 Each LDS03A is shipped with a sticker with the default device EUI as below:
170 )))
171 )))
172
173 [[image:image-20220607170145-1.jpeg]]
174
175
176 Users can enter these keys in the LoRaWAN Server portal. Below is the TTN V3 screenshot:
177
178 Add APP EUI in the application.
179
180 [[image:1654742558691-332.png]]
181
182
183 [[image:1654742595660-519.png]]
184
185
186 [[image:1654742610413-498.png]]
187
188
189 [[image:1654742630064-347.png]]
190
191 **Add APP KEY and DEV EUI**
192
193
194 (% style="color:blue" %)**Step 2**(%%): Power on LDS03A
195
196 [[image:1654742860601-778.png]]
197
198
199 (((
200 Put the jumper to power on LDS03A and it will auto-join to the TTN V3 network. After join success, it will start to upload sensor data to TTN V3 and the user can see it in the panel.
201 )))
202
203
204 [[image:image-20220609104802-1.png||height="369" width="1123"]]
205
206
207 == 2.3  ​Uplink Payload ==
208
209 (((
210 (((
211 Uplink payloads have two types:
212 )))
213
214 * (((
215 Open/Close Status: Use FPORT=2
216 )))
217 * (((
218 Other control commands: Use other FPORT fields.
219 )))
220
221 (((
222 The application server should parse the correct value based on FPORT settings.
223 )))
224
225 (((
226
227 )))
228
229 === 2.3.1  Device Status, FPORT~=5 ===
230 )))
231
232 (((
233 Include device configure status. Once LDS03A Joined the network, it will uplink this message to the server. After that, LDS03A will uplink Device Status every 12 hours.
234 )))
235
236 (((
237 Users can also use the downlink command(0x26 01) to ask LDS03A to resend this uplink. This uplink payload also includes the DeviceTimeReq to get time.
238 )))
239
240 [[image:image-20220609105437-3.png]]
241
242
243 Example parse in TTNv3
244
245 [[image:image-20220609105101-2.png||height="295" width="1208"]]
246
247 * (% style="color:#4f81bd" %)**Sensor Model**(%%): For LDS03A, this value is 0x0A
248
249 * (% style="color:#4f81bd" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
250
251 * (% style="color:#4f81bd" %)**Frequency Band**:
252
253 *0x01: EU868
254
255 *0x02: US915
256
257 *0x03: IN865
258
259 *0x04: AU915
260
261 *0x05: KZ865
262
263 *0x06: RU864
264
265 *0x07: AS923
266
267 *0x08: AS923-1
268
269 *0x09: AS923-2
270
271 *0x0a: AS923-3
272
273 *0x0b: CN470
274
275 *0x0c: EU433
276
277 *0x0d: KR920
278
279 *0x0e: MA869
280
281
282 * (% style="color:#4f81bd" %)**Sub-Band**:
283 ** AU915 and US915:value 0x00 ~~ 0x08
284 ** CN470: value 0x0B ~~ 0x0C
285 ** Other Bands: Always 0x00
286
287 * (% style="color:#4f81bd" %)**Battery Info:**
288
289 Check the battery voltage.
290
291 Ex1: 0x0B45 = 2885mV
292
293 Ex2: 0x0B49 = 2889mV
294
295
296
297 === 2.3.2  Sensor Configuration, FPORT~=4 ===
298
299 LDS03A will only send this command after getting the downlink command (0x26 02) from the server.
300
301 [[image:image-20220609110123-5.png]]
302
303
304 * (% style="color:#4f81bd" %)**TDC: (default: 0x001C20)**
305
306 Uplink interval for the Open/Close Event, default value is 0x001C20 which is 7200 seconds = 2 hours.
307
308
309 * (% style="color:#4f81bd" %)**Disalarm: (default: 0)**
310
311 (% style="color:#4f81bd" %)**If Disalarm = 1**(%%), LDS03A 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.
312
313 (% style="color:#4f81bd" %)**If Disalarm = 0**(%%), LDS03A 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.
314
315 Note: When Disalarm=0, a high frequently open/close event will cause lots of uplink and drain battery very fast.
316
317
318 * (% style="color:#4f81bd" %)**Keep Status & Keep Time**
319
320 Shows the configure value of [[Alarm Base on Timeout Feature>>||anchor="H3.8AlarmBaseonTimeout"]]
321
322
323 [[image:image-20220609110018-4.png||height="291" width="1159"]]
324
325
326
327 === 2.3.3  Real-Time Open/Close Status, Uplink FPORT~=2 ===
328
329 LDS03A will send this uplink **after** Device Status once join the LoRaWAN network successfully. And LDS03A will:
330
331
332 1. periodically send this uplink every 2 hours, this interval [[can be changed>>||anchor="H3.1SetTransmitIntervalTime"]].
333 1. There is an Open/Close event. 
334
335 Uplink Payload totals 11 bytes.
336
337 (% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:495px" %)
338 |(% colspan="5" style="width:492px" %)**Real-Time Open/Close Status, FPORT=2**
339 |(% style="width:101px" %)**Size (bytes)**|(% style="width:77px" %)**1**|(% style="width:99px" %)**3**|(% style="width:88px" %)**3**|(% style="width:126px" %)**4**
340 |(% style="width:101px" %)**Value**|(% style="width:77px" %)Status & [[Alarm>>||anchor="H3.8AlarmBaseonTimeout"]]|(% style="width:99px" %)Total open door events|(% style="width:88px" %)(((
341 The last door open
342
343 duration (unit: min)
344 )))|(% style="width:126px" %)[[Unix TimeStamp>>||anchor="H2.4.1UnixTimeStamp"]]
345
346 (% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:509px" %)
347 |(% colspan="4" style="width:506px" %)**Status & Alarm field**
348 |(% style="width:82px" %)**Size (bit)**|(% style="width:71px" %)**6**|(% style="width:221px" %)**1**|(% style="width:130px" %)**1**
349 |(% style="width:82px" %)**Value**|(% style="width:71px" %)Reserve|(% style="width:221px" %)[[Enable/disable Timeout Alarm>>||anchor="H3.8AlarmBaseonTimeout"]]
350 0: No Alarm; 1: Alarm|(% style="width:130px" %)Status
351 0: Close, 1: Open
352
353 [[image:image-20220609110547-6.png||height="337" width="1191"]]
354
355
356
357 === 2.3.4  Historical Door Open/Close Event, FPORT~=3 ===
358
359 LDS03A stores sensor values and users can retrieve these history values via the [[downlink command>>||anchor="H2.4DatalogFeature"]].
360
361 The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time open/close status.
362
363
364 * Each data entry is 11 bytes and has the same structure as [[Real-Time open/close status>>||anchor="H2.3.3Real-TimeOpen/CloseStatus,Uplink FPORT=2"]], to save airtime and battery, LDS03A will send max bytes according to the current DR and Frequency bands.
365
366 For example, in the US915 band, the max payload for different DR is:
367
368 a)      DR0: max is 11 bytes so one entry of data
369
370 b)      DR1: max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
371
372 c)      DR2: total payload includes 11 entries of data
373
374 d)       DR3: total payload includes 22 entries of data.
375
376 If LDS03A doesn’t have any data in the polling time. It will uplink 11 bytes of 0
377
378
379 [[image:image-20220609112215-7.png||height="277" width="1250"]]
380
381 (% style="color:#037691" %)**Downlink:**
382
383 0x31 61 8E 57 40 61 8E 81 70 05
384
385
386 (% style="color:#037691" %)**Uplink:**
387
388 00 00 00 00 00 00 00 61 8E 5F 8F 01 00 00 01 00 00 00 61 8E 5F D2 00 00 00 01 00 00 02 61 8E 60 64 01 00 00 02 00 00 02 61 8E 60 75 00 00 00 02 00 00 01 61 8E 60 C6 00 00 00 02 00 00 01 61 8E 7B A7 01 00 00 03 00 00 01 61 8E 7F 38 00 00 00 03 00 00 02 61 8E 7F CE 01 00 00 04 00 00 02 61 8E 81 1B 00 00 00 04 00 00 00 61 8E 81 50
389
390
391 (% style="color:#037691" %)**Parsed Value:**
392
393 [ALARM, DOOR_OPEN_STATUS, DOOR_OPEN_TIMES,LAST_DOOR_OPEN_DURATION, TIME]
394
395
396 [FALSE, CLOSE, 0, 0, 2021-11-12 12:35:27],
397
398 [FALSE, OPEN,  1, 0, 2021-11-12 12:36:34],
399
400 [FALSE, CLOSE, 1, 2, 2021-11-12 12:39:00],
401
402 [FALSE, OPEN,  2, 2, 2021-11-12 12:39:17],
403
404 [FALSE, CLOSE, 2, 1, 2021-11-12 12:40:38],
405
406 [FALSE, CLOSE, 2, 1, 2021-11-12 14:35:19],
407
408 [FALSE, OPEN,  3, 1, 2021-11-12 14:50:32],
409
410 [FALSE, CLOSE, 3, 2, 2021-11-12 14:53:02],
411
412 [FALSE, OPEN,  4, 2, 2021-11-12 14:58:35],
413
414 [FALSE, CLOSE, 4, 0, 2021-11-12 14:59:28],
415
416
417
418 == 2.4  Datalog Feature ==
419
420 When a user wants to retrieve sensor value, he can send a poll command from the IoT platform to ask the sensor to send value in the required time slot.
421
422
423 === 2.4.1  Unix TimeStamp ===
424
425 LDS03A use Unix TimeStamp format based on
426
427 [[image:image-20220609113256-8.png]]
428
429
430 (((
431 Users can get this time from the link:  [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] :
432 )))
433
434 (((
435 Below is the converter example
436 )))
437
438 [[image:image-20220609113256-9.png||height="467" width="1127"]]
439
440 (((
441 So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25
442 )))
443
444
445 === 2.4.2  Set Device Time ===
446
447 (((
448 There are two ways to set the device’s time:
449 )))
450
451 (((
452 (% style="color:#037691" %)**1. Through LoRaWAN MAC Command (Default settings)**
453 )))
454
455 (((
456 Users need to set SYNCMOD=1 to enable sync time via the MAC command.
457 )))
458
459 (((
460 Once LDS03A Joined the LoRaWAN network, it will send the MAC command (DeviceTimeReq) and the server will reply with (DeviceTimeAns) to send the current time to LDS03A. If LDS03A fails to get the time from the server, LDS03A will use the internal time and wait for the next time request ~[[[via Device Status (FPORT=5)>>||anchor="H2.3.1DeviceStatus,FPORT=5"]]].
461 )))
462
463 (((
464
465 )))
466
467 (((
468 (% style="color:red" %)Note(%%): (% style="color:#037691" %)LoRaWAN Server needs to support LoRaWAN v1.0.3(MAC v1.0.3) (%%)or higher to support this MAC command feature.
469 )))
470
471 (((
472
473 )))
474
475 (((
476 (% style="color:#037691" %)**2. **(% style="color:#037691; font-weight:bold" %)**Manually Set Time**
477 )))
478
479 (((
480 Users need to set SYNCMOD=0 to manual time, otherwise, the user set time will be overwritten by the time set by the server.
481 )))
482
483
484 == 2.5 ​Show Data in DataCake IoT Server ==
485
486 (((
487 (((
488 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:
489 )))
490 )))
491
492 (((
493 (((
494
495 )))
496 )))
497
498 (((
499 (((
500 (% 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]]
501 )))
502 )))
503
504 (((
505 (((
506 (% style="color:blue" %)**Step 2**(%%)**: Configure LDS03A in Datacake.**
507 )))
508 )))
509
510
511 [[image:1654746350207-427.png]]
512
513 [[image:1654746405400-203.png]]
514
515
516 [[image:1654746820628-356.png]]
517
518
519 [[image:1654746763908-732.png]]
520
521
522
523 [[image:1654746716087-684.png]]
524
525
526 [[image:1654746693868-718.png]]
527
528
529 [[image:1654746674738-826.png]]
530
531
532 [[image:1654746646379-591.png]]
533
534
535 [[image:1654746549277-209.png]]
536
537
538 [[image:1654746593411-887.png]]
539
540
541
542
543 == 2.6 Installation and Maintain ==
544
545 === 2.6.1 Before measurement ===
546
547 (((
548 (((
549 If the LSPH01 has more than 7 days not use or just clean the pH probe. User should put the probe inside pure water for more than 24 hours for activation. If no put in water, user need to put inside soil for more than 24 hours to ensure the measurement accuracy. 
550 )))
551 )))
552
553
554
555 === 2.6.2 Measurement ===
556
557
558 (((
559 (% style="color:#4f81bd" %)**Measurement the soil surface:**
560 )))
561
562 (((
563 [[image:1654592946732-634.png]]
564 )))
565
566 (((
567 Choose the proper measuring position. Split the surface soil according to the measured deep.
568 )))
569
570 (((
571 Put pure water, or rainwater to make the soil of measurement point to moist mud. Remove rocks or hard things.
572 )))
573
574 (((
575 Slowly insert the probe to the measure point. Don’t use large force which will break the probe. Make sure not shake when inserting.
576 )))
577
578 (((
579 Put soil over the probe after insert. And start to measure.
580 )))
581
582 (((
583
584 )))
585
586 (((
587 (% style="color:#4f81bd" %)**Measurement inside soil:**
588 )))
589
590 (((
591 Dig a hole with diameter > 20CM.
592 )))
593
594 (((
595 Insert the probe inside, method like measure the surface.
596 )))
597
598
599
600 === 2.6.3 Maintain Probe ===
601
602 1. (((
603 pH probe electrode is fragile and no strong. User must avoid strong force or hitting it.
604 )))
605 1. (((
606 After long time use (3~~ 6  months). The probe electrode needs to be clean; user can use high grade sandpaper to polish it or put in 5% hydrochloric acid for several minutes. After the metal probe looks like new, user can use pure water to wash it.
607 )))
608 1. (((
609 Probe reference electrode is also no strong, need to avoid strong force or hitting.
610 )))
611 1. (((
612 User should keep reference electrode wet while not use.
613 )))
614 1. (((
615 Avoid the probes to touch oily matter. Which will cause issue in accuracy.
616 )))
617 1. (((
618 The probe is IP68 can be put in water.
619
620
621
622 )))
623
624 == 2.7 Calibration ==
625
626 (((
627 User can do calibration for the probe. It is limited to use below pH buffer solution to calibrate: 4.00, 6.86, 9.18. When calibration, user need to clean the electrode and put the probe in the pH buffer solution to wait the value stable ( a new clean electrode might need max 24 hours to be stable).
628 )))
629
630 (((
631 After stable, user can use below command to calibrate.
632 )))
633
634 [[image:image-20220607171149-4.png]]
635
636
637 (% style="color:#037691" %)**Calibration Payload**
638
639 (% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %)
640 |=(% style="width: 62.5px;" %)(((
641 **Size (bytes)**
642 )))|=(% style="width: 89px;" %)**1**|=(% style="width: 89px;" %)**1**|=(% style="width: 89px;" %)**1**|=(% style="width: 89px;" %)**7**|=(% style="width: 89px;" %)**1**
643 |**Value**|(((
644 PH4
645
646 Calibrate value
647 )))|PH6.86 Calibrate value|(((
648 PH9.18
649
650 Calibrate value
651 )))|Reserve|(((
652 [[Message Type>>||anchor="H2.3.6MessageType"]]
653
654 Always 0x03
655 )))
656
657 User can also send 0x14 downlink command to poll the current calibration payload.
658
659 [[image:image-20220607171416-7.jpeg]]
660
661
662 * Reply to the confirmation package: 14 01
663 * Reply to non-confirmed packet: 14 00
664
665 == 2.8 Frequency Plans ==
666
667 (((
668 The LSPH01 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.
669 )))
670
671
672 === 2.8.1 EU863-870 (EU868) ===
673
674 (((
675 (% style="color:blue" %)**Uplink:**
676 )))
677
678 (((
679 868.1 - SF7BW125 to SF12BW125
680 )))
681
682 (((
683 868.3 - SF7BW125 to SF12BW125 and SF7BW250
684 )))
685
686 (((
687 868.5 - SF7BW125 to SF12BW125
688 )))
689
690 (((
691 867.1 - SF7BW125 to SF12BW125
692 )))
693
694 (((
695 867.3 - SF7BW125 to SF12BW125
696 )))
697
698 (((
699 867.5 - SF7BW125 to SF12BW125
700 )))
701
702 (((
703 867.7 - SF7BW125 to SF12BW125
704 )))
705
706 (((
707 867.9 - SF7BW125 to SF12BW125
708 )))
709
710 (((
711 868.8 - FSK
712 )))
713
714 (((
715
716 )))
717
718 (((
719 (% style="color:blue" %)**Downlink:**
720 )))
721
722 (((
723 Uplink channels 1-9 (RX1)
724 )))
725
726 (((
727 869.525 - SF9BW125 (RX2 downlink only)
728 )))
729
730
731
732 === 2.8.2 US902-928(US915) ===
733
734 (((
735 Used in USA, Canada and South America. Frequency band as per definition in LoRaWAN 1.0.3 Regional document.
736 )))
737
738 (((
739 To make sure the end node supports all sub band by default. In the OTAA Join process, the end node will use frequency 1 from sub-band1, then frequency 1 from sub-band2, then frequency 1 from sub-band3, etc to process the OTAA join.
740 )))
741
742 (((
743 After Join success, the end node will switch to the correct sub band by:
744 )))
745
746 * Check what sub-band the LoRaWAN server ask from the OTAA Join Accept message and switch to that sub-band
747 * Use the Join successful sub-band if the server doesn’t include sub-band info in the OTAA Join Accept message ( TTN v2 doesn't include)
748
749 === 2.8.3 CN470-510 (CN470) ===
750
751 (((
752 Used in China, Default use CHE=1
753 )))
754
755 (((
756 (% style="color:blue" %)**Uplink:**
757 )))
758
759 (((
760 486.3 - SF7BW125 to SF12BW125
761 )))
762
763 (((
764 486.5 - SF7BW125 to SF12BW125
765 )))
766
767 (((
768 486.7 - SF7BW125 to SF12BW125
769 )))
770
771 (((
772 486.9 - SF7BW125 to SF12BW125
773 )))
774
775 (((
776 487.1 - SF7BW125 to SF12BW125
777 )))
778
779 (((
780 487.3 - SF7BW125 to SF12BW125
781 )))
782
783 (((
784 487.5 - SF7BW125 to SF12BW125
785 )))
786
787 (((
788 487.7 - SF7BW125 to SF12BW125
789 )))
790
791 (((
792
793 )))
794
795 (((
796 (% style="color:blue" %)**Downlink:**
797 )))
798
799 (((
800 506.7 - SF7BW125 to SF12BW125
801 )))
802
803 (((
804 506.9 - SF7BW125 to SF12BW125
805 )))
806
807 (((
808 507.1 - SF7BW125 to SF12BW125
809 )))
810
811 (((
812 507.3 - SF7BW125 to SF12BW125
813 )))
814
815 (((
816 507.5 - SF7BW125 to SF12BW125
817 )))
818
819 (((
820 507.7 - SF7BW125 to SF12BW125
821 )))
822
823 (((
824 507.9 - SF7BW125 to SF12BW125
825 )))
826
827 (((
828 508.1 - SF7BW125 to SF12BW125
829 )))
830
831 (((
832 505.3 - SF12BW125 (RX2 downlink only)
833 )))
834
835
836
837 === 2.8.4 AU915-928(AU915) ===
838
839 (((
840 Frequency band as per definition in LoRaWAN 1.0.3 Regional document.
841 )))
842
843 (((
844 To make sure the end node supports all sub band by default. In the OTAA Join process, the end node will use frequency 1 from sub-band1, then frequency 1 from sub-band2, then frequency 1 from sub-band3, etc to process the OTAA join.
845 )))
846
847 (((
848
849 )))
850
851 (((
852 After Join success, the end node will switch to the correct sub band by:
853 )))
854
855 * Check what sub-band the LoRaWAN server ask from the OTAA Join Accept message and switch to that sub-band
856 * Use the Join successful sub-band if the server doesn’t include sub-band info in the OTAA Join Accept message ( TTN v2 doesn't include)
857
858 === 2.8.5 AS920-923 & AS923-925 (AS923) ===
859
860 (((
861 (% style="color:blue" %)**Default Uplink channel:**
862 )))
863
864 (((
865 923.2 - SF7BW125 to SF10BW125
866 )))
867
868 (((
869 923.4 - SF7BW125 to SF10BW125
870 )))
871
872 (((
873
874 )))
875
876 (((
877 (% style="color:blue" %)**Additional Uplink Channel**:
878 )))
879
880 (((
881 (OTAA mode, channel added by JoinAccept message)
882 )))
883
884 (((
885
886 )))
887
888 (((
889 (% style="color:blue" %)**AS920~~AS923 for Japan, Malaysia, Singapore**:
890 )))
891
892 (((
893 922.2 - SF7BW125 to SF10BW125
894 )))
895
896 (((
897 922.4 - SF7BW125 to SF10BW125
898 )))
899
900 (((
901 922.6 - SF7BW125 to SF10BW125
902 )))
903
904 (((
905 922.8 - SF7BW125 to SF10BW125
906 )))
907
908 (((
909 923.0 - SF7BW125 to SF10BW125
910 )))
911
912 (((
913 922.0 - SF7BW125 to SF10BW125
914 )))
915
916 (((
917
918 )))
919
920 (((
921 (% style="color:blue" %)**AS923 ~~ AS925 for Brunei, Cambodia, Hong Kong, Indonesia, Laos, Taiwan, Thailand, Vietnam**:
922 )))
923
924 (((
925 923.6 - SF7BW125 to SF10BW125
926 )))
927
928 (((
929 923.8 - SF7BW125 to SF10BW125
930 )))
931
932 (((
933 924.0 - SF7BW125 to SF10BW125
934 )))
935
936 (((
937 924.2 - SF7BW125 to SF10BW125
938 )))
939
940 (((
941 924.4 - SF7BW125 to SF10BW125
942 )))
943
944 (((
945 924.6 - SF7BW125 to SF10BW125
946 )))
947
948 (((
949
950 )))
951
952 (((
953 (% style="color:blue" %)**Downlink:**
954 )))
955
956 (((
957 Uplink channels 1-8 (RX1)
958 )))
959
960 (((
961 923.2 - SF10BW125 (RX2)
962 )))
963
964
965
966 === 2.8.6 KR920-923 (KR920) ===
967
968 (((
969 (% style="color:blue" %)**Default channel:**
970 )))
971
972 (((
973 922.1 - SF7BW125 to SF12BW125
974 )))
975
976 (((
977 922.3 - SF7BW125 to SF12BW125
978 )))
979
980 (((
981 922.5 - SF7BW125 to SF12BW125
982 )))
983
984 (((
985
986 )))
987
988 (((
989 (% style="color:blue" %)**Uplink: (OTAA mode, channel added by JoinAccept message)**
990 )))
991
992 (((
993 922.1 - SF7BW125 to SF12BW125
994 )))
995
996 (((
997 922.3 - SF7BW125 to SF12BW125
998 )))
999
1000 (((
1001 922.5 - SF7BW125 to SF12BW125
1002 )))
1003
1004 (((
1005 922.7 - SF7BW125 to SF12BW125
1006 )))
1007
1008 (((
1009 922.9 - SF7BW125 to SF12BW125
1010 )))
1011
1012 (((
1013 923.1 - SF7BW125 to SF12BW125
1014 )))
1015
1016 (((
1017 923.3 - SF7BW125 to SF12BW125
1018 )))
1019
1020 (((
1021
1022 )))
1023
1024 (((
1025 (% style="color:blue" %)**Downlink:**
1026 )))
1027
1028 (((
1029 Uplink channels 1-7(RX1)
1030 )))
1031
1032 (((
1033 921.9 - SF12BW125 (RX2 downlink only; SF12BW125 might be changed to SF9BW125)
1034 )))
1035
1036
1037
1038 === 2.8.7 IN865-867 (IN865) ===
1039
1040 (((
1041 (% style="color:blue" %)**Uplink:**
1042 )))
1043
1044 (((
1045 865.0625 - SF7BW125 to SF12BW125
1046 )))
1047
1048 (((
1049 865.4025 - SF7BW125 to SF12BW125
1050 )))
1051
1052 (((
1053 865.9850 - SF7BW125 to SF12BW125
1054 )))
1055
1056 (((
1057
1058 )))
1059
1060 (((
1061 (% style="color:blue" %)**Downlink:**
1062 )))
1063
1064 (((
1065 Uplink channels 1-3 (RX1)
1066 )))
1067
1068 (((
1069 866.550 - SF10BW125 (RX2)
1070 )))
1071
1072
1073
1074 == 2.9 LED Indicator ==
1075
1076 The LSPH01 has an internal LED which is to show the status of different state.
1077
1078 * The sensor is detected when the device is turned on, and it will flash 4 times quickly when it is detected.
1079 * Blink once when device transmit a packet.
1080
1081 == 2.10 ​Firmware Change Log ==
1082
1083
1084 **Firmware download link:**
1085
1086 [[http:~~/~~/www.dragino.com/downloads/index.pHp?dir=LoRa_End_Node/LSPH01/Firmware/>>url:http://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/LSE01/Firmware/]]
1087
1088
1089 **Firmware Upgrade Method: **[[Firmware Upgrade Instruction>>path:/xwiki/bin/view/Main/Firmware%20Upgrade%20Instruction%20for%20STM32%20base%20products/]]
1090
1091
1092
1093 = 3. Configure LSPH01 via AT Command or LoRaWAN Downlink =
1094
1095 (((
1096 Use can configure LSPH01 via AT Command or LoRaWAN Downlink.
1097 )))
1098
1099 * (((
1100 AT Command Connection: See [[FAQ>>||anchor="H6.FAQ"]].
1101 )))
1102 * (((
1103 LoRaWAN Downlink instruction for different platforms: [[IoT LoRaWAN Server>>path:/xwiki/bin/view/Main/]]
1104 )))
1105
1106 (((
1107 There are two kinds of commands to configure LSPH01, they are:
1108 )))
1109
1110 * (((
1111 (% style="color:#4f81bd" %)** General Commands**.
1112 )))
1113
1114 (((
1115 These commands are to configure:
1116 )))
1117
1118 * (((
1119 General system settings like: uplink interval.
1120 )))
1121 * (((
1122 LoRaWAN protocol & radio related command.
1123 )))
1124
1125 (((
1126 They are same for all Dragino Device which support DLWS-005 LoRaWAN Stack. These commands can be found on the wiki:[[End Device AT Commands and Downlink Command>>path:/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/]]
1127 )))
1128
1129 (((
1130
1131 )))
1132
1133 * (((
1134 (% style="color:#4f81bd" %)** Commands special design for LSPH01**
1135 )))
1136
1137 (((
1138 These commands only valid for LSPH01, as below:
1139 )))
1140
1141
1142
1143 == 3.1 Set Transmit Interval Time ==
1144
1145 Feature: Change LoRaWAN End Node Transmit Interval.
1146
1147 (% style="color:#037691" %)**AT Command: AT+TDC**
1148
1149 [[image:image-20220607171554-8.png]]
1150
1151
1152
1153 (((
1154 (% style="color:#037691" %)**Downlink Command: 0x01**
1155 )))
1156
1157 (((
1158 Format: Command Code (0x01) followed by 3 bytes time value.
1159 )))
1160
1161 (((
1162 If the downlink payload=0100003C, it means set the END Node’s Transmit Interval to 0x00003C=60(S), while type code is 01.
1163 )))
1164
1165 * (((
1166 Example 1: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds
1167 )))
1168 * (((
1169 Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds
1170
1171
1172
1173 )))
1174
1175 == 3.2 Set Interrupt Mode ==
1176
1177 Feature, Set Interrupt mode for GPIO_EXIT.
1178
1179 (% style="color:#037691" %)**AT Command: AT+INTMOD**
1180
1181 [[image:image-20220607171716-9.png]]
1182
1183
1184 (((
1185 (% style="color:#037691" %)**Downlink Command: 0x06**
1186 )))
1187
1188 (((
1189 Format: Command Code (0x06) followed by 3 bytes.
1190 )))
1191
1192 (((
1193 This means that the interrupt mode of the end node is set to 0x000003=3 (rising edge trigger), and the type code is 06.
1194 )))
1195
1196 * (((
1197 Example 1: Downlink Payload: 06000000 ~/~/ Turn off interrupt mode
1198 )))
1199 * (((
1200 Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger
1201 )))
1202
1203 (((
1204
1205 )))
1206
1207
1208
1209 == 3.3 Calibrate Sensor ==
1210
1211 Detail See [[Calibration Guide>>||anchor="H2.7Calibration"]] for the user of 0x13 and 0x14 downlink commands
1212
1213
1214
1215 == 3.4 Get Firmware Version Info ==
1216
1217 Feature: use downlink to get firmware version.
1218
1219 (% style="color:#037691" %)**Downlink Command: 0x26**
1220
1221 [[image:image-20220607171917-10.png]]
1222
1223 * Reply to the confirmation package: 26 01
1224 * Reply to non-confirmed packet: 26 00
1225
1226 Device will send an uplink after got this downlink command. With below payload:
1227
1228 Configures info payload:
1229
1230 (% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %)
1231 |=(((
1232 **Size(bytes)**
1233 )))|=**1**|=**1**|=**1**|=**1**|=**1**|=**5**|=**1**
1234 |**Value**|Software Type|(((
1235 Frequency
1236
1237 Band
1238 )))|Sub-band|(((
1239 Firmware
1240
1241 Version
1242 )))|Sensor Type|Reserve|(((
1243 [[Message Type>>||anchor="H2.3.6MessageType"]]
1244 Always 0x02
1245 )))
1246
1247 **Software Type**: Always 0x03 for LSPH01
1248
1249
1250 **Frequency Band**:
1251
1252 *0x01: EU868
1253
1254 *0x02: US915
1255
1256 *0x03: IN865
1257
1258 *0x04: AU915
1259
1260 *0x05: KZ865
1261
1262 *0x06: RU864
1263
1264 *0x07: AS923
1265
1266 *0x08: AS923-1
1267
1268 *0x09: AS923-2
1269
1270 *0xa0: AS923-3
1271
1272
1273 **Sub-Band**: value 0x00 ~~ 0x08
1274
1275
1276 **Firmware Version**: 0x0100, Means: v1.0.0 version
1277
1278
1279 **Sensor Type**:
1280
1281 0x01: LSE01
1282
1283 0x02: LDDS75
1284
1285 0x03: LDDS20
1286
1287 0x04: LLMS01
1288
1289 0x05: LSPH01
1290
1291 0x06: LSNPK01
1292
1293 0x07: LDDS12
1294
1295
1296
1297 = 4. Battery & How to replace =
1298
1299 == 4.1 Battery Type ==
1300
1301 (((
1302 LSPH01 is equipped with a [[8500mAH ER26500 Li-SOCI2 battery>>url:https://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]. The battery is un-rechargeable battery with low discharge rate targeting for 8~~10 years use. This type of battery is commonly used in IoT target for long-term running, such as water meter.
1303 )))
1304
1305 (((
1306 The discharge curve is not linear so can’t simply use percentage to show the battery level. Below is the battery performance.
1307 )))
1308
1309 [[image:1654593587246-335.png]]
1310
1311
1312 Minimum Working Voltage for the LSPH01:
1313
1314 LSPH01:  2.45v ~~ 3.6v
1315
1316
1317
1318 == 4.2 Replace Battery ==
1319
1320 (((
1321 Any battery with range 2.45 ~~ 3.6v can be a replacement. We recommend to use Li-SOCl2 Battery.
1322 )))
1323
1324 (((
1325 And make sure the positive and negative pins match.
1326 )))
1327
1328
1329
1330 == 4.3 Power Consumption Analyze ==
1331
1332 (((
1333 Dragino Battery powered product are all runs in Low Power mode. We have an update battery calculator which base on the measurement of the real device. User can use this calculator to check the battery life and calculate the battery life if want to use different transmit interval.
1334 )))
1335
1336 (((
1337 Instruction to use as below:
1338 )))
1339
1340
1341 **Step 1**: Downlink the up-to-date DRAGINO_Battery_Life_Prediction_Table.xlsx from:
1342
1343 [[https:~~/~~/www.dragino.com/downloads/index.pHp?dir=LoRa_End_Node/Battery_Analyze/>>url:https://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/Battery_Analyze/]]
1344
1345
1346 **Step 2**: Open it and choose
1347
1348 * Product Model
1349 * Uplink Interval
1350 * Working Mode
1351
1352 And the Life expectation in difference case will be shown on the right.
1353
1354 [[image:1654593605679-189.png]]
1355
1356
1357 The battery related documents as below:
1358
1359 * (((
1360 [[Battery Dimension>>url:http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/&file=LSN50-Battery-Dimension.pdf]],
1361 )))
1362 * (((
1363 [[Lithium-Thionyl Chloride Battery  datasheet>>url:https://www.dragino.com/downloads/downloads/datasheet/Battery/ER26500/ER26500_Datasheet-EN.pdf]],
1364 )))
1365 * (((
1366 [[Lithium-ion Battery-Capacitor datasheet>>url:http://www.dragino.com/downloads/downloads/datasheet/Battery/SPC_1520_datasheet.jpg]], [[Tech Spec>>url:http://www.dragino.com/downloads/downloads/datasheet/Battery/SPC1520%20Technical%20Specification20171123.pdf]]
1367 )))
1368
1369 [[image:image-20220607172042-11.png]]
1370
1371
1372
1373 === 4.3.1 ​Battery Note ===
1374
1375 (((
1376 The Li-SICO battery is designed for small current / long period application. It is not good to use a high current, short period transmit method. The recommended minimum period for use of this battery is 5 minutes. If you use a shorter period time to transmit LoRa, then the battery life may be decreased.
1377 )))
1378
1379
1380
1381 === ​4.3.2 Replace the battery ===
1382
1383 (((
1384 You can change the battery in the LSPH01.The type of battery is not limited as long as the output is between 3v to 3.6v. On the main board, there is a diode (D1) between the battery and the main circuit. If you need to use a battery with less than 3.3v, please remove the D1 and shortcut the two pads of it so there won’t be voltage drop between battery and main board.
1385 )))
1386
1387 (((
1388 The default battery pack of LSPH01 includes a ER26500 plus super capacitor. If user can’t find this pack locally, they can find ER26500 or equivalence, which will also work in most case. The SPC can enlarge the battery life for high frequency use (update period below 5 minutes)
1389 )))
1390
1391
1392
1393 = 5. Use AT Command =
1394
1395 == 5.1 Access AT Commands ==
1396
1397 LSPH01 supports AT Command set in the stock firmware. You can use a USB to TTL adapter to connect to LSPH01 for using AT command, as below.
1398
1399 [[image:1654593668970-604.png]]
1400
1401 **Connection:**
1402
1403 (% style="background-color:yellow" %)** USB TTL GND <~-~-~-~-> GND**
1404
1405 (% style="background-color:yellow" %)** USB TTL TXD  <~-~-~-~-> UART_RXD**
1406
1407 (% style="background-color:yellow" %)** USB TTL RXD  <~-~-~-~-> UART_TXD**
1408
1409
1410 (((
1411 In the PC, you need to set the serial baud rate to (% style="color:green" %)**9600**(%%) to access the serial console for LSPH01. LSPH01 will output system info once power on as below:
1412 )))
1413
1414
1415 [[image:1654593712276-618.png]]
1416
1417 Valid AT Command please check [[Configure Device>>||anchor="H3.ConfigureLSPH01viaATCommandorLoRaWANDownlink"]].
1418
1419
1420 = 6. FAQ =
1421
1422 == 6.1 How to change the LoRa Frequency Bands/Region ==
1423
1424 You can follow the instructions for [[how to upgrade image>>||anchor="H2.10200BFirmwareChangeLog"]].
1425 When downloading the images, choose the required image file for download. ​
1426
1427
1428 = 7. Trouble Shooting =
1429
1430 == 7.1 AT Commands input doesn’t work ==
1431
1432 In the case if user can see the console output but can’t type input to the device. Please check if you already include the (% style="color:green" %)**ENTER**(%%) while sending out the command. Some serial tool doesn’t send (% style="color:green" %)**ENTER**(%%) while press the send key, user need to add ENTER in their string.
1433
1434
1435
1436 = 8. Order Info =
1437
1438 Part Number: (% style="color:blue" %)**LSPH01-XX**
1439
1440
1441 (% style="color:blue" %)**XX**(%%): The default frequency band
1442
1443 * (% style="color:red" %)**AS923**(%%):  LoRaWAN AS923 band
1444 * (% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band
1445 * (% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band
1446 * (% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band
1447 * (% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band
1448 * (% style="color:red" %)**US915**(%%): LoRaWAN US915 band
1449 * (% style="color:red" %)**IN865**(%%):  LoRaWAN IN865 band
1450 * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
1451
1452 = 9. ​Packing Info =
1453
1454
1455 **Package Includes**:
1456
1457 * LSPH01 LoRaWAN Soil Ph Sensor x 1
1458
1459 **Dimension and weight**:
1460
1461 * Device Size: cm
1462 * Device Weight: g
1463 * Package Size / pcs : cm
1464 * Weight / pcs : g
1465
1466 = 10. ​Support =
1467
1468 * 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.
1469 * 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]].
Copyright ©2010-2022 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0