Creative Commons images are CC BY-NC-SA 3.0

$ 2.95

added to your
shopping cart

In stock 456 in stock
2.95 1+ units
2.80 10+ units
2.66 25+ units
2.51 100+ units

Description: If you’ve ever tried to connect a 3.3V device to a 5V system, you know what a challenge it can be. The SparkFun bi-directional logic level converter is a small device that safely steps down 5V signals to 3.3V AND steps up 3.3V to 5V at the same time. This level converter also works with 2.8V and 1.8V devices. What really separates this Logic level converter from our previous versions is that you can successfully set your high and low voltages and step up and down between them safely on the same channel. Each level converter has the capability of converting 4 pins on the high side to 4 pins on the low side with two inputs and two outputs provided for each side.

The level converter is very easy to use. The board needs to be powered from the two voltages sources (high voltage and low voltage) that your system is using. High voltage (5V for example) to the ‘HV’ pin, low voltage (3.3V for example) to ‘LV’, and ground from the system to the ‘GND’ pin.

Dimensions: 0.63 x 0.52" (16.05 x 13.33mm)


Recommended Products

Customer Comments

  • Any chance of getting this part into the Fritzing parts list for sparkfun? The unidirectional level converter is in there but the pins do not match.

  • What is the ground pin used for? In the schematic it appears to be not connected but not connecting them in my current setup gives strange results.

    • Looking closely at the picture it appears the grounds are tied together and form a ground plane on the back side of the the board. So, they provide a common ground for whatever two circuits or boards you are translating levels between. Not hooking them up would cause the signals to float and give unreliable results.

  • Great board for the project I am currently working on which needs level shifting on the I2C BUS.

    Have you thought of making a shield to level shift between a 3.3V Arduino/shield and a 5V shield or the other way around. Then one simply uses the shield to make other shields compatible with shields of another voltage.

    One consideration that must be taken into account if this level shifter is used for i2C, which requires pullup resisters for the BUS. And that is the resulting pullup resistance in the I2C BUS.

    • @Rob36 I too have been trying to use this as a level shifter for my 5v i2c sensor. But haven’t been able to make it work. Should I keep the pullup resistors or get rid of them? When my sensor’s connected to the arduino it requires a 4.4K pullup to function normally. I am trying to connect the sensor with electric imp.

  • Very cool board, but I’m not sure that this will work reliably with 1.8V devices. From the referenced Philips application note the low voltage should be at least 1V higher than the threshold Vgs value of the MOSFET. The BSS138 has a maximum Vgs threshold of 1.5V (1.3V typical), so this circuit should work down to 2.3V, but 2.5V is safer. At 1.8V there may still be enough juice to turn the MOSFET on, but I’m not sure I would trust the results.

  • Is this functionally equivelent to the PCA9306?

    I’ve gone over what documentation I can find on both pages and can’t see that there is a difference, between cost, IO’s, and labelling. And would love to learn if/what the differences are.


  • Will this breakout board work if LV == HV? I’m wondering if this would be suitable for an I2C-based shield (3.3V) that might be connected to either an Uno (5V) or a Due (3.3V).

  • Can we use this board in between my MCU and GSM modem to shift UART voltage level? My baudrate is 115200.

  • will this work to convert the electric imp’s 3.3v into 5v to power and 5v device IF i dont have a previously existing 5v power source?

  • Can this handle tristate pins? i.e. if one side is not connected, will the other side also appear to be unconnected?

    What is the introduced delay? The data sheet says it’s 5ns - is this all there is to know?

  • Does it work for I2C?

    • After taking a look into the Hookup-Guide, it turns out: Yes. SPI, UART, I2C - Compatible

  • Hi. I need to convert between logic levels 3.3 & 5V. The thing is both devices have 5V power rails so I don’t have a 3.3 reference. Will this or the 11771 work?

  • What is the cut-on voltage for the BOB on the HV side if HV is set to 5v? I ask because sometimes the device I’m connecting to the HV side has 5v signals, and sometimes it has 3.3v signals (with HV set to 5v in both cases). It seems to work, but I wonder if I’m on the hairy edge. If cut-on is 2-2.5v then I think I’m ok, if it’s around 3v then it might miss sometimes.

  • Could I also use this to convert 5v signals to 1.8v signals for example??

  • What is the bandwidth of the converter? I am using it to convert a 20 kHz PWM signal from 3.3 V to 5 V. On oscilloscope, from a rising edge input signal, the output signal starts with a first-order response from 3.3 to 5 V, reaching 4.98 V after 2 µs, in other words, a first-order response with a time constant of 1.1 µs (See an oscilloscope screenshot at I could not find similar numbers in the BSS138 datasheet but I am not an electronic engineer. Is that first-order time constant correct?

  • Anybody know the actual pad dimensions for us non-Eagle users? I don’t have it yet but want to begin laying out a board, and I would rather not guess. Thanks.

  • This looks like it will work in a 24 volt to 5 volt application. Is that correct?


  • Hey I need Help,

    As per above Product, i buyed the 8 Channel Level Shifter.

    Is it necessary to connect both the voltages 3.3 and 5v also…..?????? Hey I need Help please Comment fast

  • This is a great little board – it fits right in where the older versions of the SFE logic level converters went and works better! So glad that Sparkfun redesigned the board for full flexibility on all channels! Thanks sparkfun – using these things all over the place in my mixed voltage digital projects!

  • Can this be used for 12volt to 5 volt level conversion?

  • Hi,

    Silly question maybe…(excuse the non-electronics person…) but the tech document attached - AN97055 suggests that you ought to be able to approach 10ns switch on/off times… I was just wondering whether it was realistically possible to do this with this board - or whether you would need to play more with the pull up resistors?

  • I am trying to use this with my electric imp as an I2C level shifter for my sensor which requires 5V input. At 5V with an arduino, it needed a pull up resistor of 4.7K. But I haven’t been able to make it work with the electric imp. What do you propose me to do about the pull up resistor while connecting with the electric imp!

  • Would this work to connect a 12V RS232 with 3.3V logic? What is the highest voltage it can support? Thanks,


  • I bought a couple of these to convert teensy 3.1’s 3.3v data signal up to 5v to communicate more effectively with adafruit’s neoPixels.

    I’ve read a lot about people using the 74HCT245 but should this perform a similar function?

    So far I’m having some intermittent problems that I’m not yet sure are related to this, or my code.

    • I have just proven to myself that this board DOES NOT work for interfacing a Teensy 3.0/3.1 to WS2812B LEDs (aka Neopixels.) Glitches like a bastard.

      Do NOT waste your time with this, use the 74HCT245 like everyone who’s actually tried it recommends.

      (That said I’m having success just plugging the DIN on the strips directly to a Teensy’s digital pin.)

  • What would be great is if this breakout board was expanded to also include regulators for 5V and 3.3V for example. Maybe with jumpers to HV and LV.

    This way all the regulation (signal and current) are combined in one pack.

    I’ll probably hack something like this together myself. (maybe first ordered custom pcb :))

  • @GMAN - that is the MAX Vgs

    What you want is the MIN Vgs which is 0.8V With the 1V suggested margin that goes up to 1.8V, and you should have no issues switching 1.8V devices.

    I use this board with the TTL serial coming out of a Parrot ARDrone at 1.8V and have had no issues, switching at 115200 baud.


  • will this work with analog signals

  • Excellent and useful product, but I require more than 4 conversion lines. Although I can use 2 of these, I still prefer more than 4 channels on a single board, like the following very similar product:

  • Hope to make this work for 3V to 15V. Hey, love the Skills icons, but they don’t show up for everything. Will you be retrofitting them to current products eventually, or only tacking them to new products (starting recently, I assume)? Brief mention here.

  • Awesome. finally you guys made a quad bidirectional version of the logic converter circuit (it was quite requested i do believe).

  • Do you have a good recommendation for a converter that works with 12V to 5V and vice versa?

    • This board will handle 12V-to-5V or 5V-to-12V conversion. Just make sure the HV and LV are connected properly and you’ll be good to go.

      This board will also work great for converting 3.3V or 5V PWM to 10V PWM for use with things like the the dimming control on MeanWell LED power supplies.

      • I assume that would that include the Mean Well ELN-60-48P dimmable driver? It requires a 10v PWM. And if so, do I just connect an external 10V DC supply to the HV, and the mean well driver to HV1?

