This is a patched version of nvflash, nVIDIA’s utility for modifying the vBIOS (amongst many other things). This version allows you to flash nearly any signed BIOS to your GPU. Custom BIOS bypass coming soon.
Before using this tool, make sure you back up your factory ROM. Seriously, do it. You only have to do it once per card. This 10 second process is how you protect yourself against any potential failures, and failures DO happen randomly for absolutely no reason. Back the file up to another computer. Do not lose your factory ROM, you may never find a replacement that you are certain matches perfectly because the installed BIOS is what truly identifies your card. If you have a dual BIOS switch, back them both up. Instructions for doing so are below.
The factory nvflash comes with built-in limitations. One of those limitations is that the GPU ID, Board ID, and other IDs of your GPU must match any vBIOS you attempt to flash to it. While the PCI Subsystem ID can sometimes be overridden with -6
, the internal board ID and others cannot. Essentially, the BIOS had to have been made for your particular PCB and chip combo.
For most users, that limitation makes sense. However, there are those who seek maximum performance from the hardware they buy. Have a 1.07v limited 4 series and want the full 1.1v? Want to flash a 1000W XOC BIOS to one of those 1.07v cards? Planning on slapping an AIB BIOS onto your FE? You’ll probably need this tool.
nvflashk enables you to flash almost any nVIDIA BIOS to your GPU. Whether or not it will actually work is a different story, but you should always be able to flash back even if your power cuts out mid-flash. The GPU will either go into a fallback mode with generic display drivers, or you’ll simply have to reflash using your iGPU, the secondary BIOS on your GPU if you have a dual BIOS, or another computer. One way or the other, you cannot permanently damage an NVIDIA GPU from a BIOS flash in and of itself. The results once you try to put load on it, however, cannot be guaranteed.
The base of this tool is copyright nVIDIA and has been provided in a modified fashion for the sole purpose of modifying personal property. This is dangerous and you will have no one but yourself to blame if things go wrong. Your warranty will be null and void the second you so much as think about using this tool.
NVIDIA, if you’re seeing this and don’t want me distributing nvflash itself as is your right, despite it being available on TPU, I will convert this into a patcher.
God speed, overclocker.
So wait, this gets me 1.1v on my 4090/1.11v on my 4080 again? I can run those fancy BIOS that gave me ‘Board ID mismatch’ now?
Yep, if you’re one of the unlucky bastards that bought a 4090/4080 later down the line, you can flash full voltage BIOSes to your neutered card now. It appears that it was only a BIOS change, not a physical change, that enforced the 1.07v limitation.
I won’t tell you which BIOS to use, though. That’s on you and the community to figure out. So far this has been confirmed on multiple 4090s and 4080s. We’ve even flashed a STRIX BIOS to a Founders Edition 3070. This means that not only do you get full voltage back, you also get to flash any of the higher power BIOSes that you wish again.
Test cases
Successful
- 4090 STRIX XOC 1.1v BIOS flashed to 4090 TUF OC card with 1.07v (4090 voltage fix confirmed!)
- 4080 flashed from 1.095v to original 1.11v BIOS (4080 voltage fix confirmed!)
- 4090 Founders Edition BIOS flashed to 4090 TUF OC card (this was supposed to be impossible due to ‘different bios chips’)
- 3070 STRIX BIOS flashed to 3070 Founders Edition (Flashing AIB to FE 3xxx series confirmed!)
- 4090 STRIX XOC
nvflashk allows but causes no display or otherwise cannot reflash itself
Note that these can still be experimented with and reflashed, you just need a way to reflash without that GPU. See ‘Recovery when something goes wrong’ below.
- Flashing a 4080 BIOS to a 4090
GPU will reject the ROM (nothing happens)
- Cross-flashing generations i.e. 3xxx to 2xxx
- Cross-flashing workstation/non-workstation, i.e. 4090 to an A5000. They’re not actually identical though, which may be why.
Not yet tested
- Unsigned/modified BIOSes
- 2xxx/3xxx series that had revisions which locked out older power-boosted BIOSes
What does this actually bypass?
During the -6 command, nvflash still verifies a few different things against the BIOS ROM you are trying to flash. This version has overridden all of them and will allow you to flash any vBIOS to any card.
In theory, this includes the boards in the 2xxx and 3xxx series which received revised chips that then would not accept the higher power limit BIOSes available.
The items that are checked are:
- GPU PCI Device ID (GPU chip, i.e. 2xxx/3xxx/4xxx)
- PCI Subsystem ID (PCB ID)
- Board ID (PCB+GPU ID)
- Hierarchy (Unknown, potentially Lovelace/Turing/etc)
- A couple other minor items that appear to just be software-defined metadata
nVidia has implemented their own ‘mismatch bypass’ within the nvflash code, and this version has forced that bypass to be enabled at all times. This makes this a very, very dangerous version of nvflash. However, it will still confirm you want to perform those bypasses and only when they’re necessary, unlike former versions of patched nvflash. This will not flash all willy nilly.
Recovery when something goes wrong
First off, thank you for your contribution and courage! It’s almost impossible to actually permanently brick an NVIDIA card in the sense of a BIOS that won’t boot. If you burn out components by putting load on it that the hardware wasn’t designed to handle, that’s another story. But you should always be able to flash back if it fails to upload the ROM.
The only question is whether or not you’ll have to use your iGPU or another computer to flash it back. In many cases, the answer is no: the GPU will go into fallback mode and you can flash it while using it. But if you somehow upload a BIOS that, say, has no video output.. you may be in trouble without another computer, PCIe slot, or dual BIOS GPU. Doing something like flashing the 4080 XOC BIOS to a 4090 will cause no video outputs and I had to use my BIOS switch to recover.
On the other hand, when I attempted to flash an A5000 BIOS to my 4090, the GPU simply rejected the firmware, regardless of whether nvflash wanted it there or not, and I just had to reboot my machine:
Update display adapter firmware?
Press 'y' to confirm (any other key to abort):
Reading EEPROM (this operation may take up to 30 seconds)
Nothing changed!
ERROR: Invalid firmware image detected.
I’ve also had mid-flash failures which resulted in this message:
WARNING: Broken image found, last flashing process might be interrupted and not complete.
But again, a simple reflash.
If you want to be safe when flashing, you need at least one of the following, sorted from easiest recovery to hardest:
- An integrated GPU and output on the motherboard. You simply use the main output while you flash the GPU as normal.
- A GPU with a dual BIOS switch. Shut down, flip the switch, start up, disable device in device manager, flip it back, flash, reboot. You can use
nvflash64k.exe --version
to show what is on the card, andnvflask64k.exe --version file.rom
to show what is in a file, to ensure you are flashing the right things. Make sure you back up your second BIOS ROM too in case it does something different you want to restore! - An extra PCIe x16 slot and extra GPU that can fit (probably only with a riser cable) and you have extra power cables for, in order to use a working GPU to flash the broken GPU.
- Another computer with an iGPU or extra PCIe slot as described above.
Versioning/Support
The current version is 5.814.0.k1
. The version will be the base nvflash version i.e. 5.814.0
followed by a .kN
. This way, if I have to release a patch to my patch, you know which version you have.
Instructions
First off, know what you’re doing. Yes, technically speaking, flashing in and of itself should be a relatively safe ordeal. You can always flash back and many GPUs have dual BIOS switches.
But god knows what may be in those black box BIOS files and what may make them unique to one card or another. You are on your own here – your GPU may burst into flames because it was missing a capacitor or something. Some BIOS have absolutely no thermal protections and will let the card melt itself to death. But that’s what XOC is all about, baby.
Remark: Never flash any GPU unless you know how to unbrick the card with 2 pcie slot for flash recovery… Use at your own risk.