Tag Archives: EcuFlash

Yet another color map for EcuFlash

Perhaps another color map for EcuFlash might be interesting? I wrote a little SageMath python script to generate a ScoobyRom-like color map file.

EcuFlash using ScoobyRom color map

EcuFlash using ScoobyRom color map

Note: Although generated color map matches ScoobyRom’s precisely, EcuFlash applies colors based on “min” and “max” specified in XML definitions.

Excerpt from EcuFlash definition file: 32BITDIESELBASE.xml

<scaling name="ChargeAirPressure" units="kPa" toexpr="x" frexpr="x" format="%.0f" min="0" max="255" inc="1" storagetype="uint8" endian="big"/>

Whereas ScoobyRom scales colors ranging from a map’s actually used mininum and maximum. For example, if you would change min="0" to min="100" in above scaling definition, low value colors would appear bluish like in ScoobyRom, effectively making map graphics cover more/most of available color range.


1) Download file scoobyrom-map.odt

2) Rename downloaded file to ScoobyRom.map, since normal file extension is not allowed on wordpress.com.

3) Move file into EcuFlash’s color maps folder, i.e.

C:\Program Files (x86)\OpenECU\EcuFlash\colormaps\

4) Launch or restart EcuFlash.

5) Via EcuFlash menu: File → Options → Appearance → Default Color Map
Select “ScoobyRom.map”
(Btw., default color map directory can also be defined in Options)

Color Map File Format

Color map format is plain text ASCII file, usually 256 lines as in this case, specifying RGB values which will be applied to maps, from low to high:

153 153 255
153 154 255
153 156 255
152 157 255
255 110 103
255 107 102
255 105 102
255 102 102



Tactrix OpenPort 2.0 interface hardware ONLY!

For your convenience, we’ve compiled the small CAN sniffing source code that comes with EcuFlash, source code untouched.
Look for \Program Files\OpenECU\EcuFlash\samples\canlogger\
You can also use development software like Microsoft Visual Studio (C++), open up project file canlogger.vcproj and compile the Windows code for yourself. Free/trial compiler versions usually are sufficient.

It’s a small Windows EXE, to be run from command line, requires Tactrix J2534 driver which is automatically installed by EcuFlash.

Follow link to download canlogger.zip containing the 76 KiB executable.

SHA1 checksum of our binary:
ac72fb26cb01b9554d1e7a00639a010d50b84266 canlogger.exe

Launching the EXE without arguments prints usage info:

logs (sniffs) CAN data.

canlogger [logfile] {switches}

[outfile] log file to write
/b [baudrate] CAN baud rate to use (500000 is the default)
/p {can,iso15765} protocol to use (can (default) passes all IDs, iso15765 only looks at 0x07E0 and 0x07E8

Run and log/sniff all (raw) CAN traffic to file e.g.:

canlogger.exe canlogger.log

…is sufficient on Subaru as the tool uses proper defaults as if following arguments were given:
canlogger.exe canlogger.log /b 500000 /p can

You can start logging with ignition off (no messages at all) then turn ignition on in order to get everything on the high-speed bus. The tool will capture all messages till pressing a key. Modern vehicles tend to use roughly 1000 messages per second, expect long/big files.

In case of troubles check driver path \windows\system32\op20pt32.dll and matching registry HKEY_LOCAL_MACHINE\SOFTWARE\PassThruSupport.04.04\Tactrix Inc. - OpenPort 2.0 J2534 ISO/CAN/VPW/PWM.

Created file (canlogger.log, text format) looks like this:

[611212235] 00 00 04 10 00 00 00 00 00 00 00 01
[611212477] 00 00 05 14 00 00 70 00 28 8B 0F 80
[611212727] 00 00 06 20 30 00 00 00 00 00 00 00
[611214178] 00 00 00 02 0C 80 62 00 00 00 00 01
[611214423] 00 00 04 11 00 FF BF 00 00 25 00 00

Format is made up by device timestamp [microseconds] followed by message bytes of which first four bytes make up CAN-ID.
Example line:
[611212477] 00 00 05 14 00 00 70 00 28 8B 0F 80

  1. Timestamp (simple counter, no actual date/time): 611212477 µs
  2. CAN-ID: 0x514
  3. Message payload content (always 8 bytes): 00 00 70 00 28 8B 0F 80

Ok now please send us some (zipped) CAN logs!
We’re especially interested in Euro5 Impreza Diesel data, other models including petrol are welcome, too.
AFAIK there’s no sensitive content like VIN or key codes on the (high-speed) bus – nothing to worry about.