Diagnosing problems with MPI/EFI engines. Basics.

achris

More fish than mountain goat
Joined
May 19, 2004
Messages
27,468
First up...

With EFI/MPI engines, trying to find problems without the diagnostic software is a very, very difficult. And because so many problems display EXACTLY the same symptoms, 2 beeps every minute for example, trying to diagnose one engine based on what another one’s fault is, is a fool errand…Tacking onto someone else’s thread because you ‘have the exact same symptoms’ is unwise, and unhelpful, most likely you have a completely different cause.

Please, please start your own thread, always. And remember to give us, engine serial number, and if you know, which ECU you have (MEFI1, 2, 3, 4, ECM/PCM555 etc)...

I know most people don’t like reading multiple pages of facts and data, so I will make this as brief and ‘to the point’ as possible.

--------------------

Whether it’s a ‘no start’ issue or a run quality issue, there are a few basics with EFI/MPI engines.

Understanding the basics of how the system works and what affects what is a best place to start.

For any engine to run it requires a fuel/air mixture to be compressed and fired at the right time. In the old points/carb engines that was achieved with a fixed distributor and carb. Pretty simple, but horribly inefficient. With the advent of tighter emission rules, engines needed to become more efficient, hence more electronics became involved (this is a good thing, not bad!). As most mechanical people are ‘if I can’t see it moving, I don’t understand it’, with regards to electrics/electronics they tend to be a little ‘dear in the headlights’… So I will try to explain as simply as possible.

Ok, to start an EFI/MPI engine, you still need compression, and fuel/air, and a spark at the right time. But the fuel is injected directly into the manifold, electrically. That requires input from various sensors, so the engine control unit (ECU) can determine how much and when to inject. The timing and duration of the injection is based on the engine speed, from the crank sensor and/or the cam angle sensor (if fitted), and the engine temperature sensor (from the ECT, engine coolant temperature). If the engine is cold, more fuel gets injected (like a ‘choke’ on a carb). Some engines will also have an air flow sensor and that will also be factored into the fuel calculations. Fortunately, marine engines don’t have exhaust oxygen sensors, yet.

Many other sensors come into play once the engine is running. The MAP sensor senses the engine manifold pressure (vacuum) to determine the load on the engine. Some engines also run a MAT (manifold air temperature sensor) and that is also factored into the amount of fuel injected....

Within the ECU coding will be a value for the ‘idle’ position. This is based on the TPS (Throttle position sensor). If the TPS output is within the limits specified in the ECU, then the engine is assumed to be at idle. For idle, the ECU will control the revs, to the speed programed in as ‘idle’ by setting the amount of fuel injected based in the current engine speed, and adjusting the amount of air coming into the engine with the IAC (Idle Air Control) valve. Should the IAC fail, or the ECU can’t get the speed right with just IAC control, then the engine spark timing will be adjusted.

The amount of fuel (the duration the injector is fired for) is determined by the ECU internal ‘map’. It’s a 3D graph, and amounts to a lookup table. With x revs, y engine temperature and z load, I should inject for n milliseconds. That’s assessed almost every revolution of the engine, and adjusted accordingly.

Likewise the spark, from the crank angle sensor and the ECUs internal lookup table, the ECU determines when to fire the spark. Another function of the ECU is to advance the timing as much as possible to increase power and reduce fuel usage. The amount of advance is controlled by the ‘knock sensor’ on the side of the engine which detects spark knock. It’s usually a piezo device that generates a voltage in the presence of the right frequency, that of a detonation event. The ECU will continue to advance the timing, based again on its internal lookup tables, until it receives a signal from the knock sensor, then it will start to retard the spark timing to stop the knock. This will be the maximum point that the timing can be advanced before engine damage occurs. This can be effected by many things, including fuel quality.

Failures.

One of the functions of the ECU is to monitor all the sensors, obviously for values so the right amount of fuel can be injected and the spark fired at the right time, but also to monitor the health of those sensors.

Most sensors are now ‘3 wire’. The sensor has (usually) +5volts and ground (often NOT the same as engine ground), and the output is a value between 0 and 5 volts. This style of sensor is called a ‘voltage divider’. Within the ECU will be programmed acceptable values, and if the sensor input is outside those values, the ECU will report that the sensor is LOW or HIGH. Often the ECU will revert to a ‘default’ value so the engine will run and you can get home, usually with a reduced power output, or a lower rev limit, but not always… This is often called 'Guardian mode', or (incorrectly) 'Limp home' mode...

The other style of sensor is the ‘resistor’ type. Usually a 2 wire sensor, it is just a resistance value. ‘3 wire’ is more common now because of repeatability and reliability… It’s also easier internally to build an ECU that uses voltage, not resistance inputs.

Diagnostic software and code scanners….

Code readers do exactly what it says on the can, read codes. If the ECU has ‘set a code’, meaning it has found something out of spec, it will be displayed when the ECU is asked to report codes. But that is all the code reader can do. It can’t tell you exactly what each sensor is reporting, in real time. That is where the diagnostic software comes into its own. Loaded onto a laptop and plugged into the engine, it gives a real time read out of all the values the ECU is currently seeing. The software can also read the current, and historic, list of fault codes, and reset them.

While the code reader is useful, and the software far more useful, they may not tell you what is wrong, but they most definitely can tell you what isn’t wrong, and may even lead you towards what is wrong… And knowing what isn’t wrong goes a long way to finding a problem, especially with such a high level of electronics.

Just on the diagnostic software. For MerCruisers, a OBD-II reader will not work. Only Diacom from Rinda will work. It’s expensive, but after you use it the second time, it’s paid for itself.

I hope this helps…

Chris……….
(comments welcome)
 
Last edited:

Scott Danforth

Grumpy Vintage Moderator still playing with boats
Staff member
Joined
Jul 23, 2011
Messages
50,233
Chris, great write up

Couple of things to add

many of todays catalist motors do have an O2 sensor - one on each bank. Thus it is more complicated and needs diagnostic software and special training over the simple speed-density EFI from just 5 years ago

From an operational standpoint, EFI in an automotive world is easy.....its extremely predictable and there is no water in the exhaust

Marine EFI motors have to contend with wet exhaust. The whole voodoo of exhaust pulse wave fronts and water vapor reversion due to cam overlap and ignition timing at low engine speed is a balancing act. One hickup in the combustion event or water vapor traveling further due to a compromised flapper and that O2 sensor is murdered

MAP sensors in a marine engine live in a high humidity environment, which shortens their life. Bilge compartments in many boats are damp. Couple that with the fact the marine motor is always under load (unlike automotive engines) so the MAP pressure map is much flatter, so the sensor really needs to be able to differentiate extremely small changes

Then there is fuel system and associated lack of maintenance. Fuel in a car rarely ever sits for more than a few weeks. Yet fuel in a boat may sit for years. Fuel will start to break down after a period of time as the organic compounds breakdown, the resulting contaminants increases. While a carb is less prone to contaminated fuel than EFI, all fuel systems need to be well maintained and the fuel turned often (use the boat more)

yet another issue that marine motors have that is ever present is corrosion on connections. Battery cable connections and ground connections are common to have issues, however connections at sensors, ground busses, etc are also common. This area of maintenance is often overlooked by most novice boaters. All electrical connections need to be cleaned to shiny metal, then tightened and sealed. Marine electrical varnish or electrical grease to seal the connection. Sensors generally have a sealing boot or eastomeric seal. However the seal can fail.
 

achris

More fish than mountain goat
Joined
May 19, 2004
Messages
27,468
Couple of things to add...

many of todays catalist motors do have an O2 sensor - one on each bank.

.....

Sensors generally have a sealing boot or eastomeric seal. However the seal can fail.

Thanks Scott.

Wasn't aware of the O2 sensors in marine engine (The Australian market tends to lag the rest of the world a few years. :facepalm:). And everything else you said, yep... :thumb:

The point of the document is to help people with zero understanding take those baby-steps. :D
 

tpenfield

Moderator
Staff member
Joined
Jul 18, 2011
Messages
18,137
Chris,

This is great, particularly since we have seen an onslaught of EFI/MPI engine problems of the forums this year. Asking for Internet 'help' on these engines is only a starting point and more often than not goes nowhere.

Without 'seeing' what the engine computer (MEFI/ECU/PCM) is getting for sensor values and producing for outputs to the engine, you are really just guessing as to the problem and the probable cause/solution. It is too bad that the diagnostic software is so pricey, at least the one from Rinda/Diacom is. There is a version from OBD Diagnostics for about $200, but I am not sure how 'plug 'n play' it is vs. the Diacom.

Even with the software, I have found that you can get multiple 'trouble codes', even when there is a single sensor that is causing the problems.

A case in point:

Most recently, I was getting some 'surging' of my starboard engine at idle speeds. All by itself, the RPM would surge up from 600 RPM to about 1000-1200 RPM. Sometimes it would come back to 600, but not always. If I shut the engine off and re-started it would re-set itself, but soon start the surging again. The Diacom software indicated both a TPS code and a MAP code. I cleared the codes, yet the problem persisted. Upon re-checking for codes, there were no codes, yet the problem was still there.

So, based on what the Diacom was telling me I got a new TPS. Replaced it, calibrated it using the Diacom and problem went away. Of note, what I did not do was buy/replace spark plugs, coil, distributor cap, wires, fuel filters, IAC valve, pressure regulator, etc. all what would have cost $$$.

Instead I bought a TPS for $25. :thumb: I did buy a MAP sensor ($35), just in case I had further problems or error codes. So far so good.

I sure wish there was a less expensive 'data reader' for these MPI/EFI engines, as without the data, everyone is just guessing. Maybe someone will come out with an iPhone//Android App for these engines.
 

Scott Danforth

Grumpy Vintage Moderator still playing with boats
Staff member
Joined
Jul 23, 2011
Messages
50,233
The LS derivative motors (6.0, etc) that VP and others are using are some examples.
 

Scott Danforth

Grumpy Vintage Moderator still playing with boats
Staff member
Joined
Jul 23, 2011
Messages
50,233
Ted, great point on diagnosing correct problem ans spending $60 on parts vs many hundreds.

Part of the issue with diagnostic software is the ROI for development. For automotive, there are billions of cars and millions of users that want to plug in.... The boating industry is tens of thousands of efi boats and hundreds of people that want to plug in. So the cost is higher.....
 

Bt Doctur

Supreme Mariner
Joined
Aug 29, 2004
Messages
19,344
And to add a bit more sometimes the problem may not show itself with a code. It will have to be solved by the process of checking from A to Z .Looses wires, poor connections,corroded plugs .etc.
 

achris

More fish than mountain goat
Joined
May 19, 2004
Messages
27,468
And to add a bit more sometimes the problem may not show itself with a code. It will have to be solved by the process of checking from A to Z .Looses wires, poor connections,corroded plugs .etc.

Yep. That's why I said the diagnosis may not tell you what's wrong, but it will tell you what isn't wrong. .. :D
 

thumpar

Admiral
Joined
Jun 21, 2007
Messages
6,138
For basic code reading one MEFI 4 and earlier all you need is a 12v LED and piece of wire or paperclip. I have used this info and it does work. While it won't give any real sensor data it will tell you if there are any codes set.

DIY Code Reader

Materials needed:

One 12volt resistor type LED light - Standard LED nothing special make sure it is a 12 VOLT

One small paper clip cut in half

That’s it!

This home made code tool works every bit as well as the one I paid $50.00 for. It will work on most 1993 to 2000 marine EFI systems with the ten pin Data Link Connector. This includes MerCruiser, Volvo, Crusader, PCM, Indmar, and a few others.

How to hook it up:

1) Ignition key “OFF”

2) Remove the cap from the Data Link Connector (DLC)

3) Slide the LED into the female terminals of position E and F on the DLC, making sure that the positive side goes into terminal F and the negative side into terminal E. No damage will occur if you get it backwards, it just won't work.

4) Turn the ignition key to the “ON” position. The LED should come on steady.

5) Insert the half paper clip into terminals A and B – This puts the engine in “Service Mode” and codes will begin to flash on the LED. On 1996 and earlier engines you may hear the fuel pump come on. If not you should be able to hear the Idle Air Control (IAC) motor move. Use care in this step, do not insert in the wrong terminals or ECM damage could result! Look closely, the terminals are clearly marked.

6) Read codes by observing LED flashs. If the self diagnostic system is working it will flash code 12 – one flash, pause, two flashes, long pause – it will repeat three times. If other codes are present they will flash in order of lowest to highest. Continue to read codes until the code 12 sequence is repeated.

You can also be clear codes (by moving the throttle to 100% and back) and set base timing while in Service Mode.
 

tpenfield

Moderator
Staff member
Joined
Jul 18, 2011
Messages
18,137
Most of the issues we have seen lately, the code reader does not get people too far in solving the problem.
 
Top