Page 1 of 1

Biosemi Active 2 source module

Posted: 14 Oct 2010, 09:24
by martimd5
Hi everyone,

Currently, I'm trying to configure BCI 2000 in order to acquire EEGs from the Biosemi Active 2 device. Through BCI 2000 launcher, I ran the Biosemi source module with DummySignalProcessing (as signal processing module) and FeedbackDemo (as application module). On the source view, I defined the following parameters :
-> SourceCh : 32
-> SampleBlockSize : 16
-> SamplingRate : 256
-> SourceChOffset : 0 (32x)
-> SourceChGain : 0.3125 (32x)
-> ChannelsNames : Fp1 AF3 F3 F7 FC5 FC1 C3 T7 CP5 CP1 P3 P7 PO3 O1 Oz Pz Fp2 AF4 Fz F4 F8 FC6 FC2 Cz C4 T8 CP6 CP2 P4 P8 PO4 O2
-> EEGChList : 1 3 5 7 9 11 13 15 17 19 21 23 26 27 29 31 34 36 38 40 42 44 46 48 50 52 54 56 58 60 63 64
-> AIBChList : nothing
-> TriggerChList : nothing
-> AlignChannel : 1
-> SourceChTimeOffset : nothing
-> TransmitChList : 1 2 3 4 5 6 7 8 9 10 11 12 13 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32

After that, when I push the button SetConfig, BCI 2000 return the following message :
2010-10-14T14:59:31 - Warning: Biosemi2ADC::Preflight: re-initializing the biosemi module without restarting BCI2000 may lead to unpredictable amp behaviour, for reasons unknown...
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: No cord or power.
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 1. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 3. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 5. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 7. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 9. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 11. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 13. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 15. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 17. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 19. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 21. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 23. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 26. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 27. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 29. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 31. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 34. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 36. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 38. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 40. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 42. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 44. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 46. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 48. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 50. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 52. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 54. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 56. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 58. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 60. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 63. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Illegal EEGChList index 64. Legal range is [1,-3].
2010-10-14T14:59:31 - Biosemi2ADC::Preflight: Sampling rate requested: 256 does not evenly divide biosemi sampling rate: 2097253.
2010-10-14T15:20:51 - Operator set configuration
2010-10-14T15:20:51 - Warning: Biosemi2ADC::Preflight: re-initializing the biosemi module without restarting BCI2000 may lead to unpredictable amp behaviour, for reasons unknown...
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: No cord or power.
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 1. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 3. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 5. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 7. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 9. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 11. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 13. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 15. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 17. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 19. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 21. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 23. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 26. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 27. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 29. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 31. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 34. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 36. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 38. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 40. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 42. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 44. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 46. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 48. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 50. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 52. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 54. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 56. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 58. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 60. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 63. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Illegal EEGChList index 64. Legal range is [1,-3].
2010-10-14T15:20:51 - Biosemi2ADC::Preflight: Sampling rate requested: 256 does not evenly divide biosemi sampling rate: 2097253.

Does someone know what is wrong ?

Best,

Martin Miguel

Posted: 14 Oct 2010, 11:15
by mellinger
Martin,

sorry if I state the obvious, but did you confirm that the amplifier was switched on, and firmly connected to the BCI2000 machine?

--Juergen

Biosemi

Posted: 14 Oct 2010, 17:48
by gschalk
Also, did you install the Biosemi drivers on that machine?

Gerv

Posted: 22 Oct 2010, 13:48
by martimd5
Thank Grev,

You was right. I forgot to install the Biosemi driver. However, I'm still not able to acquire data from Biosemi 2. First, on the Biosemi2Client.cpp source file, I have to call the mpfCLOSE_DRIVER(mDevice) handler (at line 294) instead of mpfCLOSE_DRIVER_ASYNC(mDevice), otherwise a segmentation fault is launched. But, doing like this, signals that I obtain from Biosemi are always 0 valued or strongly negatives.

Globally, I note that there are a lot of problem with Biosemi 2 integration with BCI 2000. So, I want to know if :
1. The Biosemi2 module was tested ?
2. Someone can send me or commit a version of Biosemi2 module that work ?
Maybe the segmentation fault is generated by another mistake. So, Do someone know what I should do to avoid this behavior ?

Thank you very much for your work.

Best,

Martin Miguel

Posted: 25 Oct 2010, 10:33
by martimd5
Hi, everyone

Changing the Labview_DLL.dll with another version of this library, I'm able to close the Biosemi 2 module in asynchrone mode. However, I obtain the same
result as before (constant signals 0 valued or strongly negatives).
May be the error comes from the Labview_DLL.dll. Does someone have a Labview_DLL.dll that work ?

Best,

Martin Miguel

Biosemi

Posted: 25 Oct 2010, 11:52
by gschalk
Hi,

We do not own a Biosemi device and thus cannot guarantee performance with BCI2000. However, we successfully used Biosemi with BCI2000 when we used the following driver:

files.me.com/gschalk/cyvnqg

Gerv

Posted: 25 Oct 2010, 13:19
by martimd5
Hi,

I tried your driver but I still obtain the same behavior. I think the problem is the Labiew_DLL.dll dynamic library or the Biosemi2 module (a mistake in the C++ code). That is my conclusion, because with Actiview software I obtain the behavior we hope.

Finally, do you suggest to used the g.Usbamp instead of the Biosemi Active Two system ? Do you know how much it cost and how can I buy it ?

Thank you very much for your help.

Martin Miguel

Posted: 11 Nov 2010, 09:49
by mellinger
Martin,

the g.USBamp is supported by the BCI2000 core distribution, and thus tested well. It is priced at about 10000$ but you should ask for a quote at gtec (www.gtec.at).

Best regards,
Juergen

Re: Biosemi Active 2 source module

Posted: 12 Jul 2011, 03:24
by hcho
Martin,

Recently, My lab purchased th Biosemi Active 2 device, too.

I have solved that problem by uninstalling the 'Labview Run time engine' included in the Active Veiw CD.


Best,

Hohyun Cho

Re: Biosemi Active 2 source module

Posted: 26 Jul 2011, 18:57
by dkiviat
There are (at least) two versions of the labview_dll.dll floating around, make sure the file you are using is 48KB large. Email me if you still need the dll.

Re: Biosemi Active 2 source module

Posted: 02 Aug 2011, 09:50
by mellinger
Thanks for identifying and fixing this issue. In response to your postings, the Labview_DLL file has been restored in the SVN repository, and will be available in the /prog directory of future BCI2000 installations (beginning with version 3.0.3).