Z32, knock gauge gone
Moderator: Matt
Re: Z32, knock gauge gone
Nothing available as configurable by end user for normal use (ie no gauge etc to match) but user can use the RAM trace monitor under 'Display'
-
- Posts: 426
- Joined: Mon May 11, 2009 7:58 pm
- Location: FRANCE
Re: Z32, knock gauge gone
But I suppose Consult RAM Trace is not saved to disk !? No link with the Consult Log Player we use daily !?
Purpose is to log RAM locations and to be able to correlate the values with other COnsult values to look into afterwards ...
Purpose is to log RAM locations and to be able to correlate the values with other COnsult values to look into afterwards ...
Re: Z32, knock gauge gone
That would be interesting!
Re: Z32, knock gauge gone
Added to list. Would need to create some more 'auxillary' registers and map these to the extra consult registers. Note that there are not really any 'spare' registers in Nissan ECUs because some models dont use them but others do. So I have to be careful when putting a change like this in since there is only one 'reserved' register in the Nissan consult 1 specification
-
- Posts: 426
- Joined: Mon May 11, 2009 7:58 pm
- Location: FRANCE
Re: Z32, knock gauge gone
Basically, here is the list for the Z32.
Matt, could you complete this table according to other Nissan cars, to have a complete table and to really see where the spare bytes are.
Matt, could you complete this table according to other Nissan cars, to have a complete table and to really see where the spare bytes are.
Code: Select all
CODE:EA00 register_table: fdb rpm ; ...
CODE:EA00 ; Register 0
CODE:EA02 fdb rpm+1 ; Register 1
CODE:EA04 fdb rpm_ref ; Register 2
CODE:EA06 fdb rpm_ref+1 ; Register 3
CODE:EA08 fdb maf ; Register 4
CODE:EA0A fdb maf+1 ; Register 5
CODE:EA0C fdb $FFFF ; Register 6 RH MAF voltage
CODE:EA0E fdb $FFFF ; Register 7 RH MAF voltage
CODE:EA10 fdb engine_temp ; Register 8
CODE:EA12 fdb lambda_left ; Register 9
CODE:EA14 mil_const1: fdb lambda_right ; ...
CODE:EA14 ; Register A
CODE:EA16 fdb speed ; Register B
CODE:EA18 fdb battery ; Register C
CODE:EA1A fdb throttle1 ; Register D
CODE:EA1C fdb $FFFF ; Register E empty
CODE:EA1E fdb fuel_temp ; Register F
CODE:EA20 fdb $FFFF ; Register 10 empty
CODE:EA22 fdb $FFFF ; Register 11 Intake air temp
CODE:EA24 fdb $FFFF ; Register 12 Exhaust gas temp
CODE:EA26 fdb digital1 ; Register 13
CODE:EA28 fdb inj_bbb2 ; Register 14
CODE:EA2A fdb inj_bbb2+1 ; Register 15
CODE:EA2C fdb ign_timing ; Register 16
CODE:EA2E fdb idle_air ; Register 17
CODE:EA30 fdb $FFFF ; Register 18 empty
CODE:EA32 fdb $FFFF ; Register 19 empty
CODE:EA34 fdb afr_left ; Register 1A
CODE:EA36 fdb afr_right ; Register 1B
CODE:EA38 fdb afr_learn_left ; Register 1C
CODE:EA3A fdb afr_learn_right ; Register 1D
CODE:EA3C fdb digital2 ; Register 1E
CODE:EA3E fdb digital3 ; Register 1F
CODE:EA40 fdb $FFFF ; Register 20 empty
CODE:EA42 fdb mr_fc_mnt ; Register 21
CODE:EA44 fdb inj_bbb1 ; Register 22
CODE:EA46 fdb inj_bbb1+1 ; Register 23
CODE:EA48 fdb $FFFF ; Register 24 empty
CODE:EA4A fdb $FFFF ; Register 25 empty
CODE:EA4C fdb $FFFF ; Register 26 empty
CODE:EA4E fdb $FFFF ; Register 27 empty
Re: Z32, knock gauge gone
These are consult 1 registers
00 CONSULT_DESC_REGISTER_POS_RPM_MSB,
01 CONSULT_DESC_REGISTER_POS_RPM_LSB,
02 CONSULT_DESC_REGISTER_POS_CAS_REF_RPM_MSB,
03 CONSULT_DESC_REGISTER_POS_CAS_REF_RPM_LSB,
04 CONSULT_DESC_REGISTER_MAF_LHS_VOLTAGE_MSB,
05 CONSULT_DESC_REGISTER_MAF_LHS_VOLTAGE_LSB,
06 CONSULT_DESC_REGISTER_MAF_RHS_VOLTAGE_MSB,
07 CONSULT_DESC_REGISTER_MAF_RHS_VOLTAGE_LSB,
08 CONSULT_DESC_REGISTER_COOLANT_TEMP,
09 CONSULT_DESC_REGISTER_LH_O2_VOLTAGE,
0A CONSULT_DESC_REGISTER_RH_O2_VOLTAGE,
0B CONSULT_DESC_REGISTER_VEHICLE_SPEED,
0C CONSULT_DESC_REGISTER_BATTERY_VOLTAGE,
0D CONSULT_DESC_REGISTER_THROTTLE_POSITION,
0E CONSULT_DESC_REGISTER_THROTTLE_POSITION2,
0F CONSULT_DESC_REGISTER_FUEL_TEMP_SENSE,
10 CONSULT_DESC_REGISTER_EGR_TEMP_SENSE,
11 CONSULT_DESC_REGISTER_INTAKE_AIR_TEMP,
12 CONSULT_DESC_REGISTER_EXHAUST_GAS_TEMP_LHS,
13 CONSULT_DESC_REGISTER_DIGITAL_CONTROL1,
14 CONSULT_DESC_REGISTER_INJECTION_TIME_LHS_MSB,
15 CONSULT_DESC_REGISTER_INJECTION_TIME_LHS_LSB,
16 CONSULT_DESC_REGISTER_IGNITION_TIMING,
17 CONSULT_DESC_REGISTER_AAC_VALVE,
18 CONSULT_DESC_REGISTER_AAC_VALVE_STEP,
19 *RESERVED*
1A CONSULT_DESC_REGISTER_AF_ALPHA_LH,
1B CONSULT_DESC_REGISTER_AF_ALPHA_RH,
1C CONSULT_DESC_REGISTER_AF_ALPHA_LH_LEARN,
1D CONSULT_DESC_REGISTER_AF_ALPHA_RH_LEARN,
1E CONSULT_DESC_REGISTER_DIGITAL_CONTROL2,
1F CONSULT_DESC_REGISTER_DIGITAL_CONTROL3,
20 CONSULT_DESC_REGISTER_DIGITAL_CONTROL5,
21 CONSULT_DESC_REGISTER_DIGITAL_CONTROL4,
22 CONSULT_DESC_REGISTER_INJECTION_TIME_RHS_MSB,
23 CONSULT_DESC_REGISTER_INJECTION_TIME_RHS_LSB,
24 CONSULT_DESC_REGISTER_EXHAUST_GAS_TEMP_RHS,
25 CONSULT_DESC_REGISTER_WASTE_GATE_SOLENOID,
26 CONSULT_DESC_REGISTER_TURBO_BOOST_SENSOR*,
27 CONSULT_DESC_REGISTER_ENGINE_MOUNT*,
So you only have one free register for Consult I Nissan ECUs. 26/27 Used for TP MSB, LSB inside Nistune. These last two registers are used on vehicles like ER34/WC34/Y33
00 CONSULT_DESC_REGISTER_POS_RPM_MSB,
01 CONSULT_DESC_REGISTER_POS_RPM_LSB,
02 CONSULT_DESC_REGISTER_POS_CAS_REF_RPM_MSB,
03 CONSULT_DESC_REGISTER_POS_CAS_REF_RPM_LSB,
04 CONSULT_DESC_REGISTER_MAF_LHS_VOLTAGE_MSB,
05 CONSULT_DESC_REGISTER_MAF_LHS_VOLTAGE_LSB,
06 CONSULT_DESC_REGISTER_MAF_RHS_VOLTAGE_MSB,
07 CONSULT_DESC_REGISTER_MAF_RHS_VOLTAGE_LSB,
08 CONSULT_DESC_REGISTER_COOLANT_TEMP,
09 CONSULT_DESC_REGISTER_LH_O2_VOLTAGE,
0A CONSULT_DESC_REGISTER_RH_O2_VOLTAGE,
0B CONSULT_DESC_REGISTER_VEHICLE_SPEED,
0C CONSULT_DESC_REGISTER_BATTERY_VOLTAGE,
0D CONSULT_DESC_REGISTER_THROTTLE_POSITION,
0E CONSULT_DESC_REGISTER_THROTTLE_POSITION2,
0F CONSULT_DESC_REGISTER_FUEL_TEMP_SENSE,
10 CONSULT_DESC_REGISTER_EGR_TEMP_SENSE,
11 CONSULT_DESC_REGISTER_INTAKE_AIR_TEMP,
12 CONSULT_DESC_REGISTER_EXHAUST_GAS_TEMP_LHS,
13 CONSULT_DESC_REGISTER_DIGITAL_CONTROL1,
14 CONSULT_DESC_REGISTER_INJECTION_TIME_LHS_MSB,
15 CONSULT_DESC_REGISTER_INJECTION_TIME_LHS_LSB,
16 CONSULT_DESC_REGISTER_IGNITION_TIMING,
17 CONSULT_DESC_REGISTER_AAC_VALVE,
18 CONSULT_DESC_REGISTER_AAC_VALVE_STEP,
19 *RESERVED*
1A CONSULT_DESC_REGISTER_AF_ALPHA_LH,
1B CONSULT_DESC_REGISTER_AF_ALPHA_RH,
1C CONSULT_DESC_REGISTER_AF_ALPHA_LH_LEARN,
1D CONSULT_DESC_REGISTER_AF_ALPHA_RH_LEARN,
1E CONSULT_DESC_REGISTER_DIGITAL_CONTROL2,
1F CONSULT_DESC_REGISTER_DIGITAL_CONTROL3,
20 CONSULT_DESC_REGISTER_DIGITAL_CONTROL5,
21 CONSULT_DESC_REGISTER_DIGITAL_CONTROL4,
22 CONSULT_DESC_REGISTER_INJECTION_TIME_RHS_MSB,
23 CONSULT_DESC_REGISTER_INJECTION_TIME_RHS_LSB,
24 CONSULT_DESC_REGISTER_EXHAUST_GAS_TEMP_RHS,
25 CONSULT_DESC_REGISTER_WASTE_GATE_SOLENOID,
26 CONSULT_DESC_REGISTER_TURBO_BOOST_SENSOR*,
27 CONSULT_DESC_REGISTER_ENGINE_MOUNT*,
So you only have one free register for Consult I Nissan ECUs. 26/27 Used for TP MSB, LSB inside Nistune. These last two registers are used on vehicles like ER34/WC34/Y33
-
- Posts: 426
- Joined: Mon May 11, 2009 7:58 pm
- Location: FRANCE
Re: Z32, knock gauge gone
On a daily use, these are more or less useless:
Code: Select all
1E CONSULT_DESC_REGISTER_DIGITAL_CONTROL2,
1F CONSULT_DESC_REGISTER_DIGITAL_CONTROL3,
20 CONSULT_DESC_REGISTER_DIGITAL_CONTROL5,
21 CONSULT_DESC_REGISTER_DIGITAL_CONTROL4,
Re: Z32, knock gauge gone
Disagree with DIG REG 2. This contains VTC which is very useful when tuners are changing the VTC points. Next version highlights the VTC area on the map. I use fuel pump relay sometimes when testing ECUs on the bench against the output wire
Also DIG REG 3 contains coolant low/high fans which are useful for determining when those are starting to kick in (especially if adjusting in the software)
Regardless I would not replace any of these in the firmware
Also DIG REG 3 contains coolant low/high fans which are useful for determining when those are starting to kick in (especially if adjusting in the software)
Regardless I would not replace any of these in the firmware
Re: Z32, knock gauge gone
Interesting, how is this going to work?Matt wrote: Next version highlights the VTC area on the map. I
Do you mean while connected to the ECU you highlight the specific cells where it is engaged?
Last edited by Torque on Fri Mar 23, 2012 1:34 am, edited 1 time in total.
-
- Posts: 426
- Joined: Mon May 11, 2009 7:58 pm
- Location: FRANCE
Re: Z32, knock gauge gone
I agree this is not the right track, that would make it messy/noisy at the end.Matt wrote:Disagree with DIG REG 2. This contains VTC which is very useful when tuners are changing the VTC points. Next version highlights the VTC area on the map. I use fuel pump relay sometimes when testing ECUs on the bench against the output wire
Also DIG REG 3 contains coolant low/high fans which are useful for determining when those are starting to kick in (especially if adjusting in the software)
Regardless I would not replace any of these in the firmware
There's an alternative (requiring code patch though), extending virtually the Consult registers table:
There's some spare bytes after the activation table (that can be shifted in the memory space btw):
Code: Select all
CODE:EA50 activation_table: fdb $101, $203, $405,$FFFF,$1009,$FFFF,$FFFF,$800F ; ...
CODE:EA50 fdb $151, $253, $455, $857,$1059,$205B,$FFFF,$805F
CODE:EA50 fdb $FFFF,$FFFF,$FFFF, $8A7,$10A9,$FFFF,$FFFF,$FFFF
CODE:EA80 fcb $FF ;
CODE:EA81 fcb $FF ;
CODE:EA82 fcb $FF ;
CODE:EA83 fcb $FF ;
CODE:EA84 fcb $3F ; ?
CODE:EA85 fcb $3F ; ?
CODE:EA86 fcb $3F ; ?
CODE:EA87 fcb $3F ; ?
CODE:EA88 fcb $3F ; ?
CODE:EA89 fcb $3F ; ?
(...)
So, EA50 could become EA80 or EA90 (EAC0 has new table)
The end of the Consult regs table is checked here:
Code: Select all
CODE:AABC ; Read register parameters mode --------------------------------------------------
CODE:AABC
CODE:AABC sr_register_params: ; ...
CODE:AABC tim #%1000, sio_flags2 ; $5A mode ?
CODE:AABF beq sr_activation_params ; If not $5A mode then branch
CODE:AABF
CODE:AAC1 cmpb #39 ; The register table contains 39 values
CODE:AAC1 ; B is the index parameter
CODE:AAC3 bls sr_28
CODE:AAC3
CODE:AAC5
CODE:AAC5 sr_27: ; ...
CODE:AAC5 jmp sr_error ; Outside of register table
CODE:AAC5
CODE:AAC8
CODE:AAC8 sr_28: ; ...
Maybe the underlying problem is that you can only stream up to 20 bytes, and in Nistune, the end user can only tick the known Consult regs. Matt, are you ready to do a beta version to achieve that, and select what I want in term of ROM/RAM locations into the "Select ECU Consult registers" panel ? Purpose would be to specify absolute hex addresses (e.g. EA50, EA52, EA58, ...)
Btw, I don't remember at the moment the exact purpose of the activation table, they are bitfields, right ? Could you remind me ? I'm lazy reading the source again.
Re: Z32, knock gauge gone
Its part 1am so im going to quit it for tonight (tiredness = bugs) however:
Consult tables come in all sizes... some examples beyond the standard 0x28 registers since I've been digging through a LOT of ECU code lately trying to work out how to best 'ram read' these tables but I need look up values during the patching process
Yes there an activation table after (01 01 02...) but not sure how its used again without revisiting code
Nistune has been modified in latest version to alter the standard registers and display as other things if necessary but none of that is available to the user yet.
I'm not ready for a beta version for putting this in yet since its a bit of coding to do and I've got a ton of other stuff still to sort through.
It will highlight a region of the map (ie block) using the TP min/max and RPM min/max values available in the address file to give an indication where VTC is currently workingDo you mean while connected to the ECU you highlight the specific cells where it is engaged?
I need to be very careful here - already have the problem of TP MSB/LSB using a space where known registers are and need to fix that nowThere's an alternative (requiring code patch though), extending virtually the Consult registers table
Consult tables come in all sizes... some examples beyond the standard 0x28 registers since I've been digging through a LOT of ECU code lately trying to work out how to best 'ram read' these tables but I need look up values during the patching process
These tables are even larger because they hold consult 2 registers. Best idea is to move the whole table and extend into a consult 2 table perhaps? Not sure yet. Need more thinking timeS15_SR20_LOOKUP: // 0xF510-F569 (0x5A) = 45
ER34_RB25_LOOKUP: // 1100-117F (0x80) = 64
B14_SR20DE_LOOKUP_95_96: // FE00-FE8F (0x90) = 72
K11_CG10_LATE_LOOKUP: // 8F80-8FD9 (0xDA) = 109 (72)
A32_VG30_LOOKUP: //E000-E09F (0x100) = 128 (72)
Yes there an activation table after (01 01 02...) but not sure how its used again without revisiting code
Nistune has been modified in latest version to alter the standard registers and display as other things if necessary but none of that is available to the user yet.
I'm not ready for a beta version for putting this in yet since its a bit of coding to do and I've got a ton of other stuff still to sort through.
Re: Z32, knock gauge gone
Also most consult 2 registers are actually used. Only a couple of reserved items. Putting user definated stuff in an already defined consult 2 register would break it when using other tools (ie Consult II scan tool)