2byte Load log question
#1
Evolving Member
Thread Starter
Join Date: Feb 2005
Location: Moscow, Russia
Posts: 123
Likes: 0
Received 0 Likes
on
0 Posts
2byte Load log question
What does this pulsations mean? Is it calculation error or real air pulsation?
I don't feel any leaps during the run and boost (by DEFI) stable too.
I don't feel any leaps during the run and boost (by DEFI) stable too.
Last edited by AIK; Mar 4, 2009 at 07:00 AM.
#3
Evolved Member
iTrader: (38)
This is normal, due to the nature of how 2 Byte load is calculated.
Since there is some time (milliseconds) between the polling of the first byte and second byte, there is a chance that the overrun or underrun of one byte will not match up to the other byte correctly.
Each byte holds a value of 0-255, in which the decimal values 0-79.6875 are possible to represent.
So in one byte, the values 0-255 represent:
1 = 0.3125 load
2 = 0.6250 load
4 = 1.2500 load
8 = 2.5000 load, etc. up to
255 = 79.6875 load
This means that, by itself, one byte can represent load from 0.0000 to 79.6875. When we add a second byte, we can store an additional 255 multiples of those values, essentially being able to represent load from 0.0000 to 20479.6875.
The values are stored like this:
2.500 load = byte1: 8, byte2: 0
For simplicity's sake we can write this as:
2.500 load = 8:0
To continue this, we see that:
79.6875 load = 255:0
80.0000 load = 0:1
And further:
159.6875 load = 255:1
160.0000 load = 0:2
239.6875 load = 255:2
240.0000 load = 0:3
319.6875 load = 255:3
320.0000 load = 0:4
That brings us back to our logging error. Remember, we are polling these two bytes separately, one and then the other. So, looking at the example below, let's see what happens when, because of a few milliseconds in delay, we accidentally log a 255 from the first byte and a 3 from the second byte, even though we are only at ~240 load:
239.6875 load = 255:2
240.0000 load = 0:3
We log 255:3 = (255*.3125) + (80*3) = 319.6875. And that's where our logging error comes from. The same is true when we accidentally log a 0 from the first byte with a 2 from the second byte. We log 0:2 = (0*.3125) + (80*2) = 160.0000. Yikes!
Since there is some time (milliseconds) between the polling of the first byte and second byte, there is a chance that the overrun or underrun of one byte will not match up to the other byte correctly.
Each byte holds a value of 0-255, in which the decimal values 0-79.6875 are possible to represent.
So in one byte, the values 0-255 represent:
1 = 0.3125 load
2 = 0.6250 load
4 = 1.2500 load
8 = 2.5000 load, etc. up to
255 = 79.6875 load
This means that, by itself, one byte can represent load from 0.0000 to 79.6875. When we add a second byte, we can store an additional 255 multiples of those values, essentially being able to represent load from 0.0000 to 20479.6875.
The values are stored like this:
2.500 load = byte1: 8, byte2: 0
For simplicity's sake we can write this as:
2.500 load = 8:0
To continue this, we see that:
79.6875 load = 255:0
80.0000 load = 0:1
And further:
159.6875 load = 255:1
160.0000 load = 0:2
239.6875 load = 255:2
240.0000 load = 0:3
319.6875 load = 255:3
320.0000 load = 0:4
That brings us back to our logging error. Remember, we are polling these two bytes separately, one and then the other. So, looking at the example below, let's see what happens when, because of a few milliseconds in delay, we accidentally log a 255 from the first byte and a 3 from the second byte, even though we are only at ~240 load:
239.6875 load = 255:2
240.0000 load = 0:3
We log 255:3 = (255*.3125) + (80*3) = 319.6875. And that's where our logging error comes from. The same is true when we accidentally log a 0 from the first byte with a 2 from the second byte. We log 0:2 = (0*.3125) + (80*2) = 160.0000. Yikes!
Last edited by recompile; Mar 4, 2009 at 09:34 AM.
Thread
Thread Starter
Forum
Replies
Last Post
RallySport Direct
EvoX 'For Sale' Engine Internals and Drivetrain
35
Sep 1, 2015 09:21 AM
d0nald
Evo Tires / Wheels / Brakes / Suspension
5
Mar 19, 2010 08:35 AM
volkskid
Evo Engine / Turbo / Drivetrain
3
Apr 3, 2008 05:17 AM