Last Updated: 02/09/2018 @ 08:38 pm
Member Credit: Matt Riney
The latest and completed Kern 7055_35 is now available for flashing!
- Kernel 7055_35 is used by the early ecus 2002 & 2003 Maxima (and 2004 in most cases).
- Kernel 7058 is used for 05+ Maxima
- It’s all based on the ROM size. If the ROM size is 512K then you should use the 7055_35 kernel. If the ROM size is 1024K then you use the 7058 kernel.
In order to flash, you will need to purchase a OBD2 KKL VAG-COM 409.1 USB Cable. You can order from eBay.
The basic kernel is an implementation of an ISO14230-compliant protocol with extensions. It implements the following requests:
- Fast ROM dump (tested up to 5.4 kB/s; typical speed is ~100 B/s without a kernel)
- Read ROM/RAM/external EEPROM
- Write to RAM
- Erase flash ROM block
- Write flash ROM block
Below is quick walk through on installing and running rom raider, along with dumping a Nissan Sh7055 ECU with the Nisprog/Npkern software.
Links to software:
Npkern (Latest Version npk_7055_35.bin):
Links to Nissan Roms:
How Does the Reflash Process Work?
The process is carried out entirely over the OBD-II “K Line” serial communications link through an undocumented set of manufacturer-defined extensions to the standard ISO14230 protocol. Recently, the necessary commands have been reverse-engineered revealing the required steps:
- Establish connection to the ECU.
- Send the first stage data payload: this is the “kernel”, a simple program that will receive commands and data for the reflash.
- Make the ECU run the kernel. From this point on, the kernel runs from RAM and effectively takes control of the whole ECU.
- Send the reflash commands and new firmware data to the kernel.
- Reset the ECU: the new firmware will now be executed, and the kernel will be completely removed.
The basic reflashing kernel will support gasoline ECUs with:
- SH7055 or SH7058, 0.18um microcontrollers (the most common types)
- K line wired to the OBD-II connector pin 7
Unfortunately CAN-only ECUs are not currently supported.
- OS: Linux and Windows are known to work; Nisprog is based on freediag source code which is cross-platform and should run on most Linux/UNIX flavors.
- Connectivity: a simple USB-OBD adapter is required. These are the “Generic dumb serial adaptors” described in the freediag docs.
Note : J2534 devices are not currently supported by freediag.
There are several important points to be aware of when using Nisprog:
- The ECU is a safety-critical system in a car. Reflashing an ECU can void warranties, reduce the vehicle’s reliability, and cause a whole variety of undesirable consequences. Use of this project and any associated tools (freediag, Nisprog, etc) is of course entirely at the user’s risk. Standard disclaimers apply.
- Reflashing an ECU may be illegal in some areas. Responsibility in this matter lies again with the user.
- Diesel ECUs are not supported, they are entirely different.
- Tuning and modifying ROMs are complex skills that can only be acquired through significant investments of time and effort!