MR2 SpyderChat banner

1 - 11 of 11 Posts

·
Registered
Joined
·
747 Posts
Discussion Starter #1 (Edited)
EDIT: SOLVED and TLDR:

To protect your engine from the PFC randomly advancing timing, turn OFF BOTH
  • Settings 1 > Function Select > 5 .Idle-IG Cntrl
  • Settings 4 > IGN vs BatV should all be 1.0 since this appears to be timing vs battery instead of dwell vs battery as it is in all other EMS's
The Settings 1 Idle-IG SHOULD BE TURNED OFF! With this on you clearly risk advancing as much as 6 degrees (as evidenced by my logs) in high load portions of your map! This will over time damage engines on all but the most conservative tunes.

__
Preface:

I have been tuning customer cars for 20 years. Hardware experience includes a variety of engine management systems so I have a good feel for tuning software, even the old stuff.

I have been attempting to street tune my ignition map on a Power FC via Datalogit. In a few high load areas of my map I have been hunting what appeared to be a random unexpected knock. For example, do a pull at 10 PSI to redline through two gears and I may see a knock spike during one pull but not the other even when back to back. Usually just one short spike in knock. Not repeatable but intermittent at different points in the map.

So, I have been trying to figure out what is going on since my timing map now has all sorts of weird holes in it. Well, I suspected I was getting inconsistent timing due to a correction factor. To find out I went to Settings 4 tab and insured that there were no IGN vs TPS settings (all zero) and made sure all other settings were for retard ONLY, no advance. I went out and did some pulls and saw a few knock spikes. Great, so next I pulled my IGN tables and did a compare against the MAX logged in Datalogit. BIG SUPRISE!!!! What I found is that the Power FC is advancing timing by as much as 4 degrees in what appears to be a somewhat random way. Additionally some key cells where I saw knock during my pulls had 3 degrees of timing added vs the IGN table! Specifically the where I saw knock right in the middle of a pull there was suddenly 3 degrees of timing added.

So, here's my question. With stable engine temperatures, air temperatures that should be RETARDING timing, all of the parameters on Settings 4 should be RETARDING timing. Could IGN vs BatV be a degrees timing instead of a dwell setting? Could noise on my DC bus be caught and used to advanced timing? Did I miss something? Any other ideas why the PFC would advance timing?

I have tuned all sorts of ECU's and this find is pretty shocking. If I am misunderstanding a parameter that's fine but the intermittent nature of the actual logged timing is very disconcerting.

77730
 

·
Registered
Joined
·
747 Posts
Discussion Starter #2
Here's a spreadsheet showing the logged vs IGN table. Positive numbers are timing advance over and above the IGN table.

77731


Here you can see a knock spike

77732
 

·
Registered
Joined
·
747 Posts
Discussion Starter #3 (Edited)
Here is the same knock spike and the associated timing. Note the 18* advance in the 7000 RPM/13000 PIM cell. There are several much higher knock spikes elsewhere in my logs but this is indicative of what I see. My main point is that SOMETHING is advancing timing.

77733


Here's what it SHOULD have been 15*:

77734
 

·
Registered
Joined
·
747 Posts
Discussion Starter #4 (Edited)
FINDING - WARNING!!!! IGN vs BatV is NOT a dwell compensation. I repeat IGN vs BatV advances and retards TIMING NOT DWELL as it should as it does on other engine management platforms. Here's what I found:

I ran Settings 4 tab with the IGN vs BatV table with 1.000 in all cells. The logged (advanced and basic) under boost now looks substantially better. All boost cells are now showing some sort of timing retard (as expected since I still have IAT timing retard enabled). My butt dyno confirms this as well. The car FEELS like I pulled 6 degrees of timing in most of the boost region. Additionally the average knock levels are about half what they usually are under load further confirming my suspicion that DC noise was being picked up by the PFC. It should be noted that my setup has a very large methanol pump running 20khz PWM in high current. But still, this is a TERRIBLE design even for a device this old. On most cars I'm sure the issue is less pronounced but if you were to have a diode go bad on the alternator or something this very well could cause the PFC to scramble the target ignition values and destroy some ring lands quickly under boost.

Now, the off boost area of the ignition timing map is STILL seeing quite a bit of unexpected advance (up to 4 degrees). Not as much of a worry with lighter loads but I prefer to tune an EMS in open loop and have the engine run what I actually set. See the new delta table below. Note that 3 or 4 degrees of unexpected advance is still a big problem. So, the only remaining things that could possibly do this are idle ignition control (I doubt that parameter is programmed to come on much above idle set point) and Settings 4 > Boost vs IGN S.F.
 

·
Registered
Joined
·
747 Posts
Discussion Starter #5
Here's the shot of the after for the IGN table vs Logged. Look at all those nice negative numbers on the lower right hand corner of the comparison sheet. That's what SHOULD be happening under boost! Now I just need to chase down the off boost advance too.:

77749
 

·
Registered
Joined
·
747 Posts
Discussion Starter #6
So I did some digging and the Boost vs IGN setting is definitely a PIM value. Additionally, from my logs it is clear that the S.F. or scale factor input here is not linearly interpolated. There is clearly a step change at the boost point. The thing is IAT timing retard is still being applied at 100% with no scale factor above and below boost threshold. I am going to play with the PIM values to see if I can force the ECU to only apply the IAT and water temperature corrections.

More logging to do today. I will continue to post results here because Google has not shown me anyone who has investigated PFC timing being advanced other than the RX7 FD guys. They had a similar but different issue where the EMS would advance based on RPM in 1 degree increments. That's not the issue that I see with the 2ZZGE firmware I am testing here.
 

·
Registered
Joined
·
747 Posts
Discussion Starter #8
New Findings:

On my theory that the boost Scale Factor was being applied somewhat incorrectly in the 2ZZGE PFC firmware I played with the numbers quite a bit. So here's what I found. I first lowered the PIM value for S.F. 0.0 to about 800 to see what happened (I left the 1:1 section alone at first). The PFC RESUMED advancing timing in the boost section of the map!! Well crap.

Next, I returned S.F. to value back to a PIM valule of 3840. Thinking the wider range between the values was causing some sort of sloped application of the advance I modified the PIM value in the 1:1 cell. This time I went to 3940 for the 1:1 and 3840 for the 0:0. See attached:

77773


BOOM! There we have it! Here's the post run snapshot of the IGN table compared to the log. Just about everything is retarded by the IGN vs AirT as expected. Non negative cells explained below.

77772


Two items of note:

In the top left corner of the map these cells have PIM values well below the 0:0 set point I chose. So, expectedly there are still some cells with advance applied.
The cells showing 1 degree advance in orange are PROBABLY due to transients and interpolation to the adjacent cells. This APPEARS to be acceptable. But, I am 99% sure I have identified a method to use to insure the PFC does NOT advance timing under boost and destroy my engine.

Next step:

Shift the PIM values of both 0:0 and 1:1 to a value just above cold idle. Then I will report back here. It seems the key with this parameter is that the two numbers be fairly close together. I would caution anyone using the same two values in both cells. I don't know if this would cause some odd behavior but without any documentation of this parameter I would advise against it. I did try this just to see what would happen and started the engine. The car ran as normal.

Thoughts:

I STILL don't know why this is even needed. Based on the other Settings 4 tab configurations the PFC should NOT be advancing timing ANYWHERE. Well other than for IGN vs Water T Cool. Oddly enough that cell is called "Retard" and as we all know a cold engine requires ADVANCE!!!! So, I suspect there are some Japanese to English translation errors in the UI here. If this one VERY OBVIOUS error exists I suspect some other less benign errors also exist.

It should be noted that it is possible that the PFC behaves oddly with my setup since I am running a blow through MAF and I have a lot of DC noise under boost due to the very large PWM demand on the alternator. HOWEVER, I see the same exact advance in the off boost cells when the pump is off and the air temperatures are close to ambient. So, I STRONGLY suspect that whatever error this is in the 2ZZGE PFC firmware is responsible for MANY DAMAGED ENGINES.

I would appreciate it if someone else with a PFC could pull the following to confirm:
Your IGN table
A datalog of Advanced IGN Max
A datalog of Basic IGN Max
A datalog of Advanced IGN Average
A datalog of Basic IGN Average

Conclusion so far:

