[Tool] EFIFlash v0.80/v0.85/v0.87 for Gigabyte Mainboards

Hello. I have very strange problem with flashing my motherboard Gigabyte AX370M-DS3H which is branded with TERRA logo. There is F23 BIOS. And now: Q-flash giving Oemid Mismatch error. So I tried 4 versions of moded efiflash, I tried flash F23 (this have older date than installed on motherbord), F24, F31 and finally the newest F51m. The flashing seems to be successful. Always reads the Bios file, writes, verifies, restarts, but i have still F23 bios with TERRA logo. Any sugestions?

@erni123321 Hi and welcome to Win-Raid forums.

For your OEM AMD chipset you may need to use a different tool such as Flashrom.

As I do not own any AMD motherboards I can’t test this - if you can’t recover from a bad BIOS flash it might not be worth the risk.

I have a Gigabyte B550M DS3H AC and I am using the Efiflash_v0.87_DOS_Mod but for some reason it wont complete the “Transferring Bios Data” and it does not reboot automatically. When I reboot manually the bios has not changed.
If I use the original Efiflash with an original bios file it works fine but I cant use my modified bios. I have tried all of the different modified versions of Efiflash.
Any idea why it is not working or what I can do instead?

@SteveW Gigabyte has implemented new security for the B550M DS3H AC BIOS as of F14.

Once you have flashed any capsule BIOS you cannot downgrade or flash a modified BIOS using Q-Flash or EFIFlash.

As I mentioned in the post above, you could try Flashrom - other than that you will likely need a hardware programmer.

1 Like

Hey all,

My goal is to flash a retail BIOS onto a GIGABYTE MODEL X 11TH (intel) prebuilt that seems to have an AORUS Z590 XTREME motherboard, but Q-Flash and EFI shell methods have not worked. Q-Flash tells me that the BIOS I’m trying to install is incompatible, and when I tried via the EFI shell… nothing seemed to happen. Perhaps I did it wrong in the EFI shell.

I bought this thing secondhand for an absolute steal of a price, not aware that the thing comes pre-loaded with a dummy-proof BIOS that disables overclocking. Lesson learned, I guess. Nevertheless, I’ve spent a little over a month searching for some guidance on how to go about this. Surely it must be possible, right? I’d like to know if any of these EFIFlash tools posted here could help me out. If not, surely an SPI programmer could get the job done, no? I’m not a layman when it comes to technology by any means, but I’m definitely not up to speed on BIOS hacking/modding. If any of you brilliant folk have any insights on how to go about this, or any guides to SPI programming (given that it is possible in my case. By the way, is it?) I would greatly appreciate it.

@jxding Hi and welcome to Win-RAID forums,

You can possibly flash an official Gigabyte BIOS to your motherboard using Intel’s Flash Programming Tool (FPT).

You will need to download the CSME Tools for your specific chipset (either CSME System Tools v15.40 or CSME System Tools v15.0) depending on which version of ME firmware is currently on the board.

You should read this thread and also download the CSME tools :

Intel (Converged Security) Management Engine: Drivers, Firmware and Tools (2-15)

Before you attempt to flash the motherboard please do a complete backup of your current BIOS using the Windows version of FPT from a command prompt:

fptw64 -d bios.bin

WARNING: Unlike Qflash or Efiflash, FPT will not check if you are flashing the correct BIOS to a matching motherboard so you can brick your motherboard if you cross-flash the wrong BIOS or file! Be very careful!

2ND WARNING: As your motherboard has an Intel (2.5GbE) Gigabit Ethernet Adapter you can potentially overwrite (erase) the MAC address(es) with FPT causing it to no longer function! Although the MAC address may be recoverable it is a big hassle that you will want to avoid. You will know if you have erased it if it displays 888888888788 as the MAC address.

To check if your motherboard has any Intel ethernet adapters and at the sametime backup the MAC address(es) type the following commands;

fptw64 -gbe -d gbe.bin

If you don’t have an Intel NIC (or there is no GbE region in the BIOS) you will see the following;

