An I2C logic level converter/translator with integrated voltage regulator

Last updated on Mon, 2011-04-04 16:55. Originally submitted by fabio on 2011-01-07 13:20.

When using I2C to interface devices operating at different voltages, for example an Arduino running at 5 Volts and a sensor running at 3.3 Volts, it's usually a best practice to use a logic level converter/translator to translate one logic signal from one voltage to the other and vice versa.

There are devices which will work without problems even without a logic level converter (for example I used the ADXL345, the ITG3200 and the HMC5843 without it) but once you want to get very good precision it may be worth using a logic level converter. Moreover there are many devices which could get damaged if used without one.

There are some ready to use solutions, for example Sparkfun Logic Level Converter but in my opinion they over complicate the problem.

So, I decided it was worth designing a very simple I2C specific logic level converter. For convenience I also included a voltage regulator and optional I2C pullups resistors. The idea is that with this device you will be able to simply connect a 3.3V device to a 5V with the I2C translator in the middle and forget about anything else.

The board contains a voltage regulator, the MIC5205, and a dual bidirectional I2C bus voltage level translator, the PCA9306.

So, here it is, fresh from KiCAD:

I2C level converter/translator with embedded voltage regulator

Attached at the bottom of the page you find the schematics and its KiCAD sources.

You should be able to etch this at home without problems, I'll get three copies of it in the next pcb order.

UPDATE 2011-01-20:

You can get the most updated designs of the I2C logic level converter from my personal Bazaar repository with the command:

bzr co
I2C_level_translator_schematics.pdf29.32 KB
I2C_level_translator.tar_.gz78.71 KB
i2c_level_translator.png33.95 KB
I2C_level_converter_gerbers_20110404_1753.tar_.gz9.64 KB

About the R resistances on the I2C bus

Submitted by Federico Galli (not verified) on Wed, 2012-02-22 13:48.

Hi Fabio,
the four resistors marked as "R" on the i2c bus are supposed to be the same on "high" and "low" circuit? Just put resistors from 1.5 to 4.7k ?

Ciao Fabio,
le quattro resistenze che indichi come R sul bus i2c dovrebbero essere tutte identiche? Sono quelle di pullup sul bus? Dovrebbero essere uguali in entrata e in uscita? Vanno bene i soliti valori tra 1.5 e 4.7k ?


I did sized them using the

Submitted by fabio on Wed, 2012-02-22 14:31.

I did sized them using the oscilloscope and looking for a fast rise signal. I seem to recall I used small ones, something around 1K Ohm.


Submitted by Anonymous (not verified) on Wed, 2011-10-26 09:10.

I don't understand one thing, if we want to connect the 3,3V sensors, why is there an 5V regulator onboard? Wouldn't it be 3,3V regulator instead?

Best regards

The regulator on board is

Submitted by fabio on Thu, 2011-10-27 13:28.

The regulator on board is actually a 3.3V one. Why do you think it's 5V?

Fabio, I have the PCA9306 but

Submitted by Ricardo Arturo Cabral (not verified) on Mon, 2011-07-11 18:43.

Fabio, I have the PCA9306 but in a different IC package. Which IC package are you using?


Submitted by fabio on Mon, 2011-07-11 19:40.



Submitted by Ricardo Arturo Cabral (not verified) on Mon, 2011-04-04 14:01.

Fabio, can you please post the gerber files for this breakout board?

Just uploaded. You find them

Submitted by fabio on Mon, 2011-04-04 16:56.

Just uploaded. You find them on the attachments to the post.

Thanks Fabio. I really

Submitted by Ricardo Arturo Cabral (not verified) on Wed, 2011-04-06 12:58.

Thanks Fabio. I really appreciate it.

Price Tag?

Submitted by Rei Vilo (not verified) on Wed, 2011-02-16 13:28.

Hi Fabio,

Do you have a price estimate and / or a price tag for the logic level converter with voltage regulator?

Thank you and best regards,

Nope, I only had 3 of this

Submitted by fabio on Wed, 2011-02-16 13:42.

Nope, I only had 3 of this and I'm out of them.


Submitted by avenue33 (not verified) on Sun, 2011-01-16 22:09.


Excellent idea!

The Sparkfun level converter works fine but the voltage regulator is missing.

Congratulations for your nice and elegant solution!

Best regards,

Thanks, I thought exactly the

Submitted by fabio on Mon, 2011-01-17 00:59.

Thanks, I thought exactly the same when I developed this device! ;-)

Thanks for your supportive comment.

p.s.: I'm Fabio, not Paolo..