0
\$\begingroup\$

I need to translate a I2C SCL and SDA signal coming from another board with 3.3V to VDD (1.8V) on my board. So I don't have the possibility to use the 3,3V as a reference voltage. Only the 1.8V. How can I build a shifter with this requirement?

I built this circuit but it is not working correctly.

enter image description here

\$\endgroup\$
2
  • \$\begingroup\$ You will at least need a GND-reference from the 3.3V board. If you have this, you can provide 3V3 locally by use of a step-up DC-DC - this allows to use a common level shifter. It would be easier though, to just use the exisiting 3V3 if somehow possible. \$\endgroup\$ Commented Jan 23, 2023 at 15:16
  • \$\begingroup\$ Do the I2C signals on the 3.3V side have pullup resistors fitted? If they do then you can use the common single N-Channel MOSFET level shifter, since the MOSGET GATE is typically tied to the lower voltage Vdd. You would ofc need to use MOSFETs with a suitably low Vg-th to work with your 1.8V Vdd. And as already pointed out by ElectronicsStudent, you need a common ground reference between your 2 boards no matter what level shifting you do. \$\endgroup\$
    – brhans
    Commented Jan 23, 2023 at 15:28

1 Answer 1

4
\$\begingroup\$

If the other device has the pull-ups then you can use the following:

schematic

simulate this circuit – Schematic created using CircuitLab

NOTE: Shown for SDA only, so you should duplicate this for SCL.

TRANSMISSION FROM YOUR SIDE

  • When SDA (SCL) is high the MOSFET will be off (because gate-source voltage is zero), so the SDA (SCL) on the other side will see high through its internal pull-up.
  • When SDA (SCL) is low the MOSFET will turn-on (because gate-source voltage becomes positive, 1.8V) and shorts the SDA (SCL) line on other side to ground, so it'll see low.

TRANSMISSION FROM OTHER SIDE

  • When SDA (SCL) is high then nothing changes i.e. this is the initial state, so no switching happens. So SDA (SCL) on your side will see high through pull-up.
  • When SDA (SCL) is low the body diode of the MOSFET will conduct, so the SDA (SCL) on your side will see a diode drop initially. This will make the gate-source voltage positive, then the MOSFET turns on and shorts the diode, making the voltage seen from your side zero.

The main problem here is to find an NMOS with really low threshold gate-source voltage. 2N7002 is quite common and considered as logic-level-gate MOSFET but its VGS-th can be as high as 2V so it's not suitable. This can be used as it has 2 NMOS inside (one for SDA, one for SCL) with very low input and output capacitances (This is not an advertisement). Or you can check global distributors (e.g. Digikey, Mouser) for other options.

\$\endgroup\$

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.