I'm trying to control some ESC and brushless motors using a raspberry pi. I used the pigpio library to control them using servo pulses. But it seems that my motors wont increase rpm after a limit near 1740 (servo pulses). Whenever I exceed this level, the motor slows down to a certain speed and wont increase speed again. Also, it wont start rotating until the level of 1660. If there is anyone who had this problem before, please inform me because I'm a bit newbie to this kinda stuff. My motor and ESC's are these by the way:


Thanks for any answer...

  • 2
    \$\begingroup\$ To make sure it is not an ESC problem, try it on a servo. If the servo works as expected and the ESC doesn't, look to the ESC. \$\endgroup\$
    – TimWescott
    Aug 21 '19 at 22:07
  • 1
    \$\begingroup\$ You really need to consult an RC hobby site. ESCs typically need to be trained for range, also a pi is not a very good choice for controlling them. Hopefully you aren't another person mistakenly trying to use one for a drone as shows up asking this every month or so... \$\endgroup\$ Aug 21 '19 at 22:20

RC car ESCs are designed to work with RC car transmitters, most of which have a 'trigger' that is pulled to go forwards, pushed back to brake, and pushed back twice to go in reverse. The neutral position is part way between full reverse and full forward, but may not be in the center because the driver might want more forward than reverse. The neutral point also has a 'dead-band' range to account for slop in the trigger neutral position.

The 'end points' are usually set to about 1100us and 1900us to allow for mechanical variation in the throttle trigger, and to provide some 'trim' range without exceeding 1~2ms. The ESC is calibrated for an even smaller range (typically ~1200us to 1800us) to ensure that full throttle is achievable even with a poorly calibrated transmitter.

If maximum pulse width is exceeded the ESC may decide that the pulse is corrupt and shut down, or it might 'autocalibrate' itself to the maximum pulse width (and then shorter pulses will result in lower speed).

There is a programming card available for your ESC that allows you to set the neutral range, braking force, reverse speed, starting torque and battery cutoff voltage. This may fix a lot of your problems.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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