RPIO is a GPIO toolbox for the Raspberry Pi.
C Python Makefile Other Other
Latest commit c4e8b73 May 27, 2015 @metachris Merge pull request #35 from CorCornelisse/master
Add model B+ information to MODEL_DATA dictionary


RPIO is an advanced GPIO module for the Raspberry Pi.

  • PWM via DMA (up to 1us resolution)
  • GPIO input and output (drop-in replacement for RPi.GPIO)
  • GPIO interrupts (callbacks when events occur on input gpios)
  • TCP socket interrupts (callbacks when tcp socket clients send data)
  • Command-line tools rpio and rpio-curses
  • Well documented, fast source code with minimal CPU usage
  • Open source (LGPLv3+)

Visit pythonhosted.org/RPIO for the documentation.


The easiest way to install/update RPIO on a Raspberry Pi is with either easy_install or pip:

$ sudo apt-get install python-setuptools
$ sudo easy_install -U RPIO

After the installation you can use import RPIO as well as the command-line tools rpio and rpio-curses.

Debian packages are available at metachris.github.com/rpio/download.

An Arch Linux PKGBUILD is available at aur.archlinux.org/packages/rpio.


You can find lots of examples inside the documentation, as well as in the /examples/ source directory.


Please send feedback and ideas to chris@linuxuser.at, and open an issue at Github if you've encountered a bug.


This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details at <http://www.gnu.org/licenses/lgpl-3.0-standalone.html>

Special Thanks

csegit, waveform80, nils-werner, friedcell, zejn, dbeal, paul-1


Copyright (C) 2013 Chris Hager <chris@linuxuser.at>



Please refer to the 'Changes' section in the documentation.