Version 98.3 by Xiaoling on 2022/06/30 11:59

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
13
14
15
16 **Table of Contents:**
17
18 {{toc/}}
19
20
21
22
23
24
25
26
27
28
29 = 1. Introduction =
30
31 == 1.1 ​What is LoRaWAN Soil pH Sensor ==
32
33 (((
34
35
36 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.
37 )))
38
39 (((
40 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.
41 )))
42
43 (((
44 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.
45 )))
46
47 (((
48 LSPH01 is powered by (% style="color:#4f81bd" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long term use up to 5 years.
49 )))
50
51 (((
52 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.
53 )))
54
55
56 [[image:1654592435432-887.png]]
57
58
59
60
61 == ​1.2 Features ==
62
63 * LoRaWAN 1.0.3 Class A
64 * Ultra-low power consumption
65 * Monitor soil pH with temperature compensation.
66 * Monitor soil temperature
67 * Monitor Battery Level
68 * Support pH calibration by end user
69 * Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865
70 * AT Commands to change parameters
71 * Uplink on periodically
72 * Downlink to change configure
73 * IP66 Waterproof Enclosure
74 * IP68 rate for the Sensor Probe
75 * 8500mAh Battery for long term use
76
77
78
79 == 1.3 Probe Specification ==
80
81
82 (% style="color:#4f81bd" %)**Soil pH:**
83
84 * Range: 3 ~~ 10 pH
85 * Resolution: 0.01 pH
86 * Accuracy: ±2% under (0~~50 ℃, Accuracy will poor under 0 due to frozen)
87 * Temperature Compensation Range: 0 ~~ 50℃
88 * IP68 Protection
89 * Length: 3.5 meters
90
91 (% style="color:#4f81bd" %)**Soil Temperature:**
92
93 * Range -40℃~85℃
94 * Resolution: 0.1℃
95 * Accuracy: <±0.5℃(-10℃~40℃),<±0.8℃ (others)
96 * IP68 Protection
97 * Length: 3.5 meters
98
99
100
101 == 1.4 ​Applications ==
102
103 * Smart Agriculture
104
105
106
107 == 1.5 Pin mapping and power on ==
108
109 [[image:1654592472094-134.png]]
110
111
112
113 = 2. Configure LSPH01 to connect to LoRaWAN network =
114
115 == 2.1 How it works ==
116
117 (((
118 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.
119 )))
120
121 (((
122 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.
123 )))
124
125
126 == 2.2 ​Quick guide to connect to LoRaWAN server (OTAA) ==
127
128 (((
129 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.
130 )))
131
132 (((
133 [[image:1654592492399-921.png]]
134
135
136 )))
137
138 (((
139 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.
140
141
142 )))
143
144 (((
145 (% style="color:blue" %)**Step 1**(%%): Create a device in TTN with the OTAA keys from LSPH01.
146 )))
147
148 (((
149 Each LSPH01 is shipped with a sticker with the default device EUI as below:
150 )))
151
152 [[image:image-20220607170145-1.jpeg]]
153
154
155
156 You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
157
158
159 **Register the device**
160
161
162 [[image:1654592600093-601.png]]
163
164
165
166 **Add APP EUI and DEV EUI**
167
168 [[image:1654592619856-881.png]]
169
170
171
172 **Add APP EUI in the application**
173
174 [[image:1654592632656-512.png]]
175
176
177
178 **Add APP KEY**
179
180 [[image:1654592653453-934.png]]
181
182
183 (% style="color:blue" %)**Step 2**(%%): Power on LSPH01
184
185
186 Put a Jumper on JP2 to power on the device. ( The Switch must be in FLASH position).
187
188 [[image:image-20220607170442-2.png]]
189
190
191 (((
192 (% 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.
193 )))
194
195 [[image:1654592697690-910.png]]
196
197
198
199 == 2.3 ​Uplink Payload ==
200
201 (((
202 LSPH01 will uplink payload via LoRaWAN with below payload format: 
203 )))
204
205 (((
206 Uplink payload includes in total 11 bytes.
207 )))
208
209 (((
210 Normal uplink payload:
211 )))
212
213 (% border="1" cellspacing="10" style="background-color:#ffffcc; width:510px" %)
214 |=(% style="width: 62.5px;" %)(((
215 **Size (bytes)**
216 )))|=(% style="width: 62.5px;" %)**2**|=(% style="width: 62.5px;" %)**2**|=**2**|=**2**|=**1**|=**1**|=**1**
217 |(% style="width:62.5px" %)**Value**|(% style="width:62.5px" %)[[BAT>>||anchor="H2.3.1BatteryInfo"]]|(% style="width:62.5px" %)(((
218 [[Temperature>>||anchor="H2.3.2DS18B20Temperaturesensor"]]
219
220 [[(Optional)>>||anchor="H2.3.2DS18B20Temperaturesensor"]]
221 )))|[[Soil pH>>||anchor="H2.3.3SoilpH"]]|[[Soil Temperature>>||anchor="H2.3.4SoilTemperature"]]|(((
222 [[Digital Interrupt (Optional)>>||anchor="H2.3.5InterruptPin"]]
223 )))|Reserve|(((
224 [[Message Type>>||anchor="H2.3.6MessageType"]]
225 )))
226
227 [[image:1654592721645-318.png]]
228
229
230
231 === 2.3.1 Battery Info ===
232
233
234 Check the battery voltage for LSPH01.
235
236 Ex1: 0x0B45 = 2885mV
237
238 Ex2: 0x0B49 = 2889mV
239
240
241
242 === 2.3.2 DS18B20 Temperature sensor ===
243
244 This is optional, user can connect external DS18B20 sensor to the +3.3v, 1-wire and GND pin . and this field will report temperature.
245
246
247 **Example**:
248
249 If payload is: 0105H:  (0105 & FC00 == 0), temp = 0105H /10 = 26.1 degree
250
251 If payload is: FF3FH :  (FF3F & FC00 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
252
253
254
255 === 2.3.3 Soil pH ===
256
257 Range: 0 ~~ 14 pH
258
259 **Example:**
260
261 (% style="color:#037691" %)** 0x02B7(H) = 695(D) = 6.95pH**
262
263
264
265 === 2.3.4 Soil Temperature ===
266
267 Get Soil Temperature 
268
269
270 **Example**:
271
272 If payload is: **0105H**:  (0105 & FC00 == 0), temp = 0105H /10 = 26.1 degree
273
274 If payload is: **FF3FH** :  (FF3F & FC00 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
275
276
277
278 === 2.3.5 Interrupt Pin ===
279
280 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.
281
282
283 **Example:**
284
285 0x00: Normal uplink packet.
286
287 0x01: Interrupt Uplink Packet.
288
289
290
291 === 2.3.6 Message Type ===
292
293 (((
294 For a normal uplink payload, the message type is always 0x01.
295 )))
296
297 (((
298 Valid Message Type:
299 )))
300
301
302 (% border="1" cellspacing="10" style="background-color:#ffffcc; width:499px" %)
303 |=(% style="width: 160px;" %)**Message Type Code**|=(% style="width: 163px;" %)**Description**|=(% style="width: 173px;" %)**Payload**
304 |(% style="width:160px" %)0x01|(% style="width:163px" %)Normal Uplink|(% style="width:173px" %)[[Normal Uplink Payload>>||anchor="H2.3200BUplinkPayload"]]
305 |(% style="width:160px" %)0x02|(% style="width:163px" %)Reply configures info|(% style="width:173px" %)[[Configure Info Payload>>||anchor="H3.4GetFirmwareVersionInfo"]]
306 |(% style="width:160px" %)0x03|(% style="width:163px" %)Reply Calibration Info|(% style="width:173px" %)[[Calibration Payload>>||anchor="H2.7Calibration"]]
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 == 2.8 Frequency Plans ==
519
520 (((
521 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.
522 )))
523
524
525 === 2.8.1 EU863-870 (EU868) ===
526
527 (((
528 (% style="color:blue" %)**Uplink:**
529 )))
530
531 (((
532 868.1 - SF7BW125 to SF12BW125
533 )))
534
535 (((
536 868.3 - SF7BW125 to SF12BW125 and SF7BW250
537 )))
538
539 (((
540 868.5 - SF7BW125 to SF12BW125
541 )))
542
543 (((
544 867.1 - SF7BW125 to SF12BW125
545 )))
546
547 (((
548 867.3 - SF7BW125 to SF12BW125
549 )))
550
551 (((
552 867.5 - SF7BW125 to SF12BW125
553 )))
554
555 (((
556 867.7 - SF7BW125 to SF12BW125
557 )))
558
559 (((
560 867.9 - SF7BW125 to SF12BW125
561 )))
562
563 (((
564 868.8 - FSK
565 )))
566
567 (((
568
569 )))
570
571 (((
572 (% style="color:blue" %)**Downlink:**
573 )))
574
575 (((
576 Uplink channels 1-9 (RX1)
577 )))
578
579 (((
580 869.525 - SF9BW125 (RX2 downlink only)
581 )))
582
583
584
585 === 2.8.2 US902-928(US915) ===
586
587 (((
588 Used in USA, Canada and South America. Frequency band as per definition in LoRaWAN 1.0.3 Regional document.
589 )))
590
591 (((
592 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.
593 )))
594
595 (((
596 After Join success, the end node will switch to the correct sub band by:
597 )))
598
599 * Check what sub-band the LoRaWAN server ask from the OTAA Join Accept message and switch to that sub-band
600 * 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)
601
602
603
604 === 2.8.3 CN470-510 (CN470) ===
605
606 (((
607 Used in China, Default use CHE=1
608 )))
609
610 (((
611 (% style="color:blue" %)**Uplink:**
612 )))
613
614 (((
615 486.3 - SF7BW125 to SF12BW125
616 )))
617
618 (((
619 486.5 - SF7BW125 to SF12BW125
620 )))
621
622 (((
623 486.7 - SF7BW125 to SF12BW125
624 )))
625
626 (((
627 486.9 - SF7BW125 to SF12BW125
628 )))
629
630 (((
631 487.1 - SF7BW125 to SF12BW125
632 )))
633
634 (((
635 487.3 - SF7BW125 to SF12BW125
636 )))
637
638 (((
639 487.5 - SF7BW125 to SF12BW125
640 )))
641
642 (((
643 487.7 - SF7BW125 to SF12BW125
644 )))
645
646 (((
647
648 )))
649
650 (((
651 (% style="color:blue" %)**Downlink:**
652 )))
653
654 (((
655 506.7 - SF7BW125 to SF12BW125
656 )))
657
658 (((
659 506.9 - SF7BW125 to SF12BW125
660 )))
661
662 (((
663 507.1 - SF7BW125 to SF12BW125
664 )))
665
666 (((
667 507.3 - SF7BW125 to SF12BW125
668 )))
669
670 (((
671 507.5 - SF7BW125 to SF12BW125
672 )))
673
674 (((
675 507.7 - SF7BW125 to SF12BW125
676 )))
677
678 (((
679 507.9 - SF7BW125 to SF12BW125
680 )))
681
682 (((
683 508.1 - SF7BW125 to SF12BW125
684 )))
685
686 (((
687 505.3 - SF12BW125 (RX2 downlink only)
688 )))
689
690
691
692 === 2.8.4 AU915-928(AU915) ===
693
694 (((
695 Frequency band as per definition in LoRaWAN 1.0.3 Regional document.
696 )))
697
698 (((
699 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.
700 )))
701
702 (((
703
704 )))
705
706 (((
707 After Join success, the end node will switch to the correct sub band by:
708 )))
709
710 * Check what sub-band the LoRaWAN server ask from the OTAA Join Accept message and switch to that sub-band
711 * 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)
712
713
714
715 === 2.8.5 AS920-923 & AS923-925 (AS923) ===
716
717 (((
718 (% style="color:blue" %)**Default Uplink channel:**
719 )))
720
721 (((
722 923.2 - SF7BW125 to SF10BW125
723 )))
724
725 (((
726 923.4 - SF7BW125 to SF10BW125
727 )))
728
729 (((
730
731 )))
732
733 (((
734 (% style="color:blue" %)**Additional Uplink Channel**:
735 )))
736
737 (((
738 (OTAA mode, channel added by JoinAccept message)
739 )))
740
741 (((
742
743 )))
744
745 (((
746 (% style="color:blue" %)**AS920~~AS923 for Japan, Malaysia, Singapore**:
747 )))
748
749 (((
750 922.2 - SF7BW125 to SF10BW125
751 )))
752
753 (((
754 922.4 - SF7BW125 to SF10BW125
755 )))
756
757 (((
758 922.6 - SF7BW125 to SF10BW125
759 )))
760
761 (((
762 922.8 - SF7BW125 to SF10BW125
763 )))
764
765 (((
766 923.0 - SF7BW125 to SF10BW125
767 )))
768
769 (((
770 922.0 - SF7BW125 to SF10BW125
771 )))
772
773 (((
774
775 )))
776
777 (((
778 (% style="color:blue" %)**AS923 ~~ AS925 for Brunei, Cambodia, Hong Kong, Indonesia, Laos, Taiwan, Thailand, Vietnam**:
779 )))
780
781 (((
782 923.6 - SF7BW125 to SF10BW125
783 )))
784
785 (((
786 923.8 - SF7BW125 to SF10BW125
787 )))
788
789 (((
790 924.0 - SF7BW125 to SF10BW125
791 )))
792
793 (((
794 924.2 - SF7BW125 to SF10BW125
795 )))
796
797 (((
798 924.4 - SF7BW125 to SF10BW125
799 )))
800
801 (((
802 924.6 - SF7BW125 to SF10BW125
803 )))
804
805 (((
806
807 )))
808
809 (((
810 (% style="color:blue" %)**Downlink:**
811 )))
812
813 (((
814 Uplink channels 1-8 (RX1)
815 )))
816
817 (((
818 923.2 - SF10BW125 (RX2)
819 )))
820
821
822
823 === 2.8.6 KR920-923 (KR920) ===
824
825 (((
826 (% style="color:blue" %)**Default channel:**
827 )))
828
829 (((
830 922.1 - SF7BW125 to SF12BW125
831 )))
832
833 (((
834 922.3 - SF7BW125 to SF12BW125
835 )))
836
837 (((
838 922.5 - SF7BW125 to SF12BW125
839 )))
840
841 (((
842
843 )))
844
845 (((
846 (% style="color:blue" %)**Uplink: (OTAA mode, channel added by JoinAccept message)**
847 )))
848
849 (((
850 922.1 - SF7BW125 to SF12BW125
851 )))
852
853 (((
854 922.3 - SF7BW125 to SF12BW125
855 )))
856
857 (((
858 922.5 - SF7BW125 to SF12BW125
859 )))
860
861 (((
862 922.7 - SF7BW125 to SF12BW125
863 )))
864
865 (((
866 922.9 - SF7BW125 to SF12BW125
867 )))
868
869 (((
870 923.1 - SF7BW125 to SF12BW125
871 )))
872
873 (((
874 923.3 - SF7BW125 to SF12BW125
875 )))
876
877 (((
878
879 )))
880
881 (((
882 (% style="color:blue" %)**Downlink:**
883 )))
884
885 (((
886 Uplink channels 1-7(RX1)
887 )))
888
889 (((
890 921.9 - SF12BW125 (RX2 downlink only; SF12BW125 might be changed to SF9BW125)
891 )))
892
893
894
895 === 2.8.7 IN865-867 (IN865) ===
896
897 (((
898 (% style="color:blue" %)**Uplink:**
899 )))
900
901 (((
902 865.0625 - SF7BW125 to SF12BW125
903 )))
904
905 (((
906 865.4025 - SF7BW125 to SF12BW125
907 )))
908
909 (((
910 865.9850 - SF7BW125 to SF12BW125
911 )))
912
913 (((
914
915 )))
916
917 (((
918 (% style="color:blue" %)**Downlink:**
919 )))
920
921 (((
922 Uplink channels 1-3 (RX1)
923 )))
924
925 (((
926 866.550 - SF10BW125 (RX2)
927 )))
928
929
930
931 == 2.9 LED Indicator ==
932
933 The LSPH01 has an internal LED which is to show the status of different state.
934
935 * The sensor is detected when the device is turned on, and it will flash 4 times quickly when it is detected.
936 * Blink once when device transmit a packet.
937
938
939
940 == 2.10 ​Firmware Change Log ==
941
942
943 **Firmware download link:**
944
945 [[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/]]
946
947
948 **Firmware Upgrade Method: **[[Firmware Upgrade Instruction>>path:/xwiki/bin/view/Main/Firmware%20Upgrade%20Instruction%20for%20STM32%20base%20products/]]
949
950
951
952 = 3. Configure LSPH01 via AT Command or LoRaWAN Downlink =
953
954 (((
955 Use can configure LSPH01 via AT Command or LoRaWAN Downlink.
956 )))
957
958 * (((
959 AT Command Connection: See [[FAQ>>||anchor="H6.FAQ"]].
960 )))
961 * (((
962 LoRaWAN Downlink instruction for different platforms: [[IoT LoRaWAN Server>>path:/xwiki/bin/view/Main/]]
963 )))
964
965 (((
966 There are two kinds of commands to configure LSPH01, they are:
967 )))
968
969 * (((
970 (% style="color:#4f81bd" %)** General Commands**.
971 )))
972
973 (((
974 These commands are to configure:
975 )))
976
977 * (((
978 General system settings like: uplink interval.
979 )))
980 * (((
981 LoRaWAN protocol & radio related command.
982 )))
983
984 (((
985 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/]]
986 )))
987
988 (((
989
990 )))
991
992 * (((
993 (% style="color:#4f81bd" %)** Commands special design for LSPH01**
994 )))
995
996 (((
997 These commands only valid for LSPH01, as below:
998 )))
999
1000
1001
1002 == 3.1 Set Transmit Interval Time ==
1003
1004 Feature: Change LoRaWAN End Node Transmit Interval.
1005
1006 (% style="color:#037691" %)**AT Command: AT+TDC**
1007
1008 [[image:image-20220607171554-8.png]]
1009
1010
1011 (((
1012 (% style="color:#037691" %)**Downlink Command: 0x01**
1013 )))
1014
1015 (((
1016 Format: Command Code (0x01) followed by 3 bytes time value.
1017 )))
1018
1019 (((
1020 If the downlink payload=0100003C, it means set the END Node’s Transmit Interval to 0x00003C=60(S), while type code is 01.
1021 )))
1022
1023 * (((
1024 Example 1: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds
1025 )))
1026 * (((
1027 Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds
1028
1029
1030
1031 )))
1032
1033 == 3.2 Set Interrupt Mode ==
1034
1035 Feature, Set Interrupt mode for GPIO_EXIT.
1036
1037 (% style="color:#037691" %)**AT Command: AT+INTMOD**
1038
1039 [[image:image-20220610105907-1.png]]
1040
1041
1042 (((
1043 (% style="color:#037691" %)**Downlink Command: 0x06**
1044 )))
1045
1046 (((
1047 Format: Command Code (0x06) followed by 3 bytes.
1048 )))
1049
1050 (((
1051 This means that the interrupt mode of the end node is set to 0x000003=3 (rising edge trigger), and the type code is 06.
1052 )))
1053
1054 * (((
1055 Example 1: Downlink Payload: 06000000 ~/~/ Turn off interrupt mode
1056 )))
1057 * (((
1058 Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger
1059 )))
1060
1061 (((
1062
1063 )))
1064
1065
1066
1067 == 3.3 Calibrate Sensor ==
1068
1069 Detail See [[Calibration Guide>>||anchor="H2.7Calibration"]] for the user of 0x13 and 0x14 downlink commands
1070
1071
1072
1073 == 3.4 Get Firmware Version Info ==
1074
1075 Feature: use downlink to get firmware version.
1076
1077 (% style="color:#037691" %)**Downlink Command: 0x26**
1078
1079 [[image:image-20220607171917-10.png]]
1080
1081 * Reply to the confirmation package: 26 01
1082 * Reply to non-confirmed packet: 26 00
1083
1084 Device will send an uplink after got this downlink command. With below payload:
1085
1086 Configures info payload:
1087
1088 (% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %)
1089 |=(((
1090 **Size(bytes)**
1091 )))|=**1**|=**1**|=**1**|=**1**|=**1**|=**5**|=**1**
1092 |**Value**|Software Type|(((
1093 Frequency
1094
1095 Band
1096 )))|Sub-band|(((
1097 Firmware
1098
1099 Version
1100 )))|Sensor Type|Reserve|(((
1101 [[Message Type>>||anchor="H2.3.6MessageType"]]
1102 Always 0x02
1103 )))
1104
1105 (% style="color:#037691" %)**Software Type**(%%): Always 0x03 for LSPH01
1106
1107
1108 (% style="color:#037691" %)**Frequency Band**:
1109
1110 *0x01: EU868
1111
1112 *0x02: US915
1113
1114 *0x03: IN865
1115
1116 *0x04: AU915
1117
1118 *0x05: KZ865
1119
1120 *0x06: RU864
1121
1122 *0x07: AS923
1123
1124 *0x08: AS923-1
1125
1126 *0x09: AS923-2
1127
1128 *0xa0: AS923-3
1129
1130
1131 (% style="color:#037691" %)**Sub-Band**(%%): value 0x00 ~~ 0x08
1132
1133
1134 (% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
1135
1136
1137 (% style="color:#037691" %)**Sensor Type**:
1138
1139 0x01: LSE01
1140
1141 0x02: LDDS75
1142
1143 0x03: LDDS20
1144
1145 0x04: LLMS01
1146
1147 0x05: LSPH01
1148
1149 0x06: LSNPK01
1150
1151 0x07: LDDS12
1152
1153
1154
1155 = 4. Battery & How to replace =
1156
1157 == 4.1 Battery Type ==
1158
1159 (((
1160 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.
1161 )))
1162
1163 (((
1164 The discharge curve is not linear so can't simply use percentage to show the battery level. Below is the battery performance.
1165 )))
1166
1167 [[image:1654593587246-335.png]]
1168
1169
1170 Minimum Working Voltage for the LSPH01:
1171
1172 LSPH01:  2.45v ~~ 3.6v
1173
1174
1175
1176 == 4.2 Replace Battery ==
1177
1178 (((
1179 Any battery with range 2.45 ~~ 3.6v can be a replacement. We recommend to use Li-SOCl2 Battery.
1180 )))
1181
1182 (((
1183 And make sure the positive and negative pins match.
1184 )))
1185
1186
1187
1188 == 4.3 Power Consumption Analyze ==
1189
1190 (((
1191 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.
1192 )))
1193
1194 (((
1195 Instruction to use as below:
1196 )))
1197
1198
1199 (% style="color:#037691" %)**Step 1**(%%): Downlink the up-to-date DRAGINO_Battery_Life_Prediction_Table.xlsx from:
1200
1201 [[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/]]
1202
1203
1204 (% style="color:#037691" %)**Step 2**(%%): Open it and choose
1205
1206 * Product Model
1207 * Uplink Interval
1208 * Working Mode
1209
1210 And the Life expectation in difference case will be shown on the right.
1211
1212 [[image:1654593605679-189.png]]
1213
1214
1215 The battery related documents as below:
1216
1217 * (((
1218 [[Battery Dimension>>https://www.dragino.com/downloads/index.php?dir=datasheet/Battery/]],
1219 )))
1220 * (((
1221 [[Lithium-Thionyl Chloride Battery  datasheet>>url:https://www.dragino.com/downloads/downloads/datasheet/Battery/ER26500/ER26500_Datasheet-EN.pdf]],
1222 )))
1223 * (((
1224 [[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/]]
1225 )))
1226
1227 [[image:image-20220607172042-11.png]]
1228
1229
1230
1231 === 4.3.1 ​Battery Note ===
1232
1233 (((
1234 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.
1235 )))
1236
1237
1238
1239 === ​4.3.2 Replace the battery ===
1240
1241 (((
1242 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.
1243 )))
1244
1245 (((
1246 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)
1247 )))
1248
1249
1250
1251 = 5. Use AT Command =
1252
1253 == 5.1 Access AT Commands ==
1254
1255 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.
1256
1257 [[image:1654593668970-604.png]]
1258
1259 **Connection:**
1260
1261 (% style="background-color:yellow" %)** USB TTL GND <~-~-~-~-> GND**
1262
1263 (% style="background-color:yellow" %)** USB TTL TXD  <~-~-~-~-> UART_RXD**
1264
1265 (% style="background-color:yellow" %)** USB TTL RXD  <~-~-~-~-> UART_TXD**
1266
1267
1268 (((
1269 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:
1270 )))
1271
1272
1273 [[image:1654593712276-618.png]]
1274
1275 Valid AT Command please check [[Configure Device>>||anchor="H3.ConfigureLSPH01viaATCommandorLoRaWANDownlink"]].
1276
1277
1278 = 6. FAQ =
1279
1280 == 6.1 How to change the LoRa Frequency Bands/Region ==
1281
1282 You can follow the instructions for [[how to upgrade image>>||anchor="H2.10200BFirmwareChangeLog"]].
1283 When downloading the images, choose the required image file for download. ​
1284
1285
1286 = 7. Trouble Shooting =
1287
1288 == 7.1 AT Commands input doesn't work ==
1289
1290 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.
1291
1292
1293
1294 = 8. Order Info =
1295
1296 Part Number: (% style="color:blue" %)**LSPH01-XX**
1297
1298
1299 (% style="color:blue" %)**XX**(%%): The default frequency band
1300
1301 * (% style="color:red" %)**AS923**(%%):  LoRaWAN AS923 band
1302 * (% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band
1303 * (% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band
1304 * (% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band
1305 * (% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band
1306 * (% style="color:red" %)**US915**(%%): LoRaWAN US915 band
1307 * (% style="color:red" %)**IN865**(%%):  LoRaWAN IN865 band
1308 * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
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 = 10. ​Support =
1327
1328 * 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.
1329 * 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]].
1330
1331