[Guide] Flash BIOS with CH341A programmer

Hello,

I am trying to recover the BIOS of a Lenovo IdeaPad 320-17IKB. But the size of the BIOS.FD file (9.457kB, 9,2MB), the BIOS ROM, is larger than my 8MB (64MBits) GIGADEVICE GD25Q64 BIOS chip. I think it also contains things like the EC ROM. Could someone please help me? I can just write and erase the chip. Now the device just turns on and off repeatedly.
BIOS.zip (5.1 MB)

AsProgrammer v2.0.4 (26-07-2023)

Release Version 2.0.4 Ā· nofeletru/UsbAsp-flash (github.com)

Has anyone had problems with the 1.8 V adapter? I cannot get it to work. Iā€™m measuring the input 3.3 V clock with an oscilloscope and can see that itā€™s toggling, but the 1.8 V output clock is not.

However, having a closer look at the level shifter IC I wouldnā€™t expect the adapter to work either. The IC is a TI SN74ALVC164245 and the datasheet describes the IC as a ā€œ16-Bit 2.5-V to 3.3-V or 3.3-V to 5-V Level-Shifting Transceiverā€. It doesnā€™t support 1.8 V!!

Iā€™m confused. I suppose itā€™s working for most people? Iā€™ve seen pictures of the adapter populated with an NXP version of the ALVC164245 IC. This version seems to support a wider voltage range, all the way down to 1.5 V.

So, Iā€™m guessing that someone put the TI version as a second source, but never checked that it was fully compatible.

/F

Hello, am trying to flash a winbond W39L040P-90B is the external flasher compatible with this chip bios?
Thanks

This is a 32 PLCC package, needs the right adapter or pcb holder and a compatible app with the IC model on his database.

1 Like

Hello MeatWar, the bios chip is soldered on motherboard.
Am searching compatible external bios flasher to reflash the bios.
Thanks

ā€¦whats the surprise here, that the IC is soldered???
You now have the info of the package and specs, do your job and start looking for something that fit your needs using your time not others task on their spare time, this is NOT a ā€œregularā€ IC that usually you see users asking help on how to work with it.

