Most CF Cards Fail DMA Transfers
Anomalyst writes "In his quest to create an open source video camera, Andrey Filippov of elphel.com has determined that most Compact Flash devices, although claiming to be DMA capable, do not perform Direct Memory Access transfers correctly. This means successful movement of data to and from the device takes much more time with DMA disabled." The culprit appears to be the controller chip packaged with most of the CF cards Filippov tried. We last visited Elphel and their work on open source digital cameras in 2002. Filippov gave a Tech Talk at Google last year.
I guess FTP isnt good enough for you?
Reminds me of the infamous Soundblaster crackle... Which in this thread is being discussed around X-Fi hardware. Even though I can remember the very first Live!'s giving me and my friends the problem years ago. I don't recall the exact details of the situation but I believe it was an improper PCI implementation.
On the Oregon Cost born and raised, On the beach is where I spent most of my days
I haven't seen a digital camera that requires separate drivers in ages. My own camera is detected as a USB hard drive - XP, Vista, and Ubuntu alike - and it's more than four years old.
I have been using a Lexar 300x UDMA CF card for a while in my camera (which supports UDMA) without any problems. I also know many people are using the Sandisk UDMA cards without problems as well. Both were also certified to work with my camera (Nikon D300) by Nikon.
This post is encrypted twice with ROT-13. Documenting or attempting to crack this encryption is illegal.
Just about every camera I've looked at recently has a bog standard mini-USB connector and didn't require custom software to see the camera's contents as a drive, at least not with OSX.
What's next, some USB mice fail at implementing the USB 2.0 standard? Or some random printer which claims to support PCL really doesn't?
Geesh, talk about a slow news day.
I want to delete my account but Slashdot doesn't allow it.
I can vouch from personal experience with their engineers that their cards rated for 30MB/s or higher all support UDMA 4 or higher, and I've done tests of my own to verify this. Not all ExtremeIII cards support UDMA though; the ones that don't specify a speed of 30MB/s are instead rated for 20MB/s, which can be quite easily achieved using PIO6 (although less efficiently.) These cards might support UDMA, but since there's no *need* for it, there are no guarantees.
Also, I'm pretty sure Lexar cards rated for UDMA do perform as advertised. I can't vouch for other manufacturers. Additionally, be wary of fake cards (ebay is especially prone to fake card sales) as they're never going to perform to your expectations.
In his quest to create an open source video camera...
What the hell is an open source video camera? I've heard of open source software, but what the hell is open source hardware??
The largest prime factor of my UID is 263267.
I think the OP was tricked into thinking that the crappy software that came with the camera was actually required to use the camera. The instructions that come with these cameras do tend to make it sound like installing the software is a mandatory step, and fail to mention that you can just access the pictures using Explorer. I guess they want to get their little bit of AdWare on your system. Or maybe they really are worried that Aunt Tillie doesn't know how to use Explorer.
Why do they want to use Compact Flash cards? I think SD cards are more common, at least in the cameras I had so far, correct me if I'm wrong. And maybe SD and SDHC cards don't have those problems?
Maybe you need to look at more cameras, then. The last couple I've owned have done that.
Clear, Dark Skies
I hope you do understand that posts on slashdot can actually be replies to other posts, not just to the article itself.
I run an 8 GB Transcend 133x in my Alix board as a router/firewall on FreeBSD, and the BIOS and OS pick it up as UDMA33 without a problem. I get sustained reads of 33 MB/s and writes of about 9.5 MB/s.
Interested in open source engine management for your Subaru?
God damn it, why can't I have that last name?
How can I believe you when you tell me what I don't want to hear?
I've been struggling with CF cards in embedded applications, and I can verify that they don't always comply with the interface specs. I've gone through at least a half-dozen different CF card brands, and all display some form of misbehavior if they're put on an IDE chain with another device. By themselves they work fine, but add a CD-ROM or a hard drive, and the system will fail with either bus timeouts or stalled transfers. My suspicion is that the CF card vendors are playing games with performance metrics in photography apps, and in those environments they can bend the spec because there's exactly zero chance of another device being installed on the interface.
As far as I can tell (without a bus analyzer,) there's something hinky happening during device auto-detection and initialization. Many times, the CF card will be detected as the Master device, but no Slave device will be detected. Swap to a different brand CF card, and the symptom will change - both devices will auto-detect, but the IDE bus will throw timeout errors during boot. Swapping in just about any not-a-CF-card device, and everything is fine.
In the article I was only describing CF working in "true IDE" mode, inside the cameras thy usually do not use it, so do not care much about the problem I've got. But it is important if you try to connect the camera with a simple adapter instead of the HDD
I have an S2, not an S3. I've never installed any Canon software on any of my computers. I can plug it to any computer, and any PTP-compatible software can grab the pictures, using any MiniUSB cable.
Try it. DigiKam (using gphoto as the backend) and iPhoto never had any trouble with it. No idea on the Windows side, though.
Maybe I have more money than you and can look at more cameras?
Probably. I'm just a code monkey these days.
"disclaimer: only tested on OS X, not tested on animals, no DLLs were harmed in the making of this message, age 45 and older excluded, milage may vary depending on driving conditions, poster assumes slashdot readers are capable of understanding the concept of 'context', emoticons are optional and may require a surcharge."
I have a Canon PowerShot A630 and a S1000(I think, something like that), and I wish that was the case.
No, I'm stuck with it identifying itself as a camera which won't let me cut & paste.
HP cameras at least give you the choice between showing as a camera or mass storage.
I, the orginal and only Anonymous Coward, have a 2 inch junk!
This reply is GPLv3 licensed.
Original comment available on request.
Caesar si viveret, ad remum dareris.
Wait a minute ... there's still a market for sound cards? I am perplexed. Last I checked, there wasn't a motherboard made that didn't have onboard SPDIF, not to mention plugs for 5.1 speakers. Who are these people who buy sound cards?
Breakfast served all day!
Most (All?) digital cameras allow you to change this setting. On my current one (Panasonic), the setting is called "USB mode" and toggles between PC or PictBridge. I've seen similar settings on Minolta, Nikon, Canon and Olympus cameras; I suggest you try reading the manual or exploring the settings?
Actually, it uses either PTP or MTP to talk to you camera over USB. Your USB hard drive is a mass storage device which most likely uses SCSI commands over USB.
In either case, the OS presents it to you like its an external hard drive.
Maybe one day I'll see a camera with a bog standard USB connector that doesn't need a specific driver just to see the camera's contents as a drive?
Why would you want to do that anyway when you'll get a much higher transfer rate with a proper card reader than with the crappy USB controller that's on board the camera ?
May contain traces of nut.
Made from the freshest electrons.
I wonder how often voltage (5V vs. 3.3V) is a factor in UDMA problems...
Like the previous poster, I use a Transcend CF card to run XP and Ubuntu on a laptop. I recently "upgraded" to the 16GB 300x version, since it was supposed to run at UDMA5. I wrote the review here.
Short story: According to Transcend, the card has to run at 3.3V in order to run in UDMA5 mode. I'm also using that Addonics 2-card CF-to-IDE adapter, and it doesn't offer voltage choices, so I'm stuck at 5V and the slower speeds -- auto-detected at UDMA4 in XP and UDMA2 in Ubuntu.
Next up, I'm gonna try this single-card solution, since it has a hardware voltage switch (jumper).
Oh, yeah -- and for the purposes of mounting these CF-IDE adapters in notebooks, the Addonics is a real pain (super glue was involved), since it doesn't have the same dimensions & threaded holes as a standard 2.5" HD. According to another reviewer, the Syba addresses that.
What you want is irrelevant; what you've chosen is at hand! - Spock, ST VI
> We last visited Elphel and their work on open source digital cameras in 2002...
Are you sure? Wasn't it just a week ago?
http://mobile.slashdot.org/article.pl?sid=08/07/05/1711221
I have an A630 as well, and it fucks up all the time when using the automated XP windows photo downloader thingy. It gets an error while trying to read from the camera, and starts skipping photos. No problems under Vista, though.
However, nothing stops me from just popping the memory card out and reading the photos off that way, and it goes much faster as well.
I had a Sony camera circa 2003 that *required* drivers installed first. Cthulhu help you if you connected the camera w/o installing drivers, because XP couldn't see it and despite my best efforts, it never would after that. Good job we had another computer.
Hail Eris, full of mischief...
E pluribus sanguinem
I hope you do understand that posts on slashdot can actually be replies to other posts, not just to the article itself.
Comments below the 50 top rated usually aren't even downloaded. Because of this, it's easier to get comments understood if you Quote Parent.
It is possible to label the *newspost* as flamebait?
posted in wrong thread.
Seems a bit presumptuous to say that the parent poster doesn't know how his/her own gear works. I've seen cameras which use PTP/MTP (basically the same protocol, but I've also used plenty that were detected (as indicated by kernel messages in linux) as standard usb storage devices, Actually, more of the digicams *I've* used worked in the later fashion.
-*The above statement is printed entirely on recycled electrons*-
it's not just about the CF to IDE (or CF to SATA) adapters but also the controller chip within the CF card as stated in the article.
Are you sure you had it in Fixed Disk mode? Most OSs will fail to boot if the card is in Removable mode. All CF cards share this characteristic, and most are in Removable mode by default. A good CF-IDE adapter can (and should) put the card in fixed disk mode, but not all will do so.
http://en.wikipedia.org/wiki/Minimig
What happened to the good old days when chip vendors would fall over themselves to give you data sheets, application notes, and anything else you might need to use their products in your design? NDAs were for things like information on unannounced products.
Mea navis aericumbens anguillis abundat
The parent is most obviously pointing out a mistake in the summary, and NOT trolling!
Because every computer out there has an USB port. Even the 10+ year old laptop I use for photo backup & resizing while on the road. And if the thing needs to run the whole night to grab & resize, I don't care. That's when I am sleeping, anyway.
Easy !
Compact Flash form factor is really a down-sized PC-Card 16bits / PCMCIA form factor.
And PC-Card 16bits is nothing more than cousin of ATAPI which is external and supports hot swapping.
(Just as PC-Card 32bits is a PCI cousin with hotswapping, and Card-Express has both PCIe and USB2.0 pins).
There are CF IDE adapters which are mostly passive pin-adapter without any logic, that let you access a CF card using an IDE bus (minus the hot plugging).
So just plug your compact flash into one of such card adapter.
If your computer recognize the card in UDMA and can access it without DMA errors, it means it's a true UDMA mode. If you have to switch back to a PIO mode to get it working, it means that some workaround is needed.
There are a lot of SanDisk cars which *do not* feature UDMA in their retail form, but only in *industry* equivalent models which are more expensive (can confirm it in my own experience).
I've read on the net that Lexar card better support UDMA (can't confirm, haven't got one yet).
"Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]