<
From version < 90.5 >
edited by Xiaoling
on 2022/06/25 16:55
To version < 99.27 >
edited by Xiaoling
on 2024/01/18 11:18
>
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -4,75 +4,31 @@
4 4  
5 5  
6 6  
7 +
8 +
9 +
10 +
11 +
7 7  **Table of Contents:**
8 8  
9 -* [[1. Introduction>>path:#H1.Introduction]]
10 -** [[1.1 ​What is LoRaWAN Soil pH Sensor>>path:#H1.1200BWhatisLoRaWANSoilpHSensor]]
11 -** [[​1.2 Features>>path:#H200B1.2Features]]
12 -** [[1.3 Probe Specification>>path:#H1.3ProbeSpecification]]
13 -** [[1.4 ​Applications>>path:#H1.4200BApplications]]
14 -** [[1.5 Pin mapping and power on>>path:#H1.5Pinmappingandpoweron]]
15 -* [[2. Configure LSPH01 to connect to LoRaWAN network>>path:#H2.ConfigureLSPH01toconnecttoLoRaWANnetwork]]
16 -** [[2.1 How it works>>path:#H2.1Howitworks]]
17 -** [[2.2 ​Quick guide to connect to LoRaWAN server (OTAA)>>path:#H2.2200BQuickguidetoconnecttoLoRaWANserver28OTAA29]]
18 -** [[2.3 ​Uplink Payload>>path:#H2.3200BUplinkPayload]]
19 -*** [[2.3.1 Battery Info>>path:#H2.3.1BatteryInfo]]
20 -*** [[2.3.2 DS18B20 Temperature sensor>>path:#H2.3.2DS18B20Temperaturesensor]]
21 -*** [[2.3.3 Soil pH>>path:#H2.3.3SoilpH]]
22 -*** [[2.3.4 Soil Temperature>>path:#H2.3.4SoilTemperature]]
23 -*** [[2.3.5 Interrupt Pin>>path:#H2.3.5InterruptPin]]
24 -*** [[2.3.6 Message Type>>path:#H2.3.6MessageType]]
25 -*** [[2.3.7 Decode payload in The Things Network>>path:#H2.3.7DecodepayloadinTheThingsNetwork]]
26 -** [[2.4 Uplink Interval>>path:#H2.4UplinkInterval]]
27 -** [[2.5 ​Show Data in DataCake IoT Server>>path:#H2.5200BShowDatainDataCakeIoTServer]]
28 -** [[2.6 Installation and Maintain>>path:#H2.6InstallationandMaintain]]
29 -*** [[2.6.1 Before measurement>>path:#H2.6.1Beforemeasurement]]
30 -*** [[2.6.2 Measurement>>path:#H2.6.2Measurement]]
31 -*** [[2.6.3 Maintain Probe>>path:#H2.6.3MaintainProbe]]
32 -** [[2.7 Calibration>>path:#H2.7Calibration]]
33 -** [[2.8 Frequency Plans>>path:#H2.8FrequencyPlans]]
34 -*** [[2.8.1 EU863-870 (EU868)>>path:#H2.8.1EU863-87028EU86829]]
35 -*** [[2.8.2 US902-928(US915)>>path:#H2.8.2US902-92828US91529]]
36 -*** [[2.8.3 CN470-510 (CN470)>>path:#H2.8.3CN470-51028CN47029]]
37 -*** [[2.8.4 AU915-928(AU915)>>path:#H2.8.4AU915-92828AU91529]]
38 -*** [[2.8.5 AS920-923 & AS923-925 (AS923)>>path:#H2.8.5AS920-92326AS923-92528AS92329]]
39 -*** [[2.8.6 KR920-923 (KR920)>>path:#H2.8.6KR920-92328KR92029]]
40 -*** [[2.8.7 IN865-867 (IN865)>>path:#H2.8.7IN865-86728IN86529]]
41 -** [[2.9 LED Indicator>>path:#H2.9LEDIndicator]]
42 -** [[2.10 ​Firmware Change Log>>path:#H2.10200BFirmwareChangeLog]]
43 -* [[3. Configure LSPH01 via AT Command or LoRaWAN Downlink>>path:#H3.ConfigureLSPH01viaATCommandorLoRaWANDownlink]]
44 -** [[3.1 Set Transmit Interval Time>>path:#H3.1SetTransmitIntervalTime]]
45 -** [[3.2 Set Interrupt Mode>>path:#H3.2SetInterruptMode]]
46 -** [[3.3 Calibrate Sensor>>path:#H3.3CalibrateSensor]]
47 -** [[3.4 Get Firmware Version Info>>path:#H3.4GetFirmwareVersionInfo]]
48 -* [[4. Battery & How to replace>>path:#H4.Battery26Howtoreplace]]
49 -** [[4.1 Battery Type>>path:#H4.1BatteryType]]
50 -** [[4.2 Replace Battery>>path:#H4.2ReplaceBattery]]
51 -** [[4.3 Power Consumption Analyze>>path:#H4.3PowerConsumptionAnalyze]]
52 -*** [[4.3.1 ​Battery Note>>path:#H4.3.1200BBatteryNote]]
53 -*** [[​4.3.2 Replace the battery>>path:#H200B4.3.2Replacethebattery]]
54 -* [[5. Use AT Command>>path:#H5.UseATCommand]]
55 -** [[5.1 Access AT Commands>>path:#H5.1AccessATCommands]]
56 -* [[6. FAQ>>path:#H6.FAQ]]
57 -** [[6.1 How to change the LoRa Frequency Bands/Region>>path:#H6.1HowtochangetheLoRaFrequencyBands2FRegion]]
58 -* [[7. Trouble Shooting>>path:#H7.TroubleShooting]]
59 -** [[7.1 AT Commands input doesn’t work>>path:#H7.1ATCommandsinputdoesn2019twork]]
60 -* [[8. Order Info>>path:#H8.OrderInfo]]
61 -* [[9. ​Packing Info>>path:#H9.200BPackingInfo]]
62 -* [[10. ​Support>>path:#H10.A0200BSupport]]
14 +{{toc/}}
63 63  
16 +
17 +
18 +
19 +
20 +
64 64  = 1. Introduction =
65 65  
66 66  == 1.1 ​What is LoRaWAN Soil pH Sensor ==
67 67  
68 -(((
69 -
70 70  
71 -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.
26 +(((
27 +The Dragino LSPH01 is a (% style="color:blue" %)**LoRaWAN Soil pH Sensor**(%%) for IoT of Agriculture. It is designed to measure the (% style="color:blue" %)**soil PH and soil temperature**(%%), so to send to the platform to analyze the soil acid or alkali level. The probe is IP68 waterproof.
72 72  )))
73 73  
74 74  (((
75 -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.
31 +LSPH01 probe is made by Solid AgCl reference electrode and Pure metal pH sensitive electrode. It can detect (% style="color:blue" %)**soil's pH **(%%)with high accuracy and stable value. The LSPH01 probe can be buried into soil for long time use.
76 76  )))
77 77  
78 78  (((
... ... @@ -80,7 +80,7 @@
80 80  )))
81 81  
82 82  (((
83 -LSPH01 is powered by (% style="color:#4f81bd" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long term use up to 5 years.
39 +LSPH01 is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long term use up to 5 years.
84 84  )))
85 85  
86 86  (((
... ... @@ -91,10 +91,9 @@
91 91  [[image:1654592435432-887.png]]
92 92  
93 93  
94 -
95 -
96 96  == ​1.2 Features ==
97 97  
52 +
98 98  * LoRaWAN 1.0.3 Class A
99 99  * Ultra-low power consumption
100 100  * Monitor soil pH with temperature compensation.
... ... @@ -109,6 +109,7 @@
109 109  * IP68 rate for the Sensor Probe
110 110  * 8500mAh Battery for long term use
111 111  
67 +
112 112  == 1.3 Probe Specification ==
113 113  
114 114  
... ... @@ -129,31 +129,36 @@
129 129  * IP68 Protection
130 130  * Length: 3.5 meters
131 131  
88 +
132 132  == 1.4 ​Applications ==
133 133  
91 +
134 134  * Smart Agriculture
135 135  
94 +
136 136  == 1.5 Pin mapping and power on ==
137 137  
97 +
138 138  [[image:1654592472094-134.png]]
139 139  
140 140  
141 -
142 142  = 2. Configure LSPH01 to connect to LoRaWAN network =
143 143  
144 144  == 2.1 How it works ==
145 145  
105 +
146 146  (((
147 147  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.
148 148  )))
149 149  
150 150  (((
151 -In case you cant 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.
111 +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.
152 152  )))
153 153  
154 154  
155 155  == 2.2 ​Quick guide to connect to LoRaWAN server (OTAA) ==
156 156  
117 +
157 157  (((
158 158  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.
159 159  )))
... ... @@ -178,10 +178,10 @@
178 178  Each LSPH01 is shipped with a sticker with the default device EUI as below:
179 179  )))
180 180  
181 -[[image:image-20220607170145-1.jpeg]]
142 +[[image:image-20230426084737-1.png||height="246" width="530"]](% style="display:none" %)
182 182  
144 +(% style="display:none" %) (%%)
183 183  
184 -
185 185  You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
186 186  
187 187  
... ... @@ -219,14 +219,16 @@
219 219  
220 220  (((
221 221  (% style="color:blue" %)**Step 3**(%%)**:** The LSPH01 will auto join to the TTN network. After join success, it will start to upload messages to TTN and you can see the messages in the panel.
183 +
184 +
222 222  )))
223 223  
224 224  [[image:1654592697690-910.png]]
225 225  
226 226  
227 -
228 228  == 2.3 ​Uplink Payload ==
229 229  
192 +
230 230  (((
231 231  LSPH01 will uplink payload via LoRaWAN with below payload format: 
232 232  )))
... ... @@ -239,14 +239,12 @@
239 239  Normal uplink payload:
240 240  )))
241 241  
242 -(% border="1" cellspacing="10" style="background-color:#ffffcc; width:510px" %)
243 -|=(% style="width: 62.5px;" %)(((
244 -**Size (bytes)**
245 -)))|=(% style="width: 62.5px;" %)**2**|=(% style="width: 62.5px;" %)**2**|=**2**|=**2**|=**1**|=**1**|=**1**
246 -|(% style="width:62.5px" %)**Value**|(% style="width:62.5px" %)[[BAT>>||anchor="H2.3.1BatteryInfo"]]|(% style="width:62.5px" %)(((
247 -[[Temperature>>||anchor="H2.3.2DS18B20Temperaturesensor"]]
248 -
249 -[[(Optional)>>||anchor="H2.3.2DS18B20Temperaturesensor"]]
205 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:470px" %)
206 +|=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
207 +**Size(bytes)**
208 +)))|=(% style="width: 30px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 70px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 50px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 60px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 70px;background-color:#4F81BD;color:white" %)**1**|=(% style="width: 50px;background-color:#4F81BD;color:white" %)**1**|=(% style="width: 80px;background-color:#4F81BD;color:white" %)**1**
209 +|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)[[BAT>>||anchor="H2.3.1BatteryInfo"]]|(% style="width:62.5px" %)(((
210 +[[Temperature (Optional)>>||anchor="H2.3.2DS18B20Temperaturesensor"]]
250 250  )))|[[Soil pH>>||anchor="H2.3.3SoilpH"]]|[[Soil Temperature>>||anchor="H2.3.4SoilTemperature"]]|(((
251 251  [[Digital Interrupt (Optional)>>||anchor="H2.3.5InterruptPin"]]
252 252  )))|Reserve|(((
... ... @@ -256,7 +256,6 @@
256 256  [[image:1654592721645-318.png]]
257 257  
258 258  
259 -
260 260  === 2.3.1 Battery Info ===
261 261  
262 262  
... ... @@ -267,9 +267,9 @@
267 267  Ex2: 0x0B49 = 2889mV
268 268  
269 269  
270 -
271 271  === 2.3.2 DS18B20 Temperature sensor ===
272 272  
232 +
273 273  This is optional, user can connect external DS18B20 sensor to the +3.3v, 1-wire and GND pin . and this field will report temperature.
274 274  
275 275  
... ... @@ -280,9 +280,9 @@
280 280  If payload is: FF3FH :  (FF3F & FC00 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
281 281  
282 282  
283 -
284 284  === 2.3.3 Soil pH ===
285 285  
245 +
286 286  Range: 0 ~~ 14 pH
287 287  
288 288  **Example:**
... ... @@ -290,9 +290,9 @@
290 290  (% style="color:#037691" %)** 0x02B7(H) = 695(D) = 6.95pH**
291 291  
292 292  
293 -
294 294  === 2.3.4 Soil Temperature ===
295 295  
255 +
296 296  Get Soil Temperature 
297 297  
298 298  
... ... @@ -303,9 +303,9 @@
303 303  If payload is: **FF3FH** :  (FF3F & FC00 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
304 304  
305 305  
306 -
307 307  === 2.3.5 Interrupt Pin ===
308 308  
268 +
309 309  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.
310 310  
311 311  
... ... @@ -316,9 +316,9 @@
316 316  0x01: Interrupt Uplink Packet.
317 317  
318 318  
319 -
320 320  === 2.3.6 Message Type ===
321 321  
281 +
322 322  (((
323 323  For a normal uplink payload, the message type is always 0x01.
324 324  )))
... ... @@ -328,14 +328,16 @@
328 328  )))
329 329  
330 330  
331 -(% border="1" cellspacing="10" style="background-color:#ffffcc; width:499px" %)
332 -|=(% style="width: 160px;" %)**Message Type Code**|=(% style="width: 163px;" %)**Description**|=(% style="width: 173px;" %)**Payload**
291 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:496px" %)
292 +|=(% style="width: 160px;background-color:#4F81BD;color:white" %)**Message Type Code**|=(% style="width: 163px;background-color:#4F81BD;color:white" %)**Description**|=(% style="width: 173px;background-color:#4F81BD;color:white" %)**Payload**
333 333  |(% style="width:160px" %)0x01|(% style="width:163px" %)Normal Uplink|(% style="width:173px" %)[[Normal Uplink Payload>>||anchor="H2.3200BUplinkPayload"]]
334 334  |(% style="width:160px" %)0x02|(% style="width:163px" %)Reply configures info|(% style="width:173px" %)[[Configure Info Payload>>||anchor="H3.4GetFirmwareVersionInfo"]]
335 335  |(% style="width:160px" %)0x03|(% style="width:163px" %)Reply Calibration Info|(% style="width:173px" %)[[Calibration Payload>>||anchor="H2.7Calibration"]]
336 336  
297 +
337 337  === 2.3.7 Decode payload in The Things Network ===
338 338  
300 +
339 339  While using TTN network, you can add the payload format to decode the payload.
340 340  
341 341  
... ... @@ -346,19 +346,19 @@
346 346  )))
347 347  
348 348  (((
349 -LSPH01 TTN Payload Decoder: [[https:~~/~~/www.dragino.com/downloads/index.pHp?dir=LoRa_End_Node/LSPH01/Decoder/>>url:https://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/LSNPK01/Decoder/]]
311 +LSPH01 TTN Payload Decoder:  [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]]
350 350  )))
351 351  
352 352  
353 -
354 354  == 2.4 Uplink Interval ==
355 355  
317 +
356 356  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"]]
357 357  
358 358  
359 -
360 360  == 2.5 ​Show Data in DataCake IoT Server ==
361 361  
323 +
362 362  (((
363 363  [[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:
364 364  )))
... ... @@ -389,7 +389,6 @@
389 389  [[image:1654592819047-535.png]]
390 390  
391 391  
392 -
393 393  [[image:1654592833877-762.png]]
394 394  
395 395  
... ... @@ -401,7 +401,7 @@
401 401  )))
402 402  
403 403  (((
404 -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/]]
365 +Download Datacake decoder from: [[https:~~/~~/www.dropbox.com/sh/pj7cgmgqg3gx3ta/AABYFbg1DVOOR9Hmr1mLSBkga?dl=0>>url:https://www.dropbox.com/sh/pj7cgmgqg3gx3ta/AABYFbg1DVOOR9Hmr1mLSBkga?dl=0]]
405 405  )))
406 406  
407 407  
... ... @@ -419,24 +419,21 @@
419 419  [[image:1654592917530-261.png]]
420 420  
421 421  
422 -
423 423  == 2.6 Installation and Maintain ==
424 424  
425 425  === 2.6.1 Before measurement ===
426 426  
387 +
427 427  (((
428 -(((
429 429  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. 
430 430  )))
431 -)))
432 432  
433 433  
434 -
435 435  === 2.6.2 Measurement ===
436 436  
437 437  
438 438  (((
439 -(% style="color:#4f81bd" %)**Measurement the soil surface:**
397 +(% style="color:blue" %)**Measurement the soil surface:**
440 440  )))
441 441  
442 442  (((
... ... @@ -452,7 +452,7 @@
452 452  )))
453 453  
454 454  (((
455 -Slowly insert the probe to the measure point. Dont use large force which will break the probe. Make sure not shake when inserting.
413 +Slowly insert the probe to the measure point. Don't use large force which will break the probe. Make sure not shake when inserting.
456 456  )))
457 457  
458 458  (((
... ... @@ -464,7 +464,7 @@
464 464  )))
465 465  
466 466  (((
467 -(% style="color:#4f81bd" %)**Measurement inside soil:**
425 +(% style="color:blue" %)**Measurement inside soil:**
468 468  )))
469 469  
470 470  (((
... ... @@ -476,27 +476,31 @@
476 476  )))
477 477  
478 478  
479 -
480 480  === 2.6.3 Maintain Probe ===
481 481  
482 -1. (((
483 -pH probe electrode is fragile and no strong. User must avoid strong force or hitting it.
439 +
440 +(((
441 +~1. pH probe electrode is fragile and no strong. User must avoid strong force or hitting it.
484 484  )))
485 -1. (((
486 -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.
443 +
444 +(((
445 +2. 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.
487 487  )))
488 -1. (((
489 -Probe reference electrode is also no strong, need to avoid strong force or hitting.
447 +
448 +(((
449 +3. Probe reference electrode is also no strong, need to avoid strong force or hitting.
490 490  )))
491 -1. (((
492 -User should keep reference electrode wet while not use.
451 +
452 +(((
453 +4. User should keep reference electrode wet while not use.
493 493  )))
494 -1. (((
495 -Avoid the probes to touch oily matter. Which will cause issue in accuracy.
455 +
456 +(((
457 +5. Avoid the probes to touch oily matter. Which will cause issue in accuracy.
496 496  )))
497 -1. (((
498 -The probe is IP68 can be put in water.
499 499  
460 +(((
461 +6. The probe is IP68 can be put in water.
500 500  
501 501  
502 502  )))
... ... @@ -503,6 +503,7 @@
503 503  
504 504  == 2.7 Calibration ==
505 505  
468 +
506 506  (((
507 507  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).
508 508  )))
... ... @@ -509,42 +509,63 @@
509 509  
510 510  (((
511 511  After stable, user can use below command to calibrate.
475 +
476 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
477 +|(% style="background-color:#4F81BD;color:white; width:115px" %)**pH buffer solution**|(% style="background-color:#4F81BD;color:white; width:145px" %)**AT Command to calibrate**|(% style="background-color:#4F81BD;color:white; width:150px" %)**Downlink Command**|(% style="background-color:#4F81BD;color:white; width:100px" %)**Read Cal Value**
478 +|(% style="width:149px" %)4.00|(% style="width:197px" %)AT+PHCAL=4|(% style="width:206px" %)(((
479 +0x13 04
480 +Reply with Calibrate payload
481 +)))|(% style="width:136px" %)(((
482 +AT+PHCAL=?
483 +Example 41,61,91
512 512  )))
485 +|(% style="width:149px" %)6.86|(% style="width:197px" %)AT+PHCAL=6|(% style="width:206px" %)(((
486 +0x13 06
487 +Reply with Calibrate payload
488 +)))|(% style="width:136px" %)AT+PHCAL=?
489 +|(% style="width:149px" %)9.18|(% style="width:197px" %)AT+PHCAL=9|(% style="width:206px" %)(((
490 +0x13 09
491 +Reply with Calibrate payload
492 +)))|(% style="width:136px" %)AT+PHCAL=?
493 +|(% style="width:149px" %)Factory Default|(% style="width:197px" %)AT+PHCAL=15|(% style="width:206px" %)(((
494 +0x13 15
495 +Reply with Calibrate payload
496 +)))|(% style="width:136px" %)(((
497 +AT+PHCAL=?
498 +Example 151
499 +)))
500 +)))
513 513  
514 -[[image:image-20220607171149-4.png]]
515 515  
516 -
517 517  (% style="color:#037691" %)**Calibration Payload**
518 518  
519 -(% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %)
520 -|=(% style="width: 62.5px;" %)(((
521 -**Size (bytes)**
522 -)))|=(% style="width: 89px;" %)**1**|=(% style="width: 89px;" %)**1**|=(% style="width: 89px;" %)**1**|=(% style="width: 89px;" %)**7**|=(% style="width: 89px;" %)**1**
523 -|**Value**|(((
524 -PH4
525 -
526 -Calibrate value
505 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:500px" %)
506 +|=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
507 +**Size(bytes)**
508 +)))|=(% style="width: 100px;background-color:#4F81BD;color:white" %)**1**|=(% style="width: 100px;background-color:#4F81BD;color:white" %)**1**|=(% style="width: 100px;background-color:#4F81BD;color:white" %)**1**|=(% style="width: 50px;background-color:#4F81BD;color:white" %)**7**|=(% style="width:90px;background-color:#4F81BD;color:white" %)**1**
509 +|Value|(((
510 +PH4 Calibrate value
527 527  )))|PH6.86 Calibrate value|(((
528 -PH9.18
529 -
530 -Calibrate value
512 +PH9.18 Calibrate value
531 531  )))|Reserve|(((
532 532  [[Message Type>>||anchor="H2.3.6MessageType"]]
533 -
534 534  Always 0x03
535 535  )))
536 536  
537 537  User can also send 0x14 downlink command to poll the current calibration payload.
538 538  
539 -[[image:image-20220607171416-7.jpeg]]
520 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:480px" %)
521 +|=(% style="width: 183px; background-color:#4F81BD;color:white" %)**Downlink Control Type**|=(% style="width: 55px; background-color:#4F81BD;color:white" %)FPort|=(% style="width: 93px; background-color:#4F81BD;color:white" %)**Type Code**|=(% style="width: 151px; background-color:#4F81BD;color:white" %)**Downlink payload size(bytes)**
522 +|(% style="width:183px" %)Get Calibration Version Info|(% style="width:55px" %)Any|(% style="width:93px" %)14|(% style="width:146px" %)2
540 540  
541 -
542 542  * Reply to the confirmation package: 14 01
525 +
543 543  * Reply to non-confirmed packet: 14 00
544 544  
545 545  
546 546  == 2.8 Frequency Plans ==
547 547  
531 +
548 548  (((
549 549  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.
550 550  )))
... ... @@ -552,6 +552,7 @@
552 552  
553 553  === 2.8.1 EU863-870 (EU868) ===
554 554  
539 +
555 555  (((
556 556  (% style="color:blue" %)**Uplink:**
557 557  )))
... ... @@ -609,9 +609,9 @@
609 609  )))
610 610  
611 611  
612 -
613 613  === 2.8.2 US902-928(US915) ===
614 614  
599 +
615 615  (((
616 616  Used in USA, Canada and South America. Frequency band as per definition in LoRaWAN 1.0.3 Regional document.
617 617  )))
... ... @@ -625,11 +625,13 @@
625 625  )))
626 626  
627 627  * Check what sub-band the LoRaWAN server ask from the OTAA Join Accept message and switch to that sub-band
628 -* 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)
629 629  
614 +* 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)
630 630  
616 +
631 631  === 2.8.3 CN470-510 (CN470) ===
632 632  
619 +
633 633  (((
634 634  Used in China, Default use CHE=1
635 635  )))
... ... @@ -715,9 +715,9 @@
715 715  )))
716 716  
717 717  
718 -
719 719  === 2.8.4 AU915-928(AU915) ===
720 720  
707 +
721 721  (((
722 722  Frequency band as per definition in LoRaWAN 1.0.3 Regional document.
723 723  )))
... ... @@ -735,10 +735,13 @@
735 735  )))
736 736  
737 737  * Check what sub-band the LoRaWAN server ask from the OTAA Join Accept message and switch to that sub-band
738 -* 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)
739 739  
726 +* 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)
727 +
728 +
740 740  === 2.8.5 AS920-923 & AS923-925 (AS923) ===
741 741  
731 +
742 742  (((
743 743  (% style="color:blue" %)**Default Uplink channel:**
744 744  )))
... ... @@ -844,9 +844,9 @@
844 844  )))
845 845  
846 846  
847 -
848 848  === 2.8.6 KR920-923 (KR920) ===
849 849  
839 +
850 850  (((
851 851  (% style="color:blue" %)**Default channel:**
852 852  )))
... ... @@ -863,9 +863,6 @@
863 863  922.5 - SF7BW125 to SF12BW125
864 864  )))
865 865  
866 -(((
867 -
868 -)))
869 869  
870 870  (((
871 871  (% style="color:blue" %)**Uplink: (OTAA mode, channel added by JoinAccept message)**
... ... @@ -899,9 +899,6 @@
899 899  923.3 - SF7BW125 to SF12BW125
900 900  )))
901 901  
902 -(((
903 -
904 -)))
905 905  
906 906  (((
907 907  (% style="color:blue" %)**Downlink:**
... ... @@ -916,9 +916,9 @@
916 916  )))
917 917  
918 918  
919 -
920 920  === 2.8.7 IN865-867 (IN865) ===
921 921  
905 +
922 922  (((
923 923  (% style="color:blue" %)**Uplink:**
924 924  )))
... ... @@ -935,9 +935,6 @@
935 935  865.9850 - SF7BW125 to SF12BW125
936 936  )))
937 937  
938 -(((
939 -
940 -)))
941 941  
942 942  (((
943 943  (% style="color:blue" %)**Downlink:**
... ... @@ -952,33 +952,27 @@
952 952  )))
953 953  
954 954  
955 -
956 956  == 2.9 LED Indicator ==
957 957  
938 +
958 958  The LSPH01 has an internal LED which is to show the status of different state.
959 959  
960 960  * The sensor is detected when the device is turned on, and it will flash 4 times quickly when it is detected.
942 +
961 961  * Blink once when device transmit a packet.
962 962  
963 963  
964 -
965 -
966 -
967 -
968 968  == 2.10 ​Firmware Change Log ==
969 969  
970 970  
971 -**Firmware download link:**
949 +**Firmware download link: **[[https:~~/~~/www.dropbox.com/sh/xtm5tw37mewaw99/AAD0uy06odmreQQ7vMzZYVIGa?dl=0>>https://www.dropbox.com/sh/xtm5tw37mewaw99/AAD0uy06odmreQQ7vMzZYVIGa?dl=0]]
972 972  
973 -[[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/]]
974 -
975 -
976 976  **Firmware Upgrade Method: **[[Firmware Upgrade Instruction>>path:/xwiki/bin/view/Main/Firmware%20Upgrade%20Instruction%20for%20STM32%20base%20products/]]
977 977  
978 978  
979 -
980 980  = 3. Configure LSPH01 via AT Command or LoRaWAN Downlink =
981 981  
956 +
982 982  (((
983 983  Use can configure LSPH01 via AT Command or LoRaWAN Downlink.
984 984  )))
... ... @@ -1010,12 +1010,9 @@
1010 1010  )))
1011 1011  
1012 1012  (((
1013 -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/]]
988 +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/]]
1014 1014  )))
1015 1015  
1016 -(((
1017 -
1018 -)))
1019 1019  
1020 1020  * (((
1021 1021  (% style="color:#4f81bd" %)** Commands special design for LSPH01**
... ... @@ -1026,16 +1026,25 @@
1026 1026  )))
1027 1027  
1028 1028  
1029 -
1030 1030  == 3.1 Set Transmit Interval Time ==
1031 1031  
1003 +
1032 1032  Feature: Change LoRaWAN End Node Transmit Interval.
1033 1033  
1034 1034  (% style="color:#037691" %)**AT Command: AT+TDC**
1035 1035  
1036 -[[image:image-20220607171554-8.png]]
1008 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
1009 +|=(% style="width: 156px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 137px;background-color:#4F81BD;color:white" %)**Function**|=(% style="background-color:#4F81BD;color:white" %)**Response**
1010 +|(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|(((
1011 +30000
1012 +OK
1013 +the interval is 30000ms = 30s
1014 +)))
1015 +|(% style="width:156px" %)AT+TDC=60000|(% style="width:137px" %)Set Transmit Interval|(((
1016 +OK
1017 +Set transmit interval to 60000ms = 60 seconds​
1018 +)))
1037 1037  
1038 -
1039 1039  (((
1040 1040  (% style="color:#037691" %)**Downlink Command: 0x01**
1041 1041  )))
... ... @@ -1045,14 +1045,14 @@
1045 1045  )))
1046 1046  
1047 1047  (((
1048 -If the downlink payload=0100003C, it means set the END Nodes Transmit Interval to 0x00003C=60(S), while type code is 01.
1029 +If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01.
1049 1049  )))
1050 1050  
1051 1051  * (((
1052 -Example 1: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds
1033 +Example 1: Downlink Payload: 0100001E  ~/~/ Set Transmit Interval (TDC) = 30 seconds
1053 1053  )))
1054 1054  * (((
1055 -Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds
1036 +Example 2: Downlink Payload: 0100003C  ~/~/ Set Transmit Interval (TDC) = 60 seconds
1056 1056  
1057 1057  
1058 1058  
... ... @@ -1060,13 +1060,26 @@
1060 1060  
1061 1061  == 3.2 Set Interrupt Mode ==
1062 1062  
1044 +
1063 1063  Feature, Set Interrupt mode for GPIO_EXIT.
1064 1064  
1065 1065  (% style="color:#037691" %)**AT Command: AT+INTMOD**
1066 1066  
1067 -[[image:image-20220610105907-1.png]]
1049 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
1050 +|=(% style="width: 155px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 197px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 158px;background-color:#4F81BD;color:white" %)**Response**
1051 +|(% style="width:154px" %)AT+INTMOD=?|(% style="width:196px" %)Show current interrupt mode|(% style="width:157px" %)(((
1052 +0
1053 +OK
1054 +the mode is 0 =No interruption
1055 +)))
1056 +|(% style="width:154px" %)AT+INTMOD=2|(% style="width:196px" %)(((
1057 +Set Transmit Interval
1058 +0. (Disable Interrupt),
1059 +~1. (Trigger by rising and falling edge)
1060 +2. (Trigger by falling edge)
1061 +3. (Trigger by rising edge)
1062 +)))|(% style="width:157px" %)OK
1068 1068  
1069 -
1070 1070  (((
1071 1071  (% style="color:#037691" %)**Downlink Command: 0x06**
1072 1072  )))
... ... @@ -1080,33 +1080,34 @@
1080 1080  )))
1081 1081  
1082 1082  * (((
1083 -Example 1: Downlink Payload: 06000000 ~/~/ Turn off interrupt mode
1077 +Example 1: Downlink Payload: 06000000  ~/~/ Turn off interrupt mode
1084 1084  )))
1085 1085  * (((
1086 -Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger
1087 -)))
1080 +Example 2: Downlink Payload: 06000003  ~/~/  Set the interrupt mode to rising edge trigger
1088 1088  
1089 -(((
1082 +
1090 1090  
1091 1091  )))
1092 1092  
1093 -
1094 -
1095 1095  == 3.3 Calibrate Sensor ==
1096 1096  
1088 +
1097 1097  Detail See [[Calibration Guide>>||anchor="H2.7Calibration"]] for the user of 0x13 and 0x14 downlink commands
1098 1098  
1099 1099  
1100 -
1101 1101  == 3.4 Get Firmware Version Info ==
1102 1102  
1094 +
1103 1103  Feature: use downlink to get firmware version.
1104 1104  
1105 1105  (% style="color:#037691" %)**Downlink Command: 0x26**
1106 1106  
1107 -[[image:image-20220607171917-10.png]]
1099 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:500px" %)
1100 +|(% style="background-color:#4F81BD;color:white; width:193px" %)**Downlink Control Type**|(% style="background-color:#4F81BD;color:white; width:57px" %)**FPort**|(% style="background-color:#4F81BD;color:white; width:91px" %)**Type Code**|(% style="background-color:#4F81BD;color:white; width:159px" %)**Downlink payload size(bytes)**
1101 +|(% style="width:193px" %)Get Firmware Version Info|(% style="width:57px" %)Any|(% style="width:91px" %)26|(% style="width:149px" %)2
1108 1108  
1109 1109  * Reply to the confirmation package: 26 01
1104 +
1110 1110  * Reply to non-confirmed packet: 26 00
1111 1111  
1112 1112  Device will send an uplink after got this downlink command. With below payload:
... ... @@ -1113,17 +1113,13 @@
1113 1113  
1114 1114  Configures info payload:
1115 1115  
1116 -(% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %)
1117 -|=(((
1118 -**Size(bytes)**
1119 -)))|=**1**|=**1**|=**1**|=**1**|=**1**|=**5**|=**1**
1120 -|**Value**|Software Type|(((
1111 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:520px" %)
1112 +|(% style="background-color:#4F81BD;color:white; width:50px" %)**Size(bytes)**|(% style="background-color:#4F81BD;color:white; width:70px" %)**1**|(% style="background-color:#4F81BD;color:white; width:70px" %)**1**|(% style="background-color:#4F81BD;color:white; width:50px" %)**1**|(% style="background-color:#4F81BD;color:white; width:70px" %)**1**|(% style="background-color:#4F81BD;color:white; width:60px" %)**1**|(% style="background-color:#4F81BD;color:white; width:50px" %)**5**|(% style="background-color:#4F81BD;color:white; width:100px" %)**1**
1113 +|Value|Software Type|(((
1121 1121  Frequency
1122 -
1123 1123  Band
1124 1124  )))|Sub-band|(((
1125 1125  Firmware
1126 -
1127 1127  Version
1128 1128  )))|Sensor Type|Reserve|(((
1129 1129  [[Message Type>>||anchor="H2.3.6MessageType"]]
... ... @@ -1132,7 +1132,6 @@
1132 1132  
1133 1133  (% style="color:#037691" %)**Software Type**(%%): Always 0x03 for LSPH01
1134 1134  
1135 -
1136 1136  (% style="color:#037691" %)**Frequency Band**:
1137 1137  
1138 1138  *0x01: EU868
... ... @@ -1158,10 +1158,8 @@
1158 1158  
1159 1159  (% style="color:#037691" %)**Sub-Band**(%%): value 0x00 ~~ 0x08
1160 1160  
1161 -
1162 1162  (% style="color:#037691" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
1163 1163  
1164 -
1165 1165  (% style="color:#037691" %)**Sensor Type**:
1166 1166  
1167 1167  0x01: LSE01
... ... @@ -1179,111 +1179,25 @@
1179 1179  0x07: LDDS12
1180 1180  
1181 1181  
1170 += 4. Battery & Power Consumption =
1182 1182  
1183 -= 4. Battery & How to replace =
1184 1184  
1185 -== 4.1 Battery Type ==
1173 +LSPH01 uses ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
1186 1186  
1187 -(((
1188 -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.
1189 -)))
1175 +[[**Battery Info & Power Consumption Analyze**>>url:http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
1190 1190  
1191 -(((
1192 -The discharge curve is not linear so can't simply use percentage to show the battery level. Below is the battery performance.
1193 -)))
1194 1194  
1195 -[[image:1654593587246-335.png]]
1196 -
1197 -
1198 -Minimum Working Voltage for the LSPH01:
1199 -
1200 -LSPH01:  2.45v ~~ 3.6v
1201 -
1202 -
1203 -
1204 -== 4.2 Replace Battery ==
1205 -
1206 -(((
1207 -Any battery with range 2.45 ~~ 3.6v can be a replacement. We recommend to use Li-SOCl2 Battery.
1208 -)))
1209 -
1210 -(((
1211 -And make sure the positive and negative pins match.
1212 -)))
1213 -
1214 -
1215 -
1216 -== 4.3 Power Consumption Analyze ==
1217 -
1218 -(((
1219 -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.
1220 -)))
1221 -
1222 -(((
1223 -Instruction to use as below:
1224 -)))
1225 -
1226 -
1227 -(% style="color:red" %)**Step 1**(%%): Downlink the up-to-date DRAGINO_Battery_Life_Prediction_Table.xlsx from:
1228 -
1229 -[[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/]]
1230 -
1231 -
1232 -(% style="color:#037691" %)**Step 2**(%%): Open it and choose
1233 -
1234 -* Product Model
1235 -* Uplink Interval
1236 -* Working Mode
1237 -
1238 -And the Life expectation in difference case will be shown on the right.
1239 -
1240 -[[image:1654593605679-189.png]]
1241 -
1242 -
1243 -The battery related documents as below:
1244 -
1245 -* (((
1246 -[[Battery Dimension>>https://www.dragino.com/downloads/index.php?dir=datasheet/Battery/]],
1247 -)))
1248 -* (((
1249 -[[Lithium-Thionyl Chloride Battery  datasheet>>url:https://www.dragino.com/downloads/downloads/datasheet/Battery/ER26500/ER26500_Datasheet-EN.pdf]],
1250 -)))
1251 -* (((
1252 -[[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/]]
1253 -)))
1254 -
1255 -[[image:image-20220607172042-11.png]]
1256 -
1257 -
1258 -
1259 -=== 4.3.1 ​Battery Note ===
1260 -
1261 -(((
1262 -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.
1263 -)))
1264 -
1265 -
1266 -
1267 -=== ​4.3.2 Replace the battery ===
1268 -
1269 -(((
1270 -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.
1271 -)))
1272 -
1273 -(((
1274 -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)
1275 -)))
1276 -
1277 -
1278 -
1279 1279  = 5. Use AT Command =
1280 1280  
1281 1281  == 5.1 Access AT Commands ==
1282 1282  
1182 +
1283 1283  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.
1284 1284  
1185 +
1285 1285  [[image:1654593668970-604.png]]
1286 1286  
1188 +
1287 1287  **Connection:**
1288 1288  
1289 1289  (% style="background-color:yellow" %)** USB TTL GND <~-~-~-~-> GND**
... ... @@ -1307,6 +1307,7 @@
1307 1307  
1308 1308  == 6.1 How to change the LoRa Frequency Bands/Region ==
1309 1309  
1212 +
1310 1310  You can follow the instructions for [[how to upgrade image>>||anchor="H2.10200BFirmwareChangeLog"]].
1311 1311  When downloading the images, choose the required image file for download. ​
1312 1312  
... ... @@ -1315,12 +1315,13 @@
1315 1315  
1316 1316  == 7.1 AT Commands input doesn't work ==
1317 1317  
1221 +
1318 1318  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.
1319 1319  
1320 1320  
1321 -
1322 1322  = 8. Order Info =
1323 1323  
1227 +
1324 1324  Part Number: (% style="color:blue" %)**LSPH01-XX**
1325 1325  
1326 1326  
... ... @@ -1336,8 +1336,6 @@
1336 1336  * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
1337 1337  
1338 1338  
1339 -
1340 -
1341 1341  = 9. ​Packing Info =
1342 1342  
1343 1343  
... ... @@ -1353,11 +1353,8 @@
1353 1353  * Weight / pcs : g
1354 1354  
1355 1355  
1356 -
1357 -
1358 1358  = 10. ​Support =
1359 1359  
1260 +
1360 1360  * 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.
1361 1361  * 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]].
1362 -
1363 -
image-20230426084737-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +190.0 KB
Content
Copyright ©2010-2024 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0