Tach signal conversion

Thread Starter

bidmanv8

Joined Feb 21, 2010
7
Hi, I am new to the forum and have a similar issue to the person who originally posted this thread http://forum.allaboutcircuits.com/showthread.php?t=30362. Unfortunately he never posted back so who knows what he did.

I have just carried out an engine conversion on a BMW and am stuck with trying to convert the engine tach signal into a signal needed by the BMW ECU for use on other systems such as cruise control, tach drive etc...

The engine tach signal is a 4 pulse per revolution 5v square wave signal but the signal required by the ECU is a 58 pulse 2 pulse gap 5v square wave signal commonly known as the 60-2.

The issue I have is that I need the converted signal to rise in relation to the 4 pulse input, so as the engine speed increase the frequency of the converted signal will need to increase, as well as having the 2 pulse gap every revolution.

As i'm sure you guys hear all the time, when it comes to electrics you guys are in a different league and I will definately need things explaining in laymans terms.

Any help would be greatly appreciated, thanks Dan
 

mik3

Joined Feb 4, 2008
4,843
If it is a tachogenerator it should output an analog voltage proportional to its rotational speed not pulses. The one you have is a shaft encoder.

Do you have its datasheet?
 

Thread Starter

bidmanv8

Joined Feb 21, 2010
7
If it is a tachogenerator it should output an analog voltage proportional to its rotational speed not pulses. The one you have is a shaft encoder.

Do you have its datasheet?
Hi mik3,

Unfortunately no, the new engine uses a 5v 4 pulse square wave signal per revolution coming from a filtered signal from the coil. But the original engine used a 5v hall effect sensor that created 58 pulses with a 2 pulse gap on each revolution, due to a 60 tooth crank wheel with 2 teeth missing. Neither engine or car in this situation use an analogue voltage proportional to its rotational speed.

Basicaly I am after a seperate interfacing unit to connect between the engine signal wire and the ECU input wire that will convert the signal. I hope this makes it a bit clearer.

Thanks Dan
 

mik3

Joined Feb 4, 2008
4,843
Use a microcontroller, calculate the engine's speed with these 4 pulses and then produce the desired 58 pulses output according to the calculated speed.
 

Thread Starter

bidmanv8

Joined Feb 21, 2010
7
Use a microcontroller, calculate the engine's speed with these 4 pulses and then produce the desired 58 pulses output according to the calculated speed.
Thanks for the quick reply, how would I go about creating the 2 pulse gap between the sets of 58 pulses using this microcontroller set up? Also which microcontroller would you recommend?

Thanks Dan
 

mik3

Joined Feb 4, 2008
4,843
The choice of the microcontroller depends on the maximum angular velocity of the decoder.

Do you know it?

What do you mean exactly by 58 pulse and 2 pulse gap?
The number of pulses being read by the ECU should vary according to the engines speed.
 

Thread Starter

bidmanv8

Joined Feb 21, 2010
7
The choice of the microcontroller depends on the maximum angular velocity of the decoder.

Do you know it?

What do you mean exactly by 58 pulse and 2 pulse gap?
The number of pulses being read by the ECU should vary according to the engines speed.
The maximum angular velocity of the decoder? not really sure what you mean by this.

I will explain my problem in a little more detail,

Originally the car had an engine that had a 58 tooth gear on which there were spaces for 60, so there are 60 teeth spaces but only 58 are filled, (the gap where there are 2 teeth missing is used for tdc sensing). This is rotated on the main crankshaft and a 5v Hall effect sensor is placed no more than 1mm away from the rotating gear. This sensor then sends a 5v pulsing square wave signal for the ECU to read. This set up means per revolution there are 58 pulses sent to the ECU a 2 pulse gap then another 58 pulses.

The engine now in the car has a simple 4 pulse coil pack which uses a standard 4 pulse per revolution 5v signal to drive the tach.

Given that the maximum rpm of the engine would be around 7500rpm this means the device used to convert the signal would have to be capable of transmitting at 7.5khz to get the correct.

I have included a picture of the way the gear and sensor work.

If there is no electronic solution I will just have to fabricate a new wheel and place this at the front of the engine but would prefer to keep the engine as clean looking as possible.

Thanks Dan
 

Attachments

Last edited:

mik3

Joined Feb 4, 2008
4,843
It might be possible to go to a car's electronic engineering to reprogram the ECU which would be the best solution.
It is possible to do it with a microcontroller however the microcontroller will add some delay to and the ECU will receive the signal after a few ms. This may lead to unexpected behaviour of the engine. If you want you can try with your own risk.
I think the best solution is to make a new tooth gear the same as the old one because the ECU was designed for this. Another option is to change the ECU to be compatible with the new engine.
 

Thread Starter

bidmanv8

Joined Feb 21, 2010
7
Again, thanks for the reply.

Unfortunately I am running a piggyback twin ECU system so need both signals for use in the car, one for accessory functions and one for the engine so I cant replace the existing trigger wheel. I think the best plan of action is to simply mount another trigger wheel on the crank pulley so this way I get both signals.

I posted just on the off chance someone had already encountered this problem or if there was an 'easy fix' solution. It seems nothing is every that easy.

Anyhow, thanks for all your help mik3, Dan
 

shortbus

Joined Sep 30, 2009
10,045
I don't think you can get this signal from the tach gen. The signal you need is generated Twice for every One rotation of the cam/distributor.

What engine are you putting in the BMW?
 

Thread Starter

bidmanv8

Joined Feb 21, 2010
7
I don't think you can get this signal from the tach gen. The signal you need is generated Twice for every One rotation of the cam/distributor.

What engine are you putting in the BMW?
Hi, no the signal I need is generated once per revolution of the crankshaft in the original BMW engine. My problem was generating this signal from the 4 pulse tach signal from the coil.

The engine I have put in is an lt1 383 450rwhp. Everything is up and running and working no problem except the tach in the cluster, cruise control and some other small things. All these items are controlled digitaly with a signal on the K and I CAN bus system and will work providing that the ECU gets its 58 pulse signal per revolution.

Thanks Dan
 

bertus

Joined Apr 5, 2008
22,278
Hello,

I wonder if the gap in the pulses is used to time the ignition.
If so it will be hard to synchronize the 4 pulse system with the 60/2 system.

Greetings,
Bertus
 

Thread Starter

bidmanv8

Joined Feb 21, 2010
7
Hi, the ECU is using this information to both display the engine speed and for feedback to the cruise control unit, AC system etc... Unfortunately the ECU is ODB2 and this means that the signal generated has to be the same as what would be generated with the original engine otherwise it will throw a code and will not feedback any information to the other systems although the rpm display may still work.

The gap in the teeth is used for timing on the original engine but I still require this gap as the ECU will store a fault and will not work properly with the other systems.

I am thinking along with mik3 that the best solution will be to obtain an original trigger wheel and sensor and retrofit this to the crank pulley at the front of the engine. This way it gets the exact signal it needs.

Just a shame it will look a bit ugly.

Thanks Dan
 
Top