Raspberry Pi, Arduino, Node.js et le port série

Im essayant de parler à mon arduino à partir d'un node.js script serveur.

Voici mon code:

var app = require('express')()
, server = require('http').createServer(app)
, io = require('socket.io').listen(server)
, SerialPort  = require('serialport').SerialPort;

//SERIAL
var portName = '/dev/ttyACM0';
var sp = new SerialPort(); //instantiate the serial port.
sp.open(portName, { //portName is instatiated to be COM3, replace as necessary
   baudRate: 115200, //this is synced to what was set for the Arduino Code
   dataBits: 8, //this is the default for Arduino serial communication
   parity: 'none', //this is the default for Arduino serial communication
   stopBits: 1, //this is the default for Arduino serial communication
   flowControl: false //this is the default for Arduino serial communication
});

//SERVER
server.listen(80, '127.0.0.5');

app.get('/', function (req, res){
  res.sendfile(__dirname + '/index.html');
});

io.sockets.on('connection', function (socket){
  socket.emit('test', { test: 'Its Working' });
  socket.on('value', function (data){
    console.log(data);
    });
});

Im assez sûr que mon appareil est sur /dev/ttyACM0 parce que:

pi@raspberrypi ~/Programming/node $ dmesg|tail
[91569.773042] cdc_acm 1-1.2:1.0: ttyACM0: USB ACM device
[91569.776338] usbcore: registered new interface driver cdc_acm
[91569.776369] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
[92601.131298] usb 1-1.2: USB disconnect, device number 7
[92609.044999] usb 1-1.2: new full-speed USB device number 8 using dwc_otg
[92609.149759] usb 1-1.2: New USB device found, idVendor=2341, idProduct=0043
[92609.149789] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=220
[92609.149806] usb 1-1.2: Manufacturer: Arduino (www.arduino.cc)
[92609.149820] usb 1-1.2: SerialNumber: 74132343430351705051
[92609.156743] cdc_acm 1-1.2:1.0: ttyACM0: USB ACM device
pi@raspberrypi ~/Programming/node $

Quand j'essaie de l'exécuter mon script serveur j'obtiens l'erreur:

pi@raspberrypi ~/Programming/node $ node server.js
   info  - socket.io started

/home/pi/node_modules/serialport/serialport.js:72
    throw new Error('Invalid port specified: ' + path);
          ^
Error: Invalid port specified: undefined
    at new SerialPort (/home/pi/node_modules/serialport/serialport.js:72:11)
    at Object.<anonymous> (/home/pi/Programming/node/server.js:8:10)
    at Module._compile (module.js:449:26)
    at Object.Module._extensions..js (module.js:467:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.runMain (module.js:492:10)
    at process.startup.processNextTick.process._tickCallback (node.js:244:9)

Im sûr que im manque juste quelque chose de simple mais je ne sais pas assez sur Linux ou Nœud de savoir ce que c'est. Dois-je installer l'IDE arduino pour les conducteurs?
Est-ce parce que je suis sshing dans mon raspberry pi, je sais qu'il utilise le port série, mais j'ai envie de communiquer via le port USB. Est-ce possible ou dois-je seulement 1 port série, indépendamment de savoir si son USB ou série?

MODIFIER
J'ai installé l'IDE et je peux parler à l'arduino par le biais de l'IDE. Il n'est donc pas de pilotes ou de manque de ports.

Merci pour toute aide.

Joe

source d'informationauteur Joseph Roberts