The Experimenter Application

The Emotiv Experimenter application enables researchers to configure and run simple experiments while collecting EEG data using the Emotiv EPOC headset. Unlike most experimental setups, though, Experimenter also contains features for processing and classifying the data it records online, allowing for exploration of Emotiv's brain-computer interface capabilities while also improving the subject's experience.

Using the Application

To begin using Experimenter, you need to install the Emotiv Research SDK which is available from the Emotiv website. Next, make sure that you have the Microsoft .NET Framework 4.0 or higher installed on your PC (newer PCs may have this installed already). Then, download ExperimenterBinaries.zip, which contains Experimenter executable file among other things. Unzip the archive, and copy edk.dll, edk_utils.dll, and DotNetEmotivSDK.dll from C:\Program Files\Emotiv Development Kit (or wherever you installed the Emotiv SDK) to the unzipped folder containing Experimenter.exe. At this point, double-clicking Experimenter.exe should launch the application. For information on using the application, read the sections of my report which describe the application's features as well as the appendix which provides a visual tour of Experimenter.

Working with the Code

If you are interested in working with the Experimenter source code, I highly recommend getting access to a copy of Microsoft Visual Studio 2010. The express C# edition is free and should be suitable for most purposes. Follow the directions above, except download Experimenter.zip instead of the binaries archive (place the Emotiv dlls in GUI/bin/Debug and Testing/bin/Debug). Then, open Emotiv.sln to view the solution using Visual Studio. There are several sources of documentation for Experimenter. The software design section of my report contains a high-level description of how various application features are implemented, while an appendix details how the code base is organized into projects and namespaces. Finally, the Doxygen-generated html documentation provides detail on specific classes, interfaces, and public methods.

Open Source License

Experimenter is made available under the permissive Code Project Open Source License. This makes the application binaries and source code free for use and modification in both commercial and non-commercial projects. Please note the license disclaimer:

THIS WORK IS PROVIDED "AS IS", "WHERE IS" AND "AS AVAILABLE", WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES OR CONDITIONS OR GUARANTEES. YOU, THE USER, ASSUME ALL RISK IN ITS USE, INCLUDING COPYRIGHT INFRINGEMENT, PATENT INFRINGEMENT, SUITABILITY, ETC. AUTHOR EXPRESSLY DISCLAIMS ALL EXPRESS, IMPLIED OR STATUTORY WARRANTIES OR CONDITIONS, INCLUDING WITHOUT LIMITATION, WARRANTIES OR CONDITIONS OF MERCHANTABILITY, MERCHANTABLE QUALITY OR FITNESS FOR A PARTICULAR PURPOSE, OR ANY WARRANTY OF TITLE OR NON-INFRINGEMENT, OR THAT THE WORK (OR ANY PORTION THEREOF) IS CORRECT, USEFUL, BUG-FREE OR FREE OF VIRUSES. YOU MUST PASS THIS DISCLAIMER ON WHENEVER YOU DISTRIBUTE THE WORK OR DERIVATIVE WORKS.

A Note on Timing

Experimenter does not provide millisecond-accurate timing when displaying stimuli. This may limit its use for some experiments. To learn more about timing in Experimenter, please see my report.