CH341A Serial Memory Programmer Power Supply Fix - Page 1
Forum section: electronics / repair

author: johnmx
author_rank: Frequent Contributor
timestamp: October 14, 2017, 12:29:37 pm
content: I bought one cheap chinese CH341A serial memory programmer black PCB (see attached picture).Someone already did the schematic of this board (atached). Source:https://www.onetransistor.eu/2017/08/ch341a-mini-programmer-schematic.htmlAll Vcc connections in the ZIF socket are 3.3V but the CH341A is powered at 5V.So all I2C and SPI signals are 5V while the external memory is powered at 3.3V.There are no limiting series resistors on those signals.One simple solution to fix this issue is to simply bypass the 1117-3.3V regulator.I can use the hot air station to remove the 1117 and then short-circuit the input with the output.My question is, is it safe to just do the short-circuit without removing the 1117 linear regulator?

author: Ian.M
author_rank: Super Contributor
timestamp: October 14, 2017, 02:34:26 pm
content: Not really. A genuine LM1117-3.3V should be OK as there is a 5V version and it isn't a shunt regulator, but who knows what a 'chinesium' 1117 will do. Also, if you want to convert to 3.3V you should not only remove it but patch in a current limiter in its place e.g. a 100mA polyfuse.Why not power the CH341A at 3.3V to get all 3.3V signal levels? Lift the Vcc pin (28), and patch wire it to the V3 pin (9) and the output of the 117 3.3V regulator.

author: johnmx
author_rank: Frequent Contributor
timestamp: October 14, 2017, 03:03:45 pm
content: Quote from: Ian.M on October 14, 2017, 02:34:26 pmI thought on that solution at first, but it requires a little more work. I need to cut two tracks and place 2 wires.But yes, it is better to do like you say. A lot of serial memories are limited to 3.6V.

author: Ian.M
author_rank: Super Contributor
timestamp: October 14, 2017, 03:16:21 pm
content: No track cuts, just lift pin 28 (easy because its near the board edge with nothing in the way) and run a wire from the lifted pin across to pin 9, and on to the 3.3V regulator output.If in doubt, see the CH341A datasheet:https://components101.com/sites/default/files/component_datasheet/ch341-datasheet.pdf

author: johnmx
author_rank: Frequent Contributor
timestamp: October 14, 2017, 03:57:15 pm
content: Here is the result.Next Monday I will replace the 0 Ohm R1 with a 100mA polyswitch.Hope this helps other people.

author: davidm71
author_rank: Newbie
timestamp: November 11, 2017, 04:23:09 pm
content: Hi,I have the same usb ch341a model and got a 3.3 v bios chip to flash. Not sure what I got to do to make it run at 3.3v? Lift a pin? Can you please post a better top-down photo?Thank you

author: johnmx
author_rank: Frequent Contributor
timestamp: November 11, 2017, 05:45:44 pm
content: Quote from: davidm71 on November 11, 2017, 04:23:09 pmJust lift pin 28 and put some tape under it to prevent any short circuit. Then solder one wire from this pin to pin 2 of AMS1117 and also to C4. The side of the C4 to connect is the one connected to CH341A pin 9.

author: davidm71
author_rank: Newbie
timestamp: November 11, 2017, 05:56:26 pm
content: I thought the jumper placement controlled the operating voltage? Read pins 1-2 are at 3.3v and pin 2-3 at 5v.But if not to lift that pin you have to heat up the solder first? Please post another top down photo?Thank you

author: johnmx
author_rank: Frequent Contributor
timestamp: November 11, 2017, 06:21:49 pm
content: Quote from: davidm71 on November 11, 2017, 05:56:26 pmThe jumper is to select device mode: EEPROM programmer or serial converter. See schematic on my first post.

author: davidm71
author_rank: Newbie
timestamp: November 11, 2017, 06:25:01 pm
content: Ok. So then why did they put on the market a defective bios programmer?!

author: johnmx
author_rank: Frequent Contributor
timestamp: November 11, 2017, 08:02:17 pm
content: Quote from: davidm71 on November 11, 2017, 06:25:01 pmI guess it is the first time you buy achinesedevice.Everything you buy from Aliexpress or similar is a crappy clone of the original.In order to sell a low cost version of some device, they always use counterfeit parts and remove non-critical components.If someone creates an apparent compatible circuit that costs 1 cent less, they start to sell it under the same name and description of the previous device.They don't care about quality, only money!

author: davidm71
author_rank: Newbie
timestamp: November 11, 2017, 08:06:20 pm
content: Ok well I'm not going to try to repair this on the grounds I'm not sure how to do the repair.Is there a Brand name you recommend? The green one has been vetted on Win-Raid. Not sure which one?Thanks.What do you guys think of this product? Its a Flashcat Programmer. Comes with a 3.3v/5v switch..https://www.amazon.com/dp/B00F2P9AS6/?tag=phpprogrammeModify message

author: davidm71
author_rank: Newbie
timestamp: November 19, 2017, 08:43:26 pm
content: Just a quick update. I used my CH341A Black along with a SOIC8 Clip test adapter to jump start my dead Netbox back to life.Nothing got short circuited, the world didn't come to an end, and it just worked with out the 5v paranoia.

author: johnmx
author_rank: Frequent Contributor
timestamp: November 19, 2017, 09:04:29 pm
content: Quote from: davidm71 on November 19, 2017, 08:43:26 pmIt is no surprise that it worked. But as an EE Engineer I don't recommend to use the circuit like that.

author: davidm71
author_rank: Newbie
timestamp: November 19, 2017, 09:08:18 pm
content: Quote from: johnmx on November 19, 2017, 09:04:29 pmSad thing is I couldn't get it to work with the FlashcatUSB programmer. That one had a 3.3v setting.

author: davidm71
author_rank: Newbie
timestamp: December 11, 2017, 06:34:33 am
content: Guys,I took a volt meter and got 3.3v between Vcc and Ground. Is there anywhere else I could test for the 5v output your talking about??Thanks

author: fulda
author_rank: Newbie
timestamp: February 12, 2019, 12:38:16 pm
content: Quote from: johnmx on October 14, 2017, 12:29:37 pmHi,The trick is, that you miss 2ndLDO, that is inside CH341A chip.Checkdatasheet.At end of chapter 5.2 硬件说明 (Hardware description) is stated:CH341芯片支持5V电源电压或者3.3V 电源电压。当使用5V 工作电压时，CH341 芯片的VCC 引脚 输入外部5V 电源，并且V3 引脚应该外接容量为0.01uF～0.1uF 的电源退耦电容。当使用3.3V 工作电压时，CH341 芯片的V3引脚应该与VCC引脚相连接，同时输入外部的3.3V电源，并且与CH341芯片相连接的其它电路的工作电压不能超过3.3V。It can be translated:The CH341 chip supports a 5V supply voltage or a 3.3V supply voltage. When using a 5V supply voltage, the VCC pin of the CH341 chip inputs an external 5V power supply, and the V3 pin should be externally connected with a power supply decoupling capacitor of 0.01uF to 0.1uF. When working with 3.3V voltage, the V3 pin of the CH341 chip should be connected to the VCC pin, and an external 3.3V power supply is input, and the CH341 core is connected.The operating voltage of other circuits connected to the chip cannot exceed 3.3V.As far as I understand, that mean, that chip have internal 3.3V regulator and IO pins areNOT 5V tolerant. It mean, it always use 3V3 for communication with eeprom.

author: Sarcarean
author_rank: Contributor
timestamp: February 27, 2019, 06:23:02 am
content: @fulda FlashcatUSB uses a 5V to 3.3V LDO with 1A output. The switch on the side actually changes two MOSFETs that select either the 5V USB power or the LDO power for the entire circuit: USB PHY / MCU / SPI IO. This is one advantage of the ATMEGA32U2, it can run full speed (16MHz) at either 5V or 3.3V while providing USB (12mbit) connectivity.

author: brouhaha
author_rank: Newbie
timestamp: April 28, 2019, 01:41:12 am
content: Quote from: fulda on February 12, 2019, 12:38:16 pmI initially agreed with you about the interpretation of section 5 of the datasheet, and I was going to just hook it up to the 3.3V-only BIOS chip I need to reprogram and go for broke. However, I decided to be cautious and actually verify it. I now believe that the statement in section 5 of the datasheet is stated poorly, and what they mean is that when the chip is run from Vcc = 3.3V the I/O pins are not 5V-tolerant, but that the comment doesn't apply in the case where the chip is run from Vcc = 5V.I hooked up the SPI signals of a new CH341A MiniProgrammer to a 4ch scope, and with no EEPROM actually connected, the CH341A is driving the CS, MOSI, and CLK signals in the high state to over 4.7V, and MISO is being pulled up to over 4.7V.Note also that section 6 of the datasheet explicitly gives a Voh(min) spec of Vcc-0.5V,, and Vih(max) of Vcc+0.5V, where Vcc of the MiniProgrammer is the USB Vbus, e.g., 5V or so, rather than referencing Voh(min) and Vih(max) to the V3 pin. The Voh(min) as specified matches the observed behavior of the part.

author: panoss
author_rank: Frequent Contributor
timestamp: February 15, 2020, 05:35:41 pm
content: I 'm raising this topic from the deadbecause I alsoordered this programmerbut (having read this topic) I didn't understand: should I modify it as suggested or it works as is?Without any risk of burning the IC being programmed?

author: johnmx
author_rank: Frequent Contributor
timestamp: February 15, 2020, 05:43:24 pm
content: Quote from: panoss on February 15, 2020, 05:35:41 pmI recommend to modify it.

author: WattsThat
author_rank: Frequent Contributor
timestamp: February 16, 2020, 05:05:54 am
content: For any new players out there intending to do this mod, the OP’s bodge wire modification shown in reply #4 is done correctly. What is wrong is the original schematic, it lists C4 twice. The 104 value C4 shown on the the 1117 input is in reality C1.

author: rygelfievel
author_rank: Newbie
timestamp: April 11, 2020, 10:41:31 pm
content: I'm about to take this on and have confirmed that the programmer I bought in August 2019 has a slightly different silkscreen. What is known as C4 that @johnmx posted with picture of his mod is labeled C3 on my programmer. The bottom two capacitors next to the oscillator are labeled C4 and C5 on mine. Took meter to test continuity between C3 and V3 pin and it appears to not have changed physical location. Tested C4 with V3 pin and confirm there is no connection.I also tested the SPI header and it is still reporting 5V for CLK, CS, MOSI and MISO. So it appears nothing has changed in the circuit other than the silk screening.tsdr; C4 is now labeled C3 if you want to do the mod as physically nothing has changed.

author: bul
author_rank: Newbie
timestamp: May 26, 2020, 10:00:23 am
content: Hi!I also ordered a black ch341a and wanted to use it on a 3.3V flash, thats still soldered in PCB. Unfortunately I fried the PCB - its dead now.That leads me to this page and the fix thats discussed here.Please allow me to ask some questions:Quote from: johnmx on October 14, 2017, 12:29:37 pmWould that change anything? Bypassing/shorting the 1117 will still provide 5V from USB to the ch341a, right? So what was the idea behind that?Quote from: Ian.M on October 14, 2017, 03:16:21 pmSo no polyfusethingies are needed? just the two little wires, and of course breaking the 5V supply?Another Question: Are there by any chance ICs out there that need a signal Level of 5V and wont work with 3.3V, that could be programmed in this device?If so, I would add somehow a switch at the Pin28 to switch between 5V and 3.3V to be able to choose the voltage level.I wish you all the best and looking forward to hearing from you.Bul

author: pupa
author_rank: Contributor
timestamp: May 28, 2020, 12:05:28 am
content: Ok. I made the mods but not as per the suggestions in your post. First I lifted the supply pin and then broke the pin off in the end trying to fix routing of the wires. These pins are very weak without the support of the soldered joint. So I had to fix the IC's VCC connection first by grinding away the silicon carefully until I could solder a wire to the IC's VCC connection, then made a 3.3V bridge line from the VCC connection across the IC to create a track to solder connections to and thus restored the operation of the programmer. Then did a mod as per the information found on the internet to supply the Programmer VCC with the 3.3v. The REASON why the PROGRAMMER fries some e.g. bios chips is because the CH341A chip is supplied with 5VDC on VCC originally ..... with outputs in some modes at 5V and other times at 3.3 Volt (from the on board regulator). So the safest is to make it a complete 3.3V system for now overall. Best would be to modify it with selector for either 5V, 3.3V or target board in circuit supply for VCC to CH341A chip. The device is a very versatile winner, the Chinese final design not so much due to design flaws. The chip apparently have a 3.3V internal regulator or such functions but info is lacking at best.So in your case I think the 5V supply caused the damage. Which PCB are damaged? The programmer or Target Board?I have no problems so far reading 5V or 3.3V chips. But in case I will just change to 5V when needed. A better way will be to make or buy a daughter interface board that plugs in the ZIF socket to convert to 5V or 1.8V circuits as required.See upcoming attachments to follow. (Get message files too large >>5000KB total?)

author: pupa
author_rank: Contributor
timestamp: May 28, 2020, 12:19:40 am
content: Ok. Herewith my mod to recover from disaster.

author: pupa
author_rank: Contributor
timestamp: May 28, 2020, 12:35:17 am
content: Seen from top.Very versatile unit. Can program eeProm's as well as AVR's when using the right program. Have quite a collection of programs. The drivers is a bit of an issue as not all the apps works through the same drivers, damn annoying but not to much of a hassle if you know which driver works best with each app.Hope you come right.

author: pupa
author_rank: Contributor
timestamp: May 28, 2020, 01:21:01 am
content: Quote from: davidm71 on November 11, 2017, 06:25:01 pmDid you see the price? Many people now owns and support the unit via research and new information and apps to write to EEProms and AVR's. There are a few projects already on the net with improved circuit and PCB designs for download. Soon it will be the de'facto standard for hobbyists.EEProms is well supported through Flashrom on Linux and on Windows there is a GUI app on the older release version.AVR's are supported through a few programming apps for the hobbyist within limited support for the latest chips but then again there is MPlab for that in the meanwhile but at a cost in comparison.Now I'm just waiting for AVRdude to possibly revive, get updated and also support this programmer.

author: pupa
author_rank: Contributor
timestamp: May 28, 2020, 01:27:10 am
content: Great. I was also lucky but as you can see even in this thread, there are many people crying. Best is to be safe by studying the specs and datasheet on the BiosChip number in question mounted on the target board. Could be a expensive lesson otherwise. The BiosMod forum is a good resource for information to read about that.

author: theIC
author_rank: Newbie
timestamp: July 07, 2020, 12:17:15 am
content: Quote from: pupa on May 28, 2020, 12:19:40 amI created an account just to thank you all for the wonderful mod. From Chuck Nemeth's blog which lead me here to Pupa's fix.I attempted to do the mod, and did not have the dexterity as some of you. I attempted to use some leftover ethernet cable strands and between the insulation burning away and also breaking pin 29 from the IC, I got the idea from pupa to grind away the area by pin 29 to expose some metal to resolder the wire. Anyway, it all worked.

author: pupa
author_rank: Contributor
timestamp: July 07, 2020, 11:02:22 pm
content: Quote from: theIC on July 07, 2020, 12:17:15 amGlad it worked for You.

author: pupa
author_rank: Contributor
timestamp: July 07, 2020, 11:22:17 pm
content: Quote from: fulda on February 12, 2019, 12:38:16 pmMaybe these videos will make it clear that without the recommended mods how casual use without consideration for proper voltage levels to the target bios/memory chips could lead to a disaster. It also shows actual voltage measurements, thus how to test and confirm the voltages for yourself for peace of mind. It also confirms how versatile this device is by showing how it can be modified by providing a simple modification to further extend its use.Enjoy!CH341 Programmer 3.3V Fix:Modify the CH341A EEPROM Programmer (Black Edition) for 5V 93XXX & 95XXX Automotive Use:

author: pupa
author_rank: Contributor
timestamp: July 08, 2020, 12:09:08 am
content: Quote from: pupa on May 28, 2020, 01:21:01 amJust to confirm AVRDude 6.3 fully supports the CH341A programmer. Using the search program "Search Everything" I searched for all instances of AVRDude.exe on my development system as many programs and IDE's use it, then renamed (i.e. backed up) the original files, then updated AVRDude.exe as well as AVRdude.conf with the updated AVRDude 6.3 files taken fromhttp://forum.easyelectronics.ru/viewtopic.php?f=13&t=32626%D0%BD%D0%B0(Use Google translate to read but take note that the download links only works from original Russian site). I also patched the Arduino AVRDude folder the same way thus the Arduino IDE 1.8.12 now also it works well with the CH341A programmer.The AVRDude.conf file should contain the following information to be sure its working with the original WCH driver and port shown as "USB-EPP/I2C... CH341A" in device manager in windows 10.programmerid = "ch341a_bitbang_wch";desc = "ch341a programmer (bitbang_wch)";type = "ch341a_bitbang_wch";connection_type = usb;usbvid = 0x1A86;#usbpid = 0x5512;usbpid = 0x5523;usbvendor = "wch.cn";usbproduct = "CH341A";;

author: jakeisprobably
author_rank: Regular Contributor
timestamp: July 11, 2020, 08:00:45 pm
content: I got bored and retraced...

