Ok, so here is my problem:

I am trying to create a small 3.3V to 5V signal level shifter, using a BSS138 transistor. This is my source for the circuit: a SparkFun circuit.

This is my circuit:


As you can see, I have one bidirectional and one unidirectional line. On the left is the Low Voltage (3.3V) part and the right is the High Voltage (5V) one. When I connect the TX_LV to the Gnd line, the TX_HV turns to 0V. When I connect the TX_HV to Gnd, it does happen on the other side as well.

But the BSS138 transistor seems to act as a 20kohm resistor when closed (I even measured it with my multimeter - it was about 19.7kohms). This results in approximately 4.1V on both the LV (Low Voltage) and TX_LV lines (which should be 3.3V) when 5V is applied to the HV input and neither TX_LV and TX_HV are connected to Gnd...

This is quite a problem as I want to connect a Raspberry Pi to an Arduino via Serial port and I don't want to damage my Raspberry Pi by putting 4.1V on its pins. Could anyone please tell me how to fix this or what could I use instead of this solution?

  • \$\begingroup\$ You need to connect LV to a 3.3V source for the circuit to work properly. \$\endgroup\$
    – Dave Tweed
    Commented Jun 5, 2013 at 22:38
  • \$\begingroup\$ That is properly connected, but thanks for the answer anyways! \$\endgroup\$ Commented Jun 5, 2013 at 22:43
  • \$\begingroup\$ Oh my god I rechecked (not that I didn't recheck like 50 times before) and I had one connection a bit loose, so you were right after all - the 3.3V source was disconnecter. Could you post that as an answer so I can accept it? You did actually help me a lot! \$\endgroup\$ Commented Jun 5, 2013 at 22:52

1 Answer 1


You need to connect LV to a 3.3V source for the circuit to work properly. If it's floating up to 4.1V, it must not be connected to anything.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.