[HELP] Dell OptiPlex 9020m Intel ME flash Bricked

Hi,

Greetings from Australia!

I am reaching out to the experts for help.

I have a Dell OptiPlex 9020m which has a corrupted Intel ME. I tried to fix it by
1) Setting Jumper to Service Mode
2) Downloading 9.5.60.1952_1.5MB_PRD_RGN.bin
3) fptw64.exe -f 9.5.60.1952_1.5MB_PRD_RGN.bin
4) Screenshots attached
5) Bricked with flashing orange light on power cycle

I have a CH341A programmer, so I took the chips out
1) There are 2 chips, a 32 Mbit and 64 Mbit
2) I can’t attach the corrupted dumps due to file size limitations, will research how to attach.

It appears the 64 Mbit chip has the contents of the file dumped at 0x000000 - 0x17CFFF.
Onwards from 0x17D000 it appears untouched.
I downloaded A17, A18 and A19 files on Dell’s website.

Does anybody know if it’s possible to rebuild the first 1.5 MB of the data (from the Dell exe files), or is the a lost cause?

I appreciate any help/opinions from the experts.

Thanks,

Alex

IMG_2820.jpg

This error I have seen on flashing MSI H61M-S26 v1.0 even just flashing bios region.

I think you could dump the full bios,and clean your ME firmware,then flash the full clean bios file.

Or you could upload the full bios you dumped,and I’ll try to fix it for you.

@alex0 - You went wrong at step #2-3 there. You can’t program in stock RGN, you needed to flash in ME region that was configured for your system, either from dump that was cleaned and fixed, or from other known working model dump, or from stock BIOS package if included.
Dump both chips and send contents. Upload to tinyupload.com or uploadfiles.io. What is each chip ID, in case I need to tell you to use other software/version to dump and write.
Please also link to the stock BIOS version you are using

@Lost_N_BIOS - Thank you so much for your reply. It’s definitely my first time trying to ‘fix’ something without understanding it well enough.

There has been progress.
1) I have a Dell Optiplex 9020 also (different type of machine, but Q87 platform as well)
2) Dumped its 64 Mbit chip as an example
3) I copied over 0x000000-0x000FFF from that Dell
4) 0x001000-0x002FFF is in the extracted exe
5) 0x003000-0x004FFF as well
6) 0x005000-0x17CFFF as well
7) It does boot, Ethernet not working
8) Intel ME works now (strange)

I think if you can please help me to fix up 0x000000-0x000FFF maybe the Ether would work

Files are in:
1) Examples of other BIOS Chips http://s000.tinyupload.com/?file_id=04631266343370587593
2) Dumps of broken chip, original Dell BIOS exe http://s000.tinyupload.com/?file_id=69534214189682238982
3) Extracts of exe, and my fixes so far http://s000.tinyupload.com/?file_id=05792422551815497658

I hope this helps.

Thanks again,

Alex

@alex0 - Stop now while you’re still ahead!!
You cannot use ME FW from other model. Please do as I mentioned, dump BOTH chips, or is that what is at #2 above? If yes, OK, thanks, but when was it dumped and what software/version used to dump?
What is BIOS chip ID’s in case I need you to dump again with different software/version. Hopefully you’ve not written anything to either chip yet! I guess too late
Please link me to the stock BIOS download page for the BIOS version you are using. And please repack #2 above, remove stock BIOS, only include both chip dumps you’ve made and tell me what software/version you used to dump them with.

Do you have programmer dump of both chips BEFORE You did any repair attempts, right after the bad ME Flash? if yes, please send this ONLY, it’s all I need to fix this.
I am on limited internet, so try to only download what I need/want, so no need to upload or include extra stuff, I may not download it (none of above downloaded as of yet, waiting on answers/info before grabbing)

Hi @Lost_N_BIOS

I dumped both Chips. I used CH341A-programmer-software-1.29. I have a SMD hot air station, so I desoldered the chips and installed into the carrier. The chips are some no-name 25Q03213 ECO VS and 25Q064A 13ECO. The software didn’t have the exact chip, but I dumped twice, AMIC A25L032, SPANSION S25FL032. And SPANSION 25FL064, SST25VF064C. I check the md5 hashes were the same, so I guess it read correctly.

Stock BIOS is here https://www.dell.com/support/home/en-au/…?driverid=9dn7w

Both chips are here http://s000.tinyupload.com/?file_id=00816040702746458208

Software is: CH341A-programmer-software-1.29

The dumps above are BEFORE the repair, but after the bad ME.

Thanks,

Alex

