Lenovo M83 SFF ME repair

Hello,

Computer was updated in several steps (incrementing BIOS revisions) to the newest BIOS FBKTDEA from Lenovo website, then bricked by flashing firmware of embedded controller to FBCT32A.bin from the same package. Computer was put back to life by programming firmware externally to U107 Macronix MX25L8006E (desoldered, programmed, soldered back) with FBCT13A.BIN from this forum.

I tested as well FBCT29A.bin from BIOS FBKT74A package, but it doesn’t work either.

Current state of the machine:

BIOS Revision Level: FBKTDEAUS
Boot Block Revision Level: FBDEA
Embedded Controller Version: FBCT13A

ME Firmware Version: N/A

I unlocked flash descriptor with pinmod, dumped the flash with “fptw64.exe -d spi.bin”.

Flash Programming Tool with -i option shows:

Flash Programming Tool output.PNG



MEInfo shows:

MEInfo output.PNG



MEManuf shows:

MEManuf output.PNG



ME Analyzer shows:

ME Analyzer output.PNG



I wanted to clean dumped binary according to the guide on this Forum, I selected:

Intel ME System Tools v9.1 r7
Intel ME 9.0 Firmware Repository Pack r11 / 9.0.20.1447_5MB_PRD_RGN.bin

When I try to drag&drop my dumped spi.bin to Flash Image Tool I get "MFS INIT ERROR!":

Flash Image Tool error.PNG



fitc.log contains:

Decomposing data…
ERROR: An unknown exception occurred while decomposing the image file!
Please make sure you are decomposing a valid flash image file.

So I cannot go further. Could you help me with it?

Later I would like to update ME to the newest version available (9.1.45.3000) from Lenovo website.

As current ME is corrupted, it is not possible to update it with FWUpdLcl64.exe from the package above. Is there a method to flash it directly (as this package is from Lenovo and prepared for M83)?

(as a new user I cannot post links for now)

Best Regards,
Przemek

It seems that the ME firmware has corruption (at the File System probably) so it cannot be cleaned by the guide. In those cases, if the OEM does not already provide a Configured (EXTR) ME region in their own SPI/BIOS update, you need to find another dump online from the same model and use that for cleaning. Once that ME region is cleaned, you can transfer only that to your own SPI dump and flash it back. But if the OEM includes an EXTR ME firmware region in their SPI/BIOS update, you can use that directly instead without any cleaning required. Upload (link to) the BIOS update from Lenovo to see if it includes a ME region inside.

I need few more posts to be able to paste external links here (Forum rules) and I cannot attach binaries here directly.

This is what ME Analyzer shows (new Lenovo firmware):

Lenovo firmware.PNG



FIT shows:

FIT Lenovo FW.PNG



File ME9.1_5M_Production.map from FIT is:

Start (hex) End (hex) Length (hex) Area Name
----------- --------- ------------ ---------
00000000 008D1FFF 008D2000 Flash Image

00000000 008D1FFF 008D2000 ME Region

So if I understand correctly it should be everything what I need.

Got the link myself, here. It’s a BIOS region only unfortunately. The “ME9.1_5M_Production” image is actually RGN (clean) but a small MEA v1.186.0 bug causes it to show as EXTR. It will be fixed at the next version during the weekend. So you need to find a M83 SPI/BIOS image dump online and we can use that for cleaning.

So far no luck with finding the dump online.

Regarding my dump, UEFITool shows that indeed file system is corrupted - FPT partition table header checksum is invalid:

UEFITool spi dump.PNG

No, what UEFITool reports is a) wrong and b) not File System related. At the lenovo BIOS page, it lists some other models which use the same BIOS so maybe you can find a dump from those instead which will probably use the exact same ME firmware too.

For now I found only incomplete dumps - for 8MB chip only.

First one:

INFO Lenovo ThinkCenter M83 is8xm rev 1.0.PNG



https://forum.laboneinside.com/viewtopic.php?t=2426

Second:

INFO Lenovo ThinkCentre M83.PNG



http://s000.tinyupload.com/index.php?file_id=45590757181203499492

When I try to open them in Flash Image Tool I get this error as these files are incomplete:

FIT error.PNG



I’m worried that they are not complete enough for my needs.

It is ok for your needs. The first 8MB (0x800000) SPI image does include the ME region (0x57D000 sized) which is all you need. You can "extract as is" it via UEFITool (not NE) and "replace as is" at your own dump. Then follow the cleanup guide.


@plutomaniac
Would it be successful that Only cleaning the ME of bios he found and flashing back to his machine by spi programmer?

I generated cleaned file with ME region from ‘Lenovo ThinkCentre M83.BIN’ with my dump according to your suggestions and Cleanup Guide yesterday, but till now I’m struggling to flash it back.

I get ‘Error 280 Failed to disable write protection for the BIOS space!’:

programming error.PNG



I tried to follow this guide, but I cannot find setup module in my BIOS (FBKTDEA) to continue further. I would like to program it without external programmer.

AptioV AFUWIN (link) recognizes correctly File ROM ID:

afuwin5-1.PNG



but it gives information that it’s unable to flash and I should use Aptio4 software (link).

Aptio4 AFUWIN gives such screen:

afuwin4-1.PNG



so I’m reluctant to use this software.


Could you please help me to solve it?

You can flash the ME region only using FPT with command “fptw64 -me -f me_rgn.bin” followed by “fptw64 -greset”. Extract as is the ME region from your cleaned SPI image via UEFITool (size 0x57D000) and flash it via FPT with the aforementioned parameters. Thus you won’t have to deal with BIOS region locks.

It worked like a charm! Big thank you!

Now computer is at following state:

BIOS Revision Level: FBKTDEAUS
Boot Block Revision Level: FBDEA
Embedded Controller Version: FBCT13A
Microcode Revision: 00000028 (11/12/2019)
ME Firmware Version: 9.1.45.3000

Lenovo update tool works now as well:

https://download.lenovo.com/pccbbs/thinkcentre_drivers/9.1.45.3000.exe (flashed same version)

BIOS flashes without any problems too:

https://download.lenovo.com/pccbbs/thinkcentre_bios/fbjydeusa.exe (flashed same version)

I haven’t lost any UUID or MAC address in the whole process of update/repair but (I’m not sure) I lost Windows license from UEFI. I didn’t pay attention whether it was there, but I have license sticker on the computer case.

Can you share the bios file that has been successfully installed ME firmware, sir?
I also use the same computer Lenovo M83 with same problem ME N/A ( sorry for my bad english )
Thank You

You don’t want to flash a foreign bios, that would wipe your board specific information and in addition the bios region has additional write protections. And there’s probably a flash descriptor that has to be unlocked, too. ([Guide] Unlock Intel Flash Descriptor Read/Write Access Permissions for SPI Servicing)

The links are still working which point to the dumps which were used for creating a cleaned ME region. All is described, you could as well do it yourself…

Unfortunately I don’t have these files anymore. I deleted them after repairing my machine.

You can unlock flash descriptor with pinmod - short pin(1) SDATA-OUT to pin(5) DVDD on audio chip (ALC662) and turn on the machine. Then you will be able to dump the flash with “fptw64.exe -d spi.bin”.

Follow instructions in this thread to create file for your computer. Please note I used ‘Lenovo ThinkCentre M83.BIN’ (links above) and not 'Lenovo ThinkCenter M83 is8xm rev 1.0.bin".

what is a boot black revision level?
Thank you in advance​:pray::pray: