I wondered if we had a hardware issue, or a software issue, or both.
I just tried to copy your measurement process with the Nordic eval board. Here’s what I did, and I’m not sure of my workings, so check me out.
- First I read p21 of this document.
Notice the last note. Maybe that’s significant for us?
- I looked through hundreds of loose resistors and found one that claims to be 10 ohms.
- Then I kind kludged it across the current measurement pins of the PCA10001, using my meter probes, like this.
- Then I ran my software and put the Nordic to sleep (allegedly)
- My meter looks like this
- Then I found an ohms-law calculator and plugged in some values.
Well doh! 1.2mA
I have to measure the voltage which is….
Watts = Volts * Amps, so the answer is 2.367 * 0.0012 = 0.0028404 or 3mW. This is a lot more than the µW I was hoping to see. So it looks like there’s a lot of stuff still switched on.
Learned something significant
I read up some more on power saving. Having the debugger running has a huge effect. Here is my experiment that proves the point.
I made a simple program that:
- turns on a LED
- waits for a button press
- shuts down.
When running in debug mode the voltage measured across the bridge is 12mV
If I disconnect the debugger, the shutdown voltage is 0.1mV = 0.0001V. So the current is 0.00001A.
So the wattage is
So the wattage is
2.367 * 0.00001 = 0.00002367 W = 24µW.
That’s a lot better, but it’s still 30x what I should be seeing.
Ahhh! And then it struck me. The meter has pooped out. What I need to do is use a bigger resistor in the bridge. I wonder what that will do?
The voltage now seems to be down to 2.426V, and the sleep current now measures 0.2mV across a 100Ω bridge, so the current is 0.002mA = 2µA ??
So the math is now 2.426V * 0.000002A = 0.000004852W ~ 5µW.