Author Topic: CH341A Serial Memory Programmer Power Supply Fix  (Read 129878 times)

0 Members and 8 Guests are viewing this topic.

Offline johnmx

  • Frequent Contributor
  • **
  • Posts: 271
  • Country: pt
CH341A Serial Memory Programmer Power Supply Fix
« on: October 14, 2017, 12:29:37 pm »
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.html

All 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?
Best regards,
johnmx
 

Online Ian.M

  • Super Contributor
  • ***
  • Posts: 8482
Re: CH341A Serial Memory Programmer Power Supply Fix
« Reply #1 on: October 14, 2017, 02:34:26 pm »
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.
 

Offline johnmx

  • Frequent Contributor
  • **
  • Posts: 271
  • Country: pt
Re: CH341A Serial Memory Programmer Power Supply Fix
« Reply #2 on: October 14, 2017, 03:03:45 pm »
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.
I 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.
Best regards,
johnmx
 

Online Ian.M

  • Super Contributor
  • ***
  • Posts: 8482
Re: CH341A Serial Memory Programmer Power Supply Fix
« Reply #3 on: October 14, 2017, 03:16:21 pm »
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://hannover.ccc.de/redmine/attachments/download/213/CH341DS1.pdf
« Last Edit: October 14, 2017, 03:18:00 pm by Ian.M »
 
The following users thanked this post: johnmx

Offline johnmx

  • Frequent Contributor
  • **
  • Posts: 271
  • Country: pt
Re: CH341A Serial Memory Programmer Power Supply Fix
« Reply #4 on: October 14, 2017, 03:57:15 pm »
Here is the result.
Next Monday I will replace the 0 Ohm R1 with a 100mA polyswitch.

Hope this helps other people.
Best regards,
johnmx
 
The following users thanked this post: mel

Offline davidm71

  • Contributor
  • Posts: 9
  • Country: us
Re: CH341A Serial Memory Programmer Power Supply Fix
« Reply #5 on: November 11, 2017, 04:23:09 pm »
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
 

Offline johnmx

  • Frequent Contributor
  • **
  • Posts: 271
  • Country: pt
Re: CH341A Serial Memory Programmer Power Supply Fix
« Reply #6 on: November 11, 2017, 05:45:44 pm »
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?
Just 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.
Best regards,
johnmx
 

Offline davidm71

  • Contributor
  • Posts: 9
  • Country: us
Re: CH341A Serial Memory Programmer Power Supply Fix
« Reply #7 on: November 11, 2017, 05:56:26 pm »
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
 

Offline johnmx

  • Frequent Contributor
  • **
  • Posts: 271
  • Country: pt
Re: CH341A Serial Memory Programmer Power Supply Fix
« Reply #8 on: November 11, 2017, 06:21:49 pm »
I thought the jumper placement controlled the operating voltage? Read pins 1-2 are at 3.3v and pin 2-3 at 5v.
The jumper is to select device mode: EEPROM programmer or serial converter. See schematic on my first post.
Best regards,
johnmx
 

Offline davidm71

  • Contributor
  • Posts: 9
  • Country: us
Re: CH341A Serial Memory Programmer Power Supply Fix
« Reply #9 on: November 11, 2017, 06:25:01 pm »
Ok. So then why did they put on the market a defective bios programmer?!

 

Offline johnmx

  • Frequent Contributor
  • **
  • Posts: 271
  • Country: pt
Re: CH341A Serial Memory Programmer Power Supply Fix
« Reply #10 on: November 11, 2017, 08:02:17 pm »
Ok. So then why did they put on the market a defective bios programmer?!
I guess it is the first time you buy a chinese device.
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!
Best regards,
johnmx
 

Offline davidm71

  • Contributor
  • Posts: 9
  • Country: us
Re: CH341A Serial Memory Programmer Power Supply Fix
« Reply #11 on: November 11, 2017, 08:06:20 pm »
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=phpprogramme
Modify message


« Last Edit: November 13, 2017, 03:39:29 pm by davidm71 »
 

Offline davidm71

  • Contributor
  • Posts: 9
  • Country: us
Re: CH341A Serial Memory Programmer Power Supply Fix
« Reply #12 on: November 19, 2017, 08:43:26 pm »
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.
 

Offline johnmx

  • Frequent Contributor
  • **
  • Posts: 271
  • Country: pt
