On my Huawei smartphone (P smart 2019), I installed Syncthing. Previously, I could synchronize files stored on my SD card (Obsidian files, my photo gallery) for both reading and writing. About a month or two ago, there must have been an update because it no longer works. Syncthing no longer has permission to write to the SD card.
When I go into the settings of my shares, I have this:
Share type: Send only
If I click on it, I get the following error message: “Your Android version only grants Syncthing read-only access to the selected folder.”
However, the Syncthing application already has the necessary permissions (or so I believe):
Settings → Apps → Apps → Syncthing → Permissions → Storage → Allow
For my Obsidian notes, I had to move them to internal storage. For my photos, it’s a bit more problematic because they take up more space, and I would prefer to keep them on the SD card.
I don’t know what else to do to give it write permissions on the SD card. Can you help me please?
I’m afraid you’re not going to get this to work, simply because Syncthing only supports SD card access on Android 11 and newer, while your phone seems to run only Android 9.
If you somewhat did manage to make this work previously, you can always try to uninstall the current Syncthing app and replace it with an older version. Please use the app settings to make a backup of your configuration first. Just for the record, the current way of accessing the SD card was added in v1.18.6 (see https://github.com/syncthing/syncthing-android/pull/1724), so you probably need to try out something older than that version.
So the Android version on my smartphone doesn’t show up clearly. If I go to “about the phone” I have marked “EMUI”
EMUI version: 12.0.0
So I thought EMUI 12 was based on Android 12 but apparently it would be based on Android 11 according to this site: EMUI + Android 11 = EMUI 12 ? - HUAWEI Community
So if this is the case, my problem with Syncthing should be solved? If so, how?
Well, I’ve just installed an application that gives me information about my smartphone…
It tells me I’m on Android 10
So I have no way of solving my problem, if I’ve understood correctly …
Although generally speaking Android 11 and newer are better supported for using Syncthing with a SD card, it doesn’t rule out older versions of Android.
I have a Motorola phone running Google’s “Android One” edition (Android 9 vintage) and have no issues with Syncthing writing to the SD card.
Are the folders you want Syncthing to write to ones that you created or ones that Android created? (e.g. Android, DCIM, Documents)
Folder I would like to sync is a DCIM folder on my SDCard (but not the one on my internal flash memory)
I’d also like to synchronize the “Obsidian” directory on my SD card. This directory was created by me. I used to be able to synchronize it (like DCIM) but now it doesn’t work, I’ve had to move it to my internal storage.
SD card access is a bit tricky because the FAT32 filesystem doesn’t actually support the concept of ownership and permissions (other than really simple read/write). Combined with custom modifications to Android that different manufacturers make ends up complicating things further.
Since you used to be able to sync your DCIM and Obsidian on your SD card, it’s likely that the permissions that Android has on record are now somehow out of sync with the SD card contents. System updates, a different SD card, etc. are all possible causes.
(Android will ask which file manager you want to use when more than one is available.)
If all goes well when setting up your Obsidian folder in Syncthing, you’ll be prompted to grant access to your SD card.
On some Android phones I’ve found that choosing a folder at the root/base of the SD card isn’t allowed but a subfolder is, so that’s also another thing to try.