How to use a raspberry pi to receive and process real-time EEG?
Hi there,
I am new to OpenBCI. I want to build a BCI by myself.
I want to use OpenBCI hardware to collect real-time EEG, and then send it to a raspberry pi 4+.
The raspberry is used to process the signals and send control signals.
So, my question is, how to use a raspberry pi to receive and process real-time EEG?
Any materials available?
Thx;)
Comments
Oeek, hi.
Both Cyton and Ganglion OpenBCI boards, use a usb serial port 'dongle' that plugs into the Raspberry. From there you can use the 'BrainFlow' library to receive EEG data in a variety of programming languages.
https://brainflow.readthedocs.io/en/stable/
Using BrainFlow on the Raspberry, requires that you compile it from the source code that you can download to the Raspberry. This is because Raspberry uses a different processor architecture (ARM) than most laptops.
For this reason also, the current OpenBCI GUI (graphical user interface) program, will work on your laptop, but not currently on the Raspberry. That should change before too long, when an ARM version may be available. In the meantime you can use the GUI on your laptop, as well as BrainFlow on the laptop. Then once BrainFlow is working well there, you can move your program to the Raspberry.
Regards, William
The 'Google Advanced Search' in the upper right column gives these results:
https://www.google.com/search?as_q=raspberry&as_sitesearch=openbci.com
But note that many of those threads pre-date the availability of the BrainFlow library. BrainFlow is the way to go. The GUI may eventually be available for ARM, but it's a very large program written in Java / Processing language. So although it performs well on a laptop, it would be slower on the Pi.