Hello, First thing that has to be checked is the charging system. Have the alternator tested make sure it works at it rated output and that no excessive ac current is present.
If this is good check for a parasitic draw with an ampmeter. You will have to allow about 20 minutes for the modules to goto sleep before taking a reading. Normal parasitic draw is about 30 ma. If you have over 30 ma this would be excessive and enough to make the battery go dead overnight. In this case you are going to need a BMW specialist to go thru the system to pinpoint the source of the current draw. I have found that sometimes on these vehicles they have intermittent draws that are hard to find. Some of the areas that cause these intermittent draws are: Light control module, Aux fan, final stage blower module. Good luck
If this information was helpful please hit accept. Thanks, Nick
ASE Certified Technician
Over 25 years of experience in automotive computer systems. ASE L1 Cerfification