[Problem] Up-/Downgrading GA-Z97X-SOC BIOS

@turner As Kookieezz suggested, attempt to make a backup from bootable USB using FPT from either MS-DOS or a UEFI shell.

You should download FPT v9.1 which can be found in ME System Tools v9.1 r7.rar from this thread:

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

The archive contains versions for Windows, MS-DOS and UEFI shell.

2 Likes

Just making sure I don’t get anything wrong over here, I have made a backup of my current bios file and I have obtained the mac address.

I have opened the bios file I wish to flash on my PC and this is what I am seeing:

I am assuing that this area (in red rectangle) is where I will change the values according to my mac address?

Also how do I edit this, I can’t seem to replace the values?

Edit:

Nevermind I modified it using external hex editor tool but yeah something I would like to know for next time.

Hey so I did flash it with fpt, and even though fpt has stated it flashed successfully, after a reboot, my computer rebooted a few times and when I checked the bios version it will still at F7. For some reason I think the b_bios restored the m_bios. Not too sure what went wrong?

here is what I did

I booted into my USB drive, typed fpt -b file.bin

After dumping the contents, I inspected it in uefitools, I copied the gbe mac address, openeed the F5 bios flash file and I saw the off set for the mac address, I went to an external hex editor, and I replaced the mac address with my backup file, then I exporeted it to my ms-dos usb drive, then booted from usb drive and typed fpt -f <biosfilename> and it flashed the m_bios but had issues.

@turner It looks like you have worked out how to add the MAC address using a hex editor as I suggested, which is good.

If FPT won’t work you can use Gigabyte’s EFIflash instead:

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

I would suggest using the modified version of EFIflash as you have likely changed the checksum of the official BIOS when you added your MAC address (which will cause the official EFIflash to reject the modified BIOS).

If you can downgrade the main BIOS chip to F5 with EFIflash, then you can also flash the backup BIOS chip using the command line switch /DB

E.g. efiflash Z97XSOC.F5 /db

This will flash the BIOS file to the main BIOS chip first and then the backup BIOS chip.

If FPT won’t work you can use Gigabyte’s EFIflash instead:

Just curious why didn’t the fpt tool work? I mean it showed it was installed successfully but after a reboot, the computer had to restore the firmware from b_bios, why was this? Is it cause I changed the file name of my bios image file?

I would suggest using the modified version of EFIflash as you have likely changed the checksum of the official BIOS when you added your MAC address (which will cause the official EFIflash to reject the modified BIOS).

I used the original version from gigabyte (that comes when you download the bios image file) and it rejected F5 as it was too old, so I assume this modified version will work?

If you can downgrade the main BIOS chip to F5 with EFIflash, then you can also flash the backup BIOS chip using the command line switch /DB

I think I will leave just m_bios with F5 just in case if something went wrong then it can be restored. Otherwise I will have a truly bricked computer and I can’t even get into the bios without using the programming tool to flash the bios chips.

If you could a DOS bootable drive, try to flash it using flashprog. You could use a clean stock old bios as per what you wish, make a DOS bootable, copy the contents of Flashprog.exe and CWSPDMI.exe, and the bios file to the dos drive directly, boot up to bios and enable csm, save and exit, boot to bios again, then on boot override select on your flashdrive name.

After you enter DOS, type flashp~1 -p internal -w yourbiosname.theformat (for example the bios name is Z97XSOC.F5, then type flashp~1 -p internal -w Z97XSOC.F5). Wait till it finishes, and after it finishes just press ctrl + alt + del and it will reboot automatically, spam DEL and see if it has changed. If you could, please provide the execution success if it a success like this:

Usually gigabyte copies the content of B_Bios to M_Bios if the M_Bios is corrupted, or if you manually do it by shutting down your pc, press and hold power + reset/restart button (make sure the reset header is connected to the board) for about 11 seconds, release and power up normally.

And to update the B_Bios if it isnt updated through qflash, simply just spam Alt + F10 and it will bring you to Update Backup Bios page/Copy Backup Bios from Main Bios page.

If you want to flash both bios chip using flashprog (let’s say Flashprog method succeed), probably you could use flashp~1 -p internal:dualbiosindex instead of normal -p internal arguments, tho i never tested it yet.

1 Like

ok thanks mate, I will try both yours and the other dude’s suggestion. though I am curious why didn’t fpt work though, is it cause I named the bios name as Custom.F5 I mean does it care if its a different file name for the bios image filename? Or did I edit my bios file incorrectly when changing the mac address?

I changed this porition:

and replaced the values with my hex mac address values. As it says offset is 1000, I went to https://hexed.it and went to 1000, found the mac address and replaced it with my one and exported it.

Hey man, well fpt nor efiflash don’t work, it shows it is “verified” and succeeded successfully, my computer seems to keep rebooting itself multiple times after flashing the bios to restore its b_bios I assume?, why is it not flashing correctly into the m_bios neither of these tools? What may be the root cause of this?

@Koekieezz Well your program shows it failed:

One thing I noticed was that after using fpt tool to flash my bios, everytime I turn my computer on for the first time, it will reboot itself then the computer will post, no idea why it does that?

@turner Can you please make a new dump of your main BIOS chip with FPT and upload it here?

File is too large so I am sharing a folder with you from proton drive:

I have also included a video to show that after the computer posts and I get into the boot menu and into fpt, the numbers on the motherboard keep changing around (not when the computer posts but after we move to boot menu and onwards).

1 Like

