K-series ignition and knock tuning with Hondata
Published
A K-series ignition table is a request, not the spark the engine gets. The ECU picks the low or high cam table, then blends the two cam-angle tables around the angle it is using. It then applies a relative knock limit and several compensations. A main table can say 30 degrees while the engine runs 24. This page shows where that difference comes from and how to read it before you change a cell.
Many K-series ignition mistakes start between the main table and the spark plug. A tuner adds two degrees to a main table and sees no change. Or the log shows zero knock retard and the engine is still running less timing than the table.
Or a count appears at the VTEC point and the tuner turns the sensor down instead of finding out what the engine heard. Each of those has a different cause, and each is visible in the calibration or the log.
- Spark is a blend of two cam-angle tables for the cam that is active, not one map for the whole engine.
- The knock ignition limit is relative to the main table. A negative limit retards timing even with no count, and it may not appear as knock retard.
- KPro has a stock knock logic option. Before KManager version 1.4.2 those tables were disabled by default, so check the calibration instead of repeating an old rule.
- K.Control is a slow fuel-quality estimate in percent. A knock count is a noise event. Neither is cylinder pressure.
- No universal two-degree test, wide-open advance range or E85 adder is printed here. Read the file and measure torque.
- Idle spark moves on purpose. Cranking timing and dwell are separate tables with their own units.
Full Custom: $249 $199 launch special. Most files in 3–5 business days after complete inputs; the outside limit is 7 business days.
Port-injected K20 and K24 only. The turbo Civic is the separate turbo section on the same Honda & Acura hub. Hondata or FuelTech hardware and credits are not included. How files are handled.
1. The boundary: port-injected K20 and K24
The procedure applies to port-injected K-series engines run by KPro or FlashPro. The year and chassis get you close, but the ECU, the calibration and the installed hardware decide what the tables mean.
| Vehicle or swap | Engine | Control route |
|---|---|---|
| 2002–2004 RSX manual | K20A2, K20A3 | KPro in an eligible 2002–2004 ECU |
| 2002–2005 US Civic Si / Canadian SiR (EP3) | K20A3 | KPro in its PNF ECU |
| 2005–2006 RSX manual | K20Z1, K20A3 | KPro on a specially modified 2002–2004 ECU, matching adapter and 2002–2004 RSX primary O2 sensor |
| 2006–2011 Civic Si | K20Z3 | FlashPro, native drive-by-wire |
| 2004–2006 TSX | K24A2 | FlashPro conversion with a matching 2007–2008 ECU, CAN adapter and VIN/immobilizer pairing |
| 2007–2014 TSX four-cylinder | K24 | FlashPro, supported ECU list |
| 2012–2015 Civic Si; 2013–2015 ILX 2.4 manual | K24Z7 | FlashPro |
| Cable-throttle K swap | K20 or K24 | KPro in an eligible ECU |
- These rows describe North American applications. Check the supported ECU part number and calibration; an adapter alone does not convert an unmodified early RSX ECU. The 2013–2015 Accord K24W is direct injection and is outside this page. K20C, L15, B/D and s300 work are also outside this wave, and KTuner is not covered. FuelTech on a K has its own ignition and trigger procedure, so its timing setup is not copied from a KPro calibration.
- Three jobs have their own pages. Fuel has to be stable before ignition is judged, and the fuel guide covers the active model and the correction math. Cam angle and VTEC have a mechanical side that this page does not settle. The VTC and VTEC guide covers clearance and the cam target tables. The logging guide covers the export and channel definitions.
2. The timing the engine actually receives
KManager holds 12 ignition tables for a VTC K-series. There are low-speed and high-speed cam tables. Each is split into six angles: 0, 10, 20, 30, 40 and 50 degrees of intake cam angle. The table window shows one at a time.
The ECU blends the two tables that bracket the angle it is using. At 24 degrees, both the 20 and the 30 degree tables contribute. Editing only one changes part of the delivered advance.
- The cam-angle labels describe intake-cam phasing, displayed in crankshaft degrees. Ignition cells describe spark advance in crankshaft degrees before TDC. Equal numbers in those two tables do not describe the same event.
- FlashPro is not a fixed copy of that layout. Open the calibration and read the cam breakpoints and the tables the ECU offers. A screenshot from another chassis is not evidence about this file. The same warning applies to the knock tables: a newer turbo calibration can show tables that a port-injected K does not expose.
Swipe or use the arrow keys to read every label.
KManager's knock-control help describes the result as the lower of the main table value and the limited value. That applies when the stock knock logic is enabled. The symbols are base advance B, relative knock ignition limit L, retard range R and K.Control fraction C. The simplified result is min(B, B + L − R × C).
More details
For a cam-blend example, hold rpm and load at matching breakpoints and use 28 degrees in the 20-degree cam table. Put 24 degrees in its 30-degree neighbor. At 24 degrees actual cam angle, the blend is 60 percent of 28 plus 40 percent of 24, or 26.4 degrees.
Removing one degree from only the 20-degree table lowers that blend by 0.6 degree. Removing one from both lowers it by one degree. These are invented cells to show interpolation, before limits and compensations.
The arithmetic is worth working once. Use 30 degrees in the main table, minus 2 degrees in the relative limit, 8 degrees of retard range and 50 percent K.Control. The limited value is 30 minus 2 minus 4, or 24 degrees. The lower of 30 and 24 is 24.
If the limit were plus 8 and K.Control were zero, the limited value would be 38, but the lower value is still 30. A positive limit cannot add timing above the main table.
A negative limit works in the other direction. Raise the minus 2 toward zero, with the same 8 degree range and 50 percent K.Control, and delivered timing moves from 24 toward 26. At zero K.Control the same edit moves it from 28 toward 30.
That is the margin the limit was holding. The help cautions that increasing a negative knock ignition limit value advances the ignition by that amount. Making it closer to zero or positive has the same effect. Adjust the main table if you raise the limit.
Zeroing the limit to let the 30 through is an advance, not a cleanup.
That is why a negative limit matters even when the log shows no count. The ECU can run less than the main table and treat it as a no-knock condition. The same help says that no-count correction will not show as knock retard. That is not true of the K.Control slice.
K.Control can be above zero while the maximum timing sits below the main table. In that case the difference between the knock limit and that maximum does log as knock retard.
A rising K.Retard is that correction, not a channel the strategy refuses to use. A tuner who only looks for a retard channel can miss the no-count correction entirely.
The intake-air retard is subtracted from L, so it belongs inside that term. Low coolant temperature adds advance for a slower burn, and high coolant temperature retards for protection. Idle speed control moves spark quickly, and start timing has its own fixed value. Gear, tip-in and other controls can also change the final number on a calibration that has them.
MBT and the knock limit are different constraints. MBT is the advance that reaches the torque plateau. The knock limit is the advance where the engine begins to knock. On an engine already at the plateau, higher-octane fuel can add margin without needing more advance.
On a knock-limited engine, fuel quality can let you approach the plateau. Neither case supports an automatic E85 adder.
More retard is not automatically safer. The ignition help warns that too little advance raises exhaust gas temperature, especially on a turbo engine. A table driven arbitrarily low is a different damage path, not a margin.
KManager buffers some compensation changes until the ignition is switched off, the engine is restarted and it runs for several minutes. If an edit does not appear in the next log, check the active limit and the compensation. Check the restart requirement before you change the main table again.
3. KPro and FlashPro do not use one knock rule
The old statement that KPro knock control never retards timing is too broad for current software. KManager has a Use stock knock control logic option that enables the stock knock ignition limit and knock retard tables. The current help says those tables are unused unless the option is selected, and that versions before 1.4.2 had them disabled by default. The behavior therefore depends on the calibration and the software era, not only on the hardware name.
More details
When the option is off, the limit and retard tables do not shape the delivered spark. K.Retard can stay at zero because no correction is being applied. That is not proof the engine cannot knock, and it is not proof the sensor is false.
The main table, the compensations and the fuel state still decide what the engine gets.
When the option is on, the stock tables shape the result. The same help warns that enabling them will probably retard the ignition and require some re-tuning. It also says to always enable the knock sensor and suggests flashing the check-engine light when knock is detected.
A calibration with the option on and a log that shows zero retard is a different case. It is not the same as a calibration with the option off.
FlashPro exposes the same family of tables where the ECU supports them. Disabling the knock sensor is not a way to remove a limiter. The FlashPro help says a disabled sensor makes the ECU use default advance tables with considerable ignition retard.
Its ignition-tuning page also notes that the starting calibrations reduce knock sensitivity so knock control does not interfere with tuning. That is a starting-calibration choice, not evidence that the engine is safe. The ignition-tuning help also warns not to rely on the knock sensor to retard timing if the engine detonates.
| Name | What it is | What it is not |
|---|---|---|
| Knock Ignition Limit | A limit relative to the main ignition table | A target advance or a count |
| Knock Retard table | Retard between the high-octane and low-octane limits | The instantaneous retard shown in a log |
| Knock Sensitivity | The noise level the ECU accepts before it calls an event knock; a lower value is more sensitive | A volume control for a noisy engine |
| K.Control | A slow estimate of fuel quality as a percentage of the 100 to 90 RON spread | An event counter or a fast retard loop |
| K.Level | Knock sensor noise level at that moment | Knock severity or cylinder pressure |
| K.Thres | The threshold the ECU compares with that noise level | A fixed value you can read from one visible table |
| K.Count | Detected knock-type events; per-cylinder on FlashPro. KPro resets at key-off or calibration upload | Cylinder pressure or a damage measurement |
| K.Retard | A retard-related channel; its behavior depends on the active strategy | The value in the Knock Retard table |
K.Control is defined in percent of the difference between the 100 and 90 RON reference fuels. The knock-control help gives 0 percent as 100 RON or above and 25 percent as 97.5 RON. It moves slowly while driving.
More details
FlashPro's knock-control tables say that on newer vehicles K.Control starts high. Close to full knock retard is normal right after programming. It comes down in normal driving if there is no ping. KManager's knock-control help does not make that post-flash claim.
On a KPro or an older FlashPro calibration, a high K.Control is still the fuel-quality estimate. Check fuel, calibration and run history together. K.Control is an estimate, not an octane test. If the export shows 0.5, check the channel scale.
A fraction of 0.5 is 50 percent, not half a percent.
Counting and sensitivity are separate on FlashPro. Changing the Knock Sensitivity tables does not alter the recorded cylinder counts. It changes how knock control responds to sensor noise. KPro resets its counter at key-off or a calibration upload, so compare event timestamps and comparable recording intervals rather than trip totals.
Those are RON reference fuels, not an AKI pump label. The two scales are different, and the calibration does not require one particular pump grade. Read the fuel you actually run and keep its notation with the log.
The help also says the system is intended for fuel-quality compensation, not as a fast detonation guard.
The older KManager ignition help describes about two counts at the VTEC point as usual. That is a historical observation about a noise event at a transition. It is not a damage allowance, and it does not make two real combustion events acceptable.
A count needs an address, a fuel reading and a timing context before it means anything.
4. Read the log before you change the table
A useful ignition log carries more than spark advance. Record rpm, manifold pressure, throttle, actual cam angle and cam target. Add VTEC state, commanded spark, lambda and fuel pressure if available. Also log intake and coolant temperature, battery voltage, K.Count and K.Control.
Include K.Level, K.Thres and K.Retard where available. Add the calibration identity and the software version. Without the cam state and the load, a count is just a number at a timestamp.
- A good trace puts those channels at the same timestamp. The event repeats at the same rpm, load and cam angle. Lambda follows its target before the timing change. The actual cam follows its target closely enough that the table lookup is stable. Battery voltage is steady. The count rises in one region, not at every bump in the road.
- A bad trace has a missing cam channel, a unit that does not match the table, or a recording that starts after the event. A count that appears only on a shift, a VTEC transition or a rough road is one case. A count that repeats at one load point is another. A single frame is not a trend, and the logger samples more slowly than individual combustion events.
- Graph the count against rpm and manifold pressure first. Then add actual cam and VTEC state. Then compare lambda and temperature at the same address. Only after that compare the commanded spark with the main table and the active limit. If the count and the final spark do not move together at every frame, that is expected. The strategy can limit advance without a new count.
- Keep the native log and the CSV. A CSV is an export, and a channel that is absent from it is not a zero. The logging guide covers the channel names and the export path.
5. Establish a baseline you can defend
Ignition work starts before the ignition table. A lean mixture can knock. A sensor with a bad signal can mislead. A calibration with the wrong injector data makes every load cell uncertain. The baseline is the record that lets you tell a real improvement from a change in conditions.
- Start with the engine and the calibration. Record compression, piston and head details, cams and timing-chain indexing. Add injector flow and pressure, the fuel and its octane notation, the ECU or device ID, the software version and the calibration file. An octane number without RON or AKI is not enough, because the two scales are not the same.
- Fix faults and fuel first. Clear sensor codes, confirm MAP and intake temperature at key-on, check fuel pressure and lambda against target, and check battery voltage and grounds. Look at injector duty. KManager's help puts the injector upgrade planning point at 80 to 85 percent duty. Ignition testing on a maxed injector is not a fair test.
- Inspect every active timing constraint. On KPro, read the stock knock logic option, the knock ignition limit, the retard range and the sensitivity. On FlashPro, read the tables the calibration actually offers. Check intake-air and coolant compensation and the idle and start controls. Write down what is active before you change what is not.
- Hold one cam angle and one lobe for the baseline. Log actual and target. A pull where the cam is still moving is a blend of tables, not a sample of one. Use the same angle and the same gear or load for the before and after.
- Establish a torque reference. A log without a torque measurement can show a fault, a temperature change or a timing command, but it cannot establish the torque plateau. Use a steady load cell, a dyno or a repeatable acceleration reference, and write down which one.
- Save the as-found file and the baseline log. Work from a copy. Keep the calibration revision with the log so the next session can match them.
Stop if lambda does not follow target or actual cam does not follow target. Stop if battery voltage is unstable or a misfire code is present. A timing edit on top of that is a guess with a damage risk.
6. Change timing in a way you can explain
The main table is the base request. The limit and the compensations decide what reaches the plug. A change is useful only when the same load, cam angle and temperature produce a better torque result with acceptable margin.
- Select the active table and its neighbor. At 24 degrees actual, the 20 and 30 degree tables both contribute. With All unchecked, edit each relevant neighbor deliberately. KManager Edit All Tables applies the same degree change to all six angle copies of the selected low-speed or high-speed ignition table. It does not select the other VTEC state. FlashPro All also reaches the angle copies of the current table; an absolute Set writes the same value into each copy.
- Change one small region. No universal increment is safe. Use the smallest step the software and your measurement can resolve, in one rpm and load region. A larger step skips past the information you need.
- Re-log the same condition. Compare torque at the same rpm, load and cam angle. Check lambda, intake and coolant temperature, battery voltage, K.Count and K.Control. If the conditions moved, the comparison did not happen.
- Stop at the torque plateau, not at a count of zero. If torque stops rising, more advance is not buying power. If a count appears at the same address, back out and find the cause before another increase. The older habit of adding two degrees until power stops is a method with an unknown starting margin, not a safety rule.
- Keep the least advance that preserves the useful plateau. On a naturally aspirated engine, Hondata's tuning help describes tuning for maximum power and then retarding until about one horsepower is lost, while watching knock. That is a method for finding the edge, not a rule to subtract a fixed two degrees from every cell. Do not use it on a boosted engine. With boost, use conservative timing and abort at any sign of knock, pinging or detonation. Recheck the cause before another run.
- Repeat for the cam states the engine uses. Copy back only the saved cam-target tables into the tuned calibration, save and upload it, then validate the transitions. Uploading the entire original file would discard the ignition edits. A fixed-angle dyno result is not a complete ignition calibration.
- Archive the before and after. Keep the calibration, the logs, the conditions and the exact changes. A higher main table with lower delivered spark is not a successful increase.
| What you see | First check | What not to do |
|---|---|---|
| Main table rose, delivered spark did not | Negative knock limit, intake-air retard, idle control, cam table actually active | Add more to the main table |
| Torque stopped rising | The torque reference and the repeatability of the run | Keep advancing for a number |
| Count appears at one address | Lambda, fuel pressure, temperature, cam state, mechanical noise | Turn sensitivity down |
| K.Control stays high after a flash on a newer FlashPro calibration | Run time, steady-state driving and the calibration's starting behavior | Call the fuel bad from the first frame |
| K.Control high on a KPro or older FlashPro calibration | Fuel quality, the calibration and the run history | Assume a post-flash start or a sensor fault |
| Spark moves at idle | Idle target and actual rpm, air control, voltage, misfire | Flatten the idle spark map |
If FlashPro live tuning is in use, save the revised calibration and upload it before cycling the ignition. Live edits in ECU RAM revert to the last uploaded calibration at key-off. A restart required by a compensation change must not silently discard the main-table changes being compared.
7. Diagnose a count by its address
A count is a clue, not a diagnosis by itself. Start at the timestamp and write the address: rpm, manifold pressure, actual cam angle, VTEC state and the commanded spark. Then compare lambda and fuel pressure at that address.
A lean cell can create the noise you are trying to time around, and no ignition edit fixes it.
- Next look at temperature and the timing change. Intake temperature retard, a heat-soaked intake or a coolant compensation can put the engine in a different timing state without a main-table edit. If the count repeats at the same address across runs, treat it as a combustion signal until you have evidence otherwise.
- Mechanical noise is real, but it is not a default explanation. Check engine mounts, exhaust contact, heat shields, valvetrain, sensor installation and wiring. A forged piston does not prove every count is false, and a noisy valve cover does not prove the sensor is wrong. If the sensor or the block has been changed, verify that the sensor, wiring and calibration match the ECU before you blame the table.
| Symptom | First check | Not the fix |
|---|---|---|
| Count rises at the VTEC point | Lambda and timing at the transition, oil pressure and rocker operation, exhaust contact | Accepting two counts as normal |
| Count rises on a rough road | Mounts, exhaust, heat shield, sensor and wiring | Disabling the sensor |
| Count rises at one load point | Fuel, intake temperature, cam angle, the active limit | Pulling timing from the whole map |
| Zero retard with an audible rattle | The stock knock logic option and the sensor circuit | Assuming the engine is safe |
| Retard climbs after a flash | K.Control behavior and run time | Adding timing to overcome it |
- Reducing sensitivity because the engine is noisy lowers diagnostic confidence. The KManager help says that de-sensitizing the sensor for noisy cams or headers means the knock control will not detect knock consistently. That is a trade. It does not repair the noise source. If the build needs a sensitivity change, make it with an independent combustion check, not to make a count disappear from a screen.
- One count is not a universal pass and two counts are not a universal failure. The old two-count note describes a transition noise, not a damage budget. Investigate the address, the fuel and the mechanical source, then decide with evidence from this engine.
8. Idle, start and dwell
Idle spark is an actuator, not a fixed value. The FlashPro ignition help says it is normal to see the timing range from minus 10 to plus 15 degrees while idling. A log that moves across that range is not automatically a bad tune.
Check target and actual rpm, the air control response, battery voltage and misfire before you touch the idle spark table. In one KPro idle investigation, the owner found a cracked battery terminal and misfire codes.
The report ended before a repair test, so it establishes a fault to fix before tuning rather than a confirmed cure.
More details
- Cranking is a separate strategy. The FlashPro starting help says fixed ignition timing is used while cranking, typically 5 or 7 degrees BTDC. Those values are not the first row of the wide-open table, and they are not a universal number for every Honda ECU. Do not set cranking timing by copying a main-table cell.
- Dwell is the next unit trap. KManager's
Ignition Dwell Anglesets coil charge in crankshaft degrees, unlike a standalone ECU's dwell table in milliseconds. The voltage compensation reduces dwell as battery voltage rises. The ignition-compensation help warns that increasing coil charge time raises coil temperature and can damage the coil. Do not paste a millisecond value into a degree table just because another ECU uses milliseconds. - Changes to the compensation tables can wait until a restart and several minutes of running. If the idle or temperature behavior does not change immediately, confirm the restart requirement before you conclude the table did nothing.
9. Numbers used on this page
None is a target for your engine unless the row says so.
| Quantity | Value | Applies to | What it is |
|---|---|---|---|
| KPro ignition tables | 12 tables, 2 VTEC states × 6 angles | KManager, VTC K-series | Software layout at 0, 10, 20, 30, 40 and 50 degrees |
| FlashPro cam tables | Read the breakpoints from the calibration | FlashPro, vehicle-specific | Not a fixed copy of the KPro layout |
| Idle timing swing | −10 to +15 degrees | FlashPro, ignition-controlled idle | Normal range in the help, not a fixed target |
| Cranking timing | 5 or 7 degrees BTDC | Documented FlashPro starting strategy | Typical fixed value, not every ECU and not a main-table row |
| Knock reference fuels | 100 and 90 RON | Honda knock control design | About 95 and 85 AKI in the help; not a fuel rule for this engine |
| Knock retard table | 4 to 10 degrees | Hondata tuning recommendation | Range between the high and low octane limits, not continuous retard |
| Injector duty planning point | 80 to 85 percent | KManager injector help | Upgrade planning threshold, not a power target |
| Worked limit example | 30 base, −2 limit, 8 retard, 50% control gives 24 degrees | KPro with stock logic on, or FlashPro where those tables are exposed | Arithmetic illustration, not a stock table |
| K.Control example | 25% is 97.5 RON | Honda knock control description | Percentage of the 100 to 90 RON spread |
| Dwell unit | Crankshaft degrees | KManager Ignition Dwell Angle | Not milliseconds; voltage compensation changes it |
Questions
Why does actual spark differ from the table?
Interpolation between cam-angle tables, a negative knock ignition limit, intake-air retard and idle or start controls can all contribute. The main table is one input. Check the active cam and lobe first, then the limit and the compensations. A main table edit that ignores those will look ineffective.
Does no retard mean no knock?
No. On KPro, the stock knock logic may be switched off, or the threshold may not have been crossed. On either system, the limit may already sit below the main table. The ECU's use of that lower limit then never appears as knock retard, because it treats that as a no-knock condition.
That is a different case from the K.Control slice. K.Control can be above zero while the maximum timing sits below the main table. In that case the difference between the knock limit and that maximum does log as knock retard.
A quiet retard channel does not prove the engine is free of knock.
Is one knock count harmless?
There is no universal answer. A single count at a shift or a VTEC transition can be mechanical noise. A single count at a steady load point can be the start of a real event. Find the address, compare fuel and temperature, and check whether it repeats.
Do not turn a historical two-count note into a damage allowance.
Should I turn off knock sensing on forged internals?
A blanket disable removes information. A forged piston or a noisy valvetrain can raise the noise floor. That may call for a sensing change, but it does not prove every count is false. Verify the sensor, the circuit and the calibration first.
If sensitivity is reduced, accept that detection is less consistent and validate with another combustion check.
Why does the stock map show zero counts while the FlashPro map counts knock?
On the older Civic FlashPro strategy, a returned-to-stock calibration lacks the added knock-counting code. Its zero is not a measured absence of knock. Compare logs with the same counting capability. If an audible rattle disappears when the calibration changes, record that separately; the stock counter cannot explain the cause.
Do I pull timing from every cam table for tip-in knock?
Find the low or high cam state, actual cam angle, rpm and manifold pressure at the event. Tip-in complaints often involve low cam while actual VTC sits between angle breakpoints. Correct the affected region in both neighbors after checking transient fueling and the active knock limit.
A column number from another file does not identify your load. Use its pressure axis, and keep unrelated angles and the other VTEC state out of a local test.
I already pulled timing and it still counts. What fixed that for other owners?
One owner reported counts only when VTC advanced with aftermarket cams and springs. Fuel and timing changes did not clear them; refitting OEM cams reportedly did. Chain disturbance was the proposed explanation, without an independent combustion measurement. That case supports checking cam installation, chain control and valvetrain noise.
It does not establish that your counts are false or that another timing cut is safe.
Only cylinder 2 counts. Should I use cylinder ignition trim?
A cylinder counter identifies where the ECU assigned the event, not its cause. Compare that cylinder's plug, injector, compression and local exhaust or mechanical noise before using a trim. FlashPro provides individual-cylinder ignition adjustment on supported calibrations.
A local retard can be appropriate after diagnosis, but copying another car's trim cannot prove the event is gone. Reducing knock sensitivity will not erase FlashPro's cylinder counts.
Is plus two degrees always a safe test?
No. The size of the step does not establish the starting margin. An engine already at its knock limit can be damaged by a small increase. An engine far from the limit may take a larger step, but that is a result of the margin, not a rule.
Use the smallest step your measurement can defend and stop at the first sign of noise or lost torque.
Should timing always rise with rpm?
No. Torque demand, manifold pressure, cylinder filling, cam angle and compensation determine the optimum. A table can fall, or dip and recover, for a legitimate reason. A shape copied from another engine is not a model of yours. Compare torque at the same load and cam state before calling a dip wrong.
Can a log alone find MBT?
No. MBT is a torque plateau, and a log without a valid torque measurement cannot show where torque stops rising. A log is still useful for finding faults, confirming the cam state and seeing whether a change made the engine less happy.
Use a torque reference for the plateau and keep the log as the context.
Why is idle timing moving?
The ECU uses spark to control idle speed, so the value moves as the engine corrects. The FlashPro help gives a normal swing of minus 10 to plus 15 degrees. Check target and actual rpm, the air actuator, battery voltage and misfire before changing the idle spark table.
A fixed idle value is not a goal by itself.
Why does my KPro show K.Retard at zero?
Check the stock knock logic option first. If it is off, the limit and retard tables are unused and the channel may stay at zero because no correction is being applied. That is not evidence that the engine cannot knock.
If the option is on, check the sensor circuit and whether the limit is already shaping the delivered timing.
Is a 50 degree cam target safe?
A cam angle is not a spark value, and the software allowing a number does not establish piston-to-valve clearance or the torque peak. The VTC and VTEC page covers the mechanical check and the target map. Do not treat a large cam angle as an ignition target or copy it from another build.
Send the calibration, the native log, the CSV export, the ECU or device identity, the fuel and the hardware list. Tune Report is free. Honda Full Custom is open at $199 during the launch special ($249 regular).
Every file is compared against our 3 million+ tune values, with a final check-off by our lead tuner.
Tune Report is free if you want this file checked: open the Honda & Acura Tune Report.
A written review of your tune file and one log from your car.
Start a Honda & Acura Tune Report