BMW E39 540

m62b44 install in e39 (2)

Swapping over the old engine harness to the new engine. The new M62B44 originally came from a car with an auto transmission, and therefore some of the plugs and connectors differed from the ones in my manual 535i.

m62b44 install in e39 (3)

Replacing the steering box with the new one out of an M5 E39. The steering ratio is quicker(3 vs 3.8 turns), and it also has servotronic which can be plugged in – more on that in another post.

m62b44 install in e39 (4)

The subframe can also be used as a chair.

m62b44 install in e39 (5)

The M62B44 going in. We decided to leave the headers out, due to the trouble of taking the engine out with them still attached. In hindsight we probably should have removed the entire front and left the headers on for the drop in, because tightening the header nuts with the engine in the car is a true PITA. Be warned – this task takes several hours, and your hands will become bruised and cramp up.


Flywheel clutch install m62 engine (2)

Trying out the clutch centering tool on the brand new 535i flywheel. The tool consists of an input shaft from a Volvo transmission(probably from a B20). Since the old ZF 5-speed transmission, clutch disc and pressure plate was re-used, a 535i flywheel had to be fitted. Not sure about the difference between the flywheels – but they have different part numbers, better safe than sorry!

Flywheel clutch install m62 engine (5)

Flywheel clutch install m62 engine (1)

Centering tool in action.

oilpan m62 bmw (4)


Oil pan off for inspection and replacement of the gasket.

oilpan m62 bmw (5)

Some elbow grease applied to the oil pan.

m62b44 install in e39 (6)

The finished product. We had a no spark no fuel issue to begin with, turned out that I had mixed up the connectors for the reverse light and crankshaft sensor on the transmission. They are pretty much identical. Also had to replace the coils with the old ones, the new ones caused misfires. She now works flawlessly; no problems with the clutch slipping despite having an extra 100 nm of torque, and the engine management accepted the bigger engine without any issues. The fuel trims seem to have adapted to the bigger displacement, but a flash to the appropiate software will be done later on to squeeze out the last percent(s) of performance.

Providing a list of parts that were replaced:

M62B44 out of a 540iA 06/97 (same month/year as the car, both uses Motronic 5.2)
Rear main seal
Valve cover gaskets + all of the rubber grommets
Oil pan gasket
535i LUK dual mass flywheel
Transmission output, input and shifter arm seal
Shift rod joint
M5 steering box
Mobil 1 Dexron 3 ATF in the transmission and power steering, 1.3 L in the transmission, 1.9 L in the power steering
Aral Supertronic 0w40 in the engine

4 thoughts on “535i E39 to 540i engine swap completed”

  1. i have rebuilt my bmws 540i engine. it is also a 1997 model with the M62B44 engine. the issue is that I am a novice and can’t seem to get the wiring harness portion down. I am getting no power to the starter and i believe it is due to the engine harness hook ups. do you have any advice or directions for this type situation?

  2. Just wanted to say thanks for this write up – there seems to be an almost total lack of any info on the M62b35>m62b44 swap (probably because the 3.5 wasn’t ever sold in the US…). Very glad to hear that is a plug and play affair electronics-wise. Hope its going to go as smoothly for my swap using TU (vanos) engines…

    1. Took about one evening pulling the old engine and then a full day putting the new one in. So about 5 + 10 hours. It can certainly be done faster – we replaced the steering box, transmission input/outshaft seals and all the shifter linkage bushings. Also put back headers and transmission seperately due to the lack of a real engine hoist, and/or because I didn’t want to go through removing the front support along with the AC condenser and thus having to recharge the system.

Leave a Reply

Your email address will not be published. Required fields are marked *


twenty seven − twenty =