@turner That BIOS dump is corrupt.

Download the same BIOS that is on the chip (F7) from Gigabyte then flash it with FPT using the -savemac command.

Then dump BIOS again and upload it here.

[Edit] What CPU do you have installed? BIOS F5 does not support Broadwell.

[Edit2] fpt -SAVEMAC -f Z97XSOC.F7

Hey mate

Download the same BIOS that is on the chip (F7) from Gigabyte then flash it with FPT using the -savemac command.

So this command:

fpt -f <filename> -savemac

?

Then dump BIOS again and upload it here.

Will do

[Edit] What CPU do you have installed? BIOS F5 does not support Broadwell.

Its i7-4790k and it seems like it does support it:

ANyways I flashed F7 using:

fpt -f <filename> -savemac

And here is the new_dump file:

NEW_DUMP.zip (9.1 MB)

1 Like

@turner The last BIOS dump you uploaded looks good, the corruption has been repaired.

Is the board now behaving normally on the boot menu?

Can you also please do a hash check on the file Z97XSOC.F5

I have MD5 of: 3671624d8f0bb04232c6a54d906ef088

BIOS F5 comes with EFIFlash v0.43, you could attempt to downgrade using this version - if it fails please post the error message here.

Yeah I noticed it is behaving normally.

Can you also please do a hash check on the file Z97XSOC.F5
I have MD5 of: 3671624d8f0bb04232c6a54d906ef088

Weird I am getting 1b9721f14b052d294f7b14ace6364c4f according to this site:

You got the bios file from over here:

BIOS F5 comes with EFIFlash v0.43, you could attempt to downgrade using this version - if it fails please post the error message here.

Should I use the one provided from gigabyte or from you guys (the modified version you guys have)? Last time when I tried using gigabyte’s official version, the program printed on the console that my version is too outdated, so I assume if I were to use gigabyte’s official verison I should use the -x flag?

@turner

Yeah I noticed it is behaving normally.

Ok, so that should hopefully rule out any weird hardware issue.

Weird I am getting 1b9721f14b052d294f7b14ace6364c4f

Can you link to the source of that file?

You got the bios file from over here:
GA-Z97X-SOC (rev. 1.0) Support | Motherboard - GIGABYTE Global

Yes, from the link in your first post.

Should I use the one provided from gigabyte or from you guys (the modified version you guys have)?

The official Gigabyte BIOS should be used.

However, before you attempt another BIOS downgrade (that may be unnecessary) to solve your initial problem that you can’t boot into any OS since the BIOS update - can you see the physical drive listed in the BIOS?

If you can what type of drive is it? (SSD, NVMe or hard drive AKA spinning rust)

What is the exact error you get when it tries to boot?

If you are using Windows was it installed using MBR or GPT, and which version is it?

Can you link to the source of that file?

Weird I redownloaded the file and this one seems to be ok it matches your hash output, I did not even modify the other file that is giving a weird hash output.

The official Gigabyte BIOS should be used.

Sorry I meant regarding the gigabyte flashing tool (not the bios file), should I use the one officially from gigabyte or from you guys (the modded version)?

If from gigabyte, then I assume I should use the -x flag as previously without the use of -x the flashing tool rejected my bios file and printed a messaage on console stating my bios file is too outdated (similarly to using qflash).

However, before you attempt another BIOS downgrade (that may be unnecessary) to solve your initial problem that you can’t boot into any OS since the BIOS update - can you see the physical drive listed in the BIOS?

Yes I can see the drives listed, my systemD bootloader runs even, and even on my USB drive with Ventoy on it works, but as soon as you try to boot from Windows or Linux, they both will just freeze up, regardless if its from my USB drive or from my internal SSDs.

the two SSDs are both GPT.

Anyways managed to flash F5 using the modded version of gigabyte flashing tool with no issues, I can see its now F5, but still can’t get into Windows nor Linux from my usb drive.

Either I need to clear my CMOS or I need to flash F3 (which is what I was using originally) and see if that works.

Edit: ok so I flashed F3 (using qflash) and that works, can boot into Linux from usb drive, but reason why I wanted to upgrade my bios version in the frst place was cause my programs or other programs like handbrake (when using high compression) will just crash my computer at a hardware level, doesn’t matter I use Windows or Linux, doing the exact same thing will crash my computer, doesn’t happen when doing it on other computers, after researhing my cpu is supported in F3 version, only since F5.

yet even F5 has issues not booting into any OS so no idea why this may be the case?

@turner

After downgrading BIOS it is recommended to clear CMOS and load optimized defaults to remove any remnants of the previous configuration as it can sometimes cause weird issues.

Fast Boot can stop you from booting from USB devices so I would check if it is disabled.

If fast boot is already disabled is CSM enabled or disabled?

Can you please list your full PC specs (including the hard drives, CPU cooler and model/age of the power supply)?

Handbrake will work your CPU very hard, especially if using AVX2. Haswell/Devil’s Canyon has no AVX offset so you will need to monitor your CPU temperature to see if your CPU heatsink is adequate and if there is any CPU throttling. Throttlestop is very useful for monitoring for any type of throttling in real time.

If your power supply is old/cheap it may also be the cause of instability under high load.

Have you checked the voltage rails of your power supply in the BIOS?

Do you have XMP enabled?

Your RAM could also be a source of instability, I would test with XMP disabled and just use the SPD profile to see if the system stabilizes under load.

When you installed Windows did you use AHCI mode or was RST enabled?