Temp/Humidity Sensing accuracy and using a battery in the cold

My Adafruit Feather ESP32 along with Notecard is doing temperature and humidity checks every 5 minutes and pushing that data to Notehub. m

My first issue involves the battery. I have a 2500mAh battery which currently lasts around 30 hours. I believe I have three options:

  • Get two bigger batteries, and swap them out, probably on a weekly basis.
  • Improve the efficiency of the battery by improving my Adruino code
  • Fix the temperature at which the battery rests, since batteries are less efficient at lower temperatures.

My second issue is that I’m not confident of the reliability of my temperature and humidity sensors I’ve tried. I started with the (second-hand) BME280 and it was routinely 20F degrees variance (too warm) compared to local weather API and weather.com. I bought a second sensor “Adafruit (PID 3251) Si7021”, is much closer in temperature, around 4F degrees, but humidity is still around 20-30% off.

Both sensors worked with the standard code recommended by the Blues tutorial using “NotecardPseudoSensor sensor(notecard);”, “sensor.temp();” and “sensor.humidity();”.

Any suggestions with improving battery life of the project, or accuracy of the sensors?

Hi @millertimebjm and welcome to the Blues Wireless community!

If you’re using the NotecardPseudoSensor library (from the tutorial) then you’re actually pulling temperature data from the Notecard’s onboard temp sensor and the humidity is randomly generated(!). The purpose of this library is to mimic a real world scenario, which it sounds like you are trying to re-create.

I’d recommend following the Adafruit BME280 tutorial to make sure you’re using your physical sensor in the right way.

On the battery front, sure, bigger is almost always better! If you want to post your Arduino sketch here (once you’re using the correct library) we can certainly check for any potential power optimizations. One thing to check is to make sure your Notecard is in periodic mode and not maintaining a continuous cellular connection (check the hub.set docs).