If you are getting SD Init fail errors or just erratic behavior with your printer’s SD slot the main reason for erratic or non-functional SD slots is due to debris and oxidation on contacts. Another common one is due to the partition format on the SD card (GPT vs MBR).
We recommend cleaning the card pins and the slot. The slot is tricky to clean but we have our method outlined below. If cleaning fails you can also add one line to our firmware code to slow down the SD speed to make it more tolerant of issues.
Master Boot Record (MBR) disks use the standard BIOS partition table. GUID partition table (GPT) disks use the Unified Extensible Firmware Interface (UEFI). MBR disks don’t support more than four partitions on each disk. The MBR partition method isn’t recommended for disks larger than 2 terabytes (TB).
You can change a disk from MBR to GPT partition format as long as the disk contains no partitions or volumes.
WARNING – PLEASE READ
To complete the disk conversion by using Disk Management, follow these steps.
The process notifies you when the conversion completes.
To complete the disk conversion from the command line with the diskpart disk partition process, follow these steps.
diskpart
to initiate the disk partition process.list disk
. Make a note of the GPT disk number that you want to convert to MBR format.select disk
<disk-number>
, where <disk-number>
is the GPT disk number to convert.clean
to delete all partitions and volumes on the disk.convert mbr
to convert the GPT disk to the MBR partition format.The diskpart process notifies you when the conversion completes.
Taken Directly from Microsoft Source: https://learn.microsoft.com/en-us/windows-server/storage/disk-management/change-a-gpt-disk-into-an-mbr-disk
You will need IPA to clean the cards. You can also use rubbing alcohol for this.
Use a tissue or cloth to clean the contacts on the SD card after applying the alcohol to the tissue/cloth. Once you have that done, turn off the power to the printer (and unplug the USB). Then get the SD card very wet with the alcohol and then immediately insert it into the SD slot on the board.
Once the wet SD card is in the slot eject it and re-insert it 10-15 times. This will use the SD card with the alcohol to clean the contacts in the slot. After putting the card in and out of the slot 10-15 times remove the card from the slot and let the board sit for about 10 minutes to let the alcohol evaporate. Look around the slot to make sure all the alcohol is evaporated before powering up the machine. You can blow compressed air gently into the slot to make it evaporate quicker.
After that, power on the printer and try to use the SD slot.
If cleaning fails, make sure the SD card is formatted with the FAT or FAT32 file system and you are using an SD card that is 32GB or smaller. Smaller cards tend to work better on the 3D printer boards. If you do not have a small card we do carry a 4GB card in our store here that is preformatted with the FAT filesystem: https://www.th3dstudio.com/product/4gb-fat-formatted-gcode-firmware-microsd-card/
You also may want to run a test on the SD card itself to make sure it is working correctly.
You can try disabling the SD detect pin on your board by adding the below line to your Configuration.h file. This will then give you options (on most boards) to manually mount the SD card in the event that the SD detect slot is not working on your board.
#define SD_DETECT_PIN -1
If you want to slow the SD speed down to make it more tolerant of poor connections you can add the below line to your Configuration.h file on any of our firmware or Marlin 2.X or higher.
#define SD_SPI_SPEED SPI_HALF_SPEED