Skip to main content

BCI Software Platforms

  • Chapter
  • First Online:

Part of the book series: Biological and Medical Physics, Biomedical Engineering ((BIOMEDICAL))

Abstract

In this chapter, we provide an overview of publicly available software platforms for brain–computer interfaces. We have identified seven major BCI platforms and one platform specifically targeted towards feedback and stimulus presentation. We describe the intended target user group (which includes researchers, programmers, and end users), the most important features of each platform such as availability on different operating systems, licences, programming languages involved, supported devices, and so on. These seven platforms are: (1) BCI2000, (2) OpenViBE, (3) TOBI Common Implementation Platform (CIP), (4) BCILAB, (5) BCI++, (6) xBCI, and (7) BF++. The feedback framework is called Pyff. Our conclusion discusses possible synergies and future developments, such as combining different components of different platforms. With this overview, we hope to identify the strengths and weaknesses of each available platform, which should help anyone in the BCI research field in their decision which platform to use for their specific purposes.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   129.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   169.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD   169.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Notes

  1. 1.

    www.gnu.org/licenses/gpl.html

  2. 2.

    www.bci2000.org

  3. 3.

    doc.bci2000.org

  4. 4.

    bbs.bci2000.org

  5. 5.

    bci2000.org/downloads/BCPy2000

  6. 6.

    gcc.gnu.org

  7. 7.

    www.mingw.org

  8. 8.

    openvibe.inria.fr

  9. 9.

    www.gnu.org/copyleft/lesser.html

  10. 10.

    www.gtk.org

  11. 11.

    sourceforge.net/apps/wordpress/itpp

  12. 12.

    www.cs.unc.edu/Research/vrpn

  13. 13.

    openvibe.inria.fr/documentation/latest

  14. 14.

    www.tobi-project.org/download

  15. 15.

    http://arxiv.org/abs/1103.4717v1

  16. 16.

    www.tobi-project.org/download

  17. 17.

    bci.tugraz.at/downloads

  18. 18.

    www.boost.org

  19. 19.

    www.libsdl.org

  20. 20.

    sccn.ucsd.edu/wiki/BCILAB

  21. 21.

    opensoundcontrol.org

  22. 22.

    sccn.ucsd.edu

  23. 23.

    www.sensibilab.campuspoint.polimi.it

  24. 24.

    www.wxwidgets.org

  25. 25.

    irrlicht.sourceforge.net

  26. 26.

    www.hitl.washington.edu/artoolkit

  27. 27.

    xbci.sourceforge.net

  28. 28.

    www.brainterface.com

  29. 29.

    bbci.de/pyff

  30. 30.

    www.json.org

  31. 31.

    www.pygame.org

  32. 32.

    www.python.org

  33. 33.

    www.riverbankcomputing.co.uk/software/pyqt/intro

References

  1. Allison, B.Z., McFarland, D.J., Schalk, G., Zheng, S.D., Jackson, M.M., Wolpaw, J.R.: Towards an independent brain–computer interface using steady state visual evoked potentials. Clin. Neurophysiol. 119, 399–408 (2008)

    Google Scholar 

  2. Bell, A.J., Sejnowski, T.J.: An information-maximization approach to blind separation and blind deconvolution. Neural Comput. 7, 1129–1159 (1995)

    Google Scholar 

  3. Bell, C.J., Shenoy, P., Chalodhorn, R., Rao, R.P.: Control of a humanoid robot by a noninvasive brain–computer interface in humans. J. Neural Eng. 5, 214–220 (2008)

    Google Scholar 

  4. Bianchi, L., Babiloni, F., Cincotti, F., Salinari, S., Marciani, M.G.: An object oriented approach to biofeedback applications for disabled people. In: 3rd International Conference on BioElectroMagnetism, pp. 1–3. Bled, Slovenia (2000)

    Google Scholar 

  5. Bianchi, L., Babiloni, F., Cincotti, F., Mattia, D., Marciani, M.G.: Developing wearable bio-feedback systems: the BF++ framework approach. In: 1st International IEEE EMBS Conference on Neural Engineering, pp. 607–609. Capri, Italy (2003)

    Google Scholar 

  6. Bianchi, L., Quitadamo, L., Garreffa, G., Cardarilli, G., Marciani, M.: Performances evaluation and optimization of brain computer interface systems in a copy spelling task. IEEE Trans. Neural Syst. Rehabil. Eng. 15, 207–216 (2007)

    Google Scholar 

  7. Bianchi, L., Quitadamo, L.R., Abbafati, M., Marciani, M.G., Saggio, G.: Introducing NPXLab 2010: a tool for the analysis and optimization of P300 based brain–computer interfaces. In: 2nd International Symposium on Applied Sciences in Biomedical and Communication Technologies, pp. 1–4 (2009)

    Google Scholar 

  8. Blankertz, B., Lemm, S., Treder, M., Haufe, S., Müller, K.R.: Single-trial analysis and classification of ERP components – a tutorial. NeuroImage 56, 814–825 (2011)

    Google Scholar 

  9. Breitwieser, C., Daly, I., Neuper, C., Müller-Putz, G. R.: Proposing a standardized protocol for raw biosignal transmission. IEEE Trans. Biomed. Eng. 59, 852–859 (2012)

    Google Scholar 

  10. Breitwieser, C., Neuper, C., Müller-Putz, G.R.: A concept to standardize raw biosignal transmission for brain–computer interfaces. In: Proceedings of the 33rd Annual International Conference of the IEEE Engineering in Medicine and Biology Society (2011b)

    Google Scholar 

  11. Brouwer, A.M., Van Erp, J.B.F.: A tactile P300 brain–computer interface. Front. Neurosci. 4 (2010)

    Google Scholar 

  12. Brunner, P., Ritaccio, A.L., Lynch, T.M., Emrich, J.F., Wilson, J.A., Williams, J.C., Aarnoutse, E.J., Ramsey, N.F., Leuthardt, E.C., Bischof, H., Schalk, G.: A practical procedure for real-time functional mapping of eloquent cortex using electrocorticographic signals in humans. Epilepsy Behav. 15, 278–286 (2009)

    Google Scholar 

  13. Brunner, P., Ritaccio, A.L., Emrich, J.F., Bischof, H., Schalk, G.: Rapid communication with a “P300” matrix speller using electrocorticographic signals (ECoG). Front. Neurosci. 5 (2011)

    Google Scholar 

  14. Buch, E., Weber, C., Cohen, L.G., Braun, C., Dimyan, M.A., Ard, T., Mellinger, J., Caria, A., Soekadar, S., Fourkas, A., Birbaumer, N.: Think to move: a neuromagnetic brain–computer interface (BCI) system for chronic stroke. Stroke 39, 910–917 (2008)

    Google Scholar 

  15. Cabrera, A.F., Dremstrup, K.: Auditory and spatial navigation imagery in brain–computer interface using optimized wavelets. J. Neurosci. Methods 174, 135–146 (2008)

    Google Scholar 

  16. Cincotti, F., Mattia, D., Aloise, F., Bufalari, S., Astolfi, L., De Vico Fallani F., Tocci, A., Bianchi, L., Marciani, M.G., Gao, S., Millán, J., Babiloni, F.: High-resolution EEG techniques for brain–computer interface applications. J. Neurosci. Meth. 167, 31–42 (2008a)

    Google Scholar 

  17. Cincotti, F., Mattia, D., Aloise, F., Bufalari, S., Schalk, G., Oriolo, G., Cherubini, A., Marciani, M.G., Babiloni, F.: Non-invasive brain–computer interface system: towards its application as assistive technology. Brain Res. Bull. 75, 796–803 (2008b)

    Google Scholar 

  18. Delorme, A., Makeig, S.: EEGLAB: an open source toolbox for analysis of single-trial EEG dynamics including independent component analysis. J. Neurosci. Meth. 134, 9–21 (2004)

    Google Scholar 

  19. Delorme, A., Mullen, T., Kothe, C., Acar, Z.A., Bigdely-Shamlo, N., Vankov, A., Makeig, S.: EEGLAB, SIFT, NFT, BCILAB, and ERICA: new tools for advanced EEG processing. Comput. Intell. Neurosci. 2011, 130,714 (2011)

    Google Scholar 

  20. Felton, E.A., Wilson, J.A., Williams, J.C., Garell, P.C.: Electrocorticographically controlled brain–computer interfaces using motor and sensory imagery in patients with temporary subdural electrode implants – report of four cases. J. Neurosurg. 106, 495–500 (2007)

    Google Scholar 

  21. Graimann, B., Allison, B., Pfurtscheller, G.: Brain-computer interfaces: a gentle introduction. In: Graimann, B., Allison, B., Pfurtscheller, G.: (eds.) Brain–Computer Interfaces: Revolutionizing Human–Computer Interaction, pp. 1–28. Springer Berlin Heidelberg, (2011)

    Google Scholar 

  22. Kanoh, S., Scherer, R., Yoshinobu, T., Hoshimiya, N., Pfurtscheller, G.: “Brain switch” BCI system based on EEG during foot movement imagery. In: Proceedings of the Third International Brain–Computer Interface Workshop and Training Course, pp. 64–65 (2006)

    Google Scholar 

  23. Kanoh, S., Scherer, R., Yoshinobu, T., Hoshimiya, N., Pfurtscheller, G.: Effects of long-term feedback training on oscillatory EEG components modulated by motor imagery. In: Proceedings of the Fourth International Brain–Computer Interface Workshop and Training Course, pp. 150–155 (2008)

    Google Scholar 

  24. Kothe, C., Makeig, S.: Estimation of task workload from EEG data: new and current tools and perspectives. In: Proceedings of the 33rd Annual International Conference of the IEEE Engineering in Medicine and Biology Society (2011)

    Google Scholar 

  25. Kubánek, J., Miller, K.J., Ojemann, J.G., Wolpaw, J.R., Schalk, G.: Decoding flexion of individual fingers using electrocorticographic signals in humans. J. Neural Eng. 6, 066,001 (2009)

    Google Scholar 

  26. Kübler, A., Nijboer, F., Mellinger, J., Vaughan, T.M., Pawelzik, H., Schalk, G., McFarland, D.J., Birbaumer, N., Wolpaw, J.R.: Patients with ALS can use sensorimotor rhythms to operate a brain–computer interface. Neurology 64, 1775–1777 (2005)

    Google Scholar 

  27. Lancaster, J.L., Woldorff, M.G., Parsons, L.M., Liotti, M., Freitas, C.S., Rainey, L., Kochunov, P.V., Nickerson, D., Mikiten, S.A., Fox, P.T.: Automated Talairach atlas labels for functional brain mapping. Hum. Brain Mapp. 10, 120–131 (2000)

    Google Scholar 

  28. Leuthardt, E.C., Schalk, G., Wolpaw, J.R., Ojemann, J.G., Moran, D.W.: A brain–computer interface using electrocorticographic signals in humans. J. Neural Eng. 1, 63–71 (2004)

    Google Scholar 

  29. Leuthardt, E.C., Miller, K.J., Schalk, G., Rao, R.P., Ojemann, J.G.: Electrocorticography-based brain computer interface – the Seattle experience. IEEE Trans. Neural Syst. Rehabil. Eng. 14, 194–198 (2006)

    Google Scholar 

  30. Leuthardt, E.C., Miller, K.J., Anderson, N.R., Schalk, G., Dowling, J., Miller, J., Moran, D.W., Ojemann, J.G.: Electrocorticographic frequency alteration mapping: a clinical technique for mapping the motor cortex. Neurosurgery 60, 260–270 (2007)

    Google Scholar 

  31. Lotte, F., Renard, Y., Lécuyer, A.: Self-paced brain–computer interaction with virtual worlds: a qualitative and quantitative study “out-of-the-lab.” In: Proceedings of the Fourth International Brain–Computer Interface Workshop and Training Course, pp. 373–378 (2008)

    Google Scholar 

  32. Makeig, S., Bell, A.J., Jung, T.P., Sejnowski, T.J.: Independent component analysis of electroencephalographic data. In: Touretzky, D., Mozer, M., Hasselmo, M. (eds.) Advances in Neural Information Processing Systems, pp. 145–151. MIT Press (1996)

    Google Scholar 

  33. Makeig, S., Gramann, K., Jung, T.P., Sejnowski, T.J., Polzner, H.: Linking brain, mind and behavior. Int. J. Psychophysiol. 73, 95–100 (2009)

    Google Scholar 

  34. Mason, S.G., Birch, G.E.: A general framework for brain–computer interface design. IEEE Trans. Neural Syst. Rehabil. Eng. 11, 70–85 (2003)

    Google Scholar 

  35. McFarland, D.J., Krusienski, D.J., Sarnacki, W.A., Wolpaw, J.R.: Emulation of computer mouse control with a noninvasive brain–computer interface. J. Neural Eng. 5, 101–110 (2008)

    Google Scholar 

  36. McFarland, D.J., Sarnacki, W.A., Wolpaw, J.R.: Electroencephalographic (EEG) control of three-dimensional movement. J. Neural Eng. 7, 036,007 (2010)

    Google Scholar 

  37. Mellinger, J., Schalk, G., Braun, C., Preissl, H., Rosenstiel, W., Birbaumer, N., Kübler, A.: An MEG-based brain–computer interface (BCI). NeuroImage 36, 581–593 (2007)

    Google Scholar 

  38. Miller, K.J., Dennijs, M., Shenoy, P., Miller, J.W., Rao, R.P., Ojemann, J.G.: Real-time functional brain mapping using electrocorticography. Neuroimage 37, 504–507 (2007a)

    Google Scholar 

  39. Miller, K.J., Leuthardt, E.C., Schalk, G., Rao, R.P., Anderson, N.R., Moran, D.W., Miller, J.W., Ojemann, J.G.: Spectral changes in cortical surface potentials during motor movement. J. Neurosci. 27, 2424–32 (2007b)

    Google Scholar 

  40. Millán, J., Rupp, R., Müller-Putz, G.R., Murray-Smith, R., Giugliemma, C., Tangermann, M., Vidaurre, C., Cincotti, F., Kübler, A., Leeb, R., Neuper, C., Müller, K.R., Mattia, D.: Combining brain–computer interfaces and assistive technologies: state-of-the-art and challenges. Front. Neurosci. 4 (2010)

    Google Scholar 

  41. Müller-Putz, G.R., Kaiser, V., Solis-Escalante, T., Pfurtscheller, G.: Fast set-up asynchronous brain-switch based on detection of foot motor imagery in 1-channel EEG. Med. Biol. Eng. Comput. 48, 229–233 (2010)

    Google Scholar 

  42. Palmer, J.A., Makeig, S., Kreutz-Delgado, K., Rao, B.D.: Newton Method for the ICA Mixture Model. In: Proceedings of the 33rd IEEE International Conference on Acoustics and Signal Processing (ICASSP), pp. 1805–1808 (2008)

    Google Scholar 

  43. Parini, S., Maggi, L., Turconi, A.C., Andreoni, G.: A robust and self-paced BCI system based on a four class SSVEP paradigm: algorithms and protocols for a high-transfer-rate direct brain communication. Comput. Intell. Neurosci. 2009, 864,564 (2009)

    Google Scholar 

  44. Prechelt, L.: An empirical comparison of seven programming languages. IEEE Comput. 33, 23–29 (2000)

    Google Scholar 

  45. Quitadamo, L.R., Marciani, M.G., Cardarilli, G.C., Bianchi, L.: Describing different brain computer interface systems through a unique model: a UML implementation. Neuroinformatics 6, 81–96 (2008)

    Google Scholar 

  46. Ramoser, H., Müller-Gerking, J., Pfurtscheller, G.: Optimal spatial filtering of single trial EEG during imagined hand movement. IEEE Trans. Rehabil. Eng. 8, 441–446 (2000)

    Google Scholar 

  47. Renard, Y., Lotte, F., Gibert, G., Congedo, M., Maby, E., Delannoy, V., Bertrand, O., Lécuyer, A.: OpenViBE: an open-source software platform to design, test, and use brain–computer interfaces in real and virtual environments. Presence 19, 35–53 (2010)

    Google Scholar 

  48. Royer, A.S., He, B.: Goal selection versus process control in a brain–computer interface based on sensorimotor rhythms. J. Neural Eng. 6, 016,005 (2009)

    Google Scholar 

  49. Schalk, G., Mellinger, J.: A Practical Guide to Brain-Computer Interfacing with BCI2000: General-Purpose Software for Brain-Computer Interface Research, Data Acquisition, Stimulus Presentation, and Brain Monitoring. Springer London (2010)

    Google Scholar 

  50. Schalk, G., McFarland, D.J., Hinterberger, T., Birbaumer, N., Wolpaw, J.R.: BCI2000: A General-Purpose Brain-Computer Interface (BCI) System. IEEE Trans. Biomed. Eng. 51, 1034–1043 (2004)

    Google Scholar 

  51. Schalk, G., Kubánek, J., Miller, K.J., Anderson, N.R., Leuthardt, E.C., Ojemann, J.G., Limbrick, D., Moran, D., Gerhardt, L.A., Wolpaw, J.R.: Decoding two-dimensional movement trajectories using electrocorticographic signals in humans. J. Neural Eng. 4, 264–275 (2007)

    Google Scholar 

  52. Schalk, G., Leuthardt, E.C., Brunner, P., Ojemann, J.G., Gerhardt, L.A., Wolpaw, J.R.: Real-time detection of event-related brain activity. NeuroImage 43, 245–249 (2008a)

    Google Scholar 

  53. Schalk, G., Miller, K.J., Anderson, N.R., Wilson, J.A., Smyth, M.D., Ojemann, J.G., Moran, D.W., Wolpaw, J.R., Leuthardt, E.C.: Two-dimensional movement control using electrocorticographic signals in humans. J. Neural Eng. 5, 75–84 (2008b)

    Google Scholar 

  54. Sellers, E.W., Vaughan, T.M., Wolpaw, J.R.: A brain–computer interface for long-term independent home use. Amyotroph. Lateral Scler. 11, 449–455 (2010)

    Google Scholar 

  55. Susila, I.P., Kanoh, S., Miyamoto, K., Yoshinobu, T.: xBCI: a generic platform for development of an online BCI system. IEEE Trans. Electr. Electron. Eng. 5, 467–473 (2010)

    Google Scholar 

  56. Tomioka, R., Müller, K.R.: A regularized discriminative framework for EEG analysis with application to brain–computer interface. NeuroImage 49, 415–432 (2010)

    Google Scholar 

  57. Valderrama, A.T., Oostenveld, R., Vansteensel, M.J., Huiskamp, G.M., Ramsey, N.F.: Gain of the human dura in vivo and its effect on invasive brain signals feature detection. J. Neurosci Methods 187, 270–279 (2010)

    Google Scholar 

  58. Vaughan, T.M., McFarland, D.J., Schalk, G., Sarnacki, W.A., Krusienski, D.J., Sellers, E.W., Wolpaw, J.R.: The Wadsworth BCI Research and Development Program: at home with BCI. IEEE Trans. Neural Syst. Rehabil. Eng. 14, 229–233 (2006)

    Google Scholar 

  59. Venthur, B., Scholler, S., Williamson, J., Dähne, S., Treder, M.S., Kramarek, M.T., Müller, K.R., Blankertz, B.: Pyff – a pythonic framework for feedback applications and stimulus presentation in neuroscience. Front. Neurosci. 4 (2010)

    Google Scholar 

  60. Vidal, J.J.: Toward direct brain–computer communication. Ann. Rev. Biophys. Bioeng. 2, 157–180 (1973)

    Google Scholar 

  61. Wilson, J.A., Felton, E.A., Garell, P.C., Schalk, G., Williams, J.C.: ECoG factors underlying multimodal control of a brain–computer interface. IEEE Trans. Neural Syst. Rehabil. Eng. 14, 246–250 (2006)

    Google Scholar 

  62. Wilson, J.A., Mellinger, J., Schalk, G., Williams, J.: A procedure for measuring latencies in brain-computer interfaces. IEEE Trans. Biomed. Eng. 7, 1785–1797 (2010)

    Google Scholar 

  63. Wisneski, K.J., Anderson, N., Schalk, G., Smyth, M., Moran, D., Leuthardt, E.C.: Unique cortical physiology associated with ipsilateral hand movements and neuroprosthetic implications. Stroke 39, 3351–3359 (2008)

    Google Scholar 

  64. Wolpaw, J.R., McFarland, D.J.: Multichannel EEG-based brain–computer communication. Clin. Neurophysiol. 90, 444–449 (1994)

    Google Scholar 

  65. Wolpaw, J.R., McFarland, D.J.: Control of a two-dimensional movement signal by a noninvasive brain–computer interface in humans. Proc. Natl. Acad. Sci. USA 101, 17,849–17,854 (2004)

    Google Scholar 

  66. Yamawaki, N., Wilke, C., Liu, Z., He, B.: An enhanced time-frequency-spatial approach for motor imagery classification. IEEE Trans. Neural Syst. Rehabil. Eng. 14, 250–254 (2006)

    Google Scholar 

  67. Zander, T.O., Kothe, C.: Towards passive brain–computer interfaces: applying brain–computer interface technology to human-machine systems in general. J. Neural Eng. 8, 025,005 (2011)

    Google Scholar 

