Search

C World

Conor's Blog/Portfolio

Category

Major Studio

Preliminary EEG Research (and Brain Cap v1.0)

Introduction

This posts details my first attempt at building a Brain Computer Interface (BCI), as well as, some of the research I did along the way.  There are a number of methods of retrieving neurofeedback from the brain, but Electroencephalography (EEG) is the least invasive of the known methods.  Other methods, despite producing cleaner and more localized data, require probing into the brain which is a dangerous and expensive process, requiring the assistance of a highly trained professional.  For this reason, EEG is at the forefront of commercial BCIs.  Some avante garde  applications of commercial EEG products include revolutionized gaming interaction, health and physical-state monitors, and abstract augmentation of of art and music.

The Big Players

Currently there are a few companies who are pioneering the field of commercial EEG technology.  The two biggest players that I have come across are Neurosky and Emotiv.  These two companies, though obvious competitors, use different styles of retrieving EEG feedback.  Neurosky’s primary and most recent commercial headset, the Mindwave, focuses on neurofeedback via a single dry electrode that makes contact with the middle of it’s user’s forehead.  In contrast, Emotiv’s main product, the EPOC (also a headset), uses 14 saline (wet) electrodes and provides a spatial resolution of the EEG data.  It does this by following the Internation 10-20 Stystem, which is the medical standard for EEG electrode placement when working with multiple electrodes.  While Neurosky offers only a single electrode for raw data extraction, it comes at a much more reasonable price of ~$100 compared to Emotiv’s Developer Package, which costs ~$500.  Regardless, if you intend to leverage either one of these products for personal business development, it’s going to cost a lot more than that.

In addition to these two companies, there is an initiative known as The OpenEEG Project.  This website is a collection of open-source knowledge provided by people who have done extensive work with EEG technology.  The website details different methods of hardware and software design and also provides links to external related websites.  It is a great resource for anybody who doesn’t want to spend exorbitant amount of money on commercial EEG products but is also trying to figure out EEG from the ground up.

What I Did

To start, I got my hands on the Mattel Mindflex, an early Neurosky-licensed product.  The Mindflex uses neurofeedback from the Neurosky chip to control a fan which adjusts the height of a ball up and down, simulating telekinesis and turning it into a game.  After acquiring one of these cool little devices I found the following tutorial (How to Hack Toy EEGs) done by some guys at NYU’s ITP program, which shows exactly how to hack apart the Mindflex.  The post is very well organized and has links to a fascinating data visualization done with processing.  The guys were even nice enough to include the necessary libraries to run it yourself.

After I got everything that the guys from ITP had done working, I decided to take it a step further by designing a similar apparatus, but one that could be worn without having to be connected to the computer via USB.  My intention was to design something that I could wear over the course of an extended period of time that would passively record my brain data while I was thinking about other things.

What resulted was a baseball cap rigged with the Mindflex/Neurosky EEG device, an Arduino that routed the data onto a microSD breakout (the same memory device used by most digital cameras) in the form of a .TXT file, and some other buttons and electronic parts to control the start and stop of the system.  With the device, I was successfully able to retrieve hours of my own EEG data and analyze it in Microsoft Excel after the fact.  Because the data from the Neurosky is sent in packets at a rate of 1 ASCII string per second I was able to time stamp the data relatively easily and then able to graph my brain function over time.

Check out the link below for a more thorough description of the design, testing, and analysis of my device.  Be wary that it was written at ~6am after pulling an all-nighter so I apologize in advance for the parts that don’t make much sense:  My First BCI (EEG Brain Cap).

My Very Own EEG

Orbitorbs v2.1 – Solar System Simulator

Project Summary

This project is an extension of Orbitorbs v1.0.  I translated the code that I wrote in processing into Openframeworks, a C++ based programming language.  I added additional features that enabled more user control over the planetary system including:

  • The ability to pause the solar system simulation and edit planet parameters
  • A more intuitive interaction for editing planet parameters
  • The ability to turn on and off a function that links the computer microphone volume input to the strength of the gravitational constant dictating the force between the planets (activate by pressing the ‘e’ key and deactivate by pressing the ‘s’ key). The higher the volume, the higher the g-constant (directly proportional).

The algorithm uses 2-dimensional matrices to store the x and y parameters of the various planets and it implements Newton’s Law of Universal Gravitation:

newton

This project has the potential to be adapted into a new type of learning tool, allowing for a more fun and interactive method for teaching basic principles of physics including angular acceleration, gravitation, ideas of mass and density, and more.

Orbitorbs v2.1 (openframeworks) from Conor Russomanno on Vimeo.

The Code

If you want to play with this application or examine the code, please feel free to grab it from my github.

Blog at WordPress.com.

Up ↑