Version 92.2 by Xiaoling on 2022/06/25 17:04

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