Interfacing the Wroom32 with a 1.8v I2C Sensor

jjuduma
Posts: 11
Joined: Fri Jun 05, 2020 5:33 pm

Re: Interfacing the Wroom32 with a 1.8v I2C Sensor

Postby jjuduma » Sun Sep 27, 2020 9:29 pm

Hi Guys
boarchuz wrote: Why not supply it with 3.3v as well and save all this trouble? Why do you need the 1.8v rail at all? Is there something I'm missing?
The power supply to the sensor is hooked up to a 3v Li ion coin cell. Want a regulated supply so I am sure what voltage is goin into the the VDD. Although I am not sure if it is an overkill to use a regulated supply. The app info in the datasheet uses a 1.8v rail although a coin cell is present.
boarchuz wrote: Actually the datasheet seems to suggest it is fine with I2C up to the max voltage regardless of VDD. 0.7xVDD is just the logic level.
Please can you refer me to part of the data sheet which states that or are you implying from DC characteristics? Thanks
Scott.Bonomi wrote: If the ESP32 is making the 0/1 decision at a lower level, I would like to know what it is. Is it reducing the dead-band or dropping both limits to a lower value?
This is precisely my concern especially with the 1.8v logic levels which are more sensitive to noise than other higher logic levels. But what i gather from this thread and information from doing some quick research, the I2C specification says the logic low is the important factor. Being open-drain, it only pulls the bus low and opens it when not driving it low. I will assume that this leads to what Sprite and Boarchuz said:
ESP_Sprite wrote: +1 on Borchuz. Seems you can just feed your sensor off 1.8V and it will tolerate 3.3V levels on its SDA and SCL pins. Technically, as I2C is open-drain, all you would need to check is if the Vil threshold of the sensor and ESP32 are compatible with the voltage each one puts out when sending a '0', but I highly doubt that would be an issue here. I'd say you can just hook everything up, feed the ESP32 3.3V and the sensor 1.8V, and go for it.
Logic levels interfacing dictates that VIL must be higher than VOL right?
According to their respective datasheets:
VIL(ESP32) = 0.25*VDD = 0.825v
VIL(HDC) = 0.3*VDD = 0.54v
VOL(ESP32) = 0.1*VDD = 0.33v
VOL(HDC) = 0.4v

From these numbers, my first guess will be they both seem to satisfy the IC interface compatibility requirements although I have no idea if the noise margins are large enough for reliable reading of signals. The datasheet of the HDC says the I2C interface is implemented with spike suppression filters and Schmitt triggers, so I would hope they do their jobs appropriately.

I really appreciate all your responses!!

Who is online

Users browsing this forum: No registered users and 131 guests