[Guide] Using CH341A-based programmer to flash SPI EEPROM

Sir… in which post of yours from last 7 days, did you mentioned or asked for any file/tool linked to the forum past user Lost_N_BIOS Guru (Retired) ???

I only see a request for a similar adapter for Asus like the one linked for MSI header…
Care to explain the post #774

Now regarding your flash attempts, verification is not done with the app/device… JFYI…
Desolder the IC and check it outside the PCB, if still fails it may be damaged.

The tool you quoted is exactly the tool mentioned by LnB.
Still, not sure I understand.

As per your advice, I do not want to desolder anything, that is why I need the tool in the first place.

Probably it is me and my poor English.

Thanks anyway.

Sorry… i quote it? Where?
Just write the name of it cause i really can’t figure it out…

My dear friend, it is this one attached.
You quoted it when you reply with my message. It is clearly visible.

But again, nevermind.
This request is becoming incredibly weird.

You better switch translator…

Thanks for the advice.
And to be so polite by the way.

Anytime, polite and straight to the subject is my MO, all the best.

6 posts were split to a new topic: Asus Z490-P issues

Just an update.
I fixed the x370 pro.
I used a dump of another x370 pro, edited the dump with the only data I could retrieve from my sticker (the MAC address), and flashed with external programmer.

Next time before doing anything I need to save the bios first.

Earlier I made a post (that is now deleted) in which I described the horrible experience I had using my Ponoma SOIC8 clip, my CH341A programmer and NeoProgrammer.

Basically, the device that I was flashing is a laptop with a Winbond chip, specifically the W25R128JWSQ, my CH341A programmer was set to 1.8V output so that was already good to go, but then NeoProgrammer would detect the chip as a W25Q128FW (ID was “EF6018”), but since there were two variants of that chip, it would give me the option to choose:


The W25Q128FW that’s at the top could read successfully, I got a good dump with it (and I know because I flashed it later but we’ll get to that part), but this exact “device configuration” could not write correctly, it would write, yeah, but it wouldn’t write what it was supposed to, so verification would fail and then I bricked the laptop, it wasn’t booting at all.

Then I turned to the other “device configuration”, the W25Q128FW_1.8V, which oddly enough in the “Volts” part says 3.3V but the name has 1.8V, however this one could do both read and write without any problems, which is kind of surprising and confusing at the same time, using this one I managed to flash the dump I got previously and the laptop booted without any problems, as expected it complained about the CMOS checksum (triggering a CMOS reset) but oddly enough none of my BIOS settings were reset.

The BIOS that I wanted to flash was the same as the dump except that it had a higher microcode revision (to update it), it was modded using the latest version of UBU to include the higher microcode revision.

Original:


Modded:

If anyone wants the images:

So to summarize, the confusing mess that NeoProgrammer had with how it would detect my laptop’s SPI flash led me to brick the laptop, then I chose the correct SPI flash chip even though they should be the same and the correct one had a good flash on the first try.

No idea if the modded BIOS (based on the dump I made) is actually good or not and I don’t have time to test it out for now either, but at least my laptop is back.

Just some information regards the requirement for the Volt mod 3.3V vs 5V relating to the CH341A programmer.

I have two of these programmers, one modded to 3.3V one not. Never had a problem using either regards to to the Voltage issue. I always wondered WHY?. Now I know…

Watch this.

Request for Help: Flashing the Winbond W25Q128BV Chip on HP Z620

Situation:
My HP Z620 is stuck in a boot block/failure state after a failed firmware update. The system was working fine prior to the update. I’ve tried every BIOS recovery method I could find (USB flash, key combos), but none have worked. I am now attempting to flash the BIOS chip directly using an external programmer—but I cannot get the programmer or software to detect or read from the chip. All I get is a readout of (FF) or “unable to detect USB device,” even after installing all required drivers.

System Details:

  • Model: HP Z620 Workstation (Motherboard V2)
  • OS: Windows 11
  • BIOS Chip: Winbond W25Q128BVFG (16-pin SOIC, 128M-bit Serial Flash)

