Cranking fuel tables

Nistune topics related specifically to the 6303 cpu

Moderator: Matt

RomChip200
 

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

Re: Cranking fuel tables

Post by RomChip200 »

I've never spoken about automatic scaling in Nistune.
the less the SW decides for you, the better it's

I gave my values to give a reference to people.
Torque
 

Posts: 639
Joined: Wed Jun 16, 2010 10:08 am

Re: Cranking fuel tables

Post by Torque »

Well,


All I can say from empirical try and logging that the Cranking Table based on mS seems to be the root
of all cold/warm-start issues.

I adjusted this table by leaning it further out on temperatures >50C.
That alleviated warm-start-issue.

The only issue which is left is a stumble/bog down during warm-up when you hit the pedal too quickly.
I am not talking about flooring the pedal but simply accelerating slightly more pronounced.

I have to investigate further whether this is due to lean out or load up conditions.
I suspect there is another 'adder' which is also not based on K.
meet07
 

Posts: 62
Joined: Mon Jan 26, 2009 1:33 pm
Location: NC, USA

Re: Cranking fuel tables

Post by meet07 »

I too am having start issues with my rb25, ford lightning maf in 4 inch intake tube. When cold it starts at like 30. When it goes to the next cell I usually cut the car off and try again. 30 starts it up all the way to like 170degrees Fahrenheit. After that she wont start. Pulled the plugs and they look a lottle black but when completely cold it will start right back up. I start playing with the lower section of the maf conversion but my battery was almost dead. Am I suppose to mess with the after start enrichment as well or am I doing something wrong?

*fixed the battery during start up didnt have enpugh juice to mae the injectors work lie there suppose to...*
RomChip200
 

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

Re: Cranking fuel tables

Post by RomChip200 »

Be careful, the use of these enrichement tables:
COLD_START_ENRICH,&H7F30,16,1,16,1,Cold start enrich vs Temp <= 15 degC
WARM_START_ENRICH,&H7EB0,16,1,16,1,Warm start enrich vs Temp => 15degC

are conditioned by 2 temp thresholds related to AFR narrowband on Z32:
O2_FEEDBACK_TEMP,&H7F91,1,1,1,1,Feedback control temp is well-known and may be 25°C or 50°C depending on country (41P04 is 50°C)
7EE7 is less known and used when the initial temp is below 10°C

People have to be aware these enrichement tables are mainly some enrichement linked to the AFR corrections.
Once one of the 2 thresholds is reached, AFR learning activity starts to run, some flags are set and then cancel the use of COLD_START_ENRICH or WARM_START_ENRICH.
So, depending on the temp thresholds values, some people may have some engine limp in the 20°C-70°C area .... simply b/c these tables are no more taken into account !

The flags that are set and avoid using the tables:

Code: Select all

RAM1:00CE afr_flags_right:    rmb 1
RAM1:0053 afr_flags_left:     rmb 1
DATA:FEB0 afr_temp_warm_coef_map
DATA:FF30 afr_temp_cold_coef_map

CODE:C645 sub_1329:                                         ; ...
CODE:C645                     tim #%100000, afr_flags_right
CODE:C648                     bne loc_6596
CODE:C648 
CODE:C64A                     tim #%100000, afr_flags_left
CODE:C64D                     beq loc_6597
CODE:C64D 
CODE:C64F 
CODE:C64F loc_6596:                                         ; ...
CODE:C64F                     clra
CODE:C650                     bra loc_6598
CODE:C650 
CODE:C652 
CODE:C652 loc_6597:                                         ; ...
CODE:C652                     ldaa engine_temp2             ; engine_temp*1.6+0.5
CODE:C654                     ldx #afr_temp_warm_coef_map   ; (val/64*100) : afr enrichment %
CODE:C657                     ldab engine_temp_initial      ; Initial engine temp+50 (°C)
CODE:C65A                     cmpb #65                      ; Engine temp>15°C ?
CODE:C65C                     bcc loc_6599
CODE:C65C 
CODE:C65E                     ldx #afr_temp_cold_coef_map   ; (val/64*100) : afr enrichment %
CODE:C661 
CODE:C661 loc_6599:                                         ; ...
CODE:C661                     jsr interp_16                 ; X=table adress
CODE:C661                                                   ; A=value to look up
CODE:C661                                                   ; 
CODE:C661                                                   ; A=output value
CODE:C661 

Code: Select all

DATA:FEE7 afr_const24:        fcb 125    ; 75°C
DATA:FF91 fb_control:         fcb 75       ; 25°C          


CODE:8C2E                     ldaa engine_temp_initial      ; Initial engine temp+50 (°C)
CODE:8C31                     ldab engine_temp              ; Engine temp+50 (°C)
CODE:8C34                     cmpa #60
CODE:8C36                     bcc loc_5991
CODE:8C36 
CODE:8C38                     cmpb afr_const24              ; warm start closed loop temp (above which we go into closed loop after a warm start)
CODE:8C3B                     bcs loc_537
CODE:8C3B 
CODE:8C3D                     bra loc_5992
CODE:8C3D 
CODE:8C3F 
CODE:8C3F loc_5991:                                         ; ...
CODE:8C3F                     cmpb fb_control               ; O2 sensor "ready" time (after warmup? seconds? minutes?)
CODE:8C42                     bcs loc_537
CODE:8C42 
Torque
 

Posts: 639
Joined: Wed Jun 16, 2010 10:08 am

Re: Cranking fuel tables

Post by Torque »

Hi,

Is what you are saying that these enrichment tables are used until the feedback temperature of the O2 sensor is used?
This was always my understanding/guess and I deliberately tweaked the feedback temperature so that the enrichment tables would be longer effective (at least that is what I thought)

What would be interesting to know is:
Why are these tables called -> WARM CRANK / COLD CRANK in Nistune?
Are we talking about the same tables??
RomChip200
 

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

Re: Cranking fuel tables

Post by RomChip200 »

Yes, we're speaking about the same tables.
Personnally, I call them afr_temp_warm_coef_map and afr_temp_cold_coef_map because they induce a coeff related to the AFR management till a temp threshold is reached and nothing else.
They are not pure enrichment tables.
You must take care of feedback temp, yes, but also of the constant value stored in 7EE7, used if initial engine temp is below 10°C.
Torque
 

Posts: 639
Joined: Wed Jun 16, 2010 10:08 am

Re: Cranking fuel tables

Post by Torque »

These tables should be renamed in NT then since cranking is only the time when
the ECU receives the start signal.


Are these tables actually just a modifier to the injected fuel amount while below a certain temperature?
What does 7EE7 (10°C) actually do?
RomChip200
 

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

Re: Cranking fuel tables

Post by RomChip200 »

Torque wrote: Are these tables actually just a modifier to the injected fuel amount while below a certain temperature?
Sure.
Torque wrote:What does 7EE7 (10°C) actually do?
Please read the code.
7EE7 is 75°C by default and is the temp threshold used before enabling AFR learn and correction management if engine initial temp was below 15°C, otherwise feedback temp is used (25°C or 50°C depending on the country)
Torque
 

Posts: 639
Joined: Wed Jun 16, 2010 10:08 am

Re: Cranking fuel tables

Post by Torque »

Alright, thanks ...

Would you know about the other enrichment tables?

There's
Crank Enrich which I hope is actually asserted while cranking.

And

After Start Enrich Coefficient which seems to be an overall adder?
RomChip200
 

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

Re: Cranking fuel tables

Post by RomChip200 »

Torque wrote: Crank Enrich which I hope is actually asserted while cranking.
After Start Enrich Coefficient which seems to be an overall adder?
Already discussed.
Crank Enrich gives fixed ms pulse (interpolated though) to injector depending on ambient temp when cranking (starter pulse on)
AS Enrich is used few seconds just after start to maintain engine running and avoid stalling (not sure about all the conditions but I don't care b/c barely used). I know that blipping the throttle juste after start cancels the use of the table.
Matt
Site Admin
 

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

Re: Cranking fuel tables

Post by Matt »

Table names are actually called 'Enrichment coefficient' (cold crank/warm crank) respectively. The address file names are just shortened but not normally visible to the user.

Given they are a coefficient and % adjustment as per the Nistune description they alter the base AFRs by % based on current coolant temperature

As ROM chip stated the cold/warm crank table selection is based on coolant temperature at cranking time (hence cold/warm crank in brackets). Map highlighting also affects this

That is interesting that once O2 feedback temp reached is when these tables are no longer accessed. I can then disable map highlighting against the selected table once this temperature is reached

Short cut on the LHS panel is just 'Cold Enrich'/'Warm Enrich' ... perhaps adding 'coefficient' in the Translation.ini file at the end may help thing here...
Torque
 

Posts: 639
Joined: Wed Jun 16, 2010 10:08 am

Re: Cranking fuel tables

Post by Torque »

Matt wrote: As ROM chip stated the cold/warm crank table selection is based on coolant temperature at cranking time (hence cold/warm crank in brackets). Map highlighting also affects this
OK I understand, but this naming convention NAME [TRIGGER] is not consistent across NT.
So Crank Enrich should be named Crank Enrich [CRANK]
And After Start Enrich should be named After Start Enrich [CRANK]

Matt wrote: That is interesting that once O2 feedback temp reached is when these tables are no longer accessed. I can then disable map highlighting against the selected table once this temperature is reached
Now that really makes me wondering ..
I always thought the ECU messages which tables it is currently using and you were basically highlighting these.
Why would you need to change your logic?
Matt
Site Admin
 

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

Re: Cranking fuel tables

Post by Matt »

Address file naming is 'under the hood' so I'm not too concerned about address entry naming matching exactly

Currently those entries you mention match anyway. Where bracketed parameter is the matching address file entry name...
map_ref[AS_ENRICH].gdata.tablestring = "After start enrich";
map_ref[AS_ENRICH].gdata.titlestring = "TKAS: After start enrich coefficient";

map_ref[CRANK_ENRICH].gdata.tablestring = "Crank Enrich";
map_ref[CRANK_ENRICH].gdata.titlestring = "Crank Enrich";
These ones will be be updated to add 'coefficient'
map_ref[COLD_START_ENRICH].gdata.tablestring = "Cold Enrich";
map_ref[COLD_START_ENRICH].gdata.titlestring = "Enrichment coefficient (cold crank)";

map_ref[WARM_START_ENRICH].gdata.tablestring = "Warm Enrich";
map_ref[WARM_START_ENRICH].gdata.titlestring = "Enrichment coefficient (warm crank)";
Matt
Site Admin
 

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

Re: Cranking fuel tables

Post by Matt »

We work out which tables are being used based on inputs on the PC side of things. The PC does not indicate which tables it is using at any particular time
Torque
 

Posts: 639
Joined: Wed Jun 16, 2010 10:08 am

Re: Cranking fuel tables

Post by Torque »

Matt wrote:We work out which tables are being used based on inputs on the PC side of things. The PC does not indicate which tables it is using at any particular time

How's that?
I thought that was what map highlighting was all about?
Post Reply