author: jakeisprobably
author_rank: Regular Contributor
timestamp: July 14, 2020, 06:27:21 am
content: I reworked the attached images above. I also uploaded a new version of the schematic in PDF on github. The dot pro files are included for kicad. I haven't bothered to make it pretty on github. The files are a bit of a mess as these are the result of creating the files on one computer and transferring them to another, doing a couple more edits, then making the git repository. On the bright side, I can confirm, all the files and libraries needed are included. I have also created a 1:1 reproduction of the programmer in PCBnew. Have fun.https://github.com/Upcycle-Electronics/CH341A-Pro

author: fudmuffin
author_rank: Contributor
timestamp: July 15, 2020, 03:52:16 am
content: Hi. Could someone please confirm if upon connecting to a USB power supply there should be immediately any voltage at all on MOSI or MISO?One of the videos linked above seems to indicate that we can check for the possible need for the mod by confirming that there is 5V on the data pins. When I plug my CH341A adapter (black version as discussed here) into a USB power supply I am seeing 5V on CLK, CS pins but I am not seeing any voltage at all on MOSI or MIOS (neither 5v or 3.3v). It is in SPI programming mode (with the jumper bridging 1-2).

author: pupa
author_rank: Contributor
timestamp: July 15, 2020, 05:27:24 pm
content: Quote from: fudmuffin on July 15, 2020, 03:52:16 amSimply put. There is a need to do the modifications!! Unless, if you are going to use the programmer only on your own hardware and it works for you. If you try it on other hardware e.g. motherboards, without doing your proper research first, then it could lead to a damaged equipment, Ditto. So all depends what you want to do with the CH341A. If it works "as is" for you, then fine if used on your own known equipment. If you are going to use it on other unknown hardware circuits containing low voltages components then be aware of the risks.I measured again as per request and confirm the measurements are as per the videos. See picture below.In the meantime I bought and received an additional CH341A which will be modified with adding a 3.3v/5V voltage switch. The original recovered CH341A will be used in project as daughter-board and/or its components transferred to a new design PCB with additional mods i.e.1 Add a switch to be able to choose between required voltage sources as either 3.3V, 2.8V, 5v or target board supply.2 Breakout all pins to be available for use in other modes as per datasheet (i.e. Development board).3 Add specific standard headers.4 etc.CH341A

author: pupa
author_rank: Contributor
timestamp: July 15, 2020, 06:02:57 pm
content: Quote from: jakeisprobably on July 14, 2020, 06:27:21 amAs per original circuit design?Any mods as per requirement for voltages and stability?

author: fudmuffin
author_rank: Contributor
timestamp: July 15, 2020, 11:50:13 pm
content: Quote from: pupa on July 15, 2020, 05:27:24 pmThank you for your confirmation which leads me to conclude that my CH341A chip must be damaged, as I am seeing 0v on MOSI and MIOS when the adapter is plugged into USB power (strange, as the device still enumerates correctly on USB when plugged into a computer). Anyway I have a new one on the way so I can do comparisons when it arrives. Thanks so much for your work.

author: pupa
author_rank: Contributor
timestamp: July 16, 2020, 12:07:22 am
content: Quote from: fudmuffin on July 15, 2020, 11:50:13 pmNo hassle at all.Can it read/write/verify successfully? Some units have errors on PCB. The quality systems from China are difficult to control and maintain. So you should check your unit thoroughly for solder bridges or missing components.

author: fudmuffin
author_rank: Contributor
timestamp: July 16, 2020, 12:50:41 am
content: Quote from: pupa on July 16, 2020, 12:07:22 amNo I haven't been able to get it to work. The lack of any voltage on MOSI and MISO leads me to belive the chip is broken internally, though it's strange that is still enumerates from the USB side. No solder bridges or missing components on this one. I've attached a photo of the unit just in case anything's noticeable. I would like to buy a few replacement CH341A chips to try repairing it but the loose chips seem almost as expensive as the fully constructed units.I do have a different CH341A based programmer and it does work, although when it arrived it had a capacitor installed where there should have been a 2k resistor to enable the SPI programming mode (noticed after reading the datasheet). I haven't verified if the other component values are correct. I also had to remove a solder bridge from the underside. Confirmed on this different model that there is 3.3V on MOSI and MISO by default. Attached a photo of this one too.

author: pupa
author_rank: Contributor
timestamp: July 16, 2020, 01:12:47 am
content: Do you read approximate 3v3 to 3.6 volt from the internal regulator on pin#9 of the Ch341A IC i.e same voltage across C4?

author: fudmuffin
author_rank: Contributor
timestamp: July 16, 2020, 01:52:19 am
content: Quote from: pupa on July 16, 2020, 01:12:47 amyes,3.47v on pin #93.47v across C40v on pin #200v on pin #225.15 going in to the regulator3.28 coming out of the regulator.

author: jakeisprobably
author_rank: Regular Contributor
timestamp: July 16, 2020, 04:32:26 pm
content: Quote from: fudmuffin on July 16, 2020, 12:50:41 am"Enumerates" according to the host PC or the CH341A?I think the ACT pin should go low if the chip has enumerated correctly. I have no idea why they made the jumper thing on the side, but according to the chinglish datasheet I believe the ACT pin is just supposed to connect to cathode of an LED with a resistor. The pin already has a 2k2 resistor in series and pin "3" has no connection, but is right beside a power trace. Just add a solder bridge and LED...or check with a meter.

author: fudmuffin
author_rank: Contributor
timestamp: July 28, 2020, 04:11:19 pm
content: Quote from: jakeisprobably on July 16, 2020, 04:32:26 pmFinally got a chance to check on this.. I meant it enumerates according to host PC. Under linux I see:QuoteACT remains at 5v after I get that message on host PC (also at 5v when I plug it into a USB battery i.e. nothing to enumerate with). My other CH341A (mini-USB version pictured above, which works) remains HIGH too (albeit at 3.3v) after I see the same text. I haven't looked into the CH341A enough to know whether ACT is supposed to go low when recognised by the host pc or later during some USB initialization perhaps before chip programming.Thankfully I was able to program the chip for my project using the other working one, but I'd be curious as to what's wrong with my black CH341A programmer, and will test it further in the coming weeks. I may attach a LED as you (and datasheet) suggest so I can see if ACT goes low during a programming attempt.

author: PostNubila
author_rank: Newbie
timestamp: September 16, 2020, 02:53:36 am
content: This is my mod of the CH341A. I change it to 3.3V and added 2 ZIFs: 1 for 3.3V and other for 5V (used a YF08E to convert 3.3V to 5V).The ZIFs are 24 pin so now I can program 24xxx, 25xxx, 95xxx and 93xxx eeproms!

author: firepower
author_rank: Regular Contributor
timestamp: September 30, 2020, 06:49:02 am
content: Found these two models searching for CH341A Programmer online. Has 3V3 connected to VCC of CH341A as well as socket & ICSP. has area onboard to clamp SOP8 / SOP16 chip using clothes pegNo modding needed.I bought the blue version.

author: Mcast
author_rank: Newbie
timestamp: January 18, 2021, 07:51:12 pm
content: Hello, I have a question. I lifted pin 24 and soldered on pin 2 of the 3.3 volt regulator and it worked perfectly. Why do I need to wire pin 9? What does pin 9 do? Thanks.

author: johnmx
author_rank: Frequent Contributor
timestamp: January 18, 2021, 08:31:25 pm
content: Quote from: Mcast on January 18, 2021, 07:51:12 pmThis chip has an internal +3.3V regulator. It is used when the device is powered by +5V. When the external power supply is +3.3V, it is necessary to bypass/disable this regulator by connecting +3.3V to pin 9.

author: Mcast
author_rank: Newbie
timestamp: January 21, 2021, 02:22:09 am
content: Thanks for the information.You're right, I used the datasheet of USB serial converter CH340 as a reference:"CH340 supports 5V and 3.3V operation. When using 5V operation, supply 5V to VCC pin, anddecouple the internal 3.3V reference with a capacitor of 4.7-20nF from V3 pin to ground.When using 3.3V operation, tie V3 pin to VCC pin and supply 3.3V power."

author: magic
author_rank: Super Contributor
timestamp: January 21, 2021, 09:20:51 pm
content: I suppose the 3.3V reg is used to power USB so the USB interface operates at reduced voltage without this connection because of losses in the internal regulator. Not a big deal if it works, but I would fix it.

author: Mcast
author_rank: Newbie
timestamp: January 24, 2021, 12:28:06 am
content: QuoteI tried to do what you said, I disconnected pin 28 and left only pin 9 powered, the device didn't turn on. I believe that there are other components within the integrated circuit that need power from pin 28.

author: magic
author_rank: Super Contributor
timestamp: January 24, 2021, 12:46:25 am
content: No, that's not what I meant. It looks like everything on this chip runs from VCC except for USB communications which require 3.3V.When VCC=5V the chip generates V3 internally. When VCC=3.3V the internal regulator will output less than 3.3V on V3 so USB may work if you are lucky or it may sometimes fail to work. That's why you short V3 toVCC.

