I can't help to get my I2C device (an Adafruit Pi Plate I just bought and built) to work in my Raspbian machine. Although the command
sudo modprobe i2c-bcm2708 showed no errors, something strange appears in
[ 275.580368] bcm2708_i2c_init_pinmode(0,0) [ 275.580401] bcm2708_i2c_init_pinmode(0,1) [ 275.580490] bcm2708_i2c bcm2708_i2c.0: could not add I2C adapter: -16 [ 275.580551] bcm2708_i2c: probe of bcm2708_i2c.0 failed with error -16 [ 275.580607] bcm2708_i2c_init_pinmode(1,2) [ 275.580622] bcm2708_i2c_init_pinmode(1,3) [ 275.580686] bcm2708_i2c bcm2708_i2c.1: could not add I2C adapter: -16 [ 275.580732] bcm2708_i2c: probe of bcm2708_i2c.1 failed with error -16
After a lot of research, I've found that the loading fails if my DVB adapter, an Asus My Cinema U3000 Mini, is plugged in. If I unplug it, dmesg shows
[ 12.331518] bcm2708_i2c_init_pinmode(0,0) [ 12.337053] bcm2708_i2c_init_pinmode(0,1) [ 12.345332] bcm2708_i2c bcm2708_i2c.0: BSC0 Controller at 0x20205000 (irq 79) (baudrate 100000) [ 12.357036] bcm2708_i2c_init_pinmode(1,2) [ 12.369518] bcm2708_i2c_init_pinmode(1,3) [ 12.379588] bcm2708_i2c bcm2708_i2c.1: BSC1 Controller at 0x20804000 (irq 79) (baudrate 100000)
and the example program runs flawlessly.
The same happens if I add
i2c-dev in /etc/modules. So it looks like the load order is not important.
How can I get both the I2C bus and the DVB adapter work on the same machine?