2-byte RPM HOW-TO
#31
Thread Starter
Evolving Member
iTrader: (4)
Joined: Dec 2003
Posts: 357
Likes: 0
From: Ventura County, CA
fryedchikin, here is an example for requestIDs 2 and 3
Code:
<Request LogReference="RequestID02" RequestID="02" Eval="x" Unit="INT" Logged="y" Response="2" /> <Request LogReference="RequestID03" RequestID="03" Eval="x" Unit="INT" Logged="y" Response="2" /> <Request LogReference="RPM-2byte" RequestID="FF" Eval="((256*RequestID02)+RequestID03)*1000/256" Unit="2byteRPM" Logged="y" Response="2" />
#32
Well, I found a small glitch than MIGHT cause a headache to anyone trying to get their evoscan to log the right values. As Dave mentioned already, you might need to change the evalution formula to 1000x/256. This doesn't work and the values come out screwy with evoscan unless its written as 1000*x/256. Without the asterisk, it doesn't complete the formula correctly. I also changed the scaling to mimic the standard RPM values on the graphs so the 2 byte rpm doesn't go wayyy off the charts as the rpm goes up.
Here's the code I am currently using and it works great:
Here's the code I am currently using and it works great:
Code:
<DataListItem DataLog="N" Color="" Display="RPM MUT 2Byte Mod" LogReference="RPMMUT2Byte" RequestID="02" RequestID2="03" Eval="1000*x/256" Unit="units" MetricEval="" MetricUnit="" ResponseBytes="1" GaugeMin="0" GaugeMax="8" ChartMin="0" ChartMax="80" ScalingFactor="0.01" Notes=""/>
Last edited by Jack_of_Trades; Oct 4, 2007 at 04:21 PM.
#33
Well, I found a small glitch than MIGHT cause a headache to anyone trying to get their evoscan to log the right values. As Dave mentioned already, you might need to change the evalution formula to 1000x/256. This doesn't work and the values come out screwy with evoscan unless its written as 1000*x/256. Without the asterisk, it doesn't complete the formula correctly. I also changed the scaling to mimic the standard RPM values on the graphs so the 2 byte rpm doesn't go wayyy off the charts as the rpm goes up.
Here's the code I am currently using and it works great:
Here's the code I am currently using and it works great:
Code:
<DataListItem DataLog="N" Color="" Display="RPM MUT 2Byte Mod" LogReference="RPMMUT2Byte" RequestID="02" RequestID2="03" Eval="31.25*x" Unit="units" MetricEval="" MetricUnit="" ResponseBytes="1" GaugeMin="0" GaugeMax="8" ChartMin="0" ChartMax="80" ScalingFactor="0.01" Notes=""/>
Jack, you beat me to it I was just coming on to post about the * thing. Nice work getting this all in one thread.
#35
It makes the formula "correct". Otherwise the program gets confused and calculates the wrong values. The asterisk is the multiply symbol for whomever doesn't know that (not saying you didn't). Don't know why evoscan won't work without it, it just doesn't
Last edited by Jack_of_Trades; Oct 3, 2007 at 08:37 PM.
#36
fryedchikin, here is an example for requestIDs 2 and 3
Code:
<Request LogReference="RequestID02" RequestID="02" Eval="x" Unit="INT" Logged="y" Response="2" /> <Request LogReference="RequestID03" RequestID="03" Eval="x" Unit="INT" Logged="y" Response="2" /> <Request LogReference="RPM-2byte" RequestID="FF" Eval="((256*RequestID02)+RequestID03)*1000/256" Unit="2byteRPM" Logged="y" Response="2" />
#37
WOW I have a headache from reading about all this two byte crap!!!
Here is what I have in my type 15 XML (entered values are listed in table name)
<table name="2-byte load high 27458" address="3EE86" category="MUT" type="1D" level="1" scaling="uint16" />
<table name="2-byte load low 27459" address="3EE8A" category="MUT" type="1D" level="1" scaling="uint16" />
<table name="2-byte Airflow High 27550" category="MUT" address="3EE8E" type="1D" level="1" scaling="uint16"/>
<table name="2-byte Airflow Low 27551" category="MUT" address="3EE92" type="1D" level="1" scaling="uint16"/>
<table name="2-byte RPM high 0x6B1E" address="3EE96" category="MUT" type="1D" level="1" scaling="Hex16" />
<table name="2-byte RPM low 0x6B1F" address="3EE9A" category="MUT" type="1D" level="1" scaling="Hex16" />
I have request:
00 and 01 for 2B-Load
02 and 03 for 2B-Airflow
04 and 05 for 2B-RPM
I've edited my EVOScan as well:
<DataListItem DataLog="N" Color="" Display="2-Byte Load Mod 00/01" LogReference="LoadMUT2Byte" RequestID="00" RequestID2="01" Eval="0.3125x" Unit="units" MetricEval="" MetricUnit="" ResponseBytes="1" GaugeMin="0" GaugeMax="500" ChartMin="0" ChartMax="500" ScalingFactor="1" Notes=""/>
<DataListItem DataLog="Y" Color="" Display="2-Byte AirFlow Mod 02/03" LogReference="AirFlow2Byte" RequestID="02" RequestID2="03" Eval="6.29x/64" Unit="Hz" MetricEval="" MetricUnit="" ResponseBytes="1" GaugeMin="0" GaugeMax="3000" ChartMin="0" ChartMax="3000" ScalingFactor="1" Notes=""/>
<DataListItem DataLog="N" Color="" Display="2Byte RPM Mod 04/05" LogReference="RPMMUT2Byte" RequestID="04" RequestID2="05" Eval="1000*x/256" Unit="units" MetricEval="" MetricUnit="" ResponseBytes="1" GaugeMin="0" GaugeMax="8000" ChartMin="0" ChartMax="8000" ScalingFactor="0.1" Notes=""/>
What else do I need to add to my EVOScan XML for display purposes? (formulas???)
Here is what I have in my type 15 XML (entered values are listed in table name)
<table name="2-byte load high 27458" address="3EE86" category="MUT" type="1D" level="1" scaling="uint16" />
<table name="2-byte load low 27459" address="3EE8A" category="MUT" type="1D" level="1" scaling="uint16" />
<table name="2-byte Airflow High 27550" category="MUT" address="3EE8E" type="1D" level="1" scaling="uint16"/>
<table name="2-byte Airflow Low 27551" category="MUT" address="3EE92" type="1D" level="1" scaling="uint16"/>
<table name="2-byte RPM high 0x6B1E" address="3EE96" category="MUT" type="1D" level="1" scaling="Hex16" />
<table name="2-byte RPM low 0x6B1F" address="3EE9A" category="MUT" type="1D" level="1" scaling="Hex16" />
I have request:
00 and 01 for 2B-Load
02 and 03 for 2B-Airflow
04 and 05 for 2B-RPM
I've edited my EVOScan as well:
<DataListItem DataLog="N" Color="" Display="2-Byte Load Mod 00/01" LogReference="LoadMUT2Byte" RequestID="00" RequestID2="01" Eval="0.3125x" Unit="units" MetricEval="" MetricUnit="" ResponseBytes="1" GaugeMin="0" GaugeMax="500" ChartMin="0" ChartMax="500" ScalingFactor="1" Notes=""/>
<DataListItem DataLog="Y" Color="" Display="2-Byte AirFlow Mod 02/03" LogReference="AirFlow2Byte" RequestID="02" RequestID2="03" Eval="6.29x/64" Unit="Hz" MetricEval="" MetricUnit="" ResponseBytes="1" GaugeMin="0" GaugeMax="3000" ChartMin="0" ChartMax="3000" ScalingFactor="1" Notes=""/>
<DataListItem DataLog="N" Color="" Display="2Byte RPM Mod 04/05" LogReference="RPMMUT2Byte" RequestID="04" RequestID2="05" Eval="1000*x/256" Unit="units" MetricEval="" MetricUnit="" ResponseBytes="1" GaugeMin="0" GaugeMax="8000" ChartMin="0" ChartMax="8000" ScalingFactor="0.1" Notes=""/>
What else do I need to add to my EVOScan XML for display purposes? (formulas???)
Last edited by Jeff_Jeske; Oct 4, 2007 at 12:24 PM.
#38
Here's the code I am currently using and it works great:
Code:
<DataListItem DataLog="N" Color="" Display="RPM MUT 2Byte Mod" LogReference="RPMMUT2Byte" RequestID="02" RequestID2="03" Eval="31.25*x" Unit="units" MetricEval="" MetricUnit="" ResponseBytes="1" GaugeMin="0" GaugeMax="8" ChartMin="0" ChartMax="80" ScalingFactor="0.01" Notes=""/>
#39
Well, I found a small glitch than MIGHT cause a headache to anyone trying to get their evoscan to log the right values. As Dave mentioned already, you might need to change the evalution formula to 1000x/256. This doesn't work and the values come out screwy with evoscan unless its written as 1000*x/256. Without the asterisk, it doesn't complete the formula correctly. I also changed the scaling to mimic the standard RPM values on the graphs so the 2 byte rpm doesn't go wayyy off the charts as the rpm goes up.
Here's the code I am currently using and it works great:
Here's the code I am currently using and it works great:
Code:
<DataListItem DataLog="N" Color="" Display="RPM MUT 2Byte Mod" LogReference="RPMMUT2Byte" RequestID="02" RequestID2="03" Eval="31.25*x" Unit="units" MetricEval="" MetricUnit="" ResponseBytes="1" GaugeMin="0" GaugeMax="8" ChartMin="0" ChartMax="80" ScalingFactor="0.01" Notes=""/>
So what one is it?? In you post you talk about 1000*x/256, but then the code your currently using has it as 31.25*x??
#40
#41
Code:
<DataListItem DataLog="N" Color="" Display="RPM MUT 2Byte Mod" LogReference="RPMMUT2Byte" RequestID="02" RequestID2="03" Eval="1000*x/256" Unit="units" MetricEval="" MetricUnit="" ResponseBytes="1" GaugeMin="0" GaugeMax="8" ChartMin="0" ChartMax="80" ScalingFactor="0.01" Notes=""/>
Last edited by Jack_of_Trades; Oct 4, 2007 at 04:20 PM.
#42
Hey where do you guys post the <DataListItem Datalog. . . . script?
I modified my xml files for both ecuflash and evoscan 2.0 for the 2 byte RPM and Load mods, but when I try and log with them, I get erroneous values.
What else needs to be modified?
I modified my xml files for both ecuflash and evoscan 2.0 for the 2 byte RPM and Load mods, but when I try and log with them, I get erroneous values.
What else needs to be modified?
#44
I have changed the xml with the <table name = . . . values in both evoscan and ecuflash for my respective rom (13)
I also input the values in Ecuflash for 2byte rpm and load.
Where is the <DataListItem code need to be written?
My problem is that I am still getting rediculous values in the readings.
I also input the values in Ecuflash for 2byte rpm and load.
Where is the <DataListItem code need to be written?
My problem is that I am still getting rediculous values in the readings.