author: fearconte
author_rank: Newbie
timestamp: January 24, 2021, 05:11:06 pm
content: Hi,I have a CH341A Pro black "edition" and I tried to read some chips using clamp (chips are on board soldered), first the Detect doesn't work - ok china - i have selected the correct chip from list and read the chip.on second read some data shifted and I was like this is not ok the chip is a Winbond W25X10I have tried on different chip a PMC PM25LV512A which was read ok multiple times - erase - write - all good, strange but works with PMC not with Winbond which I need.So I have searched the web and saw this post about the voltage, checked mine - 5V everywhere and I have started the mod using the OPLifted the pin 28 connect to C3 then to 1117 tested - success 3.3V - tried to Detect the chip still not working, tried to read, erase, program all errorThen I have tried next mod pin 28 to 1117 and pin 9 to 1117 - 3.3V but the same errorsAny ideas?Thank you!

author: Mcast
author_rank: Newbie
timestamp: January 24, 2021, 06:33:41 pm
content: QuoteNow I get it. I measured it and the difference between Vcc and V3 was about 130 millivolt, there is a loss of voltage too.It's like 78xx, the regulator starts to become unstable (with noise, variation and the whole thing) when the input voltage stays the same with the output voltage.I made the change, thank you all!

author: Ian.M
author_rank: Super Contributor
timestamp: January 24, 2021, 08:15:45 pm
content: @Mcast, that's a nice neat job you should be proud of.If you want to mod it to be a switchable 3.3V/5V programmer, in addition to the Vcc pin lift already discussed, you need to add a tiny DPDT switch with one pole switching Vcc between 3.3V from the LM1117-3.3V, and 5V (via a polyfuse), and the other shorting V3 to Vcc in the 3.3V position to bypass the internal regulator. Where to mount it is the problem - if its small enough it may be possible to solder the switch body to the ground track along the board edge next to the three capacitors by the regulator, otherwise epoxying it on top of the CH341A chip would be a sensible option.There's a good page about this programmer here:https://www.onetransistor.eu/2017/08/ch341a-mini-programmer-schematic.htmlFinally, for those of you less experienced with SMD rework and board mods *PLEASE* for your and our sanity, and to reduce the risk of snapping the Vcc pin, get some 28 or 30 AWG Kynar wirewrap wire or magnet wire to do the mod with! If you *MUST* use stranded wire it needs to be something really thin and flexible, but with a good quality core,e.g. a single wire stripped from an old 80 wire UDMA PATA cable, ends carefully stripped, pre-tinned and trimmed to length *BEFORE* making the joints, and you need an order of magnitude more skill to get a decent result with stranded wire.

author: Mcast
author_rank: Newbie
timestamp: January 24, 2021, 10:23:38 pm
content: QuoteI was really thinking about this upgrade, but there are 2 obstacles for me: I really care about the aesthetics of the adapter and the most of the memories I use, work at 3.3 volts. Maybe I will make a separate box to hold the new sockets and switches. Thanks for the tip!

author: protocold
author_rank: Newbie
timestamp: March 17, 2021, 02:56:38 am
content: It was mentioned in this link (in Russian):https://savagemessiahzine.com/forum/index.php?showtopic=884713&st=1880that there is yet another fault in the design to reset / set the QE bit in the second status register. (please scroll down till you reach the supported chip model section)It included some pictures but they were not very clear. (I have pulled the pictures and attached here)Is this a known issue or could someone better at this shed some light into this please?

author: Ian.M
author_rank: Super Contributor
timestamp: March 17, 2021, 05:33:47 am
content: The common CH341A programmer boards cant use quad SPI mode for faster programming as the extra data I/O lines from the CH341A chip aren't connected to anything. It would be theoretically possible, *if* the right connections were present, but would need software support and would probably be incompatible with the use of the usual software and ordinary non-quad SPI FLASH chips in the same socket.There is however a limitation of how the ZIF socket is wired, that's incompatible with certain SPI FLASH chips *IF* they have been configured for quad SPI mode, which uses those pins as I/O so naturally cant tolerate them being shorted to rails. Unfortunately the bit in question in the FLASH chip's status register is non-volatile so quad SPI mode is 'sticky', as opposed to the sane alternative of making that bit volatile and having the host processor configure the chip appropriately for the application circuit on startup. SeeWinbond's W25Q64FV datasheetfor details.The proposed mod is simply to make three track cuts disconnecting those pins from the Vcc trace on the bottom side running under the ZIF socket, to add a wire link to patch the interrupted Vcc track back together, leaving out the /HOLD pin, then to fit pullup resistors from the Vcc track to the /HOLD and /WP pins. *IF* you need the capability to program DIP-8 package SPI FLASH chips with non-volatile quad SPI mode, and to be able to enable that mode with the chip in the ZIF socket you need to do the mod. Some magnet wire and a couple of 0402 10K resistors should let you do it very neatly. Any resistors bigger than 0603 will be problematic due to the limited space between the Vcc track and the /Wp pin. Otherwise, if you are programming in circuit, simply make sure your test clip lead includes 10K resistors in series with the /HOLD and /WP pins.

author: protocold
author_rank: Newbie
timestamp: March 17, 2021, 07:58:57 am
content: I see. Many thanks!This maybe off topic for this thread. But do you know much about read/writing spi nand with the CH341A? There is a software called SNANDer but I have not been able to get consistent read out of this. Reading a 128MB spi nand chip will always have a few bytes different.https://github.com/McMCCRU/SNANDerAny idea? possible bad chip?

author: yunLad
author_rank: Newbie
timestamp: April 23, 2021, 12:48:46 pm
content: Hi to people of eevblog forum! I wish I found this thread before the damage was done, 3v3 vcc and 5v on data… oh well.For inspiration I wanted to share my execution of the 3V3/5V mod with spdt switch on the layout @jakeisprobably traced, big thanks for that!Cut 3V3 track going from the middle pin of voltage regulatorAdd a capacitor to the output of that regulator just to be sureLift the VCC pin, insulate with capton tape underneath and connect it to the cut ex3V3 track right next to itAdd a spdt switch or jumper to choose voltage on that ex3V3 trackAdd a shottky from voltage regulator output to pin 9

author: rivest
author_rank: Contributor
timestamp: May 15, 2021, 05:52:19 pm
content: This version has a voltage switch but the price is a little higher:https://www.aliexpress.com/item/4001272558261.html

author: RaceJay
author_rank: Newbie
timestamp: October 25, 2021, 05:37:29 pm
content: Hi'all,Actually, there's a much easy way to do this fix; you just have to cut a track on the board and add a plastic jumper on pins labeled '3.3V' and '5V'. I've have successfully flashed a Winbond 25Q64FVSIG which is a 3V chip.Cheers!https://www.geocities.ws/racejay/ch341a/3.3V_Easy_Fix.jpg

author: maronz
author_rank: Newbie
timestamp: December 28, 2021, 10:22:35 pm
content: I've just wanted to stop by to thank the original author, and all the contributors which helped me to make up my mind.In the end I went with the "no solder" modification as suggested by "RaceJay". Of cause I've read that V3 (pin 9) should be connected to 3.3V, but it appears that this was not required to successfully program the 25Q128 BIOS chip in my HP Folio 9480m.

author: beez276
author_rank: Newbie
timestamp: February 10, 2022, 09:56:28 am
content: Hi,I modded my CH341A, but I don't get 3.3V when verifying voltage.GND > CLK 3,18VGND > CS 3,24VGND > MOSI 3,19VGND > MIOS 3,18VI was able to read Thinkpad T440p's EEPROM, but is it safe to write chip with these voltages?

author: Ian.M
author_rank: Super Contributor
timestamp: February 10, 2022, 10:33:09 am
content: Probably. The Thinkpad T440P has two Serial FLASH chips, a W25Q32FV and a W25Q64FV. Winbond state both have an operating voltage range from 2.7V to 3.6V,but buried in the datasheets, you'll also find the requirement thatQuoteCheck your programmer's 3.3V regulator output voltage, while connected to the target. I suspect its somewhere near 3.2V. Also check the Thinkpad's 3.3V rail voltage, powered on *WITHOUT* the programmer connected. The datasheets say +/-10% difference (but still within the 2.7V to 3.6V range) is permissible. I'd want some safety margin, so if the two measured voltages differ by less than 0.17V (slightly over 5%) it will be OK to write the FLASH.

author: PRSXFENG
author_rank: Newbie
timestamp: February 13, 2022, 02:24:37 pm
content: Hello there!I got one of these today, and I noticed the PCB layout of mine is different compared to the one posted in this forum by jakeisprobably. Also, the YJ text is missing on the backWith that said, it is still sadly 5v powered. I tried to read a chip without modding. Unfortunately I killed some other chips on the bus.I did the mod and the chip reads fine, but sadly the board (a USB to SATA adapter) is deadFor being a soldering noob, surprisingly didn't end up ripping the pin off

