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
Gnd, it does happen on the other side as well.
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_HV are connected to
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?