Collecting EOG signal with ArmBrain [updated]

on Friday, June 6, 2014
As I said in my previous post, the next step after collecting ECG signal is EOG signal (eye movement signal to put it simple). It's in the milivolt range. It's good to know the EOG signal form before moving in to EEG signal because EEG signal will include EOG signal artifacts. On the other hands, my friend used EOG signals to control a wheel chair. She collected EOG signals by the Biosemi Active Two EUR 75,000 beast. My professor encouraged me to replace the Biosemi in that application with a low cost EEG/EOG recording device.

I haven't found a standard for EOG electrode placement as EEG. It's a large signal (1mV p-p from my measurement); it should be easy to collect anyway. I decided to follow the set up from EEG hacker to compare results with Chip's trial.  Hardware and electrodes were the same as the last post. Below is the adapter from DIN 1.5mm touch-proof connector to regular breadboard jumper wire.

Gold cup EEG electrode adapter
Gold cup EEG electrode secured by bandage. The reference electrode is on the right.

I started with the eye blink artifact. I looked forward and blinked every 5s. The signal is very clear, strong and significant. We can use this signal for some simple computer interfaces such as playing a shooting game, sending a confirmation command of for a BCI application.
Eye blink test
Later I ran fft for the signal than I knew the trouble maker. It was the 50 Hz noise spike from the electricity system.

I applied a notch filter on top of the original high pass filter. The result is amazing! It's very sharp signal.

For the next trial, I looked forward for 10s and looked down for 5s. I designed two different intervals so I could easily differentiate two states. I may add another marking channel to ArmBrain board which takes a button input as a marker for a new state.

The result is sufficient for classifying the two states. The mean of forward state signal is higher than 0 baseline and the down state is well below the 0 baseline. I notice that the noise level for this trial is higher than the previous one. It's about 0.5mV p-p compares to 0.3mVp-p of the former data set. Also, I wonder if those spikes in the looking forward portion belongs to eye blink artifact. I may record videos for my trials to match with the result later.

Look Down Test

I retried again with a looking forward and up combination. I still got an acceptable graph. A distinct gap presents between the baseline of two states though the signal is not stable as last trial. The baseline drifted and, noise level increased.
Look up test

I call this a successful measuring session. I got satisfactory results. I have never known about EOG before. I want to thanks Chip from EEGhacker for his detail documentation. 

Next step: - try different setups to track eyeball movement like the sample below from BIOPAC.
- measuring EOG by EEG electrode location
- build a blink detection system for some fun applications

BIOPACK XY tracking

ECG signal from a simulator

on Thursday, June 5, 2014
Today I get the Phantom 320  ECG signal simulator from my lab. I will use it to test my hardware which called ArmBrain from now (Arm stands for the ARM micro controller; Later, if ArmBrain is used for BCI application, Arm also stands for users' hand).
ArmBrain Kit (TI daughter card is on the left; STM32F4 Discovery is on the right; The red board is the FTDI board)
ECG signal simulator
My setup: Left Arm(LA) and Right Arm(RA) signals from the simulator are connected to differential inputs of ADS1299 Channel 1. The Right Leg reference signal is connected to Bias electrode of the ADS board. Below are the graphs of data which I collected.

ECG signal from simulator collected by ArmBrain (3 wires set up)
I unplug the RL reference signal to test the output voltage graph without reference. It's noticeably noisier.

ECG signal from simulator collected by ArmBrain (2 wires set up - no reference)
The ECG signal simulator is a good tool to study and test bio-signal circuit.  I'm lucky to have it with me. If you don't have it, you can build one with Arduino kit.