The robostix's i2c lines run at 5v and the gumstix run at 3.3v, so I need to shift bidirectionally. Maxim sells a bunch of chips to do this. I'm using the Maxim 3378 (datasheet). The Max3378 is bidirectional and accepts +1.2v to +5.5v on the low side and +1.65v and +5.5v on the high side. Obviously, I don't need 4 lines for the i2c bus, but I think I might find uses for the other ones. in the TSSOP package. I mistakenly ordered the UCSP package first, man that is a small chip.

Well, I'm not that good at soldering, so I'm using the TSSOP with the Spark Fun SSOP to DIP Adapter (SKU#: BOB-00498).
Here you can see the diagram from the datasheet and here it is on the breakout board.

I have connected up leg 1 on the chip to pin 1 on the breakout board.
According to the datasheet, Vl is the low voltage side (3.3v in my case) and Vcc is the high voltage side (5v). You apply a reference voltage to pin 1 and pin 14.

Image ©Maxim
On the Robostix, the i2c pins are on the UART section. The pinouts are:
10: Ground
12: SDA (labeled TX)
14: Vcc (5 volts)
16: SCL (labeled RX)
SDA and SCL are both 5v logic levels and have 10k pullups to +5.
On my test board I have SDA connected on Vcc1 and Vl1 and SCL connected on Vcc2 and Vl2. I have a 0.1uF cap on both Vcc and Vl and 1uF cap on the Vcc as per the datasheet.
Plugged it all together and it worked! It seems that I have to boot the gumstix first and then the robostix. If I turn off the robostix and then back on while the gumstix is already booted, it also didn't work. Have to look more at this.
