A brief summary of the situation

List of all main reasons, why N43/N53 starts to shiver:

Rough run. Summary

How to handle the situation, when N43/N53 has started to shiver. If 30EA error is recorded, or error messages related NOx sensor are stored – please read corresponding blog entries.

The most ‘painful’ situation – error message 30E9 about NOx catalytic converter aging. For sure, the right (recommended by BMW AG) solution – replacement of NOx catalytic converter with new one. The problem – costs of this repair are high (2000 .. 3000 EUR). Alternative solution – installing of NOXEM. But, how to act, until NOXEM or new NOx catalytic converter is installed?

If there are no other issues, only error message 30E9, which don’t disappears (re-appears after some time) even after regeneration of catalytic converter and registering of ”new” catalytic converter, as described in the following topic: Encoding of new NOx catalytic converter

a) if you succeed to “catch” the error messages regarding fuel trim – delete them, delete adaptations, encode new NOx catalytic converter again (this will enable Stratified charge and normal operation of engine for some time), very accurately perform the new adaptation of engine;

b) after new adaptations are created, don’t use (if possible) the cruise control; just drive evenly, don’t try to keep the accelerator in one position (it will be harder for MSD80 to stay in area of unfavorable fuel mixture for 10+  seconds);

c) to put up with higher fuel consumption, regular need of deleting of error messages and performing new adaptations, save money for new NOx catalytic converter or install NOx sensor emulator NOXEM.

Remember – solution described above (steps a and b) doesn’t solve the problem and all symptoms (rough run, misfires, errors about fuel trim) will re-appear after some time.


If you succeed in solving problems with NOx system, but the engine is still shivering and and there are no error messages regarding fuel trim:

a) before you start battle with change of ignition coils – better start with their snubber installation, as described here:

Snubbers for ignition coils. Snubbers will protect ignition coils from over-voltage damage.

b) IGNORE in MSD80 recorded cylinder(s), which ISTA D Misfire detection test program shows as inadequate;

c) perform ISTA D Misfire detection test, NOT performing test for cold engine, DELETE engine’s misfire counters, DON’T delete the error messages;

d) if misfire (shivering) is detected also in idle run: start the engine in idle, try to wait for rough idle. If the misfire is observed for cold engine: cool down the engine, perform the Injector test for cold engine via ISTA D;

e) if misfire is detected in mid-high load range, drive on a smooth road* and try to provoke the shivering on maximally low RPM (1500 RPM would be perfect, not more). Attention – if the road was not smooth for even some little while, MSD80 will record faulty misfire data!

f) if you are an enthusiast, you can buy an ELM327 adapter (costs about 10 .. 20 EUR), install Touch Scan Free Trial version for 14 days to see the individual misfire counting for each cylinder.

When you “catch” the shivering, use ISTA D or Touch Scan to specify, which cylinder is a suspect by MSD80:

ISTA D – repeatedly performing misfire detection test program;

Touch Scan – checking the cylinder’s misfire data for actual session.

If the data (for example, misfire counters in Touch Scan) are not confident, the test session has to be repeated, but before the Misfire counter has to be deleted (ISTA D, section Misfire detection).

*On rough road MSD80 can identify faulty misfires and store fake 3104 error message! More about this read here.


What would I do, when more or less reliable data regarding not working cylinder are obtained.

1. check, if the injectors are registered. It means, write down on the sheet the data of injector correction groups, compare it to data registered by MSD80. It is interesting, that both INPA and ISTA D (after new data are recorded) are showing numbers different numbers – by one unit (very rare – by two units) less;

2. If the spark plugs have resource 30’000 and more – I would replace them. This engine has 2 types of NGK spark plugs available. Other producers don’t produce spark plugs for this engine type. BMW OEM spark plugs have logotype on the insulator, others – on the box;

3. Switch the ignition coils between cylinders – the one from suspicious cylinder and the one from cylinder aside, delete (critically) misfire counters in Misfire detection section, using ISTA D, repeat the driving session on even road. If the misfire counts are not deleted, new data regarding defective cylinder will not be interpreted correctly – MSD80 will try to push previously detected “guilty” cylinder as suspect also now.

4. if the problem persists – replace the ignition coil. Bosch would be the right choice. If the error message is still present – possibly, that there is a problem with injector. If the defect “goes to” injector, I would check offset long-term trims for bank, would check Rough run and Stoichiometric correction data via ISTA D or INPA (INPA loader 2.023 is required). If potentially “guilty” injector/bank is showing quite large deviations, I would assume, that the injector is defective – it’s leaking or has an incorrect beam due to fuel sediments/slag.  If suspicions will confirm, I would take out all injectors and give to clean them. If the cleaners of injectors would report, that the beam and/or  hermetical off state has not restored – only then I would replace the injector.

Note: in all tests ISTA D should communicate with the vehicle via DCAN 500 kbaud protocol! MSD80 should communicate also via kLINE 100 kbaud protocol, but large amount of functionality is limited (not available).

P.S. check the comment (BMW AG) for error message list for MSD87 regarding Rough run. Stratified charge:

BMW Rough run MSD80/87

Related entries:

Direct injection. Stratified charge

N43/N53 operation modes. Basics