gross polluter
They see me trollin'
- Joined
- Dec 10, 2008
- Location
- DM12
Try it and see if it works. Worse case scenario the hardware addressing is different and nothing works.
Hello Guest, welcome to the initial stages of our new platform!
You can find some additional information about where we are in the process of migrating the board and setting up our new software here
Thank you for being a part of our community!
Thank you for posting though, that adds to the big picture helping me further understand it and I appreciate it.No. The "rom version" is the last three digits of the number on the side of the ECU.
If your ECU part number is 0 280 000 9xx, you can use any 9xx software. 928, 926, 937, 967, anything in the 900's will work. It's all interchangeable.
Anyone with a 900 series ECU can load the software included in the package in the OP. It just happens to be the 93x series of software.
XDFs expect the parameters in them to be in exactly the same place every time. It happens that the 93x series of ECUs had their data in the exact same place across multiple versions.
If you try to open a BIN file that has it's data in different locations (for example a 928 or 967 BIN) the data will appear all mangled. TunerPro doesn't actually understand that the data is incorrect, it displays it anyway.
EDIT: nevermind, thanks gross polluter
If you try to open a BIN file that has it's data in different locations (for example a 928 or 967 BIN) the data will appear all mangled. TunerPro doesn't actually understand that the data is incorrect, it displays it anyway.
Beepee, is the TLAO chip(and thus, bin) you have for a 93x ecu, or just 9xx ecu?
I haven't personally taken a look at this yet, but do the XDF's provided thus far calculate the raw data into a user value, or is the data displayed a raw 8 bit (or 16 bit) value in Tuner Pro?
<XDFAXIS id="z">
<EMBEDDEDDATA mmedtypeflags="0x04" mmedaddress="0x3B4D" mmedelementsizebits="8" mmedrowcount="1" mmedcolcount="16" />
<units>rpm</units>
<decimalpl>2</decimalpl>
<min>0.000000</min>
<max>7500.000000</max>
<outputtype>2</outputtype>
<MATH equation="X">
<VAR id="X" />
</MATH>
<MATH row="1" col="1" equation="MROUND(60*EXP(0.0215834714*(A+B+C+D+E+F+G+H+I+J+K+L+M+N+O+X));25)">
<VAR id="A" type="address" address="0x3B5C" />
<VAR id="B" type="address" address="0x3B5B" />
<VAR id="C" type="address" address="0x3B5A" />
<VAR id="D" type="address" address="0x3B59" />
<VAR id="E" type="address" address="0x3B58" />
<VAR id="F" type="address" address="0x3B57" />
<VAR id="G" type="address" address="0x3B56" />
<VAR id="H" type="address" address="0x3B55" />
<VAR id="I" type="address" address="0x3B54" />
<VAR id="J" type="address" address="0x3B53" />
<VAR id="K" type="address" address="0x3B52" />
<VAR id="L" type="address" address="0x3B51" />
<VAR id="M" type="address" address="0x3B50" />
<VAR id="N" type="address" address="0x3B4F" />
<VAR id="O" type="address" address="0x3B4E" />
<VAR id="X" />
</MATH>
<MATH row="1" col="2" equation="MROUND(60*EXP(0.0215834714*(A+B+C+D+E+F+G+H+I+J+K+L+M+N+X));25)">
<VAR id="A" type="address" address="0x3B5C" />
<VAR id="B" type="address" address="0x3B5B" />
<VAR id="C" type="address" address="0x3B5A" />
<VAR id="D" type="address" address="0x3B59" />
<VAR id="E" type="address" address="0x3B58" />
<VAR id="F" type="address" address="0x3B57" />
<VAR id="G" type="address" address="0x3B56" />
<VAR id="H" type="address" address="0x3B55" />
<VAR id="I" type="address" address="0x3B54" />
<VAR id="J" type="address" address="0x3B53" />
<VAR id="K" type="address" address="0x3B52" />
<VAR id="L" type="address" address="0x3B51" />
<VAR id="M" type="address" address="0x3B50" />
<VAR id="N" type="address" address="0x3B4F" />
<VAR id="X" />
</MATH>
<MATH row="1" col="3" equation="MROUND(60*EXP(0.0215834714*(A+B+C+D+E+F+G+H+I+J+K+L+M+X));25)">
<VAR id="A" type="address" address="0x3B5C" />
<VAR id="B" type="address" address="0x3B5B" />
<VAR id="C" type="address" address="0x3B5A" />
<VAR id="D" type="address" address="0x3B59" />
<VAR id="E" type="address" address="0x3B58" />
<VAR id="F" type="address" address="0x3B57" />
<VAR id="G" type="address" address="0x3B56" />
<VAR id="H" type="address" address="0x3B55" />
<VAR id="I" type="address" address="0x3B54" />
<VAR id="J" type="address" address="0x3B53" />
<VAR id="K" type="address" address="0x3B52" />
<VAR id="L" type="address" address="0x3B51" />
<VAR id="M" type="address" address="0x3B50" />
<VAR id="X" />
</MATH>
<MATH row="1" col="4" equation="MROUND(60*EXP(0.0215834714*(A+B+C+D+E+F+G+H+I+J+K+L+X));25)">
<VAR id="A" type="address" address="0x3B5C" />
<VAR id="B" type="address" address="0x3B5B" />
<VAR id="C" type="address" address="0x3B5A" />
<VAR id="D" type="address" address="0x3B59" />
<VAR id="E" type="address" address="0x3B58" />
<VAR id="F" type="address" address="0x3B57" />
<VAR id="G" type="address" address="0x3B56" />
<VAR id="H" type="address" address="0x3B55" />
<VAR id="I" type="address" address="0x3B54" />
<VAR id="J" type="address" address="0x3B53" />
<VAR id="K" type="address" address="0x3B52" />
<VAR id="L" type="address" address="0x3B51" />
<VAR id="X" />
</MATH>
<MATH row="1" col="5" equation="MROUND(60*EXP(0.0215834714*(A+B+C+D+E+F+G+H+I+J+K+X));25)">
<VAR id="A" type="address" address="0x3B5C" />
<VAR id="B" type="address" address="0x3B5B" />
<VAR id="C" type="address" address="0x3B5A" />
<VAR id="D" type="address" address="0x3B59" />
<VAR id="E" type="address" address="0x3B58" />
<VAR id="F" type="address" address="0x3B57" />
<VAR id="G" type="address" address="0x3B56" />
<VAR id="H" type="address" address="0x3B55" />
<VAR id="I" type="address" address="0x3B54" />
<VAR id="J" type="address" address="0x3B53" />
<VAR id="K" type="address" address="0x3B52" />
<VAR id="X" />
</MATH>
<MATH row="1" col="6" equation="MROUND(60*EXP(0.0215834714*(A+B+C+D+E+F+G+H+I+J+X));25)">
<VAR id="A" type="address" address="0x3B5C" />
<VAR id="B" type="address" address="0x3B5B" />
<VAR id="C" type="address" address="0x3B5A" />
<VAR id="D" type="address" address="0x3B59" />
<VAR id="E" type="address" address="0x3B58" />
<VAR id="F" type="address" address="0x3B57" />
<VAR id="G" type="address" address="0x3B56" />
<VAR id="H" type="address" address="0x3B55" />
<VAR id="I" type="address" address="0x3B54" />
<VAR id="J" type="address" address="0x3B53" />
<VAR id="X" />
</MATH>
<MATH row="1" col="7" equation="MROUND(60*EXP(0.0215834714*(A+B+C+D+E+F+G+H+I+X));25)">
<VAR id="A" type="address" address="0x3B5C" />
<VAR id="B" type="address" address="0x3B5B" />
<VAR id="C" type="address" address="0x3B5A" />
<VAR id="D" type="address" address="0x3B59" />
<VAR id="E" type="address" address="0x3B58" />
<VAR id="F" type="address" address="0x3B57" />
<VAR id="G" type="address" address="0x3B56" />
<VAR id="H" type="address" address="0x3B55" />
<VAR id="I" type="address" address="0x3B54" />
<VAR id="X" />
</MATH>
<MATH row="1" col="8" equation="MROUND(60*EXP(0.0215834714*(A+B+C+D+E+F+G+H+X));25)">
<VAR id="A" type="address" address="0x3B5C" />
<VAR id="B" type="address" address="0x3B5B" />
<VAR id="C" type="address" address="0x3B5A" />
<VAR id="D" type="address" address="0x3B59" />
<VAR id="E" type="address" address="0x3B58" />
<VAR id="F" type="address" address="0x3B57" />
<VAR id="G" type="address" address="0x3B56" />
<VAR id="H" type="address" address="0x3B55" />
<VAR id="X" />
</MATH>
<MATH row="1" col="9" equation="MROUND(60*EXP(0.0215834714*(A+B+C+D+E+F+G+X));25)">
<VAR id="A" type="address" address="0x3B5C" />
<VAR id="B" type="address" address="0x3B5B" />
<VAR id="C" type="address" address="0x3B5A" />
<VAR id="D" type="address" address="0x3B59" />
<VAR id="E" type="address" address="0x3B58" />
<VAR id="F" type="address" address="0x3B57" />
<VAR id="G" type="address" address="0x3B56" />
<VAR id="X" />
</MATH>
<MATH row="1" col="10" equation="MROUND(60*EXP(0.0215834714*(A+B+C+D+E+F+X));25)">
<VAR id="A" type="address" address="0x3B5C" />
<VAR id="B" type="address" address="0x3B5B" />
<VAR id="C" type="address" address="0x3B5A" />
<VAR id="D" type="address" address="0x3B59" />
<VAR id="E" type="address" address="0x3B58" />
<VAR id="F" type="address" address="0x3B57" />
<VAR id="X" />
</MATH>
<MATH row="1" col="11" equation="MROUND(60*EXP(0.0215834714*(A+B+C+D+E+X));25)">
<VAR id="A" type="address" address="0x3B5C" />
<VAR id="B" type="address" address="0x3B5B" />
<VAR id="C" type="address" address="0x3B5A" />
<VAR id="D" type="address" address="0x3B59" />
<VAR id="E" type="address" address="0x3B58" />
<VAR id="X" />
</MATH>
<MATH row="1" col="12" equation="MROUND(60*EXP(0.0215834714*(A+B+C+D+X));25)">
<VAR id="A" type="address" address="0x3B5C" />
<VAR id="B" type="address" address="0x3B5B" />
<VAR id="C" type="address" address="0x3B5A" />
<VAR id="D" type="address" address="0x3B59" />
<VAR id="X" />
</MATH>
<MATH row="1" col="13" equation="MROUND(60*EXP(0.0215834714*(A+B+C+X));25)">
<VAR id="A" type="address" address="0x3B5C" />
<VAR id="B" type="address" address="0x3B5B" />
<VAR id="C" type="address" address="0x3B5A" />
<VAR id="X" />
</MATH>
<MATH row="1" col="14" equation="MROUND(60*EXP(0.0215834714*(A+B+X));25)">
<VAR id="A" type="address" address="0x3B5C" />
<VAR id="B" type="address" address="0x3B5B" />
<VAR id="X" />
</MATH>
<MATH row="1" col="15" equation="MROUND(60*EXP(0.0215834714*(A+X));25)">
<VAR id="A" type="address" address="0x3B5C" />
<VAR id="X" />
</MATH>
<MATH row="1" col="16" equation="MROUND(60*EXP(0.0215834714*X);25)">
<VAR id="X" />
</MATH>
</XDFAXIS>
Bummer about #3. In other ECU's I've played with all of the ADC's are 0-5v so I could feed the ecu with a wideband signal and modify the ASM to target 2.5v instead of cycle around .5v. In an ecu like LH 2.4 that applies fuel trims to open loop, this would have been a neat feature to try and implement.
I think I have an LH2.4 ecu laying around at the other house. Next time I'm down there I'll grab it and start taking a look at the hardware.
Correct me if i'm wrong, but I could just get the Ostrich, wideband and go, right? A chip burner isn't really necessary until and unless i want to actually make a chip out of my results. In the mean time, i could just run right off the Ostrich. Am I missing something?
I'd like to play, i've always been a fan of keeping LH. Seems like a good way to start learning EMS in general.
The TLAO chip is based on 93x software.
All 900 series software and ECUs are interchangeable. You can load a 927 bin on a 932, or vice versa. It works. There may be an odd version incompatibility, but the 93x software seems to work for everyone who's tried it, which includes everyone who has bought a chip from TLAO. That's why I picked the 93x software; it's already proven.
That out of the way, I don't want to talk about TLAO's chips anymore in this thread. Period. If you want a proven tune, send him a PM. If you have questions about how things are done in his chips, don't ask. It's his investment. If it's really bugging you that bad, buy em!
And if you DO get one of TLAO's chips and start openly spreading bits of it around, I would at the very least expect a followed by a
Btw, most 9xx ECU's will run any 9xx software but not all. There are exceptions minor exceptions. I don't remember now which doesn't work, but I've tried just out curiosity different bins and there were at least one bin that caused the cel to blink and some relay to click with no start, and one that fire up cel and set code 1-2-3 (bad temp signal) permanently.
I guess there are different ADC or I/O inputs on some versions which will cause funny things
About 93x - it is good to stick with one version, when it is completely known it could be mapped to both turbo and N/A, and both 8v and 16v
some of that info is already out in the wild, just an fyi.
Might we be better off then focusing on a 'newer' version? If a ton of time is already invested in 93x, that's fine, it's just a thought though. I need to go see what CEL I set on the 940 last night.
As much messing about as I do, I'm seriously considering adding a toggle switch to the standby power lead to the ECU. Having that damn light on all the time is annoying. Maybe setup a diagnostic lead/button/led in the cabin as well.
Does this work for the '960's as well?
If I want to use the 967 bin, I can run that in my 967 ECU. Sure you can run the 967 software in the 984 ECU, but susposedly the 984 software is better so you should be running the 984 software in the 967 ECU. This has to do with the LH2.4.4 flavoring I believe.