À l’aide de boutons et capteurs pour faire de la musique avec l’Edison Intel (6 / 9 étapes)

Étape 6: Async-a-quoi? !

Afin d’envoyer les données reçues de l’Edison sur un socket, nous avons deux parties différentes qui doivent travailler ensemble, les deux qui sont asynchrones dans la nature. Pour obtenir un handle sur un socket, Socket.IO a besoin d’un client se connectant en fait. Cela se produit lorsque vous visitez votre Edison IP sur le port 8080 et nous servir jusqu'à notre fichier « index.html ». En outre, Cylon démarre pour un montant indéterminé de temps, puisqu’il doit initialiser différents appareils et connexions avant qu’il soit prêt à être utilisé. Ce que nous voulons faire, c’est démarrer Cylon lorsque notre serveur d’applications est lancé, puis initialiser Socket.IO. Ensuite, chaque fois que Socket.IO reçoit une connexion, il faut ajouter un rappel à notre bouton pour émettre un message de socket pour ce socket spécifique, chaque fois que les événements de bouton sont déclenchés. Nous aurons besoin de refactoriser certains de notre code existant. Remplacez le contenu de « app.js » avec le code suivant.

 var express = require('express') var app = express() var server = require('http').Server(app) var io = require('socket.io')(server) var cylon = require('cylon') app.use(express.static(__dirname + '/public')) server.listen(8080) // this will be called when Cylon is fully initialized, which is when we should open up our WebSocket connection. var cylonReady = function(my) { io .of('/soundsocket') .on('connection', function (socket) { registerSocketHandlers(my, socket); }) } // this will be called each time a socket is opened, so each client will receive their own events when buttons are pushed. var registerSocketHandlers = function(my, socket) { my.button.on('push', function() { socket.emit('button', 'push') }) my.button.on('release', function() { socket.emit('button', 'release') }) } cylon.robot({ connections: { edison: { adaptor: 'intel-iot' } } devices: { button: { driver: 'button', pin: 2 } } }).on('ready', cylonReady); cylon.start() 

Mettez à jour votre « index.html » pour refléter les modifications suivantes :

 socketConnection.on('button', function(buttonState) { console.log('button state:', buttonState) }) 

Nous engageons et poussez vos modifications. Pour prouver que cela ne fonctionne pas comme prévu, vous pouvez abaisser l’app et lancez-le sur votre Edison, puis recharger la page dans votre navigateur. Si vous regardez la console Web Inspector, vous devriez voir les messages émis lorsque vous enfoncez et relâchez le bouton.

Articles Liés

LE BÂTON | Un moyen interactif pour faire de la musique.

LE BÂTON | Un moyen interactif pour faire de la musique.

Regardez la vidéo pour la voir en action ! Vous pouvez le voir que j'ai utilisé une plante pour faire des sons différents et aussi un verre d'eau pour faire de nouveaux sons !Etape 1: Coller | Un moyen interactif pour faire de la musique.Premier proj
À l’aide d’un cutter Silhouette pour faire un slogan t-shirt

À l’aide d’un cutter Silhouette pour faire un slogan t-shirt

Il s'agit d'un processus par étapes simple pour l'aide d'un cutter Silhouette pour faire un slogan de la seule couleur t-shirt.Étape 1: Recueillir vos matériaux Vous aurez besoin...Un t-shirt blanc (préférence neuf) *Tee-shirt en vinyle - couleur de
Traîneau pour faire un vrai avantage avec une scie à Table

Traîneau pour faire un vrai avantage avec une scie à Table

même si votre bois de charpente a été rabotée pour un vrai avantage, les changements au fil du temps peuvent signifier il n'est plus vrai. Je veux montrer un appareil pour faire un vrai avantage avec une table a vu c'est un peu différente de la métho
Faire de la musique avec vos ondes cérébrales en temps réel.

Faire de la musique avec vos ondes cérébrales en temps réel.

