EXXEL Distributions
BMW Garage BMW Meets Register Today's Posts

Go Back   BMW M3 and BMW M4 Forum > BMW F80 M3 / F82 M4 Technical Topics > DIY and Coding Discussions

Post Reply
 
Thread Tools Search this Thread
      03-24-2023, 11:19 PM   #1
F87source
Major General
F87source's Avatar
No_Country
7308
Rep
7,470
Posts

Drives: Bmw M2
Join Date: Aug 2018
Location: .

iTrader: (1)

How to code the Steering (EPS) on an F series BMW


Credit: speedsnice https://f87.bimmerpost.com/forums/sh...81&postcount=3

In this thread I will be teaching you how to code the steering rack (otherwise known as the EPS) as this process should be almost the same on any F series BMW. But the instructions will be specific to my m2 so I cannot guarantee that they will work on other cars, so you can search on the forum of what modules you may need to code to get the desired results if my instructions are not the same for your car. Again I will be talking about coding in context of my 2017 BMW M2, on ISTEP level F020-19-07-539, so what I may be able to do might be different to what you will be able to do as there is a difference in vehicle and software version.

So before we begin you may ask why would I want to code my steering rack? The reason why is because BMW programs these steering racks differently from car to car, and this different programming has significantly different behaviors. Some programming/codings make the steering wheel super light for comfort, this is typically present on non M BMW’s and is typically geared for the luxury feel - meaning you sacrifice alot of steering feel and precision. Some steering feels are extremely heavy to the point where you have to fight the wheel and lose precision, like the stock F87 steering coding. Some steering feels are absolutely perfect in my opinion, and that is the F87cs coding. So having the ability to select different “codings” will allow you to better tailor the car to your desired steering feel, instead of being forced to deal with what BMW gave you from the factory.


Now you may ask how is this possible? Well the answer to that question is because the M2, M2C, M2CS, M3, M3CS, M4, M4CS, and M4 GTS (the non M models also share their own steering racks, and the SUV’s will share their own rack as well) all share the same electronic power steering rack: https://www.realoem.com/bmw/enUS/par...&q=32107852660. The only difference is the programming or coding that is used to operate the steering rack currently selected in the EPS’s ecu, otherwise they are all the same. The good thing about this is BMW does not have bespoke software for each car. Instead they have a bunch of “codings/programmings” in the EPS’s ecu that are toggled to a specific car. So essentially you will already have all the different codings available, all you have to do is set which one you want. The only exception to this is if your car’s current software level otherwise known as ISTEP has those codings available, aka if your car’s software is too old chances are you won’t have the GTS or CS settings. Of course the model of your car will affect this too.


The last question you may have is what do you use to code these things? Well my answer to that is either BMW’s special software called ESYS (which I will not be explaining in this thread), or Protool which is an android app that allows you to code everything ESYS can.

Here is a link to my review on protool explaining everything a bit more in depth, and why you really should buy this app over the alternatives: https://f80.bimmerpost.com/forums/sh...4#post29968634


Disclaimer:

Damage/Injury Disclaimer: Any technical advice, coding advice, installation instruction, or product installation demonstrated in my reviews is to be done at your own risk. I will not be responsible for personal injuries, injuries to others or any living being, or any damage to your car, or any property damage.

Coding these advanced features like the GHAS (differential), power steering (EPS), and DSC (traction control) can be very dangerous as it causes your car to behave much differently than before. So proceed with caution. Again I will not be responsible for any outcome that occurs due to you (the reader) using my instructions to code a car.


Monetary disclaimer: I do not make commission, or profits or any kind of monetary gain from the sale of this App (Protool).

Image Credits:

Images and videos used in this review are all property of their rightful owners as credited below each image, I am just using them for the purpose of this review but if you (the owner of the image) would like them removed please let me know via pm. Otherwise thanks to the respective image owners (I made sure to credit your online name and link where I found the photo) of the photos, without you this review would be so much more bland.


Before we start talking more about coding, I would like to give some tips on how to code your car safely:

Make back ups before you code, this way if something goes wrong you are able to revert your car back to factory settings.
Make sure you know exactly what you are doing before you code. This means doing plenty of research on what coding you will be doing, what the changes itself does, what ecus need to be coded and how to make the changes, and of course if the coding you want to do is available for your car.
Make sure you have an appropriate (and good quality) battery charger to keep your car powered while you code, because if your battery drops below a certain voltage while coding your car will shut off and this can leave the car bricked. For some coding you can leave the engine running while coding, but do not drive while coding.
Use quality cables/wireless adapters - cheapo adapters/cables are slow and can fail part way through the flashing process. In the past I have purchased cheap enet cables from aliexpress, and while on the outside they look clean and good quality. When I opened the obd2 shell I saw how terribly put together they were, the wires were stripped extremely poorly and the cables had patches of exposed copper all over the place. This could lead to a short if the adjacent exposed wires touched, and that would be bad news for the car.
Read the protool’s user guide completely and thoroughly before you begin, failure to do so can result in damage to your car.



How to code the EPS/Steering rack:

Step 0: Connect a battery charger to your car, if it dies during coding you may brick it. Connect only to the under hood terminals not directly to the battery to avoid damaging the IBS. Make sure you read the protools manual before starting to code, failure to do so can result in damage to your car.

Step 1: Connect to your car with protool, after this step you should see a menu screen like so:


Credit: F87Source


Credit: F87source


Credit: F87source


Step 2: From the menu screen you will tap on the Electric Steering (EPS) box under the chassis heading, and the following screen will pop up.


Credit: F87source


Step 3: Click on the coding option and the following screen will pop up:


Credit: F87source


Step 4: From this screen you will click edit coding and the following disclaimer will pop up:


Credit: F87source


Step 4: click confirm and back up the current coding for your car. This is a critical step incase errors were to occur. Afterwards the following menu will be displayed:


Credit: F87source


Credit: F87source


Credit: F87source


Credit: F87source


Step 5: Scroll down to “Variantencodierung Normal” and click on it, the following steering coding options will show up (these options are the chassis codes for each possible car, typically you should code only the chassis codes that share the same steering rack as your car otherwise you risk damage. So for example the m2 can have the m3 and m4 codings and vice versa, as they share the same rack. If in doubt look on the forums to see what others have done before doing anything risky. If you code a non compatible chassis you can get errors, also avoid the not supported, custom, or veh options - only select valid chassis codes AGAIN IF YOU ARE UNSURE DON’T DO IT, RESEARCH THINGS CAREFULLY).


Credit: F87source



Credit: F87source


Credit: F87source


Step 6: select on the desired chassis code, for me I selected F087CS. Once you have done so click on confirm, and then finalize to finish coding your car. You may be told to cycle the ignition afterwards, so follow the instructions on your screen.

Step 7: Disconnect from the car and you are done! If there are any other instructions to follow protool will let you know and you should follow them. Otherwise enjoy your new EPS/steering rack coding!
__________________
Click on the link below to see a compiled list of every review I have ever written:
https://f87.bimmerpost.com/forums/sh...2#post30368242
Appreciate 0
      03-24-2023, 11:20 PM   #2
F87source
Major General
F87source's Avatar
No_Country
7308
Rep
7,470
Posts

Drives: Bmw M2
Join Date: Aug 2018
Location: .

iTrader: (1)

Reserved for future posts.
__________________
Click on the link below to see a compiled list of every review I have ever written:
https://f87.bimmerpost.com/forums/sh...2#post30368242
Appreciate 0
      03-25-2023, 10:55 AM   #3
Metalm4
Banned
6
Rep
78
Posts

Drives: M4
Join Date: Sep 2022
Location: Home

iTrader: (0)

In my view, F87CS is also an option for an M4 Competition. It´s relatively soft in "Comfort" and hard enough in "Sport" and "Sport+".
F82GTS has no real comfort.
Appreciate 0
      03-25-2023, 02:26 PM   #4
F87source
Major General
F87source's Avatar
No_Country
7308
Rep
7,470
Posts

Drives: Bmw M2
Join Date: Aug 2018
Location: .

iTrader: (1)

Quote:
Originally Posted by Metalm4 View Post
In my view, F87CS is also an option for an M4 Competition. It´s relatively soft in "Comfort" and hard enough in "Sport" and "Sport+".
F82GTS has no real comfort.
Yeah I agree, I used to use the gts steering feel but I found it too heavy.
__________________
Click on the link below to see a compiled list of every review I have ever written:
https://f87.bimmerpost.com/forums/sh...2#post30368242
Appreciate 0
      04-22-2024, 01:22 PM   #5
cptclutch
Enlisted Member
14
Rep
42
Posts

Drives: F80 M3 ZCP
Join Date: Mar 2023
Location: US

iTrader: (1)

Quote:
Originally Posted by F87source View Post
Yeah I agree, I used to use the gts steering feel but I found it too heavy.
Do you mind giving some more detail on the difference between the GTS and F87CS feel? I'm on GTS now and still not super happy with it. Sport/+ are unusably heavy and even comfort feels stiff around the center.
Appreciate 0
      04-22-2024, 05:07 PM   #6
F87source
Major General
F87source's Avatar
No_Country
7308
Rep
7,470
Posts

Drives: Bmw M2
Join Date: Aug 2018
Location: .

iTrader: (1)

Quote:
Originally Posted by cptclutch View Post
Do you mind giving some more detail on the difference between the GTS and F87CS feel? I'm on GTS now and still not super happy with it. Sport/+ are unusably heavy and even comfort feels stiff around the center.
Hey! For sure no problem:


GTS: To me it was way too heavy and has way too much of a center seeking feel, aka when the wheel is off center it feels like it wants to point straight way too much and I end up fighting the wheel too much. This results in less precision (atleast imo), because the heavier the wheel the more force you have to use - this results in the use of coarse muscle movements instead of fine muscle movements and you lose precision and control. So I disliked it.


F87CS: This steering setting is ALOT lighter, some people may dislike the lightness but I presonally love it. So what this setting essentially feels like is that it removes alot of that center seeking nature of the GTS steering, but as a result you get alot more precision and control as you don't end up fighting the wheel as much. Steering feel is also still pretty good and not over dampened or assisted, and it isn't too light either. IMO this is the perfect steering feel - atleast for my driving style.
__________________
Click on the link below to see a compiled list of every review I have ever written:
https://f87.bimmerpost.com/forums/sh...2#post30368242
Appreciate 0
      04-25-2024, 11:05 PM   #7
cptclutch
Enlisted Member
14
Rep
42
Posts

Drives: F80 M3 ZCP
Join Date: Mar 2023
Location: US

iTrader: (1)

Thanks!

Also for the EPS flash, does it impact the emission DME scans? I had my car fail after getting the GTS/CS EPS/DCT/EDC flash and kubax said the transmission tune is was flagged me and after he flashed it back to stock I it passed. I'm a bit confused how some flashes trigger the DME mismatch while others don't.
Appreciate 0
      04-26-2024, 12:10 AM   #8
F87source
Major General
F87source's Avatar
No_Country
7308
Rep
7,470
Posts

Drives: Bmw M2
Join Date: Aug 2018
Location: .

iTrader: (1)

Quote:
Originally Posted by cptclutch View Post
Thanks!

Also for the EPS flash, does it impact the emission DME scans? I had my car fail after getting the GTS/CS EPS/DCT/EDC flash and kubax said the transmission tune is was flagged me and after he flashed it back to stock I it passed. I'm a bit confused how some flashes trigger the DME mismatch while others don't.
No problem.

