WOT Voltage?

Nistune topics related specifically to the 6303 cpu

Moderator: Matt

Torque
 

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

WOT Voltage?

Post by Torque »

Just wondering ... what voltage expects the ECU to assume WOT?

I get about 4.1 Volts, sounds a bit low?
Matt
Site Admin
 

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

Re: WOT Voltage?

Post by Matt »

For accessing the last column of the fuel map its defined in 'Accel increase fuel' table
Torque
 

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

Re: WOT Voltage?

Post by Torque »

Interesting,

Because that brings us back to the Accel increase fuel' table.
The voltage there (after 1200rpm or so) is 5 volts, but the TPS returns 4 volts :shock:
Attachments
acceoo.jpg
(21.94 KiB) Downloaded 4975 times
Matt
Site Admin
 

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

Re: WOT Voltage?

Post by Matt »

There may be an offset or hysteresis applied to this table inside the ECU (would require more thorough investigation)
Torque
 

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

Re: WOT Voltage?

Post by Torque »

Yes,

It would be good to have more background on the Accel Enrichment.
Despite a few posts here I never fully understood how this table works.

As for the throttle voltage I read conflicting things on the net.
Either 5V or 4V .. for WOT ..
Eric
 

Posts: 227
Joined: Mon Jan 14, 2008 7:59 pm
Location: Holland
Contact:

Re: WOT Voltage?

Post by Eric »

approx. 4 volt at WOT is the correct voltage.

http://300zx-twinturbo.com/cgi-bin/manu ... &total=190
PL
 

Posts: 957
Joined: Fri Feb 03, 2006 3:29 pm
Location: Adelaide, South Oz
Contact:

Re: WOT Voltage?

Post by PL »

All the SR20's I've ever looked at have read slightly over 4V at WOT.

PL
Matt
Site Admin
 

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

Re: WOT Voltage?

Post by Matt »

CA0C : B6 14 73 ldaa RPM_IDX
CA0F : CE F5 30 ldx #ADD_FUEL
CA12 : BD 80 EF jsr L80EF
CA15 : 7B 01 D8 tim #$01X00D8
CA18 : 27 05 beq LCA1F
CA1A : 80 0A suba #$0A
CA1C : 24 01 bcc LCA1F
CA1E : 4F clra
CA1F LCA1F:
CA1F : B1 15 DF cmpa TPS_POS_ADJUSTED(MSB)
CA22 : 22 05 bhi LCA29
CA24 : 72 01 D8 oim #$01X00D8
CA27 : 20 03 bra LCA2C
There is a raw offset of 10 applied to the table value and the adjusted TPS voltage can be offset by 6 (code condition)

It means the 20mV x 256 voltage range for TPS does not apply in the same way to this table.
Torque
 

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

Re: WOT Voltage?

Post by Torque »

Thanks ... :)
RomChip200
 

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

Re: WOT Voltage?

Post by RomChip200 »

Coming back on this 0xF530 table (Z32) and its purpose.

I don't understand why you think the 16th column gets accessed when throttle reaches a certain voltage.

Basically the code tells you this table is used as a low pass filter according to rpm to deduce if engine can still be considered in idle or not.
rpm is the table index (the tables is indexed from 0 to 15 i.e. 0 400 800 1200 .... 6000 rpm), it gets a value according to rpm and this value is compared to the current throttle "closed" threshold (ECU assumes "closed" when the throttle voltage is under a certain value).
If all conditions are met, the engine is considered idling and 0xD8 variable is set accordingly (bit0=1 means idling, bit0=0 means not idling)
Afterwards the value of this table is no more used, so ...

The raw offset of 10 is just an hysteresis (another hysteresis again) introduced when the engine is considered as already idling, this is just to decrease the current value got from the table and diminish the threshold to have the transition idling==> not idling.
Torque
 

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

Re: WOT Voltage?

Post by Torque »

