Arduino code for photocell sensor.
#define CDS_INPUT 0
void setup() {
Serial.begin(9600);
}
void loop() {
int value = analogRead(CDS_INPUT);
Serial.println(value);
delay(1000);
}The value for portName can be found from the Arduino IDE > Tools > Serial Port.
var serialport = require('serialport');
var portName = '/dev/tty.usbmodem1411';
var sp = new serialport.SerialPort(portName, {
baudRate: 9600,
dataBits: 8,
parity: 'none',
stopBits: 1,
flowControl: false,
parser: serialport.parsers.readline("\r\n")
});
sp.on('data', function(input) {
console.log(input);
});Pass in port from the command line: node index.js /dev/cu.usbmodem1411
// index.js
var serialport = require('serialport');
SerialPort = serialport.SerialPort;
portName = process.argv[2];
var myPort = new SerialPort(portName, {
baudRate: 9600,
parser: serialport.parsers.readline("\n")
});
myPort.on('open', showPortOpen);
myPort.on('data', sendSerialData);
myPort.on('close', showPortClose);
myPort.on('error', showError);
function showPortOpen() {
console.log('port open. Data rate: ' + myPort.options.baudRate);
}
function sendSerialData(data) {
console.log(data);
}
function showPortClose() {
console.log('port closed.');
}
function showError(error) {
console.log('Serial port error: ' + error);
}To send serial output from node.js to the Arduino, use the serialport write() function like so:
myPort.write("Hello");