Announcement

Collapse
No announcement yet.

FAT-controller Rev 0.1.0.10 crash on read byte under Windows 7

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • FAT-controller Rev 0.1.0.10 crash on read byte under Windows 7

    In trying to debug memory card operations on my uLCD 32PT(SGC) using the latest FAT controller I had the following crash. (See attached screen dump). I had similar crashes on other RAW file system operations.

    I've tried various combinations on the 2G micro SD card:
    1 FAT 16; 1 FAT 16 1 RAW; all RAW
    and none of the SD card operations seem to work, and many crash FAT controller,

    Attached files
    Prof. Jim Hoover
    Dept. of Computing Science
    University of Alberta

  • #2


    These kind of errors are caused by an error attempting to read the uSD card. (as you have guessed)

    How are you powering the display? (If it's using an MB5 you need to up the power available from the uSB port)
    Mark

    Comment


    • #3


      I just tested it powered with a 500 mA (was mW in original posting) 5V source, and got the same problems.
      I've formatted the 2G card as 2 partitions: 1 G FAT 16, followed by 1G raw partition.
      It is interesting that the card works fine with my 4D Systems uDRIVE-uSD-G1. FAT-controller has no problem reading and writing to the card, both DOS FAT and raw.

      I'm now talking to 4D support directly. FYI here is the result of my recent test. Note the FAT-controller crash dialogue.

      Thanks.
      Attached files FAT-controller-log.txt (1.1 KB)
      Prof. Jim Hoover
      Dept. of Computing Science
      University of Alberta

      Comment


      • #4


        The datasheet says the display typically requires 750mw, you need to allow more for the uSD card (especially when they are first connected).

        Try 1500mw to see if it gets rid of your problems
        Mark

        Comment


        • #5


          Sorry, my mistake, wrong units in previous posting (the same mistake I berate my students about). I in fact did use a 5V 500 mA regulated supply, for a nominal 2500 mW. So I seem to have loads of power. The display after reset was only drawing 120 mA.
          Prof. Jim Hoover
          Dept. of Computing Science
          University of Alberta

          Comment


          • #6


            OK, problem solved, and here is a piece of information you should add to your info about the the touch screen.

            You need to use a micro SD card that supports the SPI interface, and is 2G or less. The SPI is important, as not all uSD cards support SPI. It's not required, unlike for the full size SD cards.

            SanDisk 2G cards support SPI and work.

            This bit of information would have saved me quite a bit of time. I'm surprised that 4D systems didn't have this information more readily obvious.

            Regards.
            Prof. Jim Hoover
            Dept. of Computing Science
            University of Alberta

            Comment


            • #7


              You need to use a micro SD card that supports the SPI interface, and is 2G or less.

              I have created an FAQ about the SPI requirement. Could you please put the brand and size of card that wouldn't work in there to help others.

              http://4d.websitetoolbox.com/post?id=5067632

              Cards do not have to be 2gb or less, all our current displays support SD-HC

              I'm surprised that 4D systems didn't have this information more readily obvious.
              So am I Actually, I'm sure it was quite 'in your face' in the datasheets at one time, but it seems to have 'faded to black' in more recent revisions.
              Mark

              Comment


              • #8


                I'm experiencing some very peculiar things along these lines as well.
                I've got a bunch of Kingston HC uSD cards (4GB) and so far only one of the bunch has worked. While the silkscreen and logo are nearly identical, the one that works is marked slightly differently, and shows up with a slightly different size in RMPET.
                The successful card is actually a little bigger (3.69GB, 7,741,440 sectors) than the others (3.68GB, 7,716,864 sectors), which I was thinking might be related to the problem, but changing the partition sizes did not seem to have an effect.
                Aside from different batch markings, the one that works is marked with SDC4/4GB 44 near the FCC logo, and the others are marked with SDC4/4GB 56. All are class 4 cards, and came from the same vendor, in the same packaging.
                I'm not convinced they're power supply issues, as other cards are working fine as well.
                Does this sound like an SPI problem? Is there any convenient way to tell using 4d tools?

                Comment


                • #9


                  Sorry to say, but from what you are saying the most likely issue is Fake memory cards. We've seen fake 4gb Kingstons, dunno why that is the most common brand the fakers use.

                  The ones we saw would tend to work in a PC (which uses 4 wire SD protocol) but not on our displays (which uses 1 wire SPI protocol).

                  Their lifespan in a PC was severely restricted and they did not benchmark as Class 4, they came out closer to Class 2.


                  Both the cards we have have ‘A00LF’ printed on the front of them, amongst other things. One has very poor quality screen printing, the other has the batch number printed at the same time as the other card information.



                  For more information on Fake cards see here http://www.fake-memory.com and here http://www.bunniestudios.com/blog/?p=918



                  One of the cards fails to init because it rejects ACMD41 as invalid. ACMD41 is an SPI specific command that is needed as part of the initialization of uSD cards in SPI mode. Rejecting this is not the correct way to indicate lack of SPI support, so there is something dodgy about this card



                  The other card inits, but the CardId data contains invalid information, Manufacturer ID is 0xAA which is way too high, OEM id and Product name are null and Product Revision is 0. This card in some ways appears to work, but it is highly unreliable for both reads and writes.
                  Mark

                  Comment

                  Working...
                  X