Doc /

Memory card and tablets rom control

(updated on may 2024) - even usb hard drives are affected!

Traduction française par Google

Summary of the situation

Memory cards are Compact Flash cards (CF, large and thick, mostly on professional cameras) and Secure Digital cards (SD) universally used now, in two physical formats: normal (post stamp size) and micro sd format (for smartphones, usually delivered with a post stamp size adapter).

I will mostly speak of sd cards, the only format I widely use now.

These cards are of three kind, historically and by size.

Up to 4Gb, standard kind. 4Gb standard are not that common.

4Gb to 32Gb SDHD card (notice the "HD" part). A SDHD reader can read smaller cards, but not the other way round. If you can't read a 4Gb card on a device, it's a SDHC and the device is old... should not happen since 2015.

64Gb and up (for now - 2024), SDXC cards. Until recently, these cards need a special reader (downward compatible, of course).

The read problem is mostly about software, so computer readers read all.

The other parameter that matters is speed (it's common to speak about speed, when in reality it's a flow rate or here bit rate). The card have a speed index (from 2 to 10), should say the speed in Mega bits per second, but no card really respect these numbers. A new high speed index have been created with two numbers, 1 and 3, only to make things less obvious...

Hard drives

In fact this is no hard drive but ssd. If you read this screen copy (may 2024) you can see than a "256Tb" usb ssd is sold 11€!!

Apart the fact that no ssd exist of this size (at this date, even 4Tb ssd are extremely expensive), but this price is nearly the one of the box.

The tools given below can also check those kind of storage.

If you open the box you can see some king os sd card soldered inside or even a sd card slot. Noit the same speed than an ssd (or nvme one).

Tablets

Now (2024), tablets and phones as well have very large "rom" - disturbing name, because these are not read only but read/write, kind of ssd. 1Tb is not that uncommon.

But 1Tb is pretty expensive and so fake ones come on the market, oddly at nearly the same price than good ones.

I was hit by this problem recently (april 2024), but was busy at the time and could not test the hardware in time to ask for refund :-(.

But now I use a nice Android application "Fake device check" that identify fake devises, as it's name says.

What for

The speed problem is high because devices are not that clear about what speed they need. Many video cams asks for cat "4" (should be 4Mb/s), but this number is very low if you look at the real specs. fact is probably there is a very fast large buffer in the device, but for continuous shooting like in video, the buffer is soon filled.

I shoot in medium quality (I shoot in night scenes, with odd lights, so the image is not that good anyway), but it is still HD 1080i at 17Mb/s, so even a class 10 card is not enough. Then I never had problem, so...

But if you shoot with 1080p at 60 images/s, or worst in 4k, you may have as much as 100Mb/s and this needs very expensive cards. Specially, professional devices like the Canon 5DMKIII can use very few compressed formats (no interpolation between images, think at jpeg images one after the other), hence the speed.

SD card price tag reduced a lot with time, the problem is not that critical in 2024.

Why is it a problem

It's a problem because the SD card makers do not give reliable writing speed, the only one that matters. They sell very expensive cards saying "buy them". But I want to buy cheap cards!

There is an other extremely odd problem. You may buy "fake" cards. Fake as fake size. A 128Gb card can be really a 8Gb one! And these cards do say they are 128Gb! But when you write after 8Gb, they only write again the same place...

Fake devices verification

Windows

There is one Windows software that can answer the question: "is this card a fake or not". It's h2testw.exe (see https://sosfakeflash.wordpress.com/2008/09/02/h2testw-14-gold-standard-in-detecting-usb-counterfeit-drives/).

This software have to be used on an empty card, mounted and accessible by the user (no necessity to be administrator).

These software have to be run on any card (and it takes several hours!!). At the end they give a speed value that is probably the most reliable, then not always the same.

Linux

There is a linux variant, f3 (http://oss.digirati.com.br/f3/).

You have to download f3 and run it (I have it in my ~/Download/f3-05), that is run ./f3write and may be ./f3read. As it runs on a mounted device, finding which is easy, only go there with Dolphin.

2023 Tumbleweed On 2023 Tumbleweed, f3 is available from YaST (just search for f3).

2024 F3 have a "f3probe" executable that is able to check immediately the card and even (often) give the name of the fake software! It can even fix the problem - reducing the card size by the real size, of course at the real size, not the said one.

Android

I found an application "Fake device test" That do the same job for any android device.

Evaluating speed

Most simple speed test is (in linux) hdparm -t that gives some read value.

An other way is using "disk" (in fact gnome-disk-utility).

An other is using rsync with any file, rsync -v gives a summary of the copy operation with speed estimation.

But the real test (boring) is to fill the card with your video, letting the camcorder run as long as necessary.

When you have a video file, it's possible to use mediainfo to get the Maximum Overall Bitrate. An other way is to load the file in almost any reader and write down the clip duration. then you can divide the file size by the clip duration in seconds. Do not forget to x the result by 8 (bits in a byte), not to be frightened by the low speed.

An other problem is that some utility gives bytes (MB/s), others gives bits (Mb/s), other do not say (M/s) and this is only random values, because many bit rates a variable (VBR: Variable Bitrate Recording), depending of the file content.

Practical tests

What I see is that test done on my computer (no so bad one) never give more than around 30Mb/s speed, but various cards of unknown brand do accept up to 80Mb/s on my Canon EOS 5DMKIII. So I guess the culprit on the computer may be the interface. I use the device built into my HP tower, I don't know how it's connected to the mobo bus. I tested SD cards and a cheap 64Gb 800x CF card (at €46.20, a very cheap price atm), both without problem (and a 30 minutes run for the CF card on the 5D).