author: Ian.M
author_rank: Super Contributor
timestamp: February 13, 2022, 03:08:50 pm
content: You didn't rip a pin off because you used thin enough solid wire, as I advised back in reply #55.All I can say about your soldering without being cruel is: Solder joints are meant to be shiny and have generally concave fillets that 'blend' where they meet the wire, pin or pad, not be grey and blobby. The latter are signs of a 'dry' (bad) joint, too much solder and either movement while it cooled, not enough heat or a lack of flux, maybe due to carrying*the solder to the joint on the bit so the flux core burnt off before it got there - Always apply the solder to the work, never to the bit (except after wiping it, the bit needs a tiny drop put on it for good heat transfer).However if it works, best to leave it for now. I strongly recommend practicing adding mod-wires to scrap boards, and also removing and replacing components on them to improve your skills before you work on anything valuable. The time to learn is *NOW* so don't wait till you desperately need the skills.* Carrying solder on the bit for as short a time as possible is permissible, indeed necessary, for certain specialist techniques (e.g. drag soldering) but *ALWAYS* with extra electronics grade flux pre-applied to the work.

author: surfwrite
author_rank: Newbie
timestamp: June 09, 2022, 01:41:04 pm
content: How to convert a 1.8v adapter and separate WP and HLD with resistors to VCC to read and write QUAD QEWill it be possible to save a flash dump, because the adapter's transmitter is one way directionalDoes it make sense to remod WP and HLD on both the ch341a itself and on the 1.8 adapterDid anyone have pictures of the WP and HLD conversion via resistors on the 1.8v adapterThanks to you

