Hardware New 2DS XL MicroSD Card Error

Rioluwott

Well-Known Member
OP
Member
Joined
Feb 23, 2014
Messages
838
Trophies
0
Age
25
XP
1,765
Country
Mexico
So i recently got a new 2ds xl with a 64gb micro sd card, after formatting it with guiformat to fat32 i tried installing CFW with my ntrboot flashcard
when i tried installing it i got an error saying firm backup fail on SafeBoot9StrapInstaller and i got information about it not working on my 64gb sd card and i installed it with the bundled one, after i installed all the hombrew(FBI,Anemone,etc.) i tried installing a game (Pokemon Y) but after a while i get an error about losing connection with the SD card, anyone had a similar error?
I tried reformatting the SD card with another program and different allocation sizes but i always get that error, also both the SD card and the 2DS are brand new.
Would it be better to buy a 32gb SD card? i may try to check if there is any issue with the SD card later
 

Rioluwott

Well-Known Member
OP
Member
Joined
Feb 23, 2014
Messages
838
Trophies
0
Age
25
XP
1,765
Country
Mexico
Copy everything off your SD card, reformat it in FAT32 + 32 KB cluster size with either Windows File Explorer or guiformat, and full Write + Verify the empty card in H2testw to check if it's fake or faulty.
Im going to try that since i did just a quick format
I will update when i finish testing that way
UPDATE: Tried doing a full format and tried to check it on that program but i went to do something and the computer´s screen went black since i wasn´t using it when i came back i pressed space and the program stopped...
it was around 90% but i didn´t get an error i may need to try again but it took me around 2 hours oh well..
going to try to use a 8gb sd just to install something to see if it is the SD card or the another thing
Also when i tried using the 64gb SD card the 3ds doesn´t recognize it even though it is FAT32
 
