Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

Create Account  |  Retrieve Password

Most CF Cards Fail DMA Transfers

Posted by kdawson on Sat Jul 12, 2008 02:28 PM
from the it's-all-in-the-controller dept.
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.
+ -
story

Related Stories

[+] Embedded Linux On a High Speed Camera 91 comments
destructor writes: "Linuxdevices has an interesting article on a High Speed Gated Intensified Camera that "combines a fast gated micro-channel plate (MCP) image intensifier, a CMOS image sensor, and an embedded computer based on an Axis Communications ETRAX RISC processor running Embedded Linux." The camera (Elphel Model 303) itself is network operable and can be used for capturing images of explosions, lightning bolts, etc. Link found via. megarad.com."
This discussion has been archived. No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More
Loading... please wait.
  • Creative (Score:4, Insightful)

    by negRo_slim (636783) on Saturday July 12 2008, @02:36PM (#24165937) Homepage
    Reminds me of the infamous Soundblaster crackle... Which in this thread [creative.com] 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.
    • Re:Creative (Score:4, Informative)

      by 77Punker (673758) <spencr04 AT highpoint DOT edu> on Saturday July 12 2008, @02:48PM (#24165995)

      It's pretty fascinating how the company that appears to be the market leader is also the worst in terms of actually delivering a good sound card. Then again, maybe it shouldn't surprise me since they're also the biggest liars. I got bitten twice.

      NEVER AGAIN

      • Well like I said we had problems with the cards, but as components changed the problem would fade away. Right now I run an el cheapo Audigy SE and couldn't be happier with it. When it was a problem it was a big problem, but when it's gone... at the end of the day I'm glad to have an SB in my rig.
        • You wouldn't have been happy if you bought the Audigy LS when it was new and then Creative didn't make drivers that worked with XP SP2 until Vista was released. Not to mention the fact that after those drivers came out, it wasn't compatible with 2.1 speakers in hardware mode; it would only do surround sound.

          Repeated contact with Creative changed nothing; their only answer was reseat the card, reinstall drivers and so forth. I did all of that many times, and they never cared to do anything about it.

          Now I hav

          • You wouldn't have been happy if you bought the Audigy LS when it was new and then Creative didn't make drivers that worked with XP SP2

            That's why I bought the Audigy SE for $30, I noticed it was more akin to the Live! series then anything else. So I knew what to expect and I really couldn't justify spending any more on features I wouldn't use or a handful of frames per second I won't notice.

      • Re: (Score:3, Informative)

        Of course, the only reason Creative are the market leader is because they bought out and killed off anyone who looked like they might actually be a viable competitor...
      • 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?
        • Re: (Score:3, Interesting)

          It's like the difference between an onboard video setup and a "real" one. People who need more features always have to pay a little more for them.

            • For gamers, there is a massive difference.

              DICE's Battlefield 2 uses EAX to provide detailed positional audio on X-Fi cards.

              I have played a fair amount of Battlefield 2, around 400 hours. About half way through this, I upgraded from onboard audio to an X-Fi Fatal1ty. My Kill to Death ratio went up by about 25% within a few days.

              For me, the stats speak for themselves. Same applies to Race Driver GRID currently... there is no need to use the mirrors if you have reasonable hearing.

              I understand this can be done

              • by djdavetrouble (442175) on Saturday July 12 2008, @06:41PM (#24167653) Homepage

                I upgraded from onboard audio to an X-Fi Fatal1ty. My Kill to Death ratio went up by about 25% within a few days.

                NEVER underestimate the power of.... Celebrity Endorsement !

                Get the Fatal1ty mousepad to go up another percent.

        • The same people who also buy 1kW power supplies
        • >>Who are these people who buy sound cards?

          Offloading the sound processing to the SB X-Fi bought me about 10-20 fps in games when I benchmarked it immediately before and after installation. On-board sound requires your CPU to do math, and if you have a lot of stuff going on, with various filters being applied to them, it makes a noticeable difference. More importantly, it stopped the occasional hitches and slowdowns I'd get, especially with winamp running in the background.

          Plus, the sound that comes o

  • 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.
    • by LanceUppercut (766964) on Saturday July 12 2008, @02:49PM (#24166003)

      How do you know that it indeed works in a full-fledged UDMA mode and not in some half-assed workaround mode, used specifically because of the problems in question existing in the cards' controllers. Did you reverse engineer the camera's firmware?

      • It would not be possible to get the performance the camera gets if it did not use DMA mode. It may be that it uses 1K blocks like the article says they used for a workaround. The cards also work fine in UDMA capable external readers, otherwise I would be seeing a ton of messages in the camera forums I frequent. Sandisk and Lexar UDMA CF cards are frequently used with the new cameras that can support it and are widely used by professional photographers.

        Also, the article said that the Sandisk card they tried worked. They did not mention anything about Lexar but did mention problems with Transcend, which is not certified for my camera.
      • I can't vouch for cameras, but I created a CF-based hard drive to boot my Windows XP tablet PC using one of these [addonics.com]. It has two CF slots, and my tablet's IDE controller supports UDMA. In Windows, you can check what UDMA/PIO mode your disks are in by clicking the Advanced Settings tab on the IDE adapter's property page in Device Manager.

        The first device I tried was the cheapest UDMA CF card I could get my hands on (233x 16gb Ritek), and after a few disk driver errors, it dropped out of UDMA mode and the laptop

        • 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 [newegg.com].

          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 -- au
  • by Gothmolly (148874) on Saturday July 12 2008, @02:48PM (#24165991)

    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.

    • This news is actually extremely important to me; I bought a CF to IDE adapter to mess with and am thinking of converting two of my machines to use compactflash cards:

      1. Laptop
      2. PC in garage

      The PC will probably get the first set-up; no need to run the aging 80 gig hard drive into the ground. Especially in the harsh conditions there. The laptop will be a project "if I get around to it" but would be cool to do, what with all of the SSD talk nowadays.

      Anyone have any ideas on Linux on CF (limiting writes et

  • by kennyj449 (151268) on Saturday July 12 2008, @02:49PM (#24165997)

    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.

    • Re: (Score:3, Informative)

      I can at least vouch that the Lexar UDMA card works as advertised in my UDMA capable camera. Fake CF cards are a big problem. Avoid buying CF cards on Ebay and only buy from reputable dealers or you might get a fake Chinese card and have nothing but trouble.
  • I run an 8 GB Transcend 133x [transcendusa.com] 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.

  • God damn it, why can't I have that last name?

  • by Migraineman (632203) on Saturday July 12 2008, @03:46PM (#24166365)
    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.
    • by riflemann (190895) <riflemannNO@SPAMbb.cactii.net> on Saturday July 12 2008, @08:49PM (#24168681)

      A while ago I built my mythtv frontend, (based off a T-Online vision s100 box) and elected to use a CF card for storage within the unit - the box is entirely free of moving parts, so CF made sense.

      I bought one of those IDE to CF adapters off ebay, and found that when I turned on DMA, the IDE bus would basically lock up, and pretty much end up useless.

      After a lot of fiddling and digging around, I discovered that the adapter did not connect the required pins for DMA transfers to work. Old-skool CF never had DMA, so this extra pin is only a recent addition to the standard.
      Anyway, I soldered in a short wire to hook up this pin, and now I get respectable dma transfers.

      The moral of the story - it might not be the CF card that is causing DMA failure, but the adapter it's hooked into.

  • 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 guess FTP isnt good enough for you?

    • Re: (Score:3, Insightful)

      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.
      • Re:Good work (Score:4, Informative)

        by baxissimo (135512) on Saturday July 12 2008, @03:06PM (#24166105)

        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.

      • 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.

      • 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.

          • Re: (Score:2, Informative)

            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?
              • 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.

    • 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.

        • I hope you do understand that posts on slashdot can actually be replies to other posts, not just to the article itself.

        • Maybe I have more money than you and can look at more cameras?

          Probably. I'm just a code monkey these days.

        • Re: (Score:3, Informative)

          "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."

    • Maybe you need to look at more cameras, then. The last couple I've owned have done that.

    • 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 ?

    • Re: (Score:2, Informative)

      Perhaps hardware which is extensively documented, with all documentations/plans/schematics licensed under the GFDL or similar?

      Just my $0.02

        • If the schematic files are available in source format, and possibly the CAM information (Gerber files, drill files, etc), I'd call that open source, since that's the material used to generate the boards. It's one thing to print a schematic. It's quite another to publish the board layout in an editable form.

          I haven't looked at what this project is doing, but it sounds like the latter.

          --Joe

          • Re: (Score:2, Informative)

            Yes, we do have it all posted, but unfortunately we can not post the PCB layout "source" - this is the last part of the camera design were I use some proprietary software running on top of the proprietary OS and saving data in proprietary format. It is a shame, I agree - but I could not find a good FOSS substitute. I would definitely pay twice (or more) for the same functionality GPL-ed software, maybe it is possible to to make a pool to buy some software to be free?
              • Re: (Score:3, Interesting)

                Yes, I know Eagle. But it can not handle the the designs we have, and it is still not a free software. So - we'll have to wait.
                Elphel would put some $50K in the pool (if there was one) to buy a serious PCB CAD software no make it GPL-ed.
    • What the hell is an open source video camera? I've heard of open source software, but what the hell is open source hardware??

      Um, if I were to guess, this would be a hardware video camera with open source firmware, or a reference platform for building a functional video camera like a PC, where you'd plug together lenses, buttons and sensors in a case. It probably would look like RED [red.com].

    • Re: (Score:2, Informative)

      Compactflash cards are available in larger sizes, work as IDE devices (which SD cards do not afaik) and are faster.

    • Re: (Score:3, Informative)

      Compact flash is/was the standard on the high end. SD is making some inroads, but for a long time, fancy cameras had CF slots and that was your choice.

    • Re:Compact Flash (Score:5, Informative)

      by Sen.NullProcPntr (855073) on Saturday July 12 2008, @03:34PM (#24166273)
      I'm guessing size is the main factor, according to Wiki [wikipedia.org] SD has already maxed out at 32GB while CF has a theoretical max of 137GB. You need a lot of storage space for video.
    • Re:Compact Flash (Score:5, Informative)

      by AndreyFilippov (550131) on Saturday July 12 2008, @03:57PM (#24166433) Homepage
      Two of the reasons wewrw already mentioned: 1 - I've got IDE interface "for free" in from the processor chip, just needed connector. 2 - CF cards are higher capacity. 3 - I can download CF and ATA specs from the Internet, while SD (when I checked it) was much more difficult to get.