Here's the setup I have:
Linux Program written in C
I2C-USB interface (ftdi chip)
SD20 Servo Controller (I2C)
GPIO14 Controller (I2C)
All three chips were bought from robot electronics
After 12 hours I managed to get the Linux and I2C/USB working! A few minutes after that I was controlling the servos, no problem.
Then I tried to get the GPIO14 working. I have no problem reading the chip version, setting pins high/low but I just can't get the analog I/O working; this is the main reason for buying these chips!
On the I2C bus I'm doing the following:
- write 0x80 to AD_CONTROL
- write GET_AD0 to CMD
- read 1 byte from register 1 (have also tried reading two byes, and also 1 byte from register 2)
Whatever I appear to play with, all I get is either a result of 0x01 or random values that don't match upto the inputs supplied to the pins.