Frankly I am REALLY surprised that nobody else has mentioned that their logged IGN values deviate from the IGN table so substantially. I feel like I am going a bit crazy here since this EMS has been on the market for SO many years but my evidence posted above CLEARLY shows there IS a problem. It also shows that what SHOULD BE dwell vs battery voltage compensation is in fact ignition timing vs battery voltage. This is strait up wrong and will blow your $$$$ engine up! I have NEVER seen another ECU that has an ignition timing advance against battery that does not have a dwell compensation. That's just crazy! Thankfully there is a workaround with the dwell vs RPM table but it's really not ideal since you end up driving your coil pack harder at cruse than you otherwise should.
 

·
Registered
Joined
·
747 Posts
Discussion Starter #9
Short update:

I attempted the low PIM values for the Boost vs IGN. Well, that didn't go as expected. It looks like the ignition advance is everywhere but the bottom of the map. I mean, that kind of makes sense. I feel a little embarrassed that I got this backwards.

Next I'm trying the other way around. Choosing PIM values as high as possible. Fingers crossed. Will report back after a datalog tonight.
 

·
Registered
Joined
·
747 Posts
Discussion Starter #10 (Edited)
Well, I have tried everything I can think of. I am unable to prevent the PFC from advancing timing several degrees above the IGN map. The screenshot below shows that ALL IGN settings zeroed out (advance and retard). The next shot shows the output of a spreadsheet that subtracts (logged IGN - IGN MAP) so it SHOULD be all zeros. It looks very similar if I use average, max, basic or advanced. Honestly it just advances randomly between 1 and 4 degrees. I know this is real advance because I have done a few pulls where the timing advanced in just a few cells. When I pulled up the knock log, guess where the knock lined up. Yup right over the cells that were hit with several degrees of advance.

I'm at a loss here and just about out of ideas. Here's what I have left that I guess I can try.
  • Disconnect the boost sensor and see if the PFC behavior improves
  • Find and try different PFC firmware
  • Add some DC noise suppression on power feed to the PFC
  • Crack open the PFC and verify the SMD's are intact
  • Clear the PFC and reset back to factory then dump my maps back in the thing
  • Set SF boost points as wide as datalogit will allow - doubt this will do anything
  • Turn off idle ignition control
I doubt there is something mechanically/electrically wrong with the PFC since datalogit is recording COMMANDED timing advance. I'm open to suggestions here. See below, technically there should have been no timing advance or retard other than the fuel cut overrun zero degree commanded. That can be seen on the left side low RPM low load areas that appear to have negative values. Those are probably overrun cells.

77854


77855
 

·
Registered
Joined
·
747 Posts
Discussion Starter #11 (Edited)
SOLVED!!!! TLDR added to first post.

Today I went for broke and tried to figure out what the heck was going on. It turns out at least THREE of my suspicions were correct!

ONE - The PFC applies idle ignition control on the entire map! I repeat, THE PFC APPLIES IDLE IGNITION CONTROL ON THE ENTIRE IGN MAP EVEN OFF IDLE!!!! Evidenced by my screenshots below.

TWO - The PFC pulls timing (RETARDS timing) on overrun (throttle lift). Evidence pasted below. This is actually a good thing if it's not too aggressive.

THREE - The PFC advances timing in stepped increments across the timing table in 1 degree increments at stepped points in RPM. The first can be seen at exactly 4000 RPM. So for example if your IGN table calls for 20* at 4100 RPM you will see 21* in your logged timing.

My approach was as follows.
  • Turn off idle IGN control
  • Set the entire IGN map to 20 degrees with a cold engine
  • Rev the engine several times slowly and quickly to see what happened with the IGN recorded timing
  • Leave ALL Settings 4 tab items zeroed out
Here's the setting I changed for IGN control:
77856



Here is my evidence that IT WORKED!
77857



CONCLUSION: IGN idle control MUST be turned off to protect your engine on forced induction PERIOD. While the firmware appears to have the same stepped timing issue that the FD RX7 Power FC does, this can be solved with simple tuning.

I am SO VERY EXCITED that I have figured these issues out! I can now really tune the engine. I was pulling so much timing to protect the engine in the ignition map that I was probably down 50 horsepower at 10 PSI.
 
1 - 11 of 11 Posts
Top