Formatting a SD Card For Steam Deck

Categories:

in
MicroSD Card

It appears that there is a prevalent issue with the Steam Deck corrupting SD cards that can leave them in a unrecoverable condition, this seems to occur mainly on a second formatting rather than the first, so far we’ve not heard anything from Valve about this, but I suspect it’s more likely to be down to the hardware interface rather than a software bug.

Fortunately until we know more you can format your SD card outside of the Deck easily, to do this you will need a Linux live system, assuming you’re not already using Linux, Ubuntu is a good simple choice for this.

Once you have the system running you need to insert your SD card, to identify which device it is use the following command in the terminal:

sudo lsblk

This will show a list of connected storage devices, you can identify the SD card by the size and normally it will be last in the list, in my case /dev/sdg, partitions if there are any will show as /dev/sdg1, /dev/sdg2 and so on.

Once you are sure you have identified the SD card correctly, run the following two commands:

sudo parted --script <device> mklabel gpt mkpart primary 0% 100%
sudo mkfs.ext4 -m 0 -O casefold -F <partition>

The first command creates a new blank GPT partition table, and then a new partition using all the space on the device, <device> should be replaces with your device path, I.E /dev/sdg.

The second command formats the new partition as an EXT4 file system which is what the Deck recommends, <partition> should be replaced with the first partition on your SD card, I.E /dev/sdg1

You can now remove it a insert it into your Steam Deck.

Hot Swapping

Even though Valve have said you can hot-swap SD cards I don’t recommend it, there is no protection against write corruption so you should only remove it when there is no activity or better unmount it in Dolphin first.

Should you get it to the point where you have problems, run sudo e2fsck -pf <partition> to repair it.

Update 30 May

The formatting command used by Valve has changed slightly adding -E nodiscard to mkfs.ext4, this stops it running discard / trim on the SD card, this should speed up formatting, it is still mounted with discard so I don’t think this would effect performance, it may also reduce incidence of bricking.