“GbE region does not exist!”

DISCLAIMER There is always a risk when flashing the firmware of any motherboard. You must decide if you think the risk is worth it - if you don’t know how to recover your motherboard from a bad flash then I don’t recommend that you attempt a BIOS flash. I am not responsible for any problems that arise from your actions. It is recommended to have access to a hardware programmer to recover in the case of a brick.

After copying the BIOS file you want to flash into your FPT folder use the following command to flash the entire EEPROM (all BIOS regions are overwritten i.e. Descriptor, GbE, ME and BIOS);

fptw64 -SAVEMAC -f BIOSName.bin

The command -SAVEMAC will retain your Intel MAC address so don’t leave it out.

If you have any questions please ask.

Thanks chinobino,

I do have a few questions. I made the grave mistake of using EasyTune to enable XMP (I was desperate), which my computer did not seem to like very much at times. Sometimes the computer would just randomly blackscreen, no BSOD, and everything would seem to stop working. The only way I know to fix it is by holding the power button. This issue has persisted even after all overclocking was disabled and Easytune was uninstalled/memory integrity restored. Ran windows memory diagnostic (haven’t got around to memtest86) but nothing turned up. Reset the CMOS and now my PC doesn’t shutdown properly when I click shutdown (it says “Shutting down…” and then after the screen goes black it immediately brings me to the login page). My best guess is that this is due to BIOS corruption of some kind, so my first question is, should I try to reflash the current BIOS to the chip before using the FPT tool to back it up? Would that corruption matter in this process?

Also, this motherboard has a dualBIOS system, does the FPT tool only affect the current BIOS? Not sure how the BIOS_SW works, my most basic guess is it controls a bunch of tri-state buffers that switch the EEPROM currently in use, but I would also think that the motherboard could be able switch it automatically without moving the physical switch, so I’m not sure.

I’m finishing up finals week here, so I’ll be ready to try all of this out some time next week. I’m not too worried about bricking the motherboard since (hopefully) with the help of this forum, I can probably figure out how to use an SPI programmer to reflash it with my laptop, or just use the backup BIOS in the event that nothing works out (and it’s still functional, that is).

@jxding

As you likely know, your motherboard has a switch labelled ‘BIOS_SW’ to manually swap to a 2nd BIOS chip if the first get corrupted and the system can’t POST.

The manual says Main BIOS is switched to the right and Backup BIOS is switched to the left.

Don’t try to boot from the Backup BIOS until you have verified your RAM is error free or you may corrupt it also.

You should use FPT to make a backup of both your Main and Backup BIOS before you attempt to write anything.

FPT will only see the currently active BIOS, so you will need to use the BIOS switch to dump both chips.

If you upload your BIOS dumps here they can be inspected to see if any regions have been corrupted and check if they are even the same version.

Do you also have a copy of your OEM BIOS and a link to it?

It sounds like you may also have some Windows corruption or your profile could be corrupt. You could try creating a new Windows user profile and see if the PC will shutdown.

Have you tried running Windows System File Check (SFC) from a command prompt to see if Windows is ok? e.g.

sfc /scannow

Running memtest86 is a good idea, you will want to make sure your system is 100% stable before you attempt to flash any BIOS.

To ensure that CMOS is cleared completely you could also try unplugging all power from the motherboard (including the 24-pin ATX main power connector and CMOS battery) then leaving it for at least 15 minutes to allow any residual power to drain and then boot into the BIOS and load optimized defaults - then check if Windows will shut down.

Please don’t write anything to your BIOS chip until your RAM is proven to be ok and you have a backup of both BIOS chips.

I have indeed run “sfc /scannow” multiple times since my shit started to stink. It did find corruption the first time, and I just ran it again to find nothing.

Here is the support page for the godforsaken thing:
https://www.aorus.com/en-us/desktop-pc/AORUS-MODEL-X-INTEL/Support

BIOS hasn’t been updated in years.

I’ll run memtest86 next week when I finally get the chance, and if all goes well, I’ll dump the backed-up BIOS’s here and we can hopefully get to the bottom of the corruption.

