PDA

View Full Version : card readers and cameras - may not mix?



ssidlov
03-11-2005, 06:51 PM
I came across this site, and it has some interesting information and a position that i have not encountered before, and that is in thier words:

"Digital Cameras contain a full operating system that supports classical Input/Output operations on a FAT based file system. Due to memory constraints in early cameras (and possibly also to inexperienced developers), the file system implementations are sometimes a bit shaky. It is not uncommon to see cameras "wrap their writes around" when they don't realize they have reached the end of the card, erasing critical system structures located at the beginning of the media. Some cameras become confused when structures different from what they expect such as non-picture directories are present on a card; others are unable to switch safely from FAT-12 to FAT-16. Sometimes, a minor logical inconsistency leads to a major corruption of the card through what is known as the "avalanche effect" in datarecovery circles."

"Card Readers usually interface with the OS's file system drivers through drivers that act as bridges between the file system handler and (for example) the USB mass storage driver. While some of these drivers do not respond properly to standard system calls, the majority of problems encountered by the users after they have manipulated a card in a USB reader are in fact camera related. The camera's simpler operating system just cannot handle the perfectly valid situations created by a sequence of file deletion, creation and moves under the computer's operating system. That's why it is always a good idea to simply try to read a card that a camera will not accept in an external reader. Some recoveries are as easy as that."
http://www.datarescue.com/laboratory/smartflash.htm

Now, they say that recoveries can be done by putting in the card reader, but based on the questions here that I've read, the other situation is more common, that the card reader and USB drivers are not manipulating the data correctly so that the camera reads it properly after. This would mean that you should use the camera's reader to simply upload the data, and then ask the camera to do the format or deletion of the pictures. On the other hand, there is at least one person here who may have had the card full wrap problem. (I recently tested my camera on this and it refuses to take pictures when full, just stops.)

Additionally, I came across http://www.robgalbraith.com/bins/multi_page.asp?cid=6007-7303 and on that site is tests of CF card speeds in actual cameras. The above being a test of the Cannon EOS 20D. In the NOTES on that page, it states that some cameras and unwitting users on thier computers, format the cards in a way that causes it to actually be slower than what the camera is capabable of by not being aware of the effect that sector size has on the storage. This site/guy appears to actually recommend that you format cards on the computer with small sectors - but warns that it can be incompatible with some cameras and you'll have to play with the sector size until you are compatible.

Anyone have an opinion on this? Is it the camera or the reader/computer? Older cameras only? Sector size?

gary_hendricks
03-12-2005, 08:06 AM
I have heard of formatting the card with small sectors - but I don't think it makes any difference though. :)

dwig
03-12-2005, 08:17 AM
I've never encounters the "wrap writes around" with a full card but did have it happen when an older Fuji of mine was using a 64meg SmartMedia card. It appears that model Fuji doesn't grok cards larger than 32meg. It knew that was space on the card, but as it approached the boundary at the end of the first 32meg it, still seeing space, wrote but did so in the first 32meg instead of the second (SmartMedia was never very smart).

Most of my shooting has been in cameras using CF cards. I've never had problems but I can see where incomplete error trapping in the camera's firmware logic could cause problems.

JPEG's don't all compress the same. If a card has enough space for an average JPEG, faulty logic could let the camera shoot another image and attempt to write it. If that image doesn't compress as well as average, the camera could run out of space and miswrite data leaving the card format corrupted. Limited memory space in cameras limits the elegance and extensivenes of the error trapping. This would also be a very hard scenario to test for if you tried and very likely to be overlooked during the firmware quality assurance phase.

There's probably a whole host of errors that the more elaborate destop OS's avoid that the camera's OS's fail to trap. Extensive error trapping can take a lot of code, often several times the amount needed for the primary function.

It seems that cameras are getting better at handling multiple formats. Nikon's newer high end models now handle both FAT (FAT16) and FAT32. FAT32 is necessary for cards (FlashRAM and MicroDrive) larger than 2 gig. Even my old (antique?) CoolPix 950 has never complained when there were other directorys and files on the card or when the card was formatted at FAT from a Windows (I've used 98, Me. W2k, and XP) machine.

ssidlov
03-12-2005, 11:57 AM
I have heard of formatting the card with small sectors - but I don't think it makes any difference though. :)

As an old programmer, smaller sectors mean that there is less slack (aka unused) space when writing a file. Ultimately this means that you can store more pictures on cards with smaller sectors. AND usually the writes and reads are faster.

dwig
03-12-2005, 08:46 PM
As an old programmer, smaller sectors mean that there is less slack (aka unused) space when writing a file. Ultimately this means that you can store more pictures on cards with smaller sectors. AND usually the writes and reads are faster.

With FlashRAM, the smaller sectors can lead to faster read/write. With moving media drives, they can slow things down. As a result, most desktop OSs, beign designed for conventional hard drives, default to larger sectors.

Smaller sectors add overhead at the end of each sector where the "crib note" is left indicating the sector number containing the next block of data. Since with moving media drives this next logical sector is not necessarily the next physical sector, there can be some time spent getting the heads to that sector. Smaller sectors mean more sectors means more dead time hunting for the next one. The more fragmented the file structure on a drive, the more pronounced this slowdown becomes.