Hello All-
I have what I suspect is a simple error on my part - but I can not seem to see it (trees?)

I am trying to use a MCP23016 and the I2C commands in PBP on an 18f4680. I have used I2C commands on another proc and it worked great with the RTC that I needed - but, this time I can not seem to get it to work.

What I have done:
1. Pulled both the SCL and SDA lines up to +5.
2. All 3 address lines are grounded.
3. 3.9k and 33pF used for CLKIN.
4. All 3 pins (1,8,19) are grounded.
5. TP is left floating
6. Written test code to wiggle the chip which is surface mount - I can not seem to get an output from the 23016.
Observed:
By a scope on the SDA and SCL lines I found that SDA is LOW all the time and the SCL is HIGH all the time. So I wrote test code to toggle these 2 lines and I observed the 2 lines behaving as I would suspect.

It seems as if when I use the PBP command I2CWRITE it does not wiggle the 2 lines needed. I believe I must get this fundamental thing to work before I attempt to debug how to communicate with the 23016.

I have read several posts regarding the 23016 which is why I decided to try this part (hope I get this work ).

I have set the registers according to other posts found on this forum for this chip (thanks Melanie) but it seems as if this command is not working (which I know is not the case) so I am perplexed.....

Summary-
I can write test code to toggle the PORTC.4 pin (SDA) and the PORTC.3 pin (SCL) but I do not see any change when writing in a loop to the 23016 using I2CWRITE. I know the chip is working because I have other LEDs that I toggle in the loop to ensure we are not hung somewhere. It is working at 40 MHz - should I try a slower speed?

Any ideas?

Thanks in advance,
Steve