Electronic Solutions for Motorsport

Fine Tune Ignition Timing with Knock Sensor Signal

3 min read
Engine ECU datalog

To fine tune ignition timing, life can be made much easier if we have a live knock signal sent to the engine ECU.

Engine ECU datalog
Datalog of knock sensor signal, engine load and engine RPM. We can see when engine was knocking and what amount of retard was needed to stop the knocking.

Datalogging Knock Signal

Reviewing a datalog that include a knock sensor signal, and especially a variable knock signal with distinct steps, we can not only see where our ignition may be too advanced or retarded, but also, in the case of over advanced, how much over-advanced the timing is (if the variable knock sensor signal was used by a compensation table in the engine ECU).

Engine ECU compensation table for ignition timing. If we receive the signal "X" we retard (or advance) ignition timing by "Y".

Knock Limited Engines

Engines whose power is limited by engine knock and not by ignition timing, engines which will continue to make more and more power right up until the point they start to knock.

For these engines, using a knock sensor to optimise engine power can be effective at finding the optimum ignition timing.

However on engines which are not knock limited we could start losing power before the knock limit is reached.

A little research on forums for a specific engine will normally tell us if a specific engine is knock limited or not.

Using a Variable Knock Signal to Optimise/Tune Ignition Timing

Some assumptions first

-Our engine ECU is receiving a variable knock signal and uses that signal in an ignition timing compensation table.

-That we are using the three levels of ignition retard in our engine ECU compensation table

-We are logging the signal versus load and RPM.

Identifying Over-Advanced Ignition Timing

(If the engine is knocking), the log will show the knock signal and it will tell us at what RPM and what load the engine knock is occurring. The voltage of this signal will tell us how intense the knock sensor ECU thinks the knock is.

The log will also tell us what level of knock signal (degrees of ignition retard from the compensation table) led to the knock stopping.


For example if we set our compensation table to retard ignition timing by 3 degrees when 2.4 volts is received. And when the engine ECU receives the 2.4 volt signal the knock stops, we could assume that the current ignition timing advance in that cell, under those conditions (intake temp, coolant temp, cylinder head temp, MAP, MAF, EGT, AFR etc) was too advanced and that a reduction in ignition timing of up to 3 degrees is enough to quell the knock.

And if we are only retarding ignition timing by 1 degree when we receive a 0.9 volt signal, we can further guess that 1 degree of timing retard is not enough to quell the knock, if we initially received 0.9 volts to our compensation table, and the knock did not stop.

Understand the conditions in our compensation table, (X voltage of knock signal input retards timing by Y degrees), and read the log to see when the knock disappears (when X voltage knock signal is received), we get a ball park idea of optimum ignition timing.

Or at least get an idea of which direction we should be going. If timing is too advanced, how much too advanced, and if we are not getting any knock, perhaps that hints that we have some room to advance our timing.

For knock limited engines, running close to knock will help us get to peak power.

For non-knock limited engines, having an ignition map that does not knock suggests a level of safety but to find out if power is being left on the table, I think a dyno is the only reliable way to tune the timing for power.

Read more about optimising ignition timing use a knock sensor ECU signal here

General Information

How to order


Get our news in your inbox

Got a question?