Hardware tagging of EEG and why you should care

An Event Response Potential or ERP is a brain response to an external stimulation such as a sound, a flash or any event one can perceive. As soon as the brain processes this event, a specific signature or response appears in the brain activity. The brain response occurs in a few 100s of milliseconds after the stimuli. Depending on the type of event, what the brain expected, what it actually perceived etc, different kind of ERP can be observed. The most common ERPs include N100 (Negative deflection 100ms after the stimuli), N200, N400 and P300 (Positive deflection 300ms after the stimuli). Each of those response have a specific meaning which is not the topic of this post :)

It is usually hard to detect a clean ERP on a single trial. For that reason, consecutive ERPs are usually averaged in order to maximize the response / noise ratio. In such condition, it is crucial to have perfect synchronization between the happening of the event and the tagging of the EEG stream. In order to achieve this, some medical grade devices have digital inputs (for instance Brain Products BrainAmp or g.Tec g.USBamp). This way, the stimulation program that runs on the computer is able to send a marker to the amplifier that gets in the device at the same time as the EEG samples. This should be perfect sync, wonderful !

Now let’s have a look on the deployment capabilities of this approach. First, hardware tagging needs a device that supports this option. When I was working for INRIA, we first had a MindMedia NeXus32B device which only had 1 bit digital input. As a comparison, the two devices I mentioned above have 8 bits digital input. As far as I know, the MicroMed SD LTM also has dedicated input but this input behaves as analog (meaning they don’t have a square state change, instead they have an oscillatory convergence to the requested value and then kind-of stabilize to that value). Some devices such as Emotiv EPOC even don’t have hardware tagging capabilities. Another potential issue is that the tagging is usually sent through parallel port… but computers do not have parallel ports anymore. You can still buy an additional PCI card for desktops but there is no chance you have a parallel port on a laptop anytime soon ! That means if you have a demo running in your lab, you won’t {want|be able to} show it at your next {project review|exhibition stall|whatever} ! So the questions that come to mind is

  • how do you handle the specificities of each device ?
  • how do you handle the fact that 99% of nowadays computer don’t have parallel ports ?

Remember you have to handle this in a single OpenViBE scenario set ;). Also how do you make the proposed BCIs accessible for everyone ? The answer is, maybe try software tagging instead ?

Back in the early days of OpenViBE, I have been recommended many times to do hardware tagging for implementing the P300 speller. However, I believed that using software tagging could also work and I had the chance to give it a try. It’s been hard to achieve good results but the P300 speller that comes with OpenViBE works pretty well now. It will probably never be as good as if it was using hardware tagging… but it works consistently for everyone, whatever device they are using. This is something that matters, right ?

Now is there a reason one should not use hardware tagging for better performance ? Of course not ! If one wants to use hardware tagging, please help yourself and enjoy better performance 😉 Everything is up and ready for hardware tagging in OpenViBE, the acquisition server has everything in place to receive the markers from the driver. The Acquisition Client box will give those markers back to you through its third output. Of course, you will have to adapt the existing scenarios to your computer & acquisition device :) but it should be pretty straight forward.

On the other hand when it comes to spreading the software to wide audience and to provide support on what is released, having something able to run in everyone’s house really matters, even if it was not as perfect as possible !

After two years of software deployment and community management, this is what I can tell about hardware tagging of EEG ! If you feel like it is the way to go, just do it, OpenViBE won’t let you down on this… If you care about spreading your work out of your lab, try it the harder way.

One Comment to “Hardware tagging of EEG and why you should care”

  1. Yann Renard 3 November 2011 at 9:33 am #

    Dear Ale-zzz, I don’t know much about wavelets and how they can be used to have better extraction of ERPs. I’ll take some time to read the tutorial you pointed out and will come back to you.