Main Page

From S54Swap
Revision as of 11:24, 3 January 2021 by S54swap (talk | contribs) (Engine Preparation)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Welcome to! This Wiki has been established and maintained by Kassel Performance. Please feel free to contribute!

KP logo final.png

If you have any kind of questions pertaining to where and exactly how to make use of Visit Website, you could contact us at the internet site. These entries will serve as references to working configurations of S54 swaps into the BMW E30, E36, and E46 chassis. Tested and working contributions are welcome!

E30 S54 Swaps

Engine Preparation

The S54 engine should be gone over before installation. At minimum, the valves should be adjusted and the VANOS should be inspected for wear on the exhaust hub, seals, and intake cam sprocket bolts

Valve Adjustment/Valve Cover Gaskets

Rod Bearings:

  • ACL Rod Bearings are used primarily at Kassel - Coated bearings are considered to be unnecessary


  • Manifold gaskets x6 (11627830667)
  • Manifold nuts x18 (11721437202)
  • Manifold v-bands x2 (Vibrant 2.5" optional)
  • Bead blast (optional)

Air Intake:

  • The "Castro Box" from CastroMotorsport is the recommended air intake box for the E30 swap


  • Flow test and rebuild fuel injectors
  • Replace 12 o-rings in air injection tubes (13417830384)

Cooling: If you would like to use the late model expansion tank on the driver's side the Z3M pieces should be employed. If using the "pill" overflow in the back passenger corner, the E46 M3 pieces are to be used.

  • Thermostat and gasket (11531318274 and 11531318402)
  • Water pipe o-rings on back of thermostat (11537830709 x2)
  • If mounting overflow bottle in stock location on driver's side fender:
    • Water pump Z3M (11517838135)
    • Water pump gasket (11517831099)
    • Water pipe and o-ring (11537830988 and 11537830712)
    • Pipe to overflow bottle hose #1 (11537830994)
    • Hose and union to hose above (Part numbers needed)
  • Slim diesel fan (fits depending on radiator choice - will NOT fit with thicker cores - 11522243303)
  • Z3M upper and lower coolant hoses (11537831026 and 11531401726)


The main concern when considering an exhaust system for an S54 E30 swap is ground clearance. For vehicles that are extremely low, 2.5" diameter pipe is recommended. At no point should any SINGLE piped exhaust go smaller than 2.5" diameter. The area at the subframe tends to be the lowest point and sometimes round to oval tubing is used here. Budget typically dictates what route to take. A common and proven exhaust setup is as follows:

  • Stock S54 headers, cut just in front of cats
  • 2.5" Vibrant V-bands welded to headers
  • 2.5" Vibrant 2-1 2.5" merge collector
  • 2.5" SS with center and rear mufflers of choice
    • FlowMaster HP-2 12518409 in middle
    • Magnaflow 13266 at rear
  • Post cat O2 sensor delete via Kassel Performance

REMEMBER - The merge for 2-1 should occur as far to the rear of the chassis as possible. DO NOT MERGE THE EXHAUST GASES near the headers. This will result in a very large torque loss in the lower RPM ranges.

Kassel Performance 2.5" Vband on stock header


Fueling for the S54 swap is very similar to any other 24V swap. The main difference between an M50/M52/S50/S52 is that the S54 runs on a 5 bar fuel pump as opposed to a 3.5 bar system in the traditional 24V. The Walbro 255lph is an inexpensive drop in style pump that works well with the E30 hanger.

  • Kassel Performance fuel pressure regulator to barbed fitting kit
  • Walbro 255lph GS342 (many different pumps could work here but kit #GS342 is confirmed working with pickup and output on correct sides)
  • E46 M3 fuel line (any fuel line should work but wanted to utilize quick connects) (16122229410)

Kassel Performance FPR Conversion
Kassel Performance Walbro 255 fuel pump drop in kit.


The S54 requires additional cooling over a standard 24V swap. The thicker 3 core radiator is recommended although not required. When using the thicker core, the BMW OEM diesel fan can NOT be used even though it is much thinner than the original fan design. A thin 16" SPAL fan will fit between the MZ3 radiator and water pump if the water pump nut is cut off. Thinner 2 core radiators can accommodate the diesel mechanical fan. The fan clutch can be shaved down slightly to allow for additional clearance. Also, the expansion tank can be mounted in either the front driver's side fender per the factory or in the back passenger's side 'battery box' per the E30 M3. If starting with an S54 from an MZ3 the stock water pump and crossover water pipe can be used. The MZ3 and E46 M3 water pumps differ in that the E46 M3 has a fitting that routes water to the expansion tank in front of the engine and above the exhaust manifolds. The MZ3 S54 water pump is cast whole from the factory and uses a different crossover water pipe.

For the heater core lines, connect the hose from behind the cylinder to to the bottom pipe on the heater core line on the E30. The top line is connected to the metal pipe coming off the thermostat.

The following parts are needed to mount the expansion tank in the stock location on most E30's:

  • E36 MZ3 S54 3 core radiator (17112227281)
  • E36 MZ3 S54 water pipe (11537830988)
  • E36 MZ3 water pump ideally or E46 M3 water pump with hole for overflow tube plugged
  • E36 MZ3 upper and lower coolant hoses (11537831026 and 11531401726)
  • E36 MZ3 water pipe to overflow hose + union fitting and hose (need part number) to overflow (11537830994)
  • E46 M3 stock heater core hoses
  • 13" Thin Spal fan mounted towards driver's side - this will fit with the MZ3 radiator

  • Only with a radiator thinner than the 3 core MZ3
    • Shaved fan clutch
    • Euro diesel slim fan (11522243303)
    • or 16" SPAL thin electric fan

  • SPAL wiring information - If adding a fan in addition to the front condenser fan:
    • 30 - 12V fused
    • 85 - Ground
    • 86 - BK pin 2 of radiator temp switch
    • 87 - + on fan
    • Ground on fan - to ground


The S54 swap is very similar to the standard 24V DOHC swap for E30's. The E34 M50 oil pan, pump, and dipstick is the simplest method to clear the E30 subframe. The S54 oil pump sprocket must be used since it has an offset design that will properly align it with the oil pump chain. It is highly recommended to LocTite the oil pump nut at a minimum and weld if possible to prevent backing off. Several oil coolers can be made to work; however, the cleanest install is with the MZ3 oil cooler recessed into the 3 core MZ3 coolant radiator. Finally, the valve cover breather hose will need to be routed to the oil dipstick drain tube (must be added), or to a bung in the oil pan. The stock setup drains to a port on the rear sump of pan which is no longer present with the E34 oil pan.

The stock M20 oil cooler can be used in the factory location if desired. We do not have data on cooling however. The best approach for making lines would be to convert the ends to -10 AN male fittings and making custom lines up to the factory S54 oil filter housing where the Turner AN conversion kit can be used.

  • Kassel Performance modified E34 M50 oil pan (increased clearance, not yet available for sale)
  • M50/M52/S50/S52 oil pump (11411740155)
  • S54 oil pump sprocket (offset vs straight on M50) (11411317284)
  • E34 M50 pick up tube and gasket (11411748150)
  • S54 oil pan gasket (1131437237)
  • MZ3 stock oil cooler to fit in cutout under MZ3 coolant radiator
  • Custom oil cooler lines with Turner Motorsport AN conversions for oil filter housing and oil cooler
  • Kassel Performance valve cover breather hose setup (not yet available for sale)

Transmission / Diff

Many different transmissions can be used for this swap. The simplest being a 5 speed from an E36. When using the 5 speed such as the ZF S5D 320 or Getrag 250 the standard 5 speed E36 linkages can be used. A driveshaft from an E30 M3 or E36 328i manual can be used.

When swapping to an S54, it is preferred to use a 6 speed transmission. The E46 M3 was originally equipped with a Getrag 420 and fits easily into the E30. The linkages needed can be sourced from the E36 M3 Euro 6 speed cars. An E36 M3 automatic driveshaft can be directly bolted up to the transmission and stock 4 bolt flange on the E30 differential. Use an E30 center support bearing when using any driveshaft for the swap. A pigtail needs to be made for the reverse light switch on the 6 speed. Use a 2 pol AMP connector and necessary wire to construct the pigtail. Crimp to existing E30 chassis reverse light wiring.

Transmission mounts of your choice can be used. A typical upgrade is to use the larger E21 320 mounts. The E30 325i transmission bracket is used for both the E36 5 speed and E46 6 speeds. A Kassel Performance transmission adapter kit will be needed for an easy bolt up solution for any of the E46 6 speed transmissions. The E46 330i ZHP 6-speed (ZF GS6-37) and E90/E60 6-speed (ZF 6HP26) can be used and need the adapter kit as well.

The flywheel used should match whatever starter is being used. The clutch needs to match the splines on the transmission. For ease of operation, all stock E46 M3 clutch components are typically used.

The differential gearing is very subjective and should be chosen based off of the goals for the car. Typically an aggressive but streetable ratio for a 5 speed is the 3.46. When using the 6 speed a nice balance is the 3.73. Adding an additional clutch pack will bring the lock of the differential up to 40% which will aid in getting power to the wheels.

  • E46 M3 Getrag 420G 6 speed
  • E46 M3 stock dual mass flywheel (Luk DMF050)
  • E46 M3 stock self adjusting clutch (Luk 03-054)
  • Upgraded metal pivot pin from 850CSi (21511223281 / optional)
  • E46 M3 shift lever (25117527255)
  • E36 M3 Euro shifter carrier and selecting rod (25112227893 and 25112228055)
  • E36 M3 Slave Cylinder
  • E36 M3 US auto driveshaft
  • E30 325i center support bearing (26121226723 for late model)
  • 2 pol JPT AMP connector for reverse light wiring
  • E21 upgraded stock transmission mounts
  • Kassel Performance transmission swap bracket kit
  • BimmerDiffs 40% clutch upgrade with full rebuild / 3.73 ratio (optional)
  • Garagistic delrin carrier bushing and clip bushing (optional)
Kassel Performance E30 6 speed custom bracketry


The power steering pump mounts quite differently on the S54. Subsequently, there are a few routes that can be taken. The most popular upgrade is to use an E36 style steering rack. The Z3 1.9 more specifically has the closest ratio and performs quite well in the E30. In order to mount it, AKG Motorsports sells an adapter kit. The linkage guibo is typically upgraded or replaced at this time as well. The E36 power steering reservoir mounts to the E36 motor mount arm and the hoses are standard E36 units. In order to mount the E36 pump to the S54, spacers need to be added to the mounting bracket. 318ti seat belt spacers ground down a few mm's work quite well for this application.

If under a strict budget, the E30 rack can be maintained with no modifications and could be blocked off or looped to save even more essentially converting it to a manual rack. Steering effort will be greatly increased especially at low speeds. If no assistance is the route you take, a shorter main engine belt will need to sourced to take up the extra distance of the power steering pulley.

  • Z3 1.9 close ratio steering rack
  • AKG E36 steering rack conversion kit
  • AKG poly linkage coupler


The S54 air intake plenum will contact the stock brake booster and will not be able to be installed with the stock unit in place. Manual brakes can be used, however this is NOT recommended for a vehicle that is used on the street. The stock brake booster moved over .5" will NOT work with the S54. A smaller brake booster must be used or the airbox can be modified if you have the skill to do so.

  • Racecar Only
    • Manual braking setup
Kassel Performance Modified Air Box


In order to integrate the S54 wiring to the E30 wiring, Kassel Performance can sell you a plug and play adapter. This adapter has made it extraordinarily easy to plug into the DME, S54 engine harness, and the C101 on the E30. An OEM OBD2 adapter, electronic throttle wiring, and sport button are the only 3 components that need to go inside the chassis. An E46 M3 fuel pump relay will need to be provided by the end user.

The wiring is most easily managed by removing the unnecessary grommets and coverings and rewrapping with a high temperature tape (Tesa 51006). All connectors can be pushed through the firewall and the E30 rubber main firewall grommet can be reused from the original wiring loom. The E30 M3 engine wiring covers can be used to conceal the wiring in the engine bay.

The stock ECU is the preferred choice to run the engine. The DME will need to be sent out to be re-programmed for the swap as well. Any MSS54 / MSS54HP can be reprogrammed to a manual regardless of the original configuration. After coding, the DME will be turn key.

Depending on which gauge cluster is used, a coding plug may be necessary. The stock E30 7,000 RPM gauge will read appropriately, however the needle will sweep past 7,000 on it's way to the 8,000 RPM redline of the S54. If the E30 M3 cluster is used, the coding plug needs to be switched to the E28 M5 unit. This will read accurately all of the way to 8,000 RPM. Bavarian Restoration has created an 8,000 RPM gauge overlay that appears to be close to stock although we have not seen one as of yet (hopefully soon!). The S38 coding plug would be required for this overlay. Finally, in order for the coolant temp sensor in the cluster to function, the E30 single pin brown temp sender needs to be added to the coolant line of the S54. This can be done by either drilling and tapping the thermostat housing, or using an adapter to replace the coolant pipe behind the thermostat with a unit from Techmica Motorsport. This would still need to be tapped to a larger M14x1.5 to work with the E30 sensor.

  • Kassel Performance MSS54 / MSS54HP E30 flash tune - Ultimate Swap Tune with VIN recoding, EWS delete, etc
  • Kassel Performance Plug and Play adapter harness
  • MZ3 engine wiring harness (12517831637) (optional if desired mounting location is in passenger side glovebox)
  • E30 M3 wiring covers set (51711380392 51711380391 51711380390 )
  • E30 brown single pin temperature sender for cluster (12621710512)
  • E28 M5 S38 coding plug for 8,000 RPM tachometer (only needed if using an 8,000RPM gauge) (62111377664)
Kassel Performance Plug and Play Wiring Adapter
Kassel Performance Coded ECU

E36 S54 Swaps



The MSS54 needs to be heavily modified for error free performance in the E36 chassis. Additionally it is recommend that the VIN of the chassis is hard coded to the DME if the E36 is new enough to require state inspection/emissions testing.


The Kassel E36 plug and play wiring solution is unique for a few reasons. The harness is all heat shrink labeled and all connectors only have one other corresponding connector. This makes installation very simple. Additionally, the more commonly available light green fuel pump relay is used as opposed to the E46 M3 EKP and is built to mount in the stock location beside the fuse box. One other unique feature is the utilization of the stock OBD2 coolant sensor to be mounted in the S54 head. The wiring harness allows for this style of sensor in order to supply the proper signal to both the ECU and cluster. There is NO longer a need to remotely mount an E36 coolant sensor in the coolant path. This is a full OE integration!


The S54 requires additional cooling over a standard 24V swap. The thicker 3 core radiator from a Z3M is recommended. The oil cooler, lines, and brackets from the Z3M will be a plug and play solution as well and have proven to be adequate for the E36 chassis.

A stock mechanical fan and clutch should OR a 16" Spal thin puller fan setup with custom brackets.

Since the Z3M radiator does not have a built in expansion tank, the Euro M3 setup is a good solution.

  • SPAL wiring information - If adding a fan in addition to the front condenser fan:
    • 30 - 12V fused
    • 85 - Ground
    • 86 - BK pin 2 of radiator temp switch
    • 87 - + on fan
    • Ground on fan - to ground

E46 S54 Swaps



The MSS54 / HP ECU will need to be programmed for a non-M swap. If the VIN is not properly changed to align with the cluster, steering angle sensor, and DSC, there will be persistent ABS/DSC error. Additionally, many other parameters need to be changed in order for cruise control and other emissions related programming to properly function.


The M3 cluster is a direct plug and play into any non M E46; HOWEVER, there will be a tamper dot and the DSC will never fully come on board unless the cluster is properly programmed.

Kassel can program the correct VIN and chassis mileage to the cluster.

Kassel Performance reprogrammed S54 M3 cluster


There are 3 main variants of non-M E46's. The early pre-facelift 323 and 328 were fitted with Siemens MS42 engine controllers. The facelift 325 and 330 were fitted with MS43 engine controllers. And finally the later 325 and 330 vehicles were fitted with the MS45.x ECU's. Once you determine which ECU the original vehicle was built with, reference the attached wiring diagram to determine which wires need to be added, moved, or deleted.

Kassel Performance E46 Wiring Chart