Hacker News new | past | comments | ask | show | jobs | submit login
Understanding Memory Cards (photographylife.com)
74 points by emptybits 9 days ago | hide | past | web | favorite | 32 comments

This is an extremely verbose article, but for most people I would highlight the most important things (for SD cards at least):

Buy a real brand: people have there own opinions on this, but to me this means Sandisk, Samsung or Verbatim. Had a bad experience with Lexar once but as always ymmv.

Buy from a real retailer: this means B&H or Adorama or a not-shady brick and mortar store. Amazon will happily ship you counterfeit cards that will crapp out when you need them most, like ebay will. This is coming from someone that chooses to buy a ton of their electronics from ebay, Aliexpress or street hawkers.

Yup. The street bazaar in Amazon is quickly turning into a hawkers market where you have to know you’re buying a fake Rolex and negotiate accordingly. The problem is that no one in the general public knows this.

A cursory glance around AliExpress shows SD cards with “decorative” labels - and straight up fakes. The problem you get is that any joe blow can buy from Ali- resell on Amazon or elsewhere - and be truthful in saying that he was trusting his seller.

Small anecdote, but I have had success buying accurate capacity Samsung microSD cards on AliExpress. Just pick the seller with the most sales.


I tried a couple of FAT32 formatted 16GB SanDisk microSD that have a "Lifetime" warranty in an OpenWRT-based router that has a microSD card slot. I managed put them both into unrecoverable "read-only" mode by letting some daemon write to them unconditionally.

They were purchased from a large electronics retailer not Amazon.

I normally do not use SD cards or USB sticks for non-interactive, frequent writes. I usually write to them manually (i.e., interactively), either storing files or dd'ing bootable images. For example, I am not one of those people who tries to use an SD card as a substitute for a HDD in an RPi. I only use tmpfs for non-interactive writes.

Is there any reason I should not conclude that these cards are not suitable for high frequency and high volume of writes.

That's a good conclusion. You can buy cards that are actually specced for high-endurance workloads, they're usually marketed as either for video capture or industrial applications.

> Buy a real brand: people have there own opinions on this, but to me this means Sandisk, Samsung or Verbatim. Had a bad experience with Lexar once but as always ymmv.

I've had always bad luck with Sandisk, both CF and SD/microSD cards.

Buying from Amazon? You’re likely getting fakes. Genuine SanDisk memory cards are top notch.

Sure every brand will have lemons, but if you’re seeing consistently bad “SanDisk” cards.. you are pretty certainly not getting genuine product. Find a reputable supplier (which is absolutely not Amazon)

The general advice for buying off Amazon it to make sure that it's actually coming from Amazon.com, not CheapMemoryAmerica1999.

From what I understand, Amazon comingles their own inventory with third party sellers so although the cards they buy might be legit, you're not necessarily guaranteed to get what they bought vs what CheapMemoryAmerica1999 contributed even if you buy the ones from Amazon

I read that as well. But Amazon does have a good return policy with respect to that, and if you read recent reviews it seems like the problem is mostly over.

I've never had a SanDisk failure in over 10 years. At one point I was recording two hours of 1080p video a day, rotated between three cards, for a couple of years.

I haven’t had too many issues ordering from Amazon, but I go through much effort making sure seller is reputable every time and listing was not swapped.

Both Adorama and B&H sell on Amazon too, but for photo/video gear I would go to B&H direct.

Amazon will swap in fakes no matter what seller you're using, as long as they're using Amazon's fullfillment services. Search this site, there is like one article a month about it.

I keep hearing stories but am yet to be burned with a fake myself. Perhaps paying attention to the seller and the listing makes a difference after all (I don’t know how others do it), or Amazon US uses different procedures when shipping internationally, or I’m just lucky and haven’t been buying that much (fewer than ten tech items in an average year).

If anyone chooses to order memory cards or the like from Amazon US specifically for whatever reason, I find that at least an hour reading reviews and surveying listings is required for me personally to be reasonably hopeful I will get what I want. Trying to spot dishonest reviews or signs that older reviews are for a different product (swapped listing). I imagine if I were in the US I could simply order multiple product variations from different listings & sellers and then pick the most genuine-looking one, returning the rest, but that would be a major hassle when ordering overseas.