1 Like

@jxding Yep, sounds good.

I don’t understand how to use this. It doesn’t seem to work like the .exe files. Should I change the extension?

@DiscoStu Hi and welcome to Win-RAID forums, Efiflash is a command line utility that should be run from either an MS-DOS bootable USB stick or from a UEFI shell.

I got that, but all versions of Efiflash up to 0.87 were .exe, and 0.99 is .efi. How do I use a .efi file?

@DiscoStu .efi files should be run from a USB bootable UEFI shell such as this one:

Shell.efi

The directory structure on the bootable USB device should look like this:

X:\EFI\BOOT\BOOTX64.EFI

If you download the raw file Shell.efi you simply need to rename it BOOTX64.EFI and put it in the BOOT folder as above.

Here is a guide for commands and general use:

How to Use UEFI Interactive Shell and Its Common Commands

I am running memtest right now, first pass is just about done and indicates no errors yet, but we’ll see after the next three finish up.

One thing that I noticed is that the “RAM Config” listed by memtest is “G Skill Intl F4-4400C19-16GTZR,” which is likely the same 16GB (2x8GB) kit that comes with the pc, while I have always had 32GB of RAM the whole time I’ve used this computer. My assumption is that the previous owner who sold this system to me had upgraded the ram to the “G Skill Intl F4-4400C19D-32GTZR” kit, which is seemingly absent from the QVL for the motherboard, so it can’t recognize it as anything else other than the kit that the PC was prebuilt with. He may have installed the “F4-4000C19D-32GTZR” kit, which is on the QVL, but the lack of recognition by the motherboard has me skeptical. I will crack open the case when memtest is finished and double check the model of the RAM, since I can see a sticker on the side of it from the outside but I can’t read the details. I will also try to check the revision number of the motherboard, but I can’t find anything other than 1.0. If it is a different rev, then they might have actually made a completely different version of this motherboard just for this pre-built.

I have confirmed that the RAM kit is F4-4400C19D-32GTZR, which is not on the QVL. Memtest is halfway through its third pass, still no errors.

Here’s my plan going forward:

First thing’s first, if I need to replace the RAM, I will. I already assume that this is necessary, but if you magicians know of some kind of workaround to get XMP stable with the incompatible RAM, that’d be sweet.

Then, I will check the rev # of the motherboard to see whether it’s the same as the retail board, as well as do a fully overkill CMOS reset like you suggested. I might even replace the battery, too. Even if the rev # is not the same, I might still risk the flash anyways since I have the secondary BIOS.

Then, I will perform a clean install of windows 11, install ME firmware, install CSME Tools v15.4 (I believe the ME firmware provided on the support page is v15.4, will double check when I’m at this stage, of course), and run those FPT commands to create backups of the primary and secondary BIOS as well as the MAC addresses of the ethernet ports. Do I have to install all of the motherboard drivers again to do this? Maybe just the chipset drivers? I would love to wait until I flash the new BIOS before installing any of the motherboard drivers, since there are far newer ones available on the actual support page for the Z590 XTREME. I’ll do what must be done, though.

Also, to use the FPT tool do I need to disable memory integrity or anything else like that? I’m running Windows 11 “Pro” for what it’s worth. I think I might also order a hardware programmer just in case, which one would you recommend?

If all of this looks good and I haven’t missed anything, I will go through with it and hopefully report back some time later in the week.

EDIT:
My PC currently has ME v15.0, guess I’ll be rocking with that one.
I found some old DDR4 lying around, some Corsair vengeance LPX stuff I had in a previous build. Model is CMK16GX4M2B3200C16 ver4.32, which is not on the QVL, but there is a similar set on the QVL sheet, “CMK32GX4M2B3200C16 ver5.39,” but it’s listed on the sheet as a 2x8GB kit, when the actual model number depicts a 2x16GB kit on Corsair’s website, so I’m not sure. Could be worth a shot, maybe? At this point, what even truly matters when it comes to RAM compatibility? GIGABYTE seemingly can’t even represent the different sets of RAM correctly on the QVL sheet, they’ve got 32 gig kits listed as only 16GB, and they’ve got 32GB kits listed as “2Rx8,” when they should be “2Rx16,” no? Correct me if I’m wrong on this.

