Editing Analog EEG Amp

Jump to navigation Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.

Latest revision Your text
Line 1: Line 1:
[[Image:Analog EEG Amp.jpg|thumb|right|300px|The analog EEG amp.]]
[[Image:Analog EEG Amp.jpg|thumb|right|300px|The analog EEG amp.]]
This analog EEG amplifier was donated to Noisebridge a couple of years ago. It is a medical-grade amp, probably used for clinical monitoring purposes. Since we've currently only tested the output by looking at noise through the fairly rudimentary electrodes shown, we don't have a good idea, at present, of the signal quality, but it should be in reasonably good shape. Electrodes die quickly in EEG and amps usually live substantially longer, but it's definitely possible that some of the channels will have artifacts or noise issues. Probably it will still amplify EEG signal sufficiently well to serve as an actuator for other projects.  
This analog EEG amplifier was donated to Noisebridge a couple of years ago. It is a medical-grade amp, probably used for clinical monitoring purposes. Since we've currently only tested the output by looking at noise through the fairly rudimentary electrodes shown, we don't have a good idea, at present, of the signal quality, but it should be in reasonably good shape. Electrodes die quickly in EEG and amps usually live substantially longer, but it's definitely possible that some of the channels will have artifacts or noise issues. Probably it will still amplify EEG signal sufficiently well to serve as an actuator for other projects.  
Post to the [https://www.noisebridge.net/mailman/listinfo/neuro neuro mailing list] if you want to get involved.


==Goals and Milestones==
==Goals and Milestones==
Line 11: Line 9:
#*Check high and low pass filters
#*Check high and low pass filters
#*Connect a human with properly gelled electrodes and check to make sure blink artifacts are clearly visible in the amp signal.
#*Connect a human with properly gelled electrodes and check to make sure blink artifacts are clearly visible in the amp signal.
#**We could do this with the single metal electrodes you see in the amp image. They are attached directly to bare skin with medical tape and can be filled with electrode gel using a [http://www.google.com/search?&q=blunt+syringe blunt syringe]. We have some at Noisebridge, I will check the diameter and make sure that's written here so we can easily buy more. --[[User:Hurtstotouchfire|Hurtstotouchfire]] 02:51, 12 May 2012 (UTC)
#*Connect a human with properly gelled electrodes and check to make sure basic EEG signal comes through.  
#*Connect a human with properly gelled electrodes and check to make sure basic EEG signal comes through.  
#**This can in theory be done with the single metal electrodes if used on the forehead.
#**It would be best to test this with [http://www.electrodesales.com/cap100c.html the cap].
#**[http://en.wikipedia.org/wiki/Alpha_wave Alpha power] would be a good first test
#**[http://en.wikipedia.org/wiki/Alpha_wave Alpha power] would be a good first test
#**We could also test the photic stimulator and do some [http://en.wikipedia.org/wiki/SSVEP SSVEP]. I will try to remember to photograph the photic stimulator and add it to this page. --[[User:Hurtstotouchfire|Hurtstotouchfire]] 02:51, 12 May 2012 (UTC)
#**We could also test the photic stimulator and do some [http://en.wikipedia.org/wiki/SSVEP SSVEP].
#Build and program a microcontroller that correctly interprets and digitizes the analog signal output.
#Build and program a microcontroller that correctly interprets and digitizes the analog signal output.
#*The analog signal consists of both positive and negative voltages and we need both.
#*The analog signal consists of both positive and negative voltages and we need both.
Line 23: Line 18:
#*I have been told this will require oscillators. Any specific proposals? --[[User:Hurtstotouchfire|Hurtstotouchfire]] 01:48, 12 May 2012 (UTC)
#*I have been told this will require oscillators. Any specific proposals? --[[User:Hurtstotouchfire|Hurtstotouchfire]] 01:48, 12 May 2012 (UTC)
#Pipe digital signal into real time EEG software.
#Pipe digital signal into real time EEG software.
#*Suggestions for software below. Must run on linux.
#*Suggestions for software? Must run on linux.
 
==Volunteer your brain==
We have a pretty decent [http://www.electrodesales.com/cap100c.html passive 19 channel cap] but unfortunately we bought a size small, so we should start taking a roll call on head circumferences. We need =<54 cm and preferably short hair (washing out electrode gel is not exactly fun).
*55cm, long hair. --[[User:Hurtstotouchfire|Hurtstotouchfire]]
 
==EEG Analysis & Processing==
We can pull some ideas for this from the [[OpenEEG]] page.
 
==ADC Conversion==
Currently we have slapped an arduino on there and we're just sampling from the analog pins.  [https://www.dropbox.com/sh/c6qnar0cp08037h/FXpIgCWwqN/nb_eeg_amp Here's a Dropbox folder] with the code and CSVs of time-stamped output values. I started setting up a [github repo] but I'm not using it yet. Soon I swear.
 
Here's the current code (AnalogRead2 sketch in the dropbox folder):
 
void setup()
{
Serial.begin(9600);
}
void loop()
{
  unsigned long micro = micros();
  int zero = analogRead(0);
  int one = analogRead(1);
  int two = analogRead(2);
  String res = String(micro) + ",0," + String(zero) + "," + String(one) + ","+ String(two) + ",";
  Serial.println(res);
  delay(1);
}
 
And sample output:
 
40704624,0,0,0,0,
40724928,0,51,113,90,
40749472,0,0,42,7,
40770836,0,0,0,5,
40791128,0,59,114,85,
40815672,0,0,46,10,
40838080,0,0,0,0,
40858376,0,51,105,106,
40883972,0,0,0,12,
40905328,0,0,0,12,
...
 
I have graphed raw output (no timestamps) in the past and plotted it and it looked like the absolute value of a sine wave (we're looking for the 60hz [http://en.wikipedia.org/wiki/Utility_frequency line noise] as a basic test) but now that I'm trying it again it looks more like the negative values are getting zeroed. I will parse and plot the timestamped data soon and post the results of that. --[[User:Hurtstotouchfire|Hurtstotouchfire]] 02:51, 12 May 2012 (UTC)
 
==Hack Log==
===Priors===
Kurtis, Jake and I have spent some time with an arduino, sampling from the analog pins and outputting to CSV. The results of that are above, under ADC Conversion.
 
===10 May 2012, Kelly & Nima===
We hooked up the amp to an oscilloscope and just tried plugging in a couple electrodes and grounding and ungrounding them. We were able to get a nice line noise signal and verify that the signal multipliers do ''something''. I was not impressed by the analog filters, though we forgot to test the 35 low pass when we had that nice sine wave going, and when we tested it the signal was much noisier. It is normal to get enormous noise and signal drift when you just have an electrode that you're waving around. The strongest signal at that point is line noise. I tried putting the electrode next to my eye ungelled but either it needs the gel or the oscilloscope is just bad at rendering low-frequency voltage shifts because we didn't see any obvious evidence of the [http://en.wikipedia.org/wiki/Electroencephalography#Biological_artifacts blink dipole]. Maybe Nima can add if he got anything done after I left. --[[User:Hurtstotouchfire|Hurtstotouchfire]] 02:58, 12 May 2012 (UTC)
 
<gallery widths=400px heights=280px>
File:EEG Amp and Nima.jpg | Nima adjusting the EEG amp, with an oscilloscope to render the output.
File:EEG Amp osc line noise.jpg | Nice sinusoidal line noise, well-amplified.
</gallery>
 
[[Category: Neuro]]
Please note that all contributions to Noisebridge are considered to be released under the Creative Commons Attribution-NonCommercial-ShareAlike (see Noisebridge:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To protect the wiki against automated edit spam, we kindly ask you to solve the following CAPTCHA:

Cancel Editing help (opens in new window)