A quick informal survey confirmed my impression that most customers who care to identify sellers and resist going for the cheapest listing typically receive items with no issues (or within the margin of human error), but there does exist a vocal minority who were affected allegedly despite those measures.

Please please please clarify that it's exclusively the problem of Amazon US. As far as I'm aware no other Amazon branch does this.

Right—if Amazon did anything of the sort in, say, Japan, that market would be as good as permanently lost.

I am surprised they didn't mention that microSD and SD cards are electrically compatible and have passive adaptors. If you want to write a comprehensive guide, that's a useful thing to tell people.

It’s such a ridiculous dark pattern to only advertise read speed when in almost all cases write speed matters more. Also, the SD speed class notation is almost totally obsolete and anachronistic because these days even the fastest class 10 has a minimum speed requirement so low it tells you almost nothing about the card’s performance.

> Also, the SD speed class notation is almost totally obsolete and anachronistic because these days even the fastest class 10 has a minimum speed requirement so low it tells you almost nothing about the card’s performance.

There are higher speed classes past class 10.


Not in the sense of a "C" surrounding a larger number than 10. Instead, you get a card marked with all of "C10", "U3", "A2", "V60", or some crap like that.

Give me 4 numbers: Read and write speeds, each in terms of minimum sustained transfer rate and minimum random IOPS.

Odd to see such a long article with no mention of MMC, TF, or xD.

Also worth noting that these cards (with the exception of xD, which is just a packaged raw NAND flash) have a complete embedded system in them too: https://www.bunniestudios.com/blog/?p=3554

Unfortunately it hasn't updated anything for almost a year, but cameramemoryspeed was always my go-to for actual speed tests of card/camera combos.


I wonder which of them, if any, contain a controller chip that does wear leveling? All PC SSDs have them, even very small ones like M.2 2230.

They all do. It isn't always a discrete chip though. Like in the case of a MicroSD the memory and controller is all integrated. You can open up some full size SD cards though and the memory and controller will be separate chips.

Because I can regularly find 64GB cards at reputable sellers for about $10, I no longer format cards. I shoot until they are full (backing up as I go). When a card is full, I "file" it. Basically, I've started treating memory cards as "digital film". I know they are likely to degrade over the years, but formatting guarantees "degradation" right now in the present. [1] Compared to film, SD cards are cheap. Not zero cost, but @ 40 RAW images per GB, it's only a fraction of a penny per shot. With .jpg it's a fraction of a fraction of a penny.

[1]: It also opens the door for accidental formats.

Sandisk released a whitepaper on their SD wear leveling in 2003, not sure if it's changed significantly since then or not: https://web.archive.org/web/20150326122100/http://ugweb.cs.u...

With modern TLC flash any card without wear leveling would fail pretty quickly.

Wear leveling is actually a major problem for applications where power might be suddenly cut, because if it happens while the wear leveling is running then the block allocation table can be corrupted which leaves the whole card unreadable. It's a pretty common complaint among i.e. raspberry pi users who tend to unplug them without shutting down.

Is there any real difference between SD, SDHC and SDXC, aside "SD uses FAT, SDHC uses FAT32, SDXC uses ExFat"? These cards does not have filesystem controller on it, it's not "FTP over wire", it's block-based storage device. If I format ancient SD from early 2000s with exFat, will it become SDXC?

From Wikipedia (marked with "Citation needed"):

> The SDHC format, announced in January 2006, brought improvements such as 32 GB storage capacity and mandatory support for FAT32 filesystems.

How dumb storage device can refuse to support FAT32?

Fun fact: SD cards support SPI interface and can be easily connected to cheap microcontrollers.

SD and SDHC differ in some material ways. SD uses byte-level addressing and is limited to a size of 2 GB. (The spec could theoretically support 4 GB, but is limited by spec to half that, possibly as a hedge against implementation errors.) SDHC uses sector-level addressing, lifting that limit to a theoretical 2 TB.

SDHC and SDXC are identical at a protocol level.

In theory they support SPI. If you actually try to use it you'll find not only is it dog slow but half the cards out there aren't tested for it anymore and don't work at all or are very flaky.

I would not recommend using SPI mode.

bunnie wrote a great article about fake MicroSD cards back in 2010:


there is also this blackhat 2018 talk 'Reversing a Japanese Wireless SD Card - From Zero to Code Execution' https://www.youtube.com/watch?v=tA7GW9XkXBU

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact