RomRaider Logo

RomRaider

Open Source ECU Tools
 FAQ •  Register •  Login 

RomRaider

Documentation

Community

Developers

It is currently Sat Feb 21, 2026 5:11 pm

All times are UTC




Post new topic Reply to topic  [ 21 posts ]  Go to page 1, 2  Next
Author Message
 Post subject: Idle Ignition Timing
PostPosted: Thu May 23, 2013 10:52 am 
Offline
Experienced
User avatar

Joined: Thu Jul 22, 2010 10:22 am
Posts: 148
Location: Australia
I've had an issue with the way my car idles practically since it was new, rpm bounces and oscillates (-+100rpm) and it feels quiet rough almost like its dropping a cylinder intermittently.

I noticed in a log that ignition timing was also bouncing around (-+1.5deg) and all other parameters appeared to be relatively consistent.

This prompted me to take a look at the logic behind Idle Timing I found one thing of interest. Base Timing Minimum doesn't really form the minimum, the result from the Idle Base Timing tables is compared to the result of Base Timing Minimum table and the lowest of the two values is used. So if base timing is less than base timing min then base timing will be used. If base timing is greater than base timing min Base Timing min is used. Obviously this is not the cause of my issue but the name of this table really needs to be reviewed as it is misleading.

I suspect there is some kind of compensation causing my timing to jump around...

Thoughts?

_________________
09 ADM WRX/ 3" Exforce Turbo Back, Hyperflow TMIC, AEM CAI, Perrin Turbo Inlet, TGV Delete, Ported VF-52, Walbro Pump, Hybrid boost control (Grimmspeed EBCS/MBC), SI-Drive Mode Selector (3 pos Rocker Sw)/ Self tuned @ 17 Psi, Last dyno run 206Kw.


Top
 Profile  
 
 Post subject: Re: Idle Ignition Timing
PostPosted: Thu May 23, 2013 2:03 pm 
Offline
Senior Member

Joined: Sat Feb 12, 2011 11:27 pm
Posts: 2032
Location: Northern NSW
Easty wrote:
I've had an issue with the way my car idles practically since it was new, rpm bounces and oscillates (-+100rpm) and it feels quiet rough almost like its dropping a cylinder intermittently.

I noticed in a log that ignition timing was also bouncing around (-+1.5deg) and all other parameters appeared to be relatively consistent.

This prompted me to take a look at the logic behind Idle Timing I found one thing of interest. Base Timing Minimum doesn't really form the minimum, the result from the Idle Base Timing tables is compared to the result of Base Timing Minimum table and the lowest of the two values is used. So if base timing is less than base timing min then base timing will be used. If base timing is greater than base timing min Base Timing min is used. Obviously this is not the cause of my issue but the name of this table really needs to be reviewed as it is misleading.

I suspect there is some kind of compensation causing my timing to jump around...

Thoughts?


Not really misleading since the four 'Base Timing Minimum' is a global minimum that affects off idle as well(gear change)
Idle Base Timing has the RPM component due to cold idle having higher base idle speeds :)

Also, the idle jumping around on timing is unlikely to be a compensation issue, it typically a crank angle sensor pulse limit. ECU is seeing the individual crank pulses oscilliating as the crank goes past TDC


Top
 Profile  
 
 Post subject: Re: Idle Ignition Timing
PostPosted: Thu May 23, 2013 2:16 pm 
Offline
Experienced

Joined: Sat May 07, 2011 3:22 pm
Posts: 144
Easty wrote:
I've had an issue with the way my car idles practically since it was new, rpm bounces and oscillates (-+100rpm) and it feels quiet rough almost like its dropping a cylinder intermittently.

I noticed in a log that ignition timing was also bouncing around (-+1.5deg) and all other parameters appeared to be relatively consistent.

This prompted me to take a look at the logic behind Idle Timing I found one thing of interest. Base Timing Minimum doesn't really form the minimum, the result from the Idle Base Timing tables is compared to the result of Base Timing Minimum table and the lowest of the two values is used. So if base timing is less than base timing min then base timing will be used. If base timing is greater than base timing min Base Timing min is used. Obviously this is not the cause of my issue but the name of this table really needs to be reviewed as it is misleading.

I suspect there is some kind of compensation causing my timing to jump around...

