Usb & Firmware Flash Problems Solved!


mangobrain

Still Fresh
Joined
Dec 1, 2005
Messages
5
I had tried everything with my PNY 256MB, and couldn't get my GP2X to upgrade its firmware, or to fully work as a USB device. The card had been formatted in Linux, in Windows 2000, in Windows XP.. when I eventually got the USB to work (more on that below), I even tried formatting the card whilst inserted in the GP2X, but found it couldn't read any of the files written to it.

To fix USB, I effectively downgraded my PC to USB 1.1 only, as per the advice in this Gentoo forums post. Basically, if you have USB 2 support in Linux compiled in as a module, then unload that module - it'll be called "ehci-hcd". If you have it compiled in statically, then obviously the first step is to recompile your kernel with this as a module ;)

To fix firmware flashing, the advice appears to be simple: get a SanDisk card. Even the official instructions state that SanDisk cards work well. Just earlier today I was utterly unconvinced that brand made any difference - now I'm not so sure.

So what exactly is it about the card that makes all the difference?

Here's what fdisk has to say about the partition table on my PNY 256MB:

Code:
Disk /dev/sdb: 255 MB, 255066112 bytes
8 heads, 61 sectors/track, 1020 cylinders
Units = cylinders of 488 * 512 = 249856 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1        1020      248849+   b  W95 FAT32

And here's what it has to say about the partition table on the SanDisk 256MB (when inserted in a card reader, not in the GP2X via USB):

Code:
Disk /dev/sdb: 252 MB, 252968960 bytes
16 heads, 32 sectors/track, 965 cylinders
Units = cylinders of 512 * 512 = 262144 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1         965      247024    b  W95 FAT32

The crucial difference is, most likely, in the cylinder size. The number of heads and cylinders are also "nicer" - i.e. both powers of 2. Interestingly, when the SanDisk - partitioned from the card reader, as above - is inserted into the GP2X and read over USB, it appears as if it was partitionless (as if it was "superfloppy" formatted), with cylinders of 488 * 512.

I am now a happy bunny :)

I do have the "scanline" issue now that I've done the firmware upgrade, and some slight vertical line flickering (not when using the joystick - when accessing the SD card would be my guess), but I'm confident that at least the first of these two issues will be fixed again in a future firmware update. As for the flickering, it seems I'll have to wait until we hear the final word on the possible product recall, along with several others here from the sound of it.

P.S. With the firmware upgrade & new utility version, a test video I'd made (resizing an AVI in transcode & encoding with xvid 4) that used to play at the wrong speed now plays correctly. So yes, there are genuine reasons to keep trying the upgrade.
 
Back
Top