What I have used...
- SMD to DIP breakout board
- Teensy-Arduino (any Arduino will work)
- (3x) pushbutton
- (3x) resistors
- (3x) LED
Step 1: Build The Circuit
Which pins are SDA and SCL?
Uno, Ethernet: A4 (SDA), A5 (SCL)
Mega2560: 20 (SDA), 21 (SCL)
Leonardo: 2 (SDA), 3 (SCL)
Due: 20 (SDA), 21 (SCL), SDA1, SCL1
The PCF8575 is not available in a breadboard-friendly form (only surface mount). The handy Sparkfun breakout boards allow you to plug this chip into the breadboard for prototyping.
You need to connect a 10kOhm resistor between SDA/SCL and PWR (see image).
Also note that push-buttons need resistors. If you want an i2c i/o expander in which you don't need resistors on the switches check out the MCP23017.
If you are having troubles hooking up your switches try this for reference.
I included the LEDs only to provide some feedback. They add no functionality.