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 ... ... @@ -62,6 +62,7 @@ 62 62 * 8500mAh Battery for long term use 63 63 64 64 55 + 65 65 == 1.3 Specification == 66 66 67 67 ... ... @@ -72,14 +72,15 @@ 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 66 +* - B1 @H-FDD: 2100MHz 67 +* - B3 @H-FDD: 1800MHz 68 +* - B8 @H-FDD: 900MHz 69 +* - B5 @H-FDD: 850MHz 70 +* - B20 @H-FDD: 800MHz 71 +* - B28 @H-FDD: 700MHz 81 81 82 82 74 + 83 83 == 1.4 Probe Specification == 84 84 85 85 ... ... @@ -101,6 +101,7 @@ 101 101 * Length: 3.5 meters 102 102 103 103 96 + 104 104 == 1.5 Applications == 105 105 106 106 ... ... @@ -107,6 +107,7 @@ 107 107 * Smart Agriculture 108 108 109 109 103 + 110 110 == 1.6 Pin mapping and power on == 111 111 112 112 ... ... @@ -113,8 +113,10 @@ 113 113 [[image:image-20220907153300-2.png]] 114 114 115 115 110 + 116 116 = 2. Use NSPH01 to communicate with IoT Server = 117 117 113 + 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 125 + 129 129 == 2.2 Configure the NSPH01 == 130 130 128 + 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 144 + 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 154 + 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 180 + 180 180 [[image:image-20220912144017-1.png]] 181 181 183 + 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 187 + 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 212 + 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 228 + 224 224 === 2.2.6 Use MQTT protocol to uplink data === 225 225 226 226 ... ... @@ -243,6 +243,7 @@ 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 251 + 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 266 + 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 277 + 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 ..... 285 +(% border="1.5" style="background-color:#ffffcc; color:green; width:520px" %) 286 +|=(% 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:35px" %)**2**|(% style="width:40px" %)**4** 287 +|=(% 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 ... ... @@ -324,8 +324,10 @@ 324 324 * (% style="color:#037691" %)**8 sets of recorded data:**(%%) Temperature,Soil PH,Time stamp : 010e022663154d77,....... 325 325 326 326 335 + 327 327 == 2.4 Payload Explanation and Sensor Interface == 328 328 338 + 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 354 + 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 363 + 352 352 === 2.4.3 Battery Info === 353 353 354 354 ... ... @@ -359,6 +359,7 @@ 359 359 Ex2: 0x0B49 = 2889mV 360 360 361 361 374 + 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 393 + 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 404 + 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 418 + 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 427 + 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 447 + 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 460 + 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 466 +[[image:image-20220907154636-17.png]] 452 452 468 + 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 488 + 472 472 == 2.6 LED Indicator == 473 473 474 474 ... ... @@ -480,8 +480,10 @@ 480 480 * For each uplink probe, LED will be on for 500ms. 481 481 482 482 500 + 483 483 == 2.7 Installation and Maintain == 484 484 503 + 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 510 + 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 535 + 515 515 === 2.7.3 Maintain Probe === 516 516 517 517 ... ... @@ -523,6 +523,7 @@ 523 523 1. The probe is IP68 can be put in water. 524 524 525 525 547 + 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 580 + 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 594 + 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 606 + 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 - 615 +[[image:image-20220907154700-20.png]] 615 615 616 616 618 + 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 628 +== 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/]].631 +=== 2.13.1 Battery Type === 631 631 632 632 634 +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. 635 + 636 +The battery is designed to last for several years depends on the actually use environment and update interval. 637 + 638 +The battery-related documents as below: 639 + 640 +* [[Battery Dimension>>url:http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]] 641 +* [[Lithium-Thionyl Chloride Battery datasheet>>url:http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]] 642 +* [[Lithium-ion Battery-Capacitor datasheet>>url:http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]] 643 + 644 +[[image:image-20220907154700-21.png]] 645 + 646 + 647 + 648 +=== 2.13.2 Power consumption Analyze === 649 + 650 + 651 +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. 652 + 653 +Instruction to use as below: 654 + 655 +(% 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/]] 656 + 657 +(% style="color:blue" %)**Step 2: **(%%) Open it and choose 658 + 659 +* Product Model 660 +* Uplink Interval 661 +* Working Mode 662 + 663 +And the Life expectation in difference case will be shown on the right. 664 + 665 + 666 +[[image:image-20220907154700-22.jpeg]] 667 + 668 + 669 + 670 + 671 +=== 2.13.3 Battery Note === 672 + 673 + 674 +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. 675 + 676 + 677 + 678 +=== 2.13.4 Replace the battery === 679 + 680 + 681 +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). 682 + 683 + 684 + 633 633 = 3. Access NB-IoT Module = 634 634 635 635 ... ... @@ -642,8 +642,10 @@ 642 642 643 643 644 644 697 + 645 645 = 4. Using the AT Commands = 646 646 700 + 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 790 + 736 736 = 5. FAQ = 737 737 793 + 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 804 + 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 811 + 754 754 = 6. Trouble Shooting = 755 755 814 + 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 821 + 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 835 + 780 780 = 8. Packing Info = 781 781 782 782 ... ... @@ -793,6 +793,7 @@ 793 793 * Weight / pcs : g 794 794 795 795 852 + 796 796 = 9. Support = 797 797 798 798