VIA VL80x USB 3 PCI-E Firmware Utility (Code 10 error)

this is what I have at present. Sorry, i dont understand 3.change the pcie at last ??

@xlr8r move the card at another pcie slot and retry.


it doesn’t make a sense to move card to other slot as it is already detected by flash tool. It just didn’t recognize the SPI flash chip. As I look at the INI file, the EON EN25F10 flash is already present:


So I have a suspection that you have fake (remarked) flash chip that is not really EON but some chinese alternative. Unfortunatelly the flash tool doesn’t print the flash JEDEC ID (e.g. 1C3111). I had to desolder the chip and use my SPIPGM to read correct flash ID
I was alble to flash newer FW but it was not cause of my error code 10. This was caused by PAE patch that I use in my WinXP. Without it the VIA driver worked normally.

Hi RaYer

thanks for getting back to me on this, it really has my head wrecked. I believe you are correct in what you are saying, that the chip must be a clone/fake if 1C3111 doesn’t work.

it is strange though that the flash tool does let me erase it, but not write new code back on … ?

I looked up the Datasheet, here (EON F10-100GCP) and info seems ok for the flashtool, but chip just not detected.

Is there any way i can flash this chip without knowing the correct(fake) FlashID ? (and without removing it from the PCB), thanks

(its very hard to read the print on the chip below, but I think it does say EON F10-100GCP ? (i dont know what the numbers below that mean)

@RayeR it does make sense when a pin does not make a good contact with motherboard. I have seen it when the flash detect the card and i couldn’t flash it. That is the reason that i ask to change slot.

thanks for info

tried 3 other slots, same result unfortunately

I have now given up after a week of trying…beaten by a cheap Chinese clone chip…bah!

chucked card in bin and bought new one on Amazon.

Hi, generally near all SPI flash has the compatible read and chip erase commands so it should always work. But unfortunatelly there are differences in write commands - this was never standardized.
If you replace your flash chip by real EON or other supported chip in the list it should work then.

interesting, I never had a bad contact in edge connector. But when it happen your system would get many PCIE errors that would cause Windows go crazy or Linux throwing a DMESG errors. Once I tested PCIE to PCI bridge, that used USB 3.0 cable connection between two parts and it had unreliable connection an my WinXP hanged instantly when I touched the connector while running :slight_smile: Piece of chinese crap…


i might just for fun just do that…

can you recommend a VERY cheap programmer (perhaps from ebay) that would suffice ?


well im back up and running with the card. in the end just a two minute fix…

Cost me £12.99 (1 x Amazon programmer)

i know thats more than a card would cost, but at least now i have a programmer to play with lol…

thanks to all who helped.

OK, good job. So what is the flash ID readed by programmer?

I did some test of various firmwares and found that latest version for Rpi is probably not compatible with this card, simply it doesn’t work with USB 3.0 devices, so I had to flash back older version and test how it works:
0138A1 USB 3.0 devices are not detected, only USB 2.0 / 1.x
0137AB USB 3.0 devices are working in HighSpeed mode only
013705 USB 3.0 devices are working in SuperSpeed mode as expected so I stay with this FW.
I also checked speed under WinXP+backported driver and Win7-x64 with VIA driver and it was the same but I checked only with slow 4200RPM SATA disk with 42,5MB/s max speed so it does tell anything, I’ll test later on some faster disk…

Sorry to resurrect an old thread but I want to leave this here for anybody who has a VL805 with AT25F1024 flash. I spent way too much time trying to update this $5 USB card.

Add the following to SpiFlash.ini:



FlashID = 202011

Flashing results:

Targeted VID = 1106
Targeted PID = 3483

ISP file size: 24806(DW)
FW file = 0138a1.bin
VL805/VL806 is found.
Bus=b, Dev=0, Func=0, Chip Verision=B1

Match gFlashType No. = 21, FlashType = AT25F1024
spi erase
pageSizeDW = 64
wait while programming…
Update ISP Success.

@TheMaskedMan Know you pleas share some knowledge how you discovered all these magic numbers etc?