Brainwaves and Eye-blinks Drive a Truck
Introduction: Brainwaves and Eye-blinks Drive a Truck
Would you like to control things with your mind? This instructable describes how to drive a remote-control truck using brainwaves. The headset senses my brainwaves and transmits them to a small computer. When I increase my attention level or blink my eyes, the computer converts the signals and passes them to the truck’s remote control, which I have connected to the computer. When I concentrate, the wheels spin. 0ne strong eye-blink does a left turn. A strong double-blink does a right turn.
The headset is a NeuroSky MindWave Mobile 2, the computer is an Arduino Uno microcontroller, and the Bluetooth module is an HC-05.
Practical Applications
Some developers have applied these ideas to help people who are paralyzed; for example, driving a wheelchair, home automation, or selecting letters and words on a screen in order to communicate on the screen or by voice. Their projects may be found on YouTube.
Main Steps in the Project
There are 5 main steps in this project:
1. Wire the HC-05 to the Arduino, configure it, and pair it with the MindWave.
2. Connect the servo to the remote control.
3. Wire the Arduino.
4. The Arduino sketch (the code).
5. Upload the Arduino sketch and use it.
If you’re not familiar with these devices, the following links may be useful:
Getting started with Arduino: https://www.arduino.cc/en/Guide
https://www.instructables.com/A-Beginners-Guide-to-Arduino/
Online Arduino class: https://www.instructables.com/Arduino-Class/
NeuroSky’s website: https://store.neurosky.com/pages/mindwave
http://developer.neurosky.com/docs/doku.php?id=start
Differences between the 4 models of MindWave: http://support.neurosky.com/kb/mindwave-mobile-2/whats-the-difference-between-mwm2-mwm-and-original-mwm
NeuroSky’s Arduino project (it uses a BlueSMiRF Blluetooth module instead of the HC-05 I used. The sample code (which runs on an Arduino) should work okay regardless of the type of Bluetooth module.):
http://developer.neurosky.com/docs/doku.php?id=mindwave_mobile_and_arduino
Ways of Controlling a Robot Vehicle
Before starting my project, I searched the Internet for NeuroSky projects in order to find out which brainwave signals the developers chose to use. 141
Many projects used only the Attention and Meditation levels, and a few also used eye-blinking. For my project I decided to use the Attention level to control driving forward and stopping, and single blinks to go left or double blinks to go right.
There was one project with a very different method: When the user blinks, the software begins cycling thru forward, reverse, left, right for 2 seconds each. If the user does a double blink, the vehicle goes in whatever direction the cycle was in, at that instant. This method provides a lot of flexibility, but could be slow. Foe example, if the user turned right, they would not be able to turn left for about 6 seconds,
Methods of Connecting the NeuroSky MindWave Mobile 2 to an Arduino
Some developers connected their NeuroSky MindWave Mobile directly to an Arduino board via Bluetooth, which is what I decided to do. This method is easier than the next one (described below), but the eye-blinks take a little longer to be detected (slightly more than 1 second). This is okay for my project.
Other developers went thru a computer or smartphone for real-time pre-processing of the signals before sending data to an Arduino. This allows for more complex analysis or processing, and the eye-blinks can be detected faster (about half a second). NeuroSky has tutorials about this method for PC Windows, Apple Mac OSX, Android, and IOS at this website: http://mindwavemobileplus.neurosky.com/tutorial/ I decided to not use this method because it would involve having to learn how to program the software on the computer or smartphone.
Maximizing the Attention Level
Ways to maximize the Attention level vary for different people. Here are some suggestions:
1. Concentrate on an object.
2. Carefully read the list of ingredients on a food container.
3. Memorize some nutrition facts on a food container.
4. Count backwards from 100 by sixes or sevens.
5. 288