Evo X Logging
#331
Thread Starter
EvoM Guru
iTrader: (6)
Joined: Mar 2007
Posts: 9,486
Likes: 66
From: Melbourne, Australia
Windows threading however may perform differently with a debug build of that DLL due to the debug output it is generating and the fact that that may go through the kernel to dbgview or whatever you are using to view the output. op20pt32.dll uses asynchronous I/O to talk to the OP2 and I have seen some threading goofiness in Windows on single core machines when waiting on the objects.
#332
Thread Starter
EvoM Guru
iTrader: (6)
Joined: Mar 2007
Posts: 9,486
Likes: 66
From: Melbourne, Australia
ok I tested that IAT sensor on my car.
And it log's as MAF IAT - its freezing here today (13 deg C) and the highest it read was 22degC...
It also lines up with MUT11 which in CT9A-land is MAF IAT..
And it log's as MAF IAT - its freezing here today (13 deg C) and the highest it read was 22degC...
It also lines up with MUT11 which in CT9A-land is MAF IAT..
#333
I corrected it with MUT3A which also lines up with Manifold IAT in CT9A land
#334
Thread Starter
EvoM Guru
iTrader: (6)
Joined: Mar 2007
Posts: 9,486
Likes: 66
From: Melbourne, Australia
yeah I never like MUT3A MUT10/11 are nicely scaled temps
But anyways - My main point was that it is MAF IAT rather than Manifold Temperature
FYI - MUT3A is the raw ADC output from the MAF IAT, MUT11 is a scaled version of it...
But anyways - My main point was that it is MAF IAT rather than Manifold Temperature
FYI - MUT3A is the raw ADC output from the MAF IAT, MUT11 is a scaled version of it...
Last edited by tephra; Jun 15, 2009 at 03:47 AM.
#336
Wow, I didn't know that. I always thought it was manifold since it never went down durning WOT. The MAF IAT always goes lower at WOT.
#337
Thread Starter
EvoM Guru
iTrader: (6)
Joined: Mar 2007
Posts: 9,486
Likes: 66
From: Melbourne, Australia
yeah I logged that memory address and I am pretty sure IT IS I/M temp
I still think the I/M is acting as a BIG heatsink for the sensor.
I found this on my IX, it doesn't react fast enough to temp changes... I would like to see someone install on in the intake tract after the I/C ... I think it would react a LOT faster due to the non-heatsink nature of those pipes (ie they are thin )
I still think the I/M is acting as a BIG heatsink for the sensor.
I found this on my IX, it doesn't react fast enough to temp changes... I would like to see someone install on in the intake tract after the I/C ... I think it would react a LOT faster due to the non-heatsink nature of those pipes (ie they are thin )
#338
EvoM Guru
iTrader: (50)
Joined: Mar 2006
Posts: 9,675
Likes: 130
From: Tri-Cities, WA // Portland, OR
Below is what I determined for the 52680015-20 when I was actively disassembling the ROM. I need to take another look at the load calc routine to get a better handle on the load used for fuel, timing, and MIVEC.
Temporary RAM for table lookups, etc - 808590
Load
8087A8 - Master load.
808774 - Load from MIVEC map axes. In table, value is 0xC774.
80876E - Unknown load value
RPM
808746 - 2-byte RPM. In table, value is 0xC746, scaling:
80874C - 2-byte RPM divided by 2, scaling:
80874E - 1-byte RPM = (2-byte RPM + 4)/8, scaling:
C59A - x-axis 2-byte RPM for some tables, 10 elements, data start at 0x60D32
C59C - x-axis 2-byte RPM for some tables, 12 elements, data start at 0x60D58
Air Temperature
808650 - IAT ADC
808658 - IATS
808652 - MAT ADC
80865E - MATS
C5B4 - x-axis IATS for some tables, 7 elements, data start at 0x610F6
Coolant Temperature
808636 - CT ADCx4
808634 - CT ADC
80863E - CTS
80864C - CTS for idle table lookup and other stuff, table data begins at 0x60FF0
C5A0 - x-axis CTS from CTS_MAIN_80863E, 8 elements, table data begins at 0x60FDA
C5A2 - x-axis CTS from CTS_MAIN_80863E, 9 elements, table data begins at 0x6101E
MAP
808718 - MAP ADC
80871A - MAP ADCx4
80A766 - MAP ADC copy
80A768 - MAP ADCx4 copy
80879E - MAP ADCx4 copy
80879C - MAP ADCx4 copy
80871E - 0.6726*(MAP ADCx4)
8086DE - MAP ADCx4 read #2
8086E0 - MAP ADC read #2
808788 - MAP ADCx4 #2 copy
TPS
809622 - (TPS ADCx4 #1)/4
809620 ? - TPS ADCx4
80AB52 - TPS ADCx4 #1
80AB54 - TPS ADCx4 #2 (TPS_ADCx4_N2)
8086F8 - (TPS ADCx4 #2)/4 (TPS_1B_N2)
8086FA - Shifted TPS (same as Evo 9), 0x8086FA = (@0x804506 + @0x8086F8 - #127) or (@0x804506 + @0x8086F8 - #128)
0x804506 = #128 always (as best as I can tell)
8086FC - copy of TPS_SHIFTED_8086FA (TPS_SHIFTED_C1_8086FC)
Baro
8086DC - baro ADCx4
80A908 - baro ADC
8086E2 - baro ADC C1 (copy level 1)
8086DA - baro ADC C1, used for MUT15
8086E4 - baro ADC C2, used for baro x-axis values?
Fuel
8088F4 - AFRMAP?
8088F8 - octane-averaged AFR
808F6C - unknown fuel related lookup in AFR lookup subroutine
lookup "cylinder fuel trim" maps
80A19E - cyl trim #1
80A1A0 - cyl trim #2
80A1A2 - cyl trim #3
80A1A4 - cyl trim #4
8087DA - 1-byte MAF Hz
8087E0 - 2-byte MAF Hz
8088D4 - effective injector size = (INJ_SC*75/2 + 1/2)*INJ_MULT/128
Timing
808A0A - some ignition timing, scaling: unknown
808A08 - 1-byte ign timing for MUT05, scaling: x
808A06 - 1-byte ign timing for MUT06, scaling: x-20
Octane
8045A0 - full temp octane level for knock. can only be deprecated when CTS > 50C
80459E - octane level for knock.
Knock
808A4A - knock sum?
808A5C - knock sum?
Boost Control
80A92A - BWGDC for reactive solenoid
808B56 - BWGDC for reactive solenoid
80A92C - BWGDC for passive solenoid
808B54 -
x-axis #2 for boost control
@0x8086FA - @804510/4 -> TEMP RAM for x-axis #2 lookup
0x8086FA = (@0x804506 + @0x8086F8 - #127) or (@0x804506 + @0x8086F8 - #128)
0x804506 = #128 always (as best as I can tell)
0x8086F8 = TPS_1B ???
0x8086FA = TPS_1B(???)
MIVEC
80942E - target MIVEC intake
UNKNOWN
808F4E - N4 ADC, input for ECUTek MAF compensation table
808F50 - N4 ADCx4, input for ECUTek MAF compensation table
Speed
8087E6 - 1-byte speed
Battery
8086EE - battery voltage ADC, scaling: x*18.75/255
80995A - battery voltage ADCx4, scaling:
Map switching variable
8087FE - map switching variable, 8 possible maps like Evo 8/9
80881C **FLAG**
bit3 = 1 when key "on" and engine "off" <-- this one is wrong, need to fix
bit3 = 1 when @0x8088FA used to set AFRMAP value
bit0 = 1 when???
bit4 = 1 when???
80A196 **flag**
bit0 = 1 when closed loop enabled
8085FE **flag** equivalent to FFFF6A22 on Evo 9
808800 **flag**
bit3 = 1 when??
808A4C **flag**
bit7 = 1 when load > knock load sensitivity threshold
808616 **flag**
bit0 = 1 when clutch is pressed
Temporary RAM for table lookups, etc - 808590
Load
8087A8 - Master load.
808774 - Load from MIVEC map axes. In table, value is 0xC774.
80876E - Unknown load value
RPM
808746 - 2-byte RPM. In table, value is 0xC746, scaling:
80874C - 2-byte RPM divided by 2, scaling:
80874E - 1-byte RPM = (2-byte RPM + 4)/8, scaling:
C59A - x-axis 2-byte RPM for some tables, 10 elements, data start at 0x60D32
C59C - x-axis 2-byte RPM for some tables, 12 elements, data start at 0x60D58
Air Temperature
808650 - IAT ADC
808658 - IATS
808652 - MAT ADC
80865E - MATS
C5B4 - x-axis IATS for some tables, 7 elements, data start at 0x610F6
Coolant Temperature
808636 - CT ADCx4
808634 - CT ADC
80863E - CTS
80864C - CTS for idle table lookup and other stuff, table data begins at 0x60FF0
C5A0 - x-axis CTS from CTS_MAIN_80863E, 8 elements, table data begins at 0x60FDA
C5A2 - x-axis CTS from CTS_MAIN_80863E, 9 elements, table data begins at 0x6101E
MAP
808718 - MAP ADC
80871A - MAP ADCx4
80A766 - MAP ADC copy
80A768 - MAP ADCx4 copy
80879E - MAP ADCx4 copy
80879C - MAP ADCx4 copy
80871E - 0.6726*(MAP ADCx4)
8086DE - MAP ADCx4 read #2
8086E0 - MAP ADC read #2
808788 - MAP ADCx4 #2 copy
TPS
809622 - (TPS ADCx4 #1)/4
809620 ? - TPS ADCx4
80AB52 - TPS ADCx4 #1
80AB54 - TPS ADCx4 #2 (TPS_ADCx4_N2)
8086F8 - (TPS ADCx4 #2)/4 (TPS_1B_N2)
8086FA - Shifted TPS (same as Evo 9), 0x8086FA = (@0x804506 + @0x8086F8 - #127) or (@0x804506 + @0x8086F8 - #128)
0x804506 = #128 always (as best as I can tell)
8086FC - copy of TPS_SHIFTED_8086FA (TPS_SHIFTED_C1_8086FC)
Baro
8086DC - baro ADCx4
80A908 - baro ADC
8086E2 - baro ADC C1 (copy level 1)
8086DA - baro ADC C1, used for MUT15
8086E4 - baro ADC C2, used for baro x-axis values?
Fuel
8088F4 - AFRMAP?
8088F8 - octane-averaged AFR
808F6C - unknown fuel related lookup in AFR lookup subroutine
lookup "cylinder fuel trim" maps
80A19E - cyl trim #1
80A1A0 - cyl trim #2
80A1A2 - cyl trim #3
80A1A4 - cyl trim #4
8087DA - 1-byte MAF Hz
8087E0 - 2-byte MAF Hz
8088D4 - effective injector size = (INJ_SC*75/2 + 1/2)*INJ_MULT/128
Timing
808A0A - some ignition timing, scaling: unknown
808A08 - 1-byte ign timing for MUT05, scaling: x
808A06 - 1-byte ign timing for MUT06, scaling: x-20
Octane
8045A0 - full temp octane level for knock. can only be deprecated when CTS > 50C
80459E - octane level for knock.
Knock
808A4A - knock sum?
808A5C - knock sum?
Boost Control
80A92A - BWGDC for reactive solenoid
808B56 - BWGDC for reactive solenoid
80A92C - BWGDC for passive solenoid
808B54 -
x-axis #2 for boost control
@0x8086FA - @804510/4 -> TEMP RAM for x-axis #2 lookup
0x8086FA = (@0x804506 + @0x8086F8 - #127) or (@0x804506 + @0x8086F8 - #128)
0x804506 = #128 always (as best as I can tell)
0x8086F8 = TPS_1B ???
0x8086FA = TPS_1B(???)
MIVEC
80942E - target MIVEC intake
UNKNOWN
808F4E - N4 ADC, input for ECUTek MAF compensation table
808F50 - N4 ADCx4, input for ECUTek MAF compensation table
Speed
8087E6 - 1-byte speed
Battery
8086EE - battery voltage ADC, scaling: x*18.75/255
80995A - battery voltage ADCx4, scaling:
Map switching variable
8087FE - map switching variable, 8 possible maps like Evo 8/9
80881C **FLAG**
bit3 = 1 when key "on" and engine "off" <-- this one is wrong, need to fix
bit3 = 1 when @0x8088FA used to set AFRMAP value
bit0 = 1 when???
bit4 = 1 when???
80A196 **flag**
bit0 = 1 when closed loop enabled
8085FE **flag** equivalent to FFFF6A22 on Evo 9
808800 **flag**
bit3 = 1 when??
808A4C **flag**
bit7 = 1 when load > knock load sensitivity threshold
808616 **flag**
bit0 = 1 when clutch is pressed
#339
mrfred, thanks for posting up all those addresses! I did have a question though - your addresses don't seem to match tephra's config.txt for 52680015, which I'm using and appears to be working. Items like TPS, RPM, timing, all appear to be off by one? Is the config.txt wrong? Thanks!
#340
However, I'm a bit confused at what I was logging last night. I was using 0x808651 (from SiC) and got these results:
Ambient Temp = 68F
2000 rpm = 155 F
3000 rpm = 160 F
4000 rpm = 170 F
5000 rpm = 177 F
6000 rpm = 181 F
7000 rpm = 186 F
#342
Yup completely stock GSR hitting 24 psi peak, tapering down to 18 at redline.
Prior to the WOT third gear run, I was seeing about 130F max at part throttle (hitting a max of 10 psi) - I'm not sure if the car was not fully warmed up at that point (coolant was up to temp but maybe the intake manifold hadn't heated up fully). After the above WOT third gear run, the manifold temp did not drop below 150F with 5 minutes of normal driving.
Prior to the WOT third gear run, I was seeing about 130F max at part throttle (hitting a max of 10 psi) - I'm not sure if the car was not fully warmed up at that point (coolant was up to temp but maybe the intake manifold hadn't heated up fully). After the above WOT third gear run, the manifold temp did not drop below 150F with 5 minutes of normal driving.
#343
Thread Starter
EvoM Guru
iTrader: (6)
Joined: Mar 2007
Posts: 9,486
Likes: 66
From: Melbourne, Australia
tephra, so for the address you found, it would be 0X808656 + 0x8 = 0x80865E for USDM? This matches up with what mrfred just posted
However, I'm a bit confused at what I was logging last night. I was using 0x808651 (from SiC) and got these results:
Ambient Temp = 68F
2000 rpm = 155 F
3000 rpm = 160 F
4000 rpm = 170 F
5000 rpm = 177 F
6000 rpm = 181 F
7000 rpm = 186 F
However, I'm a bit confused at what I was logging last night. I was using 0x808651 (from SiC) and got these results:
Ambient Temp = 68F
2000 rpm = 155 F
3000 rpm = 160 F
4000 rpm = 170 F
5000 rpm = 177 F
6000 rpm = 181 F
7000 rpm = 186 F
#344
The stock turbo is also pumping out very hot air due to location, size and stock intercooler. One of the reasons that aftermarket intercoolers offer a solid 20 whp gain after multiple dyno runs is because the stock intercooler can heat soak easier without enough airflow. I guess I should try and test my manifold intake temp as a comparison, can also test it at 26 psi versus 20 psi to see how much the pushing the turbo higher can increase temps. Then I can do the same tests with the GT30 turbo and compare how much more efficient it might be.
#345
EvoM Guru
iTrader: (50)
Joined: Mar 2006
Posts: 9,675
Likes: 130
From: Tri-Cities, WA // Portland, OR
Attached is a fixed up mode 23 Data.xml for USDM 52680015-20. I added several more items, TPS is fixed, and now its setup for 2-byte RPM logging. I still need to double check Active and Passive WGDC RAM variables. May do that tonight.