changing knock map changes ign retard tp & rpm cold timing

Discuss software bugs and related problems here.

Moderator: Matt

nanook
 

Posts: 79
Joined: Tue Dec 30, 2008 2:42 pm
Location: Auckland, New Zealand

Pulls to much timing during warmup

Post by nanook »

"Cold timing subtract for Z32 only so removed from HCR32/BNR32"

I have the Table

"RPM Cold Timing Subtract"

Using latest version and rom pack

See attached pic

Are you suggesting to adjust the warm up timing temp so it is ignoring all warmup settings, if so i'd prefer to find the issue rather than hide it by changing the temps.
The values in the tables available to me look ok stock but the response from the vehicle is not the same a stock code which suggests there's a map affecting this thats currently unavailable through the address file I'm using.

I got issues with the laptop but will do a log ASAP
Attachments
RPM Cold Timing Subtract.jpg
(93.17 KiB) Downloaded 5583 times
nanook
 

Posts: 79
Joined: Tue Dec 30, 2008 2:42 pm
Location: Auckland, New Zealand

Re: changing knock map changes ign retard tp & rpm cold timing

Post by nanook »

These are the only cold timing adjustments available i can see
Attachments
cold timing.jpg
(105.34 KiB) Downloaded 5583 times
nanook
 

Posts: 79
Joined: Tue Dec 30, 2008 2:42 pm
Location: Auckland, New Zealand

Re: changing knock map changes ign retard tp & rpm cold timing

Post by nanook »

Matt, and anyone else for that matter

Can you open a rom for hcr32

open the RPM cold timing subtract window

Change your knock fuel map drasticly for demonstration purposes

Now move the RPM cold timing subtract window so it updates, do the values in this change for you depending on the knock map? cause they do for me.

Any changes to the RPM cold timing subtract are directly screwing with the knock map still, i thought this issue was finally resolved or is it just happening to me?

1) Why are these linked for me they should not be affecting each other should they?

2) I am finding a huge amount of timing being pulled when engine is cold as shown in the above pic "log done before screwed up cold timing table due to knock map" the amount of timing being pulled does not seem to relate to this table at all as its on 0 in table when it pulls alot of timing.
Is there another table that i cannot access that is affecting this

Can you clear/fix this up Matt?
Attachments
bad cold timing fault.jpg
(156.96 KiB) Downloaded 5561 times
Matt
Site Admin
 

Posts: 8961
Joined: Sun Jan 29, 2006 1:45 am
Location: Adelaide, Australia
Contact:

Re: changing knock map changes ign retard tp & rpm cold timing

Post by Matt »

RPM Cold timing - that table has been removed for next release

its a Z32 table in the base address file which is overlapped by the knock timing table for the R32 vehicle.

So what happens with an overlapped table is you modify the parameters in one and it affects the other. In the meantime dont use that table (or remove the entry from the base file)

I've been going through doing a clean up of these for the map highlighting changes and identifying issues like these
nanook
 

Posts: 79
Joined: Tue Dec 30, 2008 2:42 pm
Location: Auckland, New Zealand

Re: changing knock map changes ign retard tp & rpm cold timing

Post by nanook »

Ok thanks Matt

It looks like the timing while warmup timing period is active is as per the stock warmup timing table for HCR32 which is around 7-8deg so if in increase the values in this area the car drives better while in warmup mode
So is it just because the cars modified that the stock value of 8 deg is to low i don't really understand why this should make it so bad i mean it hardly moves.
Matt
Site Admin
 

Posts: 8961
Joined: Sun Jan 29, 2006 1:45 am
Location: Adelaide, Australia
Contact:

Re: changing knock map changes ign retard tp & rpm cold timing

Post by Matt »

not sure why it would be that low when warming up since I would expect 15 deg BTDC should still be used. It would bog down a bit at 8 deg BTDC
nanook
 

Posts: 79
Joined: Tue Dec 30, 2008 2:42 pm
Location: Auckland, New Zealand

Re: changing knock map changes ign retard tp & rpm cold timing

Post by nanook »

the warmup timing table as shown above shows around 8deg

this table is same the stock rom if not let me know cause thats what I thought

anyway if it says 8deg in this table does that not mean that inside the warmup timing active period it will run this value?

this is what it appears to do exactly the timing as listed in this table

and yes it bogs down to nothing really stuffed.
crans
 

Posts: 73
Joined: Tue Aug 21, 2007 11:39 am

Re: changing knock map changes ign retard tp & rpm cold timing

