Please note: Although this question involves EEG, I don't expect anyone here to be knowledgeable in this area! This is a simple electronics question!
I'm trying to understand the circuitry devised in this DIY EEG Instructable. One thing that is troublesome to me is the amount of correction done at each component/module/step (and even within certain components):
- Two 60Hz notch filters one at each "end" of the circuit, to reduce noise at a particular frequency (do we really need two?!?)
- High pass filter for circumventing galvanic skin response
- Low pass filter for waves > 30Hz
- Yet another high pass filter
- Op-Amp
Now it has occurred to me that this is indeed an analog circuit (brain waves generating the initial AC voltage) feeding into 3.5mm headphone cables and then the PC sound card for digitization. To me, it makes sense to digitize the signal upfront via ADC. If I were refactoring this circuit, I might have it look something like:
- Medical-grade electrodes read analog signals
- Instrumentation amplifier boosts signal to a meaingful range, uses the potentiometer mentioned in Step 7 to account for the range in alpha wave amplitude
- Run the signal through an ADC
- Perform some final cleanup/transformation on the signal before entry into a surge protector (for safety)
- Surge protector feeds signal into the laptop
Although I am interested in the community's general thoughts on signal transformation before/after the ADC, as well as on the surge protector (and I supposed 'bonus points' to anyone with actual EEG/medical system experience here), but my main concern here is with the ADC; specifically:
Where does it make the most sense to place the ADC, and would the use of an ADC reduce the need for all these signal filters/corrections listed above (and if so, how)?
Continuing with this "ADC-as-a-solution to redundant corrections"-premise, the author states in one of his last stages/steps:
Even with all the previous filtering stages, the data will still at this point contain a good amount of 60 Hz noise...The final data will still have a small amount of noise, but that can be ignored through software once the data is loaded into the computer
...but if we digitize the signal before it gets to the computer, can't we just let software do all the correction/cleanup for us (I'm a software engineer; that prospect makes me happy)?