@alex0 - Those are both micron chips (N25Q032 + N25Q064), Colibri can read/write to those OK I believe, and both are in ASProgrammer list too.
Hopefully 1.29 dumps and writes to those OK, using the ID’s you used. Especially since you already wrote to chip, we now can’t compare with flashrom dump to see if 1.29 dump match or not.
Dumping twice or matching hashes etc does not matter, if software/version is not compatible it can dump same info twice and verify it twice and still be wrong, same on write back as well.
Have you now written back to either chip with programmer, and it booted, or you have not tested that yet?

Never mind, both chip dumps corrupted 4MB one is missing FD and 8MB one is missing half the main BIOS region.
I just realized why FD was missing from 4MB, step #3 of your first post, so that dump may be OK and software/ID you used for that chip may be OK (but I wouldn’t use that to write back, use info I gave above/below)
Anyway, I didn’t see before and just thought you wrote in stock RGN and that’s what I said was wrong, but I just now see you wrote in stock RGN over FD/ME regions, due to you did not add -me flag into your command
8MB dump is not good, so you can’t use 1.29 and that ID for this chip to write back, you’ll have to use Colibri or ASProgrammer. I suggest this for writing back to both when we get there.

Is the system bootable right now? I assume not… If by some miracle it is, maybe you will get lucky and we wont have to hunt down other users dumps.
Please dump both chips with ASProgrammer 1.41 AND Colibri, both are in this package ONLY if system is bootable - http://s000.tinyupload.com/index.php?fil…213094641136166
If system is not bootable, please wait while I locate a proper dump for this exact model and then rebuild your BIOS.

@gloobox @simoutekd @MiesMosel - do you happen to have Dell 9020M you could dump both BIOS chips?
@Sleinous - I see here you have 9020M, do you still have? If yes, and you have a programmer, would you mind dumping both chips off one board and send to me, thanks!
Actually, mainly just need FD dump, can be via FPT if you like - thanks But full chip dump from both would be greatly appreciated, if you don’t mind

Hi @Lost_N_BIOS
System was not bootable. I rebuilt 8MB chip in post above : http://s000.tinyupload.com/?file_id=05792422551815497658
With the rebuilt chip, it boots and ME (half) works too, no ethernet.
The FD is in the 8 MB chip, not the 4 MB. I believe the FD is incorrect, and that causes no ethernet.
I shall dump again (although I’ve flashed A18 with the exe, still no luck).
I noticed a type, this is a Dell 9020M, not 9200M.

Thanks,

Alex

I do not need anything you rebuilt, I could rebuild 8MB chip myself, that is not my concern here.
Yes, sorry for mixup on the FD location if I had it backwards, either way you wrote over it with step #3 in first port. Do not dump again, not needed.
FD is NOT in 8MB chip, at least not in the dump you sent me (unless corrupted, I didn’t search), but yes it does belong there. Actually, just looked and the 8MB dump you sent contains the ME at beginning (for 6MB), as expected, due to what you did at step #3 above (So FD overwritten as mentioned as well as GbE too)
And yes, sorry, I noticed that type too when I tagged those guys, fixed thanks

GbE is where MAC Address is stored, this is why no Internet via Ethernet - You wrote over FD/GbE and some of ME and then partially into original BIOS region

Thanks for your help.
I’ve been trying to write GbE Mac Address, no luck so far.
I think it’s not as bad as we think. The original ME is ~6 MB, the one I overwrote is ~1.5 MB.
So the overwritten area is FD, GbE, and ~1.5MB of ME.
~4.5 MB of the original ME is still there.

I noticed something regarding Ethernet. If I take CMOS out, let ME discharge, and power up from cold, the green link comes one.
After the initial fan spin, I think ME tries to access the GbE and then link is gone.

Do you know if ME is married to the MAC address? I put some random MAC address, no luck.

Thanks,

Alex

You’re welcome! Please stop tinkering around in there, wait for me to help to fix this GbE MAC is easy to fix, once you write in GbE region
Yes, really only missing FD, because GbE is included in original HDR and we can extract. Once I have proper FD for this model, I can rebuild your entire BIOS in few minutes, and keep all board specifics (serial etc) in place
LAN would power on during BIOS rom loading, and yes, maybe ME tries to access too, but none of that matters, no GbE region (or wrong MAC ID) = no Ethernet.
Just wait, someone I tagged will send me FD, or dumps, then I’ll have you fixed BIOS right after that

Even once GbE is there, you cannot put in random MAC address, it must be exact correct one. So you need to give me that off board sticker.
Look or LAN metal port (look on top, bottom, sides etc), if no sticker then MAC ID will be on board sticker, check side of 24pin, top/bottom sides of PCI/PCIE slots, and then all stickers on board

