Analog input on Huzzah ESP8266 board

I am trying to put together a battery powered soil moisture sensor using a DF Robot capacitive soil moisture sensor and ESP8266 board.

I had the setup running fine on a Wemos D1 mini board, however it did not last long on battery despite using esp deep sleep (I believe too much other circuitry which was still using power).

Hence I have opted for the simpler Huzzah board which is supposed to be a better low power unit.

My problem is that I cannot get any good resolution on the sensor using the Huzzah A0 input. I calibrate the sensor in water and in dry air but it cannot seem to sense moist soil (I just get the dry air reading).

I have tried with 3v and 5v on the sensor, tried 2 different sensors with no luck. As soon as I use the D1 mini the problem goes away so I think I have narrowed it down to the Huzzah board.

Has anyone had any experience using analog input on this board?

Voltages across A0 as follows:

D1 Mini:
• Dry 2.813
• Wet soil 1.64
• Water 0.0

Huzzah board:

• Dry 2.8
• Wet soil 1.428
• Water 0.044

Any help would be appreciated.

2 Likes

Hi Phillip,

Welcome to the forum!! :slight_smile:

Which ESP8266 board did you have? I had a quick look at Core’s range and all of the breakout boards which dont have an inbuild voltage divider, meaning the maximum voltage reading will be 1 V (a range of 0-1 V.)
You can check out the documentation here: Reference — ESP8266 Arduino Core documentation

To bump the voltage down you can use a voltage divider to reduce the voltage.
Would it be possible to send through a link to the sensor that you are using? From there we’ll be able to calculate/explain how to get the values for the resistors.

Liam

2 Likes

Hi Liam,

Thanks for you quick response.

ESP board:

Soil moisture sensor:

That makes sense… looks like the D1 mini has an inbuilt voltage divider.

3 Likes

Hi Phillip,

No worries at all!!
Thanks for sending those through - while the product page says it has a 1.8 V maximum the highest voltage it can measure is 1 V, I’ve made a note to get the product page updated :slight_smile:

To get a measurement from 0-1V with your sensor you’ll want to hook it up with a 10k and 4.7k ohm resistor like this:

It’s also worth checking out this amazing tutorial on ohms law: Ohm's Law - Practical Examples for Makers - Tutorial Australia

Liam

2 Likes

Legend! Will try it out and report back my findings.

Phil

1 Like