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:

  1. Medical-grade electrodes read analog signals
  2. Instrumentation amplifier boosts signal to a meaingful range, uses the potentiometer mentioned in Step 7 to account for the range in alpha wave amplitude
  3. Run the signal through an ADC
  4. Perform some final cleanup/transformation on the signal before entry into a surge protector (for safety)
  5. 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)?

  • 2
    \$\begingroup\$ It's an Instructable - built on a breadboard. If it works at all it's a miracle... \$\endgroup\$ Feb 16, 2016 at 20:09
  • \$\begingroup\$ @BruceAbbott The instructable actually doesn't look too bad, and I regularly have students build EOG amps on breadboards without issue. \$\endgroup\$ Feb 16, 2016 at 20:17
  • \$\begingroup\$ The signals are small enough that care is needed. You will find DIY circuits to usually have less filtering and gain than commercial units to try and shave costs while medical grade gear is made to be reliable. You just need to pick a price performance point somewhere. All the filtering does serve a purpose and is essential in a electrically noisy environment. Using a battery powered device in a park is not the same as a using a unit in an ICU with battery chargers, diathermy machines, defibrilators, cell phones, fluorecent lights etc \$\endgroup\$
    – KalleMP
    Feb 16, 2016 at 22:10

2 Answers 2


EEG signals are small, ranging from 10s of microvolts to less than a millivolt. If you don't amplify it enough, you won't be able to sample it with appropriate resolution. I'd advise against trying to amplify in one step with an instrumentation amplifier to a level sufficient for acquisition by ADC.

You need to account for electrode offset potentials. As a rule of thumb, I like to allow for about 150mV of offset. If you go much beyond a gain of 20, you're almost guaranteed to saturate your instrumentation amplifier.

The general approach should be modest gain with an instrumentation amp, followed by a bit of high-pass filtering to remove your offset, then some op-amp stages to bring the gain enough to record by ADC. This is, in fact, what's shown in step 2 of the instructable.

As to where to put the ADC and noise concerns -- if the noise is higher frequency than half your sample rate, then you MUST remove it prior to the ADC or it will alias. If the noise isn't aliasing than you can remove it with digital filtering techniques after you sample. That said, it's often better to remove the noise before you amplify it! It might well be bigger than your signal in this case.

  • \$\begingroup\$ Thanks @Scott Seidman (+1) - do you mind explaining your 2nd paragraph a little more? What exactly are these "electrode offset potentials", and why are they affected by gain (especially > 20)? Why would these "saturate" the amp at these levels? Thanks again! \$\endgroup\$
    – smeeb
    Feb 16, 2016 at 20:54
  • 1
    \$\begingroup\$ They are DC voltages that behave just like little batteries. The are not affected by gain -- they are amplified like any other signal. Let's say you have a maximum voltage of 5V that you can output out of your amplifier. If you have 150millivolts of offset on the electrodes, and amplify it by 100, well now the output would be 15 Volts, and you cannot output that voltage so your amp is said to be "saturated" \$\endgroup\$ Feb 16, 2016 at 20:56
  • \$\begingroup\$ The requirement isn't actually that the noise be below half the sample rate, but rather that it be below the difference between the sample rate and the highest frequency of interest. If one samples at 4x the highest frequency of interest, one can digitally remove noise between 1x and 3x the frequency of interest, assuming that it hasn't driven any stages to clipping or caused other such problems). \$\endgroup\$
    – supercat
    Feb 16, 2016 at 22:16
  • \$\begingroup\$ @supercat, good point, but I was just talking about aliasing, without regard to freq of interest, as aliaising might put the noise right where you least want it. \$\endgroup\$ Feb 16, 2016 at 23:15

The reason why it has 60Hz noise is because the sensor is picking up a lot of it and the cable is too. Having a notch filter on each end is not going to be very different from having two on one end of the cable. You are right, it would be better to digitize the signal at source, provided you shield the sensor from the digital signalling. If you can't do that then use a shielded cable.

It would be better to:

  1. Amplify the signal at the source, but you have to run wires for an analog supply and this makes the design more complex, the instructables people are going for DIY simplicity.
  2. Use shielded cable
  3. If the sensor signal isn't swamped with 60Hz, put in the notch filter after the preamp, design to give you the necessary attenuation.
  4. An ADC close to the source can further complicate things since you need data lines.
  5. Once you have your signal amplified and filtered, you need a low pass filter before the ADC to prevent aliasing. If you signal of interest is lower frequency, you can move the filter pole lower to give you some SNR and clean up your signal but this can also be done with digital filtering.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.