Electronics > Projects, Designs, and Technical Stuff
CR2032 battery voltage with BLE
jmaja:
Here is a picture from my scope. Yellow is the reversed battery voltage. White was stored when I had the 10 ohm shunt and no external capacitance, except for 2x100 nF at the sensor. Note that white has 500 us/div while yellow had 1 ms/div.
Have you done the Falstad with correct current profile?
jmaja:
Here is another picture. Blue shows the test point now and white was the voltage over a shunt. Scales are the same. The test point is set low just before deepsleep is activated and high just after wake up. It is also set low when BLESS is called with a new notification.
The first rather short peak is when BLESS starts the chrystal oscillator and sensor is activated with short I2C. The second peak is when the oscillator is stable and the sensor is read. The zero in between is for the notification. CPU does not go the deep sleep there.
Length of the wakeups still match the earlier current profile, which was 27 uAs/event. Much higher capacitance just smooths the current taken.
jmaja:
I don't really care much about the voltage reading accuracy. All I need is some kind of indication of battery level. It will never be accurate for CR2032, since voltage changes so little with remaining capacity and show much with temperature and current taken. I'm more keen to make the battery measurement with the least current used and as simple as possible.
ADC is now measured while sensor is read with I2C. Both events take about the same time. The current consumption is about 7 mA during that. It is the flat section in the white curve starting at about where the red dot for "Stop" is in the header. Probably it gives quite good indication of the remaining battery life.
jmaja:
Here is still one more showing current profiles at the same scale and starting point. Timing is clearly indentical.
jmaja:
User flash area write is going to be the last operation the device can do. Attached is a normal BLE event followed by flash write, which take about 150 uAs based on voltage drop comparison to normal event. Capasitance won't help anymore.
What are my options there? I need to store some variables like device name and calibrations. Totally about 50 bytes. The calibrations may need to be changed any time. Addiotionally I write flash at every boot. There will likely be just tens of boots during lifetime of the device, but most likely the battery will die at boot flash write.
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version