The m54 engines are completely Drive-by-wire. They have a procedure that will reset the throttle adaptation that gives better acceleration in the lower RPMs(1000-3000). This is the 10 second on and 10 second off then start procedure. This actually does work I have tried it on many 330i’s and 325i’s.
However, the m52u engines found in the 323i (e46 1999/2000) or 528i (e39 1998) has a throttle body that is cable driven and motor driven. There is a procedure to reset the throttle adaptation listed below, but requires you have a BMW GT1 to reset the adaptation values before resetting the throttle adaptation by turning the key to the on position then pressing the gas pedal 4 times WOT.
Now, I have tried this procedure without performing the reset of the adaptation using the GT1 and do not feel any difference.
Searching online, I found several articles about Throttle body Adaptation. The one below came from Suzuki SX4Club.com
“The Throttle is "Drive By Wire" and adapts to your particular driving
style. Do a TBA Throttle body adaptation.
1. Get in your car, it doesn't matter if you close the door or not.
2. Turn the key to the on (not start) position, the position just before the starter turns over.
3. Press the gas pedal to the floor with the key in the "on" position.
4. Hold the pedal to the floor for five seconds, then turn the key back
to the "off" position (don't remove the key), then release the gas
pedal.
5. Wait 2 mins. for a full alignment.
6. Drive the car as you always do”
http://www.team-bhp.com/forum/technical-stuff/44695-sx4-throttle-body-adjustment-drive-wire.html
Now, when I tried this, I did not wait for 2 minutees. I waited for 30 seconds and then started the car and took off. I could immediately feel a torque increase in first gear. The gas pedal did not have to travel so far to move off. The torque got stronger all the way up to 3000 RPM, then when I shifted to second, I could feel the same torque at about 2000 – 3000 rpm, before doing this, I really had to get the rpm up to 3.5k to get some good torque even then it felt sluggish.
I would like anyone with a 99/00 323i that feels like their car has gotten sluggish to give this a try and post your results. I think this is what many have been changing out their vanos seals, plugs, intake cam sensor, coils, etc… to get rid of that sluggish feel in the lower RPMs.
Once again, please post your results.
Thanks
MOTOR DRIVEN THROTTLE VALVE(MDK)
MODELS AFFECTED: E 39-528i/iA with M52TU engine produced 9/98
E 46-323i/iA &328i/iA with M52TU engine produced 6/98
Z3-Roadster with 2.5L/2.8L engine and Mcoupe with 2.8L Engine produced 9/98
FAULT: The check engine light is on and one or more of the following faults are Set in the
ECM/DME:
FAULT CODES:
109(6D)-Plausibility of motor driven throttle valve
110(6E)-Signal, drivers wish sensor potentiometer 1.
111(6F)-Signal, drivers wish sensor potentiometer 2.
112(70)-Signal, throttle position sensor potentiometer 1.
113(71)-Signal, throttle position sensor potentiometer 2.
114(72)-Motor throttle valve final stage.
115(73)-Reference voltage, voltage regulator 1
116(74)-Reference voltage, voltage regulator 2
117(75)-Plausibility signal, drivers wish sensor potentiometer 1&2
118(76)-Plausibility signal, motor driven throttle valve sensor, potentiometers 1&2
119(77)-MDK throttle mechanical sticking.
120(78)-Pedal sensor, throttle valve potentiometer.
172(AC)-Signal, drivers wish sensor, potentiometers 1&2 short circuit.
173(AD)-Signal, throttle position sensor, potentiometers 1&2 short circuit.
175(AF)-Drivers wish sensor 1,adaptation.
176(BO)-Drivers wish sensor 2, adaptation.
169(A9)-Motor-drive throttle valve output stage cutoff after diagnosis fault.
170(AA)-Control unit self test, internal fault.
171(AB)-Plausibility motor driven throttle valve.
CAUSE: The faults above cold be set due to the following:
• Break/open in the wiring from the DME to the throttle motor(MDK).
• The actuator or potentiometers inside the MDK could be contaminated.
SOLUTION: (If any of the faults listed are set)
• Using a breakout box check for an open or short to ground in the wiring from the DME to the
MDK.
• If the wiring is intact then replace the MDK, then the adaptation values in the DME must be
cleared. Failure to do this will result in reoccurring faults.
• Switch the ignition off for 30 seconds.
• Turn on the ignition and delete the DME adaptations and the fault code
memory
• Press the accelerator pedal to wide open throttle(WOT)4 times
The MDK control function is integrated into the Siemens MS42.0 ECM. The ECM carries this function out by regulating the engine throttle valve.
The engine throttle valve performs the following functions:
Precision intake air control
ASC control
MSR control
Cruise control
Preset position during engine start up (if temperature is < 0°)
The new engine throttle valve (MDK) differs from the familiar EML in the following points:
The accelerator pedal potentiometer (PWG) is now integrated in the MDK housing.
A throttle cable is used to actuate the throttle potentiometers and also serves as a backup to open the throttle plate (full control) if the MDK system is in failsafe.
The throttle cable (toot pedal controlled) is connected to a pulley on the side of the MDK/ The pulley is linked by springs to one end of the throttle shaft, the MDK electric motor is attached to the other end of the throttle shaft.
With the pulley linked by springs to the throttle shaft, this allows ASC intervention to override the driver's set throttle position.
As the pulley and shaft are rotated, the twin potentiometers (integral in the MDK housing, driver's wish) are sensing the requested load. A twin potentiometer is used for back up redundancy (failsafe).
The MS42.0 ECM will actuate the MDK motor pulse width modulated in both directions at a basic frequency of 600 Hz ) which positions the throttle plate.
The second twin potentiometers feedback the actual throttle plate position, allowing the ECM to verify correct throttle position. Again, twin potentiometers are used for back up redundancy (failsafe)
However, the m52u engines found in the 323i (e46 1999/2000) or 528i (e39 1998) has a throttle body that is cable driven and motor driven. There is a procedure to reset the throttle adaptation listed below, but requires you have a BMW GT1 to reset the adaptation values before resetting the throttle adaptation by turning the key to the on position then pressing the gas pedal 4 times WOT.
Now, I have tried this procedure without performing the reset of the adaptation using the GT1 and do not feel any difference.
Searching online, I found several articles about Throttle body Adaptation. The one below came from Suzuki SX4Club.com
“The Throttle is "Drive By Wire" and adapts to your particular driving
style. Do a TBA Throttle body adaptation.
1. Get in your car, it doesn't matter if you close the door or not.
2. Turn the key to the on (not start) position, the position just before the starter turns over.
3. Press the gas pedal to the floor with the key in the "on" position.
4. Hold the pedal to the floor for five seconds, then turn the key back
to the "off" position (don't remove the key), then release the gas
pedal.
5. Wait 2 mins. for a full alignment.
6. Drive the car as you always do”
http://www.team-bhp.com/forum/technical-stuff/44695-sx4-throttle-body-adjustment-drive-wire.html
Now, when I tried this, I did not wait for 2 minutees. I waited for 30 seconds and then started the car and took off. I could immediately feel a torque increase in first gear. The gas pedal did not have to travel so far to move off. The torque got stronger all the way up to 3000 RPM, then when I shifted to second, I could feel the same torque at about 2000 – 3000 rpm, before doing this, I really had to get the rpm up to 3.5k to get some good torque even then it felt sluggish.
I would like anyone with a 99/00 323i that feels like their car has gotten sluggish to give this a try and post your results. I think this is what many have been changing out their vanos seals, plugs, intake cam sensor, coils, etc… to get rid of that sluggish feel in the lower RPMs.
Once again, please post your results.
Thanks
MOTOR DRIVEN THROTTLE VALVE(MDK)
MODELS AFFECTED: E 39-528i/iA with M52TU engine produced 9/98
E 46-323i/iA &328i/iA with M52TU engine produced 6/98
Z3-Roadster with 2.5L/2.8L engine and Mcoupe with 2.8L Engine produced 9/98
FAULT: The check engine light is on and one or more of the following faults are Set in the
ECM/DME:
FAULT CODES:
109(6D)-Plausibility of motor driven throttle valve
110(6E)-Signal, drivers wish sensor potentiometer 1.
111(6F)-Signal, drivers wish sensor potentiometer 2.
112(70)-Signal, throttle position sensor potentiometer 1.
113(71)-Signal, throttle position sensor potentiometer 2.
114(72)-Motor throttle valve final stage.
115(73)-Reference voltage, voltage regulator 1
116(74)-Reference voltage, voltage regulator 2
117(75)-Plausibility signal, drivers wish sensor potentiometer 1&2
118(76)-Plausibility signal, motor driven throttle valve sensor, potentiometers 1&2
119(77)-MDK throttle mechanical sticking.
120(78)-Pedal sensor, throttle valve potentiometer.
172(AC)-Signal, drivers wish sensor, potentiometers 1&2 short circuit.
173(AD)-Signal, throttle position sensor, potentiometers 1&2 short circuit.
175(AF)-Drivers wish sensor 1,adaptation.
176(BO)-Drivers wish sensor 2, adaptation.
169(A9)-Motor-drive throttle valve output stage cutoff after diagnosis fault.
170(AA)-Control unit self test, internal fault.
171(AB)-Plausibility motor driven throttle valve.
CAUSE: The faults above cold be set due to the following:
• Break/open in the wiring from the DME to the throttle motor(MDK).
• The actuator or potentiometers inside the MDK could be contaminated.
SOLUTION: (If any of the faults listed are set)
• Using a breakout box check for an open or short to ground in the wiring from the DME to the
MDK.
• If the wiring is intact then replace the MDK, then the adaptation values in the DME must be
cleared. Failure to do this will result in reoccurring faults.
• Switch the ignition off for 30 seconds.
• Turn on the ignition and delete the DME adaptations and the fault code
memory
• Press the accelerator pedal to wide open throttle(WOT)4 times

The MDK control function is integrated into the Siemens MS42.0 ECM. The ECM carries this function out by regulating the engine throttle valve.
The engine throttle valve performs the following functions:
Precision intake air control
ASC control
MSR control
Cruise control
Preset position during engine start up (if temperature is < 0°)
The new engine throttle valve (MDK) differs from the familiar EML in the following points:
The accelerator pedal potentiometer (PWG) is now integrated in the MDK housing.
A throttle cable is used to actuate the throttle potentiometers and also serves as a backup to open the throttle plate (full control) if the MDK system is in failsafe.
The throttle cable (toot pedal controlled) is connected to a pulley on the side of the MDK/ The pulley is linked by springs to one end of the throttle shaft, the MDK electric motor is attached to the other end of the throttle shaft.
With the pulley linked by springs to the throttle shaft, this allows ASC intervention to override the driver's set throttle position.
As the pulley and shaft are rotated, the twin potentiometers (integral in the MDK housing, driver's wish) are sensing the requested load. A twin potentiometer is used for back up redundancy (failsafe).
The MS42.0 ECM will actuate the MDK motor pulse width modulated in both directions at a basic frequency of 600 Hz ) which positions the throttle plate.
The second twin potentiometers feedback the actual throttle plate position, allowing the ECM to verify correct throttle position. Again, twin potentiometers are used for back up redundancy (failsafe)