Guide for working with Melco K-Line

Guide for working with Melco K-Line

Petrol Mitsubishi vehicles ECUs are usually divided not by their models, but their CPU types. Before starting to work, it’s necessary to define a CPU correctly to understand which tab in the bootloader needs to be used to read/write firmware. This is important because different CPUs imply different firmware sizes. Wrong choice could lead to incorrect reading.

There are no problems with more or less modern CAN ECUs. There aren’t that many of them, they are signed by car models in the bootloaders and are read/written via OBDII without additional connection.

However, the old K-Line ECUs can cause challenges. There are many more CPU types, which are hard to define instantly, and such ECUs require finding boot pin diagrams and connecting.

Let’s start with the boot pin

Boot pin is a special output to which a voltage is applied to put the unit into programming mode. In most cases, the bootpin can be found either directly in the diagnostic unit (rarely) or in a separate unit next to the OBD2 connector (often).

We believe that the best combo to work with old K-Line Mitsubishi (Melco) ECUs is an original J2534 Tactrix OpenPort and MMC Flasher. It is just a recommendation, not a strict requirement. The point is that OpenPort allows energizing the boot pin via the built-in AUX. MMC Flasher in turn has separate tabs for each CPU. Both features are very handy. But again, it is only a recommendation. Many people use a combo of Scanmatic 2 Pro and PCMflash.

If you do choose to work via PCMflash, please note that it doesn’t have CPU categorization [at the publication time], there is only one common K-line module that implies you know the precise firmware size. You can hope for the automatic Flash size identification, but there is no guarantee that it will be defined properly. The flasher sometimes makes mistakes (as reported on the forums). Some old Melco ECUs' firmwares do not even have checksums, by which the flasher could define if the dump had been read correctly.

In fact, there is a common module with auto-detection in MMC Flash, but the problems there are the same — there is a possibility of incorrect auto-detection, as a result of which a piece of firmware is read repeatedly, or, even worse, a part of the firmware is not read at all.

Therefore, the most reliable way to work with Melco K-line control units is to find out the exact model of the processor, then select the required module in the bootloader (required flash memory size) and then read/write the firmware in peace. Anything else is a rash risk.

How to identify the CPU type?

There are two options. The first one is trying to compare identification information obtained from the program to information from the Internet. Sometimes it works. But much depends on how common a particular software is (if there’s any mention of it on the Internet at all).

The second option to identify the CPU type is to open the ECU and look for a CPU label. That’s not hard to do, since the ECU isn’t sealed. Finding and reaching the ECU in the vehicle is much harder.

By the way, the removed unit can also be flashed «on the bench», if you want to and find the pinout for connection. Nowadays this method is of little relevance, since many modern original bootloaders have solutions for reading/writing by «socket» with bootpin.

The last two questions that may arise: what about checksums and immobilizer synchronization? Checksums and immo synchronization are present in almost all firmware of Melco K-Line units, except for very old cars. In any case, all licensed loaders can transfer synchronization and read CS without problems. There should be no problems with it, if you use original trustworthy equipment.