PDA

View Full Version : sailfish onboard battery monitor


bb_szx
2014-02-14, 18:57
hi,

since update to 1.0.3.8 i noticed follow:

sailfish logged by it self battery-states located in:

/var/lib/upower
[nemo@localhost upower]$ ls -al
total 192
drwxr-xr-x 1 root root 170 Feb 14 19:06 .
drwxr-xr-x 1 root root 434 Jan 10 22:53 ..
-rw-r--r-- 1 root root 3835 Feb 14 19:06 history-charge-7.dat
-rw-r--r-- 1 root root 96854 Feb 14 19:06 history-rate-7.dat
-rw-r--r-- 1 root root 61164 Feb 14 19:06 history-time-empty-7.dat
-rw-r--r-- 1 root root 29297 Feb 14 19:06 history-time-full-7.dat



[nemo@localhost upower]$ cat history-charge-7.dat
1391803697 64.646 discharging
1391830931 63.636 discharging
1391848331 62.626 discharging
1391861531 61.616 discharging
1391879532 60.606 discharging
1391887931 59.596 discharging
1391899332 58.586 discharging
1391908932 57.576 discharging
1391916732 56.566 discharging
1391925881 55.556 discharging
1391938333 54.545 discharging
1391940733 53.535 discharging
1391955132 52.525 discharging
1391971333 51.515 discharging
1391982733 50.505 discharging
1392009733 49.495 discharging
1392024733 48.485 discharging
1392033733 47.475 discharging
1392047533 46.465 discharging
1392056533 45.455 discharging
1392076933 44.444 discharging
1392097934 43.434 discharging
1392111734 42.424 discharging
1392127934 41.414 discharging
1392138134 40.404 discharging
1392140461 39.394 discharging
1392148240 38.384 discharging
1392148621 37.374 discharging
1392148973 36.364 discharging
1392149334 35.354 discharging
1392149965 34.343 discharging
1392188728 33.333 discharging
1392199334 32.323 discharging
1392211935 31.313 discharging
1392223935 30.303 discharging
1392230559 29.293 discharging
1392230677 28.283 discharging
1392233010 27.273 discharging
1392233382 26.263 discharging
1392233804 25.253 discharging
1392233814 24.242 discharging
1392233864 23.232 discharging
1392233994 22.222 discharging
1392234396 21.212 discharging
1392273135 20.202 discharging
1392283335 19.192 discharging
1392296866 18.182 discharging
1392307480 17.172 discharging
1392308144 16.162 discharging
1392308685 15.152 discharging
1392309127 14.141 discharging
1392309518 13.131 discharging
1392309907 12.121 discharging
1392310255 11.111 discharging
1392310480 10.101 discharging
1392310719 9.091 discharging
1392310829 10.101 charging
1392310980 11.111 charging
1392311130 12.121 charging
1392311281 13.131 charging
1392311431 14.141 charging
1392312562 0.000 unknown
1392312562 34.343 discharging
1392312631 35.354 charging
1392312711 36.364 charging
1392312792 37.374 charging
1392312872 38.384 charging
1392312952 39.394 charging
1392313033 40.404 charging
1392313113 41.414 charging
1392313203 42.424 charging
1392313284 43.434 charging
1392313364 44.444 charging
1392313444 45.455 charging
1392313525 46.465 charging
1392313605 47.475 charging
1392313685 48.485 charging
1392313766 49.495 charging
1392313846 50.505 charging
1392313936 51.515 charging
1392314017 52.525 charging
1392314097 53.535 charging
1392314177 54.545 charging
1392314258 55.556 charging
1392314338 56.566 charging
1392314418 57.576 charging
1392314499 58.586 charging
1392314589 59.596 charging
1392314669 60.606 charging
1392314750 61.616 charging
1392314830 62.626 charging
1392314910 63.636 charging
1392314991 64.646 charging
1392315081 65.657 charging
1392315161 66.667 charging
1392315242 67.677 charging
1392315322 68.687 charging
1392315402 69.697 charging
1392315493 70.707 charging
1392315573 71.717 charging
1392315653 72.727 charging
1392315734 73.737 charging
1392315814 74.747 charging
1392315904 75.758 charging
1392315985 76.768 charging
1392316065 77.778 charging
1392316155 78.788 charging
1392316236 79.798 charging
1392316316 80.808 charging
1392316406 81.818 charging
1392316487 82.828 charging
1392316567 83.838 charging
1392316657 84.848 charging
1392316738 85.859 charging
1392316818 86.869 charging
1392316908 87.879 charging
1392316999 88.889 charging
1392317079 89.899 charging
1392317169 90.909 charging
1392317260 91.919 charging
1392317350 92.929 charging
1392317450 93.939 charging
1392317541 94.949 charging
1392317641 95.960 charging
1392317742 96.970 charging
1392317832 97.980 charging
1392317932 98.990 charging
1392318043 100.000 charging
1392333137 99.000 discharging
1392340337 98.000 discharging
1392364938 97.000 discharging
1392380537 96.000 discharging
1392388938 95.000 discharging
1392400029 94.000 discharging
1392400981 93.000 discharging


