I did a write up for a local board's DIY section, trying to round people up and get an open source tuning community going. I figured it might be a good start for people on bigger forums like this too, that have heard about this stuff but don't know where to begin:
I wanted to throw together all the information I've found about open source ECU editing and flashing. I have the Tactrix cable and have saved my stock rom for safe keeping, and flashed my ECU with another rom. I'm just now getting into the editing part of the game. My hope is to get other locals that have the cable and software to come out of the shadows, and new people interested so we can all start sharing knowledge. The first step is knowing where to go to get the information you need, so here we go.
First things first, you need the Tactrix cable. Only this cable will work for flashing. Others can be used for logging, but that's it.
Besides a computer (preferably a laptop), that's all the hardware you need to get started. Next is the flash software. This is what allows you to copy the contents of the ECU down to the computer, and push new roms up to the ECU.
Note that to be able to write to the ECU, you have to make some connections under the dash. It varies by model but a good description can be found here.
Now that you have the ability to download and upload ECU images, you'll want to be able to edit them so you can make comparisons to see whatís being changed and why. There are many options available for editors. The current favorite seems to be Enginuity, most likely because it comes bundled with the most complete set of XML definitions (more on those in a bit), and is fairly user friendly.
There are others. ECUFlash (link above) has a built in map editor. There is also ECUEdit,
The editing software you decide to use comes down to personal preference. The bottom line with any of them is that you need the proper definition files for them to be able to read your specific ECU rom image correctly. Images are made of various tables of data, called maps. The locations for the maps in the raw hex file you download vary by ECU, and even by what revision of the same style ECU. In the early days of open source tuning, people (that are WAY beyond my knowledge level) were using hex editors to look at different roms and find pattern matches to determine where the tables lived. This was a very black art, but was made a bit easier when XMLWrite came along. XMLWrite is a piece of software that will look at a raw hex file and try to build a proper definition file for some of the tuning software packages out there.
So now you can download, edit, and upload. Thatís it, right? Not even close. The real trick to all of this is to tune your car to its optimum level without doing any long term damage. This is where real time logging comes in. You have to be able to tell how your car is doing out of the box to know what kind of changes to make. You also need to monitor the carís performance after you make your changes to be sure itís responding to them the way you think it should be. There are many logging options out there, but the favorite seems to be ECUExplorer.
Something like this should be used in conjunction with other monitors, such as a wideband O2 sensor (which Iím currently in the market for),
an EGT gauge, and so on.
What does the future hold? Nobody knows for sure, but it looks promising. From what Iíve heard, the software authors are looking to integrate wideband O2 inputs into the various logging software packages. Further down the road, there is talk of developing software for real time tuning. This would be the proverbial holy grail for the open source tuning community. The way I see it, as with any open source software, the best way to push forward is go get as many people involved as possible. I hope this article is a small step in that direction. Here is a listing of forum links to get you started.
So what are you waiting for? Join the community!