Home Brief Semantic Markup
I. Introduction to Automotive Computers (Carputers)

1. Origins and Early Development

In developed countries, there are more than 30 embedded microprocessors per person, with close to 3 million funtions in embedded software. A great many of these embedded microprocessors become parts of automobile's Embedded Computer, and play a major role in the operation, maintenance, and performance of modern vehicles. It is important before beginning this discussion to define what a computer is. For the purpose of this discussion, we will define a computer to be an electronic, number-crunching device, which is difficult to repair with traditional tools. Based on this definition, the first true car computer was designed by Bosch in Germany, and implemented by Volkswagen in the Type 3 Fastback and Squareback. This major revolution brought on the advent of usable fuel injection, ended the need for carburetors, brought on the advent of catalytic converters, improved fuel economy drastically, and reduced harmful emissions.

2. Types of Automotive Computer

Automotive computers are incorporated into many applications throughout modern vehicles. Under the greater label of ECU's, or Electronic Control Units, automotive computers are generally divided into up to 80+ subsystems, the major components of which are: Engine Control Module, Powertrain Control Module, Transmission Control Module, Central Timing Module, General Electronics Module, Body Control Module, and Suspension Control Module. There exist many more modules in OEM systems, but they vary between manufacturers and generally cover very specific areas of operation such as Door Control Units, Electric Power Steering Units, Human-Machine Interfaces, Seat Control Units, Speed Control Units, Telematic Control Units, Brake Control Units (ABS), and Battery Management Systems.

II. Modern Developments

1. System Overview

The major functional blocks of an ECU are the Power supply, MPU (microprocessor and RAM), Communications Link (CAN bus, etc.), Discrete Inputs (physical switches i.e. on/off), Frequency Inputs (encoder signals like vehicle speed, crank timing), Analog Inputs (feedback from sensors), Switch Outputs (physical switch outputs), PWM Outputs (variable frequency and duty cycles such as injectors, spark, ignition, etc.), and Frequency Outputs (constant cycles like idle speed control).
The power supply is a DC-DC converter, which transfers battery voltage to the appropriate voltage level for each component of the ECU. It also has the ability to run self tests to ensure safety and proper funtionality.
The MPU contains the actual CPU and RAM of the system, and stores the applications and data tables in flash memory for extremely quick data transfer and operation. These applications and tables determine fuel-air mixture, ignition timing, and other funtions, and can be reprogrammed by swapping the flash memory. They also have the capacity to run self tests like the Power Supply, which are similar to POST in a traditional computer.
The computer interfaces with the outside world mostly via OBD (OBD II in modern vehicles). The ECU tracks a great deal of information about the vehicle, including fault codes and emission readings, which are used by technicians to perform maintenance on the vehicle. The communication between an external device and the ECU is processor intensive and takes up roughly 35% of the communication time between devices.
Discrete inputs monitor the on/off status of various systems within the vehicle, the most important of which is the ignition.
Frequency inputs are used to monitor inputs from sensors, including the Oxygen sensor(s), Mass Air Flow sensor, temperature, and crucially, the Crank and Cam sensors, which provide the necessary data for the ECU to properly power the engine.
PWM outputs are the most complex and processor intensive of all the various components, and determine the injector, ignition, spark time, and other important variables based on the crank speed and crank angles, as well as speed, throttle position, exhaust recirculation, temperature, manifold pressure, and others. PWM outputs use all of the afforementioned inputs to determine optimal spark timing and fuel-air mixture for engine performance.

2. OEM Engine Control Units

While every model created by OEM's requires very specific ECU funtions, the manufacturers themselves typically outsource the major components to electronics companies like Bosch, but design highly specified modules in-house. An example of this would be door control units in vehicles with automatic doors, like many modern vans. Regardless of the manufacturer however, there are established communications standards for the transmission of fdata through the communication bus' and across the CAN. These standards make it easy for manufacturers and the companies they outsource development of components, sensors, and instruments, to ensure their devices are communicating effectively.

3. OBD and OBD II

OBD, or On Board Diagnostics, is a system that provides a CAN bus that can output diagnostic codes to devices capable of reading from the port. OBD II is the newer version of the system, and is a regulatory requirement for all vehicles sold in the United States. It is used by mechanics, dealerships, and individuals to get a starting point for repairs that may need to be made to a vehicle. The codes are an international standard, and will be the same across all major and high-end manufacturers.

4. Infotainment Systems

So what about systems like sophisticated stereo/gps combos, Android Auto, Apply CarPlay, and the like? While these systems are indeed advanced, and in some modern and luxury vehicles, very much computers in their own right, unless they interface with the operations or maintenance of the vehicle they are not truly components of the car's computer. For example, many modern cars are equipped with their own 4G connectivity and tablets in place of the traditional stereo. These are equipped with quick, multi-core processors and modern mobile applications, but they have nothing to do with what's going on under the hood. Excepting systems like those found in Tesla vehicles, which interface directly with the vehicle's on board computer, the vast majority of modern "Infotainment" systems are not considered to be embedded computers.

5. Modifications (Chipping)

Those who seek to improve the performance of their vehicles may do so through modifications, or outright replacement of the main ECU which controls everything from valve timing to crank speed and exhaust pressure. Such modifications can be risky if not done professionally, but can lead to drastic changes in performace. Achieving this can be done one of two principal ways, with the first being outright replacement of the ECU. Aftermarket companies like Cobb and Unitronic specialize in model-specific ECU's that alter the performace of the vehicle they are attached to. The second way to modify performance is via "chipping" or modifying the existing computer to allow changes to be made via software installations or custom tuning. Through these methods, gains in horsepower, torque, and fuel efficiency can be realized.

III. Future Advancements

1. Incorporation of Common Operating Systems

As mentioned above, sophisticated tablet-like devices are becoming common in modern vehicles, and in many cases operate on custom builds of Android or iOS. The true advancements though, will come with the incorporation of such user-interfaces with the underlying vehicle's systems. The underpinnings of most ECU software are found in various Linux-based custom OS's, but very heavily in Microsoft's Windows Embedded Automotive. Alongside advanced GPS and mapping systems, it is possible through further development of these existing systems to create an embedded computer that allows not only driving, but the way a car acts and reacts to user inputs to be an interactive experience. The real trick will be making it so that the on board computers, much like users on traditional computers, cannot make damaging changes without some sort of elevated permission.

2. Advancements in Hardware and Software Capability

The average ECU contains a 32-bit, 40 MHz processor; which is more than enough to run the typically less-than 1mb of code that runs the car. As vehicle control, information, and entertainment become intertwined, and vehicles incorporate advanced driver-assist software, the adaptation of powerful mobile, or even full size CPU's will make it's way into vehicle design; vastly expanding the capacity of embedded computers and the vehicles they are attached too.

IV. Closing Summary

Embedded computers have advanced greatly over the past 50 years since their inception. Originally intended to reduce emissions and increase fuel efficiency, they have expanded to control most aspects of modern vehicles. Embedded computers can be used to troubleshoot, maintain, modify, and improve existing vehicles; and will no doubt play a major role throughout the advent of electric vehicles and beyond.