hi @Pasmod1 ,
if your MX25L6406E is a 16pin IC,
make sure pin1 ( HOLD#) of IC goes into input 7 of CH341A.
make sure pin 2( VCC) of IC goest into input 8 of CH341A.
make sure pin 7 (CS#) of IC goes into input 1 of CH341A.
make sure pin 8 ( SO/SIO1) of IC goes into input 2 of CH341A.
make sure pin 9 ( WP#) of IC goes into input 3 of CH341A.
make sure pin 10 ( GND) of IC goes into input 4 of CH341A.
make sure pin 15 ( SI/SI0O0) of IC goes into input 5 of CH341A.
make sure pin 16 ( SCLK) of IC goes into input 6 of CH341A.
initially , i have got the same error about ā€œunprotectā€ while attempt to erase, when i had my pin translation wrong . After reading this thread and understanding how a 16pin translate to a 8pin label/naming convention, i was able to erase the flash chip.

Hi,

Having trouble getting my CH341A working. Tried like every version of ch341a programmer software and ASProgrammer and the device is not recognized never mind reading the chip. Using a test spare winbond chip to figure this out. First not sure which driver do I install SER or PAR version? And not sure if this is a Windows 11 issue because I know how Windows 11 disables drivers. Can anyone advise please?

Thank you

I instructed you on the other thread, driver is PAR v2.5
ASProgrammer, COLIBRI or NEOProgammer
{D6F16AFE-B0B0-4277-9A5A-C7B3A825400A}

EDIT: Sirā€¦ i didnā€™t shared no package on the other thread, i linked the source of the drivers, scroll the list and youā€™ll find it as EXE or ZIP.

I missed it sorry.

Finally got the CH341A recognized. Seems like Windows 11 likes 2.5 PAR driver. Anyhow was using the wrong size soc connector I think. At least its recognized except Windows will disconnect the device if it has a bad a connection. Hope I didnā€™t fry my CH341A device. Wish it was boxed in plastic or in a case to protect it. Will have to look for the right size connector and try again. Thanks.

Is it the common design with a black PCB? Is the red LED on when you plug it in?

Does it appear in Device Manager? I used some version of NeoProgrammer and installed the driver that came with it. It worked like a charm.

Where are you getting this information from? I can check the version numbers for you if you want? But Iā€™m on Windows 10. As I have only used NeoProgrammer, and I had good experience with the setup, I can only recommend that.

Depending on batch or version, these SOC adapters are sometimes labeled, and sometimes not. Mine are not labeled, except for one I think. So it depends on what you get in the package. Check before you connect. Do you plan to use it out-of-circuit? With chip off the board?

I know what you mean. I used mine for in-circuit programming, and I had the programmer lay on top of the PCB of the tablet that I wanted to read the chip from. What I did is I put a small plastic zip bag between the tablet PCB and programmer PCB for isolation. I would suggest you do the same.

Also, the programmer weighs almost nothing. So I had the USB cable looped through the loop of my hot air station (it was off) and to the side of my keyboard to avoid pulling or sliding the USB cable and the programmer moving around.

@Masato

Yes. It is the common design with black pcb and the LED is red when I plug it in to the usb port. Light goes out when the test clip is in use. Also the bridge board that plugs in to the grid is blue.

Since PAR ver 2.5 it does appear in device manager now but fades out in device manager when connected to a test chip. Think was because was using wrong size test clip.

I wasnā€™t using Neo Programmer but just found a copy on my hard drive coincidentally so will try it out.

Was planning to use it with chip connected to board on an HP Prodesk SFF 600 (talking about it on other thread). Tried to connect yesterday but failed. Thank god it still works. For testing I have an old spare Winbond chip but that chip is bigger than the one on the HP.

I also am curious weather or not I can reflash an old Pioneer Bluray drive. to a previous version using the programmer. Think that one has a 16 pin bios chip. Will have to take it apart and see.

I also own a flash Cat Usb programmer but that one requires pin to pin direct connection which I once did but I am sure there is an adapter somewhere I am not aware of that allows direct soc clip connections. Anyhow when not lazy I use an old antistatic bag but lately just winging itā€¦

Thanks

Never out on mineā€¦ the power indicator stays on (RED)
and the operations R/W led when in use (AMBAR),
also when thereā€™s a bad connection/wrong pins assignment, the 2 leds will go both RED.

Colors will differ from vendors, can be both red or red/green/ambar.

One thing to consider here is to only connect the programmer to USB/power after making the appropriate connection to the chip (disconnect in reverse order). Especially if youā€™re trying to connect a SOIC8 test clip directly to a chip on board for in-circuit programming. You want to make sure you make a good connection and correct connection, before you put the power on.

Also, I didnā€™t find any explicitly stated instruction in this guide and in other guides on this site saying that you need to have the laptop/tablet powered off. But it is implied, and common sense dictates that it should be powered off.

However, on other sites, some people are saying that the current delivery from the CH341A programmer may not be enough to power both the BIOS chip and the rest of the board, and that you should have the board externally powered.

I would not recommend it! I would power the board off before connecting the programmer for in-circuit programming. Thatā€™s what I did, but although with a low-powered Windows 10 tablet, and it worked immediately. Also, take the CMOS battery out (CR2032) if there is one (there was none in my tablet), before you connect the programmer.

So my recommendation:

  1. Power the board off.
  2. Take the CMOS battery out.
  3. Disconnect main battery if itā€™s a laptop/tablet (or disconnect power cord if itā€™s a desktop).
  4. Connect the SOIC8 test clip to chip.
  5. Connect the programmer to USB port on the computer.

I donā€™t know if this is the reason youā€™re having issues. But this is what I did, and the reasoning I used. This was in fact the very first time I ever did something like this, and it worked like a charm. I think CH341A is a very good choice for a hobbyist and DIY repair guy like myself.

By ā€œgridā€, you mean the black ZIF socket on the programmer? And by ā€œbridgeā€ I assume you mean the different adapters. They are usually blueish in color, more like cyan. I used one of those adapters for 1.8V because thatā€™s what my chip was using. You have to make sure you get the pins correctly. There are two compartments in the ZIF socket on the programmer, one for SPI and one for I2C (you can see from the bottom of the programmer).

Is this a loose test chip or is it soldered on to a test board? Do you have another USB cable you can try? Is the cable very long? Do you have anything else connected to that USB port like a USB hub? The cable could be bad, or if itā€™s very long and you have other devices connected via USB hub, you could be having a voltage drop (however small). Make sure you have nothing else connected to that USB port to ensure you get maximum power out of it.

I checked the version number for you. I used NeoProgrammer 2.2.0.8.

I got it from a site called Khan Dish Network:
https://khandishnetwork.com/download/neoprogrammer-software-2021-v2-2-0-8-22-06-2021/

I donā€™t have it connected right now, so I canā€™t check it in Device Manager, but hereā€™s the driver version info. Itā€™s version 2.2.2009.06.

[Version]
Signature = "$Chicago$"
Class     = WCH
ClassGuid = {77989ADF-06DB-4025-92E8-40D902C03B0A}
Provider  = %WinChipHead%
DriverVer = 06/05/2009, 2.2.2009.06
CatalogFile.NT = CH341WDM.CAT

I donā€™t know what SER and PAR drivers are, but this is what I used. I hope it helps.

So last night tried to make a connection to the MX25L12873F Matronix flash chip with a test clip and tried AS Programmer, Neo Programmer, and CH341A Programmer software and all three failed to get a proper read off of the MX25L12873F. I did not attempt to flash it until I figure out the issue. Read the technical document and according to the PDF it is a 3.3v chip. I google searched the MX25L12873F and there are multiple threads about bad reads and people not having luck flashing it. Some suggested it might be write or read protected. Even with the chip desoldered they had the same problem. Right now my best guess in my case is a poor connection maybe I need to use a test clip one size bigger. Wil try that theory out tonight but as others have also had same issue not sure that is the problem. I also will try my FlashcatUsb programmer and see if that works but before I do wonder if anyone out there has successfully flashed the MX25L12873F and how you did it? Thanks

According to Chatgpt the MX25L12873F is not compatible with the Ch341A!

Chatgpt:

Your CH341A programmer is likely failing because it does not support Quad I/O mode, which is always enabled on the MX25L12873F. Try one of the workarounds or a different programmer that supports Quad SPI.

Macronix Serial Multi I/O (MXSMIOā„¢) Flash provides not only Single I/O, but also Multi-I/O interfaces. MX66xxx35 or MX25xxx33/35/39/73/75 series offering Dual I/O or Quad I/O operations which double or quadruple the read performance of systems for high-end consumer applications.

From
https://www.mxic.com.tw/en-us/products/NOR-Flash/Serial-NOR-Flash/Pages/spec.aspx?p=MX25L12873F&m=Serial+NOR+Flash&n=PM1914

Datasheet

Iā€™d rely on datasheets instead of blindly trusting unreliable sources and spreading wrong information.

There are in addition several reports of this chip type being read and written without problems. That excludes normally a systematic problem with the chip type and reduces the possible causes to board design or operator error.

Iā€™ve been ā€œpickingā€ with some users that come here to this forums with such ā€œresultsā€ā€¦
and there is your answer from lfb6ā€¦
We cant and shouldnā€™t rely on these ā€œPrimitiveā€ technologies and ā€œfillā€ their owners greedā€¦
and we are talking of delicated programming operations, man maid and mannedā€¦
Let those things tell you some hotels, shops or partys near youā€¦ thatā€™s its.

I keep askting them how to get rich before i diedā€¦ the only anwser is, first make them ā€œrichā€ā€¦

Cant you guys understand that all this ā€œthingā€ does is to collect published offical and non official, tons of BS etcā€¦ around the web and interpreted as the 'Thing" wants, giving you

Call me whatever you guys wantā€¦i dont mind, but please keep this forum alive with real persons with all the mistakes humans do.

Thank you.

1 Like