1
\$\begingroup\$

I am trying to use an ESP8266 with an Arduino Nano but I see that the NANO can not enough current for supplying ESP8266 from 3V3 pin. I think it is limited from the faactory. If I use the 3V3 pin RX or TX pins go high so not working. If I use the 5V pin of the Nano everything works fine but the ESP8266 heats up.

How can I increase the current of the 3V3 pins without altering the voltage?

On the other hand if I use Arduino Nano Every there is no problem on the 3V3 pin - it has enough current to drive ESP8266. I want to learn how can increase the current without altering the voltage.

\$\endgroup\$
1
  • \$\begingroup\$ You can't increase the current from the pin. But you can get the current from somewhere other than the pin. You can get your own voltage regulator (looks like a transistor) and you can get the current from 5V and regulate it to 3.3V through that regulator \$\endgroup\$ May 4, 2022 at 14:04

3 Answers 3

3
\$\begingroup\$

The Arduino Nano has a 3.3V output that can be used to power small circuits.

The 3.3V is provided by the CH340 USB interface. It is not designed to provide high current. The datasheet doesn't say how much current it can deliver, but it does mention that the CH340 consumes no more than 30mA - I expect you won't get much more current than that out of the 3.3V output. Nothing you can reasonably do to the Arduino Nano will let you deliver more current from the 3.3V pin.

The Arduino Nano Every has a separate 3.3V regulator (AP2112K-3,3) that can deliver more current. It is rated for up to 550mA.

Check which ESP8266 you are using. There are various modules from various manufacturers. Some of the modules have an onboard regulator and a Vin pin to allow operation from a higher source voltage.

If your module doesn't have a Vin pin (only 3.3V in) then the simplest solution is to use an external regulator to provide the 3.3V for the ESP8266.


Keep in mind that you can't connect the logic pins from the Arduino and the ESP8266 directly together. The ESP8266 can't accept 5V logic input - it may damage the processor. In the other direction, the Arduino might not always recognize the 3.3V high as a proper high signal level.

\$\endgroup\$
1
  • \$\begingroup\$ original classic Arduino Nano has FTDI FT232RL which can supply 50 mA on 3V3OUT \$\endgroup\$
    – Juraj
    May 5, 2022 at 5:15
2
\$\begingroup\$

One approach is to use a GPIO from the Nano to control a linear or switching supply for the ESP8266. The regulator gets power from your 5V input and accepts a control input from the Nano.

For example, the AP7361. You will have to verify that the power dissipation capability as well as current handling capability is adequate for your application. The regulator can handle 1A which should be adequate, but power dissipation capability depends on package and how it is mounted. Power dissipation will be about (5V-3.3V)*Iload so a 250mA draw will cause 0.425W to be dissipated in the regulator.

enter image description here

The regulator can accept anything from 1.0V to 5V at the EN input to turn it on, and anything below 0.3V to turn it off, so it can be connected directly to the Nano GPIO output provided the Nano is powered from the 5V Vin that goes to the AP7361C.

There are many other linear and switching regulators with control inputs, this is just one example and should not be taken as a recommendation.

\$\endgroup\$
0
\$\begingroup\$

There is a lot to unpack here

  1. An Arduino is not a power source, you can, for test purpose, turn on a led or a small charge. But microcontroller are meant to control, not to supply.
  2. TX and RX pins are communication pins, they should never be used to supply anything
  3. If a microcontroller or any electronic device ask for a specific voltage, you cannot change it. When you supply a device with 3.3V instead of 5V the device may not turn on. If you supply 5V instead of 3.3V then you risk damaging components.

The maximum current the Nano can supply is 40 mA per pin

You can check the specs of boards Nano and ESP8266

But a quick internet search give me a lot of examples of what you should do

edit: If you need more current, you should get it from a different source like a DC-DC buck converter like USB to 3.3V converter

\$\endgroup\$
1
  • 1
    \$\begingroup\$ actually an Arduino is a circuit board with a microcontroller on it, among other things. Some of the "other things" are a wire connecting the USB port to the 5V pin \$\endgroup\$ May 4, 2022 at 14:39

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.