rigred / gpu-schmoo

A repository documenting fake GPU's and VBIOS hacks.
19 stars 3 forks source link

Need certainty around which tools to use #2

Open xenek opened 5 years ago

xenek commented 5 years ago

I've one of these cards. I bought it for fun, also, as a gamble, in case it performed OK at the price point (irrespective of the labeling). Even with poor performance, I wished the card was reliable. It wasn't. GTA5 would crash at startup. (not that that's necessarily a bad thing!)

I've emailed the seller extensively and they ultimately responded with 'they can't share anything as it's private IP', and 'we can't give you our name, our address, company location' and 'we can't help you with the tools' and 'have a great day, come again!'.

So, I have to nuke the vbios myself. Yet, I'd rather not purchase tools that aren't suitable due to the environmental cost. So I need help with the tools, but don't mind sharing a journey.

I'm a PC tech, so have all tools and soldering iron and multi meter etc. I don't have specialized programmers or physical connectors.

Tool 1. The programmer and clip.

I'm assuming this will work. (taken from Australian Ebay, which ironically, was the source of the fake card I purchased)

CH341A 24 25 Series EEPROM Flash BIOS USB Programmer + SOIC8 Clip On-Board

https://www.ebay.com.au/itm/CH341A-24-25-Series-EEPROM-Flash-BIOS-USB-Programmer-SOIC8-Clip-On-Board/192857515847?_trkparms=aid%3D222007%26algo%3DSIM.MBE%26ao%3D2%26asc%3D20160908110712%26meid%3D7770c50b0af640fa97671233fae8338e%26pid%3D100677%26rk%3D2%26rkt%3D6%26sd%3D273740009786%26itm%3D192857515847&_trksid=p2385738.c100677.m4598

Tool 2. Windows computer.

In this case, an Asus laptop, relatively new. Windows 10 64 bit, admin user account. Is java needed? 64 or 32 bit? Internet access needed? Legacy USB 2,3 or the new USB 3 with the funny thunderboltish style port?

Tool 3. USB hub.

This is to avoid connecting programmer directly to a newish laptop in case something shorts out etc.

Tool 4. Software used

The software stack. (no idea!) Is this stack safe? Do I install backdoors trying to use it, or is the software legal? Is it time-bound, is there a cost, are there open-source variants, is it better to use on windows / OSx or Linux? Is it command line or GUI ? Is using it worth my time, or am I learning something I'll only ever do once... ?

rigred commented 5 years ago

The programmer and software is absolutely fine. It's one of the preferred tools for doing in-circuit EEPROM work. (that is without desoldering the flash chip).

If you're not comfortable with using the software on a windows machine directly you can also use open source flashing software like flashrom (GUIDE HERE) in linux. (Just stop before the part about Neutralize Intel ME the guide is for something else with only the flashrom part being applicable to you.

Happy Hacking! :D

rigred commented 5 years ago

Also apologies for the delay, quite busy with a work project. Life and all that :)

xenek commented 5 years ago

Parts ordered!

xenek commented 4 years ago

Ok, it's late - but no rush on projects like this.

-answers to some of my questions

Software used is 7zip CH341A programm v1.34.rar

This is gui software, and it's pretty easy to use.

First install 7zip Unzip the RAR file it by right clicking - unzip to a folder. Check it for viruses - seems clean so I ran it as admin (right click on the exe in the folder left after you unzip the rar)

Once running, you can use the detect button to detect the chip. There's a few youtube vids showing you, but here's the rough process I followed.

Connect the USB programmer on it's own first. It should make the bleep noise to indicate a USB device has been plugged in and a red light comes on and stays on. That is good.

Unplug it.

Connect the adaptor that goes onto the SPI flash chip. Connect it at the video card board and at the programmer. Follow the pictures below to see which way it's connected.

Once connected, plug the USB programmer in again. It should make the same usb connection sound, and the red light should come on like before.

If it doesn't - if the red light just flashes and you don't hear a sound - unplug it immediately. You've connected it backwards - not paying attention to pin 1 (red line on cable) either at the board end or at the programmer end. Correct the connection and try again - in my case I connected it backwards a few times and didn't damage anything, but I was quite fast unplugging it all when it didn't work.

If you've got it physically connected, and the programmer made the right USB sound, and the red light is on, it's time to check the software.

Press the detect button. An entry should appear showing detect chip ID: $7F, $9D, $42, $11

If the entry says $00 $00 $00 $00 then it's because the physical connection to the SPI flash chip on the board isn't good. Some videos suggested cleaning the top of the chip where the leads are exposed and connect to the programmer clip with methylated spirits or alcohol - it's possible there is a conformal (thin clear plastic) coating insulating those that you can't see immediately.

I didn't clean the leads - I just reconnected the clip over and over again and hitting detect each time, being very careful to line the clip up properly each time. It took 10 goes at one time before it detected the chip even though it was appearing to be connected fine - so be persistent. I also found that having the clip a fraction of a millimeter up off the board instead of flush against the board seemed to give better results.

Once it detects the chip, you can read the current bios. Then save it - give it a good name and put it somewhere so you don't loose it. It's entirely possible you'll need it during the testing process again.

OK!

You can now open a bios to program. The Auto button wipes/erases/writes/verifies in one click. Or you can do that manually.

I always got a red error during the verify saying mismatch or something similar. It seems the program never went on perfectly. I just ignored that - when I finally got a good bios, it was no issue, and you can re-flash the chosen good bios a second time with NVFlash if you're concerned the programmer missed some bits. I use -6 as the only option - like this: NVflash64.exe -6 bios.rom

I got my bios from here.

https://www.techpowerup.com/vgabios/?architecture=NVIDIA&manufacturer=&model=GTX+550+Ti&version=&interface=&memType=GDDR5&memSize=1024&since=

And - my board has 4 chips - supposed to be 1GB, but it's actually only working as 730 MB or something close. I'm guessing that's normal as I tried about 4 different bioses, all made for 1GB, none of them allowed the card to have 1GB in any of the software I ran (HW info, GPUz). Go figure.

Another thing - there are quite big differences between the bioses. I flashed perhaps 10 times, about 5 times using the USB programmer and about 5 times using NV flash once I got rid of the rubbish fake bios. I used Passmark Performance test 10 to do 3d benchmarks on the card. And the speed went between roughly 1000 to 1600 from memory, so with the right bios you might substantially increase the performance of this fake card. No idea why/how.

Some bioses were unreliable, showing gfx corruption. Two of the bioses listed as for the GTX 550 TI, but actually, for whatever reason windows detected them as GT 450 or something like that. So be prepared to rapidly smash through a bunch of bioses in the course of an hour, running performance test in between. I also used Asphalt 9 (a free car racing game from the windows 10 store) and a legit version of the Witcher - Wild Hunt - using gog's launcher, also to test.

Finally, even when I got a good bios, I was still not happy with the performance. After all, it's a pretty low spec, old chip on the card. So I amped it up using the MSI afterburner software to further overclock the card after I got a bios that was reliable and fast. That software works on even Palit or Asus bioses. It's how I got the Witcher running OK on low gfx settings, such that my kids were happy playing for a while. I ended up running core clock at 1010 MHZ stable, without crashes. If I push it up to 1050 it freezes up in the Witcher.

I'm using NVidia driver version 391.35 MSI afterburner 4.6.2

My card / GPU chip is a GF116-400-A1 GTX 550 Ti - sold as a GTX980

GPU Chip identifiers 12C5B359 1220A1 S Taiwan PHF761.M01

The Vbios chip I am programming is labelled U5. Pin 1 is indicated by a dot (line it up with the red wire of the grey ones on the programmer clip)

Vbios Chip identifiers Pm25L0020 8E1645 P10371TG

RAM Chip identifiers SK hynix H5GC2H24BFR T2C 407A

4x GDDR5 chips, total 1GB RAM ? https://www.skhynix.com/eolproducts.view.do?srnm=H5GQ1H24BFR&rk=26&rc=graphics

Some guidance from here:

https://www.techpowerup.com/forums/threads/fake-gtx-960-re-flashing-correct-rom.250959/

Eprom software & process http://www.dwdvb.com/ch341a-usb-mini-programmer-latest-software-download/

Bios I settled on had the fastest speed. This one.

Palit.GTX550Ti.1024.110222.rom

xenek commented 4 years ago

ch341A programmer IMG_3522 IMG_3523 IMG_3524 IMG_3525