If the engine doesn't seem that hot and fan isn't coming on it is probably a bad ground. I have had this same problem on more than 1 BMW. Run a separate heavy guage wire from the engine block or head to the body. Make sure it is a good clean connection from metal to metal and it should solve your problems. Mike W.