const SerialPort = require('serialport'); const Readline = require('@serialport/parser-readline'); var express = require('express'), app = express(), http = require('http'), server = http.createServer(app), io = require('socket.io').listen(server), scores = {}; // listen for new web clients: server.listen(8080); // open the serial port. Change the name to the name of your port, just like in Processing and Arduino: const port = new SerialPort("/dev/ttyUSB0", { baudRate: 9600 }); const parser = new Readline({ delimiter: '\r' }); port.pipe(parser) // respond to web GET requests with the index.html page: app.get('/', function (req, res) { res.sendFile(__dirname + '/index.html'); }); // listen for new serial data: parser.on('data', line => console.log(`> ${line}`)) // listen for new socket.io connections: io.on('connection', function (socket) { parser.on('data', line => socket.emit('data', line)) socket.on('message', function (data) { console.log(data) port.write(data+'\r') }); });