Is a project that i’m building a problem arise. It’s necessary to connect an Arduino to an ESP8266. But the arduino outputs are 5V and the ESP8266 inputs work with 3.3V. If it is connected directly, the ESP8266 burns.
One possible solution is using a Logic Level Converter that converts 5V to 3.3V (this is the model used). This converter, on one side, receives 5V signals and converts to 3.3V and in the other receives 3.3V and converts to 5V.
The converter has six connector on the 5V side and six on the 3.3V side. In each side it’s divided in three sections: channel 1, channel 2 and power.
Connections:
In each channel there are the following connections:
- TXO (5V) – Transmitter Output – Connects to the Arduino RX
- RXI (5V) – Receiver Input – Connects to the Arduino TX
- TXI (3.3V) – Connects to the ESP8266 (or other 3.3V device) TX
- RXO (3.3V) – Connects to the ESP8266 (or other 3.3V device) RX
In the power section there are the following connections:
- HV – Connects to the Arduino 5V connector to power the 5V section
- GND – Connects to the Arduino ground
- LV – Connects to the Arduino 3.3V connector to power the 3.3V section
- GND – Connects to the Arduino ground
The Logic Level Converter doesn’t convert the 5V to 3.3V to power the ESP8266. It is necessary to supply and independent 3.3V power.
In the channels, receives the 5V signal from the Arduino on the RXI and converts to 3.3V to supply the ESP8266 on the RXO and receives the 3.3V signal from the ESP8266 on the TXI and converts to 5V to supply to the Arduino on the TXO.