Show last authors
1 (% style="text-align:center" %)
2 [[image:1654574317295-380.png||height="621" width="576"]]
3
4
5
6
7
8 **Contents:**
9
10 {{toc/}}
11
12
13
14
15
16
17
18
19
20
21
22
23 = 1. Introduction =
24
25 == 1.1 ​What is LoRaWAN Soil pH Sensor ==
26
27 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.
28
29 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.
30
31 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.
32
33 LSPH01 is powered by (% style="color:#4f81bd" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long term use up to 5 years.
34
35 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.
36
37
38 [[image:1654580186518-415.png]]
39
40
41
42 == ​1.2 Features ==
43
44 * LoRaWAN 1.0.3 Class A
45 * Ultra-low power consumption
46 * Monitor soil pH with temperature compensation.
47 * Monitor soil temperature
48 * Monitor Battery Level
49 * Support pH calibration by end user
50 * Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865
51 * AT Commands to change parameters
52 * Uplink on periodically
53 * Downlink to change configure
54 * IP66 Waterproof Enclosure
55 * IP68 rate for the Sensor Probe
56 * 8500mAh Battery for long term use
57
58
59 == 1.3 Probe Specification ==
60
61
62 (% style="color:#4f81bd" %)**Soil pH:**
63
64 * Range: 3 ~~ 10 pH
65 * Resolution: 0.01 pH
66 * Accuracy: ±2% under (0~~50 ℃, Accuracy will poor under 0 due to frozen)
67 * Temperature Compensation Range: 0 ~~ 50℃
68 * IP68 Protection
69 * Length: 3.5 meters
70
71 (% style="color:#4f81bd" %)**Soil Temperature:**
72
73 * Range -40℃~85℃
74 * Resolution: 0.1℃
75 * Accuracy: <±0.5℃(-10℃~40℃),<±0.8℃ (others)
76 * IP68 Protection
77 * Length: 3.5 meters
78
79 == 1.4 ​Applications ==
80
81 * Smart Agriculture
82
83 == 1.5 Pin mapping and power on ==
84
85 [[image:1654580482666-473.png]]
86
87
88
89 = 2. Configure LSPH01 to connect to LoRaWAN network =
90
91 == 2.1 How it works ==
92
93 (((
94 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.
95 )))
96
97 (((
98 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.
99 )))
100
101
102 == 2.2 ​Quick guide to connect to LoRaWAN server (OTAA) ==
103
104 (((
105 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.
106 )))
107
108 (((
109
110 )))
111
112 (((
113 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.
114 )))
115
116 (((
117 (% style="color:blue" %)**Step 1**(%%): Create a device in TTN with the OTAA keys from LSPH01.
118 )))
119
120 (((
121 Each LSPH01 is shipped with a sticker with the default device EUI as below:
122 )))
123
124
125 [[image:image-20220607135531-1.jpeg]]
126
127
128 You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
129
130
131 **Register the device**
132
133 [[image:1654581442672-605.png]]
134
135
136
137 **Add APP EUI and DEV EUI**
138
139 [[image:1654581465717-368.png]]
140
141
142
143 **Add APP EUI in the application**
144
145 [[image:1654581493871-516.png]]
146
147
148
149 **Add APP KEY**
150
151 [[image:1654581517630-991.png]]
152
153
154 (% style="color:blue" %)**Step 2**(%%): Power on LSPH01
155
156
157 Put a Jumper on JP2 to power on the device. ( The Switch must be in FLASH position).
158
159 [[image:image-20220607135918-2.png]]
160
161
162 (% 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.
163
164 [[image:1654581590132-631.png]]
165
166
167
168 == 2.3 ​Uplink Payload ==
169
170 LSPH01 will uplink payload via LoRaWAN with below payload format: 
171
172 Uplink payload includes in total 11 bytes.
173
174 Normal uplink payload:
175
176 (% border="1" cellspacing="10" style="background-color:#ffffcc; width:510px" %)
177 |(((
178 **Size**
179
180 **(bytes)**
181 )))|**2**|**2**|**2**|**2**|**1**|**1**|**1**
182 |**Value**|[[BAT>>||anchor="H2.3.1BatteryInfo"]]|(((
183 [[Temperature>>||anchor="H2.3.2DS18B20Temperaturesensor"]]
184
185 [[(Optional)>>||anchor="H2.3.2DS18B20Temperaturesensor"]]
186 )))|[[Soil pH>>||anchor="H2.3.3SoilpH"]]|[[Soil Temperature>>||anchor="H2.3.4SoilTemperature"]]|(((
187 [[Digital Interrupt (Optional)>>||anchor="H2.3.5InterruptPin"]]
188 )))|Reserve|(((
189 [[Message Type>>||anchor="H2.3.6MessageType"]]
190 )))
191
192 [[image:1654581735133-458.png]]
193
194
195
196 === 2.3.1 Battery Info ===
197
198
199 Check the battery voltage for LSPH01.
200
201 Ex1: 0x0B45 = 2885mV
202
203 Ex2: 0x0B49 = 2889mV
204
205
206
207 === 2.3.2 DS18B20 Temperature sensor ===
208
209 This is optional, user can connect external DS18B20 sensor to the +3.3v, 1-wire and GND pin . and this field will report temperature.
210
211
212 **Example**:
213
214 If payload is: 0105H:  (0105 & FC00 == 0), temp = 0105H /10 = 26.1 degree
215
216 If payload is: FF3FH :  (FF3F & FC00 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
217
218
219
220 === 2.3.3 Soil pH ===
221
222 Range: 0 ~~ 14 pH
223
224 **Example:**
225
226 (% style="color:#037691" %)** 0x02B7(H) = 695(D) = 6.95pH**
227
228
229
230 === 2.3.4 Soil Temperature ===
231
232 Get Soil Temperature 
233
234
235 **Example**:
236
237 If payload is: **0105H**:  (0105 & FC00 == 0), temp = 0105H /10 = 26.1 degree
238
239 If payload is: **FF3FH** :  (FF3F & FC00 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
240
241
242
243 === 2.3.5 Interrupt Pin ===
244
245 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.
246
247
248 **Example:**
249
250 0x00: Normal uplink packet.
251
252 0x01: Interrupt Uplink Packet.
253
254
255
256 === 2.3.6 Message Type ===
257
258 For a normal uplink payload, the message type is always 0x01.
259
260 Valid Message Type:
261
262
263 (% border="1" cellspacing="10" style="background-color:#ffffcc; width:510px" %)
264 |**Message Type Code**|**Description**|**Payload**
265 |0x01|Normal Uplink|[[Normal Uplink Payload>>||anchor="H2.3200BUplinkPayload"]]
266 |0x02|Reply configures info|[[Configure Info Payload>>||anchor="H3.4GetFirmwareVersionInfo"]]
267 |0x03|Reply Calibration Info|[[Calibration Payload>>||anchor="H2.7Calibration"]]
268
269
270 === 2.3.7 Decode payload in The Things Network ===
271
272 While using TTN network, you can add the payload format to decode the payload.
273
274
275 [[image:1654582541848-906.png]]
276
277 (((
278 The payload decoder function for TTN is here:
279 )))
280
281 (((
282 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/]]
283 )))
284
285
286
287 == 2.4 Uplink Interval ==
288
289 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"]]
290
291
292
293 == 2.5 ​Show Data in DataCake IoT Server ==
294
295 [[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:
296
297
298 (% style="color:blue" %)**Step 1**(%%)**: Be sure that your device is programmed and properly connected to the network at this time.**
299
300 (% 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:**
301
302
303 [[image:1654583683416-869.png]]
304
305
306 [[image:1654583694084-878.png]]
307
308
309 (% style="color:blue" %)**Step 3**(%%)**: Create an account or log in Datacake.**
310
311 (% style="color:blue" %)**Step 4**(%%)**: Create LSPH01 product.**
312
313 [[image:1654583711590-413.png]]
314
315
316
317 [[image:1654583732798-193.png]]
318
319
320 [[image:1654583749683-259.png]]
321
322
323 (% style="color:blue" %)**Step 5**(%%)**: add payload decode**
324
325 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/]]
326
327
328 [[image:1654583770974-935.png]]
329
330 [[image:1654583781517-146.png]]
331
332
333 [[image:1654583791351-557.png]]
334
335
336 After added, the sensor data arrive TTN, it will also arrive and show in Mydevices.
337
338
339 [[image:1654583805491-713.png]]
340
341
342
343 == 2.6 Installation and Maintain ==
344
345 === 2.6.1 Before measurement ===
346
347 (((
348 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. 
349 )))
350
351
352
353 === 2.6.2 Measurement ===
354
355
356 (% style="color:#4f81bd" %)**Measurement the soil surface:**
357
358 [[image:1654584128046-287.png]]
359
360 Choose the proper measuring position. Split the surface soil according to the measured deep.
361
362 Put pure water, or rainwater to make the soil of measurement point to moist mud. Remove rocks or hard things.
363
364 Slowly insert the probe to the measure point. Don’t use large force which will break the probe. Make sure not shake when inserting.
365
366 Put soil over the probe after insert. And start to measure.
367
368
369 (% style="color:#4f81bd" %)**Measurement inside soil:**
370
371 Dig a hole with diameter > 20CM.
372
373 Insert the probe inside, method like measure the surface.
374
375
376
377 === 2.6.3 Maintain Probe ===
378
379 1. (((
380 pH probe electrode is fragile and no strong. User must avoid strong force or hitting it.
381 )))
382 1. (((
383 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.
384 )))
385 1. (((
386 Probe reference electrode is also no strong, need to avoid strong force or hitting.
387 )))
388 1. (((
389 User should keep reference electrode wet while not use.
390 )))
391 1. (((
392 Avoid the probes to touch oily matter. Which will cause issue in accuracy.
393 )))
394 1. (((
395 The probe is IP68 can be put in water.
396
397
398
399 )))
400
401 == 2.7 Calibration ==
402
403 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).
404
405 After stable, user can use below command to calibrate.
406
407 [[image:image-20220607144936-3.png]]
408
409
410 (% style="color:#037691" %)**Calibration Payload**
411
412 (% border="1" cellspacing="10" style="background-color:#ffffcc; width:510px" %)
413 |(((
414 **Size**
415
416 **(bytes)**
417 )))|**1**|**1**|**1**|**7**|**1**
418 |**Value**|(((
419 PH4
420
421 Calibrate value
422 )))|PH6.86 Calibrate value|(((
423 PH9.18
424
425 Calibrate value
426 )))|Reserve|(((
427 [[Message Type>>||anchor="H2.3.6MessageType"]]
428
429 Always 0x03
430 )))
431
432 User can also send 0x14 downlink command to poll the current calibration payload.
433
434 [[image:image-20220607145603-4.png]]
435
436 * Reply to the confirmation package: 14 01
437 * Reply to non-confirmed packet: 14 00
438
439
440 == 2.8 Frequency Plans ==
441
442 (((
443 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.
444 )))
445
446
447 === 2.8.1 EU863-870 (EU868) ===
448
449 (% style="color:blue" %)**Uplink:**
450
451 868.1 - SF7BW125 to SF12BW125
452
453 868.3 - SF7BW125 to SF12BW125 and SF7BW250
454
455 868.5 - SF7BW125 to SF12BW125
456
457 867.1 - SF7BW125 to SF12BW125
458
459 867.3 - SF7BW125 to SF12BW125
460
461 867.5 - SF7BW125 to SF12BW125
462
463 867.7 - SF7BW125 to SF12BW125
464
465 867.9 - SF7BW125 to SF12BW125
466
467 868.8 - FSK
468
469
470 (% style="color:blue" %)**Downlink:**
471
472 Uplink channels 1-9 (RX1)
473
474 869.525 - SF9BW125 (RX2 downlink only)
475
476
477
478 === 2.8.2 US902-928(US915) ===
479
480 (((
481 Used in USA, Canada and South America. Frequency band as per definition in LoRaWAN 1.0.3 Regional document.
482 )))
483
484 (((
485 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.
486 )))
487
488 (((
489 After Join success, the end node will switch to the correct sub band by:
490 )))
491
492 * Check what sub-band the LoRaWAN server ask from the OTAA Join Accept message and switch to that sub-band
493 * 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)
494
495
496 === 2.8.3 CN470-510 (CN470) ===
497
498 Used in China, Default use CHE=1
499
500 (% style="color:blue" %)**Uplink:**
501
502 486.3 - SF7BW125 to SF12BW125
503
504 486.5 - SF7BW125 to SF12BW125
505
506 486.7 - SF7BW125 to SF12BW125
507
508 486.9 - SF7BW125 to SF12BW125
509
510 487.1 - SF7BW125 to SF12BW125
511
512 487.3 - SF7BW125 to SF12BW125
513
514 487.5 - SF7BW125 to SF12BW125
515
516 487.7 - SF7BW125 to SF12BW125
517
518
519 (% style="color:blue" %)**Downlink:**
520
521 506.7 - SF7BW125 to SF12BW125
522
523 506.9 - SF7BW125 to SF12BW125
524
525 507.1 - SF7BW125 to SF12BW125
526
527 507.3 - SF7BW125 to SF12BW125
528
529 507.5 - SF7BW125 to SF12BW125
530
531 507.7 - SF7BW125 to SF12BW125
532
533 507.9 - SF7BW125 to SF12BW125
534
535 508.1 - SF7BW125 to SF12BW125
536
537 505.3 - SF12BW125 (RX2 downlink only)
538
539
540
541 === 2.8.4 AU915-928(AU915) ===
542
543 (((
544 Frequency band as per definition in LoRaWAN 1.0.3 Regional document.
545 )))
546
547 (((
548 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.
549 )))
550
551 (((
552
553 )))
554
555 (((
556 After Join success, the end node will switch to the correct sub band by:
557 )))
558
559 * Check what sub-band the LoRaWAN server ask from the OTAA Join Accept message and switch to that sub-band
560 * 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)
561
562
563 === 2.8.5 AS920-923 & AS923-925 (AS923) ===
564
565 (% style="color:blue" %)**Default Uplink channel:**
566
567 923.2 - SF7BW125 to SF10BW125
568
569 923.4 - SF7BW125 to SF10BW125
570
571
572 (% style="color:blue" %)**Additional Uplink Channel**:
573
574 (OTAA mode, channel added by JoinAccept message)
575
576
577 (% style="color:blue" %)**AS920~~AS923 for Japan, Malaysia, Singapore**:
578
579 922.2 - SF7BW125 to SF10BW125
580
581 922.4 - SF7BW125 to SF10BW125
582
583 922.6 - SF7BW125 to SF10BW125
584
585 922.8 - SF7BW125 to SF10BW125
586
587 923.0 - SF7BW125 to SF10BW125
588
589 922.0 - SF7BW125 to SF10BW125
590
591
592 (% style="color:blue" %)**AS923 ~~ AS925 for Brunei, Cambodia, Hong Kong, Indonesia, Laos, Taiwan, Thailand, Vietnam**:
593
594 923.6 - SF7BW125 to SF10BW125
595
596 923.8 - SF7BW125 to SF10BW125
597
598 924.0 - SF7BW125 to SF10BW125
599
600 924.2 - SF7BW125 to SF10BW125
601
602 924.4 - SF7BW125 to SF10BW125
603
604 924.6 - SF7BW125 to SF10BW125
605
606
607 (% style="color:blue" %)**Downlink:**
608
609 Uplink channels 1-8 (RX1)
610
611 923.2 - SF10BW125 (RX2)
612
613
614
615 === 2.8.6 KR920-923 (KR920) ===
616
617 (% style="color:blue" %)**Default channel:**
618
619 922.1 - SF7BW125 to SF12BW125
620
621 922.3 - SF7BW125 to SF12BW125
622
623 922.5 - SF7BW125 to SF12BW125
624
625
626 (% style="color:blue" %)**Uplink: (OTAA mode, channel added by JoinAccept message)**
627
628 922.1 - SF7BW125 to SF12BW125
629
630 922.3 - SF7BW125 to SF12BW125
631
632 922.5 - SF7BW125 to SF12BW125
633
634 922.7 - SF7BW125 to SF12BW125
635
636 922.9 - SF7BW125 to SF12BW125
637
638 923.1 - SF7BW125 to SF12BW125
639
640 923.3 - SF7BW125 to SF12BW125
641
642
643 (% style="color:blue" %)**Downlink:**
644
645 Uplink channels 1-7(RX1)
646
647 921.9 - SF12BW125 (RX2 downlink only; SF12BW125 might be changed to SF9BW125)
648
649
650 === 2.8.7 IN865-867 (IN865) ===
651
652 (% style="color:blue" %)**Uplink:**
653
654 865.0625 - SF7BW125 to SF12BW125
655
656 865.4025 - SF7BW125 to SF12BW125
657
658 865.9850 - SF7BW125 to SF12BW125
659
660
661 (% style="color:blue" %)**Downlink:**
662
663 Uplink channels 1-3 (RX1)
664
665 866.550 - SF10BW125 (RX2)
666
667
668
669 == 2.9 LED Indicator ==
670
671 The LSPH01 has an internal LED which is to show the status of different state.
672
673 * The sensor is detected when the device is turned on, and it will flash 4 times quickly when it is detected.
674 * Blink once when device transmit a packet.
675
676
677 == 2.10 ​Firmware Change Log ==
678
679
680 **Firmware download link:**
681
682 [[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/]]
683
684
685 **Firmware Upgrade Method: **[[Firmware Upgrade Instruction>>doc:Main.Firmware Upgrade Instruction for STM32 base products.WebHome]]
686
687
688
689 = 3. Configure LSPH01 via AT Command or LoRaWAN Downlink =
690
691 Use can configure LSPH01 via AT Command or LoRaWAN Downlink.
692
693 * AT Command Connection: See [[FAQ>>||anchor="H6.FAQ"]].
694 * LoRaWAN Downlink instruction for different platforms: [[IoT LoRaWAN Server>>doc:Main.WebHome]]
695
696 There are two kinds of commands to configure LSPH01, they are:
697
698 * (% style="color:#4f81bd" %)** General Commands**.
699
700 These commands are to configure:
701
702 * General system settings like: uplink interval.
703 * LoRaWAN protocol & radio related command.
704
705 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>>doc:Main.End Device AT Commands and Downlink Command.WebHome]]
706
707
708 * (% style="color:#4f81bd" %)** Commands special design for LSPH01**
709
710 These commands only valid for LSPH01, as below:
711
712
713
714 == 3.1 Set Transmit Interval Time ==
715
716 Feature: Change LoRaWAN End Node Transmit Interval.
717
718 (% style="color:#037691" %)**AT Command: AT+TDC**
719
720
721 (% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:710px" %)
722 |(% style="width:154px" %)**Command Example**|(% style="width:223px" %)**Function**|(% style="width:330px" %)**Response**
723 |(% style="width:154px" %)AT+TDC=?|(% style="width:223px" %)Show current transmit Interval|(% style="width:330px" %)(((
724 30000
725
726 OK
727
728 the interval is 30000ms = 30s
729 )))
730 |(% style="width:154px" %)AT+TDC=60000|(% style="width:223px" %)Set Transmit Interval|(% style="width:330px" %)(((
731 OK
732
733 Set transmit interval to 60000ms = 60 seconds
734 )))
735
736 (% style="color:#037691" %)**Downlink Command: 0x01**
737
738 Format: Command Code (0x01) followed by 3 bytes time value.
739
740 If the downlink payload=0100003C, it means set the END Node’s Transmit Interval to 0x00003C=60(S), while type code is 01.
741
742 * Example 1: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds
743 * Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds
744
745
746 == 3.2 Set Interrupt Mode ==
747
748 Feature, Set Interrupt mode for GPIO_EXIT.
749
750 (% style="color:#037691" %)**AT Command: AT+INTMOD**
751
752 [[image:image-20220607153759-6.png]]
753
754
755 (% style="color:#037691" %)**Downlink Command: 0x06**
756
757 Format: Command Code (0x06) followed by 3 bytes.
758
759 This means that the interrupt mode of the end node is set to 0x000003=3 (rising edge trigger), and the type code is 06.
760
761 * Example 1: Downlink Payload: 06000000 ~/~/ Turn off interrupt mode
762 * Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger
763
764
765 == 3.3 Calibrate Sensor ==
766
767 Detail See [[Calibration Guide>>||anchor="H2.7Calibration"]] for the user of 0x13 and 0x14 downlink commands
768
769
770
771 == 3.4 Get Firmware Version Info ==
772
773 Feature: use downlink to get firmware version.
774
775 (% style="color:#037691" %)**Downlink Command: 0x26**
776
777 [[image:image-20220607154718-7.png]]
778
779 * Reply to the confirmation package: 26 01
780 * Reply to non-confirmed packet: 26 00
781
782 Device will send an uplink after got this downlink command. With below payload:
783
784 Configures info payload:
785
786 (% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %)
787 |=(((
788 **Size(bytes)**
789 )))|=**1**|=**1**|=**1**|=**1**|=**1**|=**5**|=**1**
790 |**Value**|Software Type|(((
791 Frequency
792
793 Band
794 )))|Sub-band|(((
795 Firmware
796
797 Version
798 )))|Sensor Type|Reserve|(((
799 [[Message Type>>||anchor="H2.3.6MessageType"]]
800 Always 0x02
801 )))
802
803 **Software Type**: Always 0x03 for LSPH01
804
805
806 **Frequency Band**:
807
808 *0x01: EU868
809
810 *0x02: US915
811
812 *0x03: IN865
813
814 *0x04: AU915
815
816 *0x05: KZ865
817
818 *0x06: RU864
819
820 *0x07: AS923
821
822 *0x08: AS923-1
823
824 *0x09: AS923-2
825
826 *0xa0: AS923-3
827
828
829 **Sub-Band**: value 0x00 ~~ 0x08
830
831
832 **Firmware Version**: 0x0100, Means: v1.0.0 version
833
834
835 **Sensor Type**:
836
837 0x01: LSE01
838
839 0x02: LDDS75
840
841 0x03: LDDS20
842
843 0x04: LLMS01
844
845 0x05: LSPH01
846
847 0x06: LSNPK01
848
849 0x07: LDDS12
850
851
852
853 = 4. Battery & How to replace =
854
855 == 4.1 Battery Type ==
856
857 (((
858 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.
859 )))
860
861 (((
862 The discharge curve is not linear so can’t simply use percentage to show the battery level. Below is the battery performance.
863 )))
864
865 [[image:1654588469844-778.png]]
866
867
868 Minimum Working Voltage for the LSPH01:
869
870 LSPH01:  2.45v ~~ 3.6v
871
872
873
874 == 4.2 Replace Battery ==
875
876 (((
877 Any battery with range 2.45 ~~ 3.6v can be a replacement. We recommend to use Li-SOCl2 Battery.
878 )))
879
880 (((
881 And make sure the positive and negative pins match.
882 )))
883
884
885
886 == 4.3 Power Consumption Analyze ==
887
888 (((
889 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.
890 )))
891
892 (((
893 Instruction to use as below:
894 )))
895
896
897 **Step 1**: Downlink the up-to-date DRAGINO_Battery_Life_Prediction_Table.xlsx from:
898
899 [[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/]]
900
901
902 **Step 2**: Open it and choose
903
904 * Product Model
905 * Uplink Interval
906 * Working Mode
907
908 And the Life expectation in difference case will be shown on the right.
909
910 [[image:1654588577573-122.png]]
911
912
913 The battery related documents as below:
914
915 * (((
916 [[Battery Dimension>>url:http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/&file=LSN50-Battery-Dimension.pdf]],
917 )))
918 * (((
919 [[Lithium-Thionyl Chloride Battery  datasheet>>url:https://www.dragino.com/downloads/downloads/datasheet/Battery/ER26500/ER26500_Datasheet-EN.pdf]],
920 )))
921 * (((
922 [[Lithium-ion Battery-Capacitor datasheet>>url:http://www.dragino.com/downloads/downloads/datasheet/Battery/SPC_1520_datasheet.jpg]], [[Tech Spec>>url:http://www.dragino.com/downloads/downloads/datasheet/Battery/SPC1520%20Technical%20Specification20171123.pdf]]
923 )))
924
925 [[image:image-20220607155856-8.png]]
926
927
928
929 === 4.3.1 ​Battery Note ===
930
931 (((
932 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.
933 )))
934
935
936
937 === ​4.3.2 Replace the battery ===
938
939 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.
940
941 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)
942
943
944
945 = 5. Use AT Command =
946
947 == 5.1 Access AT Commands ==
948
949 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.
950
951 [[image:1654589001411-343.png]]
952
953 **Connection:**
954
955 (% style="background-color:yellow" %)** USB TTL GND <~-~-~-~-> GND**
956
957 (% style="background-color:yellow" %)** USB TTL TXD  <~-~-~-~-> UART_RXD**
958
959 (% style="background-color:yellow" %)** USB TTL RXD  <~-~-~-~-> UART_TXD**
960
961
962 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:
963
964
965 [[image:1654589062541-567.png]]
966
967 Valid AT Command please check [[Configure Device>>path:#Configure_Device]].
968
969
970
971 = 6. FAQ =
972
973 == 6.1 How to change the LoRa Frequency Bands/Region ==
974
975 You can follow the instructions for [[how to upgrade image>>||anchor="H2.10200BFirmwareChangeLog"]].
976 When downloading the images, choose the required image file for download. ​
977
978
979
980 = 7. Trouble Shooting =
981
982 == 7.1 AT Commands input doesn’t work ==
983
984 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.
985
986
987
988 = 8. Order Info =
989
990 Part Number: (% style="color:blue" %)**LSPH01-XX**
991
992
993 (% style="color:blue" %)**XX**(%%): The default frequency band
994
995 * (% style="color:red" %)**AS923**(%%):  LoRaWAN AS923 band
996 * (% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band
997 * (% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band
998 * (% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band
999 * (% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band
1000 * (% style="color:red" %)**US915**(%%): LoRaWAN US915 band
1001 * (% style="color:red" %)**IN865**(%%):  LoRaWAN IN865 band
1002 * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
1003
1004 = 9. ​Packing Info =
1005
1006
1007 **Package Includes**:
1008
1009 * LSPH01 LoRaWAN Soil Ph Sensor x 1
1010
1011 **Dimension and weight**:
1012
1013 * Device Size: cm
1014 * Device Weight: g
1015 * Package Size / pcs : cm
1016 * Weight / pcs : g
1017
1018 = 10. ​Support =
1019
1020 * 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.
1021 * 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]].
1022
1023
Copyright ©2010-2024 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0