Detection of alpha waves with ADS1299EEGFE-PDK

I send the data I measured with ADS1299EEGFE-PDK to Arduino UNO. My electrode placement is 1N:O2 , reference:ear. I want to see alpha waves and for that I need to enable filtering. I don't know how to do this in the Arduino library. Can anyone help?

Comments

  • See for example https://github.com/mozanunal/SimpleDSP
    You need to check, first, that the data as received by your Arduino is in a format that something such as the DSP library above can use.

  • ugrcnknbrugrcnknbr Turkey

    Either I misunderstood you or I misrepresented myself. Sorry, I don't know much about this stuff yet. But from what I've read I can get alpha waves with LOFF registers. I looked at the datasheet but couldn't understand it.

  • wjcroftwjcroft Mount Shasta, CA

    Bill, thanks.

    Ugurcan, hi.

    Here is an example of how eyes closed alpha looks in the FFT,

    https://docs.openbci.com/docs/01GettingStarted/02-Biosensing-Setups/EEGSetup#4-alpha-brain-waves-eeg

    William

  • ugrcnknbrugrcnknbr Turkey

    I want to design a system in which I want to light the led while my eyes are closed. It also has to be continuous. Would it be useful to apply fft to the signal for this?

  • wjcroftwjcroft Mount Shasta, CA

    You could either use FFT, or just a simple bandpass filter from 8 to 12 Hz, which covers the 10 Hz, average peak for individuals.

    https://www.google.com/search?q=arduino+dsp+library

    The Arduino uno, is generally considered a rather underpowered microcontroller these days. Compared to ESP32, Raspberry, etc.

    https://hmbd.wordpress.com/2016/08/24/speed-comparisons-for-arduino-unonano-and-due/

  • ugrcnknbr,

    Are you using a computer to program the Arduino? If so, I would compile and test a C program using a C DSP library on the computer that does what you want, then port the program to the Arduino using an Arduino C DSP library, hopefully one with similar DSP related filter functions. That way you can make sure you are handling the data from the ADS1299EEGFE properly before adding another device layer of complexity.

    I suggested C because I am sure that compiler exists for the Arduino, but anything you can compile for the Arduino would also be fine.

  • ugrcnknbrugrcnknbr Turkey

    Hi Bill,
    I would be very happy if you could help.

  • To help I would need to know where you are with your setup.

    The ADS1299EEGFE-PDK comes with Windows software that can show an oscilloscope and lets you do FFT. Do you have that installed and getting signals from your hardware?

  • ugrcnknbrugrcnknbr Turkey

    Hi Bill,
    Yes I can receive the signal. I can observe the signal on the serial plotter screen of Arduino.

  • wjcroftwjcroft Mount Shasta, CA

    Curious how the ADS1299EEGFE-PDK is connected to the Arduino. Since this dev kit is normally used with TI's supplied Windows software through a USB interface. I'm not even clear that they provide the protocol / interface library to allow writing your own programs on Windows. The kit is mostly intended as a demo of the ADS1299 hardware, not as a complete EEG solution for end users. It's targeted at EEG system hardware engineers, building new products incorporating the ADS1299.

    https://www.ti.com/tool/ADS1299EEGFE-PDK

    William

  • @ugrcnknbr said:
    Hi Bill,
    Yes I can receive the signal. I can observe the signal on the serial plotter screen of Arduino.

    Okay, now can you grab a small segment, say 2 seconds of the signal and save it to a C array, then find the minimum, maximum, and mean of that array and display those numbers?

  • William ,that link is interesting. Page 30 of the PDF manual shows an FFT screen where the user range can be set! This means that if the user sets a range of between 8 Hz and 12 Hz the PDK will display in its FFT app what OP wants.

    @wjcroft said:
    Curious how the ADS1299EEGFE-PDK is connected to the Arduino. Since this dev kit is normally used with TI's supplied Windows software through a USB interface. I'm not even clear that they provide the protocol / interface library to allow writing your own programs on Windows. The kit is mostly intended as a demo of the ADS1299 hardware, not as a complete EEG solution for end users. It's targeted at EEG system hardware engineers, building new products incorporating the ADS1299.

    https://www.ti.com/tool/ADS1299EEGFE-PDK

    William

  • wjcroftwjcroft Mount Shasta, CA

    Bill, thanks.

    Yes the dev kit is really intended for use by TI's supplied Windows app. I have noted in the past that the kit consists of TWO boards, a main board with the usb interface, and a smaller daughter board that plugs into the main board. This daughter board has just the ADS1299 and some passive components (front end RC filters and such).

    It's possible that Ugurcan has just removed the daughter board from the kit, and connected that alone to his Arduino. Thus he essentially loses access to the usb and Windows app. But does gain complete flexibility in how he programs his Arduino DSP.

    Regards, William

  • edited June 9

    If he is trying to do all the interface and DSP within the Arduino I have not done this doubt I could be of much help. It looks as if it has been tried before though: see https://github.com/starcat-io/hackeeg-driver-arduino

  • ugrcnknbrugrcnknbr Turkey

    Hi wjcroft,
    I did not uninstall ADS1299 from MMB0. When power is applied to the MMB0 board, power is also generated in the ADS1299. I looked at the datasheet for serial communication. Then I connected all the pins correctly. There is no problem with serial communication. I put on the electrodes and got the signal from the ADS1299 and I see this signal on the Arduino Serial Plotter screen. My problem is this signal is complex. I need a filter that outputs an 8-13 Hz signal.

Sign In or Register to comment.