I've used this circuit before to do logic level conversion. The diagram is labeled to reflect I2C however I am using it for UART.
Usually my scenarios have been where the low side is 3.3v and the high side is 5v and this circuit has always been fine.

Currently I have a scenario where the low side will be 3.3v and the high may be 5v or 3.3v. I'm wondering if this circuit is still ok in this case.

Any comments are appreciated.


enter image description here

  • 1
    \$\begingroup\$ So JP4 could be either 3.3 or 5, and you want to make sure it will work OK in both cases? I believe it will. I would use a BSS138, personally. Lower Vgs(th). Usually when I do this I put a capacitor (not loaded) across source to drain. It can help speedup the signal if the rise and fall times are too slow. \$\endgroup\$ – mkeith Aug 26 '15 at 5:23
  • \$\begingroup\$ thanks for the feedback. i actually got some 2N7002PW for this but i do have a few BSS138's too :) i'll give them both a try. thanks! \$\endgroup\$ – myte Aug 26 '15 at 7:21

So your circuit is not ok. Possible causes:

  1. Pull-up resistor to 5V is broken, check the soldering joint, pcb track, and jumper too
  2. Mosfet is broken, so it turns ON at Vgs lower than standard Vgs threeshold value
  3. The 3.3v voltage is too high than it should be, so the mosfet ON even if the input 3.3v
| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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