Adafruit PCA9685 16-Channel Servo Driver, Pico, Continuous Rotation Servo

CircuitPython on hardware including Adafruit's boards, and CircuitPython libraries using Blinka on host computers.

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
User avatar
phesterman
 
Posts: 10
Joined: Mon Aug 30, 2021 3:02 pm

Adafruit PCA9685 16-Channel Servo Driver, Pico, Continuous Rotation Servo

Post by phesterman »

I've been experimenting with the Adafruit PCA9685 16-Channel Servo Driver and a Raspberry Pi Pico running CircuitPython to control a continuous rotation servo. And, using either the ServoKit or the PCA9685 sample code as a starting point, I've been generally successful. However, the servo literally runs continuously! Setting throttle=0 only seems to reduce the speed to about half; the servo doesn't stop. If I connect the servo directly to the Pico and use pwmio.PWMOut, throttle=0 stops the servo as expected, so the problem occurs when I use the PCA9685. Is there something I'm missing? (BTW, regular servos are working great with the PCA9685.)

User avatar
dastels
 
Posts: 15653
Joined: Tue Oct 20, 2015 3:22 pm

Re: Adafruit PCA9685 16-Channel Servo Driver, Pico, Continuous Rotation Servo

Post by dastels »

The PCA9685 might be using slightly different pulse widths for "0". Do your Servos have a zeroing trim pot? You can try fiddling with that when throttle is set to 0 to get it to stop.

Dave

User avatar
phesterman
 
Posts: 10
Joined: Mon Aug 30, 2021 3:02 pm

Re: Adafruit PCA9685 16-Channel Servo Driver, Pico, Continuous Rotation Servo

Post by phesterman »

Thanks for the reply. Yes, I tried using the trim pot, but it didn't make a noticeable difference. It's not like the servo is drifting slightly off from zero, it's more like the throttle is .25—.50.

User avatar
dastels
 
Posts: 15653
Joined: Tue Oct 20, 2015 3:22 pm

Re: Adafruit PCA9685 16-Channel Servo Driver, Pico, Continuous Rotation Servo

Post by dastels »

Strange. Is this on mulriple servos or just a single one?

You could check for a way to set the min/max pulse width.

Hmm.. is any throttle setting that does stop the servo?

Dave

User avatar
phesterman
 
Posts: 10
Joined: Mon Aug 30, 2021 3:02 pm

Re: Adafruit PCA9685 16-Channel Servo Driver, Pico, Continuous Rotation Servo

Post by phesterman »

Thanks again for the reply. I've not tried multiple continuous rotation servos, but I have combined continuous with several standard servos. I will experiment with what you've suggested...I haven't tried other throttle settings in any systematic way.

User avatar
phesterman
 
Posts: 10
Joined: Mon Aug 30, 2021 3:02 pm

Re: Adafruit PCA9685 16-Channel Servo Driver, Pico, Continuous Rotation Servo

Post by phesterman »

OK. After taking a little time off from this, I started fresh and made more patient and careful adjustments of the trim pots. I've got several of them starting and stopping as expected now!

Locked
Please be positive and constructive with your questions and comments.

Return to “Adafruit CircuitPython”