I want to control two hitec hs55 micro servos via a Nodemcu v3. These need at least 4.8 V power supply acc to data sheet.


Hs-55 micro servo:

Voltage range: 4.8-6 V

Current Drain - no-load (4.8V): 150 mA

Pulse Amplitude: 3-5V

NodeMCU (v3):

From what I found it seems like it can "reliably supply 600 mA".

3.3V pins (standard)

5 V (pin VU), Directly connected from the USB (?)

From what I understand it is generally a good idea to supply power to servos separately, otherwise the board can be damaged. Is this also the case here or would it be OK to connect the supplies to the servos from the VU pin? I'm thinking that there is a possibility it could be ok since it is directly connected to the USB.

For the signals I will use the normal GPIO pins.

Thank you in advance :-)

  • I'm not sure about the nodeMCU, but most AVR-based Arduino boards won't draw more than 500 mA from the USB port.
    – Duncan C
    Commented Jul 16, 2020 at 17:42

2 Answers 2


Supplying the servo from the USB is generally okay, but if it works or not depends on the USB host you use. The data you mention is not relevant, though:

  • 150mA are valid under no load, when there is a load the servo will sink more current
  • 600mA probably refers to the onboard linear regulator which provides the 3.3V for the ESP. Depending on what the ESP has to do, it may require those 600mA on itsown and the connected circuit.

You can simply try what you suggested, it won't harm the nodeMCU. If it doesn't work the reason is probably the USB host not being able to provide the required current (a fast-charge usb wall charger should work).

  • Thank you, would you say it should be ok also to use this solution for a project where it will be installed for a longer period? If the USB is really connected directly to the VU port I guess this should also be ok. I can't find any electric diagram confirming this however. Yes I will try with that then! If I understand correctly a high max Ampere on the USB charger is OK as the servo motors will only use as much current as they need. One more question, what is the difference between the standard 3.3 V supply and this VU-supply that makes the 3.3 V to be bad for using as a supply?
    – Jmalecki
    Commented Jul 16, 2020 at 18:39

The circuit diagram of a NodeMCU shows that there's a schottky diode between Vusb (the voltage input supplied by USB) and the Vin pin. This has the effect of reducing the approximate 5V voltage supplied by your typical USB jack/outlet/cable to something slightly lower. In my case, the apple USB charger adapter provides 5.1V but this gets reduced to 4.76V on the Vin pin. This Vin voltage is also quite noisy. I don't know if that will affect your servos. I've run one NodeMCU from the Vin pin of another NodeMCU pin without any trouble.

The schottky diode in the NodeMCU is a 1n5819/SS14/S4(SOD_323). I'm not certain, but if this is the correct datasheet, it says it can supply 1 amp, which sounds like enough. If I were you, I'd try and see if I could get power directly from the USB source rather than taking it off the NodeMCU pin. It might work off the pin, though. Try and make sure you get a USB that supplies at least 5.1V, though. It's going to be close.

EDIT: I would also add that the NodeMCU will be drawing power, too. If you are drawing 300mA with your servos and 100-150mA with your nodeMCU, that's cutting it pretty close for most USB power sources. A Macbook, for example, can only supply 500mA via a USB port. This article says a NodeMCU can consume up to 400mA under some circumstances.

Generally speaking, I've been told that it's a bad idea to use GPIO pins to drive anything that draws a significant amount of power. I'm thinking you should maybe consider using some kind of servo driver or relay or something.

  • 3
    "I've been told that it's a bad idea to use GPIO pins to drive anything that draws a significant amount of power." This is imperative. Most Arduino boards have a recommended limit of 20 mA of sourced or sunk current on any GPIO line, and a peak limit of 40 mA. If you execeed 40 mA you will likely destroy either that GPIO pin or the entire board. You CANNOT power a servo directly from a GPIO line.
    – Duncan C
    Commented Jul 16, 2020 at 19:02
  • Thank you for the answer with much good and detailed information! However my nodemcu is the v3 (lolin) which has a VU pin (reserved in v2) that I want to power the servos with - not the VIN. This is a pin which I believe is directly connected to the microUSB voltage in, and thus should be possible to send enough Ampere through, also without loosing so much voltage. I have however not been able to find a electric diagram for this v3...
    – Jmalecki
    Commented Jul 16, 2020 at 19:05
  • @Jmalecki as I mentioned in my post, trying to draw 300mA for servos plus the current for the MCU is probably asking a lot of many USB outputs. Those adapters that come with an iPhone these days can supply an amp, but a lot of USB ports on computers would max out at 500mA.
    – S. Imp
    Commented Jul 16, 2020 at 19:34

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.