weisjohn / guitar-controller

Interface to a Guitar Hero USB controller.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

guitar-controller

Interface to a Guitar Hero controller.

usage

var controllers = require('guitar-controller')();
var player1 = controllers[0];

player1.on('green.press', function() {
    console.log('green was pressed');
});

player1.on('green.release', function() {
    console.log('green was released');
});

See the example.js file for more detailed usage.

API

Buttons:

The controller has the following buttons:

  • green
  • red
  • yellow
  • blue
  • orange
  • start
  • back
  • up
  • down
  • left
  • right
  • xbox

For each button, a press and release event exist:

  • green.press
  • green.release
  • red.press
  • red.release
  • yellow.press
  • yellow.release
  • blue.press
  • blue.release
  • orange.press
  • orange.release
  • start.press
  • start.release
  • back.press
  • back.release
  • up.press
  • up.release
  • down.press
  • down.release
  • left.press
  • left.release
  • right.press
  • right.release
  • xbox.press
  • xbox.release
Ranges:
  • x
  • y
  • whammy

Range events receive a value. For example:

player1.on('x', function(val) {
    console.log(val);
});

examples

  1. Plug in the guitar's USB cable.
  2. node [script] to test scripts in examples folder.
  3. Click buttons on your remote and commence mad science.

sample

Here's a sample integration with baudio. (NOTE: the lag is from spawning a child-process, not from the driver).

contribution

If you have a Guitar Hero controller that isn't supported, plug your controller in and run examples/explorer.js. Create an issue and paste in the console results. Pull requests welcome.

About

Interface to a Guitar Hero USB controller.

License:MIT License


Languages

Language:JavaScript 100.0%