Getting access to I2C devices
Now we are ready to manage real I2C devices. We can find tons of supported devices into the Linux kernel tree whose are usually grouped according to their specific operations so, for instance, all I2C real-time clock chips are under the directory drivers/rtc/
while I2C EEPROMs are under directory drivers/misc/eeprom/
, and so on of the Linux's source repository.
In the next section we're going to see several different kinds of devices all connected to the main CPU through the I2C bus, also we're going to use different embedded kits to test them, but as said before, every commands can be easily repeated on every GNU/Linux based boards with a similar configuration.
EEPROM, ADC and IO Expander
As first example we're going to use the following development board carrying five I2C devices:
Note
The device can be purchased at the following link (or by surfing the Internet): http://www.cosino.io/product/i2c-sensors-board
On this board we have an EEPROM, an ADC, a DAC...