Changes for page NSPH01-NB-IoT Soil pH Sensor User Manual
Last modified by Bei Jinggeng on 2024/03/30 17:53
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -9,32 +9,21 @@ 9 9 10 10 = 1. Introduction = 11 11 12 + 12 12 == 1.1 What is NSPH01 Soil pH Sensor == 13 13 14 14 15 -((( 16 16 The Dragino NSPH01 is a (% style="color:blue" %)**NB-IoT 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. 17 -))) 18 18 19 -((( 20 20 NSPH01 probe is made by Solid AgCl reference electrode and Pure metal pH sensitive electrode. It can detect soil's** (% style="color:blue" %)pH (%%)**with high accuracy and stable value. The NSPH01 probe can be buried into soil for long time use. 21 -))) 22 22 23 -((( 24 24 NarrowBand-Internet of Things (NB-IoT) is a standards-based low power wide area (LPWA) technology developed to enable a wide range of new IoT devices and services. NB-IoT significantly improves the power consumption of user devices, system capacity and spectrum efficiency, especially in deep coverage. 25 -))) 26 26 27 -((( 28 28 NSPH01 supports different uplink methods include (% style="color:blue" %)**TCP,MQTT,UDP and CoAP **(%%)for different application requirement. 29 -))) 30 30 31 -((( 32 32 NSPH01 is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), It is designed for long term use up to 5 years. (Actually Battery life depends on the use environment, update period & uplink method) 33 -))) 34 34 35 -((( 36 36 To use NSPH01, user needs to check if there is NB-IoT coverage in the installation area and with the bands NSPH01 supports. If the local operator supports it, user needs to get a (% style="color:blue" %)**NB-IoT SIM card** (%%)from local operator and install NSPH01 to get NB-IoT network connection. 37 -))) 38 38 39 39 40 40 [[image:image-20220907153151-1.png]] ... ... @@ -43,6 +43,7 @@ 43 43 [[image:M_K`YF9`CAYAE\@}3T]FHT$9.png]] 44 44 45 45 35 + 46 46 == 1.2 Features == 47 47 48 48 ... ... @@ -72,12 +72,12 @@ 72 72 73 73 (% style="color:#037691" %)**NB-IoT Spec:** 74 74 75 -* B1 @H-FDD: 2100MHz 76 -* B3 @H-FDD: 1800MHz 77 -* B8 @H-FDD: 900MHz 78 -* B5 @H-FDD: 850MHz 79 -* B20 @H-FDD: 800MHz 80 -* B28 @H-FDD: 700MHz 65 +* - B1 @H-FDD: 2100MHz 66 +* - B3 @H-FDD: 1800MHz 67 +* - B8 @H-FDD: 900MHz 68 +* - B5 @H-FDD: 850MHz 69 +* - B20 @H-FDD: 800MHz 70 +* - B28 @H-FDD: 700MHz 81 81 82 82 83 83 == 1.4 Probe Specification == ... ... @@ -113,8 +113,10 @@ 113 113 [[image:image-20220907153300-2.png]] 114 114 115 115 106 + 116 116 = 2. Use NSPH01 to communicate with IoT Server = 117 117 109 + 118 118 == 2.1 How it works == 119 119 120 120 ... ... @@ -126,8 +126,10 @@ 126 126 [[image:image-20220907153416-3.png]] 127 127 128 128 121 + 129 129 == 2.2 Configure the NSPH01 == 130 130 124 + 131 131 === 2.2.1 Test Requirement === 132 132 133 133 ... ... @@ -143,6 +143,7 @@ 143 143 [[image:image-20220907153445-4.png]] 144 144 145 145 140 + 146 146 === 2.2.2 Insert SIM card === 147 147 148 148 ... ... @@ -152,6 +152,7 @@ 152 152 [[image:image-20220907153505-5.png]] 153 153 154 154 150 + 155 155 === 2.2.3 Connect USB – TTL to NSPH01 to configure it === 156 156 157 157 ... ... @@ -177,11 +177,14 @@ 177 177 178 178 Make sure the switch is in FLASH position, then power on device by connecting the jumper on NSPH01. NSPH01 will output system info once power on as below, we can enter the (% style="color:green" %)**password: 12345678**(%%) to access AT Command input. 179 179 176 + 180 180 [[image:image-20220912144017-1.png]] 181 181 179 + 182 182 (% style="color:red" %)**Note: the valid AT Commands can be found at:**(%%)** **[[**https:~~/~~/www.dropbox.com/sh/351dwor6joz8nwh/AADn1BQaAAxLF_QMyU8NkW47a?dl=0**>>url:https://www.dropbox.com/sh/351dwor6joz8nwh/AADn1BQaAAxLF_QMyU8NkW47a?dl=0]] 183 183 184 184 183 + 185 185 === 2.2.4 Use CoAP protocol to uplink data === 186 186 187 187 ... ... @@ -206,6 +206,7 @@ 206 206 [[image:image-20220907153612-8.png||height="529" width="729"]] 207 207 208 208 208 + 209 209 === 2.2.5 Use UDP protocol to uplink data(Default protocol) === 210 210 211 211 ... ... @@ -221,6 +221,7 @@ 221 221 [[image:image-20220907153703-10.png||height="309" width="738"]] 222 222 223 223 224 + 224 224 === 2.2.6 Use MQTT protocol to uplink data === 225 225 226 226 ... ... @@ -243,6 +243,8 @@ 243 243 MQTT protocol has a much higher power consumption compare vs UDP / CoAP protocol. Please check the power analyze document and adjust the uplink period to a suitable interval. 244 244 245 245 247 + 248 + 246 246 === 2.2.7 Use TCP protocol to uplink data === 247 247 248 248 ... ... @@ -257,6 +257,7 @@ 257 257 [[image:image-20220907153827-14.png||height="236" width="684"]] 258 258 259 259 263 + 260 260 === 2.2.8 Change Update Interval === 261 261 262 262 ... ... @@ -267,6 +267,7 @@ 267 267 (% style="color:red" %)**NOTE: By default, the device will send an uplink message every 2 hours. Each Uplink Include 8 set of records in this 2 hour (15 minute interval / record).** 268 268 269 269 274 + 270 270 == 2.3 Uplink Payload == 271 271 272 272 ... ... @@ -274,9 +274,9 @@ 274 274 275 275 Each time the device uploads a data package, 8 sets of recorded data will be attached. Up to 32 sets of recorded data can be uploaded. 276 276 277 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:515px" %)278 -|(% s tyle="background-color:#4F81BD;color:white;width:50px" %)**Size(bytes)**|(% style="background-color:#4F81BD;color:white; width:40px" %)**8**|(% style="background-color:#4F81BD;color:white; width:20px" %)**2**|(% style="background-color:#4F81BD;color:white; width:25px" %)**2**|(% style="background-color:#4F81BD;color:white; width:60px" %)**1**|(% style="background-color:#4F81BD;color:white; color:#0070c0; width:20px" %)**1**|(% style="background-color:#4F81BD;color:white; width:40px" %)**1**|(% style="background-color:#4F81BD;color:white; width:40px" %)**2**|(% style="background-color:#4F81BD;color:white; width:49px" %)**2**|(% style="background-color:#4F81BD;color:white; width:49px" %)**4**|(% style="background-color:#4F81BD;color:white; width:49px" %)**2**|(% style="background-color:#4F81BD;color:white; width:34px" %)**2**|(% style="background-color:#4F81BD;color:white; width:39px" %)**4**279 -|(% style="width:96px" %)Value|(% style="width:83px" %)Device ID|(% style="width:44px" %)Ver|(% style="width:42px" %)BAT|(% style="width:124px" %)Signal Strength|(% style="width:57px" %)MOD|(% style="width:80px" %)Interrupt|(% style="width:69px" %)Soil PH|(% style="width:134px" %)Soil Temperature|(% style="width:98px" %)Time stamp|(% style="width:134px" %)Soil Temperature|(% style="width:68px" %)Soil PH|(% style="width:125px" %)Time stamp ..... 282 +(% border="1.5" style="background-color:#ffffcc; color:green; width:520px" %) 283 +|=(% scope="row" style="width: 50px;" %)**Size(bytes)**|(% style="width:40px" %)**8**|(% style="width:20px" %)**2**|(% style="width:25px" %)**2**|(% style="width:60px" %)**1**|(% style="width:20px" %)**1**|(% style="width:40px" %)**1**|(% style="width:40px" %)**2**|(% style="width:50px" %)**2**|(% style="width:50px" %)**4**|(% style="width:50px" %)**2**|(% style="width:40px" %)**2**|(% style="width:40px" %)**4** 284 +|=(% style="width: 96px;" %)**Value**|(% style="width:83px" %)Device ID|(% style="width:44px" %)Ver|(% style="width:42px" %)BAT|(% style="width:124px" %)Signal Strength|(% style="width:57px" %)MOD|(% style="width:80px" %)Interrupt|(% style="width:69px" %)Soil PH|(% style="width:134px" %)Soil Temperature|(% style="width:98px" %)Time stamp|(% style="width:134px" %)Soil Temperature|(% style="width:68px" %)Soil PH|(% style="width:125px" %)Time stamp ..... 280 280 281 281 If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the NSPH01 uplink data. 282 282 ... ... @@ -326,6 +326,7 @@ 326 326 327 327 == 2.4 Payload Explanation and Sensor Interface == 328 328 334 + 329 329 === 2.4.1 Device ID === 330 330 331 331 ... ... @@ -341,6 +341,7 @@ 341 341 The Device ID is stored in a none-erase area, Upgrade the firmware or run AT+FDR won't erase Device ID. 342 342 343 343 350 + 344 344 === 2.4.2 Version Info === 345 345 346 346 ... ... @@ -349,6 +349,7 @@ 349 349 For example: 0x00 64 : this device is NSPH01 with firmware version 1.0.0. 350 350 351 351 359 + 352 352 === 2.4.3 Battery Info === 353 353 354 354 ... ... @@ -359,6 +359,7 @@ 359 359 Ex2: 0x0B49 = 2889mV 360 360 361 361 370 + 362 362 === 2.4.4 Signal Strength === 363 363 364 364 ... ... @@ -377,6 +377,7 @@ 377 377 **99** Not known or not detectable 378 378 379 379 389 + 380 380 === 2.4.5 Soil PH === 381 381 382 382 ... ... @@ -387,6 +387,7 @@ 387 387 (% style="color:blue" %)**0229(H) = 549(D) /100 = 5.49.** 388 388 389 389 400 + 390 390 === 2.4.6 Soil Temperature === 391 391 392 392 ... ... @@ -400,6 +400,7 @@ 400 400 If payload is FF7EH: ((FF7E & 0x8000)>>15 ===1),temp = (FF7E(H)-FFFF(H))/10 = -12.9 °C 401 401 402 402 414 + 403 403 === 2.4.7 Timestamp === 404 404 405 405 ... ... @@ -408,6 +408,7 @@ 408 408 Convert Unix timestamp to time 2022-9-5 9:40:11. 409 409 410 410 423 + 411 411 === 2.4.8 Digital Interrupt === 412 412 413 413 ... ... @@ -427,6 +427,7 @@ 427 427 0x(01): Interrupt Uplink Packet. 428 428 429 429 443 + 430 430 === 2.4.9 +5V Output === 431 431 432 432 ... ... @@ -439,17 +439,15 @@ 439 439 Means set 5V valid time to have 1000ms. So the real 5V output will actually have 1000ms + sampling time for other sensors.** ** 440 440 441 441 456 + 442 442 == 2.5 Downlink Payload == 443 443 444 444 445 445 By default, NSPH01 prints the downlink payload to console port. 446 446 447 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:479.818px" %) 448 -|=(% 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)** 449 -|(% style="width:183px" %)TDC (Transmit Time Interval)|(% style="width:55px" %)Any|(% style="width:93px" %)01|(% style="width:146px" %)4 450 -|(% style="width:183px" %)RESET|(% style="width:55px" %)Any|(% style="width:93px" %)04|(% style="width:146px" %)2 451 -|(% style="width:183px" %)INTMOD|(% style="width:55px" %)Any|(% style="width:93px" %)06|(% style="width:146px" %)4 462 +[[image:image-20220907154636-17.png]] 452 452 464 + 453 453 (% style="color:blue" %)**Examples:** 454 454 455 455 * (% style="color:#037691" %)** Set TDC** ... ... @@ -469,6 +469,7 @@ 469 469 Downlink Payload: 06000003, Set AT+INTMOD=3 470 470 471 471 484 + 472 472 == 2.6 LED Indicator == 473 473 474 474 ... ... @@ -479,9 +479,9 @@ 479 479 * After NSPH01 join NB-IoT network. The LED will be ON for 3 seconds. 480 480 * For each uplink probe, LED will be on for 500ms. 481 481 482 - 483 483 == 2.7 Installation and Maintain == 484 484 497 + 485 485 === 2.7.1 Before measurement === 486 486 487 487 ... ... @@ -488,6 +488,7 @@ 488 488 If the NSPH01 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. 489 489 490 490 504 + 491 491 === 2.7.2 Measurement === 492 492 493 493 ... ... @@ -512,6 +512,7 @@ 512 512 Insert the probe inside, method like measure the surface. 513 513 514 514 529 + 515 515 === 2.7.3 Maintain Probe === 516 516 517 517 ... ... @@ -522,7 +522,6 @@ 522 522 1. Avoid the probes to touch oily matter. Which will cause issue in accuracy. 523 523 1. The probe is IP68 can be put in water. 524 524 525 - 526 526 == 2.8 PH and Temperature alarm function == 527 527 528 528 ... ... @@ -555,6 +555,7 @@ 555 555 AT+ TEMPALARM=20,30 ~/~/ Alarm when temperature lower than 20. 556 556 557 557 572 + 558 558 == 2.9 Set the number of data to be uploaded and the recording time == 559 559 560 560 ... ... @@ -568,6 +568,7 @@ 568 568 [[image:image-20221009000933-1.png||height="750" width="1043"]] 569 569 570 570 586 + 571 571 == 2.10 Read or Clear cached data == 572 572 573 573 ... ... @@ -579,6 +579,7 @@ 579 579 [[image:image-20220907154700-19.png]] 580 580 581 581 598 + 582 582 == 2.11 Calibration == 583 583 584 584 ... ... @@ -586,34 +586,11 @@ 586 586 587 587 After stable, user can use below command to calibrate. 588 588 589 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:515px" %) 590 -|(% style="background-color:#4F81BD;color:white; width:118px" %)**pH buffer solution**|(% style="background-color:#4F81BD;color:white; width:149px" %)**AT Command to calibrate**|(% style="background-color:#4F81BD;color:white; width:149px" %)**Downlink Command**|(% style="background-color:#4F81BD;color:white; width:99px" %)**Read Cal Value** 591 -|(% style="width:149px" %)4.00|(% style="width:197px" %)AT+PHCAL=4|(% style="width:206px" %)((( 592 -0x13 04 593 -Reply with Calibrate payload 594 -)))|(% style="width:136px" %)((( 595 -AT+PHCAL=? 596 -Example 41,61,91 597 -))) 598 -|(% style="width:149px" %)6.86|(% style="width:197px" %)AT+PHCAL=6|(% style="width:206px" %)((( 599 -0x13 06 600 -Reply with Calibrate payload 601 -)))|(% style="width:136px" %)AT+PHCAL=? 602 -|(% style="width:149px" %)9.18|(% style="width:197px" %)AT+PHCAL=9|(% style="width:206px" %)((( 603 -0x13 09 604 -Reply with Calibrate payload 605 -)))|(% style="width:136px" %)AT+PHCAL=? 606 -|(% style="width:149px" %)Factory Default|(% style="width:197px" %)AT+PHCAL=15|(% style="width:206px" %)((( 607 -0x13 15 608 -Reply with Calibrate payload 609 -)))|(% style="width:136px" %)((( 610 -AT+PHCAL=? 611 -Example 151 612 -))) 613 613 614 - 607 +[[image:image-20220907154700-20.png]] 615 615 616 616 610 + 617 617 == 2.12 Firmware Change Log == 618 618 619 619 ... ... @@ -622,14 +622,64 @@ 622 622 Upgrade Instruction: [[Upgrade Firmware>>||anchor="H5.1200BHowtoUpgradeFirmware"]] 623 623 624 624 625 -== 2.13 Battery & Power Consumption == 626 626 620 +== 2.13 Battery Analysis == 627 627 628 -NSPH01 uses ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace. 629 629 630 - [[**BatteryInfo & Power Consumption Analyze**>>url:http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]].623 +=== 2.13.1 Battery Type === 631 631 632 632 626 +The NSPH01 battery is a combination of an 8500mAh Li/SOCI2 Battery and a Super Capacitor. The battery is none-rechargeable battery type with a low discharge rate (<2% per year). This type of battery is commonly used in IoT devices such as water meter. 627 + 628 +The battery is designed to last for several years depends on the actually use environment and update interval. 629 + 630 +The battery-related documents as below: 631 + 632 +* [[Battery Dimension>>url:http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]] 633 +* [[Lithium-Thionyl Chloride Battery datasheet>>url:http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]] 634 +* [[Lithium-ion Battery-Capacitor datasheet>>url:http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]] 635 + 636 +[[image:image-20220907154700-21.png]] 637 + 638 + 639 + 640 +=== 2.13.2 Power consumption Analyze === 641 + 642 + 643 +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. 644 + 645 +Instruction to use as below: 646 + 647 +(% style="color:blue" %)**Step 1: **(%%)Downlink the up-to-date DRAGINO_Battery_Life_Prediction_Table.xlsx from: [[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/]] 648 + 649 +(% style="color:blue" %)**Step 2: **(%%) Open it and choose 650 + 651 +* Product Model 652 +* Uplink Interval 653 +* Working Mode 654 + 655 +And the Life expectation in difference case will be shown on the right. 656 + 657 + 658 +[[image:image-20220907154700-22.jpeg]] 659 + 660 + 661 + 662 + 663 +=== 2.13.3 Battery Note === 664 + 665 + 666 +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. 667 + 668 + 669 + 670 +=== 2.13.4 Replace the battery === 671 + 672 + 673 +The default battery pack of NSPH01 includes a ER26500 plus super capacitor. If user can't find this pack locally, they can find ER26500 or equivalence without the SPC1520 capacitor, which will also work in most case. The SPC can enlarge the battery life for high frequency use (update period below 5 minutes). 674 + 675 + 676 + 633 633 = 3. Access NB-IoT Module = 634 634 635 635 ... ... @@ -642,8 +642,10 @@ 642 642 643 643 644 644 689 + 645 645 = 4. Using the AT Commands = 646 646 692 + 647 647 == 4.1 Access AT Commands == 648 648 649 649 ... ... @@ -733,8 +733,10 @@ 733 733 AT+PWORD : Serial Access Password 734 734 735 735 782 + 736 736 = 5. FAQ = 737 737 785 + 738 738 == 5.1 How to Upgrade Firmware == 739 739 740 740 ... ... @@ -745,6 +745,7 @@ 745 745 (% style="color:red" %)**Notice, NSPH01 and LSPH01 share the same mother board. They use the same connection and method to update.** 746 746 747 747 796 + 748 748 == 5.2 Can I calibrate NSPH01 to different soil types? == 749 749 750 750 ... ... @@ -751,8 +751,10 @@ 751 751 NSPH01 is calibrated for saline-alkali soil and loamy soil. If users want to use it for other soil, they can calibrate the value in the IoT platform base on the value measured by saline-alkali soil and loamy soil. The formula can be found at [[this link>>url:https://www.dragino.com/downloads/downloads/LoRa_End_Node/LSE01/Calibrate_to_other_Soil_20220605.pdf]]. 752 752 753 753 803 + 754 754 = 6. Trouble Shooting = 755 755 806 + 756 756 == 6.1 Connection problem when uploading firmware == 757 757 758 758 ... ... @@ -759,6 +759,7 @@ 759 759 **Please see: **[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20Upgrade%20Instruction%20for%20STM32%20base%20products/#H3.3Troubleshooting>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20Upgrade%20Instruction%20for%20STM32%20base%20products/#H3.3Troubleshooting]] 760 760 761 761 813 + 762 762 == 6.2 AT Command input doesn't work == 763 763 764 764 ... ... @@ -765,12 +765,7 @@ 765 765 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. 766 766 767 767 768 -== 6.3 Not able to connect to NB-IoT network and keep showing "Signal Strength:99". == 769 769 770 - 771 -This means sensor is trying to join the NB-IoT network but fail. Please see this link for **//[[trouble shooting for signal strenght:99>>doc:Main.CSQ\:99,99.WebHome]]//**. 772 - 773 - 774 774 = 7. Order Info = 775 775 776 776 ... ... @@ -777,6 +777,7 @@ 777 777 Part Number**:** NSPH01 778 778 779 779 827 + 780 780 = 8. Packing Info = 781 781 782 782