Post by crans »

My car has the exact same issue, Very very sluggish during warm up nearly un-drivable at times
raddy
 

Posts: 167
Joined: Mon Mar 16, 2009 9:52 pm

Re: changing knock map changes ign retard tp & rpm cold timing

Post by raddy »

for me this problem looks same like ca18det warmup timing tables, which contains similar very low timing. this table is (at ca18det) really used during warmup, based at conditional tables and there I found a reason of problems at ca18det case.
To get out of retarded timing during warmup you can: set timing at warmup timing table to reasonable values or change conditional tables (if avialable). Reason why it make problems with ca18det is that one of conditional table refer to max. TP value after which is warmuptiming table not used anymore. If you resize injectors, TP scale is resized also and max. TP for warmuptiming is now somewhere at the middle of the TP scale, e.g. at higher load, while in standard it will leave warmuptiming table at low loads, just after idle load, thats reason why you didnt notice it with standard ECU...
crans
 

Posts: 73
Joined: Tue Aug 21, 2007 11:39 am

Re: changing knock map changes ign retard tp & rpm cold timing

Post by crans »

I am using stock injectors and stock afm nothing has been scaled
nanook
 

Posts: 79
Joined: Tue Dec 30, 2008 2:42 pm
Location: Auckland, New Zealand

Re: changing knock map changes ign retard tp & rpm cold timing

Post by nanook »

raddy wrote:for me this problem looks same like ca18det warmup timing tables, which contains similar very low timing. this table is (at ca18det) really used during warmup, based at conditional tables and there I found a reason of problems at ca18det case.
To get out of retarded timing during warmup you can: set timing at warmup timing table to reasonable values or change conditional tables (if avialable). Reason why it make problems with ca18det is that one of conditional table refer to max. TP value after which is warmuptiming table not used anymore. If you resize injectors, TP scale is resized also and max. TP for warmuptiming is now somewhere at the middle of the TP scale, e.g. at higher load, while in standard it will leave warmuptiming table at low loads, just after idle load, thats reason why you didnt notice it with standard ECU...

Thanks very interesting "raddy" Thank you

on my stock map its set at max tp 56 which on the stock scales is past the half way point on the map

I'll adjust the max tp for that then as that area in my map is around 36
nanook
 

Posts: 79
Joined: Tue Dec 30, 2008 2:42 pm
Location: Auckland, New Zealand

Re: changing knock map changes ign retard tp & rpm cold timing

Post by nanook »

crans wrote:I am using stock injectors and stock afm nothing has been scaled

Hmmm why have you got this issue then if your scales are stock

maybe this isn't the cause
raddy
 

Posts: 167
Joined: Mon Mar 16, 2009 9:52 pm

Re: changing knock map changes ign retard tp & rpm cold timing

Post by raddy »

so try to adjust warmup timing table to higher timing, if that cure your problem, I would dont care about real reason :?
RomChip200
 

Posts: 426
Joined: Mon May 11, 2009 7:58 pm
Location: FRANCE

Re: changing knock map changes ign retard tp & rpm cold timing

Post by RomChip200 »

Hum, old post but additional info is always good.

On Z32, there's a routine that creates an area where the regular timing maps are not used, but WARMUP_TIMING is used instead.
I don't understand the rationale of NISSAN behind that, because this table is (also) used when you are not in idle (I mean in gear and throttle exercised) and made my car particularly sluggish when migrating to ethanol fuel (even after correction of TP-related values, new injector size bla bla bla). Ethanol needs ton of timing advance when warming up, so I put WARMUP_TIMING_TEMP_MAX=0 to bypass the routine and use the regular timing maps immediatly:

Code: Select all

