Creating SSVEP visual speller and other apps.

Hi everyone,
I am trying to find some satisfying open-source apps that I could use with the hardware, but I cannot find anything good. This is why I decided to try to create something myself. I am a junior software engineer, the main language I know is C++, but I do not have any experience with graphical applications, GUIs. Can anyone recommend to me some library that can manipulate the phase and frequency of the displayed graphics? I believe I am relatively flexible when it comes to language and should not have much trouble adjusting to e.g. C# if it is much better for the purpose.


  • retiututretiutut Louisiana, USA
    edited March 24

    @MatthewCaine We tried to add an SSVEP widget to the GUI, but there were a few limiting factors:

    • SSVEP needs reliable frame rate on computer/screen to flash squares at the correct frequency. Sometimes the GUI frame rate drops on older machines. This is because the GUI is doing many things at once and drawing graphics. I may have tried to make SSVEP open in a new window, but it made the widget very complicated. A separate app that only does SSVEP should work just fine with all OpenBCI boards.
    • Making SSVEP graphics using C++ or C# should be fast and accurate enough to get the job done. I expect this to run faster than the GUI using Java/JVM.
    • Electrode impedance needs to be in acceptable range to ensure quality signal.
    • May need to do some extra processing to filter out noise floor.

    A company named MindAffect made a great example/system. I would check that out. Maybe @wjcroft has some more info that can be shared.

    Take Care,

  • petitpouletpetitpoulet Sherbrooke

    You might want to look at PsychoPy, which is an Open Source Python library that provides tools to display frames with precision and synchronize events (like sounds or keyboard).
    It's quite user friendly if you use their GUI, but you can also code your experiment directly.

Sign In or Register to comment.