Edit: Thanks for all the suggestions. I’m going to try sticking with syncthing and try the fork of the UI and see if that keeps everything working.
–
I want to sync files between my linux PC and Android phones (mostly for Obsidian notes).
Can anyone recommend a good real-time sync?
I’ve been trying syncthing, but despite turning off battery optimization for the app, it rarely sees the phone as connected. I don’t want to have to remember to check syncthing every time I edit a note.
I use resilio for syncing between PCs but it looks like it has a high battery usage on the phone, as if it is frequently polling for changes.
I use FolderSync for occasional scheduled syncs (e.g. updating my MP3s from the server to my phone), but a scheduled sync either is frequent enough to affect battery or it risks sync conflicts.
Cloud services such as OneDrive, Dropbox and Google Drive don’t show up as big battery drains, so I assume that they use change notifications from the OS instead.
Are there any real-time 2-way sync apps for phone that don’t have big battery drain and are not for cloud providers?
It’s the main way I sync my phone.
I have a different app for photos, but SyncThing on my phone, and on my desktop, and again on one of my home servers, do most of the download and data syncing.
Occasionally I’ll have to manually run SyncThing; I’m not certain that Android is reliably starting it after reboots, but for the most part it just does it’s thing really reliably. There is a lag; it can take a few minutes for changes to sync - it’s not immediate. For me, this isn’t a problem, and I’d rather that than a battery suck, so I haven’t messed with it.
I could live with a few minutes, but it’s showig as offline for days. Maybe it is failing after a reboot. At least that would be a known situation to watch for.
In my experience syncthing is always a bit like that using the default discovery settings.
I use a hub & spoke set up now. Instead of A, B, and C all connecting to each other directly, they only connect to D. I also input the address for D specifically instead of using discovery servers.
With this set up I’ve never had any drama.
Honestly, I think Android is fucked for debugging stuff like this. I installed a program on mine and my wife’s phones - different makes & models - and configured them exactly the same, including the app settings in the OS. Mine works perfectly and barely shows up in battery use, near the bottom. Her’s drains her battery even when she’s not using it, regularly running at 50% of total battery consumption.
With Android YMMV is the rule, rather than the exception. There’s just too many variables.