Chapter 13. I2C Bus Communication

The I2C communication bus capability of the NXT is a powerful feature that allows practically unlimited expansion of inputs and outputs. Originally developed by Philips Inc., I2C stands for Inter-Integrated Circuit. Although physically located on the NXT sensor input ports, it's actually used for expanding both inputs and outputs.

Only three wires are necessary for I2C because the data is transmitted serially, or one bit at a time. One wire is used for sending and receiving data (SDA), while the other provides a synchronizing clock signal (SCL). On the input port connector, SDA is pin 6, and SCL is pin 5, or blue and yellow in the NXT cable. You need a third wire for ground, which is either pin 2 or 3, black or ...

Get Extreme NXT: Extending the LEGO MINDSTORMS NXT to the Next Level, Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.