Steps Taken:

  • Identified the BIOS chip as Winbond W25Q128BVFG (SOIC 16-pin).
  • Downloaded the chip’s datasheet for pinout and protocol reference.
  • Downloaded multiple BIOS .BIN files (J61_0392, 0391, 0395, 0396).

Attempted Procedure:

  • Started with a USB Programmer CH341A (Black & Gold) with a 16-Pin Test Clip.
    • Discovered a voltage issue, returned it, and ordered the V1.7 version (Green with voltage switch).

  • Tried multiple programming utilities: ASProgrammer, NeoProgrammer, and Flashrom. (They only show W25Q128BV or FV, none have the BVFG)
  • Replaced the test clip and even tried another Z620 motherboard.
  • Verified connections and orientation multiple times.

Items of Note:

  • Most documentation for the CH341A programmer covers the 8-pin test clip, but my chip is 16-pin.
  • The only pinout diagram I found for the programmer was a blurry image in Chinese.
  • Using a multimeter, I found that Pin 2 and Pin 10 on the programmer seem reversed or the pinout is different from the chip’s datasheet.
  • I have not found a definitive pinout diagram for the CH341A programmer with a 16-pin clip.

Has anyone successfully flashed a W25Q128BVFG (16-pin SOIC) chip? If so, what setup (programmer, clip, software, wiring) did you use?

Any advice would be greatly appreciated!

Hello everyone, can anyone help me with bios downgrade issue. Below is the post with details.

Hello everyone, I have issue of the chip not being detected using the CH341A.

My chip:
winbond 25Q128FW5Q 1829

My Setup:


Program 1:

Program 2:

Program 3:

What I have tried so far:

  • Ensuring the connections are correct and tight.
  • Fixing the clip trying to ensure proper connection with the chip
  • Using the different version for program

Iam now very lost as to how to resolve this. Please help.

Take out the CMOS battery and PSU atx stand-by, last resource IC desoldered from pcb.
Some boards can use JSPI header

EDIT: … a common issue, plenty of times mentioned in the forum, these are cheap ones with short life spawn, especially the plastic claws. But do please report for other users guidance about CMOS battery present or not etc…

Hello, thanks MeatWar for the suggestions. I tinkered a bit more with the programmer and the issue was my “Clipper” wasnt properly set with the IC Chip. So I had to resort to using jumping wires to manually set and hold for each pin ( it was a pain😥) but none the less, after that the chip was recognized and I was able to program the correct bios.

Thank you again MeatWar for the resources.

Hi everyone! I’m trying to use a ch341a with ASprogrammer on a laptop running win 10, to flash the bios of a xmc chip, but when I’m connecting just the programmer and I’m trying to detect it in ASprogrammer it doesn’t show up nothing in the main window just in the log at the bottom it shows the following:
AsProgrammer dregmod v3.17

[email protected]
Current programmer: CH341
ID(9F): FFFFFF(Unknown)
ID(90): FFFF(Unknown)
ID(AB): FF(Unknown)
ID(15): FFFF(Unknown)

and when I’m trying to connect my bios chip with the soic8 clip and trying to detect it it shows in the log:
Current programmer: CH341
ID(9F): 204418(Unknown)
ID(90): 2017(Unknown)
ID(AB): 17(Unknown)
ID(15): 2020(Unknown)
can anyone help me with this?
Thanks in advance!

Im sorry but what does this have to do with a “mod” of the original app developer and its functions??? Ask the modder…

And there is more apps that just ASprogrammer… no IC ID provided, no system board ID provided… “a laptop…” great info for helpers…

maybe my post didn’t address the right topic since I’m new here and I’m not so familiar how to write sorry for that. all I wanted was to show my log and see if anyone can help me how to connect my programmer correctly.

The current one and 2 more threads of it should be enough
[Guide] Flash BIOS with CH341A programmer - BIOS/UEFI Modding / BIOS Modding Guides and Problems - Win-Raid Forum

[Guide] How to Use a CH341A SPI Programmer/Flasher (with Pictures!) - BIOS/UEFI Modding / BIOS Modding Guides and Problems - Win-Raid Forum