This thread is for me and SeanK and anyone else that feels the need to discuss and develop a parser.
http://stuff.fredcooke.com/rpm.map.pw.pwagain.png
I took another log with genuine rpm and pw and and and in it and that is the result. I believe that the refpw and oempw are offset by 2 bytes from where you are reading. The values are always 1200 off exactly, that is final vs ref not ref vs oem.
The log to play with :
http://stuff.fredcooke.com/not.under.fr ... ompare.bin
When you get it reading right it will be really really useful. I'll email you my hacking :-)
Fred.
FreeEMS Binary Parser
FreeEMS Binary Parser
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
- SleepyKeys
- LQFP144 - On Top Of The Game
- Posts: 549
- Joined: Mon Feb 11, 2008 10:52 pm
- Location: Arizona
- Contact:
Re: FreeEMS Binary Parser
All data has been added to writeBufer(). All I should have to do are the conversions and check my datatypes( i just read everhthing as a word).
-sean
-sean
You snooze, you lose!
Re: FreeEMS Binary Parser
Will test asap, priority number 1 = tuning now :-) Drove 130 miles on it last night ;-)
Fred.
Fred.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
- SleepyKeys
- LQFP144 - On Top Of The Game
- Posts: 549
- Joined: Mon Feb 11, 2008 10:52 pm
- Location: Arizona
- Contact:
- SleepyKeys
- LQFP144 - On Top Of The Game
- Posts: 549
- Joined: Mon Feb 11, 2008 10:52 pm
- Location: Arizona
- Contact:
Re: FreeEMS Binary Parser
Here are my current conversions. If anyone has any input please let me know ASAP!
Thx,
Sean
Thx,
Sean
Code: Select all
/* get IAT */
retrievedValue = (getBufferWord(0) / 100) - 273.15;
writeString(retrievedValue,outputFile);
/* get CHT */
retrievedValue = (getBufferWord(2) / 100) - 273.15;
writeString(retrievedValue,outputFile);
/* get TPS */
retrievedValue = getBufferWord(4) / 640;
writeString(retrievedValue,outputFile);
/* get EGO */
retrievedValue = getBufferWord(6);
writeString(retrievedValue,outputFile);
/* get MAP */
retrievedValue = getBufferWord(8) / 100;
writeString(retrievedValue,outputFile);
/* get AAP */
retrievedValue = getBufferWord(10) / 100;
writeString(retrievedValue,outputFile);
/* get BRV */
retrievedValue = getBufferWord(12);
writeString(retrievedValue,outputFile);
/* get MAT */
retrievedValue = (getBufferWord(14) / 100) - 273.15;
writeString(retrievedValue,outputFile);
/* get EGO2 */
retrievedValue = getBufferWord(16);
writeString(retrievedValue,outputFile);
/* get IAP */
retrievedValue = getBufferWord(18) / 100;
writeString(retrievedValue,outputFile);
/* get MAF */
retrievedValue = getBufferWord(20);
writeString(retrievedValue,outputFile);
/* get DMAP */
retrievedValue = getBufferWord(22);
writeString(retrievedValue,outputFile);
/* get DTPS */
retrievedValue = getBufferWord(24);
writeString(retrievedValue,outputFile);
/* get RPM */
retrievedValue = getBufferWord(26) / 2;
writeString(retrievedValue,outputFile);
/* get DRPM */
retrievedValue = getBufferWord(28);
writeString(retrievedValue,outputFile);
/* get DDRPM */
retrievedValue = getBufferWord(30);
writeString(retrievedValue,outputFile);
/* get LoadMain */
retrievedValue = getBufferWord(32);
writeString(retrievedValue,outputFile);
/* get VEMain */
retrievedValue = getBufferWord(34);
writeString(retrievedValue,outputFile);
/* get Lambda */
retrievedValue = getBufferWord(36);
writeString(retrievedValue,outputFile);
/* get AirFlow */
retrievedValue = getBufferWord(38);
writeString(retrievedValue,outputFile);
/* get densityFuel */
retrievedValue = getBufferWord(40);
writeString(retrievedValue,outputFile);
/* get BasePW */
retrievedValue = getBufferWord(42);
writeString(retrievedValue,outputFile);
/* get IDT */
retrievedValue = getBufferWord(44);
writeString(retrievedValue,outputFile);
/* get ETE */
retrievedValue = getBufferWord(46);
writeString(retrievedValue,outputFile);
/* get TFCTotal */
retrievedValue = getBufferWord(48);
writeString(retrievedValue,outputFile);
/* get FinalPW */
retrievedValue = getBufferWord(50);
writeString(retrievedValue,outputFile);
/* get RefPW */
retrievedValue = getBufferWord(52);
writeString(retrievedValue,outputFile);
/* get sp1 */
retrievedValue = getBufferWord(54);
writeString(retrievedValue,outputFile);
/* get sp2 */
retrievedValue = getBufferWord(56);
writeString(retrievedValue,outputFile);
/* get sp3 */
retrievedValue = getBufferWord(58);
writeString(retrievedValue,outputFile);
/* get sp4 */
retrievedValue = getBufferWord(60);
writeString(retrievedValue,outputFile);
/* get sp5 */
retrievedValue = getBufferWord(62);
writeString(retrievedValue,outputFile);
/* get adc0 */
retrievedValue = getBufferWord(64);
writeString(retrievedValue,outputFile);
/* get adc1 */
retrievedValue = getBufferWord(66);
writeString(retrievedValue,outputFile);
/* get adc2 */
retrievedValue = getBufferWord(68);
writeString(retrievedValue,outputFile);
/* get adc3 */
retrievedValue = getBufferWord(70);
writeString(retrievedValue,outputFile);
/* get adc4 */
retrievedValue = getBufferWord(72);
writeString(retrievedValue,outputFile);
/* get adc5 */
retrievedValue = getBufferWord(73);
writeString(retrievedValue,outputFile);
/* get adc6 */
retrievedValue = getBufferWord(74);
writeString(retrievedValue,outputFile);
/* get adc7 */
retrievedValue = getBufferWord(76);
writeString(retrievedValue,outputFile);
/* get adc8 */
retrievedValue = getBufferWord(78);
writeString(retrievedValue,outputFile);
/* get adc9 */
retrievedValue = getBufferWord(80);
writeString(retrievedValue,outputFile);
/* get adc10 */
retrievedValue = getBufferWord(82);
writeString(retrievedValue,outputFile);
/* get adc12 */
retrievedValue = getBufferWord(84);
writeString(retrievedValue,outputFile);
/* get adc13 */
retrievedValue = getBufferWord(86);
writeString(retrievedValue,outputFile);
/* get adc14 */
retrievedValue = getBufferWord(88);
writeString(retrievedValue,outputFile);
/* get adc 15 */
retrievedValue = getBufferWord(90);
writeString(retrievedValue,outputFile);
You snooze, you lose!