Now this is getting interesting.
:)
So (if I understood you correctly) this table is not accessing column 16 based on threshold?


RomChip200 wrote:Coming back on this 0xF530 table (Z32) and its purpose.

I don't understand why you think the 16th column gets accessed when throttle reaches a certain voltage.

Basically the code tells you this table is used as a low pass filter according to rpm to deduce if engine can still be considered in idle or not.
rpm is the table index (the tables is indexed from 0 to 15 i.e. 0 400 800 1200 .... 6000 rpm), it gets a value according to rpm and this value is compared to the current throttle "closed" threshold (ECU assumes "closed" when the throttle voltage is under a certain value).
If all conditions are met, the engine is considered idling and 0xD8 variable is set accordingly (bit0=1 means idling, bit0=0 means not idling)
Afterwards the value of this table is no more used, so ...

The raw offset of 10 is just an hysteresis (another hysteresis again) introduced when the engine is considered as already idling, this is just to decrease the current value got from the table and diminish the threshold to have the transition idling==> not idling.
RomChip200
 

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

Re: WOT Voltage?

Post by RomChip200 »

This table contains values that are not TP-related but that express some voltage values for throttle (indexed on rpm) and that induce some thresholds to the ECU to tell if the engine is considered idling or not.

Code: Select all

CODE:CA04 compute_fuel:                                     ; ...
CODE:CA04                     tim #%10000000, sflag2_copy   ; Static value: %11101100
CODE:CA07                     bne cf_1                      ; Should branch
CODE:CA07 
CODE:CA09                     jmp cf_19
CODE:CA09 
CODE:CA0C 
CODE:CA0C cf_1:                                             ; ...
CODE:CA0C                     ldaa rpm_d2_lo
CODE:CA0F                     ldx #$F530
CODE:CA12                     jsr interp_16                 ; X=table adress
CODE:CA12                                                   ; A=value to look up
CODE:CA12                                                   ; 
CODE:CA12                                                   ; A=output value
CODE:CA12 
CODE:CA15                     tim #1, idle                  ; Bit 0: 1=engine is idling
CODE:CA18                     beq cf_2
CODE:CA18 
CODE:CA1A                     suba #10
CODE:CA1C                     bcc cf_2
CODE:CA1C 
CODE:CA1E                     clra
CODE:CA1F 
CODE:CA1F cf_2:                                             ; ...
CODE:CA1F                     cmpa throttle_filt            ; Low-pass filtered throttle position
CODE:CA22                     bhi cf_3                      ; If A>throttle_filt then branch
CODE:CA22 
CODE:CA24                     oim #1, idle                  ; Bit 0: 1=engine is idling
CODE:CA27                     bra cf_4
CODE:CA27 
CODE:CA29 
CODE:CA29 cf_3:                                             ; ...
CODE:CA29                     aim #%11111110, idle          ; Bit 0: 1=engine is idling
CODE:CA2C 
CODE:CA2C cf_4:                                             ; ...
                                            ; ...
Matt
Site Admin
 

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

Re: WOT Voltage?

Post by Matt »

This table Z32 must not be ADD_FUEL then

Different to other ones I've seen since its not setting TP index to 255 (0xFF)

S13 SR20 50F00 - Fuel map lookup routine
0x98A9: AD DD 41 lda al,RPM/2
0x98AC: A2 00 82 ldx #Add_Fuel
0x98AF: 20 5B FE jsr 0xFE5B (Interpolate table)
0x98B2: 3C A6 41 40 03 bbc #0x40,0x41A6,0x98BA
0x98B7: 38 sec
0x98B8: E9 09 sbc al, #0x09

0x98BA: CD E2 41 cmp al,Absolute_TPS_%
0x98BD: 90 0B bcc 0x98CA
0x98BF: F0 09 beq 0x98CA

0x98C1: 1C A6 41 40 clb #0x40, 0x41A6
0x98C5: AC 50 42 ldy #4250 (Current TP)
0x98C8: 80 0F bra 0x98D9

