4 ms·
The battery life when idle is shown here to be 5 or 6 hours. Any other consumer-grade phone gets something like 24-36 hours by sleeping a lot (or something).
by mac01021 6y ago
The battery life when idle is shown here to be 5 or 6 hours.
Any other consumer-grade phone gets something like 24-36 hours by sleeping a lot (or something).
Should I expect the Librem 5 developers to be able to achieve the same thing before they ship Evergreen?
- deleted 6y ago[deleted]
- LawnGnome 6y agoThat's screen on, though, if you look at the title of the chart. That's probably no worse than my Pixel 3 (which is by no means an endurance athlete, but is probably fairly representative of the Android mass market). The lack of screen off times in the article is definitely worrying, though. That's just as important a metric. Edited to add: actually, the first graph is screen off, I think. Looks like it's a tick under 10 hours. Which is poor, so I hope there's more scope for software improvement, but I also think is a fairly significant improvement over where they were 6-12 months ago.
- boogies 6y agoThe pinephone recently got a 40% increase in idle battery life to ~100 hours with the modem off and ~24 with it on https://www.pine64.org/2020/07/15/july-updatepmos-ce-pre-orders-and-new-pinephone-version/ https://www.pine64.org/2020/07/15/july-updatepmos-ce-pre-ord... (control-f search for "crust"). I would hazard a guess that this might be portable to the Librem 5 (but maybe they already implemented it, IDK). Edit: but my two sibling comments now seem to have more useful information than this one.
- biktor_gj 6y agoCrust runs in a RISC cpu inside the Allwinner chip, and it only works in that. I don't know if the NXP chip has a 'dedicated' core to manage the actual ARM cores, but all the work done in Crust won't be portable to the Librem, if it can be done, it'll have to be done from scratch
- seba_dos1 6y agoCrust is, simplifying a bit, just something that enables suspend to RAM on Allwinner platforms. From what I know you don't need anything like that on i.MX8MQ, since the SoC and PMIC will already take care of what's needed there by themselves. Keep in mind that that "idle time" is actually "suspended time" - to handle things like incoming notifications over the Internet you still have to periodically wake up. Without suspend, PinePhone currently has a pretty similar idle power usage to Librem 5's. Once Librem 5 starts utilizing suspend to RAM, it should see a very similar improvement like the one you're linking to.
- cesarb 6y agoThe key is probably this sentence: "In the future, we are also planning to support suspend to RAM." That is, the CPU is never being fully powered off, only clocked down. AFAIK, Android uses suspend-to-RAM heavily (this is what a "wakelock" is all about: it prevents Android from suspending when held), and that has a large impact on battery life.
- wott 6y ago> The key is probably this sentence: "In the future, we are also planning to support suspend to RAM." A distant future. A Purism employee (who will probably show up here since he takes part in each HN thread related to Purism) said nobody is working on it. So don't hold your breath in the near future.
- snvzz 6y agoMadness. It should be priority #1 now that the phone calls are working.
- eptcyka 6y agoIt needs a full-stack integration to work properly, it's an immense amount of work. The Linux kernel is great at lots of things, but being good at scaling back power usage is not one of them. You'd want to be able to have timers that will wake the machine up form suspension that application developers can use and throttling of radios. The device has to be suspended, but you should still be able to receive calls. MacOS does this impressively well (try pinging your Macbook as it's slowly nodding off, and see the response time increase). Better still, you can ping a macbook over WiFi that's completely suspended - SSH and other services won't work, but the kernel will still be there and do some I/O - this requires some kind of a power-level aware system in the kernel that can coordinate with device drivers and have userspace interfaces for registering applications that might want to receive data when the machine should be suspended. The designwork required to achieve this with Linux and it's ecosystem is far more than the capable but small team at Librem can reasonably achieve, not because the team is small, but because this would require a lot of coordination between different upstreams.
- akiselev 6y ago> Should I expect the Librem 5 developers to be able to achieve the same thing before they ship Evergreen? It's unlikely it'll get as good as Samsung or Apple by that time but it should definitely improve. Unless they made some critical mistake in the hardware, they can make continuous improvements in the software. It's no surprise that this is one of the last things they're focusing on. Idle power management on modern operating systems is hard and is very kernel and hardware specific because kernel interrupt and process scheduling comes into play. Hence why Apple is so good at battery life - they have such unilateral control over the hardware and software stack that they can make optimizations that Linux/Windows/Android really struggle with.