Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including rpi with all npm packages installed. Try it out:

var rpi = require("rpi")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

rpi v0.0.3

Raspberry Pi GPIO communication on top of WiringPi

rpi Build Status

Yet another Node.js library to use the Raspberry Pi GPIOs.

Relies on WiringPi and then has some nice features:

  • no sudo required
  • you can use the GPIOs from the P5 header of the Pi
  • based on Event Emitters

It's a WIP! But basic read and write should work. See the examples folder.



GPIO class, that represents an instance of a GPIO.

Pin numbers are the ones used in wiringPi. Specify the pin direction with 'in' or 'out'.

If the pin direction is 'in', events 'change', 'rise' and 'fall' will be fired when needed.

Here is a quick sample:

var pin8 = new GPIO(8, 'in');
pin8.on('ready', function() {
pin8.on('rise', function() {
pin8.on('change', function(value) {

GPIO.write(value:Number, callback:function())

Write the value on the GPIO


Shorthand for pin.write(1, callback). Writes 1 on the GPIO


Shorthand for pin.write(0, callback). Writes 0 on the GPIO

Reads the value on the GPIO

RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free