{"id":1694,"date":"2020-04-06T11:05:54","date_gmt":"2020-04-06T10:05:54","guid":{"rendered":"http:\/\/www.beady.com\/blog\/?p=1694"},"modified":"2020-04-09T19:57:04","modified_gmt":"2020-04-09T18:57:04","slug":"p38-autobox-comms-with-the-m57-engine","status":"publish","type":"post","link":"https:\/\/www.beady.com\/blog\/p38-autobox-comms-with-the-m57-engine\/","title":{"rendered":"P38 Autobox comms with the M57 engine"},"content":{"rendered":"\n<p>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. <\/p>\n\n\n\n<p>But this covid-19 has to have some upsides and this is one of them.<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p><em>Three other blog posts on P38\/BMW techy stuff&#8230;.<\/em><\/p>\n\n\n\n<p><a rel=\"noreferrer noopener\" aria-label=\" (opens in a new tab)\" href=\"http:\/\/www.beady.com\/blog\/bmw-m57-cruise-control\/\" target=\"_blank\">BMW M57 Cruise control in a conversion<\/a><\/p>\n\n\n\n<p><a href=\"http:\/\/www.beady.com\/blog\/p38-becm-communications\/\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\" (opens in a new tab)\">Simple hack for the P38 BECM serial communications<\/a><\/p>\n\n\n\n<p><a href=\"http:\/\/www.beady.com\/blog\/hvac-on-a-p38-with-a-m57-bmw-engine\/\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\" (opens in a new tab)\">Making the HVAC work on a P38 with a M57 conversion<\/a><\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>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&#8217;s controller MAPS, we tried using the 4.6 gearbox ECU and also modifying the torque converters.<\/p>\n\n\n\n<p>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 .<\/p>\n\n\n\n<p>Lets start with the wires. they are different on the &lt;99 car and &gt;99 cars.<\/p>\n\n\n\n<p>pre 99 Model year cars ( ones with the red hazard light switch) <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" loading=\"lazy\" width=\"573\" height=\"1024\" src=\"http:\/\/www.beady.com\/blog\/wp-content\/uploads\/2020\/04\/pre99-MY-gearbox-wires-573x1024.png\" alt=\"wiring on  p38 for the autobox signal  range rover campervan canversion M57 diesel\" class=\"wp-image-1695\" srcset=\"https:\/\/www.beady.com\/blog\/wp-content\/uploads\/2020\/04\/pre99-MY-gearbox-wires-573x1024.png 573w, https:\/\/www.beady.com\/blog\/wp-content\/uploads\/2020\/04\/pre99-MY-gearbox-wires-168x300.png 168w, https:\/\/www.beady.com\/blog\/wp-content\/uploads\/2020\/04\/pre99-MY-gearbox-wires-768x1374.png 768w, https:\/\/www.beady.com\/blog\/wp-content\/uploads\/2020\/04\/pre99-MY-gearbox-wires-859x1536.png 859w, https:\/\/www.beady.com\/blog\/wp-content\/uploads\/2020\/04\/pre99-MY-gearbox-wires.png 898w\" sizes=\"(max-width: 573px) 100vw, 573px\" \/><\/figure>\n\n\n\n<p>Post 99 MY cars , one with a black hazard light switch.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" loading=\"lazy\" width=\"549\" height=\"1024\" src=\"http:\/\/www.beady.com\/blog\/wp-content\/uploads\/2020\/04\/my99-on-gearbox-wires-549x1024.png\" alt=\"\" class=\"wp-image-1696\" srcset=\"https:\/\/www.beady.com\/blog\/wp-content\/uploads\/2020\/04\/my99-on-gearbox-wires-549x1024.png 549w, https:\/\/www.beady.com\/blog\/wp-content\/uploads\/2020\/04\/my99-on-gearbox-wires-161x300.png 161w, https:\/\/www.beady.com\/blog\/wp-content\/uploads\/2020\/04\/my99-on-gearbox-wires-768x1432.png 768w, https:\/\/www.beady.com\/blog\/wp-content\/uploads\/2020\/04\/my99-on-gearbox-wires-824x1536.png 824w, https:\/\/www.beady.com\/blog\/wp-content\/uploads\/2020\/04\/my99-on-gearbox-wires.png 900w\" sizes=\"(max-width: 549px) 100vw, 549px\" \/><\/figure>\n\n\n\n<p>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. <\/p>\n\n\n\n<p>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&#8217;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.<\/p>\n\n\n\n<p>The OY wire has the data signal 12v PktoPk square wave<\/p>\n\n\n\n<p>The signal is basically a clever PWM consisting of a timing pulse then 9 x (throttle position then engine torque).<\/p>\n\n\n\n<p>the timing pulse is  <\/p>\n\n\n\n<p class=\"has-text-align-center\">5mS HI, 500  uS Low,5ms HI, 500Ms Low<\/p>\n\n\n\n<p>the throttle and torque have the same total period of 5.4 mS (185 Hz)<\/p>\n\n\n\n<p class=\"has-text-align-center\">zero throttle is 800uS Hi and 4.8mS Low<\/p>\n\n\n\n<p class=\"has-text-align-center\">50% thottlle is 2700uS Hi and 2700Us Low<\/p>\n\n\n\n<p class=\"has-text-align-center\">100 Throttle is 4.8mS Ho and 800uS Low<\/p>\n\n\n\n<p>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.<\/p>\n\n\n\n<p>this data is easiy obtained from the M57 ECU via the CAN bus datastream.<\/p>\n\n\n\n<p>here is the data for the CAN bus :<\/p>\n\n\n\n<p><a href=\"http:\/\/www.beady.com\/BigFileForBlog\/CAN_BUS_info_for_BMW_engines.zip\" target=\"_blank\" rel=\"noreferrer noopener\">BMW CAN bus data info.zip<\/a><\/p>\n\n\n\n<p>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.<\/p>\n\n\n\n<p><a href=\"http:\/\/www.beady.com\/BigFileForBlog\/RangeRover_Gearbox_Controller_firmware.zip\" target=\"_blank\" rel=\"noreferrer noopener\">RangeRover_Gearbox_Controller_firmware.zip<\/a><\/p>\n\n\n\n<p>The password is here <a rel=\"noreferrer noopener\" aria-label=\"http:\/\/www.beady.com\/blog\/beady\/ (opens in a new tab)\" href=\"http:\/\/www.beady.com\/blog\/beady\/\" target=\"_blank\">????<\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Please send me any updates so I can add to this so we can help others that follow.<\/h4>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>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&#8230;.<\/p>\n","protected":false},"author":1,"featured_media":1702,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5,31,73],"tags":[],"post_folder":[],"_links":{"self":[{"href":"https:\/\/www.beady.com\/blog\/wp-json\/wp\/v2\/posts\/1694"}],"collection":[{"href":"https:\/\/www.beady.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.beady.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.beady.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.beady.com\/blog\/wp-json\/wp\/v2\/comments?post=1694"}],"version-history":[{"count":11,"href":"https:\/\/www.beady.com\/blog\/wp-json\/wp\/v2\/posts\/1694\/revisions"}],"predecessor-version":[{"id":1754,"href":"https:\/\/www.beady.com\/blog\/wp-json\/wp\/v2\/posts\/1694\/revisions\/1754"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.beady.com\/blog\/wp-json\/wp\/v2\/media\/1702"}],"wp:attachment":[{"href":"https:\/\/www.beady.com\/blog\/wp-json\/wp\/v2\/media?parent=1694"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.beady.com\/blog\/wp-json\/wp\/v2\/categories?post=1694"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.beady.com\/blog\/wp-json\/wp\/v2\/tags?post=1694"},{"taxonomy":"post_folder","embeddable":true,"href":"https:\/\/www.beady.com\/blog\/wp-json\/wp\/v2\/post_folder?post=1694"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}