Rpm fluctuations can be cured with chevron techron fuel injector cleaner. As for your transmission, have you changed the fluid?
If no codes are being thrown use Chevron Techron fuel injector cleaner (concentrate). It solves rpm fluctuating upon cold start-up. Also, for most BMW problems start off by scanning your car with the Peake Research Tool. It contains the actual BMW codes. If you want to register a newly installed battery for free (just buy a $10 cable) and google/download BMWLogger