CODE:CB75 loc_6661:                                         ; ...
CODE:CB75                     tim #1, flags6            ; Bit 0: throttle switch (1=idle)
CODE:CB75                                                   ; Bit 1: high octane (if 0, becomes 0 when bit0 of flags5 is set)
CODE:CB75                                                   ; Bit 2: neutral switch(1=neutral)
CODE:CB75                                                   ; Bit 3: power steering switch (1=on)
CODE:CB75                                                   ; Bit 4: A/C switch (1=on)
CODE:CB75                                                   ; Bit 7: gear engaged and high gear
CODE:CB78                     bne loc_6663
CODE:CB78 
CODE:CB7A                     jmp loc_6664
CODE:CB7A 
(...)
loc_6664:                                         ; ...
CODE:CCEB                     ldab engine_temp              ; Engine temp+50 (°C)
CODE:CCEE                     cmpb WARMUP_TIMING_TEMP_MAX
CODE:CCF1                     bcc loc_1429
CODE:CCF1 
CODE:CCF3                     ldaa engine_temp_initial      ; Initial engine temp+50 (°C)
CODE:CCF6                     cmpa #65
CODE:CCF8                     bcs loc_1429
CODE:CCF8 
CODE:CCFA                     cmpa #85
CODE:CCFC                     bcc loc_1429
CODE:CCFC 
CODE:CCFE                     cmpb WARMUP_TIMING_TEMP_MIN
CODE:CD01                     bcs loc_1429
CODE:CD01 
CODE:CD03                     ldab tp_filt                  ; Filtered tp
CODE:CD06                     ldaa rpm_d4_lo                ; rpm_div_4_lo=lo(Engine speed/50)
CODE:CD09                     tim #%100, interp_flags       ; Bit 6: 0=rpm, 1=tp_d2_filt
CODE:CD0C                     beq loc_6694
CODE:CD0C 
CODE:CD0E                     addd #$A08
CODE:CD11 
CODE:CD11 loc_6694:                                         ; ...
CODE:CD11                     cmpb WARMUP_TIMING_TP_MAX
CODE:CD14                     bcc loc_1429
CODE:CD14 
CODE:CD16                     cmpa WARMUP_TIMING_RPM_MAX
CODE:CD19                     bcc loc_1429
CODE:CD19 
CODE:CD1B                     aim #%11111011, interp_flags  ; Bit 6: 0=rpm, 1=tp_d2_filt
CODE:CD1E                     ldaa rpm_lo                   ; rpm_lo=min(rpm,255)
CODE:CD21                     ldx #IDLE_TIMING_NEUTRAL
CODE:CD24                     jsr interp_16                 ; X=table adress
CODE:CD24                                                   ; A=value to look up
CODE:CD24                                                   ; 
CODE:CD24                                                   ; A=output value
CODE:CD24 
CODE:CD27                     aim #%10111111, flags7        ; Bit 0: EGR off
CODE:CD2A                     jmp loc_1396
CODE:CD2A 
CODE:CD2D 
CODE:CD2D loc_1429:                                         ; ...
CODE:CD2D                     aim #%11111, interp_flags     ; Bit 6: 0=rpm, 1=tp_d2_filt
CODE:CD30                     oim #%10100, interp_flags     ; Bit 6: 0=rpm, 1=tp_d2_filt
CODE:CD33                     aim #%10111111, flags7        ; Bit 0: EGR off
CODE:CD36                     ldx #timing_map_knock
CODE:CD39                     aim #%11111011, flags10       ; Bit 2: 1=normal map, 0=knock map
CODE:CD3C                     tim #%10000000, flags8        ; Bit 1: 1=inside knock learn region
CODE:CD3C                                                   ; Bit 7: 0=knock
CODE:CD3F                     beq loc_6697
CODE:CD3F 
CODE:CD41                     ldx #timing_map
CODE:CD44                     oim #%100, flags10            ; Bit 2: 1=normal map, 0=knock map
CODE:CD47 
CODE:CD47 loc_6697:                                         ; ...
CODE:CD47                     stx param_map
CODE:CD49                     ldx #ign_rpm_scale
CODE:CD4C                     stx param_rpm
CODE:CD4E                     ldx #ign_tp_scale
CODE:CD51                     stx param_tp
CODE:CD53                     jsr interp_2D

In the case of Z32, in sequence the ECU checks the following to select the timing map to use:
if Temp>55°C ==> regular timing map
if TempInitial<15°C ==> regular timing map
if TempInitial>35°C ==> regular timing map
else if Temp<30°C ==> regular timing map
so if TempInitial>15°C and TempInitial<35°C and Temp>30°C and Temp<55°C and TP<44 and rpm<2600 ==> WARMUP_TIMING table is used !!!!

Note: when you start up the engine, the knock maps are used for a while and if conditions are met, you switch to the regular map (typically when you blip the throttle for the first time).
Matt
Site Admin
 

Posts: 8961
Joined: Sun Jan 29, 2006 1:45 am
Location: Adelaide, Australia
Contact:

Re: changing knock map changes ign retard tp & rpm cold timing

Post by Matt »

Interesting. With the initial warmup temp that looks similar to how the Z31/R31 used the cold/warm enrichment tables. Temperature recorded on crank

So many extra conditionals :?
Post Reply