Thoughts?


FWIW, I have found the same issue. My idle base timing does not seem to reflect what I actually get at idle.

My idle is pretty crappy as well. I see the small variations you do, as well as some very large ones (it actually will cut to -4 degree advances time to time). I believe this is closely tied to the "Idle airflow" tables. I have been wanting to play around with them a bit, but the descriptions are a bit vague and I haven't had the time to really mess with them.


Top
 Profile  
 
 Post subject: Re: Idle Ignition Timing
PostPosted: Thu May 23, 2013 8:18 pm 
Offline
Moderator

Joined: Thu May 20, 2010 8:01 am
Posts: 3117
Location: Johannesburg, South Africa
There are ignition idle compensation tables - based on load change, and in and out of 'normal' error range.

_________________
He who dies with the most gadgets wins.

Please do not PM me - use the email option.


Top
 Profile  
 
 Post subject: Re: Idle Ignition Timing
PostPosted: Thu May 23, 2013 8:19 pm 
Offline
Moderator

Joined: Thu May 20, 2010 8:01 am
Posts: 3117
Location: Johannesburg, South Africa
AZ1G101N
Code:
ROM:00085494 Table_Ign_Timing_Comp_Idle_Target_Out_of_Error_Range_A:.data.w 9
ROM:00085494                                         ; DATA XREF: sub_384D0+2EEo
ROM:00085494                                         ; ROM:off_388A0o
ROM:00085496                 .data.w 3
ROM:00085498                 .data.l flt_D04CC
ROM:0008549C                 .data.l flt_D04F0
ROM:000854A0                 .data.l byte_D04FC      ; = -2.031
ROM:000854A4                 .data.l h'4000000
ROM:000854A8                 .float 0.15625
ROM:000854AC                 .float -20.0
ROM:000854B0 Table_Ign_Timing_Comp_Idle_Target_Out_of_Error_Range_B:.data.w 9
ROM:000854B0                                         ; DATA XREF: sub_384D0+2F2o
ROM:000854B0                                         ; ROM:off_388A4o
ROM:000854B2                 .data.w 3
ROM:000854B4                 .data.l flt_D0518
ROM:000854B8                 .data.l flt_D053C
ROM:000854BC                 .data.l byte_D0548      ; = -2.031
ROM:000854C0                 .data.l h'4000000
ROM:000854C4                 .float 0.15625
ROM:000854C8                 .float -20.0
ROM:000854CC Table_Ign_Timing_Comp_Idle_Target_In_Error_Range_A:.data.w 9
ROM:000854CC                                         ; DATA XREF: sub_384D0+310o
ROM:000854CC                                         ; ROM:off_388ACo
ROM:000854CE                 .data.w 9
ROM:000854D0                 .data.l flt_D0564
ROM:000854D4                 .data.l flt_D0588
ROM:000854D8                 .data.l byte_D05AC      ; = -1.562
ROM:000854DC                 .data.l h'4000000
ROM:000854E0                 .float 0.15625
ROM:000854E4                 .float -20.0
ROM:000854E8 Table_Ign_Timing_Comp_Idle_Target_In_Error_Range_B:.data.w 9
ROM:000854E8                                         ; DATA XREF: sub_384D0+314o
ROM:000854E8                                         ; ROM:off_388B0o
ROM:000854EA                 .data.w 9
ROM:000854EC                 .data.l flt_D0600
ROM:000854F0                 .data.l flt_D0624
ROM:000854F4                 .data.l byte_D0648      ; = -1.562
ROM:000854F8                 .data.l h'4000000
ROM:000854FC                 .float 0.15625
ROM:00085500                 .float -20.0
ROM:00085504 Table_Ign_Timing_Comp_Idle_Target_Load_Change_A:.data.w 9
ROM:00085504                                         ; DATA XREF: sub_384D0+33Co
ROM:00085504                                         ; ROM:off_388B4o
ROM:00085506                 .data.w 2
ROM:00085508                 .data.l flt_D069C
ROM:0008550C                 .data.l flt_D06C0
ROM:00085510                 .data.l byte_D06C8      ; = 0.0
ROM:00085514                 .data.l h'4000000
ROM:00085518                 .float 0.15625
ROM:0008551C                 .float -20.0
ROM:00085520 Table_Ign_Timing_Comp_Idle_Target_Load_Change_B:.data.w 9
ROM:00085520                                         ; DATA XREF: sub_384D0+340o
ROM:00085520                                         ; ROM:off_388B8o
ROM:00085522                 .data.w 2
ROM:00085524                 .data.l flt_D06DC
ROM:00085528                 .data.l flt_D0700
ROM:0008552C                 .data.l byte_D0708      ; = 0.0
ROM:00085530                 .data.l h'4000000
ROM:00085534                 .float 0.15625
ROM:00085538                 .float -20.0

