This is a stupid module for controlling the GPIO ports on the Raspberry Pi. It just spawns a new new process in order to communicate with gpio. I'll eventually make a c module that will do better. I couldn't get the other node modules to work, so I made this simple wrapper. Sorry it is so dumb.
Requires wiringpi
npm install gpiojs
Note: Since this requires wiringpi, if you use this, please follow wiringpi's gpio scheme
To use, include:
var gpio = require('gpiojs');
Sets a GPIO port value. Example:
gpio.set( 1, 1, function(){
console.log("Set port 1 to high");
});
Alias a GPIO ports
gpio.label( 'led-1', 1 );
gpio.set( 'led-1', 1, function(){
console.log("Led-1 is now on");
});
Sets a GPIO port mode. If you want to send a signal out, then set your port to out. Example:
gpio.setMode( 1, 'out', function(){
console.log("Port 1 ready for writing");
});
Get the current GPIO configuration. Equivalent to gpio readall
. Sends an array of objects to the second argument of the callback. The index of the array corresponds to the GPIO port. Example:
gpio.readAll( function( error, config ){
console.log( "GPIO Port 1 has mode of", config[ 1 ].Mode, "and value of", config[ 1 ].Value );
});