Vidéo de la musique des ondes cérébrales :MindMIDI est une façon révolutionnaire de faire de la musique, avec vos ondes cérébrales, en temps réel. Ondes cérébrales sont comme des stations de radio, avec chaque station de travail sur un autre calque,
À l’aide de bouts de papier pour faire rapide et facile en relief des cartes

À l’aide de bouts de papier pour faire rapide et facile en relief des cartes

En plus des instructions de la photo ci-dessous, j'ai également téléchargé une vidéo ci-dessus pour ceux d'entre vous qui préfèrent des vidéos et tutoriels photo.J'adore le papier et j'aime faire des cartes. Lorsque vous mettez les deux de ces ensemb
Faire de la musique avec un Atari Punk Console

Faire de la musique avec un Atari Punk Console

certains anciens circuits analogiques sont aussi populaires aujourd'hui que lorsqu'ils ont été introduits il y a des décennies. Souvent, ils ont facilement battu micros et autres solutions de circuit numérique en termes de simplicité fondamentale. Fo
Faire de la musique avec Makeblock

Faire de la musique avec Makeblock

Makeblock est un système de construction en aluminium extrusion basée qui fournit une solution intégrée pour les aspects de la conception mécanique, électronique et logiciel. Avec Makeblock vous pouvez faire des robots professionnels, machines de jou
À l’aide de Adhesive-Backed carrelage pour faire imprimer & Play BoardGames

À l’aide de Adhesive-Backed carrelage pour faire imprimer & Play BoardGames

comme un habitué (obsessor?) de www.boardgamegeek.com et un radin notoire, j'aime imprimer et jouer des jeux de société.  Le meilleur endroit pour commencer est de FNH1 Print et Podcast de jouer à http://printandplay.blogspot.com/FNH évoqué cette idé
À l’aide d’un pi framboise pour contrôler un WF32 avec LabVIEW (contrôle du ventilateur)

À l’aide d’un pi framboise pour contrôler un WF32 avec LabVIEW (contrôle du ventilateur)

Ce Instructable prend un projet de mon dernier Instructable (thermistance - commande du ventilateur à l'aide de LabVIEW) et ajoute dans l'utilisation d'un pi framboise 3 pour contrôle sans fil de la WF32. Cela signifie que vous pouvez maintenant conf
Faire de la musique avec votre imprimante 3d

Faire de la musique avec votre imprimante 3d

Je trouve des utilisations de plus en plus de l'imprimante 3D, et je tiens à partager avec le monde. Il s'agit d'un rapide petit comment obtenir votre imprimante 3D à jouer de la musique. Avec en prime une peu je vous montrer comment l'ajouter à la f
Faire de la musique genre de goût agréable avec un capteur de mouvement de bande X

Faire de la musique genre de goût agréable avec un capteur de mouvement de bande X

Faire de la musique avec un radar en bande X, hmmm... qui ne serait plus amusant qu'une personne devrait pouvoir avoir ? Il n'est pas difficile de nos jours, avec les bons outils bien sûr. Comme vous pouvez le voir dans l'image qui accompagne cette i
Comment pour faire le Super Manx Paper Airplane

Comment pour faire le Super Manx Paper Airplane

repensé pour mieux répondre aux besoins des aviateurs battant le Manx, le Super Manx est une augmentation de l'original avec des modifications mineures. Afin de rendre les choses encore plus facile, j'ai conçu cet avion pour être compatible avec le M
Comment faire pour faire Fortune Cookies

Comment faire pour faire Fortune Cookies

quand je sors manger dans un restaurant chinois, une des choses que j'attends avec impatience est le cookie de fortune à la fin du repas. Souvent la fortune cachée à l'intérieur est significative, mais elles sont parfois carrément drôle lorsqu'il est
Comment faire un broyeur à billes avec lego et un tuyau en pvc--inclut le fichier de conception numérique

Comment faire un broyeur à billes avec lego et un tuyau en pvc--inclut le fichier de conception numérique

Bonjour et Bienvenue sur mon Instructable sur comment faire un broyeur à billes à l'aide de lego et tuyau en PVC.Cet instant instructable inclut une conception numérique 3D et 3D manuel de comment faire ce broyeur à boulets.la version Html du guide e