Operation CHARM: Car repair manuals for everyone.

Powertrain Control Software

POWERTRAIN CONTROL SOFTWARE

Adaptive Airflow
Some vehicles equipped with electronic throttle control (ETC) have an adaptive airflow strategy that allows the powertrain control module (PCM) to correct for changes in the airflow. During idle, the PCM monitors the throttle angle and air flow. If the air flow is determined to be less than expected, the PCM adjusts the throttle angle to compensate.

The PCM only learns the adaptive airflow when the vehicle is at idle and normal operating temperature and the airflow is less than a calibrated limit. Whenever the battery is disconnected or the keep alive memory (KAM) is reset, it is necessary for the PCM to learn the new value and not use the default value. For additional information on a KAM reset, refer to Diagnostic Methods, Resetting The Keep Alive Memory (KAM). Resetting The Keep Alive Memory (KAM)

Check Fuel Cap Indicator
The check fuel cap indicator is a communications network message sent by the PCM. The PCM sends the message to illuminate the lamp when the strategy determines there is a concern in the EVAP system due to the fuel filler cap or capless fuel tank filler pipe not being sealed correctly. This is detected by the inability to pull vacuum in the fuel tank after a fueling event.

Computer Controlled Shutdown
The PCM controls the PCM power relay when the ignition is turned to the ON or START position, by grounding the PCM relay control (PCMRC) circuit. After the ignition is turned to the OFF, ACC or LOCK position, the PCM stays powered up until the correct engine shutdown occurs.

The ignition switch position run (ISP-R) and the injector power monitor (INJPWRM) circuits provide the ignition state input to the PCM. Based on the ISP-R and INJPWRM signals the PCM determines when to power down the PCM power relay.

Deceleration Fuel Shut-Off (DFSO)
During a DFSO event the PCM disables the fuel injectors. A DFSO event occurs during closed-throttle, deceleration; similar to exiting a freeway. This strategy improves fuel economy, allows for increased rear heated oxygen sensor (HO2S) concern detection, and allows for misfire profile correction learning.

Engine Fluid Temperature Management
The engine fluid temperature management can be activated when high temperature or high load conditions take place. When the engine fluid temperature management is activated, the PCM sends a controller area network (CAN) message to the instrument cluster (IC). The IC then display a power reduced to lower temp message. The engine coolant temperature gauge needle moves toward the H (hot) zone. In order to manage the engine's fluid temperatures, the PCM starts to reduce engine power and vehicle speed. The air conditioning may cycle on and off to protect overheating of the engine.

Engine RPM And Vehicle Speed Limiter
The PCM disables some or all of the fuel injectors whenever an engine RPM or vehicle over speed condition is detected. The purpose of the engine RPM or vehicle speed limiter is to prevent damage to the powertrain. When the vehicle exhibits a rough running engine condition, the PCM stores one of the following continuous memory diagnostic trouble codes (DTCs): P0219, P0297, or P1270. Once the driver reduces the excessive speed, the engine returns to the normal operating mode. No repair is required. However, the technician should clear the DTCs and inform the customer of the reason for the DTC.

Excessive wheel slippage may be caused by sand, gravel, rain, mud, snow, ice, or excessive and sudden increase in RPM while in NEUTRAL or while driving.

Fail-Safe Cooling Strategy

NOTE: Not all vehicles with a cylinder head temperature (CHT) sensor have the fail-safe cooling strategy.

The fail-safe cooling strategy is only activated by the PCM when an overheating condition has been identified. This strategy provides engine temperature control when the cylinder head temperature exceeds certain limits. The cylinder head temperature is measured by the CHT sensor. For additional information about the CHT sensor, refer to Engine Control Components. Engine Control Components

A cooling system failure, such as low coolant or coolant loss, could cause an overheating condition. As a result, damage to major engine components could occur. Along with a CHT sensor, the fail-safe cooling strategy is used to prevent damage by allowing air cooling of the engine. This strategy allows the vehicle to be driven safely for a short time with some loss of performance when an overheat condition exists.

Engine temperature is controlled by alternating the number of disabled fuel injectors, allowing all cylinders to cool. When the fuel injectors are disabled, the respective cylinders work as air pumps, and this air is used to cool the cylinders. The more fuel injectors that are disabled, the cooler the engine runs, but the engine has less power.

A wide open throttle (WOT) delay is incorporated if the CHT is exceeded during WOT operation. At WOT, the injectors function for a limited amount of time allowing the customer to complete a passing maneuver.

