I installed #Signal and #Conversations_im on a clean install of #GrapheneOS on my Pixel 4a and measured the battery impact. The results are shocking!
Both messengers had only one contact: my regular phone.
I used my regular phone to send messages to the Pixel 4a (which was not used for anything else over the course of the experiment).
I always sent the same message via Signal and #XMPP (mixing up which app went first). In total I sent ~32 messages in intervals of 10mins to a few hours.
=> More informations about this toot | More toots from daniel@gultsch.social
@daniel
Truly shocking.
What push mechanisms are you using for Signal and for Conversations?
=> More informations about this toot | More toots from masoud@persadon.com
@masoud Both have direct connections to their respective servers because #GrapheneOS comes without Play Services. Both apps prompted me for exemptions to "Battery optimizations" which I granted.
On the sending side I made sure (by looking at the double ticks ✅ ) that the messages were delivered instantly.
=> More informations about this toot | More toots from daniel@gultsch.social
@daniel
I wonder if this is related to the bandwidth/power optimizations that XMPP clients/servers support (e.g. CSI) or just general app bloat.
@masoud
=> More informations about this toot | More toots from mattj@floss.social
@mattj @daniel @masoud
XMPP by its very nature is a protocol that effectively uses "notifications", as it pushes XML stanzas over a channel.
(so as the mobile is almost certainly using some form of NAT, as long as some form of pinging below the timeout of the NAT happens, everything is fine).
So for XMPP not having Google notifications should make little difference, I don't see how an XMPP client/server would even use them.
Now Signal, OTOH, I have no idea what it does. 🤷
=> More informations about this toot | More toots from yacc143@mastodon.social
@daniel @masoud A big part of the reason centralized push-notifications (aka "Google Play Services") exist is for battery optimization.
You could of course just let Signal use Play Services on graphene if you like.
My experience is different (although I only have Signal, not matrix). My refurbished 7a with GrapheneOS and no Play Services at all in the owner profile lasts easily two days. (That said, it'll mostly be on WiFi while I'm at home -- so possibly the difference is that?)
=> More informations about this toot | More toots from meejah@mastodon.social
@daniel This is in line with my experience with signal. I have revoked all battery optimization permissions and essentially allow my phone to insta-kill it once it goes to the background. I don’t receive messages unless I open it, but my battery last eons longer.
=> More informations about this toot | More toots from mathieui@piaille.fr
@daniel I did some tests in the past as well and I remember #Conversations was one of the best apps on optimal battery usage, great work Daniel! 👌
=> More informations about this toot | More toots from adbenitez@mastodon.social
@daniel
Do you plan to make experiments with element, too?
I would expect Conversations to perform a lot better since matrix is known to be more heavy on ressources but i mention it because it feels like an obvious direct competitor
=> More informations about this toot | More toots from ikonoklast@chaos.social
@daniel That seems quite significant. I have looked into hosting my own XMPP server in the past. I like the idea of a small non-bigtech chat platform for my inner circle. Unfortunately, the biggest challenge is to get people to switch their conversation with you over to a different app.
=> More informations about this toot | More toots from iamreinder@mastodon.social
@daniel
So I suspect Signal has a wakelock problem as they haven't tested extensively on devices without Play services? The battery drain is running at almost constant speed.
Conversations is great. There's not much to modify/customise before getting it to run on my devices.
=> More informations about this toot | More toots from itokoi@mastodon.sdf.org
@daniel you have to disable "mine bitcoin" in the settings. /s
=> More informations about this toot | More toots from yetzt@vis.social
@daniel Signal is probably not testing/optimizing for phones without Play Services.
=> More informations about this toot | More toots from sandro@c3d2.social
@daniel btw molly a signal soft fork have unified push support. So we can use correct software (Conversions) as a notify provider 👍
=> More informations about this toot | More toots from Ichthyx@piaille.fr
@daniel While you're testing with GrapheneOS, maybe you could check if it keeps the connection open for longer when the phone is locked. Since a couple of months or so, I see 0 connections in the widget when unlocking my phone after a while, but then it reconnects quickly. However, the battery savings settings are the same as before and I don't know why it would disconnect otherwise.
=> More informations about this toot | More toots from raucao@kosmos.social
@daniel It's a well known problem: https://github.com/signalapp/Signal-Android/issues/9729
=> More informations about this toot | More toots from preya@mastodon.social
@daniel Known issue since years...
https://github.com/signalapp/Signal-Android/issues/9729
=> More informations about this toot | More toots from norbert@gruene.social
@daniel I recommend Monocles over Conversations since it feels like a more fleshed out app than Conversations while still being based on the same code
=> More informations about this toot | More toots from temmie19@tech.lgbt
@daniel Mhh, Signal always keeps a connection to their server open for push messages. Maybe try Molly (Signal fork) with UnifiedPush and use Conversations as UnifiedPush provider.
=> More informations about this toot | More toots from mark22k@layer8.space
@daniel
I use the @mollyim fork and it looks like that it does not use that much battery
=> More informations about this toot | More toots from n00b0ss@chaos.social
Try molly!
=> More informations about this toot | More toots from matthewcroughan@defenestrate.it
@daniel I wonder if it would be any better if you used the play store version and microG. That's what I'm using on CalyxOS and while my notifications from Signal are less reliable than Conversations, battery usage isn't too bad, though it is worse. Here's my top contenders right now. I'm using the F-Droid version of Conversations.
=> More informations about this toot | More toots from gerowen@mastodon.social
@daniel Signal needs to keep active and send regular pings to keep the WebSocket connection open. This is not a technical requirement of WebSockets, but stems from Signal using the latest advanced cloud technology on their servers which cuts the connection if it doesn't see active payload traffic.
=> More informations about this toot | More toots from pixelschubsi@troet.cafe
@daniel interessant. Ich kämpfe auf meinem #grapheneos auch seit einer Weile mit dem Akkuverbrauch von #signal. Schade, dass in #younohost seit dem Update auf #debian 12 nicht mehr automatisch ein #XMPP Server integriert ist. Das war schon ein sehr bequemer Weg für Laien wie mich, unfallfrei, unkompliziert und günstig einen solchen zu klicken und pflegen.
=> More informations about this toot | More toots from kai@brieseland.de
I'm using Signal on GrapheneOS on a Pixel 8, also using phone calls, no such issue
=> More informations about this toot | More toots from fatalerrors@friend.geoffray-levasseur.org
@daniel I wonder if using @mollyim instead of the main Signal app would change that graph at all.
=> More informations about this toot | More toots from lattera@bsd.network
@daniel
I don't know why Signal eats so much battery but they probably don't run a lot of tests without GCM since that is their main platform. On a degoogled phone, you can use Molly with unified push. Molly is a fork of the official Signal client with very little changes. It works very nicely and UP is a great framework. You can even serve the Signal notifications through Conversations since it works as UP provider
=> More informations about this toot | More toots from jaj@mastodon.social
@daniel Without Google services Signal has to do polling (or some similar approach) to get updates from server. You can try to use MicroG if you don't want any Google services on your phone.
=> More informations about this toot | More toots from older@social.net.ua
@daniel I have had exactly the reversed scenario at times: Conversations draining like crazy while Signal was just fine. Sometimes the other way around. Never found an explanation. ¯_(ツ)_/¯
=> More informations about this toot | More toots from cryptgoat@fedifreu.de
@daniel At least I can say that it looks exceptional. I am using Signal intensively, but without such power consumption.
=> More informations about this toot | More toots from realSiegfried@troet.cafe
@daniel Similar observations here, though with Google Play Services notifications...
Switched to Molly in the UnifiedPush variant with ntfy as provider and it got way better!
No problem anymore at that front.
=> More informations about this toot | More toots from schm43cky@metalhead.club This content has been proxied by September (ba2dc).Proxy Information
text/gemini