Subaru Outback Forums banner

FreeSSM - Complete access to your ECM and TCU

4 reading
1.4M views 1.1K replies 213 participants last post by  PCFIVEZ  
#1 · (Edited)
I have been seeing too many threads asking about what the best code scanner to use for their vehicle.
So far there has been no mention of FreeSSM. Edit that: Seabass and Watermelon have mentioned it.
Actually I am surprised as to how few people know about this.
I am inclined to change that right now, I want you all to know what I know. :29:
Got it? Good, lets continue.

This is an amazing piece of software that was written by some very talented people.
The software is open source and I spent a total of $18 on the cable.
Keep this 1 thing in mind, this is NOT an OBD II scan tool.
If you tried to use one of the many generic OBD II USB adapters out there with this software it will NOT work.
It uses the same protocols as the dealer Subaru Select Monitor, so you need an adapter that supports this. (read below)

"FreeSSM is a free and easy to use diagnostic and adjustment tool for SUBARU vehicles.
It provides access to the engine and transmission control units of the models Legacy/Liberty, Outback, Baja, Impreza, Forester and Tribeca (not before MY1999)."

Download:
BerliOS Developer: Project Summary - FreeSSM
Version 1.2.5 is the latest.

Abilities:
-Uses the same protocol as Subaru Select Monitor.
ECU communication consists of several layers. There are several SAE and ISO-norms, but manufacturers also make their own stuff.
FreeSSM accesses ECMs over a SUBARU-specific protocol (called SSM2), which is actually a modifed version of the ISO-14230-protocol (KWP2000).
On the lower layer, it's fully compatible with ISO-9142/14230.
For both the engine and transmission:
-Read and clear current and history codes, generic and manufacturer specific.
-View real time data from on-board sensors.
-Adjustments (the fun one) can make corrections in outputs.
-System tests, you can manually test different components.

Models supported:
The software supports the models Legacy®/Liberty®/Outback®/Baja®, Impreza® (incl. WRX + STi), Forester®, Exiga® and Tribeca® starting with model year 1999 up to model year 2009.
Model year 2010 is already supported, too, but some Measuring Blocks may be missing and some Diagnostic Codes may not be displayed as plaintext.
Vehicles up to model year 1998 as well as the models SVX®, Justy®, Libero® and Vivio® are not supported.
The model years 1999+2000 must be regarded as transition period. According to present obersvations (european models), access to the engine control unit of the models Legacy®/Liberty®/Outback®/Baja® is already possible since model year 1999, while most of the Impreza®-models and a few of the Foresters® are supported from model year 2000 on.
Transmission control units are not supported before model year 2000, in most cases support starts with model year 2001.
It is useful to take a look at the diagnostic connector: if pin 7 is available, at least the engine control unit should be available.
From model year 2001 on, both control units should be supported."

Data Trouble Codes:
79 / 539 / 32 (Non-OBD / OBD2 / CC)

Measuring Blocks:
222 / 172 (Data / Switches)

Adjustment Values:
3 / 18 (Engine / Transmission)

System Tests:
21 / 1 (Actuators / Others) (Engine Only)

What you need:
-A computer;
Laptop, desktop, Car PC whatever floats your boat. (Linux, Windows)
-An Adapter (see below)
-The software (linked above)
-A Subaru

What adapter works?:
The software works with all ISO-9141-2-/ISO-14230-1-compliant (K/L- and KK/L-) interfaces, that serve as simple voltage level converters ("Dump"-interface) or have a "pass-through"-mode.
The interface must be selectable through a serial port, which also includes USB-interfaces whose driver provides a virtual serial port (e.g. interfaces with FTDI-USB-chip).

This is a (incomplete) list of interfaces that should work with FreeSSM (no guarantee !):
- all interfaces that work with VW-Tool and VAG-COM up to version 311.3 (409)
- openPort-interface 1.2/1.3 (not 2.0 !)
- interfaces with AGV2055, AGV3000, AGV3001, AGV3100, AGV4000, AGV4500 chipset that provide a switch to activate the "transit mode" (e.g. OBD-Diag®-interfaces)
- "Jeff Noxons" interface (-design)
- "Andy Whitakkers" interface (-design)

