This chapter does not appear in the book.
The NeuroSky MindWave headset, modeled by yours truly on the right, is a low-cost electroencephalography (EEG) device (about $100). It sends its brainwave data to a wireless-enabled USB dongle attached to your PC.
This chapter explains how to access the brainwave data in a Java application, including how to display the most relevant information graphically (as below).
I'll also describe how to create and read a brainwave log file.
The MindWave thankfully dispenses with the traditional hair-net of sensors and conductive jelly, instead utilizing a single electrode pressed against your forehead, and reference electrodes attached to your left earlobe via a clip. This makes the device comfortable and easy to use, at the expense of some accuracy.
The headset's ThinkGear chip amplifies the raw brainwave signals, removes noise, and outputs proprietary 'attention' and 'meditation' levels (ranging between 0 and 100) along with eye blink strengths (values in the range 0 to 255). According to NeuroSky, the attention value is an indication of the user’s level of mental focus, while meditation measures mental calmness. A level of around 50 means 'neutral' or average, with 60 – 80 being 'slightly elevated' and 80 – 100 'elevated'. The levels are updated once per second, and blink strength whenever a blink is detected. The chart plots the two levels as lines, and blink strength as bars.
It's possible to access more common EEG frequency data: delta, theta, alpha, beta and gamma brainwaves, which are also updated every second, and to read the raw data coming from the MindWave, at a rate of about 512 packets/second.
Probably the biggest drawback of the MindWave is the typical user's overly optimistic expectations about what it can do. Visions of Yoda-style feats of mental dexterity are rapidly deflated when you actually try out the example applications and games.
A large part of the problem is that there's no obvious direct physical means of affecting the attention and meditation values. For instance, the NeuroSky documentation suggests staring at something to increase attentiveness, and closing your eyes to promote meditation. As you might expect, this form of interaction is a lot less predictable and responsive than simply pressing a key or clicking a mouse button.