The airbag warning light has been on my 1997 318is and I was looking for the cheapest way to reset it myself.
I bought an "Ediabas INPA OBD2 Diagnostic Interface for BMW" off eBay, the cheapest I could find at about $25 delivered from overseas.
It came with software but the CD was faulty, but the supplier provided a link to download.
I couldn't get the software to work at first and read numerous online instructions. I downloaded numerous versions of the software. It seemed like it was going to be very difficult to get it to work.
In the end I got it working and it was quite simple. I used the software that came with the cable, and:
* Added "C:\EDIABAS\BIN" to the "path" environmental variable.
* Copied the EDIABAS AND INPA folders to the C:\ drive.
* Ran the install for the OBD interface in the C:\EDIABAS\HARDWARE\OBD folder.
* Modified the file EDIABAS.INI in the C:\EDIABAS\BIN folder and changed the line that sets the interface to STD:OBD.
Then to run the application and read/clear codes I ran the INPA_LOAD.EXE program from the INPA\BIN folder. The software was the English version so was easy to navigate. There is some interesting menu options where you can look at all the sensor data from the car. Looks like you could do a bit of damage with some of the menu options though.
The one I bought was from eBay seller "elphabet". I used it on an old Pentium 4 computer running Windows 2000 Server, but it should work easily on anything up to XP, but I believe it is possible to use on Windows 7 too.
On my 1997 318is it reported quite a few errors: engine misfires, 5 transmission errors (hopefully these are from before the transmission was replaced just recently), various ABS errors and various airbag errors. All errors have been cleared and I no longer have the airbag light on which is great.
I also tried this interface on my 1994 318is but it didn't work. It seems that an ADA interface is needed for these earlier models.UPDATE 12 APRIL 2017:
After this computer stopped working I bought a new computer which had Windows 7 (32-bit) on it. I am pleased to report that this software ran fine on the new computer using the above instructions.