BATTERY LIFE using Connect IQ Apps

My fairly new Garmin Edge 820 should get and did get close to 15 hours of battery time. I run several custom data fields now. Backlight is off. And my battery time is now HALF what it should be. Here is a plot of battery level that is typical of my device these days... from a 100 miler yesterday. I write the battery level to a device log file using System.println, every 6 minutes.

My DFs are somewhat compute intensive, running analytics on power meter sensor readings. And the data fields use background colors, not black and white.

Anyone else notice a significant battery drain issue? I don't know if it is due to the color display, or the computational load. Not a biggie - I can easily connect a USB cable from a little lithium pack in my top tube bag. Just surprised the battery drain is TWICE what it is without the CIQ DFs running.

community.garmin.com/.../1294512.jpg
  • the battery usage should be tested first with native data fields only, really, as soon as you're using connect iq fields it's to be expected to have a less long lasting battery life.

    And when using Connect IQ fields it's true the more computations you do the faster the battery will be drained (I've rewritten the code in my pacer project several times to be less computation intensive in order to have a longer lasting battery life).

    the mere fact that you write to a log file will drain the battery much faster too.. (disk operations are very wasteful)

    So if you are indeed that wasteful with your connect iq fields and you use that kind of battery consumption, you might consider thinking of a ways of writing your code in a way that you need less calculations and eg store repeating calculation results in variables.

    To give you an idea: on a FR735XT I get about 14 hours in native data field mode. With connect iq field the battery consumption is expected to be more. After optimizing my code I'm now at nearly 11 hours of battery life when using Peter's (Race) Pacer Connect Iq field - which I think is quite ok for all the things the field still needs to compute - ... and the running races I do max out at about 10 hours anyway, so I'm happy with the battery life I'm getting out of the device... :)
  • Awesome, that helps. Thanks Peter. I would not think writing 50 characters to a flash memory log every 10 minutes has any practical bearing on battery drain (it is not a spinning disk that has a motor). But I can see how more calculations (I run 6 custom DFs) can cause the CPU to do more work and drain faster.

    What I might do, now that I have my favorite data layout across 8 fields, where 6 of them are Custom... is write ONE Connect IQ App that incorporates all that, rather than 6 fields. I wonder if that alone could dramatically reduce the battery impact.
  • I assume that is expected. The build-in data field equals to a very simple field, just read property value, and use build-in text to draw text only.

    So, that should very few CPU time will be used.

    But use our own, it will much more CPU used. You can imagine that, similar to always using navigation if your code not optimized well.

    Be careful with duplicate rendering, duplicate calculation, duplicate code/runtime data cached/stacked.

    Also, combine so many individual data fields into one is another good idea. Currently mine only use 1 data fields contains all stuff, contains so many calculation, caching, draw a lot of things, when I use Edge 1000, build in data fields can last 12 hours, and with my own can reach 9 to 10 hours which should be fine.
  • I assume that is expected. The build-in data field equals to a very simple field, just read property value, and use build-in text to draw text only.

    So, that should very few CPU time will be used.

    But use our own, it will much more CPU used. You can imagine that, similar to always using navigation if your code not optimized well.

    Be careful with duplicate rendering, duplicate calculation, duplicate code/runtime data cached/stacked.

    Also, combine so many individual data fields into one is another good idea. Currently mine only use 1 data fields contains all stuff, contains so many calculation, caching, draw a lot of things, when I use Edge 1000, build in data fields can last 12 hours, and with my own can reach 9 to 10 hours which should be fine.


    I kind of wanted an excuse to try my hand at a full blown CIQ app.... now I have the motivation. Thanks!