I am noob and a mentor to two girls who have purchased and OpenBCI cyton for a science fair project. We have encountered a problem that should be easy to get around - or maybe our understanding is wrong.
- The girls want to do experiments where they record the brain activity associated with stimuli using "markers". They will epoch the EEG signals around the markers and then do classification, etc.
- We need to record the EEG signals and the associated "marker" (the marker can be a number between 1 and 20 (say))
- The only way to get a marker into the stream (that we can find) is using openbci 3.x firmware and hitting the '`' key on the keyboard in the OpenBCI_GUI
- However, this only inserts a marker and not a value
Could you give us pointers for how we can approach this, or who we can talk to about this?
We have brainstormed and come up with the following possibilities:
- modify the 3.X firmware to expect a second char when it receives the marker char '`' and write the value this char into one of the accelerometer streams
- When we do the data processing we can just use the ACCELX channel as the marker channel
- We would need to modify the OpenBCI_GUI to listen to a port (serial or UDP) and when it receives a "marker" to write the "`x" (where x is the value of the marker) to the bluetooth serial stream
- Make changes to OpenBCI_GUI to receive the markers and insert these into the saved files
- Stream the data to a LSL (Lab Streaming Layer) server where the LSL server can integrate "markers"
- The problem is that LSL only saves XDF files and then we need to convert XDF files to GDF files
Option 2 and 3 seems the simplest but the issue is that we will only get 128Hz data (since we will be limited to using the bluetooth stream)
Any thoughts? How have others done this?
Thanks in advance