Brushless Motor control with pwm card PCA9685

Hi,

Can we control a brushles motor with the card PCA9685 with Isaacs current library isaac.pwm.PwmController ? Did anybody try it before ?

Best Regards

1 Like

Hi, @gkobas.

The short answer is that you should use a specialized BLDC motor controller. If you have a BLDC motor with integrated controller, or separate motor controller hardware, then you may be able to supply an input speed signal with PWM from the PCA9685. You should also be able to control servo motors with it if they take a PWM input signal for speed control.

The isaac.pwm.PwmController library will allow you to use PCA9685 to produce PWM outputs with controlled duty cycles and pulse lengths, via i2c signal from Jetson/Isaac. I believe that the PCA9685 can provide up to 25 mA on 16 PWM channels. It might be theoretically possible to produce something like the 3-phase input required for brushless motor control by varying PWM duty cycles, but that isn’t what the hardware is intended for. It would be similar to wiring a BLDC directly to an arduino.

P9685 Info: https://www.nxp.com/products/power-management/lighting-driver-and-controller-ics/ic-led-controllers/16-channel-12-bit-pwm-fm-plus-ic-bus-led-controller:PCA9685

1 Like

This Digikey article talks a bit about BLDC control via PWM at the motor level:

https://www.digikey.com/en/articles/why-and-how-to-sinusoidally-control-three-phase-brushless-dc-motors

1 Like