Battery life improvement
#1
Hi all,

I have bought my pinephone and use it daily.

I'm looking for better battery life.

The only way what i heard, it's reduce the power on time screen.

What can be a manner to have better battery life in general and espacially when the phone is on and active ?

What's the main difference with an android device !

For me, three component are main battery consumer.

1-CPU : Allwinner A64 4 x ARM Cortex A53 cores @ 1.152 GHz
2-Modem : Quectel EG25-G with worldwide bands


*****
1-CPU
*****
I have tried to power of two or three core -> no impact
not again tried to minimise frequency ! -> any feedback ?

The firmware is opensource ?

********
2-MODEM
********
The only thing what i can do is to flash opensource firmware of modem.

The opensource firmware URL : https://github.com/the-modem-distro/pinephone_modem_sdk


I don't know if this FOSS firmware drain less battery than stock firmware !

Have you a power consumption mesurement method ? It's powertop ?



I used this script to have notification with 3G/4G connection to keep connection with XMPP/Matrix client. And modem restart when modem disconnected.

https://gitea.privatedns.org/Xavi92/pinephone-scripts



Thanks a lot for your feedback.
  Reply
#2
Well, that script will consume a lot of power over standard suspend which does not wake up periodically (but will not maintain XMPP or Matrix connections, let alone notify you of incoming messages). Keeping the network running consumes power, both for the CPU (that needs to wake up periodically) and for the networking itself. (I found the WiFi in particular to be very power-hungry.)
  Reply
#3
(05-30-2023, 07:08 AM)Kevin Kofler Wrote: Well, that script will consume a lot of power over standard suspend which does not wake up periodically (but will not maintain XMPP or Matrix connections, let alone notify you of incoming messages). Keeping the network running consumes power, both for the CPU (that needs to wake up periodically) and for the networking itself. (I found the WiFi in particular to be very power-hungry.)

Ok, notification is another problem. Implementation of notification system in userpace is a lot of work.

How it's possible to know what component consume more battery ! It's the CPU, the mode, ... ?

The main tool is powertop ?

And why when the phone is activated, pinephone drain battery more fastly than android devices ?
  Reply
#4
Android is heavily optimized for minimum power consumption. E.g., apps can be suspended by the OS at any time, which means Android asks them to save their state and then terminates them, and then they have to resume from the saved state later. (Android also saves a screenshot of the UI in memory so the user does not notice that the app is not actually running anymore.) The PinePhone OS (none of the available ones, except of course GloDroid) does none of all this, and is not likely to start doing so any time soon. So do not expect the power consumption to ever be as low as on Android, it is just not going to happen.
  Reply
#5
I understand, postmarket OS not do that ?

Notifications only work with this script to keep 4G connection and wake up CPU at regular interval : https://gitea.privatedns.org/Xavi92/pine.../README.md
  Reply
#6
(05-30-2023, 12:33 PM)freelectro Wrote: I understand, postmarket OS not do that ?
Indeed, it does not. As I said, this is only an Android feature. GNU/Linux, including mobile GNU/Linux, does not work that way.

(05-30-2023, 12:33 PM)freelectro Wrote: Notifications only work with this script to keep 4G connection and wake up CPU at regular interval : https://gitea.privatedns.org/Xavi92/pine.../README.md

Well yes, but as I said, making those notifications work consumes a lot of power on standby. Normally, the PinePhone suspends the CPU and turns off networking/Internet, only the modem (which has its own CPU) is on standby by default. Keeping the CPU running consumes power, keeping the WiFi running consumes additional power, and keeping mobile data running may or may not also consume more power than having the modem on standby for calls/SMS only.
  Reply
#7
What is the notification push theorical mecanism ? UnifiedPush in userspace

Because be appear, it's not possible to receive them with standby phone.

The cpu is standby, modem too (just CPU modem is ON to receive call and sms) !

It's not possible to let 3G/4G enable with standby phone to receive notifications ?

Maybe i missed some element, thos topic is interresing about notifications.

https://github.com/the-modem-distro/pine...issues/137
  Reply
