Skip to content

Instantly share code, notes, and snippets.

@chefguevara
Created August 18, 2017 00:41
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save chefguevara/a6015d2bd1564937c44d12cb6f0a66f8 to your computer and use it in GitHub Desktop.
Save chefguevara/a6015d2bd1564937c44d12cb6f0a66f8 to your computer and use it in GitHub Desktop.
tank
ximport five from 'johnny-five';
import keypress from 'keypress';
const board = new five.Board({port: '/dev/cu.NODEBOT_BETA-DevB'});
keypress(process.stdin);
process.stdin.setRawMode(true);
process.stdin.resume();
board.on('ready', () => {
const left = new five.Motor({
pins: {
pwm: 11,
dir: 6,
cdir: 7
}
}),
right = new five.Motor({a
pins: {
pwm: 10,
dir: 8,
cdir: 9
}
}),
proximity = new five.Proximity({
controller: 'HCSR04',
pin: 'A0'
});
/* proximity.on('data', () => {
console.log('cm: ', proximity.cm);
}); */
/*
board.repl.inject({
left,
right
});
*/
process.stdin.on('keypress', (ch, key) => {
if (key && key.ctrl && key.name === 'c') {
process.exit();
}
switch (key.name) {
case 'up':
left.stop();
right.stop();
left.forward(255);
right.forward(255);
break;
case 'down':
left.stop();
right.stop();
left.reverse(255);
right.reverse(255);
break;
case 'space':
left.stop();
right.stop();
break;
default:
console.log(key.name);
}
});
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment