What do you recommend for a 3.3v - 5v bindirectional level shifter for i2c ?

I’ve got a devantech i2c SFR08 sonar and an old 5c i2c compass that I’d like to get working with the BeagleBone Black.
Have any of you implemented a bidirectional i2c level shifter ? What do you use, or what would you recommend ?

Have done it many times.


Pick one that works for you.


The older Philips I2C specifications include a section on level shifters
which is conspicuously absent from the newer NXP versions.

Perhaps they want you to buy a custom IC instead of using 1 FET and 1
resistor per line?

Anyway, see section 18.1 and Figure 45 in the older Philips I2C spec:


The following section 18.1.1 includes a review of the circuit operation.

Awesome, Thanks!

As soon as I have all the sensors working… and the hbridge working I’ll build my new robot base.

I’m not sure if I’m going to use the lynxmotion 4x4 platform, or build on the Rover 5 platform. I’m looking at both.
I’d prefer to build a platform that can go outside… I read that the Rover 5 can haul a 7lb platform, or build my own.

Thanks for the info!

I will post my hello world app soon… it’s just a rgb led driver. It was a cheap start to playing with the node library.

Great I2C level shifter here too…http://www.adafruit.com/products/757#Downloads

Looks like the Adafruit level shifter has the same problem as the old Sparkfun model (https://www.sparkfun.com/products/8745): the resistors are all the same size and it shifts 5V down to 2.5V instead of 3.3V. After years of complaints, they finally fixed the design (https://www.sparkfun.com/products/11978).

I use the ADUM1250ARZ


Galvanically isolated :slight_smile: