Warning:
- By default large cards (32, 64 and 128 GB) are sold formatted in exFAT format (That’s the only distinction between SDHC and SDXC cards. The wire protocol itself is is the same, only the data format written on the actual flash is different).
- Some cards are even sold non-formatted (that might be the case with some 32GB SDHC cards. It’s certainly the case with those produced by Transcend. Maybe Sandisk too ?)
- exFAT is a proprietary and patented format by Microsoft. Because of this, not all constructor do pay for it and thus don’t support it (e.g.: Jolla, even Nintendo, etc.) I strongly suspect that Fairphone doesn’t have a license for it neither
- Again, it’s not that the device are not actually compatible with SDXC card (there’s no difference). It’s that they technically can’t advertise it as they won’t be compatible with the partition format
- Windows it self will refuse to format big supports as FAT32, it will only format them as exFAT or NTFS. (There are no technical reasons. It’s possible to format 32GB and bigger using FAT, it’s just that Windows refuses to do it for you)
- So you need to format them with another tool (e.g.:
gparted
is available on the SystemRescueCD boot disk). - Just keep the same partition alignment. i.e.: if the stick 's data partition begins at sector 8192 or 32768, keep the same beginning.
- Also keep in mind that the partition it self must be the correct format in the partition table (e.g.: the Nintendo 3DS won’t see a partition even if format in FAT32 if the wrong type is indicated in the partition table, though GNU/Linux OSes tend to autodetect it correctly. No idea what is Android’s behavior):
- Partition in NTFS or exFAT are of type
7
in the partition table. - Partition in FAT32 are of type
c
in the partition table
Useful link:
This page contains full details how to format a USB flash with perfect alignment using Linux.