[Problem] Bricked Lenovo ThinkSystem ST50 BIOS

Hi Guys,
I had a softbrick during the upgrade of my Lenovo ST50 (ThinkSystem) - Type 7Y49CTO1WW- SN/J3025GH4 IC :MX25L12873F
I did the dump via CH341A and got this 16MB file corrupted after the soft brick.
Stupidly I did not make a previous backup.
I downloaded the ITE138A_ST50_12MB.ROM from Lenovo’s site to try to flash it as a .bin but being 12MB it is not digested by the MX25L12873F chip
Via chatgpt I created a new 16MB file by merging the dump and the .ROM file but it failed.
I’ve put here every file I citated:

https://drive.google.com/drive/folders/1RaKoCNThsBUe4UdRyf_m1HcwEgbr5iG2?usp=sharing

If I plug the pc into the socket now the fan starts at full speed and it doesn’t even beep anymore.
I hate Lenovo

Thanks for helping me guys :sob:


Edit by Fernando: Thread title customized

I think this system board has 2 ICs…

@Dado98 & @MeatWar

Dear “Dado98”,

I would like to illustrate my experience with a “damned” laptop “Lenovo B590 mod.3761” of a disabled person, in July 2024: suddenly and without any apparent reason, the laptop showed signs of a tangible and inexplicable corruption of its BIOS that made it impossible to access it to change some items (e.g., disabling the “Execution Prevention” parameter, the PC started but NO LONGER GIVES VIDEO OUTPUT: therefore it must ALWAYS be left ENABLED, otherwise the PC will lock).

Therefore, to solve the problem of accessing the BIOS and trying to restore the laptop, which had become unusable, it was necessary to perform a hardware flashing from the outside using an EEPROM programmer connected to another PC and with an eight (8) contact pliers that I purchased for the occasion: I would like to point out that that laptop model had only ONE (1) EEPROM soldered on the PCB, mod. Macronix MX 25L6406E, but from investigations conducted by me at the time, I remember that in the same “B590” family there could be models with TWO (2) EEPROMs.
In order to try to help You as much as possible, I will describe below, in broad terms, how I managed to “resurrect” the laptop that is currently in active service with Win 10 Enterprise 2019 LTSC v.1809 (64bit).

The BIOS recovery was done from scratch, since the existing one was already corrupted (as in your case) and there was no point in performing a backup; reading my notes, I remember that I followed a rather complex procedure.

  1. Programmer used for EEPROM:
    Mini USB Programmer “CH341B” (SOIC 8, SOP 8 chip, manages voltages 2.70~3.60 V and, with adapter, also for 1.80 V);
    NOTE: keep in mind that positioning the clamp so that the pins all make contact correctly, IS NOT a simple thing, it could take dozens of attempts and some chips and, if you are also unlucky, require desoldering to be able to be reprogrammed… You should know that.

  2. Software “NeoProgrammer v.2.2.0.10”, used under Win 7 Ultimate SP1 (64bit);
    NOTE: I suggest using, if necessary, also the excellent “ASProgrammer”; in my modest experience, I have found these two to be good, but ALWAYS check their compatibility with the specific model of EEPROM that you intend to program (which you MUST KNOW 100%, by reading the code directly on the chip, since there are some models that have write protections that must be DISABLED via the software that you use… and not all versions do this!).

  3. Type of EEPROM chip present in the laptop “Lenovo B590 3761”
    to be re-programmed (x1 chip):
    Macronix MX 25L6406E, 2.70~3.60 V, 64Mb (8 MB)
    (SPI_NOR 25xx family, SOP 8pin)

    Serigrafia sul chip:
    MXIC MX
    25L6406E
    MZI-12G
    3P542009

  4. Using programmer 1) and software 2) re-programmed the chip 3) with Phoenix recovery BIOS PROVIDED BY Lenovo:
    Version: v.H9ET75WW (with .bin extension).
    Software settings
    “Write IC” item, set the options:
    v OFF-Protect
    v Erase
    v Blank Check
    v Write
    v Verify

  5. Subsequently from UNDER the old Windows 10 Home OS (which was already present in the laptop), the Lenovo .exe utility was launched to update the BIOS to the LATEST (and current) v.H9ET92WW.
    ESSENTIAL: a MODIFIED .bat file was used to bypass the laptop battery check, which must be at 100% charge, otherwise the procedure would be blocked (the laptop had a worn out Li-Ion battery)!
    Obviously power the laptop with mains power from behind UPS!!!

  6. For steps 4) and 5) TWO (2) backups of the BIOS present in the EEPROM were made (they must be 100% IDENTICAL!!!) and saved in .bin format for possible future use (the two files were verified at the time of their creation, with CRC OK!).

The update to the latest official LENOVO version was performed to prepare this laptop for the installation of the NEW Windows 10 OS, even if LENOVO DOES NOT certify its real feasibility / support: in fact, originally this family of laptops had official support ONLY for Windows 8 and initial versions of Windows 10 Home.

Dear “Dado98”, I hope this example can give you an idea of ​​what it means to flash an EEPROM… and I am NOT a highly experienced user, even though I have a certain level of engineering training that helps me a lot in everyday life.
Good luck!
/