Brushless Motor Controller Shield For Arduino

Open-source BLDC motor driver

Brushless motors are ubiquitous in RC applications and robotics, but are usually driven with low-cost motor controllers that have to be controlled with RC-style PWM signals and don’t allow for much customization. While there are a couple of open-source brushless drivers already available, [neuromancer2701] created his own brushless motor controller on an Arduino shield.

[neuromancer2701]’s shield is a sensorless design, which means it uses the back-EMF of the motor for feedback rather than hall effect sensors mounted on the motor. It may seem strange to leave those sensors unused but this allows for less expensive sensorless motors to work with the system. It also uses discrete FETs instead of integrated driver ICs, similar to other designs we have covered. Although he is still working on the back-EMF sensing in his firmware, the shield successfully drives a motor in open-loop mode.

The motor controller is commanded over the Arduino’s serial interface, and will support a serial interface to ROS (Robot Operating System) in the future. This shield could be a good alternative to hobby RC controllers for robots that need a customizable open-source motor controller. The PCB design and source code are available on GitHub.


19 thoughts on “Brushless Motor Controller Shield For Arduino

    1. Maybe I am not seeing the connect, but this appears to be an integrated controller. That way you don’t have to worry about an extra external controller… At which point there’s not too much of a need for a library.

      1. Andrew’s point is correct. Why do this if you can get extremely cheap brushless ESCs going up to 100amps or more from HK, reflash with SimonK and plug it into your choice of uC.
        For the fun of it is valid, I suppose.

        1. Maybe to get a different control interface or a greater amount of control? I get the impression the R/C ones only read a PWM signal for controlling speed. Granted, I don’t know a lot about that market.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.