Skip to content

abiggerhammer/OpenNFB

 
 

Repository files navigation

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 3.1 or later
  • Numpy 1.7 or later
  • SciPy
  • PyQt5
  • PyQtGraph (you need github:develop branch for PyQt5 support)
  • traits

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

This Information is deprecated, currently there is no recording facility: The script record_bdf.py connects to the OpenBCI and writes a file in BDF File Format (http://www.biosemi.com/faq/file_format.htm). This format was chosen because it supports 24 bit resolution and can easily be opened with EDFBrowser (http://www.teuniz.net/edfbrowser/) for verification

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

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 93.4%
  • Lua 4.8%
  • QML 1.7%
  • Shell 0.1%