Servo PWM Pi Zero

£8.49 each (including VAT: £10.19)

The Servo PWM Pi Zero is a 16-channel, 12-bit PWM controller for the Raspberry Pi, suitable for driving LEDs and radio control servos. The board is based around PCA9685 PWM I2C LED controller IC from NXT and can drive each of the 16 outputs with 12 bit (4096 steps) duty cycle from 0%  to 100%.

The output frequency is programmable from a typical 40Hz to 1000Hz. Each output driver is programmed to be either open-drain with a 22 mA current sink capability at 5 V or totem pole with a 22 mA sink, 10 mA source capability at 5 V. 220R current limiting resistors are used on each channel allowing you to connect servos or LEDs directly to the outputs.


The PCA9685 contains 5 I2C address selection pins which can be configured using solder bridges on the Servo PWM Pi Zero PCB. Using different I2C addresses on your Servo Pi allows you to stack several boards on a single Raspberry Pi, see the data-sheet for more details on I2C address selection. The active LOW Output Enable input pin (OE) on the PCA9685 allows asynchronous control of the LED outputs and can be used to set all the outputs to a defined I2C-bus programmable logic state. The OE can also be used to externally ‘pulse width modulate’ the outputs, which is useful when multiple devices need to be dimmed or blinked together using software control. The OE pin can be connected to pin 7 (GPIO 4) on the Raspberry Pi GPIO port by bridging the solder pads on the Servo Pi marked OE.

Connecting RC Servos

The Servo Pi is only compatible with analogue RC servos, digital servos will not work. While the Servo Pi uses a 12 bit (4096 step) controller due to the way RC servos are designed only approximately 200 steps will be available for controlling the servo. You can find an example python library for controlling an RC servo at

Powering the Servo PWM Pi Zero

For safety reasons the Servo PWM Pi Zero is not connected to the 5V power rail on the Raspberry Pi.

Due to the high currents used on radio control servos and other PWM devices it is recommended that you use an external 5V power supply to power the Servo Pi. External power can be provided through the 5V and GND pads on the Servo PWM Pi Zero. If you use two power supplies, one for the Raspberry Pi and one for the Servo Pi please ensure that the ground wires on the two supplies are joined and do not have any potential difference between them. Any potential difference between the grounds could damage the Raspberry Pi and yourself.

If you are using the Servo PWM Pi Zero for low current applications, below 300mA, you can power the Servo PWM Pi Zero through the 5V pins on the Raspberry Pi GPIO port by bridging the “PWR Link” pads with a blob of solder.

Bridging the “PWR Link” pads will also allow you to power your Raspberry Pi from the Servo Pi power pins using an external 5V power supply but please note this will bypass the internal fuse on the Raspberry Pi leaving it vulnerable to damage from short circuits on any of the GPIO pins.


Servo Pi Zero Address Selection


Compatibility Chart

Model Status
Raspberry Pi Model A No
Raspberry Pi Model B No
Raspberry Pi 1 Model A+ Yes
Raspberry Pi 1 Model B+ Yes
Raspberry Pi 2 Model B Yes
Raspberry Pi 3 Model B Yes
Raspberry Pi Zero Yes
Raspberry Pi Zero W Yes
ODroid C1 Yes
ODroid C2 Yes

Input Ratings & Specifications

Maximum input voltage: 5.5V when PWR Link is not bridged.

Maximum current on each PWM pin 22mA


Servo Pi Zero Schematic

Assembly Instructions

The Servo PWM Pi Zero is supplied with the 40 pin GPIO connector unsoldered.

We supply the Servo PWM Pi Zero this way because the Raspberry Pi Zero is also supplied without a GPIO header and the Servo PWM Pi Zero could therefore be fitted both above or below the Raspberry Pi Zero.

Before using the Servo PWM Pi Zero you will need to solder the 40 pin GPIO connectors onto the PCB.  

PCB Header Assembly Jig

Download and print our PCB Header Assembly Jig to hold your circuit board when soldering the header pins.


Mechanical Drawings

Mechanical Drawing

Click image to enlarge

Sample Code

We have Arduino, Windows 10 IOT, Python 2 and Python 3 libraries available for this expansion board.  You can download all of the libraries from github at:

Download the Arduino libraries from:

To download the Python 2 libraries to your Raspberry Pi type in terminal:

git clone

To download the Python 3 libraries to your Raspberry Pi type in terminal:

git clone

Download the Windows 10 IOT libraries from:

Download Python 2 and 3 code samples

Download Arduino code samples

Important Information

This development board/kit is intended for use for ENGINEERING DEVELOPMENT, DEMONSTRATION, OR EVALUATION PURPOSES ONLY and is not considered by to be a finished end-product fit for general consumer use. As such, the goods being provided are not intended to be complete in terms of required design-, marketing-, and/or manufacturing-related protective considerations, including product safety and environmental measures typically found in end products that incorporate such semiconductor components or circuit boards. Persons handling the product(s) must have electronics training and observe good engineering practice standards. This development board/kit does not fall within the scope of the European Union directives regarding electromagnetic compatibility, restricted substances (RoHS), recycling (WEEE), FCC, CE or UL, and therefore may not meet the technical requirements of these directives or other related directives. Note: documents in Portable Document Format (PDF) require Adobe Acrobat Reader 5.0 or higher to view, download Adobe Acrobat Reader or other PDF reading software for your computer or mobile device.



Products added to basket

0 Items

Total (inc shipping) £0.00

CheckoutView Basket

Free Shipping on all orders over £25

Click to contact us.

Have any Questions?

Send us any questions about this page or product and we will reply within 24 hours.

Submit your Message


Have any Questions?

Thank you for contacting us.

We will respond to your enquiry in the next 24 hours.

You can find answers to many questions and additional product support in our Knowledge Base and the Community Forum.