Easy Cheap Fix for the Interior (dome) Light Delay
Most if not all E28s are equipped with a feature whereby the interior lights remain on for about 10 seconds after the driver's door is shut. It is activated by lifting the driver's door handle and opening the door. Chances are yours doesn't work anymore. This is most often due to a poorly designed switch in the door. There are two units which are involved here: a switch inside the driver's door, and a large relay unit located above the driver's feet. This relay usually doesn't fail, which is good because it is about $80. The door switch (a 1" square black plastic box with a few wires potted into it and a metal bracket) however relies on an exposed metal contact which is pressed on by a tab on the door handle when the handle is lifted. These corrode or break over time since they are exposed to any moisture that drips into the door.
You can buy one of these door switches for around $35 (If you don't have a lock heater) and maybe $70 if you do. In my opinion, don't even bother with this thing. I wasted way too much time cleaning and bending contacts, and the thing just wouldn't work reliably. The only reason you might want to replace it is if your lock heater doesn't work and you want it to. But there are alot of other parts associated with the heater, so this switch may not be your problem.
All this thing does as far as activating the light delay is to ground a brown/green wire. That's it. The delay control unit above your feet needs this wire to be grounded, and also one of the door open switches, which are all brown/violet wires, to be grounded. This activates it, and when all the brown/violet wires are ungrounded (all doors shut) the timer starts and leaves the light on for 10 secs.
Now maybe a light is going off in your head about how to bypass the door switch. It didn't in mine, but I owe thanks to Jim Cash for emailing me his simple method. When you open a door, the br/vi wire is grounded. All you need to do is to jump the br/gr wire to one of the br/vi wires so it is also grounded. You should do this with a diode however, so that current can only flow in one direction, from the br/gr to the br/vi. I am pretty certain your car will instantly burst into flames if you don't use a diode. Well maybe not, but better safe than sorry.
Enough background. Went down to my Radio Shack and bought a little screw block, some wire taps and a package of plain old silicon diodes, total cost about $5. Heres a picture of the assembled unit. Complicated, huh?
Sorry about the blur, but you get the idea. Note the color coded wires. You need to point the diode the right way, so that current only flows from green to violet (ground). Now all you need to do is use those wire taps to tap into the br/vi wire and the br/gr wire. You can find them next to each other either above the driver's feet, or, where I did it, behind the driver's side kick-panel speaker. If you unscrew the speaker, you will see a foam cup behind it with a slit for the wires. Look through this slit and you will find a large bundle of wires which come from the driver's door, and also two additional wires bundled together. The br/vi is one of these two, and the br/gr is in the big bundle. Just work them both out of their bundles so you have enough room to clamp the wire taps onto them. Then just clamp the appropriate wires together (obviously, in my picture I attached the green wire to the br/gr). Once clamped, test it out by shutting and then opening the driver's door (other doors closed). Then just wrap some black tape around the unit to prevent any inadvertent shorts and stuff it through the slit in the foam cup (there's lots of room behind it) and reattach the speaker. Voila.
Note that with this method, opening ANY door will activate the delay. With the stock door switch, just the driver's door activates it.