Before injectors are disabled, the fail-safe cooling strategy alerts the customer to a cooling system problem by moving the instrument cluster temperature gauge to the hot zone and setting DTC P1285. Depending on the vehicle, other indicators such as an audible chime or warning lamp, can be used to alert the customer of fail-safe cooling. If overheating continues, the strategy begins to disable the fuel injectors, DTC P1299 is stored in the PCM memory, and a malfunction indicator lamp (MIL) illuminates. If the overheating condition continues and a critical temperature is reached, all fuel injectors are turned off and the engine is disabled.

Failure Mode Effects Management (FMEM)
The FMEM is an alternate system strategy in the PCM designed to maintain engine operation if one or more sensor inputs fail.

When a sensor input is determined to be out-of-limits by the PCM, an alternative strategy is initiated. The PCM substitutes a fixed value for the incorrect input and continues to monitor the suspect sensor input. If the suspect sensor begins to operate within limits, the PCM returns to the normal engine operational strategy.

All FMEM sensors display a sequence error message on the scan tool. The message may or may not be followed by key on engine off (KOEO) or continuous memory DTCs when attempting key on engine running (KOER) self-test mode.

Flash Electrically Erasable Programmable Read Only Memory (EEPROM)
The flash EEPROM is an integrated circuit within the PCM. This integrated circuit contains the software code required by the PCM to control the powertrain. One feature of the EEPROM is that it can be electrically erased and then reprogrammed through the data link connector (DLC) without removing the PCM from the vehicle.

Fuel Level Input (FLI)
The FLI is a communications network message. Most vehicle applications use a potentiometer type FLI sensor connected to a float in the fuel pump (FP) module to determine fuel level.

Fuel Trim

Short Term Fuel Trim
If the oxygen sensors are warmed up and the PCM determines the engine can operate near stoichiometric air/fuel ratio (14.7:1 for gasoline), the PCM enters closed loop fuel control mode. Since an oxygen sensor can only indicate rich or lean, the fuel control strategy continuously adjusts the desired air/fuel ratio between rich and lean causing the oxygen sensor to switch around the stoichiometric point. If the time between rich and lean switches are the same, then the system is actually operating at stoichiometric. The desired air/fuel control parameter is called short term fuel trim (SHRTFT1 and 2) where stoichiometric is represented by 0%. Richer (more fuel) is represented by a positive number and leaner (less fuel) is represented by a negative number. Normal operating range for short term fuel trim is between -25% and 25%. Some calibrations have time between switches and short term fuel trim excursions that are not equal. These unequal excursions run the system slightly lean or rich of stoichiometric. This practice is referred to as using bias. For example, the fuel system can be biased slightly rich during closed loop fuel to help reduce oxides of nitrogen (NOx).

Values for SHRTFT1 and 2 may change significantly on a scan tool as the engine is operated at different RPM and load points. This is because SHRTFT1 and 2 react to fuel delivery variability that changes as a function of engine RPM and load. Short term fuel trim values are not retained after the engine is turned off.

Long Term Fuel Trim
While the engine is operating in closed loop fuel control, the short term fuel trim corrections are learned by the PCM as long term fuel trim (LONGFT1 and 2) corrections. These corrections are stored in the keep alive memory (KAM) fuel trim tables. Fuel trim tables are based on engine speed and load and by bank for engines with 2 heated oxygen sensor (HO2S) forward of the catalyst. Learning the corrections in KAM improves both open loop and closed loop air/fuel ratio control. Advantages include:
- Short term fuel trim does not have to generate new corrections each time the engine goes into closed loop.
- Long term fuel trim corrections can be used both while in open loop and closed loop modes.

Long term fuel trim is represented as a percentage, similar to the short term fuel trim, however it is not a single parameter. A separate long term fuel trim value is used for each RPM/load point of engine operation. Long term fuel trim corrections may change depending on the operating conditions of the engine (RPM and load), ambient air temperature, and fuel quality (% alcohol, oxygenates). When viewing the LONGFT1/2 PID(s), the values may change a great deal as the engine is operated at different RPM and load points. The LONGFT1/2 PID(s) display the long term fuel trim correction currently being used at that RPM/load point.

High Speed Controller Area Network (CAN)
High speed CAN is a serial communication language protocol used to transfer messages (signals) between electronic modules or nodes. Two or more signals can be sent over one CAN communication network circuit allowing 2 or more electronic modules or nodes to communicate with each other. This communication or multiplexing network operates at 500kB/sec (kilobytes per second) and allows the electronic modules to share their information messages.

Included in these messages is diagnostic data that is output over the CAN (+) and CAN (-) lines to the DLC. The PCM connection to the DLC is typically done with a 2-wire, twisted pair cable used for the network interconnection. The diagnostic data such as self-test or PIDs can be accessed with a scan tool. For additional information on scan tool equipment, refer to Diagnostic Methods. Diagnostic Methods Overview

Idle Air Trim
Idle air trim is designed to adjust the idle air control (IAC) calibration to correct for wear and aging of components. When the engine conditions meet the learning requirement, the strategy monitors the engine and determines the values required for ideal idle calibration. The idle air trim values are stored in a table for reference. This table is used by the PCM as a correction factor when controlling the idle speed. The table is stored in the KAM and retains the learned values even after the engine is shut off. A DTC is set if the idle air trim has reached its learning limits.

Whenever an IAC component is replaced, or a repair affecting idle is carried out, it is recommended the KAM be reset. This is necessary so the idle strategy does not use the previously learned idle air trim values.

To reset the KAM, refer to Diagnostic Methods, Resetting The Keep Alive Memory (KAM). It is important to note that erasing DTCs with a scan tool does not reset the idle air trim table. Resetting The Keep Alive Memory (KAM)

Once the KAM has been reset, the engine must idle for 15 minutes (actual time varies between strategies) to learn new idle air trim values. Idle quality improves as the strategy adapts. Adaptation occurs in 4 separate modes as shown in the following table.


Idle Air Trim Learning Modes:






Idle Speed Control Closed Throttle Determination - Applications Without Electronic Throttle Control (ETC)
One of the fundamental criteria for entering RPM control is an indication of closed throttle. Throttle mode is always calculated to the lowest learned throttle position (TP) voltage seen since engine start. This lowest learned value is called ratch, since the software acts like a one-way ratch. The ratch value (voltage) is displayed as the TPREL PID. The ratch value is relearned after every engine start. Ratch learns the lowest, steady TP voltage seen after the engine starts. In some cases, ratch can learn higher values of TP. The time to learn the higher values is significantly longer than the time to learn the lower values. The brakes must also be applied to learn the higher values.

All PCM functions are done using this ratch voltage, including idle speed control. The PCM goes into closed throttle mode when the TP voltage is at the ratch (TPREL PID) value. An increase in TP voltage, normally less than 0.05 volts, puts the PCM in part throttle mode. Throttle mode can be viewed by looking at the TP MODE PID. With the throttle closed, the PID must read C/T (closed throttle). Slightly corrupt values of ratch can prevent the PCM from entering closed throttle mode. An incorrect part throttle indication at idle prevents entry into closed throttle RPM control, and could result in a high idle. Ratch can be corrupted by a throttle position sensor or a circuit that drops out or is noisy, or by loose/worn throttle plates that close tight during a deceleration and spring back at a normal engine vacuum.

International Standards Organization (ISO) 14229 Diagnostic Trouble Code (DTC) Descriptions
The ISO 14229 is a global, diagnostic communication standard. The ISO 14229 is a set of standard diagnostic messages that can be used to diagnose any vehicle module in use and at the assembly plant. The ISO 14229 is similar to the Society of Automotive Engineers (SAE) J2190 diagnostic communication standard that was used by all Original Equipment Manufacturers (OEMs) for previous communication protocols, like J1850 standard corporate protocol (SCP).

The ISO 14229 changes the way PIDs, DTCs, and output state control (OSC) is processed internally in the PCM and in the scan tool software. Most of the changes are to make data transfer between electronic modules more efficient, and the amount and type of information that is available for each DTC. This information may be helpful in diagnosing driveability concerns.

DTC Structure
Like all digital signals, DTCs are sent to the scan tool as a series of 1s and 0s. Each DTC is made up of 2 data bytes, each consisting of 8 bits that can be set to 1 or 0. In order to display the DTCs in the conventional format, the data is decoded by the scan tool to display each set of 4 bits as a hexadecimal number (0 to F). For example, P0420 Catalyst System Efficiency Below Threshold (Bank 1).







The table below shows how to decode the bits into hex digits.







The first 4 bits of a DTC do not convert directly into hex digits. The conversion into different types of DTCs (P, B, C and U) is defined by SAE J2012. This standard contains DTC definitions and formats.







ISO 14229 sends 2 additional bytes of information with each DTC, a failure type byte and a status byte.







All ISO 14229 DTCs are 4 bytes long instead of 3 or 2 bytes long. Additionally, the status byte for ISO 14229 DTCs is defined differently than the status byte for previous applications with 3 byte DTCs.

Failure Type Byte
The failure type byte is designed to describe the specific failure associated with the basic DTC. For example, a failure type byte of 1C means circuit voltage out of range, 73 means actuator stuck closed. When combined with a basic component DTC, it allows one basic DTC to describe many types of failures.







For example, P0110:1C-AF means intake air temperature (IAT) sensor circuit voltage out of range. The base DTC, P0110, means intake air temperature sensor circuit, while the failure type byte 1C means circuit voltage out of range. This DTC structure was designed to allow manufacturers to more precisely identify different kinds of faults without always having to define new DTC numbers.

The PCM does not use failure type bytes and always sends a failure type byte of 00 (no sub type information). This is because OBD II regulations require manufacturers to use 2 byte DTCs for generic scan tool communications. Additionally, the OBD II regulations require the 2 byte DTCs to be very specific, so there is no additional information that the failure type byte could provide.

A list of failure type bytes is defined by SAE J2012 but is not described here because the PCM does not use the failure type byte.

Status Byte
The status byte is designed to provide additional information about the DTC, such as when the DTC failed, when the DTC was last evaluated, and if any warning indication has been requested. Each of the 8 bits in the status byte has a precise meaning that is defined in ISO 14229.

The protocol is that bit 7 is the most significant and left most bit, while bit 0 is the least significant and right most bit.







DTC Status Bit Definitions
Refer to the following status bit descriptions:

Bit 7
- 0 - The ECU is not requesting warning indicator to be active
- 1 - The ECU is requesting warning indicator to be active

Bit 6
- 0 - The DTC test completed this monitoring cycle
- 1 - The DTC test has not completed this monitoring cycle

Bit 5
- 0 - The DTC test has not failed since last code clear
- 1 - The DTC test failed at least once since last code clear

Bit 4
- 0 - The DTC test completed since the last code clear
- 1 - The DTC test has not completed since the last code clear

Bit 3
- 0 - The DTC is not confirmed at the time of the request
- 1 - The DTC is confirmed at the time of the request

Bit 2
- 0 - The DTC test completed and was not failed on the current or previous monitoring cycle
- 1 - The DTC test failed on the current or previous monitoring cycle

Bit 1
- 0 - The DTC test has not failed on the current monitoring cycle
- 1 - The DTC test failed on the current monitoring cycle

Bit 0
- 0 - The DTC is not failed at the time of request
- 1 - The DTC is failed at the time of request

For DTCs that illuminate the MIL, a confirmed DTC means the PCM has stored a DTC and has illuminated the MIL. If the fault has corrected itself, the MIL may no longer be illuminated but the DTC still shows a confirmed status for 40 warm up cycles at which time the DTC is erased.

For DTCs that do not illuminate the MIL, a confirmed DTC means the PCM has stored a DTC. If the fault has corrected itself, the DTC still shows a confirmed status for 40 warm up cycles at which time the DTC is erased.

To determine if a test has completed and passed, such as after a repair, information can be combined from 2 bits as follows:

If bit 6 is 0 (the DTC test completed this monitoring cycle), and bit 1 is 0 (the DTC test has not failed on the current monitoring cycle), then the DTC has been evaluated at least once this drive cycle and was a pass.

If bit 6 is 0 (the DTC test completed this monitoring cycle) and bit 0 is 0 (the DTC test is not failed at the time of request), then the most recent test result for that DTC was a pass.

The status byte bits can be decoded as a 2 digit hexadecimal number, and displayed as the last 2 digits of the DTC, for example for DTC P0110:1C-AF, AF represents the status byte info.


Status Byte:






Multiplexing
The increased number of modules on the vehicle necessitates a more efficient method of communication. Multiplexing is a method of sending 2 or more signals simultaneously over a single circuit. In an automotive application, multiplexing is used to allow 2 or more electronic modules to communicate simultaneously over a single media. Typically this media is a twisted pair of wires. The information or messages that can be communicated on these wires consists of commands, status or data. The advantage of using multiplexing is to reduce the weight of the vehicle by reducing the number of redundant components and electrical wiring.

Multiplexing Implementation
Currently Ford Motor Company uses CAN communication language protocol to communicate with the PCM.

For additional information about the module communications network, refer to the Information Bus, Module Communications Network for Description and Operation.

Permanent Diagnostic Trouble Code (DTC)
The software stores a permanent DTC in non-volatile random access memory (NVRAM) whenever a DTC is set and the MIL has been illuminated. Permanent DTCs can only be cleared by the module strategy itself. After a permanent DTC is stored, 3 consecutive test passed monitoring cycles must complete before the permanent DTC can be erased. The PCM clears the permanent DTCs after one monitoring cycle if a request to clear DTCs is sent by the scan tool and the test subsequently runs and passes. A permanent DTC cannot be erased by clearing the KAM. The intended use of the permanent DTC is to prevent vehicles from passing an in-use inspection simply by disconnecting the battery or clearing the DTCs with a scan tool prior to the inspection. The presence of the permanent DTCs at an inspection without the MIL illuminated is an indication that a correct repair was not verified by the on-board monitoring system.