We wanted to explore the growing functionality of EEG headsets. While most EEG headset applications focus solely on mental well being, we wanted to incorporate EEG into a fun interactive game involving both the mind and body.

How it works

The game consists of three components-- an EEG headset, a robotic wrestling arm and an Android app. The player with the EEG headset attempts to focus as hard as s/he can on a physical action like pushing. We extract the percentage focus from the EEG headset and map it to a torque value. The robotic arm actuates against the force of the opponent's arm. The game ends when either the robotic arm or the opponent's arm touches ground.

1) EEG processing

We use the Muse EEG headset to collect brain activity, specifically the relative values of the brainwaves (alpha, beta, gamma and theta). We use LibMuse on Android to connect to the headset and process the data. We then compute the percentage focus using a trained neural net. We collected many EEG samples of a teammate focusing on one object and also meditating/relaxing. Using the Encog Java library, we train a neural net with the goal of classifying an input into either focus or meditation. Once the neural network is trained on a developing machine, we serialize the object. We use this object in the Android app to classify a moving window of EEG signals. By averaging out several samples, we are able to effectively compute the torque value the robotic arm needs to apply force with.

2) Robotic Arm

The robotic arm is made with Vex components; a DC motor spins at a rate opposite to the opponent's arm. Using gear-reduction, we increase torque as much as possible to mimic human arm-wrestling. The motor is controlled by a microcontroller (Atmega32u4+nrf8001) through a motor driver; it only activates when a button on its arm is pressed by an opposing hand. The microcontroller in turn receives a control value from an Android app.

3) Android App

The Android app simultaneously communicates with the Muse headset and the robotic arm's microcontroller. It uses the neural net we designed to convert the real-time EEG data to a torque value. Using Bluetooth Low Energy, it then sends the value over to the robotic arm.

Namecheap domain name:

Built With

Share this project: