Closed Symmetric closed 9 years ago
Can you run these commands to check what I2C bus is available, and what revision is your Pi?
ls -l /dev/i2c*
Then run this to get the Pi revision and other info:
cat /proc/cpuinfo
If you can paste the output of both back in the thread here we can troubleshoot a little more. Normally the library reads the revision info from /proc/cpuinfo to figure out if it should use I2C bus 0 or 1. Very old Pi's used I2C bus 0 (like what you see with your i2cdetect command) and newer ones use bus 1. It looks like something might be getting confused with the revision detection logic and using the wrong bus. Let's check the output of those commands to be sure though, thanks!
Turns out this is just what happens when you don't have permission to access the i2c device.
The PWM servo driver module is broken. It's producing this error when I import it:
Looking at the code, it's assuming that there is an i2c register at 0x00 that it can create a PWM object for. That's not the case on my system (using the latest Raspbian Wheezy circa this post, and the Adafruit 16-channel PWM microcontroller).
My valid I2C addresses are:
Is there some requirement that I'm missing to get this working? Or is the code making an assumption that doesn't hold on all platforms?