Also, here are the memtest results:

Hello. I can’t flash the BIOS from B650M DS3H to B650M D2H, it gives the following error. But I can flash a modified BIOS D2H via Q-flash (button on mainboard). The main reason for the modification is to unlock CPU overclocking and PBO.

Flash BIOS Update Utility for UEFI SHELL Ver.0.87
Copyright(C) 2017-, Gigabyte Technology Inc.

Flash Type : AMD rom armor
Flash Size : 32768KB

Reading BIOS information ........ Success
   Model Name ................... B650M D2H
   Part Number .................. 8ARPL253
   Bios Version ................. FA4c
   Bios Date (YYYY/MM/DD) ....... 2024/04/22


Verifying File .................. 0%
********************
Verifying File .................. 100%
   Model Name ................... B650M DS3H
   Part Number .................. 8ARPL113
   Bios Version ................. F24c
   Bios Date (YYYY/MM/DD) ....... 2024/04/22

Transferring BIOS Data .......... 

BIOS is protected by SecureFlash.
System must restart to complete BIOS update process!


Please wait for the reset in 6 seconds...
***************************
Please wait for the reset in 1 seconds...
Please wait for the resetUEFI Interactive Shell v2.2
EDK II
UEFI v2.90 (American Megatrends, 0x00050020)
Mapping table
      FS0: Alias(s):HD0k0b:;BLK1:
          PciRoot(0x0)/Pci(0x2,0x1)/Pci(0x0,0x0)/Pci(0xC,0x0)/Pci(0x0,0x0)/USB(0xA,0x0)/HD(1,MBR,0x000FF2A4,0x800,0x3D000)
      FS1: Alias(s):HD1c0c:;BLK4:
          PciRoot(0x0)/Pci(0x8,0x1)/Pci(0x0,0x4)/USB(0x2,0x0)/HD(2,GPT,90842407-3366-4A44-8F84-129F6C5A5B89,0x8000,0x96000)
      FS2: Alias(s):HD1c0d:;BLK5:
          PciRoot(0x0)/Pci(0x8,0x1)/Pci(0x0,0x4)/USB(0x2,0x0)/HD(3,GPT,8C69D6D0-F3FA-4971-A9EE-26C6E3EEF9A3,0x9E000,0x4C54800)
      FS3: Alias(s):HD1c0e:;BLK6:
          PciRoot(0x0)/Pci(0x8,0x1)/Pci(0x0,0x4)/USB(0x2,0x0)/HD(4,GPT,83201356-9B73-4BF4-AEB3-3610E1F88310,0x4CF2800,0x19000000)
     BLK0: Alias(s):
          PciRoot(0x0)/Pci(0x2,0x1)/Pci(0x0,0x0)/Pci(0xC,0x0)/Pci(0x0,0x0)/USB(0xA,0x0)
     BLK2: Alias(s):
          PciRoot(0x0)/Pci(0x8,0x1)/Pci(0x0,0x4)/USB(0x2,0x0)
     BLK3: Alias(s):
          PciRoot(0x0)/Pci(0x8,0x1)/Pci(0x0,0x4)/USB(0x2,0x0)/HD(1,GPT,F98394CD-EAE5-405D-94FA-87FEA1280452,0x22,0x7FDE)
 in 1 seconds...
Please wait for the reset in 1 seconds...
Please wait for the reset in 1 seconds...
Please wait for the reset in 1 seconds...
Please wait for the reset in 1 seconds...
Please wait for the reset in 1 seconds...
Please wait for the reset in 1 seconds...
Please wait for the reset in 1 seconds...
Please wait for the reset in 1 seconds...
Please wait for the reset in 1 seconds...
Please wait for the reset in 1 seconds...
Please wait for the reset in 1 seconds...
Please wait for the reset in 1 seconds...

