MSA8D8 / OpenNFB

A Neurofeedback Software for Programmers

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

OpenNFB

A Neurofeedback software approach based on Python and Qt5/pyqtgraph It is ment for programmers, because it does not try to provide a visual programming language, like BrainBay/BioEra/BioExplorer, so it is only sutable for those who do not fear source code and the command line.

Dependencies:

  • Python 2.7 or later
  • Numpy 1.7 or later
  • SciPy
  • GnuRadio
  • PyQtGraph

Hardware:

I currently work with the OpenBCI (http://www.openbci.com), in particular the 8 Bit version with 8 Channels. While the software should ideally be modular enough to support other devices, i do not think about a hardware abstraction layer at this point.

At this point it should be noted that the file open_bci_v3.py comes from the original OpenBCI_Python project: https://github.com/OpenBCI/OpenBCI_Python

There is experimental support for the other "Open-BCI", also called Brain-Duino (http://www.psychiclab.net/IBVA/kit1.html). Note that the samplerate is samplerate is still hard-coded everywhere, and some of the math will be wrong for the default rate of 512 Hz.

Functionality

Servers

The data acquisition sources are called 'server'. There is replay_server.py for playing back a BDF recording, and brainduino_server.py and openbci_server.py to do live hardware feedback. Replays are very useful for development without attaching electrodes each time.

Recording

WAV Files

Feedback

Live Visualization

TBD

OSX Workaround

If you want to test this on OSX, mind the FTDI Driver fix: https://github.com/OpenBCI/Docs/blob/master/tutorials/09_Mac_FTDI_Driver_Fix.md But beware, it sometimes freezes my Mac (or only the input devices), which can lead to data loss.

About

A Neurofeedback Software for Programmers

License:GNU General Public License v3.0


Languages

Language:Python 94.3%Language:Lua 4.1%Language:QML 1.5%Language:Shell 0.1%