Community /

Ideas List for Google Summer of Code 2020

Instructions for interested students:

Students should use the following template when preparing your application to participate in GSoC with OpenBCI.

    1. Name: Your Full Name
    2. Email: [email protected]
    3. Personal Website:
    4. Phone number: include country code +1 212 555 1234
    5. School Name: The name of your university.
    6. Years completed: What year will you have just finished when you start GSoC?
    1. Project Description: Include a link to the description on the OpenBCI ideas page or make clear if this is your own suggestion. Also include potential mentors in the latter case.
    2. Preliminary Timeline: Describe milestones and dates for key deliverables.
    3. Anticipated Challenges: Identify any challenges or risks there are to the project not being as successful as you hope or not being complete by the end of the GSoC term.
    4. Existing Commitments: Do you have other existing commitments during the GSoC period? If so, what are they, and how much time per week do you need to address them?
    1. Past Projects: Provide links or descriptions of previous projects. Explain your specific role in each project.
    2. Work Experience: List and previous paid work experience
    3. References: Provide name, email, and describe the relationship to you for 1 to 3 references.
    4. Post Graduation Plans: What year do you expect to graduate and what are your plans following graduation?
    1. Why do you want to work with us?

GSoC 2020 Ideas List

BrainFlow project link:

Port BrainFlow to Android:

  • Description – port BrainFlow to Android using Android NDK, first step – port synthetic board, after that add streaming board and WIFI Shield based boards, in case if there will be enough time develop simple GUI application for Android(optional)
  • Requirements – Git, Cmake and ability to write C\C++ and Java code
  • Ways to stand out of the crowd – Android development experience
  • Hardware requirements – WIFI Shield + Ganglion or Cyton, for getting started Synthetic board is enough
  • Complexity – hard
  • Mentors – Andrey([email protected]), Daniel

Add JavaScript and Julia bindings for BrainFlow:

  • Description – Add JS and Julia bindings for BrainFlow
  • Requirements – Git and experience with either JavaScript or Julia
  • Hardware requirements – nice to have any OpenBCI board but Synthetic board is also ok
  • Complexity – simple
  • Mentors – Andrey([email protected]), Daniel

Add data encryption for all communication between OpenBCI board and PC:

  • Description – It’s a research task which can be useful for future, data security is getting more popular in BCI world and there are a lot of research papers about it. To make user’s data more secure we can encrypt all data sent from OpenBCI board and decrypt it in BrainFlow SDK.
  • Requirements – Git and C\C++ experience
  • Ways to stand out of the crowd – Experience with Arduino and understanding of encryption algorithms
  • Hardware requirements – Cyton
  • Complexity – hard
  • Mentors – Andrey([email protected]), Daniel

Implement ICA based signal denoising:

Unity SDK for OpenBCI Hardware

  • Description – develop simple but robust SDK for interfacing OpenBCI hardware with Unity game engine with simple yet elegant neurotech 3D examples
  • Requirements – Unity, C#, C\C++, 3D
  • Ways to stand out of the crowd – prior experience with electrophysiological signal processing
  • Hardware requirements – WIFI Shield + Ganglion or Cyton, for getting started Synthetic board is enough
  • Complexity – hard
  • Mentors – Andrey([email protected]), Conor ([email protected]), Daniel

Your Own Ideas:

One Comment

Leave a Reply