What is the shortest meaningful run_duration you got to work for deep sleep? Any tips to improve?

Been running current setup for 8 weeks with no problem. Went up by 400mV in 3 weeks in the dark days of January.

Voltage has kept fairly constant now for weeks. Mostly the solar panel gets some sun from 10:30 and usually within an hour the voltage hits the point where overcharge protection kicks in. The overcharge protection then stops it charging for several hours. Once that maximum spike settles the voltage drops about 30mV over the next 20 or so hours. I think ditching the Wemos board with all its extra hardware probably made the most gains.

I think I have picked satisfactory values for my voltage divider of 440K and 110K. I have read around the subject of Resistors in voltage divider as I know the lower values you use then more current is used by the battery monitor on A0. I thought then, why not use resistors in the Mega Ohm range. The disadvantage of using high value resistors in a voltage divider is it makes the output impedance higher and the output voltage more sensitive to loading. Here you can see a small amount of jitter to 3 decimal places.

Load Resistance
Also found out why the voltage you measure is not the same as you would predict from a voltage divider calculator. It’s because the ESP12F with my A0 is providing some resistance in parallel with the lower value resistor in the divider. Well that’s my understanding of it.

2 Likes

Just updating. For over 1 year this external Temp/pressure sensor has been out side without any intervention( been tempted to open the box). Running on solar Voltage hasn’t dropped below 4V with sun at times not getting above 12.5 degrees above the horizon and many days on end without direct sunlight. The 18650 battery has done well , although external temp hasn’t dropped lower than -6 C
.

2 Likes

I built a second smaller outdoor weather station based on a 420 mAh cell(built in battery protection) with an MCP73871 battery charger board(no built in battery protection).
I use a smaller circular solar panel about 1cm larger diameter than the case.

The MCP73871 has a power path. This has 2 advantages.

  1. If sun is shining then It can supply power directly to the ESP12F without taking from battery first so less charge discharge cycles.
  2. If battery goes flat and then sun comes out the ESP12F can wake up without putting a demand for power from the cell which will only be charging at low current at its low voltage.
    Andreas Spiess describes this problem with the old 18650 battery shield V3 on his channel .i.e. Chip never works and battery will never charge.

It all ran well until Dec 2023 when we got almost no sun shine for next 6 weeks. Lots of rain though. The sensor BMP280 began to glitch. It would read same temp on graph for hours at a time.
When I examined it the cover on the senor had come loose as silicone sealant came off. I replaced the rusty BMP280 and resealed it. Temp and pressure still didn’t read right and Logs often showed BMP sensor not found.
The cell then just seemed to discharge fully over few hours until battery protection kicked in. Next day with just few minutes of direct sun the device would come back to life for up to 18 hours before shutting down
but sensor would read as not connected in logs.
I took it all apart and decided to power the BMP from an output pin rather than VCC. Problem here was to get the output pin to run high before the I2C was loaded.

Thanks to @tiimsvk I got this running. Delayed initialization I2C bus

esphome:
  name: weathersmall
  platform: ESP8266
  board: esp01_1m

  on_boot:
    priority: 1000
    then:
      - lambda: |-
          pinMode(13, OUTPUT);
          digitalWrite(13, HIGH);

I use an automation to send the ESP to deep sleep as soon as HA gets the battery voltage. The senor seems to work better if it goes to sleep and wake again rather than leaving deep sleep inactive to test multiple readings.
There is the advantages of not only slightly lower power consumption of BMP in deep sleep but also the reduced chance of BMP coming out of I2C mode and slipping into SPI mode which I have seen happen after few months needing a hard reset.

2 Likes

just a tip for better measurement outdoors. bmp sensor does not include a heater. Therefore, it shows 100% humidity during rain. I recommend using sht sensors with this function.

Thanks, I had considered buying SHT next time. When I bought the sensor I thought I was buying a BME280 which has humidity. I use a 433mhz digoo sensor out the back which has humidity and it reads 99% when it rains. The digoo has run for years on 2 AA cells. It would make sense to just use them rather than more expensive setup with wifi/lithium cells/battery management, if cost was just the goal. Thank god my small weather ESP broke or I would have had nothing to tinker with and learned nothing new.

This is graf SHT vs BME installed on weather station