Re: CH341A Serial Memory Programmer Power Supply Fix
« Reply #13 on: November 19, 2017, 09:04:29 pm »
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.
It is no surprise that it worked. But as an EE Engineer I don't recommend to use the circuit like that.
Best regards,
johnmx
 

Offline davidm71

  • Contributor
  • Posts: 9
  • Country: us
Re: CH341A Serial Memory Programmer Power Supply Fix
« Reply #14 on: November 19, 2017, 09:08:18 pm »
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.
It is no surprise that it worked. But as an EE Engineer I don't recommend to use the circuit like that.

Sad thing is I couldn't get it to work with the FlashcatUSB programmer. That one had a 3.3v setting.
 

Offline davidm71

  • Contributor
  • Posts: 9
  • Country: us
Re: CH341A Serial Memory Programmer Power Supply Fix
« Reply #15 on: December 11, 2017, 06:34:33 am »
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
 

Offline fulda

  • Newbie
  • Posts: 1
  • Country: cz
Re: CH341A Serial Memory Programmer Power Supply Fix
« Reply #16 on: February 12, 2019, 12:38:16 pm »
All 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?

Hi,

The trick is, that you miss 2nd LDO, that is inside CH341A chip.
Check datasheet.

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 are NOT 5V tolerant. It mean, it always use 3V3 for communication with eeprom.
 

Offline Sarcarean

  • Contributor
  • Posts: 28
  • Country: us
Re: CH341A Serial Memory Programmer Power Supply Fix
« Reply #17 on: February 27, 2019, 06:23:02 am »
@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.
 

Offline brouhaha

  • Newbie
  • Posts: 3
  • Country: us
Re: CH341A Serial Memory Programmer Power Supply Fix
« Reply #18 on: April 28, 2019, 01:41:12 am »
The trick is, that you miss 2nd LDO, that is inside CH341A chip.
Check datasheet.

At end of chapter 5.2 硬件说明 (Hardware description) is stated:
[...]
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 are NOT 5V tolerant. It mean, it always use 3V3 for communication with eeprom.

I 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.
 

Offline panoss

  • Frequent Contributor
  • **
  • Posts: 308
  • Country: gr
Re: CH341A Serial Memory Programmer Power Supply Fix
« Reply #19 on: February 15, 2020, 05:35:41 pm »
I 'm raising this topic from the dead :D because I also ordered this programmer but (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?
« Last Edit: February 15, 2020, 05:40:50 pm by panoss »
 

Offline johnmx

  • Frequent Contributor
  • **
  • Posts: 271
  • Country: pt
Re: CH341A Serial Memory Programmer Power Supply Fix
« Reply #20 on: February 15, 2020, 05:43:24 pm »
I 'm raising this topic from the dead :D because I also ordered this programmer but (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?
I recommend to modify it.
Best regards,
johnmx
 
The following users thanked this post: panoss

Online WattsThat

  • Regular Contributor
  • *
  • Posts: 182
  • Country: us
Re: CH341A Serial Memory Programmer Power Supply Fix
« Reply #21 on: February 16, 2020, 05:05:54 am »
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.
 
The following users thanked this post: panoss

Offline rygelfievel

  • Newbie
  • Posts: 1
  • Country: us
Re: CH341A Serial Memory Programmer Power Supply Fix
« Reply #22 on: April 11, 2020, 10:41:31 pm »
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.
 

Offline bul

  • Newbie
  • Posts: 1
  • Country: de
Re: CH341A Serial Memory Programmer Power Supply Fix
« Reply #23 on: May 26, 2020, 10:00:23 am »
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:
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?
Would that change anything? Bypassing/shorting the 1117 will still provide 5V from USB to the ch341a, right? So what was the idea behind that?

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.
So 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

 

Offline pupa

  • Contributor
  • Posts: 6
  • Country: za
Re: CH341A Serial Memory Programmer Power Supply Fix
« Reply #24 on: May 28, 2020, 12:05:28 am »
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 by soldering. So I had to fix the IC VCC connection first by grinding away the silicon carefully until I could solder a wire to IC VCC connection, then made a 3.3V bridge line across the IC to connect to and the restored the  operation of the programmer. Then did a mod as per a finding on the internet to supply the Programmer VCC to 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 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. The chip apparently ha a 3.3V internal regulator or 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 a daughter interface board that plugs in the ZIF socket to convert to 5V or 1.8V circuits. 

See upcoming attachments  to follow. (Get message files too large >>5000KB total?)
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf