Engine light comes on and EMIL flashes up
The Engine Management Light (EML ) or check engine light is a warning indicator which is found on your BMW’s dashboard . It will illuminate when more severe issues are detected in your vehicle’s systems or parts which work with the engine and the connecting exhaust systems
When the check engine light turns on there are usually diagnostic codes stored in your car’s computer memory. they’ll provide some clues as to the culprit. Suggest to ask your shop to read the codes, then you can post them here for more ideas. Codes are typically a P followed by 4 digits: e.g. P0300.
In days of yore car-designs were more simple, so malfunction causes could be figured out by a shop tech taking a test drive, followed by some trial and error parts replacements. Your car is too complex for that method to be successful, easy to run out of money before running out of ideas for things to replace, so BMW provided the diagnostic codes to assist your shop.
I noticed one of my neighbor’s BMW had a problem a couple weeks ago, cranked ok, but wouldn’t start. Tow truck guy came over, suggested to make a guess & replace the battery. Neighbor knew this was unlikely to work, and directed tow truck driver to just tow the car to his mechanic.
Replacing a BMW battery isn’t easy and should be done at a qualified shop. It’s not something that can be done at your local auto parts store.
I’m not sure of the difference between an “engine light” and an “EMIL”, but be aware that a flashing check-engine light on a normal car means that the car should be towed instead of driven to avoid causing damage. Read your owner’s manual closely here.
2002 e39 doesn’t need to have battery programmed to ecu.