Distance Travelled
#1
Senior Member
Thread Starter
Distance Travelled
As many know, Accumulated Distance Travelled is meaningless and incorrectly reported in the $8d data stream (logs). But just discovered that distance travelled can be reported by replacing Accumulated Fuel which, like Accumulated Distance Travelled, is a somewhat meaningless value. The distance travelled reported is from key-on to key-off. Unfortunately any distance travelled in reverse is reported as part of the total distance travelled. No way around it.
This applies to AUJP and ANHT and likely to all other $8d masks.Just make the following changes:
ADX-Add the 16-bit Value ‘Distance Travelled’:
ADX Conversion:
XDF-ALDL Words #49 and 50-Change the addresses reported as below:
ALDL #----Current Address----New Address
49----------3130----------------3085
50----------3131----------------3086
#3
Moderator
iTrader: (1)
Join Date: Mar 2002
Location: Chasing Electrons
Posts: 18,401
Likes: 0
Received 215 Likes
on
201 Posts
Car: check
Engine: check
Transmission: check
Re: Distance Travelled
As many know, Accumulated Distance Travelled is meaningless and incorrectly reported in the $8d data stream (logs). But just discovered that distance travelled can be reported by replacing Accumulated Fuel which, like Accumulated Distance Travelled, is a somewhat meaningless value. The distance travelled reported is from key-on to key-off. Unfortunately any distance travelled in reverse is reported as part of the total distance travelled. No way around it.
This applies to AUJP and ANHT and likely to all other $8d masks.RBob.
#4
Senior Member
Thread Starter
Re: Distance Travelled
Hmmm. Interesting that accum distance and fuel were OK in other masks but not in 8d. 8d accum distance (L0134) is either a GM bust because it's a 1-byte variable, or maybe they were using it for debugging and forgot to change the ALDL stream. Accum fuel (L0130) looks like a variable for debugging, because the calculation makes no sense for accum fuel. 2-byte L012E has some promise of reporting accum fuel (cumulative BPW sent to the injectors since ECM power-on), but does not appear to include adjustments for either low PW or Injector offset voltage, and the latter can be a big chunk of the final PW. Another code mystery!?
#5
Moderator
iTrader: (1)
Join Date: Mar 2002
Location: Chasing Electrons
Posts: 18,401
Likes: 0
Received 215 Likes
on
201 Posts
Car: check
Engine: check
Transmission: check
Re: Distance Travelled
The accumulated distance is a roll-over counter. This needs to be taken care of in the equipment that is using that value.
The accumulated fuel value is the same, a roll over counter. The low PW and offset compensation isn't included as fuel isn't being delivered at those times. These compensations make up for dead time in the injector(s).
Note that it is three bytes of accum fuel starting at L012D. This value is multiplied by 8 then saved in L0130 (2 bytes).
RBob.
The accumulated fuel value is the same, a roll over counter. The low PW and offset compensation isn't included as fuel isn't being delivered at those times. These compensations make up for dead time in the injector(s).
Note that it is three bytes of accum fuel starting at L012D. This value is multiplied by 8 then saved in L0130 (2 bytes).
RBob.
#6
Moderator
iTrader: (1)
Join Date: Mar 2002
Location: Chasing Electrons
Posts: 18,401
Likes: 0
Received 215 Likes
on
201 Posts
Car: check
Engine: check
Transmission: check
Re: Distance Travelled
RBob.
#7
Senior Member
Thread Starter
Re: Distance Travelled
The accumulated distance is a roll-over counter. This needs to be taken care of in the equipment that is using that value.
The accumulated fuel value is the same, a roll over counter.
Note that it is three bytes of accum fuel starting at L012D. This value is multiplied by 8 then saved in L0130 (2 bytes).
RBob.
The accumulated fuel value is the same, a roll over counter.
Note that it is three bytes of accum fuel starting at L012D. This value is multiplied by 8 then saved in L0130 (2 bytes).
RBob.
The low PW and offset compensation isn't included as fuel isn't being delivered at those times. These compensations make up for dead time in the injector(s).
Code:
; Branched here if PW in Reg X >= 3.90ms; or if < 3.90ms, ; fall through to here with low PW adder in Reg X LEA0E: ldab *L00EE ; [Injector Offset Voltage (uSec)] abx ; ADD Voltage to BPW (twice) abx ; ADD Voltage to BPW (twice) ;--------------- ; Limit Fuel Out ;--------------- LEA12: cpx #0x7FFF ; 499.9ms MAX BPW bcs LEA1A ; BR IF [BPW <= 499.9ms =OK] ; ... else [BPW > 499.9ms] ldx #0x7FFF ; FORCE 499ms LEA1A: stx L3FD0 ; [Send PW + adders to ECM to fire injectors]
Trending Topics
#8
Moderator
iTrader: (1)
Join Date: Mar 2002
Location: Chasing Electrons
Posts: 18,401
Likes: 0
Received 215 Likes
on
201 Posts
Car: check
Engine: check
Transmission: check
Re: Distance Travelled
However, you've completely lost me on this one unless what you mean is that the compensations are not in the ALDL stream. Then OK. But the Fuel Out code snippet below seems to clearly show that the 2 compensations are added to BPW and the sum is delivered to the ECM. If the injectors are not fired to deliver ALL that fuel, how is that happening? Really puzzled.
Because it is dead time and incorrect flow it isn't included in the IP fuel accumulator. Only the volume of fuel that the ECM calculated for the engine is in that value. This is why it is so important to have the correct injector compensation values.
RBob.
#9
Senior Member
Thread Starter
Re: Distance Travelled
RBob, I misinterpreted what you said. To clarify, I understand dead-time, latency, lag time or whatever it's called and understand that the low PW and offset voltage compensations are provided to make up for these situations where the injectors are not flowing at their linear rate.
I read too quickly "...Isn't being delivered ..." in your reply below and interpreted that to mean the compensation fuel sent to the ECM was not being "delivered" by the injectors. That caused my confusion and "Really puzzled" comment.
"The low PW and offset compensation isn't included as fuel isn't being delivered at those times. These compensations make up for dead time in the injector(s)."
It further prompted my posting of the code showing the total fuel requirement being sent to the ECM.
So all is now good. Sorry for the confusion and thanks for your replies.
I read too quickly "...Isn't being delivered ..." in your reply below and interpreted that to mean the compensation fuel sent to the ECM was not being "delivered" by the injectors. That caused my confusion and "Really puzzled" comment.
"The low PW and offset compensation isn't included as fuel isn't being delivered at those times. These compensations make up for dead time in the injector(s)."
It further prompted my posting of the code showing the total fuel requirement being sent to the ECM.
So all is now good. Sorry for the confusion and thanks for your replies.