> I got the CMPS03 working great reading pulse width mode.
>
You may be running faster than the CMPS03 can handle.
from the CMPS03 spec --
At speeds above around 160KHz the CPU cannot respond fast enough to
read the I2C data. Therefore a small delay of 50uS should be inserted
either side of writing the register address. No delays are required
anywhere else in the sequence.
---
You can slow the speed of the ARM I2C by placing
#define I2Cspeed100 ' before the #include <I2C.bas>
, or you could use TIMER to add the 50uS delay.