Last edited by Rioluwott,
Joined
Jan 1, 2018
Messages
7,292
Trophies
2
XP
5,842
Country
United States
Im going to try that since i did just a quick format
I will update when i finish testing that way
UPDATE: Tried doing a full format and tried to check it on that program but i went to do something and the computer´s screen went black since i wasn´t using it when i came back i pressed space and the program stopped...
it was around 90% but i didn´t get an error i may need to try again but it took me around 2 hours oh well..
going to try to use a 8gb sd just to install something to see if it is the SD card or the another thing
Also when i tried using the 64gb SD card the 3ds doesn´t recognize it even though it is FAT32
Try the quadruple reformat technique on your 64 GB card in this order:
  1. SD Memory Card Formatter
  2. Windows File Explorer (if bigger than 32 GB, use NTFS)
  3. guiformat - FAT32 + 32 KB (32768)
    • If it doesn't allow reformatting, reformat in Windows File Explorer again before trying again with guiformat.
  4. MiniTool Partition Wizard (free edition)
    • :!: Do not install the Lavasoft Adaware Web Companion (bloatware). See this.
      • Format: FAT32
      • Cluster Size: 32 KB
      • Partition: Primary
      • Disk: MBR
    • MiniTool Partition Wizard Software Tutorial Guide
      1. Delete Partition (for both partitions)
      2. Initialize to MBR Disk -or- Convert GPT to MBR Disk (if it's in GPT Disk)
      3. Rebuild MBR
      4. Create a New Partition [ Create as: Primary | File System: FAT32 | Cluster Size: 32 KB ]
A badly reformatted or even fake card can cause your computer to freeze or stall trying to read & write to it. You will still need to get one clean scan run with H2testw to know whether or not your card has hardware problems. If the test can't be completed, try the test on a different computer.

Quadruple Reformat.png
 
Last edited by TurdPooCharger,

PityOnU

Well-Known Member
Member
Joined
Jul 5, 2012
Messages
1,166
Trophies
0
XP
1,478
Country
United States
Try the quadruple reformat technique on your 64 GB card in this order:
  1. SD Memory Card Formatter
  2. Windows File Explorer (if bigger than 32 GB, use NTFS)
  3. guiformat - FAT32 + 32 KB (32768)
    • If it doesn't allow reformatting, reformat in Windows File Explorer again before trying again with guiformat.
  4. MiniTool Partition Wizard (free edition)
    • :!: Do not install the Lavasoft Adaware Web Companion (bloatware). See this.
      • Format: FAT32
      • Cluster Size: 32 KB
      • Partition: Primary
      • Disk: MBR
    • MiniTool Partition Wizard Software Tutorial Guide
      1. Delete Partition (for both partitions)
      2. Initialize to MBR Disk -or- Convert GPT to MBR Disk (if it's in GPT Disk)
      3. Rebuild MBR
      4. Create a New Partition [ Create as: Primary | File System: FAT32 | Cluster Size: 32 KB ]
A badly reformatted or even fake card can cause your computer to freeze or stall trying to read & write to it. You will still need to get one clean scan run with H2testw to know whether or not your card has hardware problems. If the test can't be completed, try the test on a different computer.

View attachment 174262

I'm curious as to the reason for the quadruple formatting here - what does it provide over a simple "clean" command with diskpart followed by using the guiformat tool?
 
  • Like
Reactions: BlazeMasterBM
Joined
Jan 1, 2018
Messages
7,292
Trophies
2
XP
5,842
Country
United States
I'm curious as to the reason for the quadruple formatting here - what does it provide over a simple "clean" command with diskpart followed by using the guiformat tool?
Have you ever watched the movie series, John Wick?
He's a hitman who does his job right by double tapping.
^^^ You might think using all four programs is excessive or pointless, but it's kinda like that.

***

Originally known as the triple reformat, the backstory behind this technique is due to this:

Whenever helping others to troubleshoot their software problems, sometimes a simple/single reformat doesn't work for them. Not knowing the state of their card and to remove the guesswork, I tell them to reformat in that specific order and settings for these reasons:
  1. SD Memory Card Formatter - This program will revive seemingly "dead" or softlocked SD cards. Windows File Explorer and general disk utility programs may fail to recognize the card when inserted in the reader. If this program created by the SD Association doesn't work, nothing else will (ie, the card has hardbricked).
2. Windows File Explorer - The second reformatting pass. This does not have fine tune control reformatting cards bigger than 32 GB in FAT32.

3. guiformat (FAT32 Format) - The third reformatting pass. While it does support FAT32 for bigger cards, it does not have fine tune control reformatting cards in MBR disk & Primary partition.

4. MiniTool Partition Wizard (free) - The fourth and final reformatting pass. Not only does this has fine tune control for all [ file system | cluster size | disk | partition ], it also has the ability to delete all partitions back into one.

You might be asking, "Why not just use only Memory Card Formatter and MiniTool Partition Wizard, or skip straight to only using MiniTool?"

  • (A) Due to firsthand horrors of trying to correct my 128 GB cards after using MiniTool's stupid cluster size changer, that combination was found to be the most consistent in fixing them. Good fuckin' luck describing how your card acts funny where read & write stops in the middle of transfers, your computer crashes whenever your card is inserted, and shit loads way too slow on your 3DS.
The horrible fact is that when this happens, you might wrongly assume or be advised the SD card is bad hardware-wise because the card exhibit behaviors like that of a fake or dying card. You would know this isn't the case because the (single) reformatted and emptied out card tests perfectly fine in H2testw.​
  • (B) There are those who would like to reformat their (128 GB and bigger) cards with the 64 KB option. To help them avoid the headaches in point (A), quattro reformatti that shittake.
  • (C) The same applies for those with 64 and smaller cards when they must revert back to the 32 KB option.
Edit - I have not heard about diskpart before and most average Windows users haven't either. If the diskpart + guiformat combo is effective at fixing badly formatted cards like the quadruple format, then by all means use that method if you're more comfortable with cmd (command lines).

Oh neat, diskpart is also found in ReactOS, an open source operating system that is binary compatible with Windows. Never heard of that, too.
 
Last edited by TurdPooCharger,

PityOnU

Well-Known Member
Member
Joined
Jul 5, 2012
Messages
1,166
Trophies
0
XP
1,478
Country
United States
Have you ever watched the movie series, John Wick?
He's a hitman who does his job right by double tapping.
^^^ You might think using all four programs is excessive or pointless, but it's kinda like that.

***

Originally known as the triple reformat, the backstory behind this technique is due to this:

Whenever helping others to troubleshoot their software problems, sometimes a simple/single reformat doesn't work for them. Not knowing the state of their card and to remove the guesswork, I tell them to reformat in that specific order and settings for these reasons:
  1. SD Memory Card Formatter - This program will revive seemingly "dead" or softlocked SD cards. Windows File Explorer and general disk utility programs may fail to recognize the card when inserted in the reader. If this program created by the SD Association doesn't work, nothing else will (ie, the card has hardbricked).
2. Windows File Explorer - The second reformatting pass. This does not have fine tune control reformatting cards bigger than 32 GB in FAT32.

3. guiformat (FAT32 Format) - The third reformatting pass. While it does support FAT32 for bigger cards, it does not have fine tune control reformatting cards in MBR disk & Primary partition.

4. MiniTool Partition Wizard (free) - The fourth and final reformatting pass. Not only does this has fine tune control for all [ file system | cluster size | disk | partition ], it also has the ability to delete all partitions back into one.

You might be asking, "Why not just use only Memory Card Formatter and MiniTool Partition Wizard, or skip straight to only using MiniTool?"

  • (A) Due to firsthand horrors of trying to correct my 128 GB cards after using MiniTool's stupid cluster size changer, that combination was found to be the most consistent in fixing them. Good fuckin' luck describing how your card acts funny where read & write stops in the middle of transfers, your computer crashes whenever your card is inserted, and shit loads way too slow on your 3DS.
The horrible fact is that when this happens, you might wrongly assume or be advised the SD card is bad hardware-wise because the card exhibit behaviors like that of a fake or dying card. You would know this isn't the case because the (single) reformatted and emptied out card tests perfectly fine in H2testw.​
  • (B) There are those who would like to reformat their (128 GB and bigger) cards with the 64 KB option. To help them avoid the headaches in point (A), quattro reformatti that shittake.
  • (C) The same applies for those with 64 and smaller cards when they must revert back to the 32 KB option.
Edit - I have not heard about diskpart before and most average Windows users haven't either. If the diskpart + guiformat combo is effective at fixing badly formatted cards like the quadruple format, then by all means use that method if you're more comfortable with cmd (command lines).

Oh neat, diskpart is also found in ReactOS, an open source operating system that is binary compatible with Windows. Never heard of that, too.

Ah, I see. Thanks for the explanation.

It looks like you already did your research, but yeah, diskpart is pretty ancient and has been an included part of Windows for a long time now. The "clean" command overwrites the the MBR and/or GPT section of a drive with all zeroes, essentially nuking any and all formatting information. Probably not very user friendly, though.
 
  • Like
Reactions: KokoseiJ

pikles

New Member
Newbie
Joined
Dec 10, 2020
Messages
1
Trophies
0
Age
31
XP
41
Country
United States
Hi there, slight necro but this seems like the most appropriate place to share my experiences as it's the quadruple reformat thread.

I too was wondering why there was a need for quadruple reformatting (it seemed kind of redundant compared to the usual single pass of partitioning and building the file system); I might have hints to help demystify the process.

For some background, I came here after running into the offset screen bug with GBA VC on my n3DSXL/128GB micro SD (Sandisk Ultra, in case that's important), and was able to fix that by rebuilding the file system with 64k clusters instead of the previous 32k using GNU Parted and mkfs.fat. However, after this I ran into the issue of saves taking an obscene amount of time (freezing the games for around 10 seconds) in snes9x and the SM64 homebrew. Quadruple reformatting as above with 64k clusters seems to have resolved everything. Additionally, Metroid Fusion GBA VC now loads in around 14 seconds vs the previous 20 or so.

Anyway, the relevant part is that I was wondering what the difference would be (if any) between my previous GNU Parted/mkfs.fat pass on my Linux machine vs the quadruple reformat above, so I cataloged the disk info from fdisk and minfo before and after.

Here's the diff:
Code:
 Disk /dev/mmcblk0: 119.08 GiB, 127865454592 bytes, 249737216 sectors
 Units: sectors of 1 * 512 = 512 bytes
 Sector size (logical/physical): 512 bytes / 512 bytes
 I/O size (minimum/optimal): 512 bytes / 512 bytes
 Disklabel type: dos
-Disk identifier: 0xf2e2cd8f
+Disk identifier: 0xba5fd1db

 Device         Boot Start       End   Sectors   Size Id Type
-/dev/mmcblk0p1       2048 249737215 249735168 119.1G  c W95 FAT32 (LBA)
+/dev/mmcblk0p1       2048 249737215 249735168 119.1G  b W95 FAT32

 device information:
 ===================
 filename="/dev/mmcblk0p1"
-sectors per track: 16
-heads: 4
-cylinders: 3902112
+sectors per track: 63
+heads: 255
+cylinders: 15546

 media byte: f8

-mformat command line: mformat -t 3902112 -h 4 -s 16 -i "/dev/mmcblk0p1" ::
+mformat command line: mformat -T 249735168 -h 255 -s 63 -H 0 -i "/dev/mmcblk0p1" ::

 bootsector information
 ======================
-banner:"mkfs.fat"
+banner:"MSWIN4.1"
 sector size: 512 bytes
 cluster size: 128 sectors
-reserved (boot) sectors: 128
+reserved (boot) sectors: 32
 fats: 2
 max available root directory slots: 0
 small size: 0 sectors
 media descriptor byte: 0xf8
 sectors per fat: 0
-sectors per track: 16
-heads: 4
+sectors per track: 63
+heads: 255
 hidden sectors: 2048
 big size: 249735168 sectors
 physical drive id: 0x80
 reserved=0x1
 dos4=0x29
-serial number: FA2E8A6C
+serial number: B47BB300
 disk label="NO NAME    "
 disk type="FAT32   "
-Big fatlen=15360
+Big fatlen=15243
 Extended flags=0x0000
 FS version=0x0000
 rootCluster=2
It seems like the main difference is Logical Block Addressing (LBA) vs Cylinder Head Sector. The sectors per track and head values are also now maxed out at 63 and 255 respectively. Perhaps one of the culprits of SD card issues is LBA FAT and the 3DS having a wonky disk controller that doesn't play nicely with it.

I suspect that I could have also solved my problems using my Linux machine if I were to reproduce this diff by manually specifying the sectors per track and head parameters using fdisk instead of using GNU Parted, along with specifying non-LBA FAT and 32 reserved sectors. IIRC these details were obscured in the Windows GUI programs.

I don't think I really care to experiment further now that I'm not having any problems with slow writes/reads, but hopefully this was interesting.

UPDATE:
A little while after originally posting this, SM64 began to exhibit the save slowdown again, albeit not as badly as before. This triggered me to go back on my previous statement and resume experimentation. I think I've now spent enough time playing through the SM64 homebrew and Super Metroid in snes9x to say that I've actually fixed the issues this time around.

There are some technical details you'll need to be familiar with to fully understand this write performance phenomenon (tbh, I would say my current understanding is only partial), but the main takeaway is that we want to align the file system to the size of these things called erase segments.

Apparently this wasn't the case after the quadruple reformatting procedure, although I recall reading some posts that claimed that the SD Association formatter does this. Unfortunately, I didn't think to test that and don't really want to look into it now because it's a little inconvenient to keep formatting and re-copying my 115GB of 3DS data.

Anyway, here's the main source I read that outlines everything. I'm currently not allowed to post links because this is my only post, so instead I'll provide some search terms. Hopefully this is okay.
  • 3gfp formatting sd cards for speed and lifetime
And here are some more things to read on the topic:
  1. stackexchange why does the sd card random write performance for record size 8-128 kb drops below the performance of record size 4 kb
  2. msfn does fat32 align its clusters
It would also be helpful to have a working understanding of how flash memory and FAT work, to tie things together.

Here's the summary of my procedure (this essentially follows the 3gfp source):
  1. First, check the segment size:
    Code:
    $ cat /sys/class/mmc_host/mmc0/mmc0\:aaaa/preferred_erase_size
    In my case, this was 4MiB (4194304B). It sounds like this should usually be the case with contemporary SD cards of this class, but in principle I suppose it could be different.

  2. Partition the card such that the partition table is at the beginning as usual, and the primary partition starts at the first 4MiB boundary. For me, this first boundary is at 8192 sectors with 512k sector sizes.

    I used fdisk for this. I also set the partition type as 0x0b for non-LBA FAT32 and specified "-H 255 -S 63" to set the number of heads and sectors per track to match the diff in my initial post.

  3. Build the file system. I used mformat from mtools instead of mkfs.fat because mkfs.fat would set the heads and sectors per track values back to 4 and 16, respectively. However, after this round of experimenting, I'm not entirely sure whether these values are actually important. I didn't specifically test for this because of the aforementioned inconvenience of re-copying all my data to test the system.

    Otherwise, I essentially followed the 3gfp post:

    First, format the card without specifying any reserved sectors and check the size of the FAT ("Big fatlen" in the output of minfo -i) and the number of FATs (in my case, 2), then calculate the size of the boot sector by multiplying these together. In my case, this was 15241 * 2 = 30482.
    Code:
    $ sudo mformat -T 249729024 -h 255 -s 63 -F -H 8192 -c 128 -i "/dev/mmcblk0p1" ::
    $ sudo minfo -i /dev/mmcblk0p1
    Then, rebuild the file system with an appropriate number of reserved sectors to pad the end of the boot sector to align with a 4MiB boundary. In this case the nearest boundary is 16MiB, at 32768 sectors. Therefore, I needed 32768 - 30482 = 2286 reserved sectors.

    This also ensures that the FAT clusters are boundary-aligned as 4MiB is a multiple of the cluster size.
    Code:
    $ sudo mformat -T 249729024 -h 255 -s 63 -F -H 8192 -c 128 -R 2286 -i "/dev/mmcblk0p1" ::

At this point, it should be good to go, but you can check that the alignment matches your calculation with dosfsck (truncated output):
Code:
$ sudo dosfsck -vn /dev/mmcblk0p1
...
Data area starts at byte 16777216 (sector 32768)
...

Here's the diff from this vs. quadruple reformat:
Code:
 Sector size (logical/physical): 512 bytes / 512 bytes
 I/O size (minimum/optimal): 512 bytes / 512 bytes
 Disklabel type: dos
-Disk identifier: 0xba5fd1db
+Disk identifier: 0xce89f1a1

 Device         Boot Start       End   Sectors   Size Id Type
-/dev/mmcblk0p1       2048 249737215 249735168 119.1G  b W95 FAT32
+/dev/mmcblk0p1       8192 249737215 249729024 119.1G  b W95 FAT32

 device information:
 ===================
 filename="/dev/mmcblk0p1"
 sectors per track: 63
 heads: 255
-cylinders: 15546
+cylinders: 15545

 media byte: f8

-mformat command line: mformat -T 249735168 -h 255 -s 63 -H 0 -i "/dev/mmcblk0p1" ::
+mformat command line: mformat -T 249729024 -h 255 -s 63 -H 0 -i "/dev/mmcblk0p1" ::

 bootsector information
 ======================
-banner:"MSWIN4.1"
+banner:"MTOO4025"
 sector size: 512 bytes
 cluster size: 128 sectors
-reserved (boot) sectors: 32
+reserved (boot) sectors: 2286
 fats: 2
 max available root directory slots: 0
 small size: 0 sectors
@@ -40,15 +40,15 @@
 sectors per fat: 0
 sectors per track: 63
 heads: 255
-hidden sectors: 2048
-big size: 249735168 sectors
-physical drive id: 0x80
-reserved=0x1
+hidden sectors: 8192
+big size: 249729024 sectors
+physical drive id: 0x0
+reserved=0x0
 dos4=0x29
-serial number: B47BB300
+serial number: 3E7F1AC4
 disk label="NO NAME    "
 disk type="FAT32   "
-Big fatlen=15243
+Big fatlen=15241
 Extended flags=0x0000
 FS version=0x0000
 rootCluster=2
@@ -57,3 +57,26 @@

 Infosector:
 signature=0x41615252
We can see the differences in partition alignment and reserved sectors.

For fun, I also dug out the stock Toshiba 4GB micro SD that came with the n3DSXL and checked its partition table/formatting:
Code:
Disk /dev/mmcblk0: 3.64 GiB, 3904897024 bytes, 7626752 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000000

Device         Boot Start     End Sectors  Size Id Type
/dev/mmcblk0p1       8192 7626751 7618560  3.6G  b W95 FAT32

device information:
===================
filename="/dev/mmcblk0p1"
sectors per track: 63
heads: 128
cylinders: 945

media byte: f8

mformat command line: mformat -T 7618560 -h 128 -s 63 -H 0 -i "/dev/mmcblk0p1" ::

bootsector information
======================
banner:"        "
sector size: 512 bytes
cluster size: 64 sectors
reserved (boot) sectors: 6332
fats: 2
max available root directory slots: 0
small size: 0 sectors
media descriptor byte: 0xf8
sectors per fat: 0
sectors per track: 63
heads: 128
hidden sectors: 8192
big size: 7618560 sectors
physical drive id: 0x80
reserved=0x1
dos4=0x29
serial number: E6D08679
disk label="NO NAME    "
disk type="FAT32   "
Big fatlen=930
Extended flags=0x0000
FS version=0x0000
rootCluster=2
infoSector location=1
backup boot sector=6

Infosector:
signature=0x41615252
We can see that it's also partitioned/file system aligned to 4MiB boundaries, and has a partition type of non-LBA FAT32. This at least gives me some more confidence that it might be more desirable to specify non-LBA FAT32. However, I'm not sure whether this actually matters and think that my main problem was the alignment.

Again, hopefully this helped or was interesting.
 
Last edited by pikles,

Yosept

Member
Newcomer
Joined
Oct 9, 2021
Messages
11
Trophies
0
Age
28
XP
26
Country
Indonesia
Try the quadruple reformat technique on your 64 GB card in this order:
  1. SD Memory Card Formatter
  2. Windows File Explorer (if bigger than 32 GB, use NTFS)
  3. guiformat - FAT32 + 32 KB (32768)
    • If it doesn't allow reformatting, reformat in Windows File Explorer again before trying again with guiformat.
  4. MiniTool Partition Wizard (free edition)
    • :!: Do not install the Lavasoft Adaware Web Companion (bloatware). See this.
      • Format: FAT32
      • Cluster Size: 32 KB
      • Partition: Primary
      • Disk: MBR
    • MiniTool Partition Wizard Software Tutorial Guide
      1. Delete Partition (for both partitions)
      2. Initialize to MBR Disk -or- Convert GPT to MBR Disk (if it's in GPT Disk)
      3. Rebuild MBR
      4. Create a New Partition [ Create as: Primary | File System: FAT32 | Cluster Size: 32 KB ]
A badly reformatted or even fake card can cause your computer to freeze or stall trying to read & write to it. You will still need to get one clean scan run with H2testw to know whether or not your card has hardware problems. If the test can't be completed, try the test on a different computer.

View attachment 174262
Thanks for the guide & explanation. Very helpful :grog:
 
General chit-chat
Help Users
  • No one is chatting at the moment.
    Psionic Roshambo @ Psionic Roshambo: Hmm didn't know they made more Dusk Till Dawn movies watched part one on Pluto TV and they have...