Servo motors are one way to make projects come to life with exciting movements like steering robots, flipping switches, and more. To control a servo you need to generate a special PWM, or pulse-width modulation, signal. Most development boards can generate a few basic PWM signals, but what if you need to control a lot of servos or don't have a board with PWM support? The PCA9685 PWM driver board comes to the rescue! This driver board can generate up to 16-channels (or 8-channels in FeatherWing form) of PWM signals--perfect for driving many servos!
This guide explores how to use the PCA9685 PWM & Servo driver with CircuitPython and MicroPython. You'll learn how to connect the PCA9685 to a board and use it to control LED brightness and move servos from Python code.
For more background check out these guides on servo motors: