Notices

ROM disassembly as raw text file

Thread Tools
 
Search this Thread
 
Old Aug 31, 2011 | 08:49 AM
  #91  
richardjh's Avatar
Thread Starter
Evolved Member
 
Joined: Oct 2010
Posts: 2,447
Likes: 14
From: Australia
Look, as far as I'm concerned, you can link "ROM disassembly" to just about anything. I mean, the ECU monitors oil related stuff like, err, oil pressure, doesn't it.


I used to use Motul 300V Chrono 10w40 - in a high-revving n/a v6. Loved it.
But for the past 12 months I've been dutifully using 5w-30 fully syn as per owners manual. And I've pretty much decided that the last container of that I bought will be the last container. One afternoon doing 6-7 short track tests (90 seconds each, with cooldown time between) and that oil goes to the dogs.

That stuff was "Castrol Edge Sport", which would be fine for (a) 100% street driving and (b) a stock power Ralliart. Fail on both counts. And note there's no oil cooler on this car from factory - more Mitsu cost-cutting for the RA. Quite simply, it gets cooked.

It's highly likely I'll go back to something like the 300V Chrono... and also slap on an oil cooler. Sigh.

5w-30. Silly me for reading the owners manual, and/or acting on it. Live and learn.

Rich
Reply
Old Aug 31, 2011 | 08:51 AM
  #92  
tephra's Avatar
EvoM Guru
15 Year Member
iTrader: (6)
 
Joined: Feb 2007
Posts: 9,486
Likes: 67
From: Melbourne, Australia
I use Castrol Edge Sport on mine...

But that will probably change when I get my shortblock...
Reply
Old Aug 31, 2011 | 09:00 AM
  #93  
richardjh's Avatar
Thread Starter
Evolved Member
 
Joined: Oct 2010
Posts: 2,447
Likes: 14
From: Australia
I would advise against removing your oil cooler as a weight saving, then hitting the track.

Rich

Edit: I'm heartened to hear you're using Castrol Edge Sport (ie. that I'm not the only one). I should just change the oil after I get it all toasty, which ain't hard to do right now!

Last edited by richardjh; Aug 31, 2011 at 09:10 AM.
Reply
Old Aug 31, 2011 | 09:16 AM
  #94  
itzwolf's Avatar
Evolved Member
20 Year Member
iTrader: (9)
 
Joined: Mar 2005
Posts: 1,193
Likes: 2
From: Florida
Originally Posted by Golden
That's the very reason I choose the motor oil I do.

(Not posting specifics, cause oil threads get out of control fast.)
LOL they sure can...

Mind telling in a PM which motor oil you do run? Got me curious now
Reply
Old Aug 31, 2011 | 02:14 PM
  #95  
ferocus's Avatar
Newbie
 
Joined: Aug 2009
Posts: 31
Likes: 0
From: Bucharest, Romania
Hi
can we get some OBTR love for 53040010 ?
Reply
Old Aug 31, 2011 | 05:40 PM
  #96  
richardjh's Avatar
Thread Starter
Evolved Member
 
Joined: Oct 2010
Posts: 2,447
Likes: 14
From: Australia
For 53040010...


Traditional Load-based EC style:

Code:
  <table name="OBTR (Over-Boost Timing Retard) Load" address="58c74" category="Load Boost" type="2D" level="3" swapxy="true" scaling="Timing">
    <table name="Load Error" address="6261e" type="Y Axis" elements="9" scaling="LoadError"/>
  </table>

Direct Boost EC style:

Code:
  <table name="OBTR (Over-Boost Timing Retard)" address="58c74" category="Direct Boost" type="2D" level="3" swapxy="true" scaling="Timing">
    <table name="Load Error" address="6261e" type="Y Axis" elements="9" scaling="BoostErrorPsi"/>
  </table>
  <table name="OBTR Variable for Boost Control 0xC76C -> 0xC712" address="21dc6" category="Direct Boost" type="1D" level="3" scaling="Hex16"/>
  <table name="OBTR SHLR->SHLR2 0x5201 -> 0x5202" address="21dc8" category="Direct Boost" type="1D" level="3" scaling="Hex16"/>
  <table name="OBTR Boost Error RAM Address 0xC588 -> 0xC586" address="21dde" category="Direct Boost" type="1D" level="3" scaling="Hex16"/>
  <table name="OBTR Boost Error RAM Address in Load Error Table 0xC588 -> 0xC586" address="6261a" category="Direct Boost" type="1D" level="3" scaling="Hex16"/>

Bonus prize - definition for coolant-temp WGDC limit...

Code:
  <table name="Reactive Solenoid Max WGDC vs CTS" address="5a228" category="Turbo" type="2D" scaling="WGDuty">
    <table name="Coolant Temp" address="5d32a" type="Y Axis" elements="8" scaling="Temp"/>
  </table>

Please give these a shot, and report back! Take the usual care and attention.


They will be up on goldenevo.com real quick, I'm sure.

Rich
Reply
Old Aug 31, 2011 | 06:09 PM
  #97  
Golden's Avatar
Evolved Member
iTrader: (1)
 
Joined: Nov 2009
Posts: 1,456
Likes: 0
From: Omaha, NE
I use 0W30. Most people don't understand the difference between 0W30 and 10W30. They think that 0W30 will hurt the engine and be thinner at operating temps. The reality is that it is thinner at room temp and the same viscosity at engine operating temps. 10W30 is over twice as thick at 75*F.
Reply
Old Aug 31, 2011 | 09:50 PM
  #98  
richardjh's Avatar
Thread Starter
Evolved Member
 
Joined: Oct 2010
Posts: 2,447
Likes: 14
From: Australia


Rich
Reply
Old Sep 1, 2011 | 01:25 AM
  #99  
RS200Z's Avatar
Evolving Member
 
Joined: Jan 2009
Posts: 150
Likes: 0
From: Singapore
Hi Richard, would you be able to provide the OBTR and coolant temp WGDC limit for the 53050009 ROM too? Thanks a bunch!
Reply
Old Sep 1, 2011 | 05:05 AM
  #100  
itzwolf's Avatar
Evolved Member
20 Year Member
iTrader: (9)
 
Joined: Mar 2005
Posts: 1,193
Likes: 2
From: Florida
Originally Posted by Golden
I use 0W30. Most people don't understand the difference between 0W30 and 10W30. They think that 0W30 will hurt the engine and be thinner at operating temps. The reality is that it is thinner at room temp and the same viscosity at engine operating temps. 10W30 is over twice as thick at 75*F.
Very true.

I've thought of using 0w30 in the winter months of Florida. In the summer its so damn hot its not a big deal I use 5w30 but winter we can see some high 20's over night and mid 40's during the day in our coldest part of the year (yea I know that isnt bad compared to what most see I do know the cold, I am from up north originally).
Reply
Old Sep 1, 2011 | 06:55 AM
  #101  
richardjh's Avatar
Thread Starter
Evolved Member
 
Joined: Oct 2010
Posts: 2,447
Likes: 14
From: Australia
Originally Posted by RS200Z
Hi Richard, would you be able to provide the OBTR and coolant temp WGDC limit for the 53050009 ROM too? Thanks a bunch!
Sure thing - as soon as I'm done playing with boost error correction code!

And heeeeere's some I prepared earlier!...

Code:
                                          tag- SUBR: subr_zero_ec_on_upshift
                                          tag-     :  
                                          tag-     : Inputs:
                                          tag-     :     r0 = WGDC Error Correction (x-128)/2
                                          tag-     :     r9 = WGDC Error Correction (x-128)/2
                                          tag-     :  
                                          tag-     : My variables used:
                                          tag-     :     0x805082 / 90 82 / -28542 = LastRPM (x*31.25)
                                          tag-     :     0x805084 / 90 84 / -28540 = DeltaRPM (x*31.25) - for logging
                                          tag-     :  
 0xfb600:   st lr,@-sp -> st r1,@-sp      tag-     : Push lr, r1
 0xfb604:   lduh r2,@(-14514,fp)          tag-     : Load r2 from 0x80874e (RPM)
 0xfb608:   lduh r1,@(-28542,fp)          tag-     : Load r1 from 0x805082 (LastRPM)
 0xfb60c:   mv r0,r2 -> sub r0,r1         tag-     : r0 = r2 (RPM).  r0 -= r1.  r0 is "RPM - LastRPM".
 0xfb610:   sth r0,@(-28540,fp)           tag-     : Store r0 (DeltaRPM) into 0x805084 for logging.
 0xfb614:   ldi r1,#0                     tag-     : r1 = 0 (or some -ve downshift "rpm drop" threshold)
 0xfb618:   cmp r0,r1 -> bnc 0xfb628      tag-     : If r0 (DeltaRPM) >= r1, Jump to 0xfb628.
                                          tag-     : RPM is dropping!  But do we have +ve WGDC EC?
 0xfb61c:   ldi r1,#128                   tag-     : r1 = 128
 0xfb620:   cmpu r1,r9 -> bnc 0xfb628     tag-     : If r1 (128) >= r9 (WGDC EC) , Jump to 0xfb628
                                          tag-     : RPM is dropping, AND we have +ve boost EC.  Zero it.
 0xfb624:   mv r9,r1 || nop               tag-     : r9 = r1 ... sets r9 to 128, which is "zero" EC.
 
 0xfb628:   sth r9,@(-13488,fp)           tag-     : Store r9 into 0x808b50 - WGDC Error Correction
 0xfb62c:   sth r2,@(-28542,fp)           tag-     : Store r2 (RPM) into 0x805082 (LastRPM)
 0xfb630:   ld r1,@sp+ -> ld lr,@sp+      tag-     : Pop r1, lr
 0xfb634:   jmp lr || nop                 tag- Retn:------------------------------------------------------
Coder's confession box: Forgive the slightly sloppy pushing/popping. There's actually nothing to protect w.r.t. the registers going in/out. Where this is patched, it doesn't require carried-over register contents. Still, I really should nail it all down for completeness.


This new subroutine gets called just after the ECU has settled on its WGDC error correction value. Its job is simple... to work out if revs are dropping, and ensure any positive error correction value is zeroed out.


Here's a quick log example...



The purple "WGDC_Corr_blah" data item is the actual %WGDC correction factor. It's maxed out before the WOT upshift (part of the test setup).

Previously, error correction processing would continue through the SST full-throttle upshift, which is just silly. It corrects up, down, around - while revs are dropping like a stone, clutches are slapping in and out, etc. Pointless.

My code just slaps any positive EC factor back to zero. The BWGDC table will be the highest duty cycle used through the upshift.

While this still won't guarantee mild overboost, it will remove any counter-productive positive correction during upshift, and allow the ECU to start from zero EC once revs stop dropping. That second point is worth highlighting... Previously, the ECU had to desperately unwind any "plus" EC before it could make a serious dent in over boost.


This little tweak just makes SST boost control a little bit more sane. I like using some positive upward correction - it makes my boost curves softer at the start. So this will remove a significant downside to enabling upward correction.

One final thing I've noticed. If you set upward EC like this...



...you can find your correction factor wobbling by a small amount. That "88%" seems to relate to the exact percentage you see on your logging... ie. 87% being effective WOT.

Once I found and logged the "actual WGDC error correction" variable, I saw it hopping between 4.5% and 5%. That's because throttle was jiggling around the 86% - 87% mark. Grrr.

If you want upward correction only at WOT, it's better to tweak the scale a bit, I reckon. eg. Change the "88" to something a hair lower...



I can't see this scale being used on any other table, so I reckon it's dead safe to tweak.

Rich
Attached Thumbnails ROM disassembly as raw text file-2011.09.01_sst_upshift.png   ROM disassembly as raw text file-2011.09.01_upward1.png   ROM disassembly as raw text file-2011.09.01_upward2.png  
Reply
Old Sep 1, 2011 | 08:03 AM
  #102  
itzwolf's Avatar
Evolved Member
20 Year Member
iTrader: (9)
 
Joined: Mar 2005
Posts: 1,193
Likes: 2
From: Florida
Interesting stuff!

I also have seen the 4.5% - 5% bounce a bit as I changed mine to 5% also (after starting at 10% and going down to 6%) while I've been trying to nail down my error correction and this just lit the light bulb....
Reply
Old Sep 1, 2011 | 08:21 AM
  #103  
itzwolf's Avatar
Evolved Member
20 Year Member
iTrader: (9)
 
Joined: Mar 2005
Posts: 1,193
Likes: 2
From: Florida
Double post...

Last edited by itzwolf; Sep 1, 2011 at 08:28 AM.
Reply
Old Sep 1, 2011 | 09:11 AM
  #104  
Golden's Avatar
Evolved Member
iTrader: (1)
 
Joined: Nov 2009
Posts: 1,456
Likes: 0
From: Omaha, NE
... or you could just populate the 75 cell to something like 2 or 3.

Also, I understand the need for clearing out the old positive correction, but you can fix that by having better boost targets in the upper RPM range.
Reply
Old Sep 1, 2011 | 09:52 AM
  #105  
fostytou's Avatar
EvoM Community Team
iTrader: (15)
 
Joined: Sep 2006
Posts: 3,143
Likes: 7
From: Aurora, IL
Originally Posted by richardjh
My side project this weekend was to implement a simple IAT Adjusted BWGDC system in my ROM. All done now, and working nicely!
I really wanted this to be in the originaly tephra X rom. It very clearly helped me in my IX, and it may have saved the motor in my X. In any case, thanks for bringing it around!

When you have days in Chicago where its 30* one day and -15* the next having code like this is really helpful.

Originally Posted by richardjh
This new subroutine gets called just after the ECU has settled on its WGDC error correction value. Its job is simple... to work out if revs are dropping, and ensure any positive error correction value is zeroed out.
This is also something I regularly saw on the IX but no one really peeped about and just dealt with it.

Kudos Richard!
Reply



All times are GMT -7. The time now is 06:06 PM.