This system has ~5MB ME FW, not 1.5MB, so that is another incorrect thing I didn’t notice you did at first post too

We might have a show stopper. I’ve looked everywhere. Took MB out, looked at stickers everywhere.
Nothing that looks like a MAC address. Hopefully your rebuilt BIOS can make the GbE work.

Regards,

Alex

@alex0 - Show me images of all stickers maybe it’s one one and you don’t notice, and be sure you looked all around/ON the LAN metal block, sometimes it hides on the bottom of that (towards PCIE slot). Look on back of board too, and also look on base of case, inside door of case, bottom of case etc.
It may be in BIOS, I’ve not dug around yet. But really, to find, I need to see all stickers from your board too, so I can see serial, or service/asset tag and use that to try and locate copy of MAC if stored as info/copy outside of GBE (sometimes is, sometimes not)
If you used this system recently too, and used it’s ethernet, you may be able to find MAC in router logs, if you can identify which MAC is this system.

I cannot make Ethernet work without correct original MAC ID

@Lost_N_BIOS - I took these. The router was a great idea!, but the logs are only for the last day .
I was actually thinking of ringing Dell "My MAC address got deleted because of a bad BIOS flash. What was the original MAC address?"

Think that would work?



IMG_2829.jpg

IMG_2830.jpg

IMG_2831.jpg

IMG_2832.jpg

IMG_2834.jpg

IMG_2836.jpg

@alex0 - If they have your purchase details, and you give them the asset/service tag info, then yes, they may be able to tell you the MAC ID
But, this is a legal area, so they may not be able to discuss MAC ID’s with you, you know, laws and all that but it’s worth a shot. Wait until I look at all these images, I may spot it
Please put all those images into a max compressed zi[/rar/7zip - thanks, I’m on limited internet.

No stickers on bottom of case, what about back of case where I/O ports are?

I have uploaded the pictures.

I recompressed them to be as small as possible because of your limited internet.

http://s000.tinyupload.com/?file_id=00768111920248123739

Thanks.

NO MAC Address shown on anything there, looks like they maybe removed stickers when it was repurposed.
The only thing you can do, if you cannot find MAC address in any logs, or old sent email source view, it’s get a USB LAN adapter, or find one that will work in those M.2 slots.
Are you sure you do not have ANY backups of the BIOS or chips before you did the ME Write attempt at post #1?

Wow, I am surprised no one has replied yet with dump for us, hopefully someone will soon so we can fix!
I know Sleinous has one for sure, so as soon as he comes back in here I’m sure he’ll send dump our way

Yea, so it’s not my eyesight. I thought my 4 eyes were not enough.
I can use a USB if it goes to that.

I do not have any backups. I read that flashing ME is impossible to brick. The flasher checks for compatibility and will refuse to flash if it’s not compatible. And even if ME is corrupted, it won’t brick. You can still POST, just no ME.

So I thought, ok, no risk then.

It’s a big job to take out SMD hot air, desolder chips and install on programmer, and since there was no risk, why do it?

Turns out, there is risk.

Just going to jump in quickly in regards to the MAC address.

You may be able to recover the MAC address from the Windows registry once you get the system to boot as long as you don’t do a winsock reset or attempt to uninstall/re-install the ethernet adapter.

@alex0 - Nothing is impossible to brick And corrupted ME can cause any number of things, failing ME status, any number of random issues while ME still looks to be functioning, or completely bricked system and no boot - there is no one specific thing when ME FW has failed, other than it’s failed and then you deal with the outcome.
Your ME FW isn’t bricked here, the BIOS as a whole is just trashed, FD missing and Incorrect SKU STOCK RGN not configured for this system partially programmed in over half the actual ME FW

And the method you flashed is the MOST easiest and risky way to flash and brick the BIOS or ME FW, FPT if allowed to write to ME region does not check anything, it programs in what you give it.
Only ME FW update tool does the things you mentioned, and if you had used that it would not have let you flash due to incorrect SKU ME FW, but once you tried using the correct SKU it would have accepted and been OK with Stock RGN because it will configure in the settings during it’s update process.
Only ME FW update tool does this, not FPT

Sorry, not sure what you are talking or asking about desoldering stuff in regards to? Chip can be programmed in place with SOIC8 test clip.

@chinobino - Thanks, can you tell him how to do that, and can that be done by putting the HDD/SSD into another system (with it’s Ethernet disabled first)?
BTW, someone asked something similar about UUID, and I said I didn’t think so, can that be gathered as well, from disk put into another system - Asus Rog Notebook BIOS Bricked