ROMRAIDER AND REFLASHING FAQ
BEFORE YOU GET STARTED
What is RomRaider?
RomRaider is open source software, developed by enthusiasts, which allows for tuning and data logging of Subaru ECUs without having to invest in expensive hardware and software. Best of all, RomRaider is free.
How does RomRaider allow me to tune?
You must first retrieve a copy of your ECU's image from your vehicle by using an additional program called EcuFlash (discussed below). A special cable, manufactured by Tactrix, is used to connect your laptop to the OBD-II port in your car (which is located below your steering wheel). Once a copy of your image (also known as a ROM) is downloaded from the vehicle's ECU to your computer, you can then use RomRaider to make tuning changes to this ROM. Once you’ve finished with your changes, you can then save a copy and transfer this edited image back to your vehicle's ECU in a process known as flashing. As long as you keep a back-up copy of your original image, you can revert back to it at any time. In addition to tuning, RomRaider also allows you to data log your Subaru to monitor the results and safety of your tune.
Does RomRaider only work with Subarus?
Currently, RomRaider only supports Subarus.
Which Subaru models are supported by RomRaider?
A list of current supported Subaru ROM revisions can be found here: SUPPORTED ECUS. RomRaider supports hundreds of different Subaru ROM revisions from all over the world.
When will I be able to tune my Audi/Mazda/Mitsubishi/Other car with RomRaider?
There is currently no support for any other ECU except for specific Subaru ECUs (see previous question). To add RomRaider support for your ECU, the following would need to be done:
- A method to read/write your ECU image from your car needs to be available or developed.
- Once an ECU image is available in unencrypted form, the image needs to be reverse engineered and a RomRaider map definition created.
Try checking your specific car's community forums first to see if anyone has made any progress on the above requirements.
What is everything I’ll need to start tuning my car?
You will need:
Note: Some of the links below require you to be a registered member of the site's forums in order to view the download
- The RomRaider software – always use the latest version available HERE.
- The latest RomRaider ECU definitions file (describes the location and format of data for different ROM revisions) – available HERE. The latest ECU definitions may be newer than what is included in the RomRaider download. It is important to apply the latest ECU definitions because bug fixes, additional ROM support, and new tables are often part of the updates.
- The latest RomRaider logger definitions file (similar to the ECU definitions except that these work with RomRaider's logger to define logging parameters) – available HERE. The latest logger definitions may be newer than what is included in the RomRaider download.
- RomRaider is written in Java, so you need to make sure your computer supports Java and that it is updated with the latest version software.
- EcuFlash software (to read and flash ROMs) – download the latest version, found HERE as well as the latest EcuFlash ECU definitions found HERE.
- A Tactrix OpenPort cable for Subarus (connects between your laptop and OBD-II port) - purchase HERE.
- A jumper block may be required for your Subaru to enable flashing. There are two versions, one for the 01/02 WRX and another for the 03-05 WRX. These can be purchased from Tactrix or they may be bundled as a package with the OpenPort cable for an additional $20. You can also buy these adaptors in a complete set at your local Subaru dealer (~$30 part number 24036AA010). You can also use a jumper wire on the flash block as well. Drive-by-wire Subarus (32-bit ECU) do NOT need the jumper block at all.
- A modern laptop with a USB port.
- Proper gauges are recommended when tuning. These include, but are not limited to, a boost gauge and a wideband oxygen sensor.
Which version of the Tactrix OpenPort cable do I need?
The OpenPort 2.0 is the latest version of the Tactrix cable. This new version of the cable supersedes all prior versions.
How is the OpenPort 2.0 different from prior versions of the cable?
The OP 2.0 supports all vehicles supported by the old versions plus offers a number of new features:
- The ability to read/flash Subaru CANbus ECUs (generally 08+ Impreza 2.5i/WRX/STi and 07+ Legacy/Outback 2.5i/GT, Forester 2.5/XT, Tribeca)
- The ability to read/flash Evo X (future feature with EcuFlash update)
- J2534 PassThru support as well as additional protocol support which could allow for independent developers to create software to read/flash/log vehicles other than Subarus and Mitsubishis.
- J2534 support will also allow users to potentially use other J2534 compliant software with the OP 2.0 such as OBD-II diagnostic software.
- Ability to log supported Innovate devices from the Innovate Motorsports 2.5mm stereo data bus (future feature with firmware update).
- Standalone data logging to microSD card allows you to log without a laptop (future feature with firmware update).
- Field upgradeable firmware allows users to update OP 2.0 firmware for new features.
- Detachable, widely available cable allows for cheap and easy replacement if damaged.
- RGB status LEDs
Is the OpenPort 2.0 backward compatible with existing software?
No. Because of the additional protocols and J2534 support, developers of existing applications, such as logging software, will have to add support for the OP 2.0. As of this writing, the official release of RomRaider does NOT support the OP 2.0, however, a test release does which can be found HERE.
How safe is reading, editing and flashing my ECU?
Remember, that RomRaider and the definitions file are currently in beta status. This means that the software is being tested to fix any bugs and problems that may arise. As such, it is recommended for advanced users. There have been quite a few successful flashes and tunes, but that doesn’t mean there won't be a bug, error or misrepresentation of data that might cause serious problems down the road for a user. Remember, this software is not a commercial product, with money set aside for R&D. It was created by a group of enthusiasts who work in their spare time, for free, on the project.
Even if you experience no bugs or errors, there are no safe guards in place to prevent you from making improper tuning changes resulting in a blown motor and/or unexpected behavior when driving.
What is the worse case scenario if something goes wrong?
The problems that have the potential to occur include, but are not limited to:
- An unreadable/unusable ECU.
- A blown motor and its subsequent damage.
- Unexpected behavior on the road or track that may cause injury or death to the user as well as others.
- Violation of local and/or federal laws due to the modification of the factory ECU.
DISCLAIMER: By using RomRaider and its ECU definitions file, either directly or indirectly, you agree to assume 100% of all risk and RomRaider's creators and contributors shall not be held responsible for any damages or injuries you may receive.
How can I limit the risk of something going wrong?
- Make sure your computer is running well, does not have a tendency to lock up or shut down, and is virus and spyware free. When flashing, make sure the laptop is plugged in and not just running on the battery. Turn off any power saving functions, especially those that shut down the hard drive, enter standby/hibernation or “speed step” the processor speed to a lower level (if possible). Close out all other programs except for EcuFlash before starting. Make sure any firewall software does not interfere with EcuFlash.
- Always use EcuFlash's "test write to ECU" before trying the actual flash especially when something has changed in your setup from a prior successful flash (new drivers, new software, new computer, etc.).
- Make sure your car’s battery, charging and electrical system is working properly.
- Make sure the OpenPort cable is securely connected and not in a position that can be yanked out easily.
- Always check for and use the latest version of RomRaider and EcuFlash, as well as the latest ECU definitions for both.
- Do not edit a table if you are not 100% sure what it does.
- Always keep a back-up copy of your original ROM in a safe place.
- When tuning, small changes each flash is better. Use RomRaider's logger to study the effects of the changes on your car. In addition, it is recommended that you have, at a minimum, a boost gauge and a wideband oxygen sensor.
- Do not flash your ROM if RomRaider gives you an error message that the “real value and byte value conversion expressions are invalid” or any "out of bounds" error. This means there is an error/corruption in the ECU definitions file. If this is the case, it can save the wrong values in that particular table, which may occur whether you specifically edited the table in question or not.
- After editing, save the ROM, close out RomRaider and then reopen RomRaider and your saved ROM. Make sure the changes were actually made. Also, triple check the values you edited to make sure they are exactly what you intended them to be.
- Do not rely solely on the table help text in RomRaider to tune your car as they are simply an overview of the function of the table and not a detailed explanation. Make sure that you understand the impact of changing the data in a particular table and how all your changes will interact with one another. Use the RomRaider forums to search for answers or ask questions about ECU logic.
- Tuning is not for beginners set out to experiment. Even seemingly small changes by a novice can result in a blown engine.
READING AND FLASHING YOUR ECU
How exactly do I download and flash my ROM image?
To read and flash a ROM, your Subaru needs to be placed in diagnostics mode known as test mode. This involves connecting the green test mode connectors under the dash on the driver's side (also an additional set of connectors on the passenger's side with some models). To flash, you must also use a jumper block for models with the 16-Bit ECU. A description of the process is found [[http://www.scoobypedia.co.uk/index.php/Knowledge/ConnectingToYourECU#toc4|HERE]. Note: CANbus models (generally 07+ Legacy/Outback/Forester/Tribeca and 08+ Imprezas) do NOT need to connect the green test mode connectors with the OpenPort 2.0 cable.
Once you are in test mode, connect your OpenPort cable to your OBD-II port and your computer. Then open EcuFlash and select "read from ecu" from the ECU menu. Do not turn on your ignition until prompted to do so. You will be presented with a list of read methods - choose the one that closest matches your vehicle (see the troubleshooting section below if you are not sure). When the next box pops up, turn your ignition on, immediately hit OK and the bar at the bottom of the window will indicate the progress of the download. Once complete, choose the "save rom as" option from the File menu and choose a name for your ROM (can be anything you want). Make sure, though, that the extension for your file is .hex (for example, my_stock_rom.hex ).
To flash (write), make sure you are in test mode (non-CAN models) and have installed the flash block connector (if applicable to your vehicle). Select the "Open rom" item from the file menu. Select the ROM you wish to flash to your ECU and once it's opened, select the "write to ecu" option from the ECU menu. You may also "test write to ecu" which doesn't actually flash the changes, but tests the process to make sure the flashing sequence works properly. Another option is "Compare to ecu" which will compare the currently opened ROM with the ROM on the ECU. The progress of the flash will be shown at the bottom of the window. Any errors that occur will be listed in the right pane.
When you are done with reading and flashing, you must disconnect the test mode connectors otherwise the car will be in limp-home mode.
Another guide to using EcuFlash can be found HERE.
I am having problems reading or flashing with EcuFlash. What should I do?
- Reading and flashing a Subaru ROM requires using an OpenPort (Tactrix) cable. No other cable will work for reading/flashing with EcuFlash.
- Reading and flashing require you to enter 'test mode' by connecting the green diagnostic connectors located above the driver's side foot well (non-CAN models only). Make sure your car is actually entering test mode. With the green diagnostics connectors connected and the OpenPort cable disconnected, you should get a flashing CEL and the radiator fans should cycle on and off (after a period of time) when the ignition is turned on. If not, your car may have an additional connection near the passenger’s side foot well that is disconnected. When reading and flashing begins, the radiator fans will remain off.
- Do not turn on your ignition until prompted by EcuFlash to do so and when you do, immediately hit 'OK', otherwise reading/flashing may fail (any moderate delay on your part can result in a failure). If you wait until the radiator fans begin to cycle, then you have waited to long. Note: The engine should NEVER be running when reading or flashing.
- Your Subaru may not be supported by EcuFlash. EcuFlash currently CANNOT read or flash the following Subarus:
- ANY 2001 and prior USDM Subaru, USDM 2002-2003 non-WRX models, USDM 2004 Impreza RS
- ANY 2000 and prior ADM/EDM/JDM Subaru, 2001-2002 (and some 2003) ADM/EDM/JDM non-WRX/STi models
- Note: You may still be able to data log some of the above vehicles with RomRaider, even though you cannot read or flash the ECU.
- When you select 'read from ecu' in EcuFlash (or the read icon), a list box will appear from which you must select the correct read method that corresponds to your vehicle. If the incorrect read method is chosen, the download will fail:
- EcuFlash version 1.38 and newer:
- 2004 Subaru DBW models STi/FXT/LGT/Baja - USDM 04 STi/FXT, USDM 03/04 Baja, ADM/EDM/JDM 03/04 Forester/Legacy (including non-DBW models with 32-bit ECU)
- 2005-2007 Subaru DBW models WRX/STi - USDM 2005-2007 STi, USDM 06-07 WRX, ADM/EDM/JDM 06-07 WRX/STi
- 2005-2006 Subaru DBW models FXT/OBXT/LGT/Baja - USDM/ADM/EDM/JDM 2005-2006 Forester/Outback/Legacy/Baja, USDM/ADM/EDM/JDM 05-07 Impreza 2.5RS/2.5i, USDM 2006 B9 Tribeca
- 2007+ Subaru CAN vehicles - USDM/ADM/EDM/JDM 2007+ Forester/Outback/Legacy/Tribeca, USDM/ADM/EDM/JDM 2008+ Impreza 2.5i/WRX/STi (Note: reading/flashing these ECUs is only possible with the OpenPort 2.0 cable. Prior versions of the OpenPort cable will not work).
- 2002-2003 Subaru USDM Impreza WRX - USDM 2002-2003 WRX
- 2004-2005 Subaru USDM Impreza WRX - USDM 04-05 WRX ONLY
- 2001-2005 Subaru non-USDM Impreza WRX/STi - ADM/EDM/JDM 2001-2005 WRX/STi
- The Tactrix (OpenPort) drivers may be conflicting with prior driver installs. For Windows, follow these instructions exactly as described, step-by-step:
- Make sure the OpenPort cable is NOT connected to your computer
- In Add/Remove Programs, uninstall all versions of EcuFlash and all drivers with OpenPort, Tactrix, or FTDI in the name.
- In program files, delete the OpenECU folder.
- Delete any EcuFlash shortcuts that you have on the desktop or elsewhere.
- Download and install the latest version of EcuFlash. For Vista users, right click the EcuFlash installer and select "run as admin".
- Plug the OpenPort cable into a USB port on your computer.
- When Windows asks to connect to windows update, select NO, then select "install the software automatically". This may occur twice before the driver install is finished.
- Ecutek, a commercial company, made a change to their flashing software in 2006 which "locks" out the ECU. If your ECU has a recent Ecutek tune, you will not be able to read or flash the ECU with EcuFlash. You must contact your local Ecutek dealer to remove the Ecutek tune and flash it back to stock in order to be able to use EcuFlash.
- Cobb, also a commercial company, began locking the ECU with their Accessport version 2 sometime during 2008 which will prevent you from reading or flashing your ECU with EcuFlash. You must unmarry the Accessport from the ECU in order to be able to use EcuFlash.
- Make sure the OpenPort cable is securely connected to both your car and the laptop.
- Do NOT use USB hubs, extension cables or converters with the OpenPort cable (plug it directly into one of your computer's USB ports).
- Make sure your car’s battery, charging and electrical system is up to snuff. When reading and flashing turn off all auxiliary devices that draw power from the battery - stereo equipment, climate control, interior lights, headlights, radar detectors, power inverters, etc.
- For flashing, the following models require a jumper block to be used (described earlier in this FAQ):
- USDM 2002-2005 WRX
- ADM/EDM/JDM 2001-2005 WRX/STi
REVISIONS AND DEFINITION FILES
What is the deal with all these different ROM revisions and why are they important?
Each model can have different ROM revisions, not only between various years, but also within each year. Each revision has its own ROM id also known as the calibration id (cal id), which is located in the data on the ROM itself. For example, one of the revisions for the USDM 02 WRX is the A4SGC00C. The ROM image on the ECU contains not only the tables that we would use for tuning in RomRaider (like target boost, for example), but also the programming logic that tells the ECU what to do with those values in operating the engine. This gives Subaru complete control when they want to change the functionality of the ECU. For example, Subaru might notice a trend of certain users experiencing detonation at a high rpm. They can then create a new image to fix the problem, which is given a newer calibration id (for example, A4SGD10C). All new cars on the assembly line will then receive this new calibration. Subaru will also send it out to dealers who can reflash customer’s cars that exhibit the problem. So, why is all this important? When the image is updated by Subaru with a new revision, data that we read and edit for tuning can get shifted around to different areas of the ROM. RomRaider uses an ECU definitions file that tells it exactly where the maps are located on the ROM for a particular revision. Subaru may also add, remove or change certain tables, especially in different model years and these changes must be accounted for in the definitions.
Tell me more about the ECU definitions file and what it does.
RomRaider comes bundled with an "ecu_defs.xml" file located in the main directory. This file, which is in XML format, contains the definitions necessary for RomRaider to translate the values from your downloaded ROM to values that you can understand, such as RPM and boost, and arrange them in tables representative of their particular function. In addition, the file tells RomRaider where on the ROM these maps are located. Because different revisions can have different maps and different locations for these maps, the XML file must reference your particular revision, or you will not be able to read it with RomRaider (you will receive the message “ECU Definition Not Found”).
How do I find out what revision my ROM is?
The only definitive way is to pull your ROM by using EcuFlash.
Can I find out by looking on the outside of the ECU on my Subaru?
The outside of the ECU will show the case id. This is the hardware id at the time your ECU was manufactured however it will not account for newer reflashes performed by the dealer (even those during pre-delivery) and therefore is not useful.
I’ve downloaded my ROM. How can I determine the ROM's revision id?
If your ROM is supported by RomRaider, then you can view the ROM id (aka cal id) below your file name when open in RomRaider. The cal ids for Subaru ROMs are always 8 characters long and alphanumeric (they begin with the letter “A” for turbo models). If your ROM is not supported, you can find it by viewing your file with a hex editor (the cal id is a hex string). The cal id for 16-Bit Subaru ECUs is located at 0x200. 32-bit Subaru ECUs have the id located at 0x2000 or 0x2004 for some CAN models (A description of the difference between 16-Bit and 32-bit ECUs is found later in this FAQ).
Is there a list of ROM revisions supported by the latest ECU definitions?
Yes. Check HERE.
RomRaider does not support my Subaru revision. What do I do?
First, make sure you have the latest ECU definition file. If it still isn't supported, then upload a copy of your ROM to the “ECU and Logger Definitions” sub-forum on the RomRaider site and if possible, it will be added to the next update of the definition file.
When requesting definitions, be sure to include the model, model year, trim, market (USDM, EDM, ADM, or JDM), and transmission type (MT or AT) in your post. Also, make sure you are posting up a stock, unmodified ROM. We do not allow professionally or commercially tuned maps to be uploaded to the site without the original tuner's permission. We also do not allow commercial ROMs (such as those from Cobb or Ecutek) to be uploaded which may contain the company's proprietary code. If you cannot upload your ROM but still would like support to be added for it, you can PM the ROM to merchgod at the RomRaider site. Note: Some commercial maps, such as those from XPT tuning, have changed the ROM id to better identify their work. RomRaider does not support the addition of commercial ROM ids to the definitions. In the case of XPT, they have modified RomRaider defs that support their maps available at their site.
So, as long as my revision is represented in the ECU definitions file, I’ll have complete control over every single map on the ECU?
No. There are literally hundreds of maps on the ECU. For example, some later model Subarus can have between 500-1000 2d and 3d tables and many more 1d parameters. These maps are not labeled or defined in the ROM in any way and there is no available Subaru reference to aid in reverse engineering. The process to analyze ECU logic and add support for new tables can be complex and time consuming. You should always download and install the latest ECU definitions to take advantage of the latest table/ECU support and bug fixes.
Where can I find the latest XML definition file?
The latest ECU definition file can be found HERE. The latest logger definitions (described in the logging section below), can be found HERE.
Why do I need to install the ECU and logger definitions? Doesn't the latest RomRaider download include the newest definitions?
Not necessarily. The definitions are updated independently of the software.
SUBARU ROM TERMINOLOGY AND FORMATS
What do the terms 16-Bit and 32-bit mean as it relates to Subaru ECUs?
Quite simply, some Subaru ECUs use a 16-Bit processor, whereas other, newer models use a 32-bit processor. It is important to differentiate between these two as they can have some noticeable differences in operation. Almost all of the 32-bit models have electronic throttle control, also known as drive-by-wire (DBW), whereas the 16-Bit models make use of the standard drive-by-cable (DBC) in which there a physical link between the throttle pedal and the throttle body.
Why are some 16-Bit ROMs 160kb in size, while others are 192kb?
The larger ROM includes a representation of ram inserted into the middle of the file. The actual contents of ram are not included, however. So which should you use? RomRaider and EcuFlash will work with either size ROM, so you don’t have to worry about it.
What about 32-bit ROMs? Some are 512kb in size, while others are 1mb.
Early 32-bit ROMs are 512kb in size, whereas later 32-bit ROMs are 1mb.
INTERACTION WITH COBB AND ECUTEK
What if my ECU already has an Ecutek custom tune, Cobb Protuner custom tune or a Cobb off-the-shelf Accessport map? How will they work with RomRaider and EcuFlash?
Sometime in 2006, Ecutek included a mandatory lock-out feature with their flashes, which prevents the reading or flashing of the ECU, except with Ecutek software by the commercial tuner. That completely prevents you from using RomRaider/EcuFlash to tune with. Your only option would be to have an Ecutek dealer flash the ECU back to stock.
Sometime in 2008, Cobb also began locking out the ECU after a firmware update to their Accessport version 2. This prevents you from reading/flashing the ROM with EcuFlash and possibly even logging with RomRaider. In order to use EcuFlash, you must unmarry the Accessport from the ECU. Even if you own an Accessport version 1, it is not recommended that you use EcuFlash/RomRaider to tune a Cobb ROM due to the way Cobb has setup up their real-time tuning.
So, where can I find a copy of a Cobb or Ecutek map to flash to my car?
The RomRaider team does not condone the copying and distributing of any tuner’s images and consider it to be stealing, whether it is a complete ROM download or transferring the "relevant" tuned data to a stock revision. As such, no tuner’s ROM (or screen shots of the tune) will be allowed on the RomRaider site without their authorization. Any user violating these rules will be banned.
Where can I find base maps to start out with?
There are a number of maps developed by open source tuners for different Subarus. Check out the RomRaider's "Base Maps" sub-forum for a number of base maps tuned by users. Make sure you review the map and the feedback from users as anyone can post these images and they are NOT guaranteed in any way. Also, a base map that works well on one car, may not work well on another car, even if they have the identical mods, due to factory production tolerances/maintenance issues and conditions unique to the car's locations such as temperature extremes, gas quality and ethanol content, altitude, etc. Make sure you understand how to data log and interpret the data to determine a safe tune, tweaking as necessary.
The following site also has a number of free base maps: XPT tuning (Note: This company also sells their own tuned maps). In addition, some professional tuners offer off-the-shelf or custom open source tunes.
Can I use an Accessport, DeltaDash cable or other OBD-II cable instead of the OpenPort cable to read/flash my ECU?
No, these cables will NOT work for reading or flashing. There is the possibility, however, that some cables may work for logging (if the proper drivers are available). Otherwise, for reading and flashing ROMs, the Tactrix OpenPort cable is required.
I'm having problems installing RomRaider with Windows Vista. What am I doing wrong?
Unzip and then right click the RomRaider installer and select "install as administrator".
Why do I get the error message "ECU Definition Not Found" when I try to open my ROM?
Typically this means that your ROM revision is not supported by RomRaider. Make sure you are using the latest ECU definitions which may be newer than those bundled with the latest RomRaider release.
If you have a stock, unmodified ROM, you can request that support for your ROM be added by posting a copy in the ECU and Logger Definitions sub-forum at the RomRaider site. If your ROM has been professionally tuned or you do not wish to have it viewed in public, you can PM the ROM to merchgod at the RomRaider site.
Why are the fonts of some of the table names italicized or red?
Italicized tables are tables that are above your currently set user level. Tables with a red font are debug mode tables.
What are user levels and debug mode tables?
User levels allow the user to change the ability to edit tables based on their skill level as a tuner. When first installed, RomRaider will default to the lowest setting (beginner), which disables saving and only allows viewing of tables above the beginner level. The tables with an italicized font are those tables above the user's current level. Tables in red font are only accessible by the debug level. Tables are set to debug mode because there is at least some question as to how their functionality fits entirely into ECU logic and/or some assumptions have been made as to the purpose or functionality of the table. As such, you should use extreme caution when attempting to tune debug tables. Regardless, just because a table is accessible at a lower user level, does not mean it is 100% tested and bug-free. To change your user level, select "User Level" from the View menu. In addition, in order to save changes to debug tables, you must have the "save changes made on tables in debug mode" option checked in RomRaider's settings (in the Edit Menu).
Why won't RomRaider save changes made to debug mode tables, even though my user level is set to the highest level?
In order to save changes to debug tables, you must also have the "save changes made on tables in debug mode" option checked in RomRaider's settings (in the Edit Menu).
Sometimes when I directly enter a value in some of the tables, either the value doesn't change or it changes to a value slightly different than the one I entered. Why?
This is a limitation of the Subaru ECU, not the RomRaider software. Some tables have less resolution than others, depending on how the values are stored and the range of values required. When you enter a value that cannot be represented exactly by the ECU, RomRaider automatically displays the closest value available that the ECU is able to represent. Sometimes this ends up being slightly greater or slightly less than your intended value and other times the current value is the closest representation of the number you entered. This issue may also be noticed when manually setting values and when using the increment buttons.
RomRaider won't let me increase or decrease a value beyond a certain range. Why?
RomRaider only allows the values which can be represented by the ECU. This range can vary depending on the table. Users can sometimes run into trouble when using other ROM editors that allow you to go beyond this range. When saving with these editors, however, the actual value saved to the ROM will be capped at the ECU's limit or may "roll over" to another value, causing the tune to be different than expected.
RomRaider is not allowing me to set or change any value for all or some of the tables. Why?
This issue can occur when you are running non-U.S. number formats in Windows (for example, using a comma for the decimal point rather than a period). You can fix this by changing to the U.S. numbers format in "Regional and Language Options" in the control panel.
I want to be able to view my ROM in metric units, such as bar and Celsius. How do I do this?
There are two definitions files available. RomRaider ships with the standard (imperial) units version, but a metric definition file is available separately for download. You can find both the standard and metric ECU definitions HERE.
Simply replace the current ecu_defs.xml file in RomRaider's main directory, with the XML file you wish to use. You may also use the "ECU Definition Manager" in the Edit menu to add and remove definition files.
How does the "ECU Definition Manager" work?
Found in the Edit menu, the ECU Definition Manager allows you to identify the definition files that RomRaider will consider when opening a ROM and also their priority. This allows you to select multiple definition files from anywhere on your hard drive and choose the order in which RomRaider will consider them. When opening a ROM, RomRaider will search the first definition file listed and if the ROM is not found there, it will move onto the next definition file on the list and so on. In addition, you can name your definition files whatever you like as long as they have the .xml extension. If you add two or more definition files to the list that have support for the same ROM revision, RomRaider will use the definitions from the file that is listed first. You can change the order of the files and therefore their priority by using the "move up" and "move down" buttons. The ECU Definition Manager CANNOT be used to update logger definitions.
Why do some of the values in RomRaider differ from other commercial tuning products?
There are a number of reasons why this might be the case:
- Data can be represented in a number of different units for the same value. For example, boost or atmospheric pressure can be presented in psi, bar or mmHg and as absolute or relative pressure. Other values can be represented as a multiplier or a percent change for the same data. The value displayed in RomRaider may be different for the simple reason as a difference in the type of units used.
- The number of decimal places used may also result in different values. It is important to remember that the ECU is often limited in what values it can represent. Extra decimal places does not necessarily mean that you have more control over that parameter as the ECU may not be able represent a value difference that small, depending on how that data is stored, its expected range of values and its conversion. In RomRaider, the definitions, for the most part, were created with this mind, giving the user the most control possible (where necessary) while making sure each digit is relevant.
- The tables you are comparing might be different. There are quite a few tables which have similar values but have different functions.
- The commercial software may be incorrect. Due to the complexities of these ECUs, even the commercial guys sometimes get things wrong.
- The definitions for your particular ROM and the values in question may be incorrect in RomRaider.
If you suspect that something is wrong in RomRaider, be sure to post about it in the "ECU definitions" sub-forum on the RomRaider site.
I've installed a new RomRaider or ECU definitions update and the newly added features are not present. Why?
This is often due to having an old shortcut on the desktop or in the start menu that is linked to an older version of RomRaider. Try uninstalling all versions of RomRaider and deleting all related shortcuts and start menu items. Then reinstall the latest RomRaider version and the latest ECU and logger definitions.
What is OpenECU software? Is this RomRaider?
The OpenECU "project" was unofficially started by a group of Subaru enthusiasts looking to tune their own cars. Colby Boles created the software (EcuFlash) to read and flash the ECU image and also founded the Tactrix company to design, manufacture and sell the OpenPort cable. Soon after this, development began on other software, such as RomRaider (created by Jared Gould and originally called Enginuity) and ecuExplorer (created by Calvin Cestari). OpenECU simply refers to the goal of keeping the software open source (programming code is available to the public) as well as free to its users. Learn more at the OpenECU forums.
SUBARU LOGGING WITH ROMRAIDER
What exactly is data logging and why is it important?
Logging allows you to monitor, real-time, a number of different data parameters used by the ECU in the management of the engine. This is important to track the impact that your tuning changes have on your motor. Logging is crucial to a safe and effective tune.
How does logging with RomRaider work?
RomRaider uses the Subaru Select Monitor (SSM) protocol for logging which is faster and has more capability than standard OBD-II logging. To use, simply connect the OpenPort cable to your OBD-II port and the laptop. Select "Launch Logger" from the Logger menu. Choose the correct COM port for your cable in the main logger screen and RomRaider will auto connect to the ECU. Then you can select the parameters you wish to monitor as well the displayed format - data, graph or dashboard.
Can you give me a step-by-step on how to log with RomRaider?
- Turn on your laptop.
- Connect the USB end of your OpenPort cable to the laptop and the other end of the cable to the OBD-II port on your car (underneath the steering wheel).
- Start RomRaider. Select Logger -> Launch Logger from the top menu.
- In the logger's Settings menu, make sure "Control File Logging with Defogger Switch" is selected.
- Turn the ignition key to on or start the vehicle.
- Choose the correct COM port for your OpenPort cable from the drop down box in the upper left hand corner of the logger.
- Select the parameters you wish to log in the left pane (the greater the number of parameters selected, the greater the sampling interval will be).
- When you wish to log to a file, turn on the defogger. When you wish to end writing to that file, turn off the defogger. Each on/off sequence of the defogger will generate a separate file.
I can't get the RomRaider logger to connect to my ECU. What's wrong?
- Make sure the drivers for the OpenPort cable are installed. Installing EcuFlash will install the drivers for the OpenPort cable.
- Try each of the COM ports in the logger's drop-down box. In Windows, you can determine the correct COM port by plugging in the OpenPort cable and looking under ports in the device manager.
- Try a different USB port on your computer.
- The ignition has to be ON or the engine running in order for the logger to connect to the ECU.
- Do NOT use USB hubs, extension cables or converters with the OpenPort cable (plug it directly into one of your computer's USB ports).
- Follow the steps for removing old drivers and reinstalling new drivers found in the EcuFlash troubleshooting section of this FAQ.
Should I update the logger definitions?
Yes. Always check for the latest logger definitions HERE which are often newer than what is supplied with the RomRaider download. Note: The logger definitions will not have any impact, either way, with connection issues, however.
While RomRaider's logger allows you log any Subaru that is SSM capable, the newer definitions also allow for logging "extended" parameters that not even a Subaru technician has access to. Because the extended parameters are ROM specific, your ROM must be supported by the logger definitions in order to log these parameters. The ROMs supported are typically the same as those supported by the current ECU definitions. It is important to the use the latest logger definitions, as additional extended parameters and ROM support are often added. A list of the supported extended parameters can be found on the logger definitions download page.
Can I log to a file?
Yes, select "Control File Logging with Defogger Switch" from the logger's settings menu. To start logging to file, press the car's defogger switch. To end logging to a file, press the defogger switch again. A new file will be created each time, allowing you to create separate files during each logging session. To change or view the location of the saved files, select "Log File Output Location" from the logger's settings menu.
Do I have to connect the green test mode connectors or flash block to log?
No. You should never be in test mode for logging. Test mode is for reading or flashing the ECU only.
Does RomRaider support aftermarket wideband O2 sensor logging?
RomRaider version 0.5.0b and up supports the following wbO2s:
- Innovate LC-1
- Innovate LM-1
- AEM UEGO - functionality for the AEM UEGO is currently spotty
Which parameters should I log? Should I log everything?
Logging takes a snapshot of each parameter's current value. The more parameters that are selected, the longer the interval between the sampling of each parameter. Therefore, you should limit logging to the absolute minimum number of specific items that will supply you with the information you require. Try the following if you are new to logging for a general picture of your tune:
- Engine Speed
- Ignition Total Timing
- Feedback Knock Correction* (extended parameter)
- Fine Learning Knock Correction* (extended parameter)
- Manifold Relative Pressure (Corrected)
- Boost Error* (extended parameter)
- Primary Wastegate Duty
- Throttle Opening Angle %
- CL/OL fueling* (extended parameter)
- A/F Correction #1
- A/F Learning #1
- Mass Airflow
- Engine Load (Direct)* (extended parameter)
- IAM (Ignition Advance Multiplier)* (extended parameter)
Note: if your ROM is not supported for the extended parameters above, then log 'Knock Correction Advance' and 'Engine Load (Calculated)' instead. If you're logging WOT runs only, then you do not necessarily need to log 'A/F Correction #1" as it is disabled in open loop (fueling).
This is just a general list to get you started. What you need to log depends on what you are trying to accomplish by logging. There are no "magical" set of parameters that, when selected, will give you (or an expert viewing your logs) a complete picture of all problems, issues and areas in need of attention for your tune. You need to focus on a particular area or issue and you need to do multiple logs under a variety of conditions depending on what you are trying to determine. The more parameters you log, the less resolution you will have and the less useful the data will be.
I'm trying to log boost but there are more than a few parameters for manifold pressure. Which do I choose?
Note: The ECU has no effective limit as far as storing manifold pressure. However, the ECU performs a narrowing conversion for the standard SSM parameters which results in these parameters having a limit in which higher values cannot be represented (the value will appear to be frozen at the limit during logging when manifold pressure exceeds the limit). Note: The following list assumes you are using the latest logger definitions and that your ECU is supported for extended parameters.
- 'Manifold Absolute Pressure' - this standard SSM parameter will read no higher than about 37 psia.
- 'Manifold Relative Pressure' - this standard SSM parameter is limited to about 18.4 psig regardless of atmospheric pressure.
- 'Manifold Relative Pressure (Corrected)' - This is a calculated parameter (still based on standard parameters) that is limited to about 22.3 psig at sea level. The actual limit will depend on the local atmospheric pressure (37psia - atmospheric pressure). For example, if atmospheric pressure is 13 psi, then this parameter would be limited to 24 psig (37psia - 13 psi = 24 psig).
- 'Manifold Absolute Pressure (Direct)*' or 'Manifold Absolute Pressure (4-byte)' - This extended parameter reads the manifold pressure value directly as used by the ECU. As such, it has no effective limit.
- 'Manifold Relative Sea Level Pressure (Direct)*' or Manifold Relative Sea Level Pressure (4-byte)' - This extended parameter also has no effective limit. It is not the actual relative pressure, however. This parameter assumes sea level atmospheric pressure (14.7 psi). Although this will not match actual relative pressure if local atmospheric pressure is different from 14.7 psi, it will match the standard units ECU definitions in relation to relative manifold pressure (ex. Target Boost).
- 'Manifold Relative Pressure (Direct)*' or Manifold Relative Pressure (4-byte)' - This extended parameter also has no effective limit. It is the actual relative pressure.
What exactly is the difference in the logger between standard parameters and extended parameters?
Subaru dealers use a diagnostic tool known as the Subaru Select Monitor (SSM) which takes advantage of a standardized protocol built-in these ECUs. This allows them to log a number of parameters (some which are not available via OBD-II) and at a faster rate. RomRaider's logger also takes advantage of the SSM protocol and allows you to log the same 'standard' SSM parameters specific to each Subaru ECU.
Extended parameters, however, are not available to the dealer. These are added separately to RomRaider's logger to allow users access to additional ECU parameters that may be useful when tuning (ex. feedback knock correction, IAM, engine load, boost error, etc). Since these must be defined manually for each ECU by analyzing a copy of the ROM, only those ROM revisions supported by the ECU definitions are also supported with extended parameters in the logger. Extended parameters are marked with an asterisk (*) at the end of the parameter's name to differentiate them from standard SSM parameters.
The extended parameters are not showing up in my list of parameters, even though my ECU is supposed to be supported for extended parameter in the logger definitions. Why?
Because extended parameters are unique to the ECU, you must be connected to the ECU with RomRaider's logger in order for the extended parameters to appear. That means you need to have the cable connected, the ignition on and RomRaider's logger open indicating that a connection has been made. If you still do not see extended parameters (indicated by the asterisk *), either you are not connected or your ECU is not supported by the logger and ECU definitions you have installed. Make sure you install the latest ECU and logger definitions.
How can I find out more about what these logging parameters mean?
A description for each extended logging parameter can be found HERE (near the end).
How can I view the saved log files?
Open them in any spreadsheet application that supports .csv files. Also check out Airboy's spreadsheet to graph log files HERE.
How do the profiles work?
Profiles allow you to save your list of currently selected parameters to avoid having to select the items individually every time. You can save as many profiles as you need and load them at any time. To load or saves profiles, select the appropriate item in the logger's File menu.
What does the log overlay do?
This actively highlights the current cell(s) in a particular table that the ECU is accessing while the engine is running. This is very useful for dyno tuning or for narrowing down a drivability problem in a road tune. To use, first open your ROM in RomRaider and open the table you wish tune. Check the "overlay log" box in the table's window. Open the logger and select the parameters that exactly match the row and column units for the table in question. The current cells that are essentially being accessed will now be highlighted real-time. Additionally, some tables allow for the current logged value to be displayed along with the table's value.
What are the MAF and Injector tabs in the logger for?
These RomRaider functions can be useful in tuning aftermarket intakes and injectors. The MAF tool allows for graphing of short-term and long-term A/F corrections by MAF voltage in closed loop. It can then use this data to suggest changes to the 'MAF Sensor Scaling' table and apply them to the ROM. A pdf guide, written by Dweeb, describing how to use the MAF tool, can be downloaded HERE. The injector tool allows for graphing of fuel per combustion event by injector pulse width to offer suggestions for injector flow scaling and latency.
Can RomRaider read CEL codes?
No, RomRaider cannot currently read CEL codes, although you can disable CELs (via a flash) when tuning with RomRaider.
What is ecuExplorer and do I need it?
EcuExplorer was the first open source logger for Subarus. It has not developed for a few years now and for most users, RomRaider's logger would be a better choice. However, there are a few features in ecuExplorer that are not available in RomRaider's:
- CEL code reader -> ecuExplorer has the ability to read CEL codes from some Subarus. However, this feature was never fully developed and it is not an OBD-II scanner. As such, it may display codes that are not set, codes that don't apply to the vehicle, or the incorrect code(s).
- Learned idle speed and ignition timing adjustments -> allows user to adjust target idle speed and overall ignition timing for applicable Subarus. These changes are volatile, meaning they will be lost when the battery is disconnected.
- ECU reset -> allows user to reset the ECU (this capability is also available in RomRaider test release v774 and up).
- ecuQuery -> allows user to read portions of the ECU's RAM to a file (useful for advanced users/developers only).
- EcuFlash -> has an older command-line version of EcuFlash which allows you to read/flash the 16-bit ECU only. This might be useful for those running older versions of Windows such as Win2k or Win98/ME that are not compatible with newer versions of EcuFlash.
ecuExplorer can be downloaded HERE.
I know nothing about tuning. It is safe for me to experiment on my own car?
No. Changes that seem small and insignificant to someone who doesn't know what they are doing can actually result in a blown motor or unpredictable behavior on the road. However, if you are willing to invest the time to learn the basics of tuning and engine management, then you can potentially tune with success.
Can't I just download and flash one of the available free staged maps and not worry about tuning?
Even assuming that the map is a good tune by a knowledgeable tuner and matches the mods you have, it cannot take into account the differences that may exist between individual vehicles, even those of the exact same model and year. These differences include the quality of the user's gasoline, factory production tolerances, mechanical/maintenance issues, variances in the design and performance of aftermarket parts, additional mods outside the scope of map and varying extremes in which the vehicle will be driven such as altitude and temperature. This is true of any off-the-shelf (OTS) map, even those that are commercially available. It is important to at least understand the basics of how to log your car to determine if the map has any potential issues.
Do any professional tuner shops use RomRaider?
Yes. More and more shops are using RomRaider as users are requesting an alternative to higher priced commercial solutions. A list of professional tuners using RomRaider can be found HERE.
Additionally, try contacting your local Subaru performance shops and ask if they tune with RomRaider even if they are not listed in the link above.
I'm not sure of the function of the some of tables that RomRaider lists for my ROM. How can I found out more?
Each table has a basic description available by clicking on View -> Table Properties on the table's menu bar. For more detailed information about a specific table, search or ask about the table on the RomRaider site.
Are additional gauges necessary if I am already logging my car?
They are recommended. The following can give you additional (or more accurate) information than logging alone or warn you of potential problems when you are not logging:
EGT gauge, boost gauge, wideband oxygen sensor, and a knock light.
Are there any additional tools or utilities outside of RomRaider that may be useful when tuning?
Yes, check out the following:
- Merchgod's Learning View, for Windows users, allow you to view select learned parameters of the ECU. It is available HERE.
- Airboy's spreadsheet for MS Excel allows you to import and graph log files. It can be found HERE.
- Mickeyd2005's spreadsheet for MS Excel to track knock and VE. It can be found HERE.
- Mickeyd2005's spreadsheet for MS Excel to scale Closed Loop MAF table and Injectors. It is available HERE.
Are there hacks such as launch control or speed density available with RomRaider for Subarus?
Currently, RomRaider does not support these types of hacks. However, there are some hacks that have been developed by others in the community outside of RomRaider:
- Launch control - Tinywrex has created patches for both the 16-bit and 32-bit Subaru ECU. Discussion about launch control can be found HERE. Note: As of this writing, Tinywrex's launch control patches for 16-bit ECU are free, while the patches for the 32-bit ECU are not.
- Speed density - Freon has created a speed density hack for the USDM 2004 STi. Information can be found HERE.
I want to learn more about tuning. Can you recommend where to start?
Here's a collection of useful links:
The following sites have specific information about RomRaider and other open source tuning solutions:
- www.romraider.com - Obviously the main source of information about RomRaider. Check out the "Tuning Discussion" forum for tuning help and "Base Maps" forum for base maps.
- www.osecuroms.org - You can find staged maps available to download (you must register first to view downloads). Also an active forum for tuning discussion.
- http://forums.openecu.org - The original forum for the OpenECU project. Broader scope covering EcuFlash as well as RomRaider and other tuning solutions for Subarus and Mitsubishis.
- www.scoobypedia.co.uk/index.php/Scoobypedia/Scoobypedia - This Wiki site has a number of How-Tos and FAQs relating to Subarus. Check out the "ECU" section.
The following are Subaru specific forums that may discuss RomRaider as well as other engine management solutions and also general tuning and modding:
- http://forums.nasioc.com/forums - Take a look at the "Engine Management and Tuning" forum and "Open Source Reflashes" sub-forum for discussion related to various forms of Subaru engine management, including RomRaider. One of, if not the largest Subaru forums on the planet.
- www.iwsti.com/forums - This site is primarily focused on the USDM STi. See the "ECU Tuning and Performance Electronics" forum for tuning assistance.
- www.clubwrx.net/forums - Dedicated to the WRX and STi. Check out the "Electronic Engine Management" forum.
- www.legacygt.com/? - Forums specific to the Legacy GT. Check out the "tuning" forum.
- www.subaruforester.org/vbulletin - A site dedicated to the Forester. Take a look at the "Turbo Tuning" forum.
Where can I found information about Subaru specific ECU logic?
Check out the 'ECU analysis' sub-forum at the RomRaider site which is dedicated to the discussion of ECU logic. The following stickies explain specific functions related to the Subaru ECU:
- Subaru's knock control strategy explained - LINK.
- Closed Loop to Open Loop fueling transition explained - LINK.
- Turbo dynamics and boost control explained - LINK.
Are there any recommended books about Engine Management?
- "Engine Management: Advance Tuning" by Greg Banish
- "How to Tune and Modify Engine Management Systems" by Jeff Hartman