Format a disk as FAT32 on your Mac, no Windows required
If you have a need to format your SD card to FAT32, in my case following trying to flash OpenIP to WYZE camera, you can do it right from your mac.
We will use Disk Utility command line interface to achieve this. To get started, open a terminal window.
Find out the disk number for your SD card.
diskutil list
This should give you something like the following.
/dev/disk0 (internal, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *500.3 GB disk0
1: EFI EFI 209.7 MB disk0s1
2: Apple_APFS Container disk1 452.4 GB disk0s2
3: Apple_KernelCoreDump 655.4 MB disk0s3
4: Microsoft Basic Data OSXRESERVED 8.0 GB disk0s4
5: Windows Recovery 471.9 MB disk0s5
6: EFI NO NAME 104.9 MB disk0s6
7: Microsoft Reserved 16.8 MB disk0s7
8: Apple_HFS Free 38.3 GB disk0s8
/dev/disk1 (synthesized):
#: TYPE NAME SIZE IDENTIFIER
0: APFS Container Scheme - +452.4 GB disk1
Physical Store disk0s2
1: APFS Volume Macintosh HD 377.9 GB disk1s1
2: APFS Volume Preboot 54.3 MB disk1s2
3: APFS Volume Recovery 517.1 MB disk1s3
4: APFS Volume VM 2.1 GB disk1s4
/dev/disk3 (external, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *31.3 GB disk3
1: Microsoft Reserved 33.6 MB disk3s1
2: Linux Filesystem 25.2 MB disk3s2
3: Linux Filesystem 268.4 MB disk3s3
4: Linux Filesystem 25.2 MB disk3s4
5: Linux Filesystem 268.4 MB disk3s5
6: Linux Filesystem 8.4 MB disk3s6
7: Linux Filesystem 100.7 MB disk3s7
8: Linux Filesystem 30.5 GB disk3s8
You need to look for the SD card size and name if it's already formatted. In this case, disk3
is what we are looking for.
Simply running the following will format it to FAT32.
sudo diskutil eraseDisk FAT32 'VOL_NAME' disk3
⚠️ The volume name must be all caps otherwise you will see error: does not appear to be a valid volume name for its file system
.
You should now have an SD card with FAT32 formatting.