Right now I have a circuit consisting of a Adafruit Huzzah Feather (ESP8266 board), an ADXL345 accelerometer, and an ATTiny85 (bare chip). The circuit is powered by a lipo battery plugged in to the huzzah with the ADXL345 and ATTINy being powered by the VBat pin (so they are always powered).
The INT1 (Interrupt 1) pin of the ADXL345 is connected to ATTiny85 and set to fire on ACTIVITY. The Tiny wakes on the rising interrupt and turns on the ENABLE pin of the Huzzah (enabling the onboard 3V3 regulator and starting the ESP8266). When the ESP8266 starts, it clears the interrupt from the ADXL345 (the two are connected via I2C) updates an ePaper display connected via SPI. The Huzzah tells Tiny it is done and ready to shutdown by changing the state on a GPIO pin. Tiny senses this, pulls the ENABLE pin low and then puts itself to sleep. The LED flashes for 50ms every 2s just so I know if the Tiny is awake or sleeping.
The problem I am having is that when the Huzzah is disabled and the Tiny is sleeping, the power consumption is still around 900 uA. Moving the ammeter around, I found that about half of that is current flowing between the sleeping Tiny and disabled huzzah. The ADXL345 in measurement mode should only consume 23uA.
In the interest of simplifying things, I'd like to replace the Tiny with something simpler and even lower powered. The three things I've found by googling are:
- Low power latching relay (like one of these)
- Set-Reset latch/bistable flip-flop (something from here...)
- TPL5111 Set-reset timer (Adafruit makes a breakout for it)
Seems like the relay would only consume power while switching but may be overkill (I had difficulty finding a small one since I don't need 10A switching). The watchdog feature of the TPL5111 chip would be a nice-to-have thing in case the ESP locks up but not required.
Can someone with some EE experience weigh in and help this ME figure out the best way to control power via the enable pin given the above information? I'm also open to other suggestions too.