Contributions:gNautilus

From BCI2000 Wiki
Revision as of 04:21, 4 June 2014 by Gmilsap (talk | contribs) (Initial documentation)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Synopsis

The g.Nautilus acquisition module enables signal acquisition from the g.Nautilus device via the g.NEEDaccess API.

Location

http://www.bci2000.org/svn/trunk/src/contrib/SignalSource/gNautilus

Versioning

Author

Griffin Milsap (griffin.milsap@gmail.com)

Version History

  • V0.5 -- Analog Signal Acquisition

Source Code Revisions

  • Initial development: 4727
  • Tested under: 4727
  • Known to compile under: 4727
  • Broken since: N/A

Functional Description

The g.Nautilus is a wireless headset by g.tec, and is the first in their product line to use g.NEEDaccess exclusively for realtime access. This documentation explains the parameterization and specifics on how to set up the system.

NOTE: As of the time of writing, this module is at release V0.5. As such, it is not necessarily feature complete. The current g.NEEDAccess API BETA 7XX has not implemented all functionality that will eventually be supported in this module. Also, timing is pretty awful. As of right now, the acquisition module is not recommended for real-time closed-loop use with BCI2000.

Configuration

Install g.NEEDAccess on your machine, along with necessary g.tec drivers. Ensure the GDSDataServer is running by checking in services.msc.

NOTE: As of right now, g.NEEDAccess BETA 7XX appears to only support Windows 7+ 64 bit operating systems. As such, a 64 bit build of BCI2000 is required to make the g.Nautilus binary. g.Nautiulus can only be built using Visual Studio on Windows.

Ensure the device is charged and connected to the base station (refer to the included documentation for help with this). Start BCI2000 with the gNautilus source module.

Parameters

The following parameters are available for configuring the Blackrock source module. You will find these parameters in the Source -- Signal Properties section.

SourceCh

The g.Nautilus claims to support 64 channels via its API. The module has only been tested up to 32 channels.

NOTE: If less than 32 channels are acquired, only the first SourceCh channels will be acquired from.

SamplingRate

Only the following sample rates are currently supported by the API: 250 Hz and 500 Hz.

SampleBlockSize

Sample block size must be set to an integer multiple of the minimum sample block size corresponding to the current SamplingRate.

NOTE: As of V0.5, and g.NEEDAccess BETA 7XX, a SampleBlockSize set to the minimum block size results in non-realtime operation. Please specify a multiple of at least 2 * minimum block size.

  • 250 Hz -- 8 samples per block (block length of 32 ms, system clocked at 31.25 Hz)
  • 500 Hz -- 15 samples per block (block length of 30 ms, system clocked at 33.33 Hz)

ChannelNames

Leave this blank and channels are numbered. See Operator Log for information about correct channel names.

HostIP, HostPort, LocalIP, LocalPort

This defines the UDP connection to the GDSDataServer. If the service is running on your machine (see services.msc), the GDSDataServer will be listening to UDP packets on port 50223 (Default) at localhost (127.0.0.1). By default, the server will send messages to the listening process (localhost -- 127.0.0.1) on port 50224. The defaults here will be used in most circumstances. Consult your network administrator if your acquisition system is different.

NOTE: Ensure UDP communications on port 50223 and 50224 are unblocked and uninterrupted by any firewalls between the server and the client.

NautilusSN

This is the "name" of the device to acquire from. The serial number on the base-station is used here (Format: NB-20XX.YY.ZZ). Check the operator log for discovered devices and troubleshooting hints.

NetworkChannel

Channels 11-18 are available for communicating with several g.Nautilus devices in the same room. In order to ensure uninterrupted connections, use different NetworkChannel settings for each g.Nautilus in the room.

Future Work

  • Autoconfiguration!
  • Parametrization of Sensitivity
  • Selective Channel Acquisition
  • Digital Input as States
  • Head Mounted Accelerometer input as States
  • Signal quality indicator states
  • Battery life check
  • BCI2000 Integrated impedance check mode

See also

User Reference:Filters, Contributions:ADCs