I am fairly impressed, so far, with the Heltec CubeCell board, but I have a few gaps in my knowledge.
I have an application in which I am waking the device from sleep via:
a) A peridiodic timer interrupt[TimerInit(), TimerSetValue(), TimerStart()]
b) An external interrupt(attachInterrupt(blahblahblah)
I set a GPIO pin high on entering the timer service routine, and low on exit, and was amazed to see that the timer service routine was taking almost 400uS. Having read that the M0 processor embedded in the 6501 core runs at 48mHz, and there are probably less than 25 line of code in the service routine [including a TimerSetValue() and a TimerStart(), the cycle count of which I know not…]. So now I’m somewhat confused. I’ve tried to cut the code down to very simple sections, as I don’t really understand where all the coulombs are going. The “background” current of my app is fairly stable, as far as I can tell, at about 60uA, and I’m only sending unconfirmed packets every 15 minutes(worst case).
So am I missing something obvious here? I’ve tried measuring the power used wit the Sparkfun Coulomb counter(changing the sense resistor to 0.2Ohms), but it’s wildly inaccurate at low currents. I have the Dave Jones EEVblog uCurrent Gold , but it doesn’t have the dynamic range required for measuring current that ranges from 50uA to almost 100mA. What do your people use for current measurement or battery life estimation?