Coding shouldn't affect emissions scans in anyway shape or form. Now flashing itself (like the DME or transmission) will be noticeable by scans and likely caused you to fail your emissions scans. Because flashing changes the default behavior of the car in an unanticipated way - a way not designed by bmw and not emissions tested. Coding just turns on/off features already present in the DME and tested by BMW for emissions, so it wouldn't cause emissions scans to fail nor can it be detected by anything but the most specialized BMW diagnostic tools that the government doesn't have access to. Even standard dealer scans don't show coding changes, you really need to dig deep with BMW specific tools to find them - because it is literally turning on/off what is already there so nothing suspicious or illegal about it (the car was designed to have these coding features, whereas it wasn't designed with the changes a flash would introduce).



Oh and if you want to know how a flash is detectable, that's because it changes DME tables, etc and this can be checked and compared with what BMW likely gives the government for emissions testing. So it is easy to catch if it doesn't match stock. Obviously with coding all the features are already built in and emissions compliant from the get go so nothing to check even if they did have the tools to do so.
__________________
Click on the link below to see a compiled list of every review I have ever written:
https://f87.bimmerpost.com/forums/sh...2#post30368242
Appreciate 0
      04-26-2024, 09:11 AM   #9
cptclutch
Enlisted Member
14
Rep
42
Posts

Drives: F80 M3 ZCP
Join Date: Mar 2023
Location: US

iTrader: (1)

I guess I'm confused because I did end up failing with the GTS DCT flash. From this thread: https://f80.bimmerpost.com/forums/sh....php?t=2048849 it seems like the GTS DCT coding modified the TCU and that's what got me flagged? I just don't understand if thats the case how the EPS coding doesn't do the same thing, unless its stored in a separate area from the "main" DME where the engine code logic is stored?

I've seen these questions brought up a few times with no real solid answers. With how strict emissions is getting its nice to really get some deep dive answers into what the emissions scans can really see. I don't want to deal with any risk of failing again.
Appreciate 0
      04-28-2024, 02:12 AM   #10
F87source
Major General
F87source's Avatar
No_Country
7308
Rep
7,470
Posts

Drives: Bmw M2
Join Date: Aug 2018
Location: .

iTrader: (1)

Quote:
Originally Posted by cptclutch View Post
I guess I'm confused because I did end up failing with the GTS DCT flash. From this thread: https://f80.bimmerpost.com/forums/sh....php?t=2048849 it seems like the GTS DCT coding modified the TCU and that's what got me flagged? I just don't understand if thats the case how the EPS coding doesn't do the same thing, unless its stored in a separate area from the "main" DME where the engine code logic is stored?

I've seen these questions brought up a few times with no real solid answers. With how strict emissions is getting its nice to really get some deep dive answers into what the emissions scans can really see. I don't want to deal with any risk of failing again.

Because flashing writes non-verified code to the car, this is detectable. Coding toggles a feature on/off that was already there and made by bmw, so it's not detectable - unless you have very specific diagnostics software. But even if you could detect the coding changes why would it matter? It was made by BMW and thus was certified to pass government laws.
__________________
Click on the link below to see a compiled list of every review I have ever written:
https://f87.bimmerpost.com/forums/sh...2#post30368242
Appreciate 0
      04-28-2024, 07:19 PM   #11
cptclutch
Enlisted Member
14
Rep
42
Posts

Drives: F80 M3 ZCP
Join Date: Mar 2023
Location: US

iTrader: (1)

Quote:
Originally Posted by F87source View Post
Because flashing writes non-verified code to the car, this is detectable. Coding toggles a feature on/off that was already there and made by bmw, so it's not detectable - unless you have very specific diagnostics software. But even if you could detect the coding changes why would it matter? It was made by BMW and thus was certified to pass government laws.
Yeah I guess I was just confused by how the GTS DCT coding flagged my car, but seems like the engine and transmission flashes are checked by the emission process and all the other coding is in a separate location. MA and CA are the only states I've seen so far that are digging this deep into the DME. Luckily the EPS and EDC coding is what I care about the most.
Appreciate 0
      04-28-2024, 07:52 PM   #12
F87source
Major General
F87source's Avatar
No_Country
7308
Rep
7,470
Posts

Drives: Bmw M2
Join Date: Aug 2018
Location: .

iTrader: (1)

Quote:
Originally Posted by cptclutch View Post
Yeah I guess I was just confused by how the GTS DCT coding flagged my car, but seems like the engine and transmission flashes are checked by the emission process and all the other coding is in a separate location. MA and CA are the only states I've seen so far that are digging this deep into the DME. Luckily the EPS and EDC coding is what I care about the most.
Yeah that can also be the case since some coding is stored in modules like FEM, etc. But technically every single ECU on the car can be scanned through the OBD2 port, so I suspect it to also be attributed to unauthorized software being written.
__________________
Click on the link below to see a compiled list of every review I have ever written:
https://f87.bimmerpost.com/forums/sh...2#post30368242
Appreciate 0
Post Reply

Bookmarks


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off



All times are GMT -5. The time now is 06:34 PM.




f80post
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
1Addicts.com, BIMMERPOST.com, E90Post.com, F30Post.com, M3Post.com, ZPost.com, 5Post.com, 6Post.com, 7Post.com, XBimmers.com logo and trademark are properties of BIMMERPOST