Hey, I like that. It displays both roms that I have unlike the other definition files I have.
If this definition works with 20550011 and 20550010 as well as others, then shouldn't it have a more universal name?
No!!!!!!!! The 20550010 header will be different, note the difference in internalidhex and xmlid, also the addresses will differ between ROMs. You noticed during flashing that they are not compatible, that's why we are better with this naming scheme. Also information about car is different.
EDIT: Hmm, come to think of it, you actually have a very good idea there! We could create DSMBase.xml definition that has the unchanged parts like periphery bit, ecuid addresses and scalings defined, but these definitions could only contain maps that differ.
You need to Reset the ECU when flashing different images.
You should reset when flashing the same image also, but its not as important.(I think)
When flashing an image that has different RAM addresses(They all have different addresses so far), you will get bad values in stored items. Like your fuel trims will be -50000%. This will cause you to trip CEL codes and most likely make your car run badly.
You can reset the ECU by disconnecting the battery, then turn headlights on to drain power, and wait a few minutes. You can check if you have a successful reset by logging your Fuel Trims they should all be back to zero.
If you have a lot of stereo equipment(Like a Cap, or big Amp), it can take longer for power to drain.
Updated the FAQ, thanks to MadMan for the new DEFs.
Quote:
Originally Posted by draculia
Just a small update. On the way to work today I tripped the CEL. I haven't pulled the code yet to see what it is, but I didn't have any with the 20550010 rom.
Edit: Ok so I pulled the codes. I had them for the speed sensor, injectors, fuel pump, baro sensor, and knock sensor. I didn't have any of these last night when I test drove it. I cleared them, but they came right back. I ended up flashing back to the 2055010 rom, and no CEL.
Quote:
Originally Posted by _Madman_
That's bad
EDIT: Oh, but did you disconnected the battery for 15 or so minutes so that ECU clears all the memory? It's quite possible that the learned data is kept somewhere outside the CPU, and the new one doesn't match the old one.
No!!!!!!!! The 20550010 header will be different, note the difference in internalidhex and xmlid, also the addresses will differ between ROMs. You noticed during flashing that they are not compatible, that's why we are better with this naming scheme. Also information about car is different.
EDIT: Hmm, come to think of it, you actually have a very good idea there! We could create DSMBase.xml definition that has the unchanged parts like periphery bit, ecuid addresses and scalings defined, but these definitions could only contain maps that differ.
question... what about something similar to what the evo roms do. they have a base XML that has most of the info for the appropriate table (IE table name, category, 2D/3D, scaling, etc. etc.) and for each rom definition (90550001 or 96530006) that XML holds the rom specific info (IE table address, scaling address...) occasionally you find rom only tables in the individual XML like JSCbanks speed density patches. but that way as you find a table in one rom it can be added to the base "2Geclipse.xml" and that rom specific xml then when you find that corresponding table in another rom you just need to add the minimal info...... actually now that i think about it, it can be a pain in the but when someone decides to change table names around when they release a new version of ecu flash, or someone’s own custom xml and you loose half of your definitions and have to go and fix it all..... again.... either way i guess they would both have their ups and downs.....
edit: oops i didnt notice that you already mentioned that. my bad
A much easier and more effective way IMO to drain any residual charge from the battery is to unhook the negative cable then touch the negative cable to the positive cable. I have a capacitor and it always works instantly.
Any capacitance on the board bleeds off in seconds. Any additional capacitance in the car is isolated from most of the ECU by the MPI relay. Only the backup power input isn't and I've yet to see an issue from plugging or unplugging a ECU with the backup power being hot.
Draining the charge on a audio cap using the headlight is preferable to shorting the battery leads.
Ceddy, the definition files you uploaded still have the wrong RPM axis address for the Open Lood Load 1? section. For 20550010 using the address of "2ee66" as displayed in the .xml will show the correct rpm values. For the 2055011 definition the address "2e546" is what works. This is the same address that's used for the fuel maps, which is of the same y axis 14 element length.
I tried the new definitions on "edit" post #1 to no avail. I have a 98gsx and keep getting the def. error menu. Has the md346676 been done yet? Any suggestions?
Ceddy, the definition files you uploaded still have the wrong RPM axis address for the Open Lood Load 1? section. For 20550010 using the address of "2ee66" as displayed in the .xml will show the correct rpm values. For the 2055011 definition the address "2e546" is what works. This is the same address that's used for the fuel maps, which is of the same y axis 14 element length.
I haven't finished updating the DEFs yet. I'll add the Open Loop Load Axis, and should have a DEF for the 2364 soon.
While the axis you gave is probably has the correct values, it isn't the axis used for table look up for Open Loop Load. If you tried to rescale that axis it would rescale the Fuel Map axis not Open Loop Load axis.
The only way to find the correct axis is to go through the code and find where the table look up is done for that map. I'm marking all the maps that have their axis confirmed with an asterisk *.
I tried the new definitions on "edit" post #1 to no avail. I have a 98gsx and keep getting the def. error menu. Has the md346676 been done yet? Any suggestions?
The 2056-0010 has been done. But if you have a different revision it won't work.
If you check out location 0x21A with a hex-editor it will show the four byte ROM ID.
Should look like: 20 56 00 10
Once you know your ROM ID you can find out if a DEF has been done for it yet.
I would recommend you send your hex/bin file to ceddy if you havent already.
red
Built, july 97. I don't really know what i'm doing and just trying to grasp all this, what is the file I need to send? I can post a photo of the opened ecu if that helps.
My ecu is the same as the first one in post #97 with the exception of the bottom left corner of the biggest chip, mine has "6m3 I"
Last edited by rstchris; 07-12-2009 at 01:43 AM.
Reason: more info
Built, july 97. I don't really know what i'm doing and just trying to grasp all this, what is the file I need to send? I can post a photo of the opened ecu if that helps.
My ecu is the same as the first one in post #97 with the exception of the bottom left corner of the biggest chip, mine has "6m3 I"
Now assuming that you have the required hardware and software: Openport 2.0 cable with Mitsu flashport adapter, and ECUFlash, the main thing you need know is the ROM ID. There are two ways you can do this easily. One is to use any DEF file that Ceddy uploaded and check the ECU Internal ID #1 selection under the Misc section.
The other is to download a hex editor, and open the ROM that you download from the ECU. Once open there should be some section of the screen that shows the offset address. You want to look at offset 0x021a, it might show up differently depending on the editor that you use, but you want 21a preceded by a bunch of zeros. From that point if you read to the right for a total of 8 digits you will see the complete ROM ID.
I have included some example pics to show you what it might look like.
Once you find out your ID you just need to download the correct DEF file for it from post #1 and copy it to this directory if you installed ECUFlash in the default location: C:\Program Files\OpenECU\EcuFlash\rommetadata\mitsubishi\ecli pse\
Now if your ID is not listed in post one, then send the ROM to Ceddy.
OK, I have another question. Am I able to change the scaling definitions without messing anything else up. Specifically, the injector Latency values are kept in a uint8, but it will max out at 3.8something for whatever reason. If I change this to an uint16 I can use any value I want. I know this will increase memory usage ever so slightly, but it's not going to throw anyhting off is it?
OK, I have another question. Am I able to change the scaling definitions without messing anything else up. Specifically, the injector Latency values are kept in a uint8, but it will max out at 3.8something for whatever reason. If I change this to an uint16 I can use any value I want. I know this will increase memory usage ever so slightly, but it's not going to throw anyhting off is it?
No, the data size must be the same. uint8 = 1 byte, uint16 = 2 byte.
The only values you really have look look at on the Latency Table are 11.72v and 14.06v.
Hopefully your car will never be at 4.69 volts, so you don't have to worry about values maxing out down there.
This gets complicated because they use the word scaling for everything.
The scaling for individual items is a conversion from machine language to units we can understand.
When you rescale an axis you are usually increasing the upper item in the axis so you don't run off the map.
The only maps that are usually rescaled are the Ignition and Fuel Maps.
Yeah, I didn't think I'd run into instances where the injector voltage would be that low, but I wanted to ask incase I came across something similar on other maps. As always, thanks for the info Ceddy.
Now assuming that you have the required hardware and software: Openport 2.0 cable with Mitsu flashport adapter, and ECUFlash, the main thing you need know is the ROM ID. There are two ways you can do this easily. One is to use any DEF file that Ceddy uploaded and check the ECU Internal ID #1 selection under the Misc section.
The other is to download a hex editor, and open the ROM that you download from the ECU. Once open there should be some section of the screen that shows the offset address. You want to look at offset 0x021a, it might show up differently depending on the editor that you use, but you want 21a preceded by a bunch of zeros. From that point if you read to the right for a total of 8 digits you will see the complete ROM ID.
I have included some example pics to show you what it might look like.
Once you find out your ID you just need to download the correct DEF file for it from post #1 and copy it to this directory if you installed ECUFlash in the default location: C:\Program Files\OpenECU\EcuFlash\rommetadata\mitsubishi\ecli pse\
Now if your ID is not listed in post one, then send the ROM to Ceddy.
I do have openport/mitsu adpt. ecuflash. I saved both 98" files from post #1 with no luck. I'll start over with the instructions, btw, thank you. For a minute I was getting an error so I uninstalled every bit of the openport stuff and redownloaded and then just asked for def. once again. Internal ID is:F27C000A00C0
I do have openport/mitsu adpt. ecuflash. I saved both 98" files from post #1 with no luck. I'll start over with the instructions, btw, thank you. For a minute I was getting an error so I uninstalled every bit of the openport stuff and redownloaded and then just asked for def. once again. Internal ID is:F27C000A00C0
Internal ID should be 8 bytes and look like:
20550011,
20560010,
23640004,
etc.
If you click "Read From ECU" and Select "1996-1999 2nd Gen Evo 5/6"
Then save it.
You can mail it to me -> ceddy @ ceddy.us
I can tell you which ROM you have or if it corrupted or something.
Well i had flashed my ECU for about 4 times
It runs like stock with the 560cc injectors
Im still using stock Fuel and Ignition timing
Disabled Close Loop and the rear O2 sensor
Do i have to do the MAF scaling ? What difference will it make ?
Well i had flashed my ECU for about 4 times
It runs like stock with the 560cc injectors
Im still using stock Fuel and Ignition timing
Disabled Close Loop and the rear O2 sensor
Do i have to do the MAF scaling ? What difference will it make ?
If you have a non stock intake pipe it can throw the MAF readings off a little.
All the MAFs don't come perfectly adjusted from the factory either, they just turn the adjustment screw on the bottom of the MAF until it idles OK.
You want most of your adjustments done using Injector Size and Latency, then you can do fine adjustment using the MAF Scaling Table.
With everything adjusted properly your wideband readings should match the fuel map.
The EvoScan item "AFR Map" will tell you what the target AFR is, to compare to you wideband.
Getting everything adjusted perfectly in the beginning can be a pain, but it makes tuning everything else later on a lot easier.
I will have a major update to the 20550011 DEF done very soon. Lots of more items added.
What are the chances of seeing a def. for the 20560008 any time soon? I can offer motivation "caugh"$"caugh" or would it be wise to just invest in the appropriate ecu?
rstchris,
Since you are a 2056nnnn you could flash in the 20560010,
unplug the battery for 15 minutes
and then you can tune with the already define xml for 20560010
What are the chances of seeing a def. for the 20560008 any time soon? I can offer motivation "caugh"$"caugh" or would it be wise to just invest in the appropriate ecu?
You should be able to cross flash the 20550011. A ecu reset needs to be done after cross flashing.
No one has really tested this yet though.
The only real difference between the GST and GSX is the speed limiter , which can be switched off in the periphery bits.
I'll have a big update for the 20550011 very soon, 20+ more maps, knock control, and more.