Finding cheap RC ESC (speed controller)

I love RC ESCs. They are electronic speed controllers that you connect to a servo output on a RC receiver or a micro controller, and they give you full step free control over a big motor in both direction. Most of the ones made for RC cars work in the voltage range 6-8.4Volts, but there are several alternatives for people who plan to run up to 24 volt motors in almost constant stall at a gazzilion amps (read robot war contenders).

But I'm the eternal cheapskate, and wants the cheapest there is.. So far I've found this

It costs $19 and comes as a kit, so I guess I have to solder it myself. Do any of you know of any cheaper ones?

My wanted specs are:

  • run in both direction (not plane type)
  • for brushed motor (not brushless)
  • cool if it has BEC (can supply regulated power for RC receiver or Microprocessor)
  • without break function (racing ESCs will stop the wheels if you go from full forward to full reverse)
  • really really cheap (since I need 4)
  • around 7Volts (I'm not fuzzy)

HobbyCity ?
HobbyCity ?

anyone particular?
As far as I can tell they’re all either brushless or plane-ESCs (without reverse), or both… Did I miss anyone in particular?

**Did you try Dealextreme ? **
Did you try Dealextreme ?

Turnigy There are 9 pages of


There are 9 pages of controllers.

2A doesn’t seem like much

2A doesn’t seem like much and more of soemthing you could do with a l293/298 or something.

If you get one of those esc’s, check the voltage on the bec circuit as they are usually higher than 5v.

Check out Tower Hobbies as well. they had a big selection back in the day when I used to run rc cars…



I know

I scanned all 9 pages, but they all describe their Throttle curve. That usually indicates that it’s made for planes which throttles not cars/robots with reverse.


Did you find ESC you’ve been

Did you find ESC you’ve been looking for? And why would one use ESC over L293 motor drivers? I mean, what are the pros of the ESC over L293 ?

Try this

Try this one:

Wow, not so expensive. But

Wow, not so expensive. But that ESP is on the backorder or out of stock :frowning: So the ESP is basically like the L293 motor driver, right?

It’s more like a servo

It’s more like a servo electronics board, but for a beefier motor. It takes regular servo signals and converts them linearly to motor speed, 1.5ms signal being motor stopped (you also have a jumper to break the motor or just coast at 1.5ms signal). I have a couple of them and they work perfectly with 12V power window motors. I wanted to make a sun following solar pannel, that’s why I bought them. But they are good for robots too.

I have no idea why people don’t use HobbyKing for LiPos, servos, ESCs and uBECs, as they have great products at cheap prices! 

Aha, so it is like the L293

Aha, so it is like the L293 motor driver. I assume you can control only 1 DC motor in both directions with PWN siganls, right? Should be easy enough to let the arduino take control of that. What should be the PWN / servo signal voltage? 5V ?

The thing is that my two motors require 5A each, so that I have to buy 5 L293 motor drivers. As I can see it, I can just use 2 ESPs.

Well I almoust bought a LiPo 3x times the price that of  hobbyking at our german online store “Conrad”. Pretty sick huh.

Its a shame they only have two brushed ESC and both are out of stock. Damn brushless motors…

Not quite. The control

Not quite. The control signals are different.

L293 takes a PWM signal of about 2kHs and 2 Direction signals to drive a 600mA motor. For a 0% signal width the motor is stopped and for 100% signal width, the motor is rotationg at full speed. Needs 3 control pins from the microcontroller and a simple 8 bit PWM signal (can work in the background).

An ESC (just like a servo) takes a PWM signal (actually it’s called PPM) of 50Hz and the width of the signal determines the direction AND speed of the driven motor. The width of the signal is very low, 10% for full speed reverse and 20% for full speed forward, with 15% for motor stopped. Needs only one microcontroller pin and a 16bit timer for a PWM signal (can also work in the background).

The ESC was designed to work like a servo, to be easily plugged in a RC receiver for a boat, car or airplane.

Oh, and the signal level is 5V, you can use the Arduino Servo library to drive one motor with one ESC, for 2 motors you need 2 ESCs.

Don’t worry, they will have them back in stock soon.

Thanks for you time writing

Thanks for you time writing it, its very informative.

1. So do I need an extra IC timer for controlling the ESP with an arduino ? Be cause of course I want the PPM signal to be working in the background.

2. So the servo and the ESP both take PPM signals in, right? The output of the ESP is PWN which controls the motor, just like the L293. So the PWN is a similar thing but with a different frequency. Thats makes sence, as you connect both the servo and the ESP in to the RC receiver. Then all the signals you send via the remote are PPMs ?

ps. Missed out RC fun in my childhood (damn consoles), now its time though :smiley: Hobbyking has also nice 40€ gliders wich I might buy. Never flew a RC plane in my life.

To use the ESC (Electronic

To use the ESC (Electronic Speed Controller) with Arduino is simple.  You set it as a servo and send regular servo pulses, but instead of writing angles you write microseconds. Like this:

#include <servo.h>
Servo ESC_left;
Servo ESC_right;

int speed = 0;

void setup(){
   ESC_left.attach(7);                             // any pin you want
   ESC_right.attach(8);                           // any pin you want
   ESC_left.writeMicroseconds(1500) ;    // left motor stopped
   ESC_right.writeMicroseconds(1500);   // right motor stopped

void loop(){ 
   // go forward
   for(speed = 1500; speed <= 2000; speed += 10){
      ESC_left.writeMicroseconds(speed) ;
   // stop
   ESC_left.writeMicroseconds(1500) ;
   delay(2000); // give it time to stop!
   // go backward
   for(speed = 1500; speed >= 1000; speed -= 10){
      ESC_left.writeMicroseconds(speed) ;
   // stop
   ESC_left.writeMicroseconds(1500) ;
   delay(2000); // give it time to stop!

Wow. Thats just fantastic.

Wow. Thats just fantastic. So easy and yet able to control hungry motors where L293 just fails with only 1A per motor. Thank you.

Why do you increase speed in 10 increments?  Just as an example or for other purposes? 

ps. why noone told me about ESC before =)

They say that you cant use

They say that you cant use brushless ESC on brushed motors and vise versa. Is this really so ?

In the comments of that ESC

In the comments of that ESC they say it cant do reverse. Because its for airplanes. Now how would I know that?

ESC and motor types

Brushed motors have two connections while brushless have three and you cannot use ESC for one type on the other.

If you want reverse you need to look for car or boat esc, not aircraft.

Yea, you cant mix both.

Yea, you cant mix both. Regarding reverse I was talking about a brushed ESC where in the comments they say you cant do reverse on that. Its a shame, because hobbyking has only two brushed ESC and both cant reverse :frowning: