Can anyone explain the difference between WiringPi and the default RPi.GPIO module that comes with raspbian?

What extra features does WiringPi have?

2 Answers 2


wiringPi is a C library. Bindings have been provided for other languages like Python and Java. As mentioned above wiringPi comes with a command line utility called gpio which is setuid root so the gpio utility can be run by a non-root user.

RPi.GPIO is a Python module.

Programs linked against wiringPi have to be run as root as does any Python program which imports RPi.GPIO.

If you look at the web-sites you can make a feature comparison. Generally wiringPi has a lot more features available, SPI/I2C, Gert board ec.


WiringPi has a command line utility called 'gpio'. This makes it possible to control GPIO pins from the command line. Read about it here: http://wiringpi.com/the-gpio-utility/

WiringPi doesn't need to be run as root, but programs built with the RPi.GPIO module do need to be run as root.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.