DIY: Reset BMW steering angle sensor in EDIABAS INPA

This is just a quick how to, and is E46 specific, also I am assuming you have BMW INPA software installed and up and running, so I am not going to talk about INPA cable installation. If you do not have it, go to this site:  http://www.obd2eshop.com/wholesale/bmw-inpa-k-can-usb.html. This is where I got my cable from, $19.99, shipping included, and you can follow a video in this page to install it.

How to:

Open INPA software; navigate E46 -> chassis -> steering angle sensor

Then F5 to read status

F4 will show general status,

Where you can see what the sensor is currently calibrated to.. should be very close to zero deg. when the physical steering is pointed straight ahead.

If it is not extremely close or exact, you need to reset it.. so navigate E46 -> chassis -> DCS MK6

SHIFT+F4 will get you into the compensation routines..

And pressing F1 here will reset the steering sensor to correspond with the physical straight ahead position.. i personally prefer to do this while the car is on the alignment machine, but if you drive slowly straight, then stop without touching the steering and reset it will be close enough to keep the DSC ecu happy..

Now you can navigate to the steering angle sensor again, and under general status the sensor should be reset to zero..

You can clear the errors now if you wish, in order to see if they return, which they should not.

Why this is steering angle sensor reset necessary sometimes:

When wheel alignment gets done, sometimes the actual physical direction the steering is set at, and the steering angle sensors last calibration is different enough to cause the DSC (dynamic stability control) ecu confusion in certain conditions. for example, you are driving straight ahead, but the steering angle sensor is reporting that the front wheels are turned 5 degrees to the left. since you are driving 80km/h , and the yaw sensor is reporting no lateral force, wheel speed sensors report no difference in speed, you cannot possible be turning.. so the ecu throws an error and shuts down DSC functions, since it cannot predict car motion and might make things worse if it tries to help in an emergency.