2.0 KiB
GPIO Zero
A simple interface to everyday GPIO components used with Raspberry Pi
Latest release
The latest release is v0.6.0 public beta 1 released on 28th September 2015.
Motivation
The "hello world" program in Java is at least 5 lines long, and contains 11 jargon words which are to be ignored. The "hello world" program in Python is one simple line. However, the "hello world" of physical computing in Python (flashing an LED) is similar to the Java program:
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
red = 2
GPIO.setup(red, GPIO.OUT)
GPIO.output(red, True)
6 lines of code to flash an LED. And skipping over why GPIO is used twice in
the first line; what BCM means; why set warnings to False; and so on. Young
children and beginners shouldn't need to sit and copy out several lines of text
they're told to ignore. They should be able to read their code and understand
what it means. This module provides a simple interface to everyday components.
The LED example becomes:
from gpiozero import LED
red = LED(2)
red.on()
Any guesses how to turn it off?
Install
Install with pip::
sudo apt-get install python-pip python3-pip
sudo pip install gpiozero
sudo pip-3.2 install gpiozero
Both Python 3 and Python 2 are supported. Python 3 is recommended!
Upgrade
Upgrade to the latest version with:
sudo pip install gpiozero --upgrade
sudo pip-3.2 install gpiozero --upgrade
What's included?
Components:
- LED
- Buzzer
- Button
- Motion Sensor
- Light Sensor
- Temperature Sensor
- Motor
Boards & accessories:
- LED Board
- Traffic Lights
- PiLITEr
- PI-TRAFFIC
- Fish Dish
- Traffic HAT
Getting started
See the input devices and output devices to get started. Also see the boards & accessories page for examples of using the included accessories.
For common programs using multiple components together, see the recipes page.