author: free_electron
author_rank: Super Contributor
timestamp: June 09, 2022, 01:55:25 pm
content: what software do people use on this ? i see lots of boards but no seller mentions the software. is there such a thing as a generic spi / i2c software as well ( not just targeting eeproms, but more general where you can rea/write anything or even sniff a bus ?

author: grantb5
author_rank: Regular Contributor
timestamp: June 09, 2022, 03:02:27 pm
content: I just gave up for this very reason (software hard to find, sketchy sources, etc). There are at least 3 packages that I could find and it took a long time to find those. Keep in mind I didn't test any of them since I didn't have a CH341A dongle. I've since closed all those tabs, but AsProgrammer was one and CH341PAR.EXE was another.I ordered a FlashCat and will report on my findings after I try it.

author: NiHaoMike
author_rank: Super Contributor
timestamp: June 20, 2022, 07:10:30 pm
content: Quote from: free_electron on June 09, 2022, 01:55:25 pmThe free Flashrom program is very good.https://www.flashrom.org/Flashrom

author: voltsandjolts
author_rank: Unknown
timestamp: June 20, 2022, 07:34:01 pm
content: Quote from: free_electron on June 09, 2022, 01:55:25 pmApparently NeoProgrammer works great with it, although I've never used it myself.The creator is posting the software on4PDAwhich requires registration for downloading, but the russian captchas are a pain...so here is a link:NeoProgrammer V2.2.0.10.zip

author: camber
author_rank: Newbie
timestamp: July 21, 2022, 12:26:29 pm
content: I bought a black CH341A and made the recommended modification. I measured pin28 and data lines, all have 3.3V.I use Neoprogrammer V.2.2.0.10. I can read a chip, erase it, and verify it is blank but I can not write to itI checked with 3 different chips (BY25Q64, BY25D16, P25Q16H) and 2 computers (one Win10, the other Win11).Every time I try to write, Neoprogrammer hangs (not responding) and CH341A disconnects (hear a sound, red light ON but yellow goes OFF).Is CH341A faulty?

author: friskydingo
author_rank: Newbie
timestamp: July 25, 2022, 01:01:42 am
content: Quote from: camber on July 21, 2022, 12:26:29 pmCheck the datasheet for the chip you may need to lift a pin to disable write protect, happened to me with a tcon board for a tv.

author: camber
author_rank: Newbie
timestamp: July 26, 2022, 12:48:04 pm
content: Good point. The datasheet is in Chinese but as far as I can tell there is no write protect pin.I resoldered every joint. I measured every component and is OK. I will order another board.

author: Roland_W
author_rank: Contributor
timestamp: August 25, 2022, 01:03:36 pm
content: Hi All,I bought a black CH341A and made the modification to use it with 3.3V, and 5V signal. I add the goldpin to power supply selector 3.3V or 5V.Below the SPI signal measure using the saleae.com logic analyser 3.3V interfaceScreenshot 2022-08-25 143137.jpg(206.61 kB. 1334x1092 - viewed 1068 times.)Below the SPI signal measure using the saleae.com logic analyser 5V interfaceScreenshot 2022-08-25 143314.jpg(138.45 kB. 1155x1060 - viewed 782 times.)

author: Chamara Electronic
author_rank: Newbie
timestamp: September 21, 2022, 10:17:46 am
content: I find the problem of some ic not respondingError message is IC not respondingThis is video i made about,https://youtu.be/Ooe0mcnHb5M

author: Georgdew
author_rank: Newbie
timestamp: October 17, 2022, 07:52:48 pm
content: Hello Roland_W . Some of my opinion,explaining from your picture which I have modified below..It was unnecessary to cut the threshold fromU1toC1Capacitor. You will use3.3Vand5Von the same capacitor, you will have an unstable fluctuation.3.3Vand5Vhave separate capacitors, that isC2andC1..Which means that each capacitor has different ratings (its own ratings) for different Voltages...See my Mod in the next comment..

author: Georgdew
author_rank: Newbie
timestamp: October 17, 2022, 09:53:12 pm
content: My modification:Tested and working properly..1.Reading bios dump file2.Deleting the bios chip dump file3.Writing the bios dump file

author: impetus_maximus
author_rank: Contributor
timestamp: June 16, 2023, 05:09:53 pm
content: was this mod ever really necessary? i purchased a KeeYees SOP8 SOIC8 Test Clip and CH341A USB Programmer recently. when not hooked to a chip, it has 5v on the data(?) line. after connecting it to a video card BIOS chip, the pins that were 5v now show 3.5vso, was this a case of early version issue or was it one person checking the open voltage and everyone freaking out?

author: DavidAlfa
author_rank: Super Contributor
timestamp: June 16, 2023, 07:38:51 pm
content: You're forcing the pins to clamp the voltage coming from the ch341, it's up to you to "freak out" or take the risk.But one day you might want to read some important memory and get a surprise.

author: coromonadalix
author_rank: Super Contributor
timestamp: June 18, 2023, 01:33:21 am
content: some infoes hereneed registration i think or password to unarchive them ?https://4pda.to/forum/index.php?showtopic=884713&st=7440neoprogrammerhttps://forum.laboneinside.com/viewtopic.php?f=35&t=76asprogrammer i think replaced by neoprogrammerhttps://github.com/nofeletru/UsbAsp-flash/releases

author: impetus_maximus
author_rank: Contributor
timestamp: June 25, 2023, 05:52:36 pm
content: Quote from: DavidAlfa on June 16, 2023, 07:38:51 pmi see. it's my understanding the programmer limits the current. now i'm hoping to find scrapped chips to see if i can read, then possibly kill one with it.Quote from: coromonadalix on June 18, 2023, 01:33:21 amthanks

author: DavidAlfa
author_rank: Super Contributor
timestamp: June 25, 2023, 09:22:41 pm
content: Killing chips is rare, but do you really want to take the risk?Furthermore, the modification is really simple.

author: impetus_maximus
author_rank: Contributor
timestamp: June 26, 2023, 01:11:47 am
content: Quote from: DavidAlfa on June 25, 2023, 09:22:41 pmwell i risked it, and was victorious. (this time)

author: Ian.M
author_rank: Super Contributor
timestamp: June 27, 2023, 11:35:13 am
content: Do you also boast about jaywalking on the freeway?The only reasons *NOT* to do the mod are if you lack the skills to lift a SOIC pin and run some bodge-wires, or if it isn't your CH341A board. Even the need to work with 5V memory isn't a reason not to, as the switchable version of the mod isn't much more expensive or difficult to do.

author: Starfox
author_rank: Newbie
timestamp: December 01, 2023, 12:11:12 pm
content: Hi I´m new to this Forum and found the 3.3V Fix from here on Google.So I have modded my CH341A Black Edition, because i want to Flash a Winbond Chip with 3.3VOnly to be sure i have attached a Picture. On the above Pins for 25xxx Chipsets i have now 7 Pins with 3.3V and one Pin with GND (see Picture)Is this correct ?Schematic shows 3 Pins are 3.3V original without the 3V FixPin 11,12 and 7 has 3.3V originalNow i have additional 3.3V on Pins 5,6,9,10 (called MOSI, MISO, CS and CLK)Pin 8 is GNDOnly to be sure before i Frie my Bios Chip

author: Starfox
author_rank: Newbie
timestamp: December 03, 2023, 01:41:56 pm
content: This Voltages are correct i have attached in Picture post above.Also a new CH341A don´t have to be modified, it switches automaticly to 3.3V when connect to Chip.

author: uski
author_rank: Frequent Contributor
timestamp: January 14, 2024, 07:24:59 am
content: Quote from: jakeisprobably on July 16, 2020, 04:32:26 pmI was wondering too... I removed the jumper and realized the CH341A enumerates in serial port mode. With the jumper on, it enumerates as the programmer.Upon further research I found this in the datasheet:QuoteThe datasheet is a bit confusing. This double-function of the ACT# pin is only specified deep inside the datasheet and not where the ACT# pin is described. So that's why many people, including myself, are confused as to why this jumper was there.

author: majkl21
author_rank: Newbie
timestamp: February 01, 2024, 08:07:08 pm
content: I just want to place here some different 3V3 fix which source I found after browsing with Google:https://github.com/OpenIPC/wiki/blob/master/en/hardware-programmer-ch341a-voltage-fix.mdIt is nicer solution because you only need to cut part of 5V rail, add short wire between C4 and output of 3.3V stabilizer and connect rest of isolated 5V rail to 3.3V.In the source there is slightly different PCB version but after measuring I found that it is quite similar. Modification was checked by programming Atmel 24C01 and Puya P25Q21U with CH341 / NeoProgrammer.Shortly: Cut continuation of 5V rail on the bottom side of PCB (now it goes only to 3.3V stabilizer). On the top side connect now isolated 5V rail part with 3.3V supply via jumper between 3.3V and 5V. Finally connect pin 9 of CH341A equipped with C4 to 3.3V supply (as mentioned in datasheet for 3.3V).

author: sir_cedric_lex
author_rank: Newbie
timestamp: February 24, 2024, 04:25:44 am
content: Quote from: majkl21 on February 01, 2024, 08:07:08 pmI just noticed in your second picture (IMG_3050.jpeg) that C5 is a zero ohm resistor and not a capacitor. This might be a factory fault. C5 should normally be the same as C6 with a value of ca. 20 pF since both (C5 and C6) are crystal load capacitors.

author: sir_cedric_lex
author_rank: Newbie
timestamp: March 07, 2024, 05:29:44 pm
content: Has somebody here saved thesecond attachmentnamedch341aProB+.jpegfromReply #34in this tread?It should be a larger version of the shown thumbnail with a size of 1618.03 kB and a resolution of 2557x3300.Reason: Due to a bug, the download button downloads the third attachment (51.99 kB, 1270x738) instead.This might be a shot in the dark but maybe somebody saved it earlier...-> It looks like this, just larger

author: Ian.M
author_rank: Super Contributor
timestamp: March 07, 2024, 06:01:14 pm
content: I just had a rummage through my old PC's temp folders and found this. No promises that its the right file as this forum recompresses image uploads, but it certainly looks*very* similar. I've also uploaded it zipped, so you can see the exact file I've got rather than the recompressed version.

author: sir_cedric_lex
author_rank: Newbie
timestamp: March 13, 2024, 09:49:32 pm
content: Quote from: Ian.M on March 07, 2024, 06:01:14 pmIndeed, the image looks almost identical. Thank you very much for all the effort Ian.M!PS: I don't know if it's a problem on my side but I can't open the extracted file with any image viewer on my pc. It might have gotten corrupted before archiving but thankfully the other (recompressed) upload works fine!

author: Ian.M
author_rank: Super Contributor
timestamp: March 14, 2024, 02:40:05 am
content: Hmm. Its a 2550 x 3300 px JPEG, progressive, quality: 72, subsampling ON (2x1), and I can open the freshly downloaded and decompressed (with IzArc) zipped file here inIrfanViewwith no problems. However, none of Microsoft's Win10 image or photo viewers or editors can handle that, nor can Chromium based browsers. Maybe that's why it went AWOL!

author: md5001996
author_rank: Newbie
timestamp: May 26, 2024, 01:17:20 am
content: Quote from: Georgdew on October 17, 2022, 09:53:12 pmI like this mod, a 5v and 3.3v switch.Only lift pin 28 and solder cables like on your images and add switch?@DavidAlfa The mod seems reliable, but in my case I am getting the CH341a from amazon, so I would like to know if this will help, although I would like to solve the WP/HOLD pins issue as Libreboot says:https://libreboot.org/docs/install/spi.html#do-not-use-ch341a.But the pictures is low quality and I can't see which pins/tracks to solder/cut. According to what I saw in the pictures, i understood the following and I modified the pictures (although I would require validation if what I indicated in the modified pictures is correct)Separated Images is Libreboot Images (0000_th.jpg and 0001.jpg ) and one image is my modified photo to do at least the WP/Hold Pins (ch34a.jpg).

author: md5001996
author_rank: Newbie
timestamp: May 26, 2024, 01:23:09 am
content: Also I would like to know if what I show in the picture (ch341a with a logic converter) will also work.

author: likorna
author_rank: Newbie
timestamp: July 04, 2024, 07:57:49 am
content: My modification of the black programmer. It can be switched from 5V to 3.3V and from 3.3V to 5V. For 1.8V chips I use a simple adapter.

author: md5001996
author_rank: Newbie
timestamp: August 24, 2024, 01:59:30 am
content: Which components i need to solder? My ch341a is different and i cant solder as shown in the photos...

author: md5001996
author_rank: Newbie
timestamp: August 24, 2024, 02:00:38 am
content: Quote from: likorna on July 04, 2024, 07:57:49 amSee my pics... i cant solder as says in your photos...

author: Tantratron
author_rank: Frequent Contributor
timestamp: November 15, 2024, 09:05:30 am
content: Quote from: fulda on February 12, 2019, 12:38:16 pmHello, I've purchased this week from Amazon this modelhttps://www.amazon.fr/gp/product/B07SNTL5V6but I would need some confirmation or help regarding if the 5V issue is solved nowadays.Attached 2 pictures of the programmer, I've only connected to my USB port from my iMac then used my DDM to check the 8 pins corresponding to target SPI NOR chip (25D40 so 3.3V). I have not yet connected the SPI NOR memory to avoid any frying so the voltage values read from the CH431A connector are not loaded. It seems that Vcc (pinHold (pin 7) Write Protect (pin 3) do show 3.3V but how about the 4 pins (Chip Select, MISO, MOSI and CLK) which show 5V ?The jumper supposed to select 3.3V is shown in the pciture but does this model will self-shift to 3.3V on all pins, why some pins are 5V and other 3.3V ?Thank you in advance, Albert

author: Ian.M
author_rank: Super Contributor
timestamp: November 15, 2024, 02:15:12 pm
content: A CH341A chip with no additional dual supply level shifters cant "self-shift to 3.3V" when a serial EEPROM or FLASH memory is connected.What is actually happening is the memory is dragging down the signal voltages, and possibly dragging its Vcc supply above 3.3V, via the memory's input clamping diodes. As David said back in reply #81Quote from: DavidAlfa on June 16, 2023, 07:38:51 pmYou have the same issue the O.P. did when he started the topic, and you need to do the mod to work safely with 3.3V memory chips - either the permanent 3.3V mod or the switchable version if you also need 5V capability.

author: flachyjoe
author_rank: Newbie
timestamp: November 16, 2024, 10:48:19 am
content: Hi !I've buy this onehttps://www.ebay.fr/itm/324505422583I've received a black card labelled "CH341 Pro" on front side and "CH341 MinProgramment" on back. No "a" !? and no version number.The top pin row is marked "1 2 3 TX RX GND3.3V" when I see "1 2 3 TX RX GND5V" on the previous posted picture. Could it be a fixed design ?

author: Tantratron
author_rank: Frequent Contributor
timestamp: November 16, 2024, 11:12:34 am
content: Bonjour flachyjoe,Ther seems to be a slight difference between CH341 and CH341A, look thisherewhich part of is translated in frenchEn mode port d'imprimante, le CH341 fournit un port d'imprimante USB standard qui combine le protocole USB et le système d'exploitation Windows utilisé pour mettre à niveau une imprimante parallèle ordinaire directement vers le bus USB. En mode parallèle, le CH341 fournit un parallèle 8 bits en mode EPP ou MEM. Il peut être utilisé pour entrer/sortir des données directement sans MCU/DSP.En outre, le CH341A prend également en charge certaines interfaces série synchrones courantes telles que les interfaces 2 fils (SCL, SDA) et 4 fils (CS, SCK/CLK, MISO/SDI/DIN et MOSI/SDO/DOUT).

author: flachyjoe
author_rank: Newbie
timestamp: November 16, 2024, 11:17:23 am
content: The chipset is CH341B406725D24

author: Tantratron
author_rank: Frequent Contributor
timestamp: November 16, 2024, 11:31:37 am
content: It seems lot of CH341x variants after all

author: Ian.M
author_rank: Super Contributor
timestamp: November 16, 2024, 11:36:05 am
content: Ch341B shares a datasheet with CH341A:http://bitsavers.informatik.uni-stuttgart.de/components/wch/_dataSheets/CH341DS1.PDFand has exactly the same power pin specifications and I/O voltage levels.If with the jumper removed, you still have >3.3V signal levels when idle on the SPI pins (1-4 of the same header as the jumper), or have 5V on pin 28 (Vcc) of the CH341xIC (corner nearest board edge and ZIF socket), you need to do the mod.

author: flachyjoe
author_rank: Newbie
timestamp: November 16, 2024, 12:33:52 pm
content: 3.332V at the 2 places so it's good.Thank you two!

author: Tantratron
author_rank: Frequent Contributor
timestamp: November 17, 2024, 10:58:47 am
content: Hello@Ian.Mand@flachyjoeFirst question to Ian because I'm bit confused or lost plus I'm not native english so I did not fully understand what exact voltage test, what pins should be doneQuote from: Ian.M on November 16, 2024, 11:36:05 amThere should 2 tests, one with the jumper installed and then with no jumper, correct ?As mentioned earlier, I've bought from amazon the CH341A programmer board. Wether the jumper is installed, I do have always +5V on these pins: CH431-28 ZIF-1 ZIF-2 ZIF-5 and ZIF-6. By ZIF here I mean, the socekt plug dedicated for 25XX then on this same connector, I always have +3.3V on ZIF-3 ZIF-7 and ZIF-8What do you mean by 3.3V then what do you mean by 1-4... do you mean 5V, do you mean pin measurement voltage between ZIF-1 (CS) and ZIF-4 (GND) ?Quote from: flachyjoe on November 16, 2024, 12:33:52 pmSecond question for flachyjoe, can you detail exactly what places (which pins) did you get 3.3V ?You said to purchased on eBay in France this modelhttps://www.ebay.fr/itm/324505422583. The picture and title of the french eBay-vendor shows CH341A but you said the item in your hand has CH341B. Do you confirm it has 3.3V on all ZIF pins and Chip-28 so you do not need to make any modification ?Third and last question to Ian,When reading the beginning of the thread started in 2017, I see that you modified and edited part yourpost #3I do not know what was the description to modify back then, I just want to make sure that the easiest way to modify and make sure no 3.3V flash chip to be fried consists to do this re-wiringNo track cuts, just lift pin 28 (easy because its near the board edge with nothing in the way) and run a wire from the lifted pin across to pin 9, and on to the 3.3V regulator output.Thank to take time clarifying your posts so it will safe. The reason I ask is first I'm not native english, second the thread has been going with 5 pages with other modifications so I prefer to really have say a 2024 final update.Albert

author: Ian.M
author_rank: Super Contributor
timestamp: November 17, 2024, 12:31:10 pm
content: Seehttps://www.onetransistor.eu/2017/08/ch341a-mini-programmer-schematic.htmlI said measure with jumpers removed, because some mods/versions of the CH341x ZIF programmer board use a jumper for VCC selection usually by shorting out the 3.3V regulator for 5V operation. This is *NOT* ideal as the CH341x chips need 3.3V for their USB interface to operate correctly, and if the dropout voltage of their internal regulator supplying V3 (pin 9) from Vcc (pin 28) is too high, when Vcc is at 3.3V the reduced voltage on V3 can cause USB communication errors, and/or data corruption. The datasheet says to link Vcc and V3 to bypass the internal regulator when Vcc is 3.3V.To determine what mods if any are needed for your programmer, its easiest to use the USB shell as a ground point and measure the I/O pins 1-4 on the header beside the ZIF socket near the same board edge as the crystal. You can also easily measure Vcc at pin 28, but the risk of damage from a short if your probe slips is much higher. Don't try to measure at the ZIF socket itself, as the contacts aren't easily accessible from the top with a multimeter probe. Note that the usual parking (storage) position of the jumper on pin 1 & 2 of the other header shorts ACT# to ground. This does no harm because there is a series resistor between the header's ACT# pin and the CH341x.Three possible conditions will be found when measuring a powered, idle CH341x programmer with no jumpers fitted. Either Vcc and the SPI I/O pins will be at 5V, or at 3.3V or at 0V (if the design version or mod requires a jumper fitted to supply Vcc power).If you get either 3.3V or 5V and your memory chips aren't the same voltage, you need to do a mod. This topic is about modding the 5V version down to 3.3V, either permanently or switchably. If you get 3.3V and need 5V its a different mod, not covered yet here.If you get 0V, *either* your programmer is modded or a different version and you should follow its supplier's instructions for what jumpers to fit for 3.3V or 5V operation *or* its not getting power from the USB, or its faulty. As it has a power LED, its easy to see if its getting power.My reply #3 was only updated to fix a broken link to the CH341x datasheet. Many have modified this programmer following my suggestion in #3, and some have even made videos about it. The key to success is to use desoldering braid (aka: solderwick) to remove as much solder as possible from pin 28 before lifting it, only lift it far enough to break the surface tension of the molten solder between it and the pad so it no longer bridges, and to use *THIN*, preferably solid core wire, thinner than the pin so you don't stress it too much when handling the wire. I prefer Kynar insulated silver plated solid core 30 AWG wirewrap wire, but others prefer magnet wire. It can be very difficult to remove the varnish insulation from thin magnet wire without damaging the wire, and Kynar insulation is fairly tough, so the wire will be pulled on when you strip the end, so in either case, to avoid pulling pin 28 off the IC, prepare the wire to length and bent to shape, and get both ends tinned before you solder it to the board. Using electronics grade flux will make all the desoldering and soldering operations easier.I also discussed a 5V/3.3V switchable mod in reply#55. There are others that *DON'T* use a DPDT switch, but many of those don't power V3 properly when switched to 3.3V so even if the CH341x still enumerates correctly, may cause hard to trouble-shoot programming errors. If the other mod gives less than 3.1V or greater than 3.6V on V3 (pin 9) expect trouble!

author: Tantratron
author_rank: Frequent Contributor
timestamp: November 17, 2024, 04:19:42 pm
content: Quote from: Ian.M on November 17, 2024, 12:31:10 pmHello Ian, ok many thanks now I fully understand your explanations, guidance plus is now clear to me what you meant by I/O pins 1-4 which are respectively SCK, CS, MOSI and MISO. After removing the unique yellow jumper, my DMM reads respectively +5V on I/O pins 1-4 then with caution and concentration, I've measured as well Vcc from CH341A-28 to be 5V hence MOD is required.I did measure again directly the 8 pins of the ZIF socket, in my case no problem to DMM which corresponds to myyesterday post(see the picture and markings). We have confirmation that the 4 signals in charge of SPI are 5V which is the threat but note that the SO8 flash memory remaining 3 pins are all 3.3V (WP, Vcc and Hold) where the 8th pin is of course GND. The Vcc pins in the ZIF is 3.3V whereas the Vcc on CH341-28 is 5V so no idea if this logical per design or confirms the risk to fry a 3.3V flash memory. It is really strange that from the ZIF connector (total 8 pins) some of the pins read 3.3V and others 5V, at least in my recently acquired board.It would interesting to have confirmation from@flachyjoethat his CH341B board offers always 3.3V on all the pins even though the french eBay vendor had pictures and title with CH341A. This would his board has been modified at factory and he got lucky with this eBay purchase in France.Quote from: Ian.M on November 17, 2024, 12:31:10 pmMany thanks for de-soldering and re-solding mod instructions, I see all the points

author: Tantratron
author_rank: Frequent Contributor
timestamp: November 17, 2024, 05:51:01 pm
content: P.S. When buying from amazon the CH341A, the seller sent me a link with manual and drivers for Windows. I did not read neither used these since i'm using MacOS with specific driver and software from Github for CH341A and flashrom. Anyway I now read one manual and it does warm about the 5V risk then points out to thatlinkthat you might probably know. There is YouTube video which shows the same modification by ian but I read some comments, here are some extract.Extract 1:Okay, this is really funny. This video shows how to bring level down to 3.3 V, but DrShock has a Youtube with his CH341 only providing 3.3 volt and shows how to modify his version of the board to bring it up to 5.0 V. Apparently, DrShock needs the 5V for automotive chip programming, while the 3.3V is needed for PC BIOS chips. Perhaps you guys can just trade boards? I'd say there are 2 versions out there and just be sure you get the one for your particular chip programming application. This is very interesting topic, though. I used a chip programmer with a sewing needle to 3.3 V power to re-program a 2015 Apple MacBook Prom to unlock it with chip in-place on board with a ribbon cable that attached to a SAM socket directly on the logic board. Nice and clean and no soldering. Just had to hold the pin steady for a few minutes to do the read, and then again to do the write. I'm typing this on that computer. Battery and power disconnected from logic board, sewing needle attached to a 3.3 V lead from an old PC power supply.Extract 2:Thank you very much! my CH341B worked badly for writing a Winbond 25Q64FV now its works really well !!! my problem is solved thanks you! ( I buy a 341A on ebay and i receive a 341B, but it's work now!!)It would be really interesting to know if the CH341B purchased by flashyjoe does only 3.3VThen why if this 5V - 3.3V issue is known for years, the chinese still continue to sell and not fix the design ?

author: Tantratron
author_rank: Frequent Contributor
timestamp: November 20, 2024, 10:05:40 am
content: Maybe one last question regarding USB-CH341A programmer to read or write the SPI NOR memory (25 serie).In another project, I need to USB interface through a VGA-i2c port connected to a LCD panel processor which is not tolerant to 5V.Do you confirm the 5V versus 3.3V topic does threat the 24 serie ZIF connector, in other words wether the 4 pins 25 serie or the 4 pins 24 serie, same threat hence MOD solves both scenario ?

author: Ian.M
author_rank: Super Contributor
timestamp: November 20, 2024, 12:38:16 pm
content: VESA DDC I2C (on VGA ports) used 5V signal levels - see page 18 ofhttps://www.eevblog.com/forum/projects/i2c-over-cat5e-problem/?action=dlattach;attach=185318If you are using VGA port I2C, for a 3.3V (or lower) target, you need one of these:https://www.adafruit.com/product/757or equivalent from Amazon, Ebay or the usual far east 'eBazaar' suppliers.It should followPhilips AN97055, with one N-MOSFET per signal line. It needs a 3.3V supply to biass the MOSFET gates, but that can usually be tapped from the target device as very little current is needed.The various CH341x 3.3V mods are all good for both SPI and I2C.The switchable version of the CH341x mod can be wired to auto-set the target Vcc voltage, so you dont need to jumper 3.3V to 5V to short out the regulator when programming 5V devices. This is actually a simpler mod - lift Vcc (pin 28) and link it to the regulator output. Wire a SPST switch, common to regulator output, one end to V3 (pin 9) and the other to the regulator input (+5V). With the switch in the 5V position, confirm the regulator does not get hot, and that there is 5V at the programmer socket Vcc pins.Ideally replace the zero ohm link in the R1 (marked F1) position on the CH341x programmer PCB with a 250mA polyfuse to protect your PC if the programmer Vcc gets shorted in 5V mode.

author: FazzaGBR
author_rank: Newbie
timestamp: November 20, 2024, 02:28:44 pm
content: I purchased one of these a while back, such great value for money and I'm so glad the topic of the voltage came up on a YouTube video I saw and when I checked the voltage on my device it was wrong so did the lifting up of the pin and soldering a wire to the 3.3V supply and hey presto it was safe to use!

author: Tantratron
author_rank: Frequent Contributor
timestamp: November 20, 2024, 02:47:31 pm
content: Quote from: Ian.M on November 20, 2024, 12:38:16 pmThe reason i'm asking is related to firmware reading and/or writing this LCD driver board based on RTD2660 processor. The board has a SPI NOR flash memory which is clearly 25xx (3.3V) then one option is to use the CH431A programmer and grabber to flashrom, this is why I purchased the CH431A. Another approach which is documentedhereconsists of using an adafruit FT232H and make specific wiring as shown. The LCD driver board has VGA connector but its 2 pins dedicated to SDA/SCL are directly connected to the RTD2660H panel processor via 100R with 4.7K resistor.So there are 2 ways to hack or flash the SPI eeprom: either direct via CH431A programmer or indirect via the VGA-i2c where the RTD2660H will internal route the commands to the actual SPI eeprom. This is why I was wondering if OK to use the CH431A with modification to explore hacks.I do know from reading the datasheet of RTD2660 than its pins 58 (SCL) and 59 (SDA) says not 5V power tolerant so we kind of go back to the 3.3V story with CH431A except here I'd use its 24xx outputs instead of using the FT232H interface.What would be unique or universal modification to make sure wether 25xx outputs or 24xx would be always 3.3V

author: Ian.M
author_rank: Super Contributor
timestamp: November 20, 2024, 03:08:03 pm
content: A cheaper alternative to the Adafruit FT232H board is CJMCU FT232H breakout board from the usual far east suppliers. Same chip but no fancy I2C mode switch or Stemma connector, so you have to patch D1 and D2 together, and probaby add pullups for SDA and SCL to either 3.3V or 5V yourself.Most programming or configuration software that uses a FT232H to 'talk' I2C cant use a CH341x and visa versa. Check what interface ICs the software you need to use supports.

author: Tantratron
author_rank: Frequent Contributor
timestamp: November 20, 2024, 03:33:27 pm
content: Quote from: Ian.M on November 20, 2024, 03:08:03 pmMany thanks Ian for this hint and guidance so i'll go after a FT232H board to VGA-i2c dialog with the RTD2660 re-directing R/W to the external SPI NOT memory and CH431A with 5V-3.3V modification to directly R/W with grabbers the SPI NOR memory. Normally I should get the same binary image unless the RTD2660 is bricked.Merci beaucoup

author: Ian.M
author_rank: Super Contributor
timestamp: November 20, 2024, 06:35:09 pm
content: That should work. The FT232H chip has 3.3V logic levels but 5V tolerant so can be used with either 5V or 3.3V SPI and I2C with no problems.N.B. The CJMCU FT232H board I suggested does *NOT* have a seperate 3.3V regulator, but the FT232H has one internally, good for only a few tens of mA - enough for I2C pullups and small 8 pin EEPROMs, but *NOT* enough for any target board and maybe not enough for big Flash memories. Be careful *NOT* to short its 5V, its 'raw' unfused USB Vbus and if you short it, either it will burn the board or maybe damage your PC.

author: RPP
author_rank: Contributor
timestamp: January 07, 2025, 02:19:01 am
content: The 5V / 3.3V myth perpetuated by the internet was evaluated and debunked a few years ago. No need to mod the CH341A. Just use it . . .Have a look at this video created by Sorin (Electronics Repair School) analyzing the issue in detail:https://youtu.be/J8-Sh7DjiXw

author: R-1125F
author_rank: Regular Contributor
timestamp: February 13, 2025, 07:49:21 pm
content: Does anyone here have acutal experience frying a 25Q series chip using an unmodified CH341A?

author: Tantratron
author_rank: Frequent Contributor
timestamp: February 14, 2025, 12:43:27 pm
content: Quote from: R-1125F on February 13, 2025, 07:49:21 pmI've experienced some strange effect (not frying) when using my CH341A without modification to read the flash from a specific board i'm working on, see attached LCD driver PCB800099-V9. When reading the flash content firmware, it will not always give the same result and sometimes it will change part of its content so the board does not work anymore. However if writing another firmware or a known working copy, it will always work. Maybe this is specific to this board, maybe it is related to the fact the board not plug to any power source will get internally via the 5V or 3.3V bus some power starting the RTD2660 chip, the LED. Technically the flash memory has never been destroyed so far but that my return of experience, the flash chip is 25VQ40 and it happened with other similar LCD driver boards hosting other 25Q brands.

author: RPP
author_rank: Contributor
timestamp: February 14, 2025, 01:38:20 pm
content: I've read/written 25Q40 and 25Q80 (TCON) EEPROMS with my CH341A without any issues - it's not modified in any way.Rich

author: R-1125F
author_rank: Regular Contributor
timestamp: February 14, 2025, 05:55:37 pm
content: Glad to hear the stock CH341A worked. I was reading a 25R256JV and got some strange results. I am not sure if it was the programmer or the software (AsProgrammer). My T48 programmer does not list the 25R256JV but identifies the chip as a 25Q256QF. The T48 read it OK, but I am not certain of the results and did not try to program the chip. I have ordered a CH341 version 1.7 which has a voltage switch, which I hope will work.

author: amyk
author_rank: Super Contributor
timestamp: March 28, 2025, 02:05:41 am
content: Quote from: RPP on January 07, 2025, 02:19:01 amGiven that these are most commonly sold as BIOS programmers with clip leads for in-circuit programming, I wonder if the decision to put 5V on the data pins and 3.3V on the power was a "hack" to make it work in-circuit; I looked at a few random laptop schematics and some have a diode supplying the Vcc to the EEPROM while the other I/Os are connected to the rest of the circuitry, often via a few dozen ohms of resistance. With that arrangement it makes sense to have Vcc at 3.3V, but maybe supplying 3.3V on the data pins (via the output impedance of the CH341) causes the rest of the circuitry to act as a voltage divider, pulling down the voltage below Vih(min), and they figured that making it output 5V unloaded would work?Given that context, perhaps using the programmer on a mobo in-circuit won't cause any problems with the 5V unloaded outputs (check the schematic to be sure), but programming removed chips directly is a bad idea?