Sensored brushless motor - controllable with Arduino?

Hi all

I've seen a nice sensored brushless motor on ebay. I'd like it for a non-RC application. Basically, it has to drive a pulley on a shaft. The shaft bears a load which can increase from about 50g to 150g. At the moment I have a cheapie little brushed DC motor doing this job, but I have no specs for that motor, and it's not the quietest (audibly).

The specs for the BLDC motor on ebay are not fantastic, but I have managed to track down some more details:

Also this:

BLDC-38S DC brushless motor with integrated electronic

Body diam. 38mm

Integrated hall sensors

Speed control by analog reference input 0-5 V

Possibility to adjust the speed by an external potentiometer (for versions with speed adiustment)

Direction of rotation: Cw and Ccw
Power supply : 12V and 24V DC

From what I have read from searches on this forum and on google, the only way to control a brushless motor with arduino is to use an ESC. Presumably, because a motor like this is sensored, I would have to use a sensored ESC - do I have that right? Also, how would I choose an appropriate ESC?

What I would like to do is be able to slow the speed of the motor at times by pressing a switch, hence my interest in controlling it.


It looks like the model motor you selected has "integrated electronics" and it can be speed controlled with a potentiometer. This implies the "ESC" is integral to the motor and you wouldn't need another one.

Controlling the speed from an Arduino is pretty trivial especially if you use one with a DAC such as the Due, except you would need a buffer to raise the 3.3V of the Due to the required 5V to get max speed. If you can live with 60% speed, then the 3.3V would be OK.