Customer Reviews

4.5 out of 5

Based on 31 ratings:

5 star
4 star
3 star
2 star
1 star

1 of 1 found this helpful:

Exactly what I wanted!

this was a simple board but suited perfectly for level shifting in breadboard prototypes!

1 of 1 found this helpful:

Meets the description

I am very pleased with the product and price. Just as described

1 of 1 found this helpful:

Excellent level shifter

small footprint, easy to use, reliable. I use it to interface 3.3 volt MCUs to 5 volt devices

1 of 1 found this helpful:

Works fine for 3.3v to 1.8v conversion

I used this converter with a BeagleBone Black to flash a SPI EEPROM which needed 1.8v.

Details and pictures on

1 of 1 found this helpful:

It works....

….because it was designed properly. Thanx.

1 of 1 found this helpful:

Robust board, easy to use

Easy to use board. Just set high and low reference voltage and instant bidirectional communications between board with different source voltages.

2 of 2 found this helpful:

WS2811 LEDs

I managed to get this working with a Teensy 3.1 and the OctoWS2811 library using 3.3v as the input voltage and 12v as the output to control a string of LEDs. This was straightforward once I realized that the Teensy’s TTL output was at 3.3v and not the 5v I was using as the Teensy VIN.

I’ve only tested a single strand of lights with this, however, so YMMV with different variations.

