Try an OBDII bluetooth plugin and an app like Carly or Torque, even the free versions should be able to display RPM live. If that says the engine speed is steady, and you can hear the engine idling steady, then it's probably a gauge issue. I've never stared at mine that closely, it might be a "they all do that" thing.
Look at voltage and the air/fuel ratio, that will say bad MAF probably. There are an incredible number of vacuum leaks are possible too. Get some break cleaner and start spraying around the hoses and the boot to the MAF and see if the idle bogs.
That's a pretty good swing. Somethings wrong. Have you cleaned the idle controls valve for the idle issue? The throttle body assembly, MAS assy and idle controls valve should be cleaned with throttle body cleaner and not brake cleaner. CRC makes a product that will do a good job on all 3 referenced and at 120k not a bad idea even if you didn't have a problem.
A forum community dedicated to BMW owners and enthusiasts. Come join the discussion about Bimmerfest events, production numbers, programming, performance, modifications, classifieds, troubleshooting, maintenance, and more! Bringing the BMW community together.