=== Mega Tunix === (in irc shorthand: "mtx")

This has been dropped. Not supported for years now.

Mega-Tunix is tuning software written for Linux and Mac that uses the GTK+2 libraries. It has been also compiled for Win32.

Configuration files

MegaTunix is highly configurable to support different firmware data-mappings.

Download [data-mapping for released firmware]. Needed for either MegaTunix/Linux or MegaTunix/Win (unless the "unzip and go" windows convenience zip is used).

Note that new 0.7.1 [megatunix (sourceforge project page)] has some fixes (in interrogation files) that helps VEMS. It might be much better than above data-mapping: I think Dave Andruczyk started from above configs (otherwise warmup enrichemnt will read/write other config variables, so you'll see if you watch). Please test and write your results here.

Useful with

GenBoard firmware running on GenBoard/VerThree or GenBoard/VerTwo with MSNS defined, but MS_COMPATIBILITY not defined in my_make (as it is in released firmware from GenBoard/UnderDevelopment/FirmwareChanges).

Useful for

Tune (3D or 2D)

through megatunix. Don't touch "Engine vitals" yet (unless you are testing mtx, than verify with LCD and/or mcd and mct what was changed), and don't even believe the readings on "Engine Vitals" screen. These parameters will not change after initially configured through config.txt and uploaded config.mtt.

Starting it up

Start it from a command window (eg. cmd from win)

Starting megatunix with standard-error redirected to a file is better than starting by clicking a megatunix.exe icon on the desktop, because you can see mtx.err (that has megatunix log) file (with a text editor, such as notepad). Logging can be made more verbose with selecting debugging options (eg. Serial read, Serial Write, interrogation) in "General". Especially useful

Other tweaks and notes - should not be needed

It works without MSNS in my_make (with minor tweaks in interrogation profile: remove CMD_UPPER_I=95 - this is the bytecount in the interrogator profile for I command) but it will not read nor write the spark table. Even if you don't compile your firmware yourself, you can check the my_make in the released directory.

If you try the firmware/doc/megatunix configuration from the CVS head (should not be needed, try the above easily downloadable zipped config directory), make sure to remove CVS/ directory from all subdirectories (not just the main directory, there is a CVS/ dir in all directories).

More info - Installation is platform specific

Both versions are still in Beta.

The original page can be found at It is very similar to the classical MegaTune from Eric Fahlgren that runs on Win32 only.

Communication protocol: MegaTunix/Protocol

Megatunix author: David Andruczyk

Developers - everything below this point

MegaTunix/ToDo - what's needed of MegaTunix to make it GenBoard compatible. both strategy and short term todo

Relatively Old News

Megatunix recognizes a Genboard. :)


What to do:

Take firmware/doc/megatunix/* and put it in ~/.MegaTunix/ (or the standard dir for the windows version) Leave out the CVS directories though, MegaTunix doesn't like them.

There is still work to be done. This does prove MegaTunix works with Genboard though. The 'S' command and '?' command should be completed sometime. The data in the tables should also be tested to be sure it updates the firmware memory correctly before you try tuning a car with this!

I think there's a LOT of optimization left with the Profile and Gui. Help Wanted so to speak. :)

Download the source with CVS:


setenv CVSROOT

cvs co MegaTunix
just run "./" as it does all that...

Q: Who is working on the datamaps for MTX so we can get a button and screens for MTX? I'm going to be home all day tomorrow and if anyone need me to help them just give me a holla on mIRC. I don't know much about programming or anythign but would love to help

There's a bug with the way that Megatunix does interrogation, and the 'v' command. Megatunix's interrogation of the genboard will only work if the current page happens to be 0 (either after a powercycle, or because it happened to be set that way). A quick fix to this, is to change Megatunix's interrogation tests to always reset the current page to 0. This is a huge hack, but it means you can keep using an existing Megatunix binary without running into the issue.

In MegaTunix's interrogation test file (e.g. /usr/local/share/MegaTunix/Interrogator?/tests) change the beggining of the file to:


cmd_desc=Reset ECU to page 0.

... and renumber all subsequent tests appropriately. A properly modified version of the tests file can be found here:

-- Alexander

Latest changes

We are experimenting with MegaTunix.

The log is very nice and useful, you just have to turn on log for serial reads and writes and check the stderr output.

Quick fix for kpa reading for nonstandard (not 250kPa) MAP sensors

Needed to get good mapkpa reading (correct moving-dot position) for sensors other than the standard 250kPa sensor. Eg. Marcell's kpafac=34 (52 decimal, that is 104 kPa / 5V) sensor:

Edit RealtimeMaps/Genboardv?3.rtv_map

Change the dl_conv_expr and ul_conv_expr in derived_17 section like this:


Note that "ul_conv_expr=x*0.403" will not work, so just edit the 403 that is proportional with your sensor range: bigger for higher than 104 kPa MAP sensor). This makes it possible to use other MAP sensors as well, not just 115kPa and 250kPa.