_________________
He who dies with the most gadgets wins.

Please do not PM me - use the email option.


Top
 Profile  
 
 Post subject: Re: Idle Ignition Timing
PostPosted: Fri May 24, 2013 4:48 am 
Offline
Experienced
User avatar

Joined: Thu Jul 22, 2010 10:22 am
Posts: 148
Location: Australia
throttlehappy wrote:
Not really misleading since the four 'Base Timing Minimum' is a global minimum that affects off idle as well(gear change)
I'm sorry don't agree for example if I set 15 degrees base timing and 17 degrees base min timing then base idle timing will equal 15 degrees. If I set base timing to 19 degrees and set base min timing to 17 then idle base timing will be capped at 17 degrees.

This table forms an upper limit not a lower limit, unless I'm missing something :roll:

throttlehappy wrote:
There are ignition idle compensation tables - based on load change, and in and out of 'normal' error range.
Stumbled upon these tables in my rom last night but I haven't looked at the logic behind them yet.

Heide264 wrote:
My idle is pretty crappy as well. I see the small variations you do, as well as some very large ones (it actually will cut to -4 degree advances time to time). I believe this is closely tied to the "Idle airflow" tables. I have been wanting to play around with them a bit, but the descriptions are a bit vague and I haven't had the time to really mess with them.

Which tables are you referring? to the decel tables found by td-d or the target tables found by me?

_________________
09 ADM WRX/ 3" Exforce Turbo Back, Hyperflow TMIC, AEM CAI, Perrin Turbo Inlet, TGV Delete, Ported VF-52, Walbro Pump, Hybrid boost control (Grimmspeed EBCS/MBC), SI-Drive Mode Selector (3 pos Rocker Sw)/ Self tuned @ 17 Psi, Last dyno run 206Kw.


Top
 Profile  
 
 Post subject: Re: Idle Ignition Timing
PostPosted: Fri May 24, 2013 6:32 am 
Offline
Moderator

Joined: Thu May 20, 2010 8:01 am
Posts: 3117
Location: Johannesburg, South Africa
Easty wrote:
Stumbled upon these tables in my rom last night but I haven't looked at the logic behind them yet.

This is what they look like:

Image

Doing exactly what you seem to be talking about - depending on the extent of the overshoot past the idle target, and the direction and rate of the engine speed fall or rise, will either increasingly add or remove ignition timing.

_________________
He who dies with the most gadgets wins.

Please do not PM me - use the email option.


Top
 Profile  
 
 Post subject: Re: Idle Ignition Timing
PostPosted: Fri May 24, 2013 6:40 am 
Offline
Experienced
User avatar

Joined: Thu Jul 22, 2010 10:22 am
Posts: 148
Location: Australia
These compensations are very aggressive given the scaling is so fine, I think I'll have a play with these and see if it helps.

_________________
09 ADM WRX/ 3" Exforce Turbo Back, Hyperflow TMIC, AEM CAI, Perrin Turbo Inlet, TGV Delete, Ported VF-52, Walbro Pump, Hybrid boost control (Grimmspeed EBCS/MBC), SI-Drive Mode Selector (3 pos Rocker Sw)/ Self tuned @ 17 Psi, Last dyno run 206Kw.


Top
 Profile  
 
 Post subject: Re: Idle Ignition Timing
PostPosted: Fri May 24, 2013 7:50 am 
Offline
Moderator

Joined: Thu May 20, 2010 8:01 am
Posts: 3117
Location: Johannesburg, South Africa
The load related table specifically deals with when there is a rapid change in load - based on increased electrical output, for example - a number of switches are referenced in the logic, including the defogger switch.