1 of 1 found this helpful:

Good,small package.

I use these all the time in designs that require tight packaging. This works well for my needs.

2 of 2 found this helpful:

Works for me on LocoNet 3.3-12v

I am using a 3.3v micro-controller on my model railroad to interface DIY sensors and signals to Digitrax LocoNet runing at 12v. So far so good on a breadboard. Have yet to see what happens on a longer bus.

2 of 2 found this helpful:

Doing the job perfectly for my ESP8266 module.

When it’s critical for your component to have those back and forth signals pulled down to 3.3v from the standard UNO/MEGA board 5v signal, this is perfect. Thanks, Sparkfun Team! (NOTE: I should have ordered two though, one for the breadboard prototype, and one for the final project assembly.)

1 of 1 found this helpful:


Long delivery time but perfect.

1 of 1 found this helpful:

Works fine, nice design, priced right.

Small systems today often incorporate a mix of peripheral sensors or actuators which operate on different logic levels. Especially 3.3 and 5 volt. It’s easy enough to lash up your own bi-directional converter with a MOSFET and a couple resistors but at the $2.95 price for this 4-channel device, why bother! An easy to use product and reasonably priced.

1 of 1 found this helpful:

Perfect problem solver for voltage level shifting.

It was a perfect solution for me. I had been using the Raspberry Pi which uses 3.3V on its GPIO buss. Really useful now that I am using a break out board with a FT245. Inexpensive, small, easy to use.

1 of 1 found this helpful:

Best size, 4lines. Good price. Would be usefull single an bi/lines modules too

1 of 1 found this helpful:

easy and effective

Very simplistic and easy to use. I’ve used it on the Nokia Display and it works like a champ. For $3 you can’t beat it and should buy a couple for your project prototypes.

1 of 1 found this helpful:

Driving ST Micro SWIM Lines Down an 8 foot Cable

ST Micro SWIM (Single Wire Interface Module) is not meant to go very far … SparkFun Logic Level Converter - Bi-Directional did the trick. I did have to decrease the pull up resistors on the HV side to about 1K to get enough “voom” to shape up the edges but it worked which is saving me from some serious headaches.

1 of 1 found this helpful:

Easy to use - works great

Quick soldering and easy to use. Straightforward and intuitive.

2 of 2 found this helpful:

Works well

Used to talk between my 5V arduino and a 12V IC. Needed to slow down the arduino SPI bus otherwise the converter would not be able to send an adequate signal. Once the bus was slowed down however, converter worked well.

1 of 1 found this helpful:

Came fast, worked as expected. Data sheet easily found on the website.

5 of 5 found this helpful:

Great to talk to 3.3v device from 5V Arduino

Used this with an Arduino UNO to talk to a 3.3v ESP8266. Been working for a few hours and no magic smoke has left so I think that’s a good sign.

3 of 3 found this helpful:

There is only one real limitation with these. namely that they rely on both devices to be “Open collector”. which means the devices need to be able to actively pull the signal down to ground to work. not all devices do that so it is best to make sure they do this. if your device works by actively pulling the signal up and not down this won’t work.

However when used appropriately these are pretty fantastic. great for communication busses like I2C,1-wire and such.

1 of 1 found this helpful:

This thing converts logic levels, bi-directionally!

It turned my 5v signal into a 3v signal! And vice versa!

1 of 1 found this helpful:

Works Great!

I use it to convert logic levels from my Arduino and ESP8266. Haven’t had any issues so far.

2 of 2 found this helpful:

Did just what I needed.

I needed to get my Arduino (5V) talking to a Gumstix (1.8V) module via Serial/UART. This level converter does the trick.

1 of 2 found this helpful:

Does its job

I got this to connect my Edison (1.8V I/O) to a Sparkfun LSM9DS0 breakout (3.3V I/O) using i2c. It’s working perfectly, so far.

My only complaint is that I wouldn’t have needed this at all if the LSM9DS0 breakout had brought out the Vdd_IO pin rather than tying it to Vdd.

1 of 2 found this helpful:

Doesn't work with WS2812 LED control IC

I needed something to translate the 3.3V GPIO control signals coming out of my Raspberry Pi to 5V in order to control a WS2812 LED controller (specifically The control signals for the WS2812 run at 800kHz, with an allowable delay time of +/-150ns.

The data sheet for this converter says that the turn-on time, rise time, and delay time are all in the sub 40ns range–so it should work fine, right?

Wrong. The WS2812 glitches like crazy when I try to control it through this logic level converter, so for my purposes, this part is useless. On the plus side, it was only $3, so it’s not like I wasted much money.