Created
December 30, 2012 14:51
-
-
Save thebadger412/4413118 to your computer and use it in GitHub Desktop.
App.js for node-serial example
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Module dependencies. | |
*/ | |
var express = require('express') | |
, routes = require('./routes') | |
, user = require('./routes/user') | |
, http = require('http') | |
, path = require('path') | |
, serialport = require("serialport").SerialPort; | |
/** | |
* Serial Port Setup. | |
*/ | |
var portName = '/dev/ttyAMA0'; //This is the standard Raspberry Pi Serial port | |
var readData = ''; //Array to hold the values read in from the port | |
var sp = new serialport(portName, { | |
baudRate: 9600, | |
dataBits: 8, | |
parity: 'none', | |
stopBits: 1, | |
flowControl: false | |
}); | |
/** | |
* Express Setup. | |
*/ | |
var app = express(); | |
app.configure(function(){ | |
app.set('port', process.env.PORT || 80); | |
app.set('views', __dirname + '/views'); | |
app.set('view engine', 'jade'); | |
app.use(express.favicon()); | |
app.use(express.logger('dev')); | |
app.use(express.bodyParser()); | |
app.use(express.methodOverride()); | |
app.use(app.router); | |
app.use(express.static(path.join(__dirname, 'public'))); | |
}); | |
app.configure('development', function(){ | |
app.use(express.errorHandler()); | |
}); | |
app.get('/', routes.index); | |
app.get('/users', user.list); | |
/** | |
* Actual Server Code | |
*/ | |
var server = http.createServer(app).listen(app.get('port'), function(){ | |
console.log("Express server listening on port " + app.get('port')); | |
}); | |
var io = require('socket.io').listen(server); | |
/** | |
* Server and socket started, below are all my listeners and emitters | |
*/ | |
io.sockets.on('connection', function(socket){ | |
console.log("Socket connected"); | |
socket.emit('connected', 123); | |
socket.on('sendSerial', function(data) { | |
console.log("Client sent us: " + data + "to send to serial"); | |
sp.write(mbBuffer, function (err, bytesWritten) { | |
console.log('bytes written:', bytesWritten); | |
}); | |
}); | |
sp.on('data', function (data) { | |
console.log(data); | |
var mbRec = new Buffer(data, 'utf') | |
console.log(mbRec); | |
mbRec = mbRec.toString('hex'); | |
console.log(mbRec); | |
socket.emit('serialEvent', mbRec); | |
}); | |
sp.on('close', function (err) { | |
console.log('port closed'); | |
}); | |
sp.on('error', function (err) { | |
console.error("error", err); | |
}); | |
sp.on('open', function () { | |
console.log('port opened...'); | |
}); | |
}); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment