From 7e1a4be0cfb122d1d49c2e27b697e6ca55110b9f Mon Sep 17 00:00:00 2001 From: Matt Date: Tue, 21 Jun 2016 11:04:57 -0400 Subject: [PATCH] Emit an event on arduino serial events To be listened to by other modules --- app/lib/mcopy-arduino.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/lib/mcopy-arduino.js b/app/lib/mcopy-arduino.js index be6f481..65d57a1 100644 --- a/app/lib/mcopy-arduino.js +++ b/app/lib/mcopy-arduino.js @@ -1,6 +1,8 @@ var serialport = require('serialport'), SerialPort = serialport.SerialPort, exec = require('child_process').exec, + events = require('events'), + eventEmitter = new events.EventEmitter(), mcopy = {}; /****** @@ -61,6 +63,7 @@ mcopy.arduino.send = function (serial, cmd, res) { mcopy.arduino.timer = new Date().getTime(); }); }, mcopy.cfg.arduino.serialDelay); + eventEmitter.emit('arduino_send', cmd); } }; //send strings, after char triggers firmware to accept @@ -87,6 +90,7 @@ mcopy.arduino.end = function (data) { mcopy.arduino.lock = false; //console.log('Command ' + data + ' took ' + ms + 'ms'); mcopy.arduino.queue[data](ms); //execute callback + eventEmitter.emit('arduino_end', data); delete mcopy.arduino.queue[data]; } else { console.log('Received stray "' + data + '"'); //silent to user