How to tell if CF card is faulty?

[crossposted to comp.os.linux.misc as well as *.photo.* groups because I know there'll be people there clued up about comp systems, and uk.d-i-y for folks clued up about life the universe and everything :-)]

I have a 128M CF card which has recently started playing up in my digicam (Nikon Coolpix 3100 fwiw). After taking a lot of pictures the camera suddenly reports that the card is not formatted. I can recover the pictures from the card (using various commercial utilities, or dd-ing to an image and pulling out chunks starting with the jpeg header from the image file). When I do this usually some of the later images are corrupt: typically they will display OK in a thumbnail view but attempting to view at full size the whole image is momentarily displayed at reduced resolution but then a portion of the image (starting at the left side) is replaced by blank or garbage as the veiwer attempts to display it at full resolution. (I guess this is related to the format of jpeg images?)

Anyway I can reformat the card and it works OK, but the problem recurs. Sometimes when recovering images I find I still have images from earlier shoots 'further down' the card, suggesting that the card isn't failing at some particular memory location but more-or-less randomly. I have a 'reference' duff CF card :-) which the camera (and PC via card reader) report as unformatted even after a format and this card isn't showing that symptom, but the repeated occurrences of the problem and the fact I don't get any problems on another CF card (though that is only 32Mb) suggests that it's the card at fault rather than the camera.

Is there any way of testing to be sure, using what I have here: the camera itself, a usb card reader, linux and win2k systems, some loo rolls and sticky-back plastic ... :-) ?

Reply to
John Stumbles
Loading thread data ...

John,

The fact it works find with the 32MB CF card is fairly conclusive proof I'd say that the 128 is unwell, and not the camera. Buy another one? 128's are pretty cheap.

Alan.

----== Posted via Newsfeed.Com - Unlimited-Uncensored-Secure Usenet News==----

formatting link
The #1 Newsgroup Service in the World! >100,000 Newsgroups

---= 19 East/West-Coast Specialized Servers - Total Privacy via Encryption =---

----== Posted via Newsfeed.Com - Unlimited-Uncensored-Secure Usenet News==----

formatting link
The #1 Newsgroup Service in the World! >100,000 Newsgroups

---= 19 East/West-Coast Specialized Servers - Total Privacy via Encryption =---

Reply to
Alan
[un-top-posted]

I bought it from ebuyer in February, and they'd be my first choice* if I were to buy a new one so I'm checking that they sort this out to see if I want to go on using them anyway. (I've a scanner and other stuff on my wishlist.)

  • I know others have had bad experiences with them but my own experience is that when the 16M CF card that came with my camera packed up they just sent out a 32M card with no quibble. Hoping this one goes as smoothly.
Reply to
John Stumbles

On Thu, 8 Jul 2004 11:26:37 +0100, "John Stumbles" strung together this:

Also unsnipped, but you seem to have missed that one on the ticklist of 'the perfect post'!

If you're bottom posting don't make it so everyone has to scroll all the way down etc etc..... moan moan......

Reply to
Lurch

It may be that it's the filesystem on the card and not the card itself. The original FAT system was restricted to about 32MB.

Try to use both the faulty 128MB card and the good 32MB card in a reader and use linux's fdisk to look at the partitions. eg:

fdisk /dev/sda .. .. (use 'p' to print partition table)

Device Boot Start End Blocks Id System /dev/sda1 1 38144 39059440 83 Linux /dev/sda2 38145 38154 10240 4 FAT16

Reply to
Jack Strangio

Not so! DOS 1.0 supported single-sided 8 sector/track diskettes (160KB) DOS 1.1 supported double-sided 9 sectors/track diskettes (360KB) DOS 2.0 supported 10MB hard disks and subdirectories (PC-XT) DOS 3.0 supported FAT-16 and 32MB partitions (PC-AT)

There was also the choice of CP/M for the original IBM PC - can't remember what filesystem that supported.

Sadly, I was there ...

-- LSR

Reply to
Elessar

...

Sound like the internal memory addressing are faulty. Most likely a loose pin between the controller and flash chips. You would have to open it up and check for loose solder joins.

Very much like memory addressing problem. If formating works, then connection to the controller is fine. I would beg there is a loose pin inside.

Definitely check with the seller first. If they won't fix it, we can fix it for a small fee. Contact us at

formatting link
. Do not email us, all email are DOA (dropped on arrival).

Reply to
Linnix

Hokay! It's showtime! Let's boogy to play evaluate a dodged up CF card

This may be a destructive test on the CF card and (I hope) on no other bits of kit.

das B or bagal will not accept any responsibility of maintaining or repairing a CF card held by another... (so there :-)

The next bit is at your own risk:

1 - prepare a folder of copied files on your computer. Make sure they are copies because you may lose them.

2 - adjust the size of files in this folder so it represents about 90% of the capacity of your CF card

3 - if you don't know how to do 1 or 2 - put the kettle on and have a nice cup of tea or coffee or a lovely soft drink and do not read the rest of this message##

4 - are you sure? Cookies and milk are ok too?

5 - plug dodgy card into card holder

6 - transfer the data over from the folder you prepared at (1) or (2) observing any visual indications of encountering a data transfer hiccup

7 - repeat 6 using different folder sizes, time the transfer, bulk it up or slim it down until the card indicates it is good or dodgy

8 - let us (eg me and the whole wide world of NG readers know how you get on. I am sure all 25 of us are really quite interested)

das b

Reply to
bagal

how about this?

$ dd if=/dev/random of=/tmp/cf.img bs=1024 count=$((1024*128))

to make an image of random bytes.

$ md5sum /tmp/cf.img

to get a checksum for it

$ dd if=/tmp/cf.img bs=1024 of=/dev/cf-device

to copy it to the card

$ md5sum /dev/cf-device

to checksum the card

if the sums match, the card is probably ok.

maybe make a script to do this n times to be sure.

Reply to
Andy Baxter

Thankyou Lurch.

No Flaming from here, I despise non snippers, and ones that criticise "top-posters" are the lowest form of life, even lower than good old fasioned troll's who at least know how to post correctly!

Reply to
Pet

OK, wrist considered slapped :-)

But be fair, the purpose of my post was to follow up the thread, only remarking en passant that I'd undone the top posting.

Not that I despise people the sole purpose of whose posts is to criticise non-snippers, Oh no! Far from it! :-)

Reply to
John Stumbles

Hmmm, a 0 Meg CF card for $8. Definitely a bargain. Do you do Dark Emitting Monodes too?

Reply to
John Stumbles

Actually, DOS 2 supportted much more thn that - it was restricted to 64k SECTORS IIRC. 8Mbytes per partition? on 512 bytes per sector - summat like that

I spent 3 dull months writing a BIOS patch to an RM machine to utilise a

80Mbyte drive, by chunking up pyhsical 512byte sectors into 2K logical ones....

me2

Reply to
The Natural Philosopher

Andy - have you ever used Gimp image processing software?

das B

Reply to
bagal

Actually, it's the IDE adaptor only, without the CF.

Give us the spec and we'll do it. :-)

Reply to
Linnix

yes. bit of a tangent though.

get the new version 2.0 if you can - the user interface has been improved a lot.

Reply to
Andy Baxter

Not sure why the above is addressed to Andy (unless my newsserver has missed a/some message[s] in this thread) but maybe that's a response to the part of my post where I asked:

...

I have tried view/editing them in the Gimp and still lose the part-resolution part of the image. I don't know if there's some way I could get the gimp to do the right thing with it if I knew how, or if I need some way of messing with the jpeg format directly.

Reply to
John Stumbles

...

Thanks that did the trick.

I actually used /dev/urandom as /dev/random looked like taking until next century to produce 128M. I also found that $((1024*128)) was bigger than the CF card size, so used effectively:

# fill card with random stuff $dd if=/dev/random of=/dev/cf-device

# read from card $ dd if=/dev/cf-device of=/tmp/cf.img

# checksum card $ md5sum /dev/cf-device

# checksum image file $ md5sum /tmp/cf.img

Sure enough the md5s were different. Possibly diff might have done the trick for that.

I guess apart from random data various patterns including all 0s, all 1s,

010101... (x55, xAA) and so on might gie a more rigorous test.
Reply to
John Stumbles

Have you ever read this? :

formatting link

Reply to
Andy Luckman (AJL Electronics)

does that mean u have not used The Gimp?

Oh - wrong Andy :-)

soz m8

Artie

Reply to
Arte Phacting

HomeOwnersHub website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.