The i2c bus is active low. Data is transmitted by pulling the data line to ground. When the data line isn't in use it floats to the supply voltage of the bus master. In this case, everything is OK as you're powering the sensor off the 3v3 Omeaga supply. If you needed to use a sensor that has (say) a 5v supply, then you have several options. use a bidirectional opto isolator on tha data line. Only the clock and gnd are connected together. use a bidirectonal level shifter to conver between the 5v and 3v3 systems , again only the clock and gnd are connected together. the bus is driven by the master, and its voltage levels. You don't have to do anything special as 5v should never get anywhere near the data lines, and the sensor will pull the data line to gnd when it transmits data (connect the data, clock and gnd together). Option1is the safest, the Aruinodo dock v2 uses option2 , but I've used option 3 to hook RPIs to Arduinos over i2c, with different supply voltages without anything going bang. The RPi (like the Omega) is a bus master and controls the line levels. One caveat is if the sensor has pullup resistors to the supply line, so check any circuit diagrams if they are available.