The check engine light on your car’s dashboard is there to tell you when there is a problem with the engine. It’s normal for it to flash on and off once on engine start-up, but what does it mean if it stays on and the car won’t start?
As a general rule, if the check engine light is on and the car won’t start, this points to a problem with one of the following: the engine timing, inadequate fuel pressure, one or more faulty engine sensors, a blocked catalytic converter, or a problem with the engine ignition.
The best way to figure out why the check engine light is on, is to retrieve the engine error codes from the vehicle’s ECU using an OBD-II diagnostic tool. This will usually give you the error code that will point to the exact fault that is causing the car not to start.
Why is my check engine light on and my car won’t start (5 Common Causes)?
In general, if the check engine light is on and your car won’t start it can be caused by a problem with the battery, not enough air or fuel getting into the engine cylinders, or a faulty engine sensor such as a bad camshaft or bad crankshaft sensor.
Usually, if the check engine light is on then the problem is more serious than a flat battery. If the battery or charging system is at fault, the battery light will stay on and there may or may not be a check engine light. It’s still worth checking the battery voltage and battery connections to rule them out as possible causes.
Some modern vehicles develop electrical gremlins when the battery charge drops too low, and this can cause the check engine light to come on, but the engine should still start. The best way to diagnose the cause of a check engine light is to use an OBD-II code reader to see if there are engine error codes stored in the memory of the ECU.
Here is a list of the more common causes of a check engine light with a car that won’t start.
Cause 1. Bad Crankshaft or bad camshaft position sensor
One of the most common reasons for a check engine light and an engine that won’t start is a problem with the timing of the engine. The crankshaft and camshaft position sensors are there to help regulate the timing of the engine and the fuel delivery during the combustion cycle.
A lot of engines have more than one camshaft sensor, sometimes up to 4. They work by tracking the rotation of the camshaft reluctor ring and sending the ECU a signal each time the first cylinder intake valve is opening. This information is combined with the signal from the crankshaft sensor to give an accurate reading of the current engine timing. The ECU then uses this to initiate the fuel injection sequence of the injectors in each cylinder and to adjust the timing of the cylinder valves when necessary.
If the camshaft or crankshaft sensors are not working properly this can prevent the engine from starting. Some engines won’t start, as a safety precaution if these sensors are not providing signals within the expected range. This is to protect against a possible timing belt or timing chain failure.
There are many engine timing error codes related to bad crankshaft and camshaft position sensors. The most popular include P0340 Camshaft Position Sensor Malfunction and P0335 Crankshaft Position ‘A’ Circuit Malfunction.
Cause 2. Variable valve timing (VVT) solenoid failure
If the variable valve solenoids become blocked or fail completely, this can prevent the engine from starting and you’ll get the check engine light on the dashboard.
Variable valve timing solenoids are fitted to many modern engines. Their job is to adjust the position of the camshaft to improve the performance and fuel efficiency of the engine. Solenoids can fail in engines if the engine oil is consistently low, the wrong viscosity, or is not changed frequently enough. This can cause the solenoids to stick, resulting in camshafts that are too advanced in the timing cycle.
Symptoms of VVT solenoid failure include difficulty starting the engine, poor engine performance and power output, and poor fuel economy. Bad VVT solenoids will often advance the timing too much resulting in a spark plug that ignites too early in the combustion cycle. This results in a reduction in cylinder compression that will convert to a lower output in power. It can be difficult to start a cold engine if the compression is too low and the fuel is less vaporized.
Common engine error codes associated with bad VVT solenoids include P0420 and cylinder misfire codes such as P0301 to P0308.
Cause 3. Inadequate fuel pressure
Low fuel pressure is another common reason for the engine not to start and for the check engine light to come on. Modern engines need consistent fuel pressure that is usually between 40 and 70 Psi in petrol engines, and much higher on diesel engines.
A blockage or leak in the fuel delivery system is usually the primary cause of a lack of fuel pressure at the fuel rail. This will inhibit the amount of fuel reaching the combustion chambers and this will result in a number of common symptoms such as misfires, lack of power, rough idling and engine stalls.
Common causes of inadequate fuel pressure include a blocked fuel filter, a bad fuel pump, leaks in the fuel lines (especially at joints and connectors) and blocked fuel injectors. The check engine light will usually come on if the fuel pressure sensor detects low fuel pressure at the fuel rail and this will trigger the engine trouble code P0193, even if it is an intermittent fault.
Low fuel pressure or a lack of consistent fuel flow through the injectors will cause a misfire and this can trigger misfire related engine error codes such as P0300 to P0308 and lean/rich engine condition codes such as P0171 and P0172. If you see any of these codes with a check engine light and an engine that won’t start or struggled to stay running then you are likely dealing with a fuel delivery problem.
Cause 4. Bad Spark Plugs
Bad spark plugs that no longer generate a strong ignition spark or no spark at all, can trigger an engine misfire that will stop an engine from starting and illuminate the check engine light on the dash.
Spark plugs can go bad for many reasons. They can become contaminated with oil or excess fuel, they can become corroded or burned or fail mechanically due to an improper electrode gap or other external force that causes them to break. Whatever the cause, one or more bad spark plugs will leave your engine running rough if it manages to start at all.
If a spark plug is not generating a sufficient spark at exactly the right time in the combustion cycle, this will generally lead to a cylinder misfire. A misfire can result in a lack of compression and power output within the cylinder and can result in unburnt fuel leaking into the exhaust fumes.
Any one of these side effects of a spark plug that is no longer operating as it should, this will trigger the check engine light. If the engine is cold one or more bad spark plugs can stop an engine from turning over.
Bad spark plug engine error codes usually are related to engine misfires, so expect to see error codes such as P0300 to P0308 if you run a diagnostic on the engine.
Cause 5. A bad timing belt or timing chain
If the timing belt or timing chain has snapped, stretched, or skipped a tooth, then this can stop the engine from starting and the engine timing will be adversely affected.
A completely broken timing belt or timing chain will prevent an engine from starting. In fact, most timing belt breakages occur on engine startup, due to the large force needed to generate sufficient compression within the engine to keep it running.
Even if the timing belt or chain hasn’t completely broken, any stretching or adequate lack of tension will usually upset the timing enough to prevent the engine from starting. Issues with the timing will result in misfires and rich or lean engine conditions. This can cause a whole host of problems with the engine performance and power output.
If there are problems with the timing of the ignition and or the valves this will trigger the check engine light and result in a number of different engine error codes being stored in the ECU memory.
What next – Check engine light on and the car won’t start?
If you are trying unsuccessfully to start your car and the check engine light is flashing or staying on, then there is most likely a problem with the engine that will need further investigation.
The first step in resolving any issue involving the check engine light is to run a diagnostic readout of any engine error codes that may be stored in the ECU. The check engine light is always triggered by an engine sensor that is sending a signal that is outside the range that is expected by the ECU. This means that there will always be an error code stored, even if the check engine light goes off and the problem appears to resolve itself.
Here are a few initial steps you can take to help narrow down the cause of the check engine light and the reason your car won’t start.
- Run an engine diagnostic using an OBD-II scanner. A check engine light can nearly always be traced back to an engine error code. Start by retrieving any error codes that have been stored and see if they can be related to a particular problem with the engine such as fuel pressure or engine timing. Export or take note of the stored codes and then clear the ECU memeory. Try starting the engine again. If the engine starts it may point to a failing engine sensor such as a crankshaft or camshaft sensor, rather than a more serious problem such as a bad timing belt. Run the diagnostic again to see if any of the error codes have reappeared. If the engine is not running then move on to the next step.
- Check the fuel system for problems. Start by checking the fuel pressure at the fuel rail. More advanced diagnostic tools can usually allow you to check the fuel pressure in real time. If it is sufficient then the problem may be with the individual injectors. If the fuel pressure is low then this may point to a leak in the system or clogged fuel filter. If possible change the fuel filter and check any fuel line connections that are visible. If necessary, a pressure check of the system can be carried out by a professional with the right equipment. Fuel pumps can sometimes be the problem. A specific code P0230 may be present if there is a problem with the fuel pump. You may also hear a clicking or whining noise from the fuel pump if it is failing.
- Check the fuel injectors. Fuel injectors can become clogged or may start to leak if they are worn. Unless you have the right equipment they can be difficult to diagnose and fix. Fuel injector related error codes are usually related to engine misfires (P030x) or problems with the fuel mix (P0171 and P0174).
- Check the air filter and MAF sensor. A an old or badly clogged air filter can sometimes prevent an engine from starting. Replace the air filter and ensure there are no blockages in the air intake hoses or the entrance to the intake manifold. Carefully remove the MAF sensor and check that the wiring and connectors are not damaged. Check that the surface of the sensor is not damaged or is not contaminated with dirt. Clean with an aprropriate MAF cleaner if necessary.
- Check each spark plug and ignition coil. Badly contaminated or burnt spark plugs may prevent an engine from starting. Remove each ignition coil (or spark plug lead on older vehicles) and check the condition of the connector and electrode. Remove the spark plugs and check for oil or fuel deposits and any excessive carbon buildup or scorch marks. When reinstalling ensure that the ignition coils are tightly connected. If the ignition coil itself is faulty you may see an error code such as P0350.
- Replace any bad engine sensors. Sometimes a bad engine sensor will stop an engine from starting. If a sensor keeps showing up in the ECU memeory as faulty then try replacing it. It’s not uncommon for a bad camshaft or crankshaft sensor to stop an engine from starting. Most other engine sensors such as MAF and MAP sensors won’t prevent the engine from starting but will cause it to run badly .
If none of the above provide a solution to the problem then there may be an issue with the timing of the engine. This can be caused by a stretched timing belt or a bad timing belt tensioner or sometimes low oil pressure if the engine had a timing chain fitted.