Tip on Faulty SD Cards in GL.iNet Routers

After spending about an hour wrestling with my travel router to get it to recognize my SD card, I decided to write this blog post to save someone the headache and pain I went through.

I had an SD card that worked fine in all devices but the GL.iNet router. Now, your first thought is probably the formatting of the SD card, right? Well, I tried everything. Both GPT and MBR for the partition table, and ext4, exFAT, NTFS, and FAT32 for the actual formatting of the partition. But none of the combinations worked.

SSH-ing into the router, I found the following entry in the dmesg:

[  280.757666] mmc0: mmc_rescan_try_freq: reset power

This line kept popping up whenever I ejected and inserted the SD card.

On a whim, I tried a different SD card, a known good one from Kingston. And that’s when the router immediately recognized the card. In the dmesg:

[  444.254378] mmc0: new ultra high speed SDR104 SDHC card at address 0007
[  444.264841] mmcblk0: mmc0:0007 SD16G 14.4 GiB
[  444.265892]  mmcblk0: p1

And when the card was ejected:

[  448.910935] mmc0: card 0007 removed

I looked at the other SD card that hadn’t worked. Some no-name brand SD card. I decided it had failed just enough to not meet the router’s tolerances, snapped it in half, and threw it in the bin.

So pro-tip: if your device stops detecting an SD card, try a different one.

PS: the formatting turned out to not matter much after all. The router (that I have, the GL-AXT1800, anyway) supports exFAT, FAT32, NTFS, and even ext4. I’m not sure whether or not it recognizes GPT partition tables, but given that it’s running OpenWRT underneath I would be very surprised if it didn’t.