Paso 5: Introduzca Cylon, navaja suiza del desarrollador de IoT
El Edison es una poderosa plataforma que puede manejar la interfaz con el hardware a un nivel que está muy cercano "al metal". Aunque podríamos utilizar más potentes métodos de acceso a interfaces de hardware en el tablero, vamos a aprovechar el marco de la Cylon.js , que nos permitirá centrarse en la carne de este post: convertir los datos del sensor en música! Empezar con Cylon al instalar el paquete de la nueva gestión pública , entonces cometen y empujar los cambios.
npm install --save cylon
A continuación, actualizar el archivo app.js para arranque Cylon.
var express = require('express') var app = express() var server = require('http').Server(app) var cylon = require('cylon') var io = require('socket.io')(server) app.use(express.static(__dirname + '/public')) server.listen(8080) io .of('/soundsocket') .on('connection', function (socket) { console.log('client connected') socket.emit('my_message', 'hello world!') }) cylon.robot({ connections: { // tell Cylon how we will be connecting to our devices edison: { adaptor: 'intel-iot' } }, devices: { // we don't have devices to add yet, but we will shortly! } }).on('ready', function(my) { console.log('cylon ready') }) cylon.start()
Comprometerse y empujar los cambios. SSH en su Edison, tire hacia abajo de los cambios y, a continuación, instale el paquete 'cylon-intel-iot' MNP .
npm install cylon-intel-iot
Nota: Tenemos ahora una dependencia que no se instalará correctamente en cualquier cosa menos un Edison. Esto significa que puede obtener errores si intenta ejecutar la aplicación en tu máquina de desarrollo en lugar de la Edison, debido a que requieren compatibilidad con la biblioteca MRAA.
Si ejecuta la aplicación en el Edison, ahora ver Cylon inicializar y configurarla conexiones, eventualmente registro "cylon listo" a la consola.
Vamos a añadir un botón! Seguir adelante y de alambre a una de las entradas digitales disponibles en Edison, tomando nota de que pin va a conectar a él con un pulsador. Si necesita ayuda para cableado de un botón, Echale un tutorial excelente de Intel en un empuje de botón momentario de cableado. Luego, realizar el cambio siguiente en el código de inicialización de Cylon, reemplazando el número con el perno que tiene un botón conectado al pin.
cylon.robot({ connections: { edison: { adaptor: 'intel-iot' } }, devices: { button: { driver: 'button', pin: 2 } } }).on('ready', function(my) { console.log('cylon ready') my.button.on('push', function() { // when the button is pushed, this callback will be triggered console.log("Button pushed!") }) my.button.on('release', function() { // when the button is released, this callback will be triggered console.log("Button released!") }) }) cylon.start()
Si ejecuta la aplicación, debe ver sus Estados de cuenta de registro en el Edison cuando presionando y soltando el botón.