Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including bb8 with all npm packages installed. Try it out:

var bb8 = require("bb8")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

bb8 v1.0.2

Force control Sphero BB8 w/ Xbox controller or Myo armband

Star Wars BB8 + Xbox controller + Myo

The droid you're looking for!


Control your Sphero Star Wars BB8 droid with an Xbox 360 controller (wireless) !

Or, is The Force strong enough in you?

If you own a Myo armband, you can use gesture commands such as Force Push or Force Turn (more to come) to control your BB8 droid as a Jedi or Sith master!

Demo, or it didn't happen! (click for full video):

bb8-xbox-demo bb8-myo-demo



  1. Node.js >= 6.0.0
  2. Bluetooth ready computer (tested on Macbook Pro)
  3. OSX only: Xbox 360 driver (tested 0.15_beta3)

Getting started

  1. Clone repo

  2. Install deps: $ npm install

  3. Find your BB8 device UUID using the BLE scanner included: $ npm run scan

  4. Add the BB8 UUID to the config in src/config.js (DEVICE_UUID)

  5. Build the code (pick one):

  • Development mode: $ npm run dev (will recompile code on changes)
  • Production mode: $ npm run build

Code will be 'compiled' to dist/ folder.

Note: You'll have to open another terminal window to run the examples when using the developing mode as the watcher needs to always run.

  1. Running examples (finnaly!) - start the app via any:

$ npm start (starts Myo example by default)

$ node dist/example/xbox

$ node dist/example/myo


  • Xbox 360 driver (for OSX)
  • Myo
  • Sphero
  • Cylon


  • cleanup here-and-there
  • better docs
  • convert to TypeScript ?
RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free