#8
Unified Push only really helps if you have an implementation of it in the modem. Which brings us to the (Biktorgj modem SDK) issue report you linked. (I doubt Quectel's stock firmware will ever support this.)  If you run Unified Push on the main CPU, you still have to wake up the main CPU periodically to check on the network.

And of course, this assumes you use mobile (LTE) data, not WiFi, because the modem firmware has no way to talk to the WiFi chip.

I personally have mobile data disabled almost all the time, I enable it only if I really need to check something online and cannot find a WiFi anywhere near, so I would not want the modem to silently consume (metered) mobile data bandwidth to poll for notifications from some push service I do not use to begin with. (Plus, the push notification service is a central server that can spy on all the incoming messages you get.) So do not assume that all users actually want push notifications to begin with.

I am fine with receiving my e-mails the next time I actively check for them (which usually means I connect to some WiFi first, or enable mobile data if it is the only option), which is still sooner than before I got the PinePhone, when I was using a dumb phone that does not do e-mails at all, and hence would only have gotten them after getting back to my computer at home. (And I am not going to check on IRC or the like on the road at all. Don't even want to.) As long as phone calls and SMS messages get notified (and they do), that is enough for me. Different users, different use cases.
  Reply
#9
(05-30-2023, 08:09 AM)Kevin Kofler Wrote: Android is heavily optimized for minimum power consumption. E.g., apps can be suspended by the OS at any time, which means Android asks them to save their state and then terminates them, and then they have to resume from the saved state later. (Android also saves a screenshot of the UI in memory so the user does not notice that the app is not actually running anymore.) The PinePhone OS (none of the available ones, except of course GloDroid) does none of all this, and is not likely to start doing so any time soon. So do not expect the power consumption to ever be as low as on Android, it is just not going to happen.

GNU/Linux does not suspend tasks that don't have anything to do? I thought all modern multitasking operating systems did that.

Granted, android is almost single-tasking; and the whole system is geared toward battery life, which Gnu/Linux certainly isn't.
:wq



[ SRA accepts you ]

Everyone wants me to quit using NetBSD
  Reply
#10
There is a difference between suspending tasks when they are idle (which is what a standard multitasking operating system does), and hibernating tasks (forcing them to save their state and terminating them) whenever they are not the current fullscreen application (what Android does). On Plasma Mobile or Phosh, applications are also normally always maximized, but the invisible applications are not hibernated, they are still running in the background and decide on their own whether they are idle or not. (If they are idle, they will call some syscall to wait for a relevant event, causing the kernel to suspend them until the event happens, but when that wake up happens or whether they go into the idle state at all is up to them. The background applications can also continue doing computations, letting the preemptive scheduler in the kernel schedule their thread(s) along with the current application's thread(s).)
  Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Battery Life- hardware abstraction layer-GPU VS optomizing app for GPU-openGL biketool 1 243 09-20-2024, 04:04 AM
Last Post: Kevin Kofler
  power circuit can't charge battery and can't supply enough power for modem or wifi vortex 2 1,153 02-17-2024, 04:15 PM
Last Post: vortex
Thumbs Down Battery Issue or Power Management IC? bcoyle 2 2,091 03-20-2023, 12:54 AM
Last Post: bcoyle
  Power supply vs battery albafrati 11 6,014 06-22-2022, 06:04 PM
Last Post: albafrati
  What PD charger/dock combo results in PP battery not draining while using convergence james8880 0 1,871 04-28-2022, 12:45 PM
Last Post: james8880
  Battery mot charging past 54% StickyPine 32 31,257 02-26-2022, 02:07 AM
Last Post: vusra
  Battery replacement alternative sax1960 7 7,370 08-29-2021, 07:03 AM
Last Post: bcnaz
  Battery Capacity and Software Interaction food 2 2,855 08-15-2021, 07:19 AM
Last Post: bcnaz
  Battery phone case expected? Cpm 1 2,436 08-10-2021, 03:29 PM
Last Post: 33YN2
  Pine Phone Battery Issue vslash 21 21,829 08-09-2021, 07:35 AM
Last Post: mouffa

Forum Jump:


Users browsing this thread: 1 Guest(s)