Latest Version Build Tests Code Coverage

A simple interface to everyday GPIO components used with Raspberry Pi.

Created by Ben Nuttall of the Raspberry Pi Foundation, Dave Jones, and other contributors.


Component interfaces are provided to allow a frictionless way to get started with physical computing:

from gpiozero import LED
from time import sleep

led = LED(17)

while True:

With very little code, you can quickly get going connecting your components together:

from gpiozero import LED, Button
from signal import pause

led = LED(17)
button = Button(3)

button.when_pressed = led.on
button.when_released =


The library includes interfaces to many simple everyday components, as well as some more complex things like sensors, analogue-to-digital converters, full colour LEDs, robotics kits and more.


First, update your repositories list:

sudo apt-get update

Then install the package of your choice. Both Python 3 and Python 2 are supported. Python 3 is recommended:

sudo apt-get install python3-gpiozero


sudo apt-get install python-gpiozero


Comprehensive documentation is available at


This project is being developed on GitHub. Join in:

  • Provide suggestions, report bugs and ask questions as issues
  • Provide examples we can use as recipes
  • Contribute to the code

Alternatively, email suggestions and feedback to

Table of Contents