This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

ADS1299: Schematic question

Part Number: ADS1299

Hi there,

We've been using the ADS1299 to get some EEG signals but we've not been sucessful. Either because of the electrodes or the hardware configuration, we just seem to be a bit off. Hence, I'd like to get some answers that may point us in the right direction:

1) In the datasheet, you recommend a differential capacitor across the positive input and the negative input of channels and, when a reference is used on SRB1, a differential capacitor between the positive input and the reference, instead of RC filters on every input. With this configuration, the signal we get is simply just noise and there's no EEG, EMG or ECG signal whatsoever. But, when we do change to single RC filters on every input, we can see ECG, EMG but not EEG. The channel outputs are a bit noisy, not as much, but the channels used to read EEG don't actually show anything. So my question is: Using a RC filter on every input and a single ended input, we need a RC filter on every positive input and just one RC filter on SRB1 right ? What about the negative inputs? When we activate SRB1 they should all shunt together, but any resistors or caps on those lines will affect this schematic ?

2) The RC filters on the inputs are antialiasing filters. What should be the cutoff frequency of those filters? And what is the minimum value for the input resistor ?

3) How can we guarantee that the noise on channels are not compromising an EEG signal ? Is there any test we can do ? We have an EEG simulator and we can read (although it is a bit difficult) sine waves with 10uV of amplitude.

4) We can also use the off band lead off detection, but we can't get a clear resistance value when we choose the 6nA option. The values seem to "float" up and down endlessly, although they change quite a bit (from 6MOhm to 110kOhm) when the electrodes are connected. Is this an indication that something might be wrong along the way ?

5) We're using the OpenBCI schematic on the BIAS pins (1MOhm and 1.5nF capacitor on the BIAS OUT pin connected to a protection resistor of 5kOhm and then to the electrode) and, although it reduces alot the noise on the channels, it can't completely remove it. After that, we apply two digital filters: notch filter on 50Hz (-45dB) and a butterworth bandpass (0.1Hz to 80Hz - -10dB). Could these filters be interfering in some way with the results ?

We've been going back and forth with the schematic of the ADS1299 and sometimes it's really easy to capture EMG signals, specially the eye blink. But even then, we get no results when it comes to EEG. We're using dry active electrodes. The circuit of the electrodes has been tested separately by applying the simulator output to them and checking the output of the ADS1299. The electrodes themselves are being used on other commercial applications and work fine. But something in this mixture is not cooking correctly.

I'd appreciate any help from you guys.

Luis

  • Also, two other questions:

    1) Regarding the BIASN setting, when using the SRB1 for the reference, do we need to enable all of the BIASN pins ? Or one is enough ?

    2) We didn't plan on using the SRB1, so there's no footprint for resistors and capacitors on the way from the electrode to the pin. However, on the INN pins, we do have those footprints. Would it be possible to use one negative input "as SRB1" ? Since the SRB1 shorts every negative pin together to the SRB1 signal, would it be possible to take advantage of the internal short to use a negative input pin instead of the SRB1 ?

    Thanks
  • Hello,

    Thanks for your questions. I'll try to cover as many of them as I can, feel free to follow up if necessary:

    1. There is no short answer to this question. Ideally, we want the inputs to each channel to be matched in order to achieve the most common-mode rejection. For this reason, a differential filter is generally recommended over a common-mode filter so as to avoid mismatch between the cutoff frequencies on each input. I would not expect the difference to be so drastic that you either see the signal at the output or you see nothing at all - have you tried using a known signal source first to validate the signal chain? When using SRB1, you will not need an input filter on the INxN pins since they become disconnected internally. You would only use the filter on the SRB1 pin in that case.
    2. The RC filter cutoffs should be chosen to be approximately one decade beyond your digital filter bandwidth. This prevents the filter from rolling off too soon and attenuating your signals of interest.
    3. Generally, what's recommended is that you do an input-short test at the input of your signal chain. For example, wherever your (+) and (-) electrodes connect to your board, short the connections together and tie them to a common-mode voltage (i.e. mid-supply). With this configuration, you can collect some data and analyze the ADC code distribution to gauge the mean and peak-to-peak noise of your signal chain.
    4. Do you mean you're using AC lead-off detection? To understand if your setup is working properly, I would recommend using a fixed resistor value first between your (+) and (-) inputs. Try to get a consistent reading with that before testing with a simulator or patient. Also, keep in mind that the current sources are not very precise (typically 20% tolerance), so relying on the absolute measured impedance will be difficult.
    5. The BIAS amplifier will never perfectly remove the common-mode noise in your system, especially 50Hz / 60Hz power-line noise. Additional filtering in the digital domain is often still required, just like the notch filter you mentioned. If implemented correctly, I don't see how they would negatively impact your results.
    6. From what I know, EEG signals are often much smaller in magnitude, so the impedance of your dry electrodes may prevent you from measuring them properly. You may need an input stage with higher input impedance, or you may try using wet electrodes to reduce the contact impedance. The ADS1299 input impedance is around 500M with lead-off current sources enabled.
    7. If SRB1 is enabled, all channel negative inputs (INxN) will be internally disconnected from their respective pins. The reference signal on SRB1 will then be routed internally to each channel.
    8. Related to #7, you will not be able to connect a reference signal to any negative channel input (i.e. IN2N) and route it directly to SRB1 and all other negative channel inputs. The only similar approach I can see is, if you have an external short between SRB1 and SRB2, you could choose one of your positive channels inputs (i.e. IN2P), route it to SRB2 with CH2SET[3] = 1, and then short SRB2 to SRB1. Then you could route SRB1 to all the other channel INxN inputs. However, Channel 2 would always measure 0 V in that scenario.

    Best Regards,

  • Hi Ryan,

    First of all, thank you for your detailed answer. I have some follow up questions, if you don't mind:

    1) We did use a simulator (http://www.netech.org/Products/details/330-EEG-Simulator_71 ) to test the signal chain, not only the acquisition itself but the filters and FFT. Everything works fine, until the 10uVpp sinewave. This sinewave, whatever the frequency (2, 5 or 60Hz) is really distorted. The 30 and 50uVpp sinewaves are also distorted but you can still tell that it is a sinewave. From your answer, I suppose this means that there isn't anything wrong with the input filters, correct?

    2) The current setup is a 4.99k resistor with a 2.2nF capacitor, which has a 14kHz cutoff frequency. Since we're only interested in the 1-80Hz band, it's more than fine, correct?

    3) This is a test we're going to be doing. The values should match the datasheet right? So, for 24 Gain and 1kS/s we should have 1.97uVpp of noise right? (Table 4 of the datasheet).

    4) We're trying to use the AC lead-off detection, however when we use the 6nA range the output floats around too much. What we're doing is to apply a FFT to the signal prior to the filters and then sum the PSD of the bins around 250 Hz (we're using 1kS/s). Interestingly enough, the bin with the highest value is always 256 and not 250 as it would be expected (this verifies for every current range we select). We then divide the result by the known current and get an impedance value. At 24uA, we can calculate really nicely the value of the fixed resistors, but we cannot go too high (it's really hard to distinguish 100k from 1M). When we use the 6nA range, the value keeps floating up and down. We do, however, notice when the resistor is added to the circuit, we just can't determine it's value. Do you have any advice on this? If not, we'll just use the 24uA current range for an initial setup and when all leads present reasonable values, we'll turn off the AC lead-off detection and move on to capturing EEG.

    5) "Correcly" might be the keyword here. What is considered as correct ? We didn't even consider the phase output of the filters, is it important?

    6) The dry electrodes are working with an active circuit, which is basically an opamp in a following circuit with a really high input impedance. This circuit has been validated as well with the simulator. But, the EMG signals are being captured with passive electrodes, the same ones that Bitalino uses. The only way to make sure the electrodes have a good enough contact is by measuring the impedance right?

    7) and 8) We should have been capable of figuring this out, but thank you for clarifying it. So a single filter on SRB1 should be enough. It's interesting though, sometimes we can't measure anything when we use the SRB1 pin, don't know why.

    Bottom line, we do have to measure the noise. Do you have a figure of noise that would actually be enough to overcome the EEG signal ? We're trying to measure alpha waves, which are the strongest we can measure to validate the circuitry, but still we haven't measured anything. Could it be a noise problem or an electrode problem?

    Thanks,

    Luis

  • Hi Luis,

    1. I suppose the distortion you are mentioning is simply the noise? Can you measure the ADC inputs with a scope and average multiple acquisitions to verify the sine wave is coming in correctly? If yes, then the ADC output is simply being affected by the noise in the system.
    2. Yes, I agree that 14kHz low-pass filter may be sufficient. You could stand to reduce the cutoff even further, say 1.4kHz. The ADC modulator is sampling at fMOD = 1.024MHz. Figure 31 shows that the digital filter response repeats at multiples of fMOD. Noise in this range will alias back into the passband of the filter. A single pole RC filter at 14kHz will almost reach -40dB at fMOD. Moving the cutoff to 1.4kHz will increase the attenuation of out-of-band noise to almost -60dB. The improvement in SNR may be marginal, but I just wanted to point out that effect as well.
    3. I would not expect the results to match the datasheet specs exactly, but they should be relatively close. Keep in mind that you will introduce additional environmental noise and thermal noise from your filter resistors and cables.
    4. You might try taking a higher number of 2^n points for your FFT. This would make your bin size smaller and more likely to center your fundamental around the correct bin. Either way, including the PSD in a few bins left/right of the fundamental should avoid any miscalculations. Have you tried the 6uA range with any success? Whether or not you continuously monitor the lead connection status is up to you, but I do not see any issue with disabling it while you take your measurements and checking only periodically.
    5. I was referring more to the common-mode signal derivation, using the BIAS_SENSx switches. These switches tie the respective PGAxP and PGAxN outputs to the inverting input of the BIAS amplifier to derive the average common-mode signal as seen on the measurement electrodes. See Figure 72 for an example. Some customers forget to sense ANY of the electrode common-mode voltage, so they end up driving a pure DC voltage on BIASOUT. Which electrodes you choose to sense is up to you, but notice that the gain of the BIAS output will be set by [ Rf / (220 || 220k || ... ) ].
    6. Understood. I have heard of other types of active electrodes (i.e. Plessey sensors) that customers use to boost the signal right at the source and present a high input impedance. To determine the contact quality of passive electrodes, measuring the impedance of the lead is the way to go.
    7. I don't have a straightforward noise target to give you. This should be calculated based on the required dynamic range of the system (i.e. the ratio of largest and smallest measured signals). I don't know what the expected amplitude of alpha waves is or how much it varies depending on the measurement location. However, higher electrodes impedances are going to attenuate your input signals, so your dynamic range requirement may be larger than you think. Sorry that I cannot give you a more definitive answer.

    Best Regards,

  • Hi Ryan,

    1) Yes, the distortion I'm talking about is noise. It looks like there are two sine waves on top of each other. Maybe, and most probably, it's the 50Hz noise comming in that ends up distorting the signal. I'll get you a screenshot tomorrow. Unfortunately, we don't have a scope that can measure in the uV range. To check the output of the simulator we'd have to make a circuit with some gain in order to feed it to the oscilloscope.

    2) We'll make the necessary adjustments, if necessary.

    3) I know that we won't get the minimum noise pointed out on the datasheet, but if we get like 50+ uV noise then it's no good, correct?

    4) The 6uA range works as well, but it's still a bit hard to determine the value of the resistance when it's a high value. The 24nA and the 6nA ranges are the ones that float alot, although if you wait like 5 minutes it looks like the values reach a cap and then it's relatively stable after that. What we read was that the only range that you could work with was the 6nA range because it doesn't swamp the EEG signal, correct ?

    5) That's another question that I had. Regarding the BIAS_SENSN, when using the SRB1, do we connect every negative input to the BIAS sense or is one enough ? And if we short every N input together, do we need just one low pass filter that connects to an electrode ? What do we use on the BIAS sense then ? I'm assuming that for these two scenarios, all the positive inputs are connected to the bias sense.

    6) Maybe adding some gain to the electrode itself wouldn't be that bad, but it would amplify the noise as well. Are there any low noise amplifiers for uV signals that could be used in this scenario ? Something like the frontend of the ADS1299 ?

    Thank you for your time,

    Luis