Download references

Acknowledgements

The views and the conclusions contained in this document are those of the authors and should not be interpreted as representing the official policies, either expressed or implied, of the corresponding funding agencies. The authors would like to acknowledge the following projects and funding sources:

BCI2000: This work was supported by grants from the US Army Research Office (W911NF-07-1-0415, W911NF-08-1-0216) and the NIH/NIBIB (EB006356 and EB000856).

OpenViBE: This work was partly supported by grants of the French National Research Agency under the OpenViBE (ANR-05-RNTL-016) and OpenViBE2 (ANR-09-CORD-017) projects.

TOBI: This work is supported by the European ICT Programme Project FP7-224631.

BCILAB: Research was sponsored by the Army Research Laboratory and was accomplished under Cooperative Agreement Number W911NF-10-2-0022. Initial development was supported by a gift from the Swartz Foundation (Oldfield, NY) and a basic research grant of the Office of Naval Research (ONR).

Pyff: This work was partly supported by grants of the Bundesministerium für Bildung und Forschung (BMBF) (FKZ 01IB001A, 01GQ0850) and by the FP7-ICT Programme of the European Community, under the PASCAL2 Network of Excellence, ICT-216886.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Clemens Brunner .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2012 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Brunner, C. et al. (2012). BCI Software Platforms. In: Allison, B., Dunne, S., Leeb, R., Del R. Millán, J., Nijholt, A. (eds) Towards Practical Brain-Computer Interfaces. Biological and Medical Physics, Biomedical Engineering. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-29746-5_16

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-29746-5_16

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-29745-8

  • Online ISBN: 978-3-642-29746-5

  • eBook Packages: Physics and AstronomyPhysics and Astronomy (R0)

Publish with us

Policies and ethics