and
/var/run/state/namespaces/Battery
is linked to
/var/run/state/providers/upower/Battery



[nemo@localhost Battery]$ ls -al
total 0
dr-xr-xr-x 9 root users 0 Feb 13 18:29 .
dr-xr-xr-x 3 root users 0 Feb 13 18:29 ..
-r--r----- 1 root users 2 Feb 13 18:29 Capacity
-r--r----- 1 root users 2 Feb 14 18:47 ChargePercentage
-r--r----- 1 root users 1 Feb 13 21:50 IsCharging
-r--r----- 1 root users 1 Feb 13 18:29 LowBattery
-r--r----- 1 root users 1 Feb 13 18:29 OnBattery
-r--r----- 1 root users 1 Feb 13 18:29 TimeUntilFull
-r--r----- 1 root users 5 Feb 13 18:29 TimeUntilLow


i think it's a good basic to code a better batterymonitor, or?

strahl
2014-02-15, 23:04
Cool, thanks for the info! :) I quickly computed a median over my discharge rate using

grep discharging /var/lib/upower/history-rate-7.dat | sort -k2 | awk '{ a[i++]=$2; } END { print a[int(i/2)]; }'

My Jolla typically consumes 0.245 Watt being mainly connected to a WiFi and <10h a week via an UMTS data link and used quite a bit for reading news, emails, facebook... So the 7.98Wh battery (2100mAh * 3.8V) should typically last for 32.5h (1.4 days) which is a bit shorter than I observed (2.5 days).

:) stefan

PS: Computing the mean using the awk command below does bias short intervals with a high consumption too strongly (I get 0.448 Watt) and would suggest that my battery lasts for only 17.8h which is not the case.

awk '{ if ($3 =="discharging") sum += $2 } END { if (NR > 0) print sum / NR }' < /var/lib/upower/history-rate-7.dat

PPS: If you look for the smallest discharge rate you see 0.011 Watt in the history which would result in 725h (30 days) .

grep discharging /var/lib/upower/history-rate-7.dat | sort -k2 | head

psonek
2014-03-02, 20:25
Hi,
you can check https://openrepos.net/content/radekp/battery-monitor for battery monitor application done by me.

It draws graph for charge_now values. Unfortunately the value refreshes quite seldom - so not very useful for short term measurements, but you will get pretty accurate graph e.g. if you manually refresh after a few hours.

Btw battery on my Jolla on 2G takes 7 days to discharge.

bb_szx
2014-03-10, 19:29
can you code a second screen based by 'history-charge-7.dat'?
i'm not a developer, so i can't support you...

psonek
2014-03-11, 09:41
Yes, it should be possible, but no promises - depends if i'll have time

bb_szx
2014-03-11, 09:48
No hurry...

marius_emil1
2014-10-27, 11:26
It seems that with Sailfish 1.1.0.39 the files from /var/lib/upower are missing!

marius_emil1
2014-10-27, 11:50
In version 1.1.0.39 we can use files from:
/var/run/state/providers/upower/
and
/sys/class/power_supply/battery
(apparently there are the same files)