Interfaces with ELM-chip (ELM320, ELM322, ELM323, ELM327) will not work, because they use a fixed AT-command-set which is not compatible with the SUBARU®-specific protocol.

The OpenPort 1.2/1.3 interfaces are actually ISO-9141/ISO-14230-pass-through-interfaces with minor extensions (serial status/handshaking lines are used for e.g. switching the program voltage).
______________________________________

With that being said, if you already have one of these adapters congratulations! If not you can decide which one you would like to get.
My recommendation: Vag-Com KKL 409.1 can be found for $18 on ebay from a U.S. seller.

Setup:
Ok I have the software and adaptor, how do I make it work?
-Plug in your cable, let your computer find the drivers automatically.
If not the cables usually come with a cd with the drivers, use this.
If not do some searching on the internet.
It really depends on which cable you get.
The VAG COM cable I purchased required no setup, plugged in, found, done. Works on XP, Vista and 7 I tested all these OS's.

-Install the software
On the main screen go to Preferences
On the drop down: Serial Port
Select which COM port your adapter is on
If you have no idea wth I am talking about:
On your keyboard hold the windows button and push Pause/Break
Click Device Manager
Select Ports (COM & LPT)
Your adapter should be listed here
Right click the adapter, select Properties
Under Port Settings, Advanced you can see which port it is on, you can change this to another # if you want.
This path may be different depending on which OS you use.

-Plug into the OBD II connector with the key on and "Test Diagnostic Interface" under Preferences.
If it all checks out you are good to go.

The Software:
Here are some screenshots from when I was using this software.

Click on either Engine or Transmission
Image


Preferences
Image


ECU Capabilities
Codes
Image


Here in the Measuring blocks you can click the + sign and select what parameters you want to view real time data from.
Select as many parameters as you want.
Image


Adjustments
Image


Functional Tests, you have to connect the green connector under the dash for this to work.
Image


TCU Capabilities
Codes
Image


Measuring Blocks
Image


Adjustments
If you look closely there is 1 parameter that I have changed.
Image

For those of you with automatics that report, binding or grinding while cornering at low speeds (parking lots, ect...)
I have successfully reduced the symptoms by adjusting the Transfer Duty Ratio Correction.
Note: Increasing this value for 04'+ does decrease the Transfer Duty Ratio %, my electrical monitoring testing verifies this.
03' and prior should be reversed, please perform your own testing to verify this.

If the vehicle looses power or the battery goes dead/disconnected all adjustment values will reset to default.

