Go Down

Topic: GM's ALDL to USB 5V TTL Protection Circuit Needed (Read 4421 times) previous topic - next topic

Paul__B


Hamster7

#16
Jun 25, 2016, 02:43 pm Last Edit: Jun 25, 2016, 02:49 pm by Hamster7
maybe you should have a look here


thanks alhath. That's where I originally would going to build couple of years ago. Notice D3 is other way round. At that time I had PC with RS232 in hand but these days I have just only PC with USB ports let alone USB to RS232 converter dongle tucked away somewhere in my house.

Then I thought why ALDL>RS232>USB>PC why not ALDL>USB>PC so I looked and see the original programmer was using FTDI USB circuit as per my previous schematic without protection. It worked well  so far with few issues.

It sure is!
 The diode anode would need to go to the connection between RXD and the ALDL data while the TXD line connects to the cathode of the diode.

A 4k7 resistor between the ALDL data and the RXD line might be extra protection.

Thanks Paul__B. You mean like this:-


Hamster7

#17
Jun 25, 2016, 03:02 pm Last Edit: Jun 25, 2016, 03:18 pm by Hamster7
Would it be silly to ask why Rx and Tx are shorted together on FTDI  side ?

Is that supposed mean ALDL Tx => FTDI Rx ? If so why is drawn that way ?
Thanks raschemmel. For what people who keen on these interface told me(they are all probably gone fishing for long) is that ALDL is kinda half duplex mode so it uses only one wire to both send and receive data that means both Tx Rx are connected on the same line.

Quote
USB TTL drives the output high which could potentially cause the ECU output to blow.

ALDL is half duplex: The ECU output is a 10 kohm resistor to +5V with a switched transistor to 0V. The interface must also have a switched transistor to 0V only. The maximum current that can flow in the ECU output transistor is 5V/10k ~ ½mA.

If the interface is switched via a transistor to 5V in the off state, then when the ECU starts to respond, the maximum current in the ECU transistor is determined by the output capability of the interface and could be 100s of milliamps. You would be advised to put a diode in series (Anode to the interface output and cathode to the ECU). The interface low output will increase by ~0.7V but should still be recognised as a low by the ECU.
look, here is how they should be wired, they aren't shorted, but
ALDL has only one pin for both Tx and Rx , the other side has to deal with it and I think they should be wired the same way if FTDI is used



That's where I snip MAX232 and its regs out in the first place. :D

Why have you posted an RS-232 interface circuit when the OP referred to "communicating with ALDL via USB"?

alnath's pic is the original ALDL to RS232 circuit. We just try to replace the MAX232 with FTDI USB here. (probably 3.3v bluetooth unit later)

Paul__B


Hamster7

Thanks Paul__B.

So the ECU output is also well protected as per this quote right?

Quote
USB TTL drives the output high which could potentially cause the ECU output to blow.

ALDL is half duplex: The ECU output is a 10 kohm resistor to +5V with a switched transistor to 0V. The interface must also have a switched transistor to 0V only. The maximum current that can flow in the ECU output transistor is 5V/10k ~ ½mA.

If the interface is switched via a transistor to 5V in the off state, then when the ECU starts to respond, the maximum current in the ECU transistor is determined by the output capability of the interface and could be 100s of milliamps. You would be advised to put a diode in series (Anode to the interface output and cathode to the ECU). The interface low output will increase by ~0.7V but should still be recognised as a low by the ECU.

Paul__B

So the ECU output is also well protected as per this quote right?
I think it is as well protected as it is going to be.

Pity the last paragraph in that quote is garbled with the description of the diode the wrong way round!

raschemmel

#21
Jun 26, 2016, 05:13 pm Last Edit: Jun 26, 2016, 05:16 pm by raschemmel
Regardless of the schematic , the text says "anode to interface , cathode to the ECU ( which is the ALDL side)

 Why do you think the text is wrong ?
Arduino UNOs, Pro-Minis, ATMega328, ATtiny85, LCDs, MCP4162, keypads,<br />DS18B20s,74c922,nRF24L01, RS232, SD card, RC fixed wing, quadcopter

alnath

#22
Jun 26, 2016, 06:51 pm Last Edit: Jun 26, 2016, 06:52 pm by alnath
because of the second sentence :
Quote
..... The interface low output will increase by ~0.7V but should still be recognised as a low by the ECU.
either the first or the 2nd sentence is wrong

raschemmel

Think about it. Would you trust someone who got ether one of them wrong , or would you tend to question everything they said ?
Does anyone know if the ALDL ECU is TTL or CMOS ?
If you read the part about the maximum current in the ECU transistor being dependent on the output capability of the interface doesn't that suggest that the ECU is an OPEN COLLECTOR ?
Arduino UNOs, Pro-Minis, ATMega328, ATtiny85, LCDs, MCP4162, keypads,<br />DS18B20s,74c922,nRF24L01, RS232, SD card, RC fixed wing, quadcopter

Hamster7

Quote
The ECU output is a 10 kohm resistor to +5V with a switched transistor to 0V.
Don't know if this helps.

I think it is as well protected as it is going to be.

Pity the last paragraph in that quote is garbled with the description of the diode the wrong way round!

Thanks Paul__B.

because of the second sentence :
either the first or the 2nd sentence is wrong

Thanks alnath. Don't know where would that leads to. I'd just be a sitting duck here.  :smiley-sweat:

raschemmel

#25
Jun 28, 2016, 01:04 am Last Edit: Jun 28, 2016, 01:04 am by raschemmel
Quote
The ECU output is a 10 kohm resistor to +5V with a switched transistor to 0V.
An open collector transistor draws 500 uA until you connect a load that draws more to the collector, then it draws whatever that load draws. The 10k pullup doesn't limit the load current of the circuit you connect it to. It only limits the pullup current. I still don't know where the mythical "100s of mA" is supposed to come from that was mentioned. An FTDI interface is TTL so it's not going to draw that. If the circuit connected to the ECU is an opto with a 150 ohm current limiting resistor, pulling the ECU output transistor to 0V would draw (5V-Vf)/150 = 20 mA.  (with a Vf of 2V)
Arduino UNOs, Pro-Minis, ATMega328, ATtiny85, LCDs, MCP4162, keypads,<br />DS18B20s,74c922,nRF24L01, RS232, SD card, RC fixed wing, quadcopter

Hamster7

Thanks raschemmel.

The guy he might mean the worst case when FTDI send 'high' to the ECU without protection circuit. My thoughts though. I might be wrong.

raschemmel

Quote
The guy he might mean the worst case when FTDI send 'high' to the ECU without protection circuit. 
The question to ask then , is what happens on the ECU side when it receives a HIGH ?

ie:
Is that HIGH driving a TTL gate or an opto-isolator or what ?

I still am not seeing why the interface would draw hundreds of mA. If I knew more about the circuitry at the ECU side I would be able to figure it out. Typically opto-isolators are ON with a LOW and OFF with a HIGH because the LOW is sinking the opto led current. If it's a car then Vcc is 12V, and with a Vf of 2V, the current limiting resistor would need to drop 10V and limit the current to about 20 mA (50mA max).
Arduino UNOs, Pro-Minis, ATMega328, ATtiny85, LCDs, MCP4162, keypads,<br />DS18B20s,74c922,nRF24L01, RS232, SD card, RC fixed wing, quadcopter

Go Up