P38 Autobox comms with the M57 engine

I am putting some info on the web for all to use and add to, I did this work over ten years ago and never got around to sharing it.

But this covid-19 has to have some upsides and this is one of them.

Three other blog posts on P38/BMW techy stuff….

BMW M57 Cruise control in a conversion

Simple hack for the P38 BECM serial communications

Making the HVAC work on a P38 with a M57 conversion

When we did the first M57 into a P38 back in 2006 the autobox was the difficult bit and the datastream between the original M51 ECU and the gearbox controller was a pain, it took a few hundred hours of reverse engineering and then I was never 100% happy with the conversion, while the data stream worked perfect there was still a conflict with the torque produced by the M57 and the torque converter settings in the gearbox and it’s controller MAPS, we tried using the 4.6 gearbox ECU and also modifying the torque converters.

The issue is getting the gearbox to coast, ie when you lift off ,the gearbox goes into neutral. This data stream does remove all the errors and stops limp mode, the sport switch flashes when the gearbox ECU has an error and is Limp mode.We made a companion PC program for the converter so we could change the throttle and torque settings on the fly over Rs232, thereby gearing the data to the gearbox ECU but nothing really got it perfect, it is a usable simple engine conversion but the autobox still bugged me, we sold only a few of them. The time to fix this issue was not justified by the price we sold them for, if it had been for the Desert Warriors it would have sold for 10 times the price and the customer would have a spare just in case .

Lets start with the wires. they are different on the <99 car and >99 cars.

pre 99 Model year cars ( ones with the red hazard light switch)

wiring on  p38 for the autobox signal  range rover campervan canversion M57 diesel

Post 99 MY cars , one with a black hazard light switch.

luckily both the wires into the gearbox ECU stay the same colour and function. it is the OY and SR wires we are interested in.

The SR wire is the torque reduction request from the gearbox to the ECU, so it can change gear easily, The M57 wants this info over CAN-Bus and we did wire it to the CAN bus converter but we never implemented this and found it made little difference, if you aren’t going to try using it then this must be connected to +12v via a 1.5k resistor, to stop errors. The signal is a PWM from the gearbox and is around 100HZ 50% normally.

The OY wire has the data signal 12v PktoPk square wave

The signal is basically a clever PWM consisting of a timing pulse then 9 x (throttle position then engine torque).

the timing pulse is

5mS HI, 500 uS Low,5ms HI, 500Ms Low

the throttle and torque have the same total period of 5.4 mS (185 Hz)

zero throttle is 800uS Hi and 4.8mS Low

50% thottlle is 2700uS Hi and 2700Us Low

100 Throttle is 4.8mS Ho and 800uS Low

after the throttle, the torque pulse uses the same format but is 0-255 range instead of 0-100%. after nine pairs of throttle and torque, there needs to be a timing signal.

this data is easiy obtained from the M57 ECU via the CAN bus datastream.

here is the data for the CAN bus :

BMW CAN bus data info.zip

This Zip contains the firmware (.BIN files) for the gearbox controllers, I remember that the controllers are the same except for the firmware so they can be swapped onto the EPROM and tested, there are torque maps inside them for the gearchanges but we never had time to mess with them, the 4.6 uses an extra wire for the signals if you need that I have it.


The password is here ????

Please send me any updates so I can add to this so we can help others that follow.

Share your joy of knowledge with the world..

7 thoughts on “P38 Autobox comms with the M57 engine

  1. Luis Alberto lazarte
    Luis Alberto lazarte says:

    Hola !!!!!
    Tu trabajo es espectacular!!!!
    Mi pregunta es la siguiente: si la conversión de M51 a M57 es pero con una caja manual?
    Todos esos líos de cables de comunicación no harían falta ? No?

    1. Beady

      caja manual es fácil, caja automática que necesita para controlar la caja de cambios, ver este post ..

      1. Luis Alberto lazarte
        Luis Alberto lazarte says:

        Agradezco tu respuesta.y pido disculpas por la tardanza en leerla.

  2. Jacek

    is changing firmware in gearbox controller the only thing I need to do? Or should I install CAN-bus data converter too?

    1. Beady

      You need the CAN bus converter, if you change the firmware then you still need the converter, just the signals are different, the early petrols used an extra wire for the signals. If you are converting a diesel ( easiest one to do) then the auto gearbox will be in error/limp mode all the time.
      over on rangerrovers.pub forum there is a discussion about sending the CAN data from the DDE4 M57 ecu straight into the later 99-> petrol ecu, because this was how it works as standard. it’s worth a read.

      a community effort to make an Arduino CAN emulator would be worth it, then it could get updated with a group effort to work correct from my starting point.

  3. Jacek

    I am going to change from m51 to m57 in my p38.
    the topic stopped on the chest communication with ecu.
    I am impressed with your work. I’d love to replace the firmware, but unfortunately the file link is not active

    1. Beady

      thanks, and good luck with the conversion

Leave a Reply

Your email address will not be published.