Zum programmieren von LEGO NXT siehe mal hier:
http://www.teamhassenplug.org/NXT/NXTSoftware.html

Auch um weitere I2C Sensoren selbst herzustellen gibt es schon fertige Kits.
Bsp.:http://www.mindsensors.com/index.php...age&PAGE_id=71

Und Berichte von Selbstbauaktionen.
http://www.doc.ic.ac.uk/~ih/doc/nxt-i2c/

Projekt 4 Schalter:
http://www.tau.ac.il/~stoledo/lego/i2c-8574/
Im Schaltplan hat er erst mal 2 Schalter und 2 LEDs benutzt aber 4 Ports sind ja unbenutzt. Es dürften also auch 8 Schalter werden.

NXT I2C Kommunikation.
http://legonxtiic.blogspot.com/
http://wcours.gel.ulaval.ca/2011/h/G...EGO%20NXT.html

Da der LEGO NXT I2C hat, braucht man sich wegen Schalter/Wiederstandsnetzwerken und Auswerten über ADC nur Gedanken machen wenn der I2C-Bus voll ist, und selbst da kann man dann ja noch durch Multiplexen an einem 8Bit Digital-IO 128 Schalter dranhängen. Ob das dann von der Zykluszeit noch sinnvoll ist, sei dahingestell.