Software programming I leave to the proffessionals. That's something I'll never mess with. Way to easy to mess it up. Is their a BMW salvage yard near you? Sometimes they may have one. Finding a wrecked car may be a good option. Tischer BMW may have one. Or Pelican Parts. But they will probably be costly.