# Corrupt, unreadable sectors on an SD card

I have several SD cards with a damaged filesystem. As I analysed them with different hex editors (active diskeditor, wxhexeditor, and bless) I found unreadable sectors at the beginning of the filesystem especially in places where you don't expect a high write endurance.

One card has errors after the FAT boot sector (>243), and another one has errors in the hidden sector area (150-230). These sectors seems to have a hard error since I can't even read data from them. Neither with the command sudo dd if/dev/sdd bs=512 skip=249 nor with hex editor tools.

The main concern I have is when I format the SD cards with the SDFormatter V4.0 in quick format mode, the bad sectors are gone and everything works fine. This disagrees with the assertion that the concerned sectors had hard errors since the quick format mode only initializes the filesystem without initializing the card on low level.

Bad sectors only can be excluded from the S.M.A.R.T register on the SD card, and this requires low level formatting.

What can cause such a failure? The signal integrity seems to be OK. Voltage, threshold levels, and the timing are also fine. One thing I can’t really check is the firmware. Is it possible to get the SD card goes bad only by messing with the firmware?

One of the cards was sent to the manufacturer. They found out that the card has no errors. But they could not tell me what the problem could be. Has someone an idea how to find out what problem it could be? Has anyone dealt with a similar problem?

Operation Mode:

• CLK=13 MHz
• SPI
• FAT16

Here are some facts about the SD card and its usage:

• Supports wear leveling
• High Level Cell 2 GB
• Hyperstone S6 Flash controller
• Used at normal conditions (room temperature)
• MTTF weeks to several months
• Only a few gigabytes (approximately 3 GB per month) will be transferred to the card.
• Have you tried asking this question on the Unix/Linux forum? – skvery Mar 8 '17 at 9:52
• No, unfortunately not. I checked the card under linux and windows with a sd card reader. I had same results under both operating systems. The card is controlled by a blackfin microcontroller. – Armin Mar 8 '17 at 10:14
• Only the manufacturer can tell. SD cards use wear leveling, meaning the same sector can be physically stored in a different flash page after each write, so don't expect your theories about individual sectors to hold true. – Dmitry Grigoryev Mar 8 '17 at 13:01
• You didn't tell how often they were used, in what conditions, how old the cards are, which technology they use. Newer cheap SD cards with Multi Level Cell are manufactured to achieve a certain quality, but the temperature range is small (a lot smaller than a mechanical hard disk) and they rely more on the microcontroller to fix problems. Is there a common factor when you tested them ? For example the same computer, the same USB cable, the same card reader ? Try to change that. – Jot Mar 8 '17 at 15:57
• The SD card supports wear leveling. – Armin Mar 9 '17 at 12:53