As you can see this is the ultimate tool for your Subaru.
Short of buying your own Subaru Select Monitor, this software will let you have nearly complete control of your own vehicle.
The automatic adjustments in particular can really let you fine tune everything. (IF you know what you're doing!)

Someone with a 2010 and 2011, and 2012, report back and let me know if it works for you.
I know it works at least up to 2008, but beyond that I do not know.

So there you have it, the best scanner for your Subaru available.
Have fun and enjoy your Subies. :D

Disclaimer: I will not be held responsible for any damages resulting from improper use of this software.
Know exactly what you are doing before attempting any adjustments or tests.
This is definitely not the place to "play" around with settings.
 
#1,128 ·
It's the compiled Windows version that I downloaded some time ago; not sure of the source, but it's available from quite a few sites according to a Google search.

However, I just downloaded the "February 17, 2014" Windows version from Release v1.2.5 · Comer352L/FreeSSM , and even it shows a 2010 date (see below). The home screen is identical to the one I posted above. What info is there under the "About" button in your version?


Image



I'm not really familiar with the github process, but would presume that anything that needs compiling to use, or is identified as "devel" not a formal/official release; more like a beta awaiting feedback.

I too would wonder if the uncompiled Linux version could be more advanced.
 
#1,129 · (Edited)
Heres what I've got.
Image


So more lines in the change log and presumably more recent but not any more date/time information. I did compile a debug version after running into the issue with it 'seeing' my cable but the only difference I noticed was a debug folder in the freessm folder now. Mine said devel & had the extra menu options before and after compiling the debug version.

Image


I'm guessing the github version is the most recent and the available pre-compiled versions are older (somebody did the compile on an older set of github source code and has the result available for download). And that the documentation upkeep hasn't been the highest priority for the author. I'll let you know what I find if I get back into windows to see what what happens. I think I just got the authors (current) main release version. Usually have to go poke around a little to end up with anything else. And I didnt find a compiled version for Linux in my usual places so I just grabbed the code and followed the read me and another walk thru to do it. But it was just feed a few commands to qt5 in terminal and wait for the results.

Do you plan on compiling your github download? It does'nt look to be too much different from the Linux process. I just don't do much in windows powershell (terminal).
 
#1,134 ·
I have been seeing too many threads asking about what the best code scanner to use for their vehicle.
So far there has been no mention of FreeSSM. Edit that: Seabass and Watermelon have mentioned it.
Actually I am surprised as to how few people know about this.
I am inclined to change that right now, I want you all to know what I know. :29:
Got it? Good, lets continue.

This is an amazing piece of software that was written by some very talented people.
The software is open source and I spent a total of $18 on the cable.
Keep this 1 thing in mind, this is NOT an OBD II scan tool.
If you tried to use one of the many generic OBD II USB adapters out there with this software it will NOT work.
It uses the same protocols as the dealer Subaru Select Monitor, so you need an adapter that supports this. (read below)

"FreeSSM is a free and easy to use diagnostic and adjustment tool for SUBARU vehicles.
It provides access to the engine and transmission control units of the models Legacy/Liberty, Outback, Baja, Impreza, Forester and Tribeca (not before MY1999)."

Download:
BerliOS Developer: Project Summary - FreeSSM
Version 1.2.5 is the latest.

Abilities:
-Uses the same protocol as Subaru Select Monitor.
ECU communication consists of several layers. There are several SAE and ISO-norms, but manufacturers also make their own stuff.
FreeSSM accesses ECMs over a SUBARU-specific protocol (called SSM2), which is actually a modifed version of the ISO-14230-protocol (KWP2000).
On the lower layer, it's fully compatible with ISO-9142/14230.
For both the engine and transmission:
-Read and clear current and history codes, generic and manufacturer specific.
-View real time data from on-board sensors.
-Adjustments (the fun one) can make corrections in outputs.
-System tests, you can manually test different components.

Models supported:
The software supports the models Legacy®/Liberty®/Outback®/Baja®, Impreza® (incl. WRX + STi), Forester®, Exiga® and Tribeca® starting with model year 1999 up to model year 2009.
Model year 2010 is already supported, too, but some Measuring Blocks may be missing and some Diagnostic Codes may not be displayed as plaintext.
Vehicles up to model year 1998 as well as the models SVX®, Justy®, Libero® and Vivio® are not supported.
The model years 1999+2000 must be regarded as transition period. According to present obersvations (european models), access to the engine control unit of the models Legacy®/Liberty®/Outback®/Baja® is already possible since model year 1999, while most of the Impreza®-models and a few of the Foresters® are supported from model year 2000 on.
Transmission control units are not supported before model year 2000, in most cases support starts with model year 2001.
It is useful to take a look at the diagnostic connector: if pin 7 is available, at least the engine control unit should be available.
From model year 2001 on, both control units should be supported."

Data Trouble Codes:
79 / 539 / 32 (Non-OBD / OBD2 / CC)

Measuring Blocks:
222 / 172 (Data / Switches)

Adjustment Values:
3 / 18 (Engine / Transmission)

System Tests:
21 / 1 (Actuators / Others) (Engine Only)

What you need:
-A computer;
Laptop, desktop, Car PC whatever floats your boat. (Linux, Windows)
-An Adapter (see below)
-The software (linked above)
-A Subaru

What adapter works?:
The software works with all ISO-9141-2-/ISO-14230-1-compliant (K/L- and KK/L-) interfaces, that serve as simple voltage level converters ("Dump"-interface) or have a "pass-through"-mode.
The interface must be selectable through a serial port, which also includes USB-interfaces whose driver provides a virtual serial port (e.g. interfaces with FTDI-USB-chip).

This is a (incomplete) list of interfaces that should work with FreeSSM (no guarantee !):
  • all interfaces that work with VW-Tool and VAG-COM up to version 311.3 (409)
  • openPort-interface 1.2/1.3 (not 2.0 !)
  • interfaces with AGV2055, AGV3000, AGV3001, AGV3100, AGV4000, AGV4500 chipset that provide a switch to activate the "transit mode" (e.g. OBD-Diag®-interfaces)
  • "Jeff Noxons" interface (-design)
  • "Andy Whitakkers" interface (-design)

Interfaces with ELM-chip (ELM320, ELM322, ELM323, ELM327) will not work, because they use a fixed AT-command-set which is not compatible with the SUBARU®-specific protocol.

The OpenPort 1.2/1.3 interfaces are actually ISO-9141/ISO-14230-pass-through-interfaces with minor extensions (serial status/handshaking lines are used for e.g. switching the program voltage).
__

With that being said, if you already have one of these adapters congratulations! If not you can decide which one you would like to get.
My recommendation: Vag-Com KKL 409.1 can be found for $18 on ebay from a U.S. seller.

Setup:
Ok I have the software and adaptor, how do I make it work?
-Plug in your cable, let your computer find the drivers automatically.
If not the cables usually come with a cd with the drivers, use this.
If not do some searching on the internet.
It really depends on which cable you get.
The VAG COM cable I purchased required no setup, plugged in, found, done. Works on XP, Vista and 7 I tested all these OS's.

-Install the software
On the main screen go to Preferences
On the drop down: Serial Port
Select which COM port your adapter is on
If you have no idea wth I am talking about:
On your keyboard hold the windows button and push Pause/Break
Click Device Manager
Select Ports (COM & LPT)
Your adapter should be listed here
Right click the adapter, select Properties
Under Port Settings, Advanced you can see which port it is on, you can change this to another # if you want.
This path may be different depending on which OS you use.

-Plug into the OBD II connector with the key on and "Test Diagnostic Interface" under Preferences.
If it all checks out you are good to go.

The Software:
Here are some screenshots from when I was using this software.

Click on either Engine or Transmission
Image


Preferences
Image


ECU Capabilities
Codes
Image


Here in the Measuring blocks you can click the + sign and select what parameters you want to view real time data from.
Select as many parameters as you want.
Image


Adjustments
Image


Functional Tests, you have to connect the green connector under the dash for this to work.
Image


TCU Capabilities
Codes
Image


Measuring Blocks
Image


Adjustments
If you look closely there is 1 parameter that I have changed.
Image

For those of you with automatics that report, binding or grinding while cornering at low speeds (parking lots, ect...)
I have successfully reduced the symptoms by adjusting the Transfer Duty Ratio Correction.
Note: Increasing this value for 04'+ does decrease the Transfer Duty Ratio %, my electrical monitoring testing verifies this.
03' and prior should be reversed, please perform your own testing to verify this.

If the vehicle looses power or the battery goes dead/disconnected all adjustment values will reset to default.

As you can see this is the ultimate tool for your Subaru.
Short of buying your own Subaru Select Monitor, this software will let you have nearly complete control of your own vehicle.
The automatic adjustments in particular can really let you fine tune everything. (IF you know what you're doing!)

Someone with a 2010 and 2011, and 2012, report back and let me know if it works for you.
I know it works at least up to 2008, but beyond that I do not know.

So there you have it, the best scanner for your Subaru available.
Have fun and enjoy your Subies. :D

Disclaimer: I will not be held responsible for any damages resulting from improper use of this software.
Know exactly what you are doing before attempting any adjustments or tests.
This is definitely not the place to "play" around with settings.
Hey ntippet, I'm needing to enable the wiper deicer feature (added it to my 07 legacy, didn't come stock). I've put in the switch, fuse, and relay. Can this software enable settings like this? Also, would a setting like this persist after a battery disconnect?