
BMS43 and BMS46: the M43 Four-Cylinder in the E36, E46 and Z3
Bosch BMS43 and BMS46 in the 316i, 318i and Z3 1.9: which engines belong here, what software realistically adds to a small NA engine and what matters first.
October 26, 2026 by Leo Efimow
The M43 is not an engine that gets talked about much in tuning forums. It is a solid, unexcited four-cylinder that powered countless BMWs in the 1990s and early 2000s: the E36 316i and 318i, the Z3 1.8 and 1.9, the E46 316i and 318i. Many of these cars are now entry-level modern classics or loyal everyday companions with high mileage. They are controlled by the Bosch ECUs BMS43 and BMS46. This article covers which vehicles have which ECU, what a software adaptation realistically delivers on a small naturally aspirated engine and what you should look out for beforehand. To be honest: anyone counting on big numbers here will be disappointed. Anyone who wants a smoother, more eager car, on the other hand, can be satisfied.
The engines: M43, M44 and M43TU
The M43 arrived in 1993 as the successor to the M40. It is a four-cylinder with eight valves and a single overhead camshaft, in 1.6-litre (M43B16, 102 hp) and 1.8-litre (M43B18, 115 hp) versions. Typical vehicles are the E36 316i and 318i and the Z3 1.8.
Closely related is the M44, a 1.9-litre four-cylinder with 16 valves and 140 hp. It powers the E36 318is and 318ti and the early Z3 1.9.
From 1998 the revised M43TU followed, with 1.9 litres of displacement. Depending on the version it produces 105 hp, for example in the E46 316i, or 118 hp, for example in the E46 318i and the later Z3 1.9. In the E46 the M43TU was replaced around 2001 by the N42 with Valvetronic.

Which ECU is where
BMS stands for "Basis-Motor-Steuerung", basic engine management, a system developed by Bosch specifically for the small BMW four-cylinders. In practice the assignment looks like this:
| Engine | Typical vehicles | ECU |
|---|---|---|
| M43B16 / M43B18 (from the mid-1990s) | E36 316i/318i, Z3 1.8 | Bosch BMS43 |
| M44B19 | E36 318is/318ti, Z3 1.9 (until 1999) | Bosch BMS43 |
| M43TUB19 | E46 316i/318i, E36 Compact 316i, Z3 1.9 (from 1999) | Bosch BMS46 |
The very first M43s from around 1993 to 1995 still run on a Bosch Motronic of the 1.7 family. For those cars, what we describe in the article on the Motronic classics applies rather more. In the configurator you can see which ECU is stored for each engine.
What the BMS43 and BMS46 control
Both ECUs handle the classic tasks of a petrol engine management system: they calculate injection quantity and ignition timing from engine speed and load, control the mixture via the lambda sensor, hold the idle speed, control tank ventilation and fuel pump and store faults when a sensor delivers implausible values.
Compared with modern ECUs with a torque structure, the BMS43 and BMS46 are still comparatively direct in their design. That makes calibration manageable, but it also requires care: ignition and mixture must match the fuel and the condition of the engine with every change. Ignition timing that is too far advanced does not bring power, but knocking and heat. A reputable calibration therefore deliberately keeps its distance from that limit.
What tuning realistically delivers on a small NA engine
A naturally aspirated engine without a turbocharger has no boost pressure to turn up. The reserves lie in finer calibration of ignition timing and mixture, above all at full load. The numbers are correspondingly small. According to the product page for the E36 316i, the calculated guide value for Stage 1 is around 109 hp and 165 Nm, starting from 102 hp and 150 Nm. For the E46 318i with M43TU, the product page gives around 126 hp and 198 Nm instead of 118 hp and 180 Nm.
That sounds like little, and in percentage terms it is. You still notice it: the engine responds more eagerly, pulls a little harder in the mid-range and feels livelier overall. For a car that is driven every day, that is often the real benefit, not the peak output on paper. If you want significantly more, there is no way around mechanical changes on the M43, and even there the limits of a two-valve engine are reached quickly.
The figures are guide values, not a guarantee. Especially with engines that have 20 to 30 years of service behind them, the result depends heavily on condition.
Before tuning: condition before software
On an M43 or M44 with high mileage, a stocktake usually achieves more than any software. In practice it is worth looking at these points:
- Ignition: spark plugs and ignition coils in good condition are the prerequisite for any ignition timing optimisation.
- Air leaks: porous vacuum hoses, intake gaskets and leaking crankcase ventilation distort mixture formation. Typical symptoms are a rough idle and mixture adaptation faults.
- Lambda sensor and air measurement: a sluggish lambda sensor or inaccurate air measurement mean the ECU is constantly correcting.
- Idle control: a dirty idle control valve shows up as fluctuating engine speed.
- Fuel: for optimised ignition we recommend Super Plus (98 RON), so that enough margin remains between ignition timing and the knock limit.
- General maintenance: oil changes, cooling system and timing drive belong on the checklist regularly anyway with engines of this age.
An engine that runs cleanly and has no faults stored is the best basis.
Process and price
With these older BMWs too, you order online, read out the original software yourself via the diagnostic interface and upload it in the customer portal. Cars with the round 20-pin diagnostic connector in the engine bay need a suitable adapter to the OBD plug. You usually receive the finished file within 48 hours; the software is only paid for once it is finished, and today you only pay for hardware and a €5 deposit. According to the product pages, Stage 1 for the BMS43 and BMS46 cars starts at €150. You can find more about the ECU on the page for the BMS46.
The software change voids your vehicle's type approval; the software is intended for motorsport use only (see the motorsport notice). That also applies to modern classics and cars with historic registration ambitions.
Conclusion
The BMS43 and BMS46 are the ECUs of the small BMW four-cylinders M43, M44 and M43TU in the E36, E46 and Z3. A software adaptation brings no big numbers here, but a smoother, more eager car with a little more pull in the middle. More important than the software is the condition: ignition, air leaks, lambda sensor and idle control should be in order before you change anything. If that is the case, a moderate calibration is a sensible refresh for a loyal everyday classic. Choose your model in the configurator to see engine, ECU and price.