Flying a drone with your mind? Is it possible?
A simple Express application that allows you to interact with a Parrot AR-Drone 2.0 with your mind (through a Neurosky EEG compatibile headset). The client to interact with the drone is Node AR Drone.
- Takeoff or land via eyes blinking
- Use high level attention to make a "fire led" animation
- Use high level meditation to make a "wave" flying evolution (a circle dance)
- Browse your current EEG levels via a customizable graph (available on http://localhost:8080/index.html)
- Fully control the drone from the keyboard
- Enable/disable/toggle features from Keyboard (EEG/DRONE)
- A computer with a Blueetooth and Wifi connection
- A Neurosky EEG device (e.g. Star Wars: Force trainer 2)
- A Parrot AR Drone 2.0
- A Windows/Linux/Mac machine
- Npm 3.8.6+ and Node v5.12.0+
npm install
- Install NeuroSky ThinkGear Connector for Windows/Mac. For Linux see instructions below.
- Bind and connect your EEG device to the Blueetooth of your machine
- Wear the EEG helmet and turn it on
- Plug in the battery to your AR Drone 2.0
- Connect your machine to the Wifi of the AR Drone 2.0 (open SSID)
- From the root of the project, launch:
npm start
- Browse http://localhost:8080/index.html to visualize your EEG live data.
- Use Keyboard binding from terminal to control the drone
Connecting to the Mindwave from Ubuntu or any other Linux-based OS can be done entirely from the command line using Gort commands. Here are the steps:
Find the address of the EEG device, by using:
$ gort scan bluetooth
Pair/Connect to Mindwave using this command (substituting the actual address of your EEG Device):
$ gort bluetooth connect <address>
Be sure to use the drone in area large and high enough and check that the Keyboard commands work before enabling the mind control features.
The MIT License (MIT)
Copyright (c) 2019 tonnoz
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
documentation files (the "Software"), to deal in the Software without restriction, including without limitation
the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial
portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.