0x98CA: 0C A6 41 40 seb #0x40, 0x41A6
0x98CE: 9C 88 42 FF ldm #0xff,0x4288
0x98D2: 1C 97 41 08 clb #0x08, 0x4197
0x98D6: A0 FF FF ldy #0xFFFF (TP=>MAX)

0x98D9:
0x98D9: 8C 68 41 sty 0x4168 (TP used for indexing)
0x98DC: 20 A3 F6 jsr 0xF6A3
Matt
Site Admin
 

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

Re: WOT Voltage?

Post by Matt »

Looking into this further ROMchip is correct here
ADD_FUEL 加速増量Acceleration increased ADD_FUEL
The original ROM editor definition were only defined for S13 SR20DET and later model vehicles

This definition or its functionality as I described earlier doesnt exist in Z32 original definitions although the table graph looked similar it has different functionality (nothing formally defined in the Nistune software or decoding charts).

This was been included after previous address definitions for other ECUs made available refereed to this section of code as ADD_FUEL also. I've weeded through and found the same functionality (max TP setting) is only applied to CA18 and U12 in the 8 bit ECUs with Type 1/2 binaries so the address files have been updated accordingly. Other earlier ECUs dont seem to have this table
RomChip200
 

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

Re: WOT Voltage?

Post by RomChip200 »

S13 CA18DET (180SX, 200SX european) has this table in 0xB970 (or 0x3970) as stated in ROmEditor, I never really deciphered its usage, this ADD_FUEL table contains just some values increasing:

Code: Select all


ROM:B970 byte_B970:      fcb 0                   ; DATA XREF: sub_9459+A5o
ROM:B971                 fcb  $1C ;  
ROM:B972                 fcb  $27 ; '
ROM:B973                 fcb  $35 ; 5
ROM:B974                 fcb  $3D ; =
ROM:B975                 fcb  $4E ; N
ROM:B976                 fcb  $56 ; V
ROM:B977                 fcb  $65 ; e



ROM:94FC loc_94FC:                               ; CODE XREF: sub_9459+9Fj
ROM:94FC                 lsra
ROM:94FD                 tab
ROM:94FE                 ldx     #$B970
ROM:9501                 abx
ROM:9502                 ldaa    0,x
ROM:9504                 staa    byte_10FA
ROM:9507                 ldaa    unk_B978
ROM:950A                 suba    word_1085
ROM:950D                 bcc     loc_9511
ROM:950F                 ldaa    #0
ROM:9511 
ROM:9511 loc_9511:                               ; CODE XREF: sub_9459+B4j
ROM:9511                 ldab    unk_B979
ROM:9514                 mul
ROM:9515                 lsld
ROM:9516                 bcs     loc_951B
ROM:9518                 lsld
ROM:9519                 bcc     loc_951D
ROM:951B 
ROM:951B loc_951B:                               ; CODE XREF: sub_9459+BDj
ROM:951B                 ldaa    #$FF
ROM:951D 
ROM:951D loc_951D:                               ; CODE XREF: sub_9459+C0j
ROM:951D                 staa    byte_10FB
ROM:9520                 ldaa    rpm_d2_lo
ROM:9523                 ldx     #unk_B950
ROM:9526                 jsr     interp_16
ROM:9529                 staa    byte_10FC
ROM:952C                 ldaa    engine_temp2
ROM:952F                 ldx     #unk_B960
ROM:9532                 jsr     interp_16
ROM:9535                 staa    byte_10FD
ROM:9538                 ldaa    byte_1103
ROM:953B                 bita    #$20
ROM:953D                 beq     loc_9547
ROM:953F                 ldaa    unk_B97A
ROM:9542                 staa    byte_10FE
ROM:9545                 bra     loc_954C
ROM:9547 ; ---------------------------------------------------------------------------



Post Reply