I had a similar problem on my old 525i, and it turned out to be a loose contact on the kickdown switch under the throttle – have you checked that? incredibox