This package wraps the BlueTooth low energy library Noble to expose a simple API for flying Parrot MiniDrones. That includes the Rolling Spider, Airborne Cargo, Night and Hydrofoil models. Unlike other libraries that are designed to run stepped commands, this library is designed to allow continuous control through any input device.
- Noble requires Xcode. Download and install the latest version from Apple's developer network
- Node >= 6.0.0
- Grab the module
npm install parrot-minidrone
- Create
index.js
with the below code - Run the script
node index.js
const Drone = require('parrot-minidrone');
const drone = new Drone({
autoconnect: true,
});
drone.on('connected', () => drone.takeOff());
drone.on('flightStatusChange', (status) => {
if (status === 'hovering') {
drone.land();
process.exit();
}
});
In the examples folder of this library are a few scripts using the API to fly drones with various input devices.
Follow these directions from the root of the project to fly with a PS3/4 controller
- Turn on the drone
- Plug in the controller via USB or connect to your computer via Bluetooth
- Run
node examples/dualshock-ps3-controller/drone.js
- Wait to see the drone connected message in the console output
Button | Function |
---|---|
Right Analog Stick | Altitude, yaw |
Left Analog Stick | Roll, pitch |
Square | Flat-trim |
Triangle | Toggle takeoff & land |
Circle | Emergency landing |
X | Take a picture |
L1 | Left flip |
R1 | Right Flip |
L2 | Front Flip |
R2 | Back Flip |
To fly with the keyboard follow the below instructions.
- Turn on the drone
- Run
node examples/keyboard/drone.js
- Wait to see the drone connected message in the console output
Key | Function |
---|---|
Arrow Up | Pitch + |
Arrow Down | Pitch - |
Left Arrow | Roll left |
Left Arrow | Roll right |
w | Altitude + |
s | Altitude + |
a | Yaw left |
d | Yaw right |
t | Toggle takeoff & land |
f | Flattrim |
Escape | Emergency land |
To run the test runner execute npm test
.
- Event battery change event
- Fix issue with an error being thrown during connection on some Bluetooth devices
- Documentation
- Unit tests
- Flips interface