Hi all, I hope I'm posting this in the right section.
I'm quite a newbie with Arduino. I'm playing a bit with the WiFi module ESP2866.
Checking some tutorial online, I've seen that some of them (e.g. Arduino Project Hub) do not use any 3.3V logic converter when interfacing Arduino with the ESP2866, while others use a logic convert (Arduino Project Hub) or a voltage regulator ( ESP8266 Arduino Code and 3.3V Schematic to Send and Receive Data ).
What is the right thing to do? As far as I understood the TX and RX pins on the Arduino board use 5V for the High signal, which could, therefore, be not ok for the ESP2866, since it works at 3.3V. However, so far I have been using it without logic converter or voltage regulator and I did not get anything "wrong".
That facebook comment was posted on July 30, 2016. There have been 10 revisions of the datasheet since then, the latest one was in February of this year.
If the ESP8266 really were 5V-tolerant, you'd think they'd have included it in the datasheet.
TheDutchDogtor:
Hi all, I hope I'm posting this in the right section.
I'm quite a newbie with Arduino. I'm playing a bit with the WiFi module ESP2866.
Checking some tutorial online, I've seen that some of them (e.g. Arduino Project Hub) do not use any 3.3V logic converter when interfacing Arduino with the ESP2866, while others use a logic convert (Arduino Project Hub) or a voltage regulator ( ESP8266 Arduino Code and 3.3V Schematic to Send and Receive Data ).
What is the right thing to do? As far as I understood the TX and RX pins on the Arduino board use 5V for the High signal, which could, therefore, be not ok for the ESP2866, since it works at 3.3V. However, so far I have been using it without logic converter or voltage regulator and I did not get anything "wrong".
Could someone clarify this for me?
Thanks
You will see plenty of examples on the internet where the input voltage requirements are ignored.
And they do work. I know from personal experience, because I followed those examples.
However, it is best practice to follow the datasheet; it is easy enough to use a simple voltage divider.
PieterP:
Yes, but you only need it on the ESP8266's RX pin (and the Arduino's TX pin).
Ok, because the 5 Volts produced by the Arduino may be a problem for the receiver of the ESP8266, but the 3.3 V produced by the ESP2866 are not a problem for the Arduino, as long as it seen as a "high" state.
Is that correct?
TheDutchDogtor:
Ok, because the 5 Volts produced by the Arduino may be a problem for the receiver of the ESP8266, but the 3.3 V produced by the ESP2866 are not a problem for the Arduino, as long as it seen as a "high" state.
Is that correct?
Exactly.
TheDutchDogtor:
Hi, I also have the ESP-01 version. Are you saying that it has an integrated level shifter, and thus I dont need to implement it?
No, an ESP-01 does not have an integrated level shifter, you have to add one yourself.
PieterP and the rest are correct- you need a level shifter; that said- short term, I've had zero problems running my esp-01 at 5v supply for weeks on end to test prototype code.
floresta:
In other words you are using an esp-01 with a level shifter, just as has been recommended. Your esp-01 inputs are not being fed 5 v with your setup.
Don
I was on eBay recently and was searching for ESP-01 breakout boards and saw that products such as Screenshot by Lightshot are now being sold. Very handy.