2009 Aussie RA - Tweaking and Tuning
#1
Evolved Member
Thread Starter
2009 Aussie RA - Tweaking and Tuning
Someone suggested I start a separate thread for ideas and general approach relating to the ECU tuning of my '09 RA. Seems like a fair idea...
It has the added advantage that this one thread will become my main stream-of-consciousness dumping ground for piddling questions and pointless tweaks... rather than the entire EvoM Ralliart forum section!
At this point, I've got an Innovate LC-1 wideband O2 sensor on its way from the US. Also on its way is a boost pill (GST map at the ready!). However, before I get to flashing, logging and checking the higher boost GST map+pill, I want to learn a little more about EcuFlash/EvoScan tuning.
I'm running a "lightly tweaked" version of the GST 93 oct stock pill V2 AUDM base map right now, and I'm performing some systematic on-road tests of different load/rpm points, logging in EvoScan.
Currently, I'm checking low-rpm, high-load, high-gear behaviour. What I would like is a safe tune that handles stuff like drivers who, how shall I put it, "lack mechanical sympathy".
So I've got EvoScan set up with an alarm that sounds a tone if it sees knocksum of 2 or more. I'm getting out on the road at 60km/h in 5th gear (manual gear select) and going WOT. Disclaimer: I don't drive like this. Seriously, does anyone?
We've all heard from granddad that you can't expect a car to climb a hill or tow a trailer in high gear / low rpm without knocking. And the RA 4B11 is indeed suffering from a bit of detonation. Good old granddad - right again. Once the rpm gets to 2300/2400 (boost rising to 0.9 bar), load hits around the 140 mark, and ECU serves up knocksum values to trip the alarm. Foot comes off the throttle asap.
I've spent a bit of effort retarding timing in this area, but it feels like it needs at least 2 degrees taken out, which will in turn require smoothing around it , more testing, etc.
My question is this: Do I spend time on this, the "idiot driver" section of the map when tuning?
My obsessive/compulsive side says I must ELIMINATE KNOCK wherever I find it. This is repeatable, non-trivial knocksums in a specific area of the map. And this is an engine management system with precise control over pretty much everything.
My realist side says the ECU doesn't have control over morons who lock the transmission into 5th at 2000rpm and proceed to put their right foot to the floor. So don't waste time trying to tune out driver idiocy.
To those experienced in the art/science of map tuning, which way should I go on this? Skip the low-rpm, high-load stuff, or use it as a valuable learning experience?
Oh, and I'll also accept suggestions like "stop dicking around until you can check your AFR, dummy". I'm telling myself that too.
Happy to learn from people who have been here before!
Rich
It has the added advantage that this one thread will become my main stream-of-consciousness dumping ground for piddling questions and pointless tweaks... rather than the entire EvoM Ralliart forum section!
At this point, I've got an Innovate LC-1 wideband O2 sensor on its way from the US. Also on its way is a boost pill (GST map at the ready!). However, before I get to flashing, logging and checking the higher boost GST map+pill, I want to learn a little more about EcuFlash/EvoScan tuning.
I'm running a "lightly tweaked" version of the GST 93 oct stock pill V2 AUDM base map right now, and I'm performing some systematic on-road tests of different load/rpm points, logging in EvoScan.
Currently, I'm checking low-rpm, high-load, high-gear behaviour. What I would like is a safe tune that handles stuff like drivers who, how shall I put it, "lack mechanical sympathy".
So I've got EvoScan set up with an alarm that sounds a tone if it sees knocksum of 2 or more. I'm getting out on the road at 60km/h in 5th gear (manual gear select) and going WOT. Disclaimer: I don't drive like this. Seriously, does anyone?
We've all heard from granddad that you can't expect a car to climb a hill or tow a trailer in high gear / low rpm without knocking. And the RA 4B11 is indeed suffering from a bit of detonation. Good old granddad - right again. Once the rpm gets to 2300/2400 (boost rising to 0.9 bar), load hits around the 140 mark, and ECU serves up knocksum values to trip the alarm. Foot comes off the throttle asap.
I've spent a bit of effort retarding timing in this area, but it feels like it needs at least 2 degrees taken out, which will in turn require smoothing around it , more testing, etc.
My question is this: Do I spend time on this, the "idiot driver" section of the map when tuning?
My obsessive/compulsive side says I must ELIMINATE KNOCK wherever I find it. This is repeatable, non-trivial knocksums in a specific area of the map. And this is an engine management system with precise control over pretty much everything.
My realist side says the ECU doesn't have control over morons who lock the transmission into 5th at 2000rpm and proceed to put their right foot to the floor. So don't waste time trying to tune out driver idiocy.
To those experienced in the art/science of map tuning, which way should I go on this? Skip the low-rpm, high-load stuff, or use it as a valuable learning experience?
Oh, and I'll also accept suggestions like "stop dicking around until you can check your AFR, dummy". I'm telling myself that too.
Happy to learn from people who have been here before!
Rich
#2
Evolved Member
Thread Starter
For anyone (eg. Aussies) using ROMID 53610010 and logging, try the following for "Intake Air Temp" and see if it looks right to you...
Address: 80865b (EvoScan "2380865b", OP2.0 "0x80865b")
Scaling: x-40
Units: Dec C
Let me know what you think.
And yes, this came from random byte logging and eyeballing the results.
Rich
Address: 80865b (EvoScan "2380865b", OP2.0 "0x80865b")
Scaling: x-40
Units: Dec C
Let me know what you think.
And yes, this came from random byte logging and eyeballing the results.
Rich
#3
Evolving Member
iTrader: (2)
I personally don't see much point in spending much time tuning the extremely rarely hit load cells of your various maps. In contrast to your current test conditions, would you plan to rev your engine out to 7k at 5% throttle also!?! You can hit high load at low rpm without being so hard on your clutch to floor it in 5th. Find a hill and use 3rd. Tune the bulk of your map, then continue the trend to the extremes of the map. No need to try to simulate harsh conditions on the engine over and over again. During the tuning of these areas, you probably generate those conditions more than you ever would with your typical driving.
I can identify with the obsessive/compulsive thing though. Almost all summer I was driving myself crazy tuning in circles till I finally upgraded from my apparent leaky BPV that was causing me all kinds of grief.
I'm looking forward to seeing this thread progress.
I can identify with the obsessive/compulsive thing though. Almost all summer I was driving myself crazy tuning in circles till I finally upgraded from my apparent leaky BPV that was causing me all kinds of grief.
I'm looking forward to seeing this thread progress.
#4
Evolved Member
Thread Starter
Here's a file that could be useful to other 2009 AUS Ralliart owners.
The attached zip contains the EcuFlash definition for the 53610010 ROM image.
Extract and place in the EcuFlash "rommetadata\mitsubishi\lancer" directory. Note that this definition file has the three "extra" fields needed if you wish to enable Mode23 logging.
Beware of later versions of EcuFlash that may come with this...
Rich
The attached zip contains the EcuFlash definition for the 53610010 ROM image.
Extract and place in the EcuFlash "rommetadata\mitsubishi\lancer" directory. Note that this definition file has the three "extra" fields needed if you wish to enable Mode23 logging.
Beware of later versions of EcuFlash that may come with this...
Rich
#7
Evolved Member
Thread Starter
I'm not sure what happened. When I uploaded it, the file was a simple .zip. Now, when I download it again on my home XP machine, it's a zipped file within the .zip, called "53610010" - that needs unzipping twice. When I d/l it on another XP machine, it complains the format is junk. I reckon my own zipping tool is outdated - and maybe EvoM is doing something funny with zip uploads to boot!
Seeing as the file text is pretty small, here it is in good ol' raw text... until I can sort out the awesome complexity of uploading a zipfile.
53610010.xml :
Code:
<rom> <romid> <xmlid>53610010</xmlid> <internalidaddress>5002a</internalidaddress> <internalidhex>53610010</internalidhex> <make>Mitsubishi</make> <market>USDM</market> <model>Lancer</model> <submodel>Ralliart</submodel> <transmission>SST</transmission> <year>2008</year> <flashmethod>mitsucan</flashmethod> <memmodel>M32186F8</memmodel> <checksummodule>mitsucan</checksummodule> </romid> <include>evo10base</include> <table name="High Octane Timing Map" address="55957"> <table name="Load" address="60fd6"/> <table name="RPM" address="60fa2"/> </table> <table name="Low Octane Timing Map" address="55b59"> <table name="Load" address="60fd6"/> <table name="Y" address="60fa2"/> </table> <table name="MIVEC Intake #1" address="5db69"> <table name="Load" address="615e4"/> <table name="RPM" address="61614"/> </table> <table name="MIVEC Intake #2" address="5dd69"> <table name="Load" address="615e4"/> <table name="RPM" address="61614"/> </table> <table name="MIVEC Exhaust #1" address="5df69"> <table name="Load" address="615e4"/> <table name="RPM" address="61614"/> </table> <table name="MIVEC Exhaust #2" address="5e169"> <table name="Load" address="615e4"/> <table name="Y" address="61614"/> </table> <table name="Ignition Warmup Retard" address="5b8a5"> <table name="X" address="60f76"/> <table name="Y" address="60f42"/> </table> <table name="EGR Timing Advance" address="572b5"> <table name="Load" address="61520"/> <table name="Y" address="61506"/> </table> <table name="High Octane Fuel Map" address="55027"> <table name="Load" address="60f5c"/> <table name="RPM" address="60f36"/> </table> <table name="Low Octane Fuel Map" address="552d7"> <table name="Load" address="60f5c"/> <table name="RPM" address="60f36"/> </table> <table name="Fuel Alt #1" address="5517f"> <table name="Load" address="63cc6"/> <table name="RPM" address="63d1e"/> </table> <table name="Fuel Alt #2" address="5542f"> <table name="Load" address="63cc6"/> <table name="Y" address="63d1e"/> </table> <table name="Fuel Injector Scaling" address="536cc"/> <table name="Injector Battery Voltage Latency Compensation" address="556d0"> <table name="Battery Voltage" address="60eb2"/> </table> <table name="Injector Base Latency" address="53000"/> <table name="Evap Map #1" address="55d0f"> <table name="Load" address="60f76"/> <table name="RPM" address="60f42"/> </table> <table name="Evap Map #2" address="55f11"> <table name="Load" address="60f76"/> <table name="RPM" address="60f42"/> </table> <table name="Open Loop Load Low Octane #1" address="574fc"> <table name="RPM" address="60dc2"/> </table> <table name="Open Loop Load High Octane #1" address="57514"> <table name="RPM" address="60dc2"/> </table> <table name="Open Loop Load Low Octane #2" address="555c2"> <table name="RPM" address="60dc2"/> </table> <table name="Open Loop Load High Octane #2" address="555da"> <table name="RPM" address="60dc2"/> </table> <table name="Cylinder Fuel Trim #1" address="57df9"> <table name="Load" address="60f5c"/> <table name="RPM" address="61a32"/> </table> <table name="Cylinder Fuel Trim #2" address="57fe3"> <table name="Load" address="60f5c"/> <table name="RPM" address="61a32"/> </table> <table name="Cylinder Fuel Trim #3" address="581cd"> <table name="Load" address="60f5c"/> <table name="RPM" address="61a32"/> </table> <table name="Cylinder Fuel Trim #4" address="583b7"> <table name="Load" address="60f5c"/> <table name="RPM" address="61a32"/> </table> <table name="Reactive Solenoid Base WGDC Map #1A (High Gear Range)" address="58d39"> <table name="Throttle" address="62672"/> <table name="RPM" address="625f0"/> </table> <table name="Reactive Solenoid Base WGDC Map #1B (High Gear Range)" address="58de3"> <table name="Throttle" address="62672"/> <table name="RPM" address="625f0"/> </table> <table name="Reactive Solenoid Base WGDC Map #2 (Low Gear Range)" address="57393"> <table name="Throttle" address="62672"/> <table name="RPM" address="625f0"/> </table> <table name="Passive Solenoid Base WGDC Map #1A (High Gear Range)" address="5a1c6"> <table name="RPM" address="625f0"/> </table> <table name="Passive Solenoid Base WGDC Map #1B (High Gear Range)" address="5a1dc"> <table name="RPM" address="625f0"/> </table> <table name="Passive Solenoid Base WGDC Map #2 (Low Gear Range)" address="5a1f2"> <table name="RPM" address="625f0"/> </table> <table name="Boost Target Engine Load #1A (High Gear Range)" address="58e8d"> <table name="Throttle" address="62672"/> <table name="RPM" address="625f0"/> </table> <table name="Boost Target Engine Load #1B (High Gear Range)" address="58f37"> <table name="Throttle" address="62672"/> <table name="RPM" address="625f0"/> </table> <table name="Boost Target Engine Load #2 (Low Gear Range)" address="5743d"> <table name="Throttle" address="62672"/> <table name="RPM" address="625f0"/> </table> <table name="Boost Control Load Offset" address="53484"/> <table name="Reactive Solenoid Turbo Boost Error Correction" address="58d20"> <table name="Boost Error" address="6261a"/> </table> <table name="Boost Control RPM Per MPH Xover (Gear Based)" address="54686"/> <table name="Boost Limit" address="555b4"> <table name="RPM" address="615ba"/> </table> <table name="Boost Cut Delay Timer" address="53068"/> <table name="Throttle Map #1" address="50b68"> <table name="Throttle Percentage" address="613d0"/> <table name="Load" address="61322"/> </table> <table name="Throttle Map #2" address="51192"> <table name="Throttle Percentage" address="613d0"/> <table name="Load" address="61322"/> </table> <table name="Throttle Map #3" address="517bc"> <table name="Load" address="613d0"/> <table name="RPM" address="61322"/> </table> <table name="Throttle Map #4" address="51de6"> <table name="Throttle Percentage" address="613d0"/> <table name="Load" address="61322"/> </table> <table name="Throttle Map #5" address="52410"> <table name="Throttle Percentage" address="613d0"/> <table name="Load" address="61322"/> </table> <table name="SST Throttle Computation Map #1" address="592a5"> <table name="Load" address="61408"/> <table name="RPM" address="61382"/> </table> <table name="SST Throttle Computation Map #2" address="593bd"> <table name="Load" address="61408"/> <table name="RPM" address="61382"/> </table> <table name="SST Throttle Computation Map #3" address="594d5"> <table name="Load" address="61408"/> <table name="RPM" address="61382"/> </table> <table name="SST Throttle Control Unknown 60a8d" address="60abe"> <table name="X" address="60d7e" elements="16" scaling="RPM"/> </table> <table name="Throttle Conditional Switch" address="5494e"/> <table name="Airflow Check #1" address="5e995"> <table name="Throttle" address="624f0"/> <table name="Y" address="624c8"/> </table> <table name="Airflow Check #2" address="5ea8b"> <table name="Throttle" address="624f0"/> <table name="Y" address="624c8"/> </table> <table name="Airflow Check #3" address="5eb81"> <table name="Throttle" address="624f0"/> <table name="Y" address="624c8"/> </table> <table name="Airflow Check #4" address="5ec8b"> <table name="X" address="62538"/> <table name="Y" address="62512"/> </table> <table name="Torque Limiter #1" address="6380b"> <table name="Throttle" address="6248e"/> <table name="Y" address="62466"/> </table> <table name="Torque Limiter #2" address="63901"> <table name="Throttle" address="6248e"/> <table name="Y" address="62466"/> </table> <table name="Torque Limiter #3" address="639f7"> <table name="Throttle" address="6248e"/> <table name="Y" address="62466"/> </table> <table name="Torque Limiter #4" address="63aed"> <table name="X" address="624d6"/> <table name="Y" address="624b0"/> </table> <table name="Flow Check table" address="60a89"> <table name="X" address="62a72"/> <table name="Y" address="62a5a"/> </table> <table name="Rev Limiter" address="5305e"> </table> <table name="Stationary Rev Limiter" address="53442"> </table> <table name="Speed Limiter" address="53062"> </table> <table name="Knock Filter #1" address="566ff"> </table> <table name="Knock Filter #2" address="56927"> </table> <table name="Knock Filter #3" address="5686f"> <table name="X" address="611b0"/> <table name="Y" address="61156"/> </table> <table name="Knock Filter #4" address="569df"> <table name="X" address="611b0"/> <table name="Y" address="61156"/> </table> <table name="Knock Filter #5" address="56647"> <table name="X" address="611b0"/> <table name="Y" address="61194"/> </table> <table name="ECU ID" address="5002a" scaling="ECU ID"> </table> <table name="IFMode 0x05 -> 0x23 #1" category="Misc" address="7efb1" type="1D" scaling="Hex8"/> <table name="IFMode 0x05 -> 0x23 #2" category="Misc" address="8a919" type="1D" scaling="Hex8"/> <table name="DoMode 0x42 -> 0x52" category="Misc" address="8a91e" type="1D" scaling="Hex16"/> <table name="Open Loop Temperature" address="5308a" scaling="Temp"/> </rom>
Trending Topics
#9
Evolved Member
Thread Starter
I'm dead keen to read an RA version of that guide...
Rich
#11
Evolved Member
Thread Starter
For anyone trying to tune the ignition timing map on the AUDM 2009 Ralliart, here's something to try:
The spark map seems to be referenced by the 2-byte Load value found at mode23 address 808776.
Until prodded to look in a different area by Merlin, I was using 80876e when looking up load/rpm cells. This often resulted in less than accurate cross-referencing - when the car was nice and hot, the actual TimingAdv value being used by the ECU was often at a higher load point than indicated.
I've been watching 808776 for a couple of days now, and it's bang-on accurate for the ignition timing map (so far). I'll continue to keep an eye on it, but this is now my "Load" variable of choice.
Here's my current OP2.0 "logcfg.txt" file:
This configuration file also has an experimental 1-byte "Intake Air Temp" variable. I still need to verify this as being correct, but it seems to behave in a consistently IAT-like manner. I probably need to go find the actual sensor and see if it reacts to something like a heat gun, hehe. That'll tell me for sure!
Rich
The spark map seems to be referenced by the 2-byte Load value found at mode23 address 808776.
Until prodded to look in a different area by Merlin, I was using 80876e when looking up load/rpm cells. This often resulted in less than accurate cross-referencing - when the car was nice and hot, the actual TimingAdv value being used by the ECU was often at a higher load point than indicated.
I've been watching 808776 for a couple of days now, and it's bang-on accurate for the ignition timing map (so far). I'll continue to keep an eye on it, but this is now my "Load" variable of choice.
Here's my current OP2.0 "logcfg.txt" file:
Code:
; sample logging configuration file for openport 2.0 ; must be named logcfg.txt and be placed in the root directory of the ; microSD card inserted in the openport in order to work ; this sample logs using the KWP2000 ReadMemoryAddress command over the ISO15765, which works ; for CAN based mitsubishis that have had their ROMs modified to allow the use of this command. ; this command is also known as "mode23" on some forums. since this command reads directly from ; ECU memory, the paramid addresses used are different for different ROM versions. ; ; Ralliart Lancer 2009 ROMID 53610010 ;----------------mrmacan evox---------------- ; log channel settings type=mrmacan paramname=RPM paramid=0x80874f scalingrpn=x,31.25,* paramname=LoadTiming paramid=0x808776 databits=16 scalingrpn=x,0.3125,* paramname=TimingAdv paramid=0x808a07 scalingrpn=x,20,- paramname=KnockSum paramid=0x808a4b ;paramname=Load ;paramid=0x80876e ;databits=16 ;scalingrpn=x,0.3125,* paramname=TPS paramid=0x8086f9 scalingrpn=x,0.3921569,* paramname=PSIG paramid=0x80871a databits=16 scalingrpn=x,0.0483675,*,14.5,- ;paramname=ActiveWGDC ;paramid=0x808b53 ;scalingrpn=x,0.5,* ;paramname=PassiveWGDC ;paramid=0x80a53f ;scalingrpn=x,0.5,* ;paramname=IPW ;paramid=0x80a964 ;databits=16 ;scalingrpn=x,0.001,* ; log these items a little less often using a sampgroup (see subaru example for more details) paramname=Manifold_Air_Temp paramid=0x80865e databits=16 scalingrpn=x,40,- sampgroup = 1 paramname=Intake_Air_Temp paramid=0x80865b scalingrpn=x,40,- sampgroup = 1 paramname=Speed paramid=0x8087e7 scalingrpn=x,2,* sampgroup = 1 paramname=Octane paramid=0x80459f scalingrpn=x,0.3921569,* sampgroup = 1 paramname=FuelTrim_Idle paramid=0x804573 scalingrpn=x,0.1953125,*,25,- sampgroup = 1 paramname=FuelTrim_Cruise paramid=0x804575 scalingrpn=x,0.1953125,*,25,- sampgroup = 1
Rich
Last edited by richardjh; Nov 4, 2010 at 06:59 AM. Reason: Formatting, etc.
#12
Evolved Member
Thread Starter
So what would make the ECU's ignition timing suddenly deviate from the rpm/load table lookup... when knocksum is zero?
Or, alternatively, is it possible for the ECU to "hear" detonation (and react to it) without the logged knocksum moving off zero?
I'm not talking on a single line here, where there can be a time delay between two "adjacent" values. I saw the following very strange deviation from the spark map...
Everything matches up perfectly before and after the coloured section - RPM/Load cross-reference is dead-on. But immediately preceding the non-zero knocksum in the log, the ECU seemed to react.
So either the ECU sees the future (it's a miracle!), or the logged knocksum isn't the whole story. Is the ECU dialled in to the knock sensor in a far more subtle manner than just the general "rule of thumb" knocksum stuff?
I find it unlikely that this behaviour is unrelated to knock sensing... seeing as the odd "red" area immediately precedes the only non-zero knocksum in over ten minutes of logs.
Very interesting. Lots to learn...
Rich
Or, alternatively, is it possible for the ECU to "hear" detonation (and react to it) without the logged knocksum moving off zero?
I'm not talking on a single line here, where there can be a time delay between two "adjacent" values. I saw the following very strange deviation from the spark map...
Code:
RPM Load Timing Knocksum 3063 143 11 0 Spark Map lookup matches timing advance 3156 149 12 0 Spark Map lookup matches timing advance 3250 158 11 0 Spark Map lookup matches timing advance 3344 169 11 0 Spark Map lookup matches timing advance 3438 182 10 0 Spark Map lookup matches timing advance 3563 193 9 0 Spark Map lookup matches timing advance 3625 209 9 0 Spark Map lookup matches timing advance 3781 222 7 0 2* retarded from Spark Map lookup. 3906 230 7 0 2* retarded from Spark Map lookup. 4031 235 6 0 2* retarded from Spark Map lookup. 4125 237 7 0 2* retarded from Spark Map lookup. 4281 237 8 2 1* retarded from Spark Map lookup 4375 233 7 2 2* retarded from Spark Map lookup 4469 232 8 1 1* retarded from Spark Map lookup 4625 230 9 1 1* retarded from Spark Map lookup 4719 229 9 0 1* retarded from Spark Map lookup 4844 229 11 0 Spark Map lookup matches timing advance 4969 228 11 0 Spark Map lookup matches timing advance 5063 226 12 0 Spark Map lookup matches timing advance
So either the ECU sees the future (it's a miracle!), or the logged knocksum isn't the whole story. Is the ECU dialled in to the knock sensor in a far more subtle manner than just the general "rule of thumb" knocksum stuff?
I find it unlikely that this behaviour is unrelated to knock sensing... seeing as the odd "red" area immediately precedes the only non-zero knocksum in over ten minutes of logs.
Very interesting. Lots to learn...
Rich
#13
Evolved Member
Richard, it is almost certainly air temp modifying the advance.
I see we dont have the relevant table defined, so I shall try and find it - tephra probably has it already though for the EvoX.
I see we dont have the relevant table defined, so I shall try and find it - tephra probably has it already though for the EvoX.
#14
Evolved Member
Thread Starter
That's kind of what got me stumped - it seemed to be a sudden, measured but strictly momentary retardation.
Good luck with the detective work!
Rich
#15
Evolving Member
iTrader: (2)
Have you adjusted your max ignition timing map? Your log values follow the max timing table on my stock rom. I don't have the address for your rom id, but I bet thats you problem. You can't ask more of the car in the high octane map in that area without changing the limit.
Last edited by Piper747; Nov 8, 2010 at 05:02 PM.