Reputation: 1100
Im running raspi Model B Rev 2 512MB, I installed the module and succesfully opened a pin for writing on it. Succesfully made a LED blink. Then I try to open a port for reading and I get and error
{ Error: EIO: i/o error, write errno: -5, code: 'EIO', syscall: 'write' }
This the relevant part of the code.
var gpio = require('rpi-gpio');
server.listen(8080, function() {
console.log('Servidor corriendo en http://localhost:8080');
gpio.setup(7, gpio.DIR_OUT, control);
gpio.setup(22, gpio.DIR_IN, gpio.EDGE_BOTH, control);
});
function control(err)
{
if(err)
console.log("Control function: " + err);
else
console.log('ok');
}
This is the pinout I see using gpio readall, I want to read from GPIO6, therefore I call to 22 (Physical port) I also tried 25 (BCM port) with the same result.
Any clue ??
Upvotes: 0
Views: 538
Reputation: 1100
the problem is that the syntax is slightly different, if you add the third parameter for the edge you cannot add the callback, changing this:
gpio.setup(22, gpio.DIR_IN, gpio.EDGE_BOTH, control);
to this
gpio.setup(22, gpio.DIR_IN, gpio.EDGE_BOTH);
solved the problem
Upvotes: 1
Reputation: 1738
PIN 6 is Ground, so you cannot use it. You can use PIN 5 for input. (PINs not GPIOs)
Pin diagram for reference:
Upvotes: 0