_________________
He who dies with the most gadgets wins.

Please do not PM me - use the email option.


Top
 Profile  
 
 Post subject: Re: Idle Ignition Timing
PostPosted: Fri May 24, 2013 1:52 pm 
Offline
RomRaider Developer

Joined: Thu May 21, 2009 1:49 am
Posts: 7323
Location: Canada eh!
Easty wrote:
throttlehappy wrote:
Not really misleading since the four 'Base Timing Minimum' is a global minimum that affects off idle as well(gear change)
I'm sorry don't agree for example if I set 15 degrees base timing and 17 degrees base min timing then base idle timing will equal 15 degrees. If I set base timing to 19 degrees and set base min timing to 17 then idle base timing will be capped at 17 degrees.

This table forms an upper limit not a lower limit, unless I'm missing something :roll:

Does this help?
viewtopic.php?f=15&t=9064&start=14


Top
 Profile  
 
 Post subject: Re: Idle Ignition Timing
PostPosted: Fri May 24, 2013 10:50 pm 
Offline
Experienced
User avatar

Joined: Thu Jul 22, 2010 10:22 am
Posts: 148
Location: Australia
Yes it does confirms what the logic is telling me!
Thanks
Attachment:
Untitled.png


You do not have the required permissions to view the files attached to this post.

_________________
09 ADM WRX/ 3" Exforce Turbo Back, Hyperflow TMIC, AEM CAI, Perrin Turbo Inlet, TGV Delete, Ported VF-52, Walbro Pump, Hybrid boost control (Grimmspeed EBCS/MBC), SI-Drive Mode Selector (3 pos Rocker Sw)/ Self tuned @ 17 Psi, Last dyno run 206Kw.


Top
 Profile  
 
 Post subject: Re: Idle Ignition Timing
PostPosted: Sun May 26, 2013 9:18 am 
Offline
Moderator

Joined: Thu May 20, 2010 8:01 am
Posts: 3117
Location: Johannesburg, South Africa
I have uploaded templates for all 6 tables to Github.

You will need the revised 32BITBASE.xml

_________________
He who dies with the most gadgets wins.

Please do not PM me - use the email option.


Top
 Profile  
 
 Post subject: Re: Idle Ignition Timing
PostPosted: Sun May 26, 2013 11:29 am 
Offline
Experienced
User avatar

Joined: Thu Jul 22, 2010 10:22 am
Posts: 148
Location: Australia
td-d wrote:
I have uploaded templates for all 6 tables to Github.

You will need the revised 32BITBASE.xml

Hey Mate did I get this right?
Attachment:
Untitled.png


You do not have the required permissions to view the files attached to this post.

_________________
09 ADM WRX/ 3" Exforce Turbo Back, Hyperflow TMIC, AEM CAI, Perrin Turbo Inlet, TGV Delete, Ported VF-52, Walbro Pump, Hybrid boost control (Grimmspeed EBCS/MBC), SI-Drive Mode Selector (3 pos Rocker Sw)/ Self tuned @ 17 Psi, Last dyno run 206Kw.


Top
 Profile  
 
 Post subject: Re: Idle Ignition Timing
PostPosted: Sun May 26, 2013 11:35 am 
Offline
Moderator

Joined: Thu May 20, 2010 8:01 am
Posts: 3117
Location: Johannesburg, South Africa
Easty wrote:
Hey Mate did I get this right?

I'll check tonight when I'm near my PC - quite easy to discern between the 'in range' to out range tables, sine the y axis is a different parameter.

_________________
He who dies with the most gadgets wins.

Please do not PM me - use the email option.


Top
 Profile  
 
 Post subject: Re: Idle Ignition Timing
PostPosted: Sun May 26, 2013 4:49 pm 
Offline
Moderator

Joined: Thu May 20, 2010 8:01 am
Posts: 3117
Location: Johannesburg, South Africa
Looks like you have the out of error range and electrical load tables swapped around (at least that's the way logic leads on the AZ1G101N).

_________________
He who dies with the most gadgets wins.

Please do not PM me - use the email option.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 21 posts ]  Go to page 1, 2  Next

All times are UTC


Who is online

Users browsing this forum: No registered users and 7 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Style based on FI Subsilver by phpBBservice.nl