Changes for page SPH01-LB -- LoRaWAN Soil pH Sensor User Manual
Last modified by Xiaoling on 2024/01/15 09:36
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -177,14 +177,16 @@ 177 177 178 178 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 [[LPS8v2>>url:https://www.dragino.com/products/lora-lorawan-gateway/item/228-lps8v2.html]] as a LoRaWAN gateway in this example. 179 179 180 +[[image:image-20230530180406-2.png||height="408" width="806"]] 181 + 180 180 The LPS8v2 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. 181 181 182 - [[image:image-20230530180406-2.png||height="408" width="806"]](% style="display:none" %)184 +(% style="display:none" %) 183 183 184 184 185 -(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from CPL03-LB.187 +(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from SPH01-LB. 186 186 187 -Each CPL03-LB is shipped with a sticker with the default device EUI as below:189 +Each SPH01-LB is shipped with a sticker with the default device EUI as below: 188 188 189 189 [[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]] 190 190 ... ... @@ -213,10 +213,10 @@ 213 213 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-6.png?width=744&height=485&rev=1.1||alt="图片-20220611161308-6.png"]] 214 214 215 215 216 -(% style="color:blue" %)**Step 2:**(%%) Activate on CPL03-LB218 +(% style="color:blue" %)**Step 2:**(%%) Activate on SPH01-LB 217 217 218 218 219 -Press the button for 5 seconds to activate the CPL03-LB.221 +Press the button for 5 seconds to activate the SPH01-LB. 220 220 221 221 (% style="color:green" %)**Green led**(%%) will fast blink 5 times, device will enter (% style="color:blue" %)**OTA mode**(%%) for 3 seconds. And then start to JOIN LoRaWAN network. (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network. 222 222 ... ... @@ -227,7 +227,7 @@ 227 227 228 228 229 229 ((( 230 - LSPH01 will uplink payload via LoRaWAN with below payload format:232 +SPH01-LB will uplink payload via LoRaWAN with below payload format: 231 231 ))) 232 232 233 233 ((( ... ... @@ -242,7 +242,7 @@ 242 242 |=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)((( 243 243 **Size(bytes)** 244 244 )))|=(% style="width: 30px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 70px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 50px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)**2**|=(% style="width: 70px;background-color:#D9E2F3;color:#0070C0" %)**1**|=(% style="width: 50px;background-color:#D9E2F3;color:#0070C0" %)**1**|=(% style="width: 80px;background-color:#D9E2F3;color:#0070C0" %)**1** 245 -|(% style="width:62.5px" %) **Value**|(% style="width:62.5px" %)[[BAT>>||anchor="H2.3.1BatteryInfo"]]|(% style="width:62.5px" %)(((247 +|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)[[BAT>>||anchor="H2.3.1BatteryInfo"]]|(% style="width:62.5px" %)((( 246 246 [[Temperature (Optional)>>||anchor="H2.3.2DS18B20Temperaturesensor"]] 247 247 )))|[[Soil pH>>||anchor="H2.3.3SoilpH"]]|[[Soil Temperature>>||anchor="H2.3.4SoilTemperature"]]|((( 248 248 [[Digital Interrupt (Optional)>>||anchor="H2.3.5InterruptPin"]] ... ... @@ -250,7 +250,7 @@ 250 250 [[Message Type>>||anchor="H2.3.6MessageType"]] 251 251 ))) 252 252 253 -[[image:1654592721645-318.png]] 255 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSPH01-LoRaWAN%20Soil%20pH%20Sensor%20User%20Manual/WebHome/1654592721645-318.png?rev=1.1||alt="1654592721645-318.png"]] 254 254 255 255 256 256 === 2.3.1 Battery Info === ... ... @@ -330,6 +330,8 @@ 330 330 |(% style="width:160px" %)0x02|(% style="width:163px" %)Reply configures info|(% style="width:173px" %)[[Configure Info Payload>>||anchor="H3.4GetFirmwareVersionInfo"]] 331 331 |(% style="width:160px" %)0x03|(% style="width:163px" %)Reply Calibration Info|(% style="width:173px" %)[[Calibration Payload>>||anchor="H2.7Calibration"]] 332 332 335 + 336 + 333 333 === 2.3.7 Decode payload in The Things Network === 334 334 335 335 ... ... @@ -336,40 +336,37 @@ 336 336 While using TTN network, you can add the payload format to decode the payload. 337 337 338 338 339 -[[image:1654592762713-715.png]] 343 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSPH01-LoRaWAN%20Soil%20pH%20Sensor%20User%20Manual/WebHome/1654592762713-715.png?rev=1.1||alt="1654592762713-715.png"]] 340 340 341 341 ((( 342 342 The payload decoder function for TTN is here: 343 343 ))) 344 344 345 -((( 346 -LSPH01 TTN Payload Decoder: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]] 347 -))) 349 +In the page (% style="color:#037691" %)**Applications ~-~-> Payload Formats ~-~-> Custom ~-~-> decoder**(%%) to add the decoder from: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]] 348 348 349 -== 2.4 Payload Decoder file == 350 350 352 +== 2.4 Uplink Interval == 351 351 352 -In TTN, use can add a custom payload so it shows friendly reading 353 353 354 - In thepage(%style="color:#037691"%)**Applications~-~-> PayloadFormats~-~->Custom~-~->decoder**(%%)to add thedecoder from: [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]]355 +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"]] 355 355 356 356 357 357 == 2.5 Datalog Feature == 358 358 359 359 360 -Datalog Feature is to ensure IoT Server can get all sampling data from Sensor even if the LoRaWAN network is down. For each sampling, CPL03-LB will store the reading for future retrieving purposes.361 +Datalog Feature is to ensure IoT Server can get all sampling data from Sensor even if the LoRaWAN network is down. For each sampling, SPH01-LB will store the reading for future retrieving purposes. 361 361 362 362 363 363 === 2.5.1 Ways to get datalog via LoRaWAN === 364 364 365 365 366 -Set PNACKMD=1, CPL03-LB will wait for ACK for every uplink, when there is no LoRaWAN network,CPL03-LB will mark these records with non-ack messages and store the sensor data, and it will send all messages (10s interval) after the network recovery.367 +Set PNACKMD=1, SPH01-LB will wait for ACK for every uplink, when there is no LoRaWAN network,CPL03-LB will mark these records with non-ack messages and store the sensor data, and it will send all messages (10s interval) after the network recovery. 367 367 368 368 * ((( 369 -a) CPL03-LB will do an ACK check for data records sending to make sure every data arrive server.370 +a) SPH01-LB will do an ACK check for data records sending to make sure every data arrive server. 370 370 ))) 371 371 * ((( 372 -b) CPL03-LB will send data in **CONFIRMED Mode** when PNACKMD=1, butCPL03-LB won't re-transmit the packet if it doesn't get ACK, it will just mark it as a NONE-ACK message. In a future uplink ifCPL03-LB gets a ACK,CPL03-LB will consider there is a network connection and resend all NONE-ACK messages.373 +b) SPH01-LB will send data in **CONFIRMED Mode** when PNACKMD=1, but SPH01-LB won't re-transmit the packet if it doesn't get ACK, it will just mark it as a NONE-ACK message. In a future uplink if SPH01-LB gets a ACK, SPH01-LB will consider there is a network connection and resend all NONE-ACK messages. 373 373 ))) 374 374 375 375 Below is the typical case for the auto-update datalog feature (Set PNACKMD=1) ... ... @@ -380,7 +380,7 @@ 380 380 === 2.5.2 Unix TimeStamp === 381 381 382 382 383 - CPL03-LB uses Unix TimeStamp format based on384 +SPH01-LB uses Unix TimeStamp format based on 384 384 385 385 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20220523001219-11.png?width=627&height=97&rev=1.1||alt="图片-20220523001219-11.png" height="97" width="627"]] 386 386 ... ... @@ -431,9 +431,150 @@ 431 431 ))) 432 432 433 433 434 -== 2.6 Frequency Plans==435 +== 2.6 Installation and Maintain == 435 435 437 +=== 2.6.1 Before measurement === 436 436 439 + 440 + 441 +((( 442 +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. 443 +))) 444 + 445 + 446 + 447 +=== 2.6.2 Measurement === 448 + 449 + 450 +((( 451 +(% style="color:#4f81bd" %)**Measurement the soil surface:** 452 +))) 453 + 454 +((( 455 +[[image:1654592946732-634.png]] 456 + 457 + 458 +))) 459 + 460 +((( 461 +Choose the proper measuring position. Split the surface soil according to the measured deep. 462 +))) 463 + 464 +((( 465 +Put pure water, or rainwater to make the soil of measurement point to moist mud. Remove rocks or hard things. 466 +))) 467 + 468 +((( 469 +Slowly insert the probe to the measure point. Don't use large force which will break the probe. Make sure not shake when inserting. 470 +))) 471 + 472 +((( 473 +Put soil over the probe after insert. And start to measure. 474 +))) 475 + 476 + 477 +((( 478 +(% style="color:#4f81bd" %)**Measurement inside soil:** 479 +))) 480 + 481 +((( 482 +Dig a hole with diameter > 20CM. 483 +))) 484 + 485 +((( 486 +Insert the probe inside, method like measure the surface. 487 +))) 488 + 489 + 490 +=== 2.6.3 Maintain Probe === 491 + 492 + 493 +1. ((( 494 +pH probe electrode is fragile and no strong. User must avoid strong force or hitting it. 495 +))) 496 +1. ((( 497 +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. 498 +))) 499 +1. ((( 500 +Probe reference electrode is also no strong, need to avoid strong force or hitting. 501 +))) 502 +1. ((( 503 +User should keep reference electrode wet while not use. 504 +))) 505 +1. ((( 506 +Avoid the probes to touch oily matter. Which will cause issue in accuracy. 507 +))) 508 +1. ((( 509 +The probe is IP68 can be put in water. 510 +))) 511 + 512 + 513 +== 2.7 Calibration == 514 + 515 + 516 +((( 517 +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). 518 +))) 519 + 520 +((( 521 +After stable, user can use below command to calibrate. 522 + 523 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:520px" %) 524 +|(% style="background-color:#d9e2f3; color:#0070c0; width:120px" %)**pH buffer solution**|(% style="background-color:#d9e2f3; color:#0070c0; width:150px" %)**AT Command to calibrate**|(% style="background-color:#d9e2f3; color:#0070c0; width:150px" %)**Downlink Command**|(% style="background-color:#d9e2f3; color:#0070c0; width:100px" %)**Read Cal Value** 525 +|(% style="width:149px" %)4.00|(% style="width:197px" %)AT+PHCAL=4|(% style="width:206px" %)((( 526 +0x13 04 527 +Reply with Calibrate payload 528 +)))|(% style="width:136px" %)((( 529 +AT+PHCAL=? 530 +Example 41,61,91 531 +))) 532 +|(% style="width:149px" %)6.86|(% style="width:197px" %)AT+PHCAL=6|(% style="width:206px" %)((( 533 +0x13 06 534 +Reply with Calibrate payload 535 +)))|(% style="width:136px" %)AT+PHCAL=? 536 +|(% style="width:149px" %)9.18|(% style="width:197px" %)AT+PHCAL=9|(% style="width:206px" %)((( 537 +0x13 09 538 +Reply with Calibrate payload 539 +)))|(% style="width:136px" %)AT+PHCAL=? 540 +|(% style="width:149px" %)Factory Default|(% style="width:197px" %)AT+PHCAL=15|(% style="width:206px" %)((( 541 +0x13 15 542 +Reply with Calibrate payload 543 +)))|(% style="width:136px" %)((( 544 +AT+PHCAL=? 545 +Example 151 546 +))) 547 +))) 548 + 549 + 550 +(% style="color:#037691" %)**Calibration Payload** 551 + 552 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:500px" %) 553 +|=(% style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)((( 554 +**Size(bytes)** 555 +)))|=(% style="width: 100px;background-color:#D9E2F3;color:#0070C0" %)**1**|=(% style="width: 100px;background-color:#D9E2F3;color:#0070C0" %)**1**|=(% style="width: 100px;background-color:#D9E2F3;color:#0070C0" %)**1**|=(% style="width: 50px;background-color:#D9E2F3;color:#0070C0" %)**7**|=(% style="width: 90px;background-color:#D9E2F3;color:#0070C0" %)**1** 556 +|Value|((( 557 +PH4 Calibrate value 558 +)))|PH6.86 Calibrate value|((( 559 +PH9.18 Calibrate value 560 +)))|Reserve|((( 561 +[[Message Type>>||anchor="H2.3.6MessageType"]] 562 +Always 0x03 563 +))) 564 + 565 +User can also send 0x14 downlink command to poll the current calibration payload. 566 + 567 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:480px" %) 568 +|=(% style="width: 183px; background-color:#D9E2F3;color:#0070C0" %)**Downlink Control Type**|=(% style="width: 55px; background-color:#D9E2F3;color:#0070C0" %)FPort|=(% style="width: 93px; background-color:#D9E2F3;color:#0070C0" %)**Type Code**|=(% style="width: 146px; background-color: rgb(217, 226, 243); color: rgb(0, 112, 192);" %)**Downlink payload size(bytes)** 569 +|(% style="width:183px" %)Get Calibration Version Info|(% style="width:55px" %)Any|(% style="width:93px" %)14|(% style="width:146px" %)2 570 + 571 +* Reply to the confirmation package: 14 01 572 +* Reply to non-confirmed packet: 14 00 573 + 574 + 575 + 576 +== 2.8 Frequency Plans == 577 + 578 + 437 437 The CPL03-LB 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. 438 438 439 439 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]]