This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

SDK 15.2: Recommendation on accurate SAADC readings of moisture sensor over time

Hi,

I am sampling a moisture sensor using one of the analog pins without issues. However, since my circuit is battery powered, I need to account for voltage drop of a 3V coin cell. The question is how do I compensate for the voltage drop while the battery is draining? Do I base the readings while taking the battery voltage in consideration?

Thanks

  • Without a schematic any answer here can only be a random guess.

    My answer: Maybe.. ;-)

  • If the moisture sensor voltage is derived directly from the coin voltage in that the moisture value falls proportionally with falling coin voltage then use Vdd as the reference to get a ratiometric measurement (reference falls in balance with moisture sensor output) which compensate to a first degree the falling coin voltage.

    If the moisture sensor output is independent of the falling coin voltage use instead the fixed reference in the SAADC. Note even with a fixed reference there will be some small change in measured moisture value, so in both cases additionally sample Vdd (channel 9) and use a look-up table to provide additional compensation if necessary.

  • I am using an off the shelf capacitive soil sensor From DFRobot that comes with 3 pins (Vcc, Gnd, Signal Pin/Ain0). Hope this answers your question.

  • ,

    I played with the sensor w while back so I don't remember the exact readings but after calibration, I was able to get steady and stable readings. All of this was powered by a continuous 3.3V. Now that I have time to continue working on this project, I was thinking to power everything (BLE Module + Sensor) from a 3V coin cell. The first hurdle I see, is the voltage drop which will skew the readings. For example on a typical Arduino set up, we get the following:

    Dry: (520 430]
    Wet: (430 350]
    Water: (350 260]

    At 2.8V, Dry,Wet and Water will have different meaning. Keep in mind that there is diode on the sensor circuit that has Fv of 400mv (measured). Since Vdd will vary as well, how can I use it as a reference voltage?

    Thanks

  • That is not a good sensor to use if it has a 3 volt internal LDO (not buck/boost) regulator which you intend to supply with less than 3 volts.

    If you find a sensor with an input range 2 volts and higher by using a boost regulator then the fixed reference will work. The nRF52832 has an internal fixed reference of 0.6 volts, so if the sensor has a regulator which always stays in regulation then you would use that. I assume you mean something like this Soil_Moisture_Sensor_SKU_SEN0193? That and others do give a voltage output, but they generate that from an oscillator which is affected by the capacitance sensor so it would almost be better to just take the digital output from the 555 timer direct, before the diode, and forget about measuring voltages .. however, try the fixed reference in the nRF52 - see example SAADC in peripherals. The diode is used to create a dc voltage across the CR which you are trying to measure; it will be highly temperature dependent.

Related