@jxding 2Rx8 means it is a dual-rank module with RAM IC’s most likely on both sides of the PCB. Single rank 8GB modules usually only have RAM IC’s on one side and the other side is empty. This is how they can double the capacity in the same form factor.

The 32GB kit will be harder for the memory controller to stabilize and you may need to increase both the VCCSA (System Agent voltage) and VCCIO (VTT/IMC voltage).

You should be safe to test setting 1.25 V manually for both VCCSA and VCCIO if the motherboard is setting them lower than this with XMP enabled.

The other voltage that you should check is VDIMM, which should be 1.50 V with XMP enabled.

The Corsair RAM should be a lot easier to get stable as it is only 3200 MHz @ CAS16 (as opposed to the G.SKILL 4400 MHz @ CAS19) so you should be able to pass memtest86 pretty easily with XMP enabled.

You shouldn’t have to re-install any drivers in Windows after a BIOS flash and disabling memory integrity shouldn’t be necessary.

The ch341a hardware programmer is the cheapest and can be bought from places like ebay and Aliexpress.

I would recommend also purchasing a SOP-8 clip at the same time.

There are several helpful guides at Win-RAID forums on using the ch314a, such as:

[Guide] Using CH341A-based programmer to flash SPI EEPROM

[Guide] How to Use a CH341A SPI Programmer/Flasher (with Pictures!)

[GUIDE] Flash BIOS with CH341A programmer

@wzrd Hi, it looks like SecureFlash is blocking EFIflash - you may need to try using Flashrom for your AMD chipset:

My concern with the drivers is more about whether or not they rely on the dummy BIOS that is currently installed (which also prevents me from changing XMP settings, so I can’t test much on the XMP stability front without flashing the retail BIOS first). If I update the BIOS while the motherboard and chipset drivers from the pre-built support page (the ones intended for use with the dummy BIOS) are installed, could that cause any conflict when the board boots up with the newly flashed BIOS?

When it comes to the memory, would you recommend that I flash the new BIOS with the Corsair memory installed as opposed to the G Skill? If the G Skill ram has passed memtest with no errors (without XMP enabled, of course), it shouldn’t be a problem, right?

Once I read your reply, I will try to do the overkill CMOS reset, then a clean windows installation, and carry out the steps to back-up and flash the BIOS once I’ve verified that everything is working correctly and nothing seems corrupted anymore. Sound good?

Apologies if I’m being obnoxiously cautious or perhaps a bit hand-holdy, I just want to be extra sure I’m not missing anything. It’d be a shame to make this any more complicated than it already is.

EDIT:
Also, is a clean windows installation necessary if I used sfc /scannow (which turns up nothing), and DISM /online /cleanup-image /restorehealth? I figured I might as well do it anyways just to be safe and also to clear off drivers that I won’t be needing anymore, but it would be kinda sweet if I didn’t have to.

@jxding The Intel chipset “drivers” for the motherboard are nothing more than text files that supply a name for each device hardware ID, Windows supplies its own drivers on setup so that it can be installed on the system.

If the hardware ID’s change, Windows update will more than likely download and install any “driver” that is missing. If it doesn’t you can download the latest chipset “drivers” from Intel using the Intel Driver & Support Assistant (Intel DSA) which will scan your system and update to the latest drivers (including WIFI and Bluetooth).

It doesn’t really matter which RAM is installed when you flash the BIOS when XMP is disabled as the motherboard will use Serial Presence Detect (SPD) to load the RAM at a safe base frequency (non-overclocked) of either 2400 MHz or 2666 MHz depending on what profile is stored on the RAM.

Once I read your reply, I will try to do the overkill CMOS reset, then a clean windows installation, and carry out the steps to back-up and flash the BIOS once I’ve verified that everything is working correctly and nothing seems corrupted anymore. Sound good?

I would only re-install Windows if the RAM has passed all tests, the BIOS has been cleared/re-written and you still can’t get the system to shut down - but it is up to you.