Configurar Buildroot para usar I2C

Vamos a explicar como configurar la comunicación I2C en Buildroot. En una entrada anterior, vimos como crear un sistema embebido Linux para nuestra Raspberry Pi utilizando esta misma herramienta, y será a ese mismo sistema empotrado al que le habilitaremos el I2C y le añadiremos las librerias o herramientas necesarias para manejarlo.
Para ello debemos rehacer la configuración del Buildroot e indicarle en la parte de Hardware Handling, que nos añada la librería de i2c-tools, como aparece en la siguiente imagen:
Y guardamos los cambios, a continuación escribimos el comando make linux-menuconfig
y habilitamos lo relativo a los drivers y al bus de comunicación I2C, como aparece en la siguiente imagen:
Una vez hechos los cambios anteriores, volvemos a escribir el comando make, para que se queden aplicados.
Para comprobar que se ha configurado correctamente, vamos a conectar a la Raspberry Pi algún sensor I2C.
Con el siguiente comando vamos a listar los dispositivos i2c conectados:
i2cdetect -l
En nuestro caso el que nos interesa es el i2c-1, puesto que por defecto en la versión B de la Raspberry Pi es el que se le asigna. Si ahora escribimos el comando
i2cdetect -y 1
El 1 del comando anterior representa el bus i2c que estamos usando. Deberiamos recibir una respuesta donde nos indica la dirección i2c asignada al dispositivo, en nuestro caso 0x4d.