Show last authors
1 (% style="text-align:center" %)
2 [[image:1654592399090-860.png||height="521" width="483"]]
3
4
5
6
7
8
9
10
11
12 **Table of Contents:**
13
14 {{toc/}}
15
16
17
18
19
20
21
22
23
24
25 = 1. Introduction =
26
27 == 1.1 ​What is LoRaWAN Soil pH Sensor ==
28
29 (((
30
31
32 The Dragino LSPH01 is a (% style="color:#4f81bd" %)**LoRaWAN Soil pH Sensor**(%%) for IoT of Agriculture. It is designed to measure the soil PH and soil temperature, so to send to the platform to analyze the soil acid or alkali level. The probe is IP68 waterproof.
33 )))
34
35 (((
36 LSPH01 probe is made by Solid AgCl reference electrode and Pure metal pH sensitive electrode. It can detect soil's** (% style="color:#4f81bd" %)pH (%%)**with high accuracy and stable value. The LSPH01 probe can be buried into soil for long time use.
37 )))
38
39 (((
40 The LoRa wireless technology used in LSPH01 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.
41 )))
42
43 (((
44 LSPH01 is powered by (% style="color:#4f81bd" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long term use up to 5 years.
45 )))
46
47 (((
48 Each LSPH01 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.
49 )))
50
51
52 [[image:1654592435432-887.png]]
53
54
55
56
57 == ​1.2 Features ==
58
59 * LoRaWAN 1.0.3 Class A
60 * Ultra-low power consumption
61 * Monitor soil pH with temperature compensation.
62 * Monitor soil temperature
63 * Monitor Battery Level
64 * Support pH calibration by end user
65 * Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865
66 * AT Commands to change parameters
67 * Uplink on periodically
68 * Downlink to change configure
69 * IP66 Waterproof Enclosure
70 * IP68 rate for the Sensor Probe
71 * 8500mAh Battery for long term use
72
73 == 1.3 Probe Specification ==
74
75
76 (% style="color:#4f81bd" %)**Soil pH:**
77
78 * Range: 3 ~~ 10 pH
79 * Resolution: 0.01 pH
80 * Accuracy: ±2% under (0~~50 ℃, Accuracy will poor under 0 due to frozen)
81 * Temperature Compensation Range: 0 ~~ 50℃
82 * IP68 Protection
83 * Length: 3.5 meters
84
85 (% style="color:#4f81bd" %)**Soil Temperature:**
86
87 * Range -40℃~85℃
88 * Resolution: 0.1℃
89 * Accuracy: <±0.5℃(-10℃~40℃),<±0.8℃ (others)
90 * IP68 Protection
91 * Length: 3.5 meters
92
93 == 1.4 ​Applications ==
94
95 * Smart Agriculture
96
97 == 1.5 Pin mapping and power on ==
98
99 [[image:1654592472094-134.png]]
100
101
102
103 = 2. Configure LSPH01 to connect to LoRaWAN network =
104
105 == 2.1 How it works ==
106
107 (((
108 The LSPH01 is configured as 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 power on the LSPH01. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 20 minutes.
109 )))
110
111 (((
112 In case you can’t set the OTAA keys in the LoRaWAN OTAA server, and you have to use the keys from the server, you can [[use AT Commands >>||anchor="H5.UseATCommand"]]to set the keys in the LSPH01.
113 )))
114
115
116 == 2.2 ​Quick guide to connect to LoRaWAN server (OTAA) ==
117
118 (((
119 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 [[LG308>>url:http://www.dragino.com/products/lora/item/140-lg308.html]] as a LoRaWAN gateway in this example.
120 )))
121
122 (((
123 [[image:1654592492399-921.png]]
124
125
126 )))
127
128 (((
129 The LG308 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.
130
131
132 )))
133
134 (((
135 (% style="color:blue" %)**Step 1**(%%): Create a device in TTN with the OTAA keys from LSPH01.
136 )))
137
138 (((
139 Each LSPH01 is shipped with a sticker with the default device EUI as below:
140 )))
141
142 [[image:image-20220607170145-1.jpeg]]
143
144
145
146 You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
147
148
149 **Register the device**
150
151
152 [[image:1654592600093-601.png]]
153
154
155
156 **Add APP EUI and DEV EUI**
157
158 [[image:1654592619856-881.png]]
159
160
161
162 **Add APP EUI in the application**
163
164 [[image:1654592632656-512.png]]
165
166
167
168 **Add APP KEY**
169
170 [[image:1654592653453-934.png]]
171
172
173 (% style="color:blue" %)**Step 2**(%%): Power on LSPH01
174
175
176 Put a Jumper on JP2 to power on the device. ( The Switch must be in FLASH position).
177
178 [[image:image-20220607170442-2.png]]
179
180
181 (((
182 (% style="color:blue" %)**Step 3**(%%)**:** The LSPH01 will auto join to the TTN network. After join success, it will start to upload messages to TTN and you can see the messages in the panel.
183 )))
184
185 [[image:1654592697690-910.png]]
186
187
188
189 == 2.3 ​Uplink Payload ==
190
191 (((
192 LSPH01 will uplink payload via LoRaWAN with below payload format: 
193 )))
194
195 (((
196 Uplink payload includes in total 11 bytes.
197 )))
198
199 (((
200 Normal uplink payload:
201 )))
202
203 (% border="1" cellspacing="10" style="background-color:#ffffcc; width:510px" %)
204 |=(% style="width: 62.5px;" %)(((
205 **Size (bytes)**
206 )))|=(% style="width: 62.5px;" %)**2**|=(% style="width: 62.5px;" %)**2**|=**2**|=**2**|=**1**|=**1**|=**1**
207 |(% style="width:62.5px" %)**Value**|(% style="width:62.5px" %)[[BAT>>||anchor="H2.3.1BatteryInfo"]]|(% style="width:62.5px" %)(((
208 [[Temperature>>||anchor="H2.3.2DS18B20Temperaturesensor"]]
209
210 [[(Optional)>>||anchor="H2.3.2DS18B20Temperaturesensor"]]
211 )))|[[Soil pH>>||anchor="H2.3.3SoilpH"]]|[[Soil Temperature>>||anchor="H2.3.4SoilTemperature"]]|(((
212 [[Digital Interrupt (Optional)>>||anchor="H2.3.5InterruptPin"]]
213 )))|Reserve|(((
214 [[Message Type>>||anchor="H2.3.6MessageType"]]
215 )))
216
217 [[image:1654592721645-318.png]]
218
219
220
221 === 2.3.1 Battery Info ===
222
223
224 Check the battery voltage for LSPH01.
225
226 Ex1: 0x0B45 = 2885mV
227
228 Ex2: 0x0B49 = 2889mV
229
230
231
232 === 2.3.2 DS18B20 Temperature sensor ===
233
234 This is optional, user can connect external DS18B20 sensor to the +3.3v, 1-wire and GND pin . and this field will report temperature.
235
236
237 **Example**:
238
239 If payload is: 0105H:  (0105 & FC00 == 0), temp = 0105H /10 = 26.1 degree
240
241 If payload is: FF3FH :  (FF3F & FC00 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
242
243
244
245 === 2.3.3 Soil pH ===
246
247 Range: 0 ~~ 14 pH
248
249 **Example:**
250
251 (% style="color:#037691" %)** 0x02B7(H) = 695(D) = 6.95pH**
252
253
254
255 === 2.3.4 Soil Temperature ===
256
257 Get Soil Temperature 
258
259
260 **Example**:
261
262 If payload is: **0105H**:  (0105 & FC00 == 0), temp = 0105H /10 = 26.1 degree
263
264 If payload is: **FF3FH** :  (FF3F & FC00 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
265
266
267
268 === 2.3.5 Interrupt Pin ===
269
270 This data field shows if this packet is generated by interrupt or not. [[Click here>>||anchor="H3.2SetInterruptMode"]] for the hardware and software set up.
271
272
273 **Example:**
274
275 0x00: Normal uplink packet.
276
277 0x01: Interrupt Uplink Packet.
278
279
280
281 === 2.3.6 Message Type ===
282
283 (((
284 For a normal uplink payload, the message type is always 0x01.
285 )))
286
287 (((
288 Valid Message Type:
289 )))
290
291
292 (% border="1" cellspacing="10" style="background-color:#ffffcc; width:499px" %)
293 |=(% style="width: 160px;" %)**Message Type Code**|=(% style="width: 163px;" %)**Description**|=(% style="width: 173px;" %)**Payload**
294 |(% style="width:160px" %)0x01|(% style="width:163px" %)Normal Uplink|(% style="width:173px" %)[[Normal Uplink Payload>>||anchor="H2.3200BUplinkPayload"]]
295 |(% style="width:160px" %)0x02|(% style="width:163px" %)Reply configures info|(% style="width:173px" %)[[Configure Info Payload>>||anchor="H3.4GetFirmwareVersionInfo"]]
296 |(% style="width:160px" %)0x03|(% style="width:163px" %)Reply Calibration Info|(% style="width:173px" %)[[Calibration Payload>>||anchor="H2.7Calibration"]]
297
298 === 2.3.7 Decode payload in The Things Network ===
299
300 While using TTN network, you can add the payload format to decode the payload.
301
302
303 [[image:1654592762713-715.png]]
304
305 (((
306 The payload decoder function for TTN is here:
307 )))
308
309 (((
310 LSPH01 TTN Payload Decoder: [[https:~~/~~/www.dragino.com/downloads/index.pHp?dir=LoRa_End_Node/LSPH01/Decoder/>>url:https://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/LSNPK01/Decoder/]]
311 )))
312
313
314
315 == 2.4 Uplink Interval ==
316
317 The LSPH01 by default uplink the sensor data every 20 minutes. User can change this interval by AT Command or LoRaWAN Downlink Command. See this link: [[Change Uplink Interval>>doc:Main.End Device AT Commands and Downlink Command.WebHome||anchor="H4.1ChangeUplinkInterval"]]
318
319
320
321 == 2.5 ​Show Data in DataCake IoT Server ==
322
323 (((
324 [[DATACAKE>>url:https://datacake.co/]] provides a human friendly interface to show the sensor data, once we have data in TTN, we can use [[DATACAKE>>url:https://datacake.co/]] to connect to TTN and see the data in DATACAKE. Below are the steps:
325 )))
326
327 (((
328
329 )))
330
331 (((
332 (% style="color:blue" %)**Step 1**(%%)**: Be sure that your device is programmed and properly connected to the network at this time.**
333 )))
334
335 (((
336 (% style="color:blue" %)**Step 2**(%%)**: To configure the Application to forward data to DATACAKE you will need to add integration. To add the DATACAKE integration, perform the following steps:**
337 )))
338
339
340 [[image:1654592790040-760.png]]
341
342
343 [[image:1654592800389-571.png]]
344
345
346 (% style="color:blue" %)**Step 3**(%%)**: Create an account or log in Datacake.**
347
348 (% style="color:blue" %)**Step 4**(%%)**: Create LSPH01 product.**
349
350 [[image:1654592819047-535.png]]
351
352
353
354 [[image:1654592833877-762.png]]
355
356
357 [[image:1654592856403-259.png]]
358
359
360 (((
361 (% style="color:blue" %)**Step 5**(%%)**: add payload decode**
362 )))
363
364 (((
365 Download Datacake decoder from: [[https:~~/~~/www.dragino.com/downloads/index.pHp?dir=LoRa_End_Node/LSPH01/Decoder/>>url:https://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/LSNPK01/Decoder/]]
366 )))
367
368
369 [[image:1654592878525-845.png]]
370
371 [[image:1654592892967-474.png]]
372
373
374 [[image:1654592905354-123.png]]
375
376
377 After added, the sensor data arrive TTN, it will also arrive and show in Mydevices.
378
379
380 [[image:1654592917530-261.png]]
381
382
383
384 == 2.6 Installation and Maintain ==
385
386 === 2.6.1 Before measurement ===
387
388 (((
389 (((
390 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. 
391 )))
392 )))
393
394
395
396 === 2.6.2 Measurement ===
397
398
399 (((
400 (% style="color:#4f81bd" %)**Measurement the soil surface:**
401 )))
402
403 (((
404 [[image:1654592946732-634.png]]
405 )))
406
407 (((
408 Choose the proper measuring position. Split the surface soil according to the measured deep.
409 )))
410
411 (((
412 Put pure water, or rainwater to make the soil of measurement point to moist mud. Remove rocks or hard things.
413 )))
414
415 (((
416 Slowly insert the probe to the measure point. Don’t use large force which will break the probe. Make sure not shake when inserting.
417 )))
418
419 (((
420 Put soil over the probe after insert. And start to measure.
421 )))
422
423 (((
424
425 )))
426
427 (((
428 (% style="color:#4f81bd" %)**Measurement inside soil:**
429 )))
430
431 (((
432 Dig a hole with diameter > 20CM.
433 )))
434
435 (((
436 Insert the probe inside, method like measure the surface.
437 )))
438
439
440
441 === 2.6.3 Maintain Probe ===
442
443 1. (((
444 pH probe electrode is fragile and no strong. User must avoid strong force or hitting it.
445 )))
446 1. (((
447 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.
448 )))
449 1. (((
450 Probe reference electrode is also no strong, need to avoid strong force or hitting.
451 )))
452 1. (((
453 User should keep reference electrode wet while not use.
454 )))
455 1. (((
456 Avoid the probes to touch oily matter. Which will cause issue in accuracy.
457 )))
458 1. (((
459 The probe is IP68 can be put in water.
460
461
462
463 )))
464
465 == 2.7 Calibration ==
466
467 (((
468 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).
469 )))
470
471 (((
472 After stable, user can use below command to calibrate.
473 )))
474
475 [[image:image-20220607171149-4.png]]
476
477
478 (% style="color:#037691" %)**Calibration Payload**
479
480 (% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %)
481 |=(% style="width: 62.5px;" %)(((
482 **Size (bytes)**
483 )))|=(% style="width: 89px;" %)**1**|=(% style="width: 89px;" %)**1**|=(% style="width: 89px;" %)**1**|=(% style="width: 89px;" %)**7**|=(% style="width: 89px;" %)**1**
484 |**Value**|(((
485 PH4
486
487 Calibrate value
488 )))|PH6.86 Calibrate value|(((
489 PH9.18
490
491 Calibrate value
492 )))|Reserve|(((
493 [[Message Type>>||anchor="H2.3.6MessageType"]]
494
495 Always 0x03
496 )))
497
498 User can also send 0x14 downlink command to poll the current calibration payload.
499
500 [[image:image-20220607171416-7.jpeg]]
501
502
503 * Reply to the confirmation package: 14 01
504 * Reply to non-confirmed packet: 14 00
505
506
507 == 2.8 Frequency Plans ==
508
509 (((
510 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.
511 )))
512
513
514 === 2.8.1 EU863-870 (EU868) ===
515
516 (((
517 (% style="color:blue" %)**Uplink:**
518 )))
519
520 (((
521 868.1 - SF7BW125 to SF12BW125
522 )))
523
524 (((
525 868.3 - SF7BW125 to SF12BW125 and SF7BW250
526 )))
527
528 (((
529 868.5 - SF7BW125 to SF12BW125
530 )))
531
532 (((
533 867.1 - SF7BW125 to SF12BW125
534 )))
535
536 (((
537 867.3 - SF7BW125 to SF12BW125
538 )))
539
540 (((
541 867.5 - SF7BW125 to SF12BW125
542 )))
543
544 (((
545 867.7 - SF7BW125 to SF12BW125
546 )))
547
548 (((
549 867.9 - SF7BW125 to SF12BW125
550 )))
551
552 (((
553 868.8 - FSK
554 )))
555
556 (((
557
558 )))
559
560 (((
561 (% style="color:blue" %)**Downlink:**
562 )))
563
564 (((
565 Uplink channels 1-9 (RX1)
566 )))
567
568 (((
569 869.525 - SF9BW125 (RX2 downlink only)
570 )))
571
572
573
574 === 2.8.2 US902-928(US915) ===
575
576 (((
577 Used in USA, Canada and South America. Frequency band as per definition in LoRaWAN 1.0.3 Regional document.
578 )))
579
580 (((
581 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.
582 )))
583
584 (((
585 After Join success, the end node will switch to the correct sub band by:
586 )))
587
588 * Check what sub-band the LoRaWAN server ask from the OTAA Join Accept message and switch to that sub-band
589 * 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)
590
591
592
593
594
595
596 === 2.8.3 CN470-510 (CN470) ===
597
598 (((
599 Used in China, Default use CHE=1
600 )))
601
602 (((
603 (% style="color:blue" %)**Uplink:**
604 )))
605
606 (((
607 486.3 - SF7BW125 to SF12BW125
608 )))
609
610 (((
611 486.5 - SF7BW125 to SF12BW125
612 )))
613
614 (((
615 486.7 - SF7BW125 to SF12BW125
616 )))
617
618 (((
619 486.9 - SF7BW125 to SF12BW125
620 )))
621
622 (((
623 487.1 - SF7BW125 to SF12BW125
624 )))
625
626 (((
627 487.3 - SF7BW125 to SF12BW125
628 )))
629
630 (((
631 487.5 - SF7BW125 to SF12BW125
632 )))
633
634 (((
635 487.7 - SF7BW125 to SF12BW125
636 )))
637
638 (((
639
640 )))
641
642 (((
643 (% style="color:blue" %)**Downlink:**
644 )))
645
646 (((
647 506.7 - SF7BW125 to SF12BW125
648 )))
649
650 (((
651 506.9 - SF7BW125 to SF12BW125
652 )))
653
654 (((
655 507.1 - SF7BW125 to SF12BW125
656 )))
657
658 (((
659 507.3 - SF7BW125 to SF12BW125
660 )))
661
662 (((
663 507.5 - SF7BW125 to SF12BW125
664 )))
665
666 (((
667 507.7 - SF7BW125 to SF12BW125
668 )))
669
670 (((
671 507.9 - SF7BW125 to SF12BW125
672 )))
673
674 (((
675 508.1 - SF7BW125 to SF12BW125
676 )))
677
678 (((
679 505.3 - SF12BW125 (RX2 downlink only)
680 )))
681
682
683
684 === 2.8.4 AU915-928(AU915) ===
685
686 (((
687 Frequency band as per definition in LoRaWAN 1.0.3 Regional document.
688 )))
689
690 (((
691 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.
692 )))
693
694 (((
695
696 )))
697
698 (((
699 After Join success, the end node will switch to the correct sub band by:
700 )))
701
702 * Check what sub-band the LoRaWAN server ask from the OTAA Join Accept message and switch to that sub-band
703 * 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)
704
705
706
707
708
709
710 === 2.8.5 AS920-923 & AS923-925 (AS923) ===
711
712 (((
713 (% style="color:blue" %)**Default Uplink channel:**
714 )))
715
716 (((
717 923.2 - SF7BW125 to SF10BW125
718 )))
719
720 (((
721 923.4 - SF7BW125 to SF10BW125
722 )))
723
724 (((
725
726 )))
727
728 (((
729 (% style="color:blue" %)**Additional Uplink Channel**:
730 )))
731
732 (((
733 (OTAA mode, channel added by JoinAccept message)
734 )))
735
736 (((
737
738 )))
739
740 (((
741 (% style="color:blue" %)**AS920~~AS923 for Japan, Malaysia, Singapore**:
742 )))
743
744 (((
745 922.2 - SF7BW125 to SF10BW125
746 )))
747
748 (((
749 922.4 - SF7BW125 to SF10BW125
750 )))
751
752 (((
753 922.6 - SF7BW125 to SF10BW125
754 )))
755
756 (((
757 922.8 - SF7BW125 to SF10BW125
758 )))
759
760 (((
761 923.0 - SF7BW125 to SF10BW125
762 )))
763
764 (((
765 922.0 - SF7BW125 to SF10BW125
766 )))
767
768 (((
769
770 )))
771
772 (((
773 (% style="color:blue" %)**AS923 ~~ AS925 for Brunei, Cambodia, Hong Kong, Indonesia, Laos, Taiwan, Thailand, Vietnam**:
774 )))
775
776 (((
777 923.6 - SF7BW125 to SF10BW125
778 )))
779
780 (((
781 923.8 - SF7BW125 to SF10BW125
782 )))
783
784 (((
785 924.0 - SF7BW125 to SF10BW125
786 )))
787
788 (((
789 924.2 - SF7BW125 to SF10BW125
790 )))
791
792 (((
793 924.4 - SF7BW125 to SF10BW125
794 )))
795
796 (((
797 924.6 - SF7BW125 to SF10BW125
798 )))
799
800 (((
801
802 )))
803
804 (((
805 (% style="color:blue" %)**Downlink:**
806 )))
807
808 (((
809 Uplink channels 1-8 (RX1)
810 )))
811
812 (((
813 923.2 - SF10BW125 (RX2)
814 )))
815
816
817
818 === 2.8.6 KR920-923 (KR920) ===
819
820 (((
821 (% style="color:blue" %)**Default channel:**
822 )))
823
824 (((
825 922.1 - SF7BW125 to SF12BW125
826 )))
827
828 (((
829 922.3 - SF7BW125 to SF12BW125
830 )))
831
832 (((
833 922.5 - SF7BW125 to SF12BW125
834 )))
835
836 (((
837
838 )))
839
840 (((
841 (% style="color:blue" %)**Uplink: (OTAA mode, channel added by JoinAccept message)**
842 )))
843
844 (((
845 922.1 - SF7BW125 to SF12BW125
846 )))
847
848 (((
849 922.3 - SF7BW125 to SF12BW125
850 )))
851
852 (((
853 922.5 - SF7BW125 to SF12BW125
854 )))
855
856 (((
857 922.7 - SF7BW125 to SF12BW125
858 )))
859
860 (((
861 922.9 - SF7BW125 to SF12BW125
862 )))
863
864 (((
865 923.1 - SF7BW125 to SF12BW125
866 )))
867
868 (((
869 923.3 - SF7BW125 to SF12BW125
870 )))
871
872 (((
873
874 )))
875
876 (((
877 (% style="color:blue" %)**Downlink:**
878 )))
879
880 (((
881 Uplink channels 1-7(RX1)
882 )))
883
884 (((
885 921.9 - SF12BW125 (RX2 downlink only; SF12BW125 might be changed to SF9BW125)
886 )))
887
888
889
890 === 2.8.7 IN865-867 (IN865) ===
891
892 (((
893 (% style="color:blue" %)**Uplink:**
894 )))
895
896 (((
897 865.0625 - SF7BW125 to SF12BW125
898 )))
899
900 (((
901 865.4025 - SF7BW125 to SF12BW125
902 )))
903
904 (((
905 865.9850 - SF7BW125 to SF12BW125
906 )))
907
908 (((
909
910 )))
911
912 (((
913 (% style="color:blue" %)**Downlink:**
914 )))
915
916 (((
917 Uplink channels 1-3 (RX1)
918 )))
919
920 (((
921 866.550 - SF10BW125 (RX2)
922 )))
923
924
925
926 == 2.9 LED Indicator ==
927
928 The LSPH01 has an internal LED which is to show the status of different state.
929
930 * The sensor is detected when the device is turned on, and it will flash 4 times quickly when it is detected.
931 * Blink once when device transmit a packet.
932
933
934
935
936
937
938 == 2.10 ​Firmware Change Log ==
939
940
941 **Firmware download link:**
942
943 [[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/]]
944
945
946 **Firmware Upgrade Method: **[[Firmware Upgrade Instruction>>path:/xwiki/bin/view/Main/Firmware%20Upgrade%20Instruction%20for%20STM32%20base%20products/]]
947
948
949
950 = 3. Configure LSPH01 via AT Command or LoRaWAN Downlink =
951
952 (((
953 Use can configure LSPH01 via AT Command or LoRaWAN Downlink.
954 )))
955
956 * (((
957 AT Command Connection: See [[FAQ>>||anchor="H6.FAQ"]].
958 )))
959 * (((
960 LoRaWAN Downlink instruction for different platforms: [[IoT LoRaWAN Server>>path:/xwiki/bin/view/Main/]]
961 )))
962
963 (((
964 There are two kinds of commands to configure LSPH01, they are:
965 )))
966
967 * (((
968 (% style="color:#4f81bd" %)** General Commands**.
969 )))
970
971 (((
972 These commands are to configure:
973 )))
974
975 * (((
976 General system settings like: uplink interval.
977 )))
978 * (((
979 LoRaWAN protocol & radio related command.
980 )))
981
982 (((
983 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/]]
984 )))
985
986 (((
987
988 )))
989
990 * (((
991 (% style="color:#4f81bd" %)** Commands special design for LSPH01**
992 )))
993
994 (((
995 These commands only valid for LSPH01, as below:
996 )))
997
998
999
1000 == 3.1 Set Transmit Interval Time ==
1001
1002 Feature: Change LoRaWAN End Node Transmit Interval.
1003
1004 (% style="color:#037691" %)**AT Command: AT+TDC**
1005
1006 [[image:image-20220607171554-8.png]]
1007
1008
1009 (((
1010 (% style="color:#037691" %)**Downlink Command: 0x01**
1011 )))
1012
1013 (((
1014 Format: Command Code (0x01) followed by 3 bytes time value.
1015 )))
1016
1017 (((
1018 If the downlink payload=0100003C, it means set the END Node’s Transmit Interval to 0x00003C=60(S), while type code is 01.
1019 )))
1020
1021 * (((
1022 Example 1: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds
1023 )))
1024 * (((
1025 Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds
1026
1027
1028
1029 )))
1030
1031 == 3.2 Set Interrupt Mode ==
1032
1033 Feature, Set Interrupt mode for GPIO_EXIT.
1034
1035 (% style="color:#037691" %)**AT Command: AT+INTMOD**
1036
1037 [[image:image-20220610105907-1.png]]
1038
1039
1040 (((
1041 (% style="color:#037691" %)**Downlink Command: 0x06**
1042 )))
1043
1044 (((
1045 Format: Command Code (0x06) followed by 3 bytes.
1046 )))
1047
1048 (((
1049 This means that the interrupt mode of the end node is set to 0x000003=3 (rising edge trigger), and the type code is 06.
1050 )))
1051
1052 * (((
1053 Example 1: Downlink Payload: 06000000 ~/~/ Turn off interrupt mode
1054 )))
1055 * (((
1056 Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger
1057 )))
1058
1059 (((
1060
1061 )))
1062
1063
1064
1065 == 3.3 Calibrate Sensor ==
1066
1067 Detail See [[Calibration Guide>>||anchor="H2.7Calibration"]] for the user of 0x13 and 0x14 downlink commands
1068
1069
1070
1071 == 3.4 Get Firmware Version Info ==
1072
1073 Feature: use downlink to get firmware version.
1074
1075 (% style="color:#037691" %)**Downlink Command: 0x26**
1076
1077 [[image:image-20220607171917-10.png]]
1078
1079 * Reply to the confirmation package: 26 01
1080 * Reply to non-confirmed packet: 26 00
1081
1082 Device will send an uplink after got this downlink command. With below payload:
1083
1084 Configures info payload:
1085
1086 (% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %)
1087 |=(((
1088 **Size(bytes)**
1089 )))|=**1**|=**1**|=**1**|=**1**|=**1**|=**5**|=**1**
1090 |**Value**|Software Type|(((
1091 Frequency
1092
1093 Band
1094 )))|Sub-band|(((
1095 Firmware
1096
1097 Version
1098 )))|Sensor Type|Reserve|(((
1099 [[Message Type>>||anchor="H2.3.6MessageType"]]
1100 Always 0x02
1101 )))
1102
1103 (% style="color:#037691" %)**Software Type**(%%): Always 0x03 for LSPH01
1104
1105
1106 (% style="color:#037691" %)**Frequency Band**:
1107
1108 *0x01: EU868
1109
1110 *0x02: US915
1111
1112 *0x03: IN865
1113
1114 *0x04: AU915
1115
1116 *0x05: KZ865
1117
1118 *0x06: RU864
1119
1120 *0x07: AS923
1121
1122 *0x08: AS923-1
1123
1124 *0x09: AS923-2
1125
1126 *0xa0: AS923-3
1127
1128
1129 (% style="color:#037691" %)**Sub-Band**(%%): value 0x00 ~~ 0x08
1130
1131
1132 (% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
1133
1134
1135 (% style="color:#037691" %)**Sensor Type**:
1136
1137 0x01: LSE01
1138
1139 0x02: LDDS75
1140
1141 0x03: LDDS20
1142
1143 0x04: LLMS01
1144
1145 0x05: LSPH01
1146
1147 0x06: LSNPK01
1148
1149 0x07: LDDS12
1150
1151
1152
1153 = 4. Battery & How to replace =
1154
1155 == 4.1 Battery Type ==
1156
1157 (((
1158 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.
1159 )))
1160
1161 (((
1162 The discharge curve is not linear so can't simply use percentage to show the battery level. Below is the battery performance.
1163 )))
1164
1165 [[image:1654593587246-335.png]]
1166
1167
1168 Minimum Working Voltage for the LSPH01:
1169
1170 LSPH01:  2.45v ~~ 3.6v
1171
1172
1173
1174 == 4.2 Replace Battery ==
1175
1176 (((
1177 Any battery with range 2.45 ~~ 3.6v can be a replacement. We recommend to use Li-SOCl2 Battery.
1178 )))
1179
1180 (((
1181 And make sure the positive and negative pins match.
1182 )))
1183
1184
1185
1186 == 4.3 Power Consumption Analyze ==
1187
1188 (((
1189 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.
1190 )))
1191
1192 (((
1193 Instruction to use as below:
1194 )))
1195
1196
1197 (% style="color:#037691" %)**Step 1**(%%): Downlink the up-to-date DRAGINO_Battery_Life_Prediction_Table.xlsx from:
1198
1199 [[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/]]
1200
1201
1202 (% style="color:#037691" %)**Step 2**(%%): Open it and choose
1203
1204 * Product Model
1205 * Uplink Interval
1206 * Working Mode
1207
1208 And the Life expectation in difference case will be shown on the right.
1209
1210 [[image:1654593605679-189.png]]
1211
1212
1213 The battery related documents as below:
1214
1215 * (((
1216 [[Battery Dimension>>https://www.dragino.com/downloads/index.php?dir=datasheet/Battery/]],
1217 )))
1218 * (((
1219 [[Lithium-Thionyl Chloride Battery  datasheet>>url:https://www.dragino.com/downloads/downloads/datasheet/Battery/ER26500/ER26500_Datasheet-EN.pdf]],
1220 )))
1221 * (((
1222 [[Lithium-ion Battery-Capacitor datasheet>>https://www.dragino.com/downloads/index.php?dir=datasheet/Battery/]], [[Tech Spec>>https://www.dragino.com/downloads/index.php?dir=datasheet/Battery/]]
1223 )))
1224
1225 [[image:image-20220607172042-11.png]]
1226
1227
1228
1229 === 4.3.1 ​Battery Note ===
1230
1231 (((
1232 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.
1233 )))
1234
1235
1236
1237 === ​4.3.2 Replace the battery ===
1238
1239 (((
1240 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.
1241 )))
1242
1243 (((
1244 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)
1245 )))
1246
1247
1248
1249 = 5. Use AT Command =
1250
1251 == 5.1 Access AT Commands ==
1252
1253 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.
1254
1255 [[image:1654593668970-604.png]]
1256
1257 **Connection:**
1258
1259 (% style="background-color:yellow" %)** USB TTL GND <~-~-~-~-> GND**
1260
1261 (% style="background-color:yellow" %)** USB TTL TXD  <~-~-~-~-> UART_RXD**
1262
1263 (% style="background-color:yellow" %)** USB TTL RXD  <~-~-~-~-> UART_TXD**
1264
1265
1266 (((
1267 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:
1268 )))
1269
1270
1271 [[image:1654593712276-618.png]]
1272
1273 Valid AT Command please check [[Configure Device>>||anchor="H3.ConfigureLSPH01viaATCommandorLoRaWANDownlink"]].
1274
1275
1276 = 6. FAQ =
1277
1278 == 6.1 How to change the LoRa Frequency Bands/Region ==
1279
1280 You can follow the instructions for [[how to upgrade image>>||anchor="H2.10200BFirmwareChangeLog"]].
1281 When downloading the images, choose the required image file for download. ​
1282
1283
1284 = 7. Trouble Shooting =
1285
1286 == 7.1 AT Commands input doesn't work ==
1287
1288 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.
1289
1290
1291
1292 = 8. Order Info =
1293
1294 Part Number: (% style="color:blue" %)**LSPH01-XX**
1295
1296
1297 (% style="color:blue" %)**XX**(%%): The default frequency band
1298
1299 * (% style="color:red" %)**AS923**(%%):  LoRaWAN AS923 band
1300 * (% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band
1301 * (% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band
1302 * (% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band
1303 * (% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band
1304 * (% style="color:red" %)**US915**(%%): LoRaWAN US915 band
1305 * (% style="color:red" %)**IN865**(%%):  LoRaWAN IN865 band
1306 * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
1307
1308
1309
1310
1311 = 9. ​Packing Info =
1312
1313
1314 **Package Includes**:
1315
1316 * LSPH01 LoRaWAN Soil Ph Sensor x 1
1317
1318 **Dimension and weight**:
1319
1320 * Device Size: cm
1321 * Device Weight: g
1322 * Package Size / pcs : cm
1323 * Weight / pcs : g
1324
1325
1326
1327
1328 = 10. ​Support =
1329
1330 * 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.
1331 * 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]].
1332
1333
Copyright ©2010-2022 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0