Search the site:

Weber Fuel Injection

Everything you ever wanted to know about Fuel Injection but were afraid to ask

This article is one I have wanted to write or a long time, mainly because I have never found a simple guide to Weber fuel injection that covers the way the system makes its decisions. As ever the word simple does not easily sit with a subject such as this, and this article is somewhat longer than I had planned but it does give the detail that I would have liked to have found some years ago.

I could not have done any of this without the help and assistance of Duane Mitchell of Ultimap who has allowed me free rein to plagiarise his instruction manuals and website. Duane is the leading independent supplier of high quality aftermarket Weber Fuel Injection Hardware and Software in the world, what he doesn't know about Ducati, Moto-Guzzi and Laverda fuel injection is simply not worth knowing.

This article is split into two to ease downloading.  The first part, set out below, is an explanation of how the Weber system works.  The second part, available here, is a summary of how an Ultimap, the adjustable system developed by FIM works and how it helps in the setting up of the bike.

Fuel Injection on Ducati Motorcycles.

Neil Spalding and Duane Mitchell

Fuel injection has been around a long time but has only recently spread into the world of Motorcycles where Ducati have been one of the pioneers, successfully addressing issues like throttle sensitivity and progressive action, issues that defeat the major factories even now.  While Fuel Injection is more complex than carburettors it brings with it a capability to be tailored to very specific requirements. This is very helpful in dealing with the latest requirements for emission control while keeping high outputs and controllability from big cylinders, where carburettors simply do not work.

Fuel Injection works by pumping fuel, at a specific pressure through a filter and into a pipe containing one or more injectors. The injectors are electrically operated fuel valves, which turn on to 'pulse' a spray of fuel into the manifold. The longer the injector is turned on, the richer the mixture. Fuel not used by the injector is returned to the fuel tank and circulated again.

A Weber computer controls the timing of the fuel pulse and its duration according to the fuel map it has been given and the computations it makes after consulting the various sensors on the engine. This system is known as pulsed sequential port injection, as each injector is fired separately according to crankshaft position, into the inlet manifold before the inlet valve.

The Computers.

Weber has provided several different computer types to Ducati during their 15-year history with fuel injection. The basic operations are the same for all types, all are open loop (i.e. there is no lambda probe in the exhaust to automatically correct for changes away from optimum fuel air mixtures). Open loop is normally used in racing application's, as it is the simplest. The same Parts were provided to Moto Guzzi, Laverda and Cagiva over the same period and most of what is written is equally valid for those makes.

Lunch boxThe P7 was the first, and was used until, depending on model, 1993.  The P8 followed, this had some useful additional features, such as the ability to fire individual injectors on one cylinder at different times, Ducati rarely used this function, preferring to fire both (on double injector throttle bodies) simultaneously, it also contained 'spare' memory.  This computer received the nickname of 'Big Brain'. The P8 was also seen in a lot of sporting cars, Ford Sierra Cosworths, Hi performance Lancias and Fiats, Ferrari sports cars etc. and is still a very good choice should you decide to retro fit a fuel injection to a motor originally designed for carburettors. 

After the P8 came the 1.6M 'Little Brain', this uses a simplified method of operation but is quicker and was fitted to most models between 1995 and 2000. Like the P7 and P8 this type uses fuel maps stored on removable Eprom (Erasable Re-programmable Read Only Memory) chips, allowing relatively quick and simple changes of fuel maps. Ducati have recently released new computers on the 2-valve engines (the 1.5M) and on the new 4-valve models first released in 2001 (the 5.9M). These latter computers require a different system to load new fuel maps known as a 'flashload'

In most cases the computer is controlled by a single chip microprocessor (Motorola 68HC11, the same family of chip is also used on Delco GM computers, and the Aprilia RSV Mille and the Suzuki GSXR 750 and TL 1000 types). This computer controls the system, with inputs from sensors placed in critical areas of the engine. There are environmental sensors (Air temperature, Coolant temperature, Air Pressure, Battery Voltage) and a Throttle Position sensor being continuously checked so that the computer can adjust the fuel pulse and spark advance to suit. A camshaft rotation sensor provides engine speed and crankshaft position, this allows the calculation of Ignition Pulses and RPM. Early P7 and P8 ECU's used a separate flywheel sensor for RPM and ignition timing with the camshaft sensor providing Cylinder phase information only.

There are two types of data storage, permanent and temporary. Permanent storage is performed either by the EPROM or by flash memory into which a Fuel map has been flashloaded. The permanent memory contains the Operating program of the motorcycle and the specific data for the engine (such as fuel data and spark advance maps).

Eproms with differing maps to those supplied by the factory can be fitted quite easily.  In the case of later models (1.5M and 5.9M computers on the latest 2 valves and 2001 new model 4 valves respectively), the 'flashload' memory requires special programmes to access, FIM Ultimaps also allow you to change the fuel maps.

We will readdress temporary memory later in this article, if we remember……

How does the Weber Fuel Injection System Work ?

All five computers run very similar systems, as the vast majority of machines in current use have 1.6M and P8 computers we will describe the basics as it applies to those units.

The system works on the 'Throttle - Speed' theory, which uses as it's basic information the engine speed and throttle position (that is, the butterfly valve angle). These two factors are used to reference a Fuel map, which contains 256 separate values, each of which represents a particular engine speed and throttle position. To get a Map size of 256, there are 16 engine speed points, and 16 Throttle Position points. These are called Breakpoints, and are selected  pinpoint critical areas in the engine's operating range.

Twist grip extensionDifferent bikes have different sets of breakpoints depending on their intended use; street bikes have several different points in the first few degrees of throttle opening to give the required sensitivity needed for delicate throttle openings in town use.  Racers ignore this area almost completely with the 16 available points being closer together in the more critical areas such as the torque peak to allow very precise control of this sensitive zone at racetrack speeds.

Each revolution of the engine, the Weber computer measures the throttle position, zero to eighty-three degrees, nil on the throttle position sensor means the butterfly is fully closed (but at a real 7 degrees to the bore, it helps the bike at low revs) and the engine speed. These values are then compared against a breakpoint table, which contains each of the sixteen breakpoints for that parameter. Normally, of course, the actual value falls somewhere in between two breakpoints, so the computer calculates the fractional component as well. This is done for both Throttle position and RPM, producing four values, which are Throttle Break, Throttle fraction, RPM Break, and RPM fraction.

The computer uses the Throttle Break and RPM Break to produce a 'Fuel Vector', the position in the Map that contains the correct Base Fuel Number.  This number is taken, and because there is also a fractional component for each reading, the next highest RPM value, and the next lowest Throttle value are also taken. These fractional components are then used in a three-way calculation to produce a Fuel Number that accurately reflects the throttle and RPM conditions.

A standard fuel map for a 748SPS is set out here in both Hexadecimal (a code of numbers in base16 as used in the basic programming), and converted to m/sec to show the main fuel map. Please note this is a map intended for a street application, hence the predominance of throttle and rev breakpoints in the bottom left corner of the grid.

To better compare fuel maps intended for the same engine in road and race form please click on the following two links for diagrams showing the fuel breakpoints for a 748R and its racing relative the 748RS.  These demonstrate the way that throttle breaks can be loaded differently depending on intended use.

How hot??This is only the first stage, however. The Base Fuel Number is then corrected for additional factors, which include Air Temperature, Air Pressure (density) and Coolant Temperature. The engine management system includes a series of set points at which the length of the fuel pulse is adjusted depending on the conditions.

Each of the sensors is checked every revolution of the engine, and compared against another table, one table for each sensor. These tables produce an Environment trim value for each sensor. The Base fuel number is then modified by reference to these tables. If the sensor indicates a normal temperature, for example, the Environment trim will be very close to Nil, and the Base fuel number will not change. If the air temperature, for example, is higher than normal (23 degrees Centigrade), the table will produce a Factor of less than 1.0, for example 0.97, this will produce a Fuel Number with a lower value, which will therefore produce a shorter Fuel Pulse, and the engine will run Leaner.  Which is exactly what is required for higher air temperatures.

Water temperature trim

           Degree C

Air temperature trim

         Degree C

Barometric pressure trim

Millibar (altitude in ft)

-7 deg


-7 deg


622 (13200)


5 deg


5 deg


683 (10800)


17 deg


17 deg


744 (8500)


29 deg


29 deg


805 (6200)


41 deg


41 deg


867 (4600)


53 deg


53 deg


927 (2600)


65 deg


65 deg


988 (600)


77 deg


77 deg


1049 (-1000)


89 deg


89 deg






101 deg




113 deg


113 deg






125 deg




You will note the relatively small correction on the barometric sensor, Because this sensor correction is designed to lean off the mixture at high altitude (to compensate for lower air density ), the early factory (circa 1990) tables had the range of +4% to -32%. This caused problems with faulty sensors, which could lean off the mixture by 32% at any time the sensor mal-functioned. To limit the downside of a sensor failure the range was restricted as set out above. Increasingly however Ducati is putting 'normal' ranges of correction back into the altitude correction

These corrections are cumulative in their effect so starting up the engine on a freezing cold morning in Death Valley will get you a 58% richer mixture from these environment trims alone.

If you listen to a Fuel Injected Ducati warming up you can hear the effect of the mixture changes as the water temperature steps change the mixture. (Do not confuse that with the effect of the radiator thermostat opening, that bungs a load of cold water into the cooling system, the system detects a lower water temp and richens the mixture even though the metal is much hotter, it doesn't take long for everything to even out though….).

As ever the racing world is a little different.  No racing Eprom has a water temp correction table, and some also dispense with airtemp and pressure, preferring to dial in a correction on a custom built Eprom just before the race.  While this removes several variables; you have to hope for very few changes in conditions!  This naturally puts a question mark on the suitability of a racing style Eprom for any sort of Road use.

Now let us not forget, we are talking big V twin cylinder motorcycles here; the standard map on a Ducati is the one for the front cylinder. Weber computers have always had the capability of running a secondary 'offset' map for the rear cylinder. This offset is a 'sub map' that slightly changes the final fuel pulse derived from the main front cylinder fuel map and the environmental sensors, to suit the specific requirements of the rear cylinder.

If this offset map is not loaded then both cylinders are given exactly the same fuel pulse. Ducati twin cylinder factory maps (including Ducati Performance versions); have virtually ignored the existence of this offset map capability on their Eproms until the very late nineties, as did all the usual suspects of the aftermarket Eprom suppliers.

The different fuelling requirements of each cylinder are caused by slightly different circumstances affecting the intake and exhaust process (water cooling means that there is no 'rear cylinder overheating problem'). The exhaust pipes have different bends and the space between the power strokes is uneven, 270deg and 430 deg. Sometimes the fueling will need to be leaner and sometimes richer; it is all down to the interrelation between throttle opening, porting, cams, airbox pulsing and revs.

The 1998 996 Bip had a small offset map, as did the ST4 in 1999, and the 748R in 2000. Most other Ducati Factory maps just don't use this capability; this 'blind spot' makes it a lot easier to produce a superior fuel injection system.

There is one manual adjustment, the trimmer. This is intended to allow small adjustments in mixture at low revs. The chart below shows the effect the trimmer (either a small grub screw in the computer or a Program on a PC; depends on the computer type).


Idle Throttle

Idle Throttle range ms

Idle Throttle range %

Mid Throttle

Mid Throttle range ms

Mid Throttle range %

Full Throttle

Full Throttle range ms

Full Throttle range %


1.17 ms

+/-0.24 ms


2.31 ms

+/-0.24 ms


3.44 ms

+/-0.24 ms



0.96 ms

+/-0.15 ms


1.48 ms

+/-0.14 ms


2.78 ms

+/-0.14 ms



0.95 ms

+/-0.07 ms


1.11 ms

+/-0.07 ms


2.20 ms

+/-0.07 ms


Note that a mixture change of 1.5% is required to move the exhaust Lambda by one point (i.e. from 0.90 to 0.91) so the available range is pretty large.  While the trimmer will have some effect at high rpm it provides the inverse of what is needed to accommodate an open pipe or a freer breathing engine.

After all of the environment trims have been performed, an additional User trim is calculated from the total of the variances. This changes the final duration of the fuel pulse, with a value of 1.0 producing no change, and a higher value running the engine richer, and vice versa.

Finally the computer measures the Battery voltage, and allows an extra amount of time for the injectors to open if the battery voltage is low.

Ignition Map

After the computer has computed the fuel pulse duration it still has one job to do and that is deciding on ignition timing. This is done in exactly the same way as everything else, by consulting table or map.  The same computations happen here as on the basic 'Fuel Vector' calculations with the computer using Throttle Break and RPM Break to produce a 'Ignition Vector', the position in the Map that contains the correct Base Ignition Number. 

This number is taken, and because there is also a fractional component for each reading, the next highest RPM value, and the next lowest Throttle value are also taken. These fractional components are then used in a three-way calculation to produce an Ignition Number that accurately reflects the throttle and RPM conditions. What is interesting is the three dimensional nature of the advance curve and the way that 'off-load' ignition timings are run very high.

What's in the Map?

It can be seen from what we have looked at so far that different fuel maps can provide many more changes than the simple '3% richer than standard all over' answer that is trotted out by so many 'tuners' and after market Fuel Injection people.  Merely fitting a 'richer Eprom' is not the idea, fitting one that has been designed specifically and accurately for a particular spec however is the only way to go.

To build a completely new Map the only way to do it is by going for a ride with a dual channel lambda probe, one for each cylinder, and a data recorder strapped to the relevant bits of the bike.  The resulting readout will tell you where it is lean and where it is rich.  On the basis of this info you cut a new Eprom and off you go for another ride to repeat the process.

There are many variables in the fuel injection data being received by the computer.  When you think of how much of the system is dependant on the information received from the throttle position a standard Ducati workshop manual requirement of 'plus or minus 10%' for the throttle position sensor readout at tickover does not help. There can also be small variables in the various sensors and more importantly in the Fuel Pressure regulator - a mechanical blow off valve comprising of a spring on a washer in a stamped tin can only be so accurate….  Smelly petrolly pumpy bit

The Sigma formula is to use very accurate Ultimap fuel maps in engines that have been brought exactly to the same specification as the bike that was used to build the map. We then use the adjustability of the Eprom to take out any Fuel injection system variables by looking for good CO2 readings on a dyno, both at full throttle and tickover and by getting the rider to report back any changes he/she would like. For more details of what we prescribe hit here.

It is important to keep the typical dyno run in its place as well.  With a modern rolling road of the Dynojet type you can only measure the power produced from say 4000 rpm to redline, at full throttle only. On the 748 grid above you will see that you have checked the mixture in only 9 of the possible 256 locations.

The biggest battle is to get part throttle or part load situations to fuel correctly, indeed coming from a racing background, the biggest hurdle for us has been the necessity for the engine to carburet correctly when filtering between cars in a town, this simply wasn't on the agenda at Daytona or Brands Hatch. If you are at the optimum temperature, If you are riding normally you will still be rolling the throttle on and off as you blitz down the road, you will very rarely be using the bit of the map that a dynojet measures. That means you are relying on the middle of the main and offset fuel maps and the ignition curve to decide how your bike responds.

The standard factory maps have to pass environmental legislation standards. This affects how lean they are (some are embarrassingly lean), and they have ignition curves that allow the standard bike an easier time going through the noise test. Aftermarket suppliers can change all the variables mentioned in this article, and a few others. The question is what have they changed, and how well will the bike run after it has been reprogrammed.

We use FIM Ultimap Eprom's when we build an engine.  We do that because we know there is a good base map for our chosen application, at all revs and throttle points. There are also very effective offset and ignition maps in there. We also use them because we can further adjust them to the individual bike, it lets us make the injection as good as it can be.  For the flashload computers we use FIM Flashload technology for the same reason.

If you now want more detail on how the FIM Ultimap reprogrammable system works have a look here.

Neil Spalding and Duane Mitchell

Print Page 

    © 1999-2022  Text: Neil Spalding  Site design: Gel Creative