Gamepad adapter app for Sphero robotic ball.
The application let's you control your Sphero with a physical gamepad. Connect and pair the Sphero to your computer via bluetooth, plug in a gamepad, and drive your robotic ball using a classic RC control scheme.
The application is wrapped as a Chrome app for access to Chrome.Bluetooth API. Install via Chrome webstore: https://chrome.google.com/webstore/detail/controll/hbnkhjacnbnobebofnlmkpokijceafam
(In the near future we will have access to the 'Web Bluetooth API' that enable the browser to connect to a Bluetooth device - then we don't need the Chrome app wrapper anymore.
It's all very simple:
🎮 -> gamepad.js -> app.js -> adapter.js|bluetooth.js -> ⚪
The gamepad module polls for gamepad controller inputs and broadcasts changes.
App module acts as pub/sub broker (relaying gamepad changes to the adapter module).
The adapter module receives gamepad input, converts it to commands for Sphero ball and sends it via bluetooth module.
The bluetooth module keeps a socket connection to the Sphero and sends binary commands received from gamepad module.