This thread is meant to help familiarize you with the fuel injection system and its operation. Since fuel injected this technology is new to many, this is a general overview based on a single cylinder engine. This injection system discussed is a basic open/closed loop Speed Density System. Some bikes will use a different system like a Mass Air Flow system which can be discussed at a later time. I'll try to explain how the system operates so everyone can understand. Here's an abbreviation table taken directly from the Helm service manual.MAP = Manifold Absolute Pressure Sensor(can also read barometric pressure)TPS or TP sensor = throttle position sensorCTS = Coolant Temperature SensorO2 = Oxygen Sensor IAC = Idle Air Control valve/stepper motor CPS = Camshaft Position SensorCKP = Crankshaft Position SensorIAT sensor = Intake Air Temperature sensorEVAP = Evaporative Emission systemAI/02 = Air Injection Oxygen system valve/sensorPAIR = Pulse Secondary Air InjectionECM/PCM = Engine/Powertrain Control ModuleEEPROM = Electrically Erasable Programmable Read Only MemoryMIL = Malfunction Indicator LampDLC = Data Link ConnectorDTC = Diagnostic Trouble CodeSCS service connector = Service Check Short connectorVS sensor or VSS = Vehicle Speed sensorA/F ratio = Air Fuel ratioPGM-FI =Programmed Fuel Injection.OBD is On Board Diagnostics. There are different versions like OBDI or OBDII.Open loop is when the engine is running on base programing.Closed loop is when the engine is monitoring the sensors and adjusting as needed to maintain the "desired" air/fuel ratio to achieve complete combustion. Here is some information about the sensors, the different codes and what the readings mean. This should help to understand the codes and diagnostic procedures.The controllers and sensors use a 5 volt circuit just like automotive sensors do. The principles of operation are also the same.A high impedance digital volt/ohm meter should only be used when testing is done.Note: Do not use a analog meter or low impedance meter for testing. System damage may result.. Codes listed below are from a OBD diagnostic code chart. Some bikes will vary. MAP sensor = Manifold Absolute Pressure SensorThe MAP sensor is used to read Barometric pressure at key on. This would be how the PCM checks altitude. It monitors engine vacuum which it used to determine engine load by comparing it to the TPS reading. It can also sense altitude change at WOT if programed to... Code information = DTC 1 for out of range voltage reading. MAP sensor circuit low voltage = DTC 1-1. MAP sensor circuit high voltage = DTC 1-2Limp in mode = Runs OK. Uses the a base the MAP sensor default value when a code is set.Basic Operation = Low vacuum is the high voltage reading. High vacuum is a low voltage reading. Increasing the vacuum should cause the voltage decrease smoothly. CTS sensor = Coolant Temperature sensor The CTS sensor provides the engine coolant temperature. Code information = DTC code 7 for out of range voltage reading. CTS sensor circuit low voltage = DTC 7-1. CTS sensor circuit high voltage is DTC 7-2.Limp in mode = Hard starting at a low temperature uses a CTS sensor default value when a code is set, usually turns on the engine cooling fan on if equipped.Basic Operation = uses a voltage reading to transmit the engines coolant temperature to the controller. TPS circuit = Throttle Position Sensor or TP sensorThe TPS sensor tells the computer what position the throttle is in. It's as simple as that. Code information = DTC code 8 for out of range voltage reading. TPS sensor circuit low voltage = DTC 8-1. TPS sensor circuit high voltage = DTC 8-2.Limp in mode = Poor engine acceleration. 0 degrees is the default value when a code is set.Basic Operation = measures how many degrees the throttle plate is opened. 100% is the high voltage reading. 0% is a low voltage reading. IAT sensor = Intake Air Temperature sensor The IAT monitors the air temperature going into the engine. Cold air is denser and has more oxygen in it. It is used in combination with the other sensor values to help determine the correct air/fuel ratio.Code information = DTC code 9 for out of range voltage reading. IAT sensor circuit low voltage = DTC 9-1. IAT sensor circuit high voltage = DTC 9-2.Limp in mode = Run OK. A default value is used when a code is set.Basic Operation = Monitors intake air temperature fore fuel control. VSS or VS sensor = Vehicle Speed sensorCode information = DTC code 11-1 for VS sensor malfunction.Limp in mode = Run normal. Speedometer inoperative.Basic Operation = Monitor vehicle speed. Fuel injector circuitCode information = DTC code 12.1 for Fuel injector circuit malfunctionLimp in mode = Tennis shoe mode. Engine not start.Basic Operation = Control's fuel injector. O2 sensor = Oxygen Sensor The O2 sensor monitors the oxygen level(air/fuel ratio) in the exhaust so the computer can adjust as need when in closed loop mode.Operating range = .0 to 1 voltCode information = DTC code 21-1Limp in mode = Runs OK. Operates in open loop mode.Basic Operation = Once heated by the exhaust it outputs voltage from the sensor about how much 02 present in the exhaust. (used by the ECM for monitoring combustion efficiency) IACV circuit = Idle Air Control valve/stepper motor The IAC is a air bypass valve that is used to control the engine speed at idle. The throttle body allows a predetermined amount of air past the throttle blade and the IAC controls the extra air flow needed to reach the correct idle speed and prevent stalling. The IAC is a stepper motor that allows extra air into the engine to control the idle speed. The throttle closes slightly further which decrease emissions on deceleration. When the RPM drops low enough the IAC takes over to control the idle speed. There is a minimum air flow specification that the throttle stop screw is adjustment determines. It is preset by the factory and may be painted so tampering can be determined. Code information = DTC code 29.1 for IACV or IAC circuit malfunctionLimp in mode = Limp in or possible Tennis shoe mode. Engine no start.Basic Operation = Control's fuel injector. ECM EEPROM = Engine Control Module Electronically Erasable Programmable Read Only Memory An EEPROM is electronically erasable programmable read only memory type controller. This means can be reprogramed/flash programed.Code information = DTC code 33.2 for ECM EEPROM malfunctionLimp in mode = Runs normallyBasic Operation = Engine controller memory storage component. BAS = Bank angle sensor The Bank angle sensor monitors the bikes angles and shuts it off when crashed Code information = DTC code 54 for out of range voltage reading. Bank angle sensor circuit low voltage = DTC 54.1 Bank angle sensor circuit high voltage = DTC 54.2Limp in mode = Engine operates normally. Bank angle sensor does not operate. The engine keeps running when the vehicle falls.Basic Operation = It is designed for safety where in if the bike is laid down or in a roll over, the fuel pump is shut down so as not to potentially cause a fire. CKP = Crankshaft Position Sensor The CKP sensor identifies the crankshaft position, RPM and can be used to sense when the engine fires (or even misfires). CPS = Camshaft Position Sensor The CPS identifies the camshaft position, can be used to sense when the engine fires (or even misfires). Oxygen sensors, known as O2 sensors, allow the electronic fuel injection to operate in a closed loop system improving emission control and fuel economy dramatically. They help determine, in real time, if the air–fuel ratio of a combustion engine is rich or lean. Since oxygen sensors are located in the exhaust stream, they do not directly measure the air or the fuel entering the engine. Instead they measure the amount of oxygen in the exhaust after combustion. The information supplied from oxygen sensors is coupled with information from other sources, it can be used to indirectly determine the air-fuel ratio. Closed loop feedback-controlled fuel injection varies the fuel injector output according to real-time sensor data rather than operating with the predetermined (open-loop) fuel map. The O2 sensor used in this system is a narrow band type O2 sensor. Adaptive memory is the computers ability to adapt to and remember what is needed to achieve the desired air/fuel ratio in closed loop mode. It has the ability to add or subtract fuel as needed. There are two types of adaptive memory, long term and short term. Long term memory is stored memory about what was needed and short term memory is what is needed at that moment. The computer uses short term memory to establish it's long term memory.In open loop it monitors the TPS, MAP, CKS, IAT and the CTS sensors mainly. It uses these values to determine what base programing cells in the computer to use. During closed loop operation it monitors the O2 sensor also, using it to provide the information the computer needs to achieve the desired air fuel/ratio results. The adjustments to fuel control are done by the short term and long term adaptive memory. The long term adaptive memory monitors the trends and adjustments the short term memory makes and then adjusts it's values so the short term memory value stays near the center of its adjustment range. The long term memory stores its memory so it's ready for the next time it goes into closed loop operation. The short and long term memory has the ability to add or remove the amount fuel the engine sees by adjusting fuel injector pulse width as needed. It won't go into closed loop until the O2 sensor reaches the proper temperature. There are some other perimeters also involved. There is a limp in mode if a sensor the open loop needs to monitor fails. Sometimes limp in mode equals tennis shoe mode because of a lost crank sensor signal or a meltdown of some type. Tennis shoe mode means your walking home.Limp in mode means it will get you to home, but that's about it. Extended riding in limp-in mode could cause damage to the catalytic convertor in the stock muffler. The ECM's memory cells for both adaptive closed and open loop operation consist of operational goals and the compensation tables needed to reach them.There are multiple open and multiple closed loop cells. In open loop the engine runs on the just the compensation tables programed in each memory cell. In closed loop the engine runs on compensation tables in each memory cell that are adjusting by the short term adaptive memory and long term adaptive memory as needed to the reach the programed operational goals. The long term memory stores the adjusted compensation tables needed to meet these goals.The ECM monitors the short term adaptive memory adjustments and converts them into long term adaptive memory adjustments so it will retain its ability to meet the desired operational goals that are programed quickly by storing adjustments for your next ride. Short term memory is quick and volatile, constantly changing as needed. It isn't stored after engine shut down.The live adjustments done by the adaptive memory are kind of like having a tuner along for the ride to make adjustments as needed.If your bike is tuned at sea level on a 70 degree day and then you rode up to 5000ft where it is 20 degrees you'll find adaptive memory is nice to have...It is quite difficult to program a plain set of compensation tables to run correctly in all conditions. Adaptive memory can subtract or add fuel to meet the operation goals exactly. Without adaptive memory the compensation tables are more of a close enough type of system which wouldn't be viable to use to achieve low emissions and maximum fuel economy. This information will come in handy when modifications are performed to the engine for performance and tuning reasons. Feel free to ask any questions or comments. More to come.