5V tolerance

Posts: 27
Joined: Wed Dec 14, 2016 2:54 pm

5V tolerance

Postby sintech » Thu Jan 05, 2017 11:43 am

Hi all.
ESP guys please shed the light or draw a line under 5v tolerance discussion.
In my projects I often need to interface with old 5v TTL logic devices.
Can ESP32 accept 5v TTL level signal on GPIO inputs or it will fry the input pin if not the whole module?

ESP-WROOM-32 datasheet clearly states that maximum input for high logic level is VDD+0.3 where max VDD is 3.6V so max level is 3.9V.
While ESP32 datasheet in absolute maximum section defines max high level input voltage as 3.3V but at the same time in recommended section it defines VIH as Vio where max Vio is 3.6V. It is a bit confusing.

I wonder if there are any over-voltage protection inside ESP32 chip which can make possible to feed GPIO input pins with up to 5V levels without any level shifting?
Thanks in advance.

Posts: 1644
Joined: Sun May 08, 2016 4:11 am

Re: 5V tolerance

Postby ESP_Angus » Thu Jan 05, 2017 10:43 pm

I think the 3.9V recommended max may be a mistake in the ESP-WROOM32 datasheet, the ESP32 datasheet suggests you can't go this high. I'll check up on this.

For "slow" 5V signals, it should be possible (though hacky) to use a single high value series resistor (1K or, ideally, more) to limit the current into the I/O pin's input protection circuitry, preventing it from damage. This is probably OK for a quick hack, but I would not recommend it for production hardware design or something where you need maximum reliability over the long term.

In those cases, level shifting is the best approach.

Who is online

Users browsing this forum: Baidu [Spider], hspuneet and 26 guests