var linino = require('ideino-linino-lib'),
board = new linino.Board(),
tone = require('tone.json'),
buz = board.pin.pwm.P5;
var del = 0;
var lifx = require('lifx');
var lx = lifx.init();
var jbells = [
"NOTE_E5", "NOTE_E5", "NOTE_E5", "NOTE_E5", "NOTE_E5", "NOTE_E5", "NOTE_E5", "NOTE_G5", "NOTE_C5", "NOTE_D5", "NOTE_E5",
"NOTE_F5", "NOTE_F5", "NOTE_F5", "NOTE_F5", "NOTE_F5", "NOTE_E5", "NOTE_E5", "NOTE_E5", "NOTE_E5", "NOTE_D5", "NOTE_D5", "NOTE_E5", "NOTE_D5", "NOTE_G5",
"NOTE_E5", "NOTE_E5", "NOTE_E5", "NOTE_E5", "NOTE_E5", "NOTE_E5", "NOTE_E5", "NOTE_G5", "NOTE_C5", "NOTE_D5", "NOTE_E5",
"NOTE_F5", "NOTE_F5", "NOTE_F5", "NOTE_F5", "NOTE_F5", "NOTE_E5", "NOTE_E5", "NOTE_E5", "NOTE_G5", "NOTE_G5", "NOTE_F5", "NOTE_D5", "NOTE_C5", "0", "0"
];
var jbellstimes = [
200, 200, 400, 200, 200, 400, 200, 200, 200, 200, 800,
200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 400, 400,
200, 200, 400, 200, 200, 400, 200, 200, 200, 200, 800,
200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 800
];
lx.lightsOn();
function play(melody, times) {
board.noTone(buz);
for (thisNote = 0; thisNote < melody.length; thisNote++) {
sendsound(tone.tone[melody[thisNote]], del);
del = times[thisNote] + del;
}
}
function sendsound(sound, time) {
setTimeout(function() {
board.tone(buz, sound);
lx.lightsColour((sound * 16384) & 0xFFFF, 32767, 65535, 0, 0);
}, time);
}
board.connect(function() {
board.pinMode(buz, board.MODES.PWM);
play(jbells, jbellstimes);
});
Comments