1
\$\begingroup\$

I'm trying to avoid the use of a level shifter in a design, but it would unfortunately require that I communicate at different voltage levels than what I power the device at.

If I communicate with a sensor from a microcontroller with 3.3V logic level I2C lines, but I power that sensor at 1.8V, am I in for big trouble (permanent damage to the device, inability to communicate)?

\$\endgroup\$
3
\$\begingroup\$

Yes, you will almost certainly run into problems. From your datasheet:

enter image description here

A spec like this most likely indicates the presence of ESD protection diodes on the SCL and SDA lines, connecting them to the power and ground rails.

If you power this with 1.8 V, and connect SCL (for example) through a pull-up resistor to 3.3 V, it will pull the SCL line down to about 2.5 V. This could cause problems with other chip recognizing a high voltage on SCL. The extra current from SCL into the VDDIO supply could cause other unexpected (and unpredictable) behavior.

It may be possible to operate your sensor with VDDIO at 3.3 V while the main VDD is at 1.8 V. I don't see anything to prevent it listed in the characteristics tables, but I didn't read the complete datasheet to be sure.

\$\endgroup\$
3
\$\begingroup\$

Your concern of operating an MCU at 3.3V and a sensor at 1.8V is a valid one. But it is not a reason to avoid using a level shifter.

A suitable level shifter takes just two additional SMT resistors and two N-Channel MOSFETs. Both FETs can be deployed in a very small SOT-363 or similar 6-pin SMT package. Cost is really really small.

enter image description here

(Picture Source: https://playground.arduino.cc/Main/I2CBi-directionalLevelShifter)

enter image description here

(Picture Source: https://www.mouser.com/datasheet/2/115/ds30203-79162.pdf)

\$\endgroup\$

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.