More About Points »
Check out this article. There is a whole bunch of information on the PO171 code, what it means, and what you should check. Sounds like all of your problems are mentioned in this as well. Hope this helps! http://repairpal.com/OBD-II-Code-P0171-and-P0174
You should replace the timing belt every 60-90k miles. You can find more information via this article http://repairpal.com/timing-belt-replacement. Typically the water pump is replaced at the same time as the timing belt as they go out around the same time, plus what is needed to disassemble the car is the same for both eliminating future labor charges. http://repairpal.com/water-pump-replacement
It does seem a bit high. You could probably get it for a couple hundred cheaper elsewhere. I'd recommend calling around some of the local shops in your area. You can find them here http://repairpal.com/directory?address=92127&car_brand_names=Honda.
P0442 - EVAP System Small Leak Detected. The NVLD stands for Natural Vacuum Leak Detection. Sounds like they are saying you need a new NVLD vacuum switch. There are a handful of reasons this code can go off all of which relate to emissions. Loose gascap, A small leak/hole in a fuel vapor hose/tube, and so forth. Generally they'll do a smoke test to find where the leak is coming from, but the easiest thing to check first is the gas cap. You can find more information at http://repairpal.com/OBD-II-Code-P0442. Hope this helps.
That code is typically related to the Air Pump system. You can find more information on that code specifically here http://repairpal.com/obd-ii-code-p0410. You can find local shops in your area by going to www.repairpal.com/directory and search by zip code. Hope this helps.
It sounds to me like you should get another mechanic to take a look at it if he's done all that and still can't find the problem. That code relates to all the things you've replaced.
This is for Push Button Start E60 models only Put the key in ignition. Leave the car in gear and push the "Push to Start Button" but only press it 1 time. Don't worry, car will not start. This is called position 15. All dash lights will light. Now push and hold the Odometer reset button. It will initially light up a warning triangle, continue to hold until the Oil can symbol lights up. The oil lamp should be the first to illuminate. For the oil reset, when the oil can illuminates, let go, then press and hold. After about 3 seconds a message saying "Reset?" will appear. When it does, let go of the button and press it again until the mileage indicator resets itself. That should do the trick, if for some reason you try this and doesn't work then I recommend taking it into a certified BMW shop/dealer and have them reset it for you. They shouldn't charge for a simple reset.
I'd check the spark plus and engine belt out around 60k. Might also want to consider coolant/trans flush. Sounds like you are already on top of things with the oil/filters.
This could mean a couple of things related to emissions. The catalytic converter could be shot, it's possible the oxygen sensor went out, or you could have an exhaust leak. I'd recommend taking it to an emissions specialist and get it diagnosed to find out exactly what the problem is. Check out the directory to find a local shop www.repairpal.com/directory and search for your zip code. Under each shop location it'll list whether those shops specialize in emissions or not.
Check the stop light switch as it may have gone out. It's located on the upper back side of the brake pedal and if that's the problem it's about $12 at the parts store.