<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.bci2000.org/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Jfialkoff</id>
	<title>BCI2000 Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://www.bci2000.org/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Jfialkoff"/>
	<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php/Special:Contributions/Jfialkoff"/>
	<updated>2026-06-24T02:56:27Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_an_Offline_Analysis_of_ECoG_Data&amp;diff=4066</id>
		<title>User Tutorial:Performing an Offline Analysis of ECoG Data</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_an_Offline_Analysis_of_ECoG_Data&amp;diff=4066"/>
		<updated>2008-08-14T20:32:40Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In this section of the tutorial, we will take you through the steps for performing a frequency-domain analysis of data recorded using an ECoG.  Regardless of the selected recording technique, we expect the basic properties of the Mu rhythm to be identical for all humans, while the rhythm&#039;s spatial pattern and exact frequency range will differ.  As in [[User Tutorial:Performing an Offline Analysis of EEG Data]], we will use &#039;&#039;BCI2000 Offline Analysis&#039;&#039; to help determine the frequencies and locations that best facilitate response classification for online control.&lt;br /&gt;
&lt;br /&gt;
== Experimental Design ==&lt;br /&gt;
This tutorial will make use of the &amp;lt;tt&amp;gt;ecog1_1.dat&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;ecog1_2.dat&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;ecog1_3.dat&amp;lt;/tt&amp;gt; sessions that are included as part of the supplementary sample files downloadable [http://www.bci2000.org/downloads/bin/sampleFiles.zip here].  Please download this file and extract the contents to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
In the ecog1 sessions, the subject was asked to move each hand in a predefined pattern.  The resulting data was recorded using &#039;&#039;BCI2000&#039;&#039; and labeled using the StimulusCode state variable such that TargetCode is equal to 1 when the subject is responding to the instruction to move his/her left hand, 2 when the subject is responding to the instruction to move his/her right hand and 0 when the subject is responding to the instruction to rest.  If you are relatively new to &#039;&#039;BCI2000&#039;&#039;, you may find it helpful to inspect the data files we&#039;ll be using with the &#039;&#039;BCI2000 Viewer&#039;&#039;.  Using this tool, you will be able to see how state variables change with respect to the data over time.  For instruction on how to inspect data using the &#039;&#039;BCI2000 Viewer&#039;&#039;, please see [[User Reference:BCI2000Viewer]].&lt;br /&gt;
&lt;br /&gt;
==The Results==&lt;br /&gt;
In [[User Tutorial:Performing an Offline Analysis of EEG Data]] we manually entered all the analysis parameters.  In this tutorial we will make use of the &#039;&#039;BCI2000 Offline Analysis&#039;&#039; &amp;quot;Load Settings&amp;quot; feature that allows us to load previously saved settings.  In order to load the settings for this tutorial, please do the following:&lt;br /&gt;
&lt;br /&gt;
# Open BCI2000 Offline Analysis. If this is your first time using BCI2000 Offline Analysis, you may want to review the instructions on how to install and run this application: [[User Reference:BCI2000 Offline Analysis]].&lt;br /&gt;
# Click the &amp;quot;Add&amp;quot; button next to &amp;quot;Data Files&amp;quot; and navigate to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;. From there, select the files &amp;lt;tt&amp;gt;ecog1_1.dat&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;ecog1_2.dat&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;ecog1_3.dat&amp;lt;/tt&amp;gt; and click &amp;quot;Open&amp;quot;. To select multiple files, you&#039;ll need to first click on any one file and then, while holding down the control button on your keyboard, click the remaining files.  If these files aren&#039;t present, please download the [http://www.bci2000.org/downloads/bin/sampleFiles.zip supplementary sample files] and extract them to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# Click File&amp;gt;Load Settings&lt;br /&gt;
# Navigate to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;&lt;br /&gt;
# Double-click or otherwise open &amp;lt;tt&amp;gt;ecog1Analysis.bws&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now, click &amp;quot;Generate Plots&amp;quot;.  Once your analysis is complete, you will see feature, spectra and topography plots similar to those below:&lt;br /&gt;
&lt;br /&gt;
[[Image:ecog1Feature.png|600px]]&lt;br /&gt;
&lt;br /&gt;
[[Image:ecog1Spectrum.png|600px]]&lt;br /&gt;
&lt;br /&gt;
[[Image:ecog1Topo.png|600px]]&lt;br /&gt;
&lt;br /&gt;
In designing this analysis, we followed a similar procedure to the procedure outlined in [[User Tutorial:Performing an Offline Analysis of EEG Data]].  We begin by looking for clusters of high [[Glossary|r-squared]] values.  Again, these clusters are typically the first indication that the frequency/channel pairs that comprise the cluster may be good features for online analysis.  In the generated feature plot, we see that one of the clusters with the highest [[Glossary|r-squared]] values is centered around (25 Hz, Channel 14).  So, we continue by creating a topography at 25 Hz and a spectra for channel 14.  In the previous tutorial, we used these plots to evaluate the physiological plausibility of this response.  We first note that there are significant changes in the spectra between movement and rest.  Also, the most significant of these changes occur around the beta frequency range.  When inspecting the topographies resulting from the EEG-based analysis, we were able to relate the spatial response to areas of the motor cortex known to control the muscle being moved.  We can do this in ECoG as well.  In this case, however, the location of an electrode will differ based on where the grid was placed.  We must also be aware that an ECoG grid is subject to shifts in position over time.  Because the above response is related to movement of the right hand, we expect the response to appear over the motor cortex of the left-hemisphere.  There are, however, many reasons why this may not be the case.  One simple reason is that the subject may not be performing the requested instruction.  Regardless, it is reasonable to conclude from our analysis that (25 Hz, Channel 14) may be an effective feature for use in an on-line recognition task.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Tutorial:Obtaining Mu Rhythm Parameters in an Initial Session]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_a_Time-Domain_Offline_Analysis_of_EEG_Data&amp;diff=4043</id>
		<title>User Tutorial:Performing a Time-Domain Offline Analysis of EEG Data</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_a_Time-Domain_Offline_Analysis_of_EEG_Data&amp;diff=4043"/>
		<updated>2008-08-12T14:39:43Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Although the basic properties of the P300 evoked potential are the same for all individuals, the response&#039;s latency, width, and spatial pattern are unique for each individual.  In order to facilitate P300 classification, we must determine the typical values for these properties.  &#039;&#039;BCI2000 Offline Analysis&#039;&#039; is a helpful tool for performing analyses of offline data in order to characterize a given subject.&lt;br /&gt;
&lt;br /&gt;
==Experimental Design==&lt;br /&gt;
This tutorial will make use of the &amp;lt;tt&amp;gt;eeg2_1.dat&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;eeg2_2.dat&amp;lt;/tt&amp;gt; sessions that are included with BCI2000 which can be found in &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;. In these sessions, the subject was placed in front of a monitor displaying a P300 speller matrix.  A test sequence, consisting of a string of letters with a single letter highlighted, was also displayed.  In each run of the experiment, the subject was asked to focus on the symbol in the speller matrix that was currently highlighted in the test sequence.  This way, it was possible to label evoked responses according to whether they occurred for the highlighted symbol or for some other symbol in the matrix.  Such labels can be attached to &#039;&#039;BCI2000&#039;&#039; data using state variables.  In the case of the eeg2 data, we&#039;ve used the state variable StimulusType such that StimulusType is equal to 1 when the letter that flashes is the letter that the subject is focused on (i.e., the letter that is currently highlighted).  When the symbol that flashes is not the symbol of focus, StimulusType will not be equal to 1. If you are relatively new to BCI2000, you may find it helpful to inspect the data files we&#039;ll be using with the &#039;&#039;BCI2000 Viewer&#039;&#039;. Using this tool, you will be able to see how state variables change with respect to the data over time. For instruction on how to inspect data using the BCI2000 Viewer, please see [[User Reference:BCI2000Viewer]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==The Feature Plot==&lt;br /&gt;
&#039;&#039;BCI2000 Offline Analysis&#039;&#039; generates three plots that will aid you in your analyses.  One of these plots, the feature plot, provides an overview of the data.  Let&#039;s begin by generating this plot:&lt;br /&gt;
&lt;br /&gt;
# Open BCI2000 Offline Analysis. If this is your first time using BCI2000 Offline Analysis, you may want to review the instructions on how to install and run this application: [[User Reference:BCI2000 Offline Analysis]].&lt;br /&gt;
# Set the analysis parameters as follows:&lt;br /&gt;
##&#039;&#039;&#039;Analysis Domain:&#039;&#039;&#039; Choose &amp;quot;Time (P300)&amp;quot; in order to perform a time-domain analysis&lt;br /&gt;
##&#039;&#039;&#039;Acquisition Type:&#039;&#039;&#039; Choose &amp;quot;EEG&amp;quot; since the data we&#039;ll be working with in this section was recorded using an EEG.&lt;br /&gt;
##&#039;&#039;&#039;Data Files:&#039;&#039;&#039; Click the &amp;quot;Add&amp;quot; button and navigate to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;. From there, select the files &amp;lt;tt&amp;gt;eeg2_1.dat&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;eeg2_2.dat&amp;lt;/tt&amp;gt; and click &amp;quot;Open&amp;quot;. To select multiple files, you&#039;ll need to first click on any one file and then, while holding down the control button on your keyboard, click the remaining files.&lt;br /&gt;
##&#039;&#039;&#039;Montage File:&#039;&#039;&#039; Leave this blank. The reason for doing so will be explained shortly.&lt;br /&gt;
##&#039;&#039;&#039;Target Condition 1:&#039;&#039;&#039; Enter the MATLAB-syntax statement &amp;quot;(states.StimulusCode &amp;gt; 0) &amp;amp; (states.StimulusType == 1)&amp;quot; which should be the default value after selecting &amp;quot;Time (P300)&amp;quot; as the analysis domain. This statment instructs &#039;&#039;BCI2000 Offline Analysis&#039;&#039; that condition 1 should correspond to the data where the symbol that the subject was focused on corresponded to one of the letters that was flashing.&lt;br /&gt;
##&#039;&#039;&#039;Target Condition Label 1:&#039;&#039;&#039; The text entered here will be used to label data that is specific to condition 1. So, we will enter the string &amp;quot;Correct&amp;quot; as in the correct (i.e., highlighted) letter was one of the letters flashing.&lt;br /&gt;
##&#039;&#039;&#039;Target Condition 2:&#039;&#039;&#039; Enter the MATLAB-syntax statement &amp;quot;(states.StimulusCode &amp;gt; 0) &amp;amp; (states.StimulusType == 0)&amp;quot; which should be the default value after selecting &amp;quot;Time (P300)&amp;quot; as the analysis domain. This instructs &#039;&#039;BCI2000 Offline Analysis&#039;&#039; that condition 2 should correspond to the data where the symbol the subject was focused on did not corresponded to one of the letters that was flashing.&lt;br /&gt;
##&#039;&#039;&#039;Target Condition Label 2:&#039;&#039;&#039; The text entered here will be used to label data that is specific to condition 2. So, we will enter the string &amp;quot;Incorrect&amp;quot; as in the correct (i.e., highlighted) letter was not one of the letters flashing.&lt;br /&gt;
##&#039;&#039;&#039;Trial Change Condition:&#039;&#039;&#039; Enter the value &amp;quot;states.StimulusBegin == 1&amp;quot;. This instructs BCI2000 Offline Analysis that the trial edges correspond to data samples where the state variable StimulusBegin  becomes 1 or is 1 and becomes something else.&lt;br /&gt;
##&#039;&#039;&#039;Waveform Channels:&#039;&#039;&#039; Leave this blank. The reason for doing so will become clear.&lt;br /&gt;
##&#039;&#039;&#039;Topo Times:&#039;&#039;&#039; Leave this blank. The reason for doing so will become clear.&lt;br /&gt;
##&#039;&#039;&#039;Spatial Filter:&#039;&#039;&#039; Choose &amp;quot;None&amp;quot;. Because P300 responses are typically detected on a number of channels, CAR filtering is not typically effective.&lt;br /&gt;
##&#039;&#039;&#039;Ignore Warnings:&#039;&#039;&#039; Leave this field unchecked. For more information on this field, please see User Reference:BCI2000 Offline Analysis.&lt;br /&gt;
##&#039;&#039;&#039;Overwrite existing plots:&#039;&#039;&#039; If you have not yet run any analyses, this field should be disabled. If it is enabled, it is best for the purposes of this tutorial to leave it checked. Unchecking this box will instruct BCI2000 Offline Analysis to open new figures whenever it plots. This is useful if you want to compare the results of one analysis against another. &lt;br /&gt;
#Click &amp;quot;Generate Plots&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
Once the analysis has completed, you should see a feature plot similar to the one below. This plot displays the [[Glossary|r-squared (coefficient of determination)]] values for the two distributions (i.e., the average signal for condition 1 and the average signal for condition 2) as a function of time and channel. &lt;br /&gt;
&lt;br /&gt;
[[Image:eeg2Feature.png|600px]]&lt;br /&gt;
&lt;br /&gt;
The feature plot is an overview of the possible features. Thus, it is typically the best place to start your analysis. From this plot, we can find the best features by looking for clusters of high [[Glossary|r-squared]] values. In our feature plot, we notice that all of the clusters appear to be aligned at about 503ms.  The biggest of these clusters - with the largest [[Glossary|r-squared]] values - appears to be centered over electrode 51.  We will now use &#039;&#039;BCI2000 Offline Analysis&#039;&#039; to produce two additional plots that will help us to take a more detailed look at this time and channel.&lt;br /&gt;
&lt;br /&gt;
==Waveform Plots and Topographies==&lt;br /&gt;
&#039;&#039;BCI2000 Offline Analysis&#039;&#039; provides - in addition to the feature plot - waveform plots and topographies.  Waveform plots are useful for investigating specific channels while topographies are useful for investigating specific time windows. In order to generate the topographies we will need to communicate the manner in which the electrodes were arranged.  This is done with a montage file.  While there is a montage file included with &#039;&#039;BCI2000&#039;&#039; that is suitable for the data we&#039;ll be analyzing here, you will likely need to create or modify montage files for future analyses.  For that reason, we recommend that you take the time now to familiarize yourself with the &#039;&#039;Eloc Helper&#039;&#039; if you have not already done so.  In [[User Tutorial:Designing an Eloc File]], you will learn how to create a new montage file and modify an existing one so that you ultimately have your own montage file to use to complete this analysis.  If you prefer not to complete the &#039;&#039;Eloc Helper&#039;&#039; tutorial at this time, you will still be able to complete this tutorial using one of the montage files that comes with &#039;&#039;BCI2000&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
If you have finished designing your montage file or decided to use the one that&#039;s provide, please proceed to the steps below.  Note that these steps pick up from the steps outlined in the previous section for generating the feature plot:&lt;br /&gt;
&lt;br /&gt;
# Set the analysis parameters as follows:&lt;br /&gt;
## Montage File: Click the &amp;quot;Browse&amp;quot; button next to the field labeled &amp;quot;Montage Files&amp;quot; and browse to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;. If you completed the Eloc Helper tutorial and would like to use the montage file you created, double-click &amp;lt;tt&amp;gt;myeeg64.loc&amp;lt;/tt&amp;gt;. Otherwise, double-click eeg64.loc to use the montage file that comes with &#039;&#039;BCI2000&#039;&#039;.&lt;br /&gt;
## Waveform Channels: In the previous section we found that channel 51 may be an effective classification feature for facilitating online control. To generate the waveform plot for this channel, enter &amp;quot;51&amp;quot; into this field.&lt;br /&gt;
## Topo Times: In the previous section we found that 503 ms may be an effective classification feature for facilitating online control. To generate a topography for this time, enter &amp;quot;503&amp;quot; into this field. &lt;br /&gt;
# Click &amp;quot;Generate Plots&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
Once the analysis is complete, you will see the same feature plot as was generated in the previous section. Additionally, you will see a waveform plot and topography similar to those below.  In the waveform plot, we expect to see a peak response at approximately 300 ms. For this particular subject, however, we can see the peak response at approximately 503 ms as indicated by the feature plot which is reasonably close.  In the adjacent [[Glossary|r-squared]] waveform plot we can see that the [[Glossary|r-squared]] values also peak approximately at this time.  P300 topographies can vary significantly.  In the generated topography, we see that the response is located mainly &lt;br /&gt;
over the parietal and temporal lobes, which is consistent with the P300 &lt;br /&gt;
response found in other studies (Sellers et. al.: A P300 event-related potential brain–computer interface (BCI): The effects of matrix size and inter stimulus interval on performance.  Biological Psychology 70(2006):242-252. April 2006). However, there is significant variance in the spatial distribution of the response across different subjects in P300 experiments.  Regardless, it appears that the (503 ms, Channel 51) feature would indeed serve as an effective recognition feature for facilitating online control. &lt;br /&gt;
&lt;br /&gt;
[[Image:eeg2Waveform.png|600px]]&lt;br /&gt;
&lt;br /&gt;
[[Image:eeg2Topo.png|600px]]&lt;br /&gt;
&lt;br /&gt;
==Next Step==&lt;br /&gt;
At this point you should understand how to use the &#039;&#039;BCI2000 Offline Analysis&#039;&#039; plots to help you choose effective P300 features.  You might like to proceed to [[User Tutorial:Performing a Time-Domain Offline Analysis of ECoG Data]] for a similar tutorial using data recorded using an ECoG.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Tutorial:Obtaining P300 Parameters in an Initial Session]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_an_Offline_Analysis_of_EEG_Data&amp;diff=4042</id>
		<title>User Tutorial:Performing an Offline Analysis of EEG Data</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_an_Offline_Analysis_of_EEG_Data&amp;diff=4042"/>
		<updated>2008-08-12T14:31:31Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Although the basic properties of the Mu rhythm are identical for all humans, its spatial pattern and exact frequency are unique for each individual and depend on the current state of that individual.  In order to facilitate online BCI, we must determine how properties like these change in response to a given action.  For best results, we seek to find actions that produce the greatest response.  &#039;&#039;BCI2000 Offline Analysis&#039;&#039; is a tool that will help you to perform just this task.&lt;br /&gt;
&lt;br /&gt;
== Experimental Design ==&lt;br /&gt;
This tutorial will make use of the eeg1_1.dat, eeg1_2.dat and eeg1_3.dat sessions that are included with &#039;&#039;BCI2000&#039;&#039; and can be found in &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;.  In these sessions, the subject was asked to move both hands and both feet in a predefined pattern.  The resulting data was recorded using &#039;&#039;BCI2000&#039;&#039; and labeled using the StimulusCode state variable such that StimulusCode is equal to 1 when the subject is responding to the instruction to move both hands, 2 when the subject is responding to the instruction to move both feet and 0 when the subject is responding to the instruction to rest.  If you are relatively new to &#039;&#039;BCI2000&#039;&#039;, you may find it helpful to inspect the data files we&#039;ll be using with the &#039;&#039;BCI2000 Viewer&#039;&#039;.  Using this tool, you will be able to see how state variables like StimulusCode change with respect to the data over time.  For instruction on how to inspect data using the &#039;&#039;BCI2000 Viewer&#039;&#039;, please see [[User Reference:BCI2000Viewer]].&lt;br /&gt;
&lt;br /&gt;
== Performing an Offline Analysis ==&lt;br /&gt;
&#039;&#039;BCI2000 Offline Analysis&#039;&#039; is a useful tool for finding good features for use in an online task such as controlling a 2-D cursor.  For this particular task, it is necessary to find two real or imagined actions whose corresponding responses will allow the subject to control up and down movement of the cursor.  Of course the level of success will depend significantly on how much the responses differ (i.e., the more the responses differ the easier it will be to tell them apart).  So, our task is simply to find two opposing actions that produce significantly different responses.  Given the experimental design, there are three combinations to choose from: rest vs. both hands, rest vs. both feet, both hands vs. both feet.  In the sections to follow, we will perform a thorough inspection of&lt;br /&gt;
rest vs. both feet but the same steps can be easily modified to produce similar results for the other two combinations.&lt;br /&gt;
&lt;br /&gt;
=== Generating a Feature Plot ===&lt;br /&gt;
&#039;&#039;BCI2000 Offline Analysis&#039;&#039; provides us with 3 different plots that will be useful during the analysis process.  One of these plots, the feature plot, provides an overview of the data and is useful for choosing potential features.  Let&#039;s begin by generating the feature plot:&lt;br /&gt;
&lt;br /&gt;
# Open &#039;&#039;BCI2000 Offline Analysis&#039;&#039;.  If this is your first time using &#039;&#039;BCI2000 Offline Analysis&#039;&#039;, you may want to review the instructions on how to install and run this application: [[User Reference:BCI2000 Offline Analysis]].&lt;br /&gt;
# Set the analysis parameters as follows:&lt;br /&gt;
## &#039;&#039;&#039;Analysis Domain:&#039;&#039;&#039; Choose &amp;quot;Frequency&amp;quot; in order to perform a frequency-domain analysis&lt;br /&gt;
## &#039;&#039;&#039;Acquisition Type:&#039;&#039;&#039; Choose &amp;quot;EEG&amp;quot; since the data we&#039;ll be working with in this section was recorded using an EEG.&lt;br /&gt;
## &#039;&#039;&#039;Data Files:&#039;&#039;&#039; Click the &amp;quot;Add&amp;quot; button and navigate to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;.  From there, select the files eeg1_1.dat, eeg1_2.dat and eeg1_3.dat and click &amp;quot;Open&amp;quot;.  To select multiple files, you&#039;ll need to first click on any one file and then, while holding down the control button on your keyboard, click the remaining files.&lt;br /&gt;
## &#039;&#039;&#039;Montage File:&#039;&#039;&#039;  Leave this blank.  The reason for doing so will be explained shortly.&lt;br /&gt;
## &#039;&#039;&#039;Target Condition 1:&#039;&#039;&#039; Enter the value &amp;quot;states.StimulusCode == 0&amp;quot;.  This instructs &#039;&#039;BCI2000 Offline Analysis&#039;&#039; to search the data for sections where the StimulusCode indicates that the subject was responding to the instruction to rest.&lt;br /&gt;
## &#039;&#039;&#039;Target Condition Label 1:&#039;&#039;&#039; The text entered here will be used to label data that is specific to condition 1.  Since condition 1 corresponds to sections of rest, type &amp;quot;Rest&amp;quot; into this field.&lt;br /&gt;
## &#039;&#039;&#039;Target Condition 2:&#039;&#039;&#039; Enter the value &amp;quot;states.StimulusCode == 2&amp;quot;.  This instructs &#039;&#039;BCI2000 Offline Analysis&#039;&#039; to search the data for sections where StimulusCode indicates that the subject was responding to the instruction to move both feet.&lt;br /&gt;
## &#039;&#039;&#039;Target Condition Label 2:&#039;&#039;&#039; The text entered here will be used to label data that is specific to condition 2.  Since condition 2 corresponds to sections where the subject was moving both feet, type &amp;quot;Both Feet&amp;quot; into this field.&lt;br /&gt;
## &#039;&#039;&#039;Trial Change Condition&#039;&#039;&#039; Enter the value &amp;quot;states.StimulusBegin == 1&amp;quot;.  This instructs &#039;&#039;BCI2000 Offline Analysis&#039;&#039; that the trial edges correspond to data samples where StimlusBegin becomes 1 or is 1 and becomes something else.  Please see [[User Reference:BCI2000Viewer]] for instructions on how use &#039;&#039;BCI2000 Viewer&#039;&#039; to see how state variables like StimulusBegin change over time with respect to the data.&lt;br /&gt;
## &#039;&#039;&#039;Spectra Channels:&#039;&#039;&#039;  Leave this blank.  The reason for doing so will become clear.&lt;br /&gt;
## &#039;&#039;&#039;Topo Frequencies:&#039;&#039;&#039;  Leave this blank.  The reason for doing so will become clear.&lt;br /&gt;
## &#039;&#039;&#039;Spatial Filter:&#039;&#039;&#039; Choose &amp;quot;Common Average Reference (CAR)&amp;quot;.  Typically, for frequency domain analyses, filtering the data with a simple spatial filter such as the CAR filter results in sharper, more useful plots.&lt;br /&gt;
## &#039;&#039;&#039;Ignore Warnings:&#039;&#039;&#039; Leave this field unchecked.  For more information on this field, please see [[User Reference:BCI2000 Offline Analysis]].&lt;br /&gt;
## &#039;&#039;&#039;Overwrite existing plots:&#039;&#039;&#039; If you have not yet run any analyses, this field should be disabled.  If it is enabled, it is best for the purposes of this tutorial to leave it checked.  Unchecking this box will instruct &#039;&#039;BCI2000 Offline Analysis&#039;&#039; to open new figures whenever it plots which may be useful in situations where you want to compare the results of one analysis against another.&lt;br /&gt;
# Click &amp;quot;Generate Plots&amp;quot;.  &lt;br /&gt;
&lt;br /&gt;
Once the analysis is complete, you will see a feature plot similar to the one below.  This plot displays the [[Glossary|r-squared]] values between the two distributions (i.e., the average signal for condition 1 and the average signal for condition 2) as a function of frequency and channel.&lt;br /&gt;
&lt;br /&gt;
[[Image:eeg1FeaturePlt.png|600px]]&lt;br /&gt;
&lt;br /&gt;
The feature plot provides an overview of the data.  Thus, it is typically the best place to start your analysis.  Using this plot, we can find potential features simply by looking for clusters of high [[Glossary|r-squared]] values.  In the generated feature plot, we notice some clusters centered around (31 Hz, Channel 18), (31 Hz, Channel 10), (19 Hz, Channel 10) and (19 Hz, Channel 16).  To estimate the effectiveness of these features, we will need to look at them in more detail.&lt;br /&gt;
&lt;br /&gt;
===Spectra and Topographies===&lt;br /&gt;
As stated previously, the feature plot is useful for gaining an overview of the data and determining some of the more potentially useful features.  &#039;&#039;BCI2000 Offline Analysis&#039;&#039; provides two more plots that allow us to look at these features in more detail.  To see how the data behaves at specific electrodes, we&#039;ll generate spectra plots - plots that show the energy as a function of frequency.  To see how the data behaves at a specific frequency, we&#039;ll generate the topographies - plots that show the [[Glossary|r-squared]] values with respect to the location of a given electrode.  In order to generate the topographies we will need to communicate the manner in which the electrodes were arranged.  This is done with a montage file.  While there is a montage file included with &#039;&#039;BCI2000&#039;&#039; that is suitable for the data we&#039;ll be analyzing here, you will likely need to create or modify montage files for future analyses.  For that reason, we recommend that you take the time now to familiarize yourself with the &#039;&#039;Eloc Helper&#039;&#039;.  In [[User Tutorial:Designing an Eloc File]], you will learn how to create a new montage file and modify an existing one so that you ultimately have your own montage file to use to complete this analysis.  If you prefer not to complete the &#039;&#039;Eloc Helper&#039;&#039; tutorial at this time, you will still be able to complete this tutorial using one of the montage files that comes with &#039;&#039;BCI2000&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
If you have finished designing your montage file or decided to use the one that&#039;s provide, please proceed to the steps below.  Note that these steps pick up from the steps outlined in the previous section for generating the feature plot:&lt;br /&gt;
&lt;br /&gt;
# Set the analysis parameters as follows:&lt;br /&gt;
## &#039;&#039;&#039;Montage File:&#039;&#039;&#039; Click the &amp;quot;Browse&amp;quot; button next to the field labeled &amp;quot;Montage Files&amp;quot; and browse to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;.  If you completed the &#039;&#039;Eloc Helper&#039;&#039; tutorial and would like to use the montage file you created, double-click &amp;lt;tt&amp;gt;myeeg64.loc&amp;lt;/tt&amp;gt;.  Otherwise, double-click &amp;lt;tt&amp;gt;eeg64.loc&amp;lt;/tt&amp;gt; to use the montage file that comes with &#039;&#039;BCI2000&#039;&#039;.&lt;br /&gt;
## &#039;&#039;&#039;Spectra Channels:&#039;&#039;&#039; In the previous section we found - by inspection of the feature plot - three channels that show considerable promise: 10, 16 and 18.  To generate spectra for these channels, enter &amp;quot;10 16 18&amp;quot; into this field.&lt;br /&gt;
## &#039;&#039;&#039;Topo Frequencies:&#039;&#039;&#039; In the previous section we found - by inspection of the feature plot - two frequencies that show considerable promise: 19 and 31 Hz.  To generate topographies for these frequencies, enter &amp;quot;19 31&amp;quot; into this field.&lt;br /&gt;
# Click &amp;quot;Generate Plots&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Once the analysis is complete, you will see the same feature plot as was generated in the previous section.  Additionally, you will see a spectra plot and topographies similar to the ones below.  In the spectra, we notice significant changes in spectral power at frequencies in the mu and beta ranges.  Typically we expect less power at these frequencies during activity than when at rest as is these case in the generated spectra.  The spectra for channels 16 and 18 also show significant differences in the lower frequencies (i.e., below the mu frequencies).  Fluctuations at these frequencies have not been shown typically to be correlated to motor responses and are likely due to noise.  Thus, we will want to avoid using these frequencies as possible feature candidates.  As a note, it is often the case that one potential feature appears to be the harmonic of another.  Take for example the case where one feature appeared at 11 Hz and the other at 22Hz.  If, in this case, one feature were a harmonic of the other, the two would be highly correlated and there would likely be little to no benefit of using both features as opposed to just one.  Very often, however, in the cases where there appears to be a harmonic relationship between two features, the features are very spatially dissimilar.  In this case, the two features may not have such a high correlation and may both be useful for online classification.&lt;br /&gt;
&lt;br /&gt;
[[Image:eeg1Spectra.png|600px]]&lt;br /&gt;
&lt;br /&gt;
The frequencies targeted in our analysis do not exhibit a harmonic relationship.  Thus, it is likely the two are not highly correlated.  The topographies below provide further evidence towards that assumption; notice the dissimilar spatial distributions for the two different frequencies.  The topographies are also useful for evaluating the how physiologically plausible the recorded responses are.  For instance, in the topographies below, the spatial distribution agrees with the expected spatial response for feet movement.  See the [[User Tutorial:Introduction to the Mu Rhythm#Physical Properties|User Tutorial:Introduction to the Mu Rhythm]] for more information about the physical properties of mu rhythms.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:eeg1Topos.png|600px]]&lt;br /&gt;
&lt;br /&gt;
===Choosing the Optimal Features===&lt;br /&gt;
Unfortunately, it is impossible to know which features will provide the best results.  We can only speculate.  The 3 plots we&#039;ve generated with &#039;&#039;BCI2000 Offline Analysis&#039;&#039;, however, will surely help to make our guess a well-educated one.&lt;br /&gt;
&lt;br /&gt;
From the feature plot we determined that the coordinates (31 Hz, Channel 18), (31 Hz, Channel 10), (19 Hz, Channel 10) and (19 Hz, Channel 16) may be effective features for online classification.  Using the topographies and spectra, we confirmed that the channels and frequencies or these features agree with our expectations (i.e., the frequencies are in the mu or beta range and the spatial response is focused over the area of the motor cortex typically responsible for foot movement).  We may, therefore, simply choose to use all of these features when attempting online control with this subject.  While each additional feature may possibly improve performance, however, it will certainly increase latency.  So, we will want to limit the number of features we select.  So far we have limited our choices to only 4 potential features.  To rule out some of these, we will consider the arrangement of the electrodes.  The image below is the montage corresponding to the data we are currently analyzing.&lt;br /&gt;
&lt;br /&gt;
[[Image:eloc64.png]]&lt;br /&gt;
&lt;br /&gt;
Notice that electrodes 10 and 18 are very close to each other.  We might, therefore, conclude that the (31 Hz, Channel 18) and (31 Hz, Channel 10) features may be highly correlated.  Looking at the spectra and topographies, we can see that at 31 Hz, the [[Glossary|r-squared]] values are slightly higher for channel 18 than they are for channel 10.  So, in this case, we have sufficient reason to eliminate (31 Hz, Channel 10) as a feature.  For a similar reason, we can eliminate (19 Hz, Channel 10).  This leaves us with two features: (31 Hz, Channel 18) and (19 Hz, Channel 16).&lt;br /&gt;
&lt;br /&gt;
===Testing Other Combinations===&lt;br /&gt;
In the previous section, we used &#039;&#039;BCI2000 Offline Analysis&#039;&#039; to compare rest vs. movement of both feet and found two features (i.e., frequency/channel combinations) that will be useful in determining which action the subject performed.  At this point it may be useful to repeat the process above for the other two combinations: rest vs. both hands, both hands vs. both feet.  Then, the best combination can be found by finding the best r-squared values amongst the three feature plots.&lt;br /&gt;
&lt;br /&gt;
==The Next Step==&lt;br /&gt;
At this point you should understand how to use &#039;&#039;BCI2000 Offline Analysis&#039;&#039; to help you choose effective features. Now, let&#039;s continue on to [[User Tutorial:Interpreting the Results]] where we&#039;ll take a look at some other results from the same subject and compare them to what we&#039;ve found here.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Tutorial:Obtaining Mu Rhythm Parameters in an Initial Session]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_an_Offline_Analysis_of_EEG_Data&amp;diff=4041</id>
		<title>User Tutorial:Performing an Offline Analysis of EEG Data</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_an_Offline_Analysis_of_EEG_Data&amp;diff=4041"/>
		<updated>2008-08-12T14:30:37Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Generating a Feature Plot */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Although the basic properties of the Mu rhythm are identical for all humans, its spatial pattern and exact frequency are unique for each individual and depend on the current state of that individual.  In order to facilitate online BCI, we must determine how properties like these change in response to a given action.  For best results, we seek to find actions that produce the greatest response.  &#039;&#039;BCI2000 Offline Analysis&#039;&#039; is a tool that will help you to perform just this task.&lt;br /&gt;
&lt;br /&gt;
== Experimental Design ==&lt;br /&gt;
This tutorial will make use of the eeg1_1.dat, eeg1_2.dat and eeg1_3.dat sessions that are included with &#039;&#039;BCI2000&#039;&#039; and can be found in &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;.  In these sessions, the subject was asked to move both hands and both feet in a predefined pattern.  The resulting data was recorded using &#039;&#039;BCI2000&#039;&#039; and labeled using the TargetCode state variable such that TargetCode is equal to 1 when the subject is responding to the instruction to move both hands, 2 when the subject is responding to the instruction to move both feet and 0 when the subject is responding to the instruction to rest.  If you are relatively new to &#039;&#039;BCI2000&#039;&#039;, you may find it helpful to inspect the data files we&#039;ll be using with the &#039;&#039;BCI2000 Viewer&#039;&#039;.  Using this tool, you will be able to see how state variables like TargetCode change with respect to the data over time.  For instruction on how to inspect data using the &#039;&#039;BCI2000 Viewer&#039;&#039;, please see [[User Reference:BCI2000Viewer]].&lt;br /&gt;
&lt;br /&gt;
== Performing an Offline Analysis ==&lt;br /&gt;
&#039;&#039;BCI2000 Offline Analysis&#039;&#039; is a useful tool for finding good features for use in an online task such as controlling a 2-D cursor.  For this particular task, it is necessary to find two real or imagined actions whose corresponding responses will allow the subject to control up and down movement of the cursor.  Of course the level of success will depend significantly on how much the responses differ (i.e., the more the responses differ the easier it will be to tell them apart).  So, our task is simply to find two opposing actions that produce significantly different responses.  Given the experimental design, there are three combinations to choose from: rest vs. both hands, rest vs. both feet, both hands vs. both feet.  In the sections to follow, we will perform a thorough inspection of&lt;br /&gt;
rest vs. both feet but the same steps can be easily modified to produce similar results for the other two combinations.&lt;br /&gt;
&lt;br /&gt;
=== Generating a Feature Plot ===&lt;br /&gt;
&#039;&#039;BCI2000 Offline Analysis&#039;&#039; provides us with 3 different plots that will be useful during the analysis process.  One of these plots, the feature plot, provides an overview of the data and is useful for choosing potential features.  Let&#039;s begin by generating the feature plot:&lt;br /&gt;
&lt;br /&gt;
# Open &#039;&#039;BCI2000 Offline Analysis&#039;&#039;.  If this is your first time using &#039;&#039;BCI2000 Offline Analysis&#039;&#039;, you may want to review the instructions on how to install and run this application: [[User Reference:BCI2000 Offline Analysis]].&lt;br /&gt;
# Set the analysis parameters as follows:&lt;br /&gt;
## &#039;&#039;&#039;Analysis Domain:&#039;&#039;&#039; Choose &amp;quot;Frequency&amp;quot; in order to perform a frequency-domain analysis&lt;br /&gt;
## &#039;&#039;&#039;Acquisition Type:&#039;&#039;&#039; Choose &amp;quot;EEG&amp;quot; since the data we&#039;ll be working with in this section was recorded using an EEG.&lt;br /&gt;
## &#039;&#039;&#039;Data Files:&#039;&#039;&#039; Click the &amp;quot;Add&amp;quot; button and navigate to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;.  From there, select the files eeg1_1.dat, eeg1_2.dat and eeg1_3.dat and click &amp;quot;Open&amp;quot;.  To select multiple files, you&#039;ll need to first click on any one file and then, while holding down the control button on your keyboard, click the remaining files.&lt;br /&gt;
## &#039;&#039;&#039;Montage File:&#039;&#039;&#039;  Leave this blank.  The reason for doing so will be explained shortly.&lt;br /&gt;
## &#039;&#039;&#039;Target Condition 1:&#039;&#039;&#039; Enter the value &amp;quot;states.StimulusCode == 0&amp;quot;.  This instructs &#039;&#039;BCI2000 Offline Analysis&#039;&#039; to search the data for sections where the StimulusCode indicates that the subject was responding to the instruction to rest.&lt;br /&gt;
## &#039;&#039;&#039;Target Condition Label 1:&#039;&#039;&#039; The text entered here will be used to label data that is specific to condition 1.  Since condition 1 corresponds to sections of rest, type &amp;quot;Rest&amp;quot; into this field.&lt;br /&gt;
## &#039;&#039;&#039;Target Condition 2:&#039;&#039;&#039; Enter the value &amp;quot;states.StimulusCode == 2&amp;quot;.  This instructs &#039;&#039;BCI2000 Offline Analysis&#039;&#039; to search the data for sections where StimulusCode indicates that the subject was responding to the instruction to move both feet.&lt;br /&gt;
## &#039;&#039;&#039;Target Condition Label 2:&#039;&#039;&#039; The text entered here will be used to label data that is specific to condition 2.  Since condition 2 corresponds to sections where the subject was moving both feet, type &amp;quot;Both Feet&amp;quot; into this field.&lt;br /&gt;
## &#039;&#039;&#039;Trial Change Condition&#039;&#039;&#039; Enter the value &amp;quot;states.StimulusBegin == 1&amp;quot;.  This instructs &#039;&#039;BCI2000 Offline Analysis&#039;&#039; that the trial edges correspond to data samples where StimlusBegin becomes 1 or is 1 and becomes something else.  Please see [[User Reference:BCI2000Viewer]] for instructions on how use &#039;&#039;BCI2000 Viewer&#039;&#039; to see how state variables like StimulusBegin change over time with respect to the data.&lt;br /&gt;
## &#039;&#039;&#039;Spectra Channels:&#039;&#039;&#039;  Leave this blank.  The reason for doing so will become clear.&lt;br /&gt;
## &#039;&#039;&#039;Topo Frequencies:&#039;&#039;&#039;  Leave this blank.  The reason for doing so will become clear.&lt;br /&gt;
## &#039;&#039;&#039;Spatial Filter:&#039;&#039;&#039; Choose &amp;quot;Common Average Reference (CAR)&amp;quot;.  Typically, for frequency domain analyses, filtering the data with a simple spatial filter such as the CAR filter results in sharper, more useful plots.&lt;br /&gt;
## &#039;&#039;&#039;Ignore Warnings:&#039;&#039;&#039; Leave this field unchecked.  For more information on this field, please see [[User Reference:BCI2000 Offline Analysis]].&lt;br /&gt;
## &#039;&#039;&#039;Overwrite existing plots:&#039;&#039;&#039; If you have not yet run any analyses, this field should be disabled.  If it is enabled, it is best for the purposes of this tutorial to leave it checked.  Unchecking this box will instruct &#039;&#039;BCI2000 Offline Analysis&#039;&#039; to open new figures whenever it plots which may be useful in situations where you want to compare the results of one analysis against another.&lt;br /&gt;
# Click &amp;quot;Generate Plots&amp;quot;.  &lt;br /&gt;
&lt;br /&gt;
Once the analysis is complete, you will see a feature plot similar to the one below.  This plot displays the [[Glossary|r-squared]] values between the two distributions (i.e., the average signal for condition 1 and the average signal for condition 2) as a function of frequency and channel.&lt;br /&gt;
&lt;br /&gt;
[[Image:eeg1FeaturePlt.png|600px]]&lt;br /&gt;
&lt;br /&gt;
The feature plot provides an overview of the data.  Thus, it is typically the best place to start your analysis.  Using this plot, we can find potential features simply by looking for clusters of high [[Glossary|r-squared]] values.  In the generated feature plot, we notice some clusters centered around (31 Hz, Channel 18), (31 Hz, Channel 10), (19 Hz, Channel 10) and (19 Hz, Channel 16).  To estimate the effectiveness of these features, we will need to look at them in more detail.&lt;br /&gt;
&lt;br /&gt;
===Spectra and Topographies===&lt;br /&gt;
As stated previously, the feature plot is useful for gaining an overview of the data and determining some of the more potentially useful features.  &#039;&#039;BCI2000 Offline Analysis&#039;&#039; provides two more plots that allow us to look at these features in more detail.  To see how the data behaves at specific electrodes, we&#039;ll generate spectra plots - plots that show the energy as a function of frequency.  To see how the data behaves at a specific frequency, we&#039;ll generate the topographies - plots that show the [[Glossary|r-squared]] values with respect to the location of a given electrode.  In order to generate the topographies we will need to communicate the manner in which the electrodes were arranged.  This is done with a montage file.  While there is a montage file included with &#039;&#039;BCI2000&#039;&#039; that is suitable for the data we&#039;ll be analyzing here, you will likely need to create or modify montage files for future analyses.  For that reason, we recommend that you take the time now to familiarize yourself with the &#039;&#039;Eloc Helper&#039;&#039;.  In [[User Tutorial:Designing an Eloc File]], you will learn how to create a new montage file and modify an existing one so that you ultimately have your own montage file to use to complete this analysis.  If you prefer not to complete the &#039;&#039;Eloc Helper&#039;&#039; tutorial at this time, you will still be able to complete this tutorial using one of the montage files that comes with &#039;&#039;BCI2000&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
If you have finished designing your montage file or decided to use the one that&#039;s provide, please proceed to the steps below.  Note that these steps pick up from the steps outlined in the previous section for generating the feature plot:&lt;br /&gt;
&lt;br /&gt;
# Set the analysis parameters as follows:&lt;br /&gt;
## &#039;&#039;&#039;Montage File:&#039;&#039;&#039; Click the &amp;quot;Browse&amp;quot; button next to the field labeled &amp;quot;Montage Files&amp;quot; and browse to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;.  If you completed the &#039;&#039;Eloc Helper&#039;&#039; tutorial and would like to use the montage file you created, double-click &amp;lt;tt&amp;gt;myeeg64.loc&amp;lt;/tt&amp;gt;.  Otherwise, double-click &amp;lt;tt&amp;gt;eeg64.loc&amp;lt;/tt&amp;gt; to use the montage file that comes with &#039;&#039;BCI2000&#039;&#039;.&lt;br /&gt;
## &#039;&#039;&#039;Spectra Channels:&#039;&#039;&#039; In the previous section we found - by inspection of the feature plot - three channels that show considerable promise: 10, 16 and 18.  To generate spectra for these channels, enter &amp;quot;10 16 18&amp;quot; into this field.&lt;br /&gt;
## &#039;&#039;&#039;Topo Frequencies:&#039;&#039;&#039; In the previous section we found - by inspection of the feature plot - two frequencies that show considerable promise: 19 and 31 Hz.  To generate topographies for these frequencies, enter &amp;quot;19 31&amp;quot; into this field.&lt;br /&gt;
# Click &amp;quot;Generate Plots&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Once the analysis is complete, you will see the same feature plot as was generated in the previous section.  Additionally, you will see a spectra plot and topographies similar to the ones below.  In the spectra, we notice significant changes in spectral power at frequencies in the mu and beta ranges.  Typically we expect less power at these frequencies during activity than when at rest as is these case in the generated spectra.  The spectra for channels 16 and 18 also show significant differences in the lower frequencies (i.e., below the mu frequencies).  Fluctuations at these frequencies have not been shown typically to be correlated to motor responses and are likely due to noise.  Thus, we will want to avoid using these frequencies as possible feature candidates.  As a note, it is often the case that one potential feature appears to be the harmonic of another.  Take for example the case where one feature appeared at 11 Hz and the other at 22Hz.  If, in this case, one feature were a harmonic of the other, the two would be highly correlated and there would likely be little to no benefit of using both features as opposed to just one.  Very often, however, in the cases where there appears to be a harmonic relationship between two features, the features are very spatially dissimilar.  In this case, the two features may not have such a high correlation and may both be useful for online classification.&lt;br /&gt;
&lt;br /&gt;
[[Image:eeg1Spectra.png|600px]]&lt;br /&gt;
&lt;br /&gt;
The frequencies targeted in our analysis do not exhibit a harmonic relationship.  Thus, it is likely the two are not highly correlated.  The topographies below provide further evidence towards that assumption; notice the dissimilar spatial distributions for the two different frequencies.  The topographies are also useful for evaluating the how physiologically plausible the recorded responses are.  For instance, in the topographies below, the spatial distribution agrees with the expected spatial response for feet movement.  See the [[User Tutorial:Introduction to the Mu Rhythm#Physical Properties|User Tutorial:Introduction to the Mu Rhythm]] for more information about the physical properties of mu rhythms.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:eeg1Topos.png|600px]]&lt;br /&gt;
&lt;br /&gt;
===Choosing the Optimal Features===&lt;br /&gt;
Unfortunately, it is impossible to know which features will provide the best results.  We can only speculate.  The 3 plots we&#039;ve generated with &#039;&#039;BCI2000 Offline Analysis&#039;&#039;, however, will surely help to make our guess a well-educated one.&lt;br /&gt;
&lt;br /&gt;
From the feature plot we determined that the coordinates (31 Hz, Channel 18), (31 Hz, Channel 10), (19 Hz, Channel 10) and (19 Hz, Channel 16) may be effective features for online classification.  Using the topographies and spectra, we confirmed that the channels and frequencies or these features agree with our expectations (i.e., the frequencies are in the mu or beta range and the spatial response is focused over the area of the motor cortex typically responsible for foot movement).  We may, therefore, simply choose to use all of these features when attempting online control with this subject.  While each additional feature may possibly improve performance, however, it will certainly increase latency.  So, we will want to limit the number of features we select.  So far we have limited our choices to only 4 potential features.  To rule out some of these, we will consider the arrangement of the electrodes.  The image below is the montage corresponding to the data we are currently analyzing.&lt;br /&gt;
&lt;br /&gt;
[[Image:eloc64.png]]&lt;br /&gt;
&lt;br /&gt;
Notice that electrodes 10 and 18 are very close to each other.  We might, therefore, conclude that the (31 Hz, Channel 18) and (31 Hz, Channel 10) features may be highly correlated.  Looking at the spectra and topographies, we can see that at 31 Hz, the [[Glossary|r-squared]] values are slightly higher for channel 18 than they are for channel 10.  So, in this case, we have sufficient reason to eliminate (31 Hz, Channel 10) as a feature.  For a similar reason, we can eliminate (19 Hz, Channel 10).  This leaves us with two features: (31 Hz, Channel 18) and (19 Hz, Channel 16).&lt;br /&gt;
&lt;br /&gt;
===Testing Other Combinations===&lt;br /&gt;
In the previous section, we used &#039;&#039;BCI2000 Offline Analysis&#039;&#039; to compare rest vs. movement of both feet and found two features (i.e., frequency/channel combinations) that will be useful in determining which action the subject performed.  At this point it may be useful to repeat the process above for the other two combinations: rest vs. both hands, both hands vs. both feet.  Then, the best combination can be found by finding the best r-squared values amongst the three feature plots.&lt;br /&gt;
&lt;br /&gt;
==The Next Step==&lt;br /&gt;
At this point you should understand how to use &#039;&#039;BCI2000 Offline Analysis&#039;&#039; to help you choose effective features. Now, let&#039;s continue on to [[User Tutorial:Interpreting the Results]] where we&#039;ll take a look at some other results from the same subject and compare them to what we&#039;ve found here.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Tutorial:Obtaining Mu Rhythm Parameters in an Initial Session]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_an_Offline_Analysis_of_EEG_Data&amp;diff=3845</id>
		<title>User Tutorial:Performing an Offline Analysis of EEG Data</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_an_Offline_Analysis_of_EEG_Data&amp;diff=3845"/>
		<updated>2008-06-12T21:11:51Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Although the basic properties of the Mu rhythm are identical for all humans, its spatial pattern and exact frequency are unique for each individual and depend on the current state of that individual.  In order to facilitate online BCI, we must determine how properties like these change in response to a given action.  For best results, we seek to find actions that produce the greatest response.  &#039;&#039;BCI2000 Offline Analysis&#039;&#039; is a tool that will help you to perform just this task.&lt;br /&gt;
&lt;br /&gt;
== Experimental Design ==&lt;br /&gt;
This tutorial will make use of the eeg1_1.dat, eeg1_2.dat and eeg1_3.dat sessions that are included with &#039;&#039;BCI2000&#039;&#039; and can be found in &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;.  In these sessions, the subject was asked to move both hands and both feet in a predefined pattern.  The resulting data was recorded using &#039;&#039;BCI2000&#039;&#039; and labeled using the TargetCode state variable such that TargetCode is equal to 1 when the subject is responding to the instruction to move both hands, 2 when the subject is responding to the instruction to move both feet and 0 when the subject is responding to the instruction to rest.  If you are relatively new to &#039;&#039;BCI2000&#039;&#039;, you may find it helpful to inspect the data files we&#039;ll be using with the &#039;&#039;BCI2000 Viewer&#039;&#039;.  Using this tool, you will be able to see how state variables like TargetCode change with respect to the data over time.  For instruction on how to inspect data using the &#039;&#039;BCI2000 Viewer&#039;&#039;, please see [[User Reference:BCI2000Viewer]].&lt;br /&gt;
&lt;br /&gt;
== Performing an Offline Analysis ==&lt;br /&gt;
&#039;&#039;BCI2000 Offline Analysis&#039;&#039; is a useful tool for finding good features for use in an online task such as controlling a 2-D cursor.  For this particular task, it is necessary to find two real or imagined actions whose corresponding responses will allow the subject to control up and down movement of the cursor.  Of course the level of success will depend significantly on how much the responses differ (i.e., the more the responses differ the easier it will be to tell them apart).  So, our task is simply to find two opposing actions that produce significantly different responses.  Given the experimental design, there are three combinations to choose from: rest vs. both hands, rest vs. both feet, both hands vs. both feet.  In the sections to follow, we will perform a thorough inspection of&lt;br /&gt;
rest vs. both feet but the same steps can be easily modified to produce similar results for the other two combinations.&lt;br /&gt;
&lt;br /&gt;
=== Generating a Feature Plot ===&lt;br /&gt;
&#039;&#039;BCI2000 Offline Analysis&#039;&#039; provides us with 3 different plots that will be useful during the analysis process.  One of these plots, the feature plot, provides an overview of the data and is useful for choosing potential features.  Let&#039;s begin by generating the feature plot:&lt;br /&gt;
&lt;br /&gt;
# Open &#039;&#039;BCI2000 Offline Analysis&#039;&#039;.  If this is your first time using &#039;&#039;BCI2000 Offline Analysis&#039;&#039;, you may want to review the instructions on how to install and run this application: [[User Reference:BCI2000 Offline Analysis]].&lt;br /&gt;
# Set the analysis parameters as follows:&lt;br /&gt;
## &#039;&#039;&#039;Analysis Domain:&#039;&#039;&#039; Choose &amp;quot;Frequency&amp;quot; in order to perform a frequency-domain analysis&lt;br /&gt;
## &#039;&#039;&#039;Acquisition Type:&#039;&#039;&#039; Choose &amp;quot;EEG&amp;quot; since the data we&#039;ll be working with in this section was recorded using an EEG.&lt;br /&gt;
## &#039;&#039;&#039;Data Files:&#039;&#039;&#039; Click the &amp;quot;Add&amp;quot; button and navigate to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;.  From there, select the files eeg1_1.dat, eeg1_2.dat and eeg1_3.dat and click &amp;quot;Open&amp;quot;.  To select multiple files, you&#039;ll need to first click on any one file and then, while holding down the control button on your keyboard, click the remaining files.&lt;br /&gt;
## &#039;&#039;&#039;Montage File:&#039;&#039;&#039;  Leave this blank.  The reason for doing so will be explained shortly.&lt;br /&gt;
## &#039;&#039;&#039;Target Condition 1:&#039;&#039;&#039; Enter the value &amp;quot;states.TargetCode == 0&amp;quot;.  This instructs &#039;&#039;BCI2000 Offline Analysis&#039;&#039; to search the data for sections where the TargetCode indicates that the subject was responding to the instruction to rest.&lt;br /&gt;
## &#039;&#039;&#039;Target Condition Label 1:&#039;&#039;&#039; The text entered here will be used to label data that is specific to condition 1.  Since condition 1 corresponds to sections of rest, type &amp;quot;Rest&amp;quot; into this field.&lt;br /&gt;
## &#039;&#039;&#039;Target Condition 2:&#039;&#039;&#039; Enter the value &amp;quot;states.TargetCode == 2&amp;quot;.  This instructs &#039;&#039;BCI2000 Offline Analysis&#039;&#039; to search the data for sections where TargetCode indicates that the subject was responding to the instruction to move both feet.&lt;br /&gt;
## &#039;&#039;&#039;Target Condition Label 2:&#039;&#039;&#039; The text entered here will be used to label data that is specific to condition 2.  Since condition 2 corresponds to sections where the subject was moving both feet, type &amp;quot;Both Feet&amp;quot; into this field.&lt;br /&gt;
## &#039;&#039;&#039;Trial Change Condition&#039;&#039;&#039; Enter the value &amp;quot;states.IntertrialInterval == 1&amp;quot;.  This instructs &#039;&#039;BCI2000 Offline Analysis&#039;&#039; that the trial edges correspond to data samples where IntertrialInterval becomes 1 or is 1 and becomes something else.  Please see [[User Reference:BCI2000Viewer]] for instructions on how use &#039;&#039;BCI2000 Viewer&#039;&#039; to see how state variables like IntertrialInterval change over time with respect to the data.&lt;br /&gt;
## &#039;&#039;&#039;Spectra Channels:&#039;&#039;&#039;  Leave this blank.  The reason for doing so will become clear.&lt;br /&gt;
## &#039;&#039;&#039;Topo Frequencies:&#039;&#039;&#039;  Leave this blank.  The reason for doing so will become clear.&lt;br /&gt;
## &#039;&#039;&#039;Spatial Filter:&#039;&#039;&#039; Choose &amp;quot;Common Average Reference (CAR)&amp;quot;.  Typically, for frequency domain analyses, filtering the data with a simple spatial filter such as the CAR filter results in sharper, more useful plots.&lt;br /&gt;
## &#039;&#039;&#039;Ignore Warnings:&#039;&#039;&#039; Leave this field unchecked.  For more information on this field, please see [[User Reference:BCI2000 Offline Analysis]].&lt;br /&gt;
## &#039;&#039;&#039;Overwrite existing plots:&#039;&#039;&#039; If you have not yet run any analyses, this field should be disabled.  If it is enabled, it is best for the purposes of this tutorial to leave it checked.  Unchecking this box will instruct &#039;&#039;BCI2000 Offline Analysis&#039;&#039; to open new figures whenever it plots which may be useful in situations where you want to compare the results of one analysis against another.&lt;br /&gt;
# Click &amp;quot;Generate Plots&amp;quot;.  &lt;br /&gt;
&lt;br /&gt;
Once the analysis is complete, you will see a feature plot similar to the one below.  This plot displays the [[Glossary|r-squared]] values between the two distributions (i.e., the average signal for condition 1 and the average signal for condition 2) as a function of frequency and channel.&lt;br /&gt;
&lt;br /&gt;
[[Image:eeg1FeaturePlt.png|600px]]&lt;br /&gt;
&lt;br /&gt;
The feature plot provides an overview of the data.  Thus, it is typically the best place to start your analysis.  Using this plot, we can find potential features simply by looking for clusters of high [[Glossary|r-squared]] values.  In the generated feature plot, we notice some clusters centered around (31 Hz, Channel 18), (31 Hz, Channel 10), (19 Hz, Channel 10) and (19 Hz, Channel 16).  To estimate the effectiveness of these features, we will need to look at them in more detail.&lt;br /&gt;
&lt;br /&gt;
===Spectra and Topographies===&lt;br /&gt;
As stated previously, the feature plot is useful for gaining an overview of the data and determining some of the more potentially useful features.  &#039;&#039;BCI2000 Offline Analysis&#039;&#039; provides two more plots that allow us to look at these features in more detail.  To see how the data behaves at specific electrodes, we&#039;ll generate spectra plots - plots that show the energy as a function of frequency.  To see how the data behaves at a specific frequency, we&#039;ll generate the topographies - plots that show the [[Glossary|r-squared]] values with respect to the location of a given electrode.  In order to generate the topographies we will need to communicate the manner in which the electrodes were arranged.  This is done with a montage file.  While there is a montage file included with &#039;&#039;BCI2000&#039;&#039; that is suitable for the data we&#039;ll be analyzing here, you will likely need to create or modify montage files for future analyses.  For that reason, we recommend that you take the time now to familiarize yourself with the &#039;&#039;Eloc Helper&#039;&#039;.  In [[User Tutorial:Designing an Eloc File]], you will learn how to create a new montage file and modify an existing one so that you ultimately have your own montage file to use to complete this analysis.  If you prefer not to complete the &#039;&#039;Eloc Helper&#039;&#039; tutorial at this time, you will still be able to complete this tutorial using one of the montage files that comes with &#039;&#039;BCI2000&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
If you have finished designing your montage file or decided to use the one that&#039;s provide, please proceed to the steps below.  Note that these steps pick up from the steps outlined in the previous section for generating the feature plot:&lt;br /&gt;
&lt;br /&gt;
# Set the analysis parameters as follows:&lt;br /&gt;
## &#039;&#039;&#039;Montage File:&#039;&#039;&#039; Click the &amp;quot;Browse&amp;quot; button next to the field labeled &amp;quot;Montage Files&amp;quot; and browse to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;.  If you completed the &#039;&#039;Eloc Helper&#039;&#039; tutorial and would like to use the montage file you created, double-click &amp;lt;tt&amp;gt;myeeg64.loc&amp;lt;/tt&amp;gt;.  Otherwise, double-click &amp;lt;tt&amp;gt;eeg64.loc&amp;lt;/tt&amp;gt; to use the montage file that comes with &#039;&#039;BCI2000&#039;&#039;.&lt;br /&gt;
## &#039;&#039;&#039;Spectra Channels:&#039;&#039;&#039; In the previous section we found - by inspection of the feature plot - three channels that show considerable promise: 10, 16 and 18.  To generate spectra for these channels, enter &amp;quot;10 16 18&amp;quot; into this field.&lt;br /&gt;
## &#039;&#039;&#039;Topo Frequencies:&#039;&#039;&#039; In the previous section we found - by inspection of the feature plot - two frequencies that show considerable promise: 19 and 31 Hz.  To generate topographies for these frequencies, enter &amp;quot;19 31&amp;quot; into this field.&lt;br /&gt;
# Click &amp;quot;Generate Plots&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Once the analysis is complete, you will see the same feature plot as was generated in the previous section.  Additionally, you will see a spectra plot and topographies similar to the ones below.  In the spectra, we notice significant changes in spectral power at frequencies in the mu and beta ranges.  Typically we expect less power at these frequencies during activity than when at rest as is these case in the generated spectra.  The spectra for channels 16 and 18 also show significant differences in the lower frequencies (i.e., below the mu frequencies).  Fluctuations at these frequencies have not been shown typically to be correlated to motor responses and are likely due to noise.  Thus, we will want to avoid using these frequencies as possible feature candidates.  As a note, it is often the case that one potential feature appears to be the harmonic of another.  Take for example the case where one feature appeared at 11 Hz and the other at 22Hz.  If, in this case, one feature were a harmonic of the other, the two would be highly correlated and there would likely be little to no benefit of using both features as opposed to just one.  Very often, however, in the cases where there appears to be a harmonic relationship between two features, the features are very spatially dissimilar.  In this case, the two features may not have such a high correlation and may both be useful for online classification.&lt;br /&gt;
&lt;br /&gt;
[[Image:eeg1Spectra.png|600px]]&lt;br /&gt;
&lt;br /&gt;
The frequencies targeted in our analysis do not exhibit a harmonic relationship.  Thus, it is likely the two are not highly correlated.  The topographies below provide further evidence towards that assumption; notice the dissimilar spatial distributions for the two different frequencies.  The topographies are also useful for evaluating the how physiologically plausible the recorded responses are.  For instance, in the topographies below, the spatial distribution agrees with the expected spatial response for feet movement.  See the [[User Tutorial:Introduction to the Mu Rhythm#Physical Properties|User Tutorial:Introduction to the Mu Rhythm]] for more information about the physical properties of mu rhythms.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:eeg1Topos.png|600px]]&lt;br /&gt;
&lt;br /&gt;
===Choosing the Optimal Features===&lt;br /&gt;
Unfortunately, it is impossible to know which features will provide the best results.  We can only speculate.  The 3 plots we&#039;ve generated with &#039;&#039;BCI2000 Offline Analysis&#039;&#039;, however, will surely help to make our guess a well-educated one.&lt;br /&gt;
&lt;br /&gt;
From the feature plot we determined that the coordinates (31 Hz, Channel 18), (31 Hz, Channel 10), (19 Hz, Channel 10) and (19 Hz, Channel 16) may be effective features for online classification.  Using the topographies and spectra, we confirmed that the channels and frequencies or these features agree with our expectations (i.e., the frequencies are in the mu or beta range and the spatial response is focused over the area of the motor cortex typically responsible for foot movement).  We may, therefore, simply choose to use all of these features when attempting online control with this subject.  While each additional feature may possibly improve performance, however, it will certainly increase latency.  So, we will want to limit the number of features we select.  So far we have limited our choices to only 4 potential features.  To rule out some of these, we will consider the arrangement of the electrodes.  The image below is the montage corresponding to the data we are currently analyzing.&lt;br /&gt;
&lt;br /&gt;
[[Image:eloc64.png]]&lt;br /&gt;
&lt;br /&gt;
Notice that electrodes 10 and 18 are very close to each other.  We might, therefore, conclude that the (31 Hz, Channel 18) and (31 Hz, Channel 10) features may be highly correlated.  Looking at the spectra and topographies, we can see that at 31 Hz, the [[Glossary|r-squared]] values are slightly higher for channel 18 than they are for channel 10.  So, in this case, we have sufficient reason to eliminate (31 Hz, Channel 10) as a feature.  For a similar reason, we can eliminate (19 Hz, Channel 10).  This leaves us with two features: (31 Hz, Channel 18) and (19 Hz, Channel 16).&lt;br /&gt;
&lt;br /&gt;
===Testing Other Combinations===&lt;br /&gt;
In the previous section, we used &#039;&#039;BCI2000 Offline Analysis&#039;&#039; to compare rest vs. movement of both feet and found two features (i.e., frequency/channel combinations) that will be useful in determining which action the subject performed.  At this point it may be useful to repeat the process above for the other two combinations: rest vs. both hands, both hands vs. both feet.  Then, the best combination can be found by finding the best r-squared values amongst the three feature plots.&lt;br /&gt;
&lt;br /&gt;
==The Next Step==&lt;br /&gt;
At this point you should understand how to use &#039;&#039;BCI2000 Offline Analysis&#039;&#039; to help you choose effective features. Now, let&#039;s continue on to [[User Tutorial:Interpreting the Results]] where we&#039;ll take a look at some other results from the same subject and compare them to what we&#039;ve found here.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Tutorial:Obtaining Mu Rhythm Parameters in an Initial Session]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3844</id>
		<title>Contributions:AmpServerProADC</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3844"/>
		<updated>2008-06-11T22:14:52Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Versioning */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Synopsis==&lt;br /&gt;
The &#039;&#039;AmpServerProADC&#039;&#039; component implements the client side of EGI&#039;s TCP/IP-based Amp Server Pro (ASP) protocol. Thus, it may be used to interface BCI2000 with an EGI amplifier managed by an ASP server.&lt;br /&gt;
&lt;br /&gt;
==Location==&lt;br /&gt;
http://{{SERVERNAME}}/svn/trunk/src/contrib/SignalSource/AmpServerPro&lt;br /&gt;
&lt;br /&gt;
==Versioning==&lt;br /&gt;
===Author===&lt;br /&gt;
Joshua Fialkoff, (c) 2008 Wadsworth Center, New York State Department of Health.&lt;br /&gt;
&lt;br /&gt;
===Version History===&lt;br /&gt;
* V1.00 - 06/11/2008 - First working version&lt;br /&gt;
===Source Code Revisions===&lt;br /&gt;
*Initial development: 1998&lt;br /&gt;
*Tested under: 1998&lt;br /&gt;
*Known to compile under: 1998&lt;br /&gt;
*Broken since: --&lt;br /&gt;
&lt;br /&gt;
==Using the Amp Server Pro Source Module==&lt;br /&gt;
===Starting Amp Server Pro===&lt;br /&gt;
Amp Server Pro is capable of working with many amplifiers concurrently.  To begin using Amp Server Pro with BCI2000, ensure that at least one amplifier is connected to the server.  If no amplifier is connected, the Amp Server software emulates an amplifier.  If you choose to use the emulated amplifier, you should expect to see a smooth sine wave signal for all channels.  To start the amp server simply navigate to the Amp Server Pro directory and double click the file named &amp;quot;&amp;lt;tt&amp;gt;Amp Server&amp;lt;/tt&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Compiling the Amp Server Pro Source Module===&lt;br /&gt;
The Amp Server Pro Source Module is not considered to be part of the BCI2000 core and must be compiled from the source code before it can be used.  To compile the Amp Server Pro module you will need Borland C++ Builder v6.0 or later.  To proceed, please follow the instructions below:&lt;br /&gt;
# Navigate to &amp;lt;tt&amp;gt;BCI2000/src/contrib/SignalSource/AmpServerPro&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# Double click &amp;lt;tt&amp;gt;AmpServerPro.bpr&amp;lt;/tt&amp;gt; to open the Amp Server Pro project file in the Borland C++ Builder.&lt;br /&gt;
# From the file menu click Project &amp;gt; Make AmpServerPro.&lt;br /&gt;
&lt;br /&gt;
===Creating a BCI2000 Batch File===&lt;br /&gt;
Although it is not necessary, it is convenient to create a batch file to run BCI2000 with the Amp Server Pro module.  To create the batch file, open up a text editor and then copy the text below into a blank text file:&lt;br /&gt;
 cd ..\prog&lt;br /&gt;
 start operat.exe&lt;br /&gt;
 start AmpServerPro.exe 127.0.0.1&lt;br /&gt;
 start ARSignalProcessing.exe 127.0.0.1&lt;br /&gt;
 start CursorTask.exe 127.0.0&lt;br /&gt;
Then, save the file to &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.  You may want to modify lines 3 and 4 to suit the needs of your experiment.  Please browse the files in &amp;lt;tt&amp;gt;BCI2000/batch/&amp;lt;/tt&amp;gt; for other example batch files.&lt;br /&gt;
&lt;br /&gt;
===Using Amp Server Pro with BCI2000===&lt;br /&gt;
Once you have started the Amp Server and compiled the Amp Server Pro module, you can begin collecting data with BCI2000 by following the steps below.&lt;br /&gt;
# Double click &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt; - the batch file that was created in the previous section - to start BCI2000.&lt;br /&gt;
# Click the &amp;quot;Configure&amp;quot; button.&lt;br /&gt;
# Set the appropriate parameters.  The Amp Server Pro module is initialized with a number of parameters which can be configured from the &amp;quot;Source&amp;quot; tab.  A summary and description of these parameters can be found below.&lt;br /&gt;
# Click &amp;quot;Set Config&amp;quot; and attend to any errors reported by the BCI2000 operator.  If there were any errors, repeat this step.&lt;br /&gt;
# Click &amp;quot;Start&amp;quot; to begin your experiment.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
===ServerIP===&lt;br /&gt;
The IP address of the computer running the Amp Server software (e.g., 192.168.0.3).&lt;br /&gt;
&lt;br /&gt;
===CommandPort===&lt;br /&gt;
The port number of the port used for command layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9877 should be correct.&lt;br /&gt;
&lt;br /&gt;
===NotificationPort===&lt;br /&gt;
The port number of the port used for notification layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9878 should be correct.&lt;br /&gt;
&lt;br /&gt;
===StreamPort===&lt;br /&gt;
The port number of the port used for data streaming.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9879 should be correct.&lt;br /&gt;
&lt;br /&gt;
===AmplifierID===&lt;br /&gt;
Amp Server Pro is capable of managing many amplifiers concurrently.  BCI2000, however, operates with a single amplifier.  If only a single amplifier is connected, you may enter the value &amp;quot;auto&amp;quot; here and allow BCI2000 to automatically determine the Amplifier ID.  If multiple amplifiers are connected, however, you must enter a valid ID from 0 to N where N is the number of amplifiers connected.&lt;br /&gt;
&lt;br /&gt;
==States==&lt;br /&gt;
The Amp Server Pro source module introduces no additional states.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Reference:Filters]], [[Contributions:ADCs]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Contributions]][[Category:Data Acquisition]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3843</id>
		<title>Contributions:AmpServerProADC</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3843"/>
		<updated>2008-06-11T22:01:33Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* ServerIP */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Synopsis==&lt;br /&gt;
The &#039;&#039;AmpServerProADC&#039;&#039; component implements the client side of EGI&#039;s TCP/IP-based Amp Server Pro (ASP) protocol. Thus, it may be used to interface BCI2000 with an EGI amplifier managed by an ASP server.&lt;br /&gt;
&lt;br /&gt;
==Location==&lt;br /&gt;
http://{{SERVERNAME}}/svn/trunk/src/contrib/SignalSource/AmpServerPro&lt;br /&gt;
&lt;br /&gt;
==Versioning==&lt;br /&gt;
===Author===&lt;br /&gt;
Joshua Fialkoff, (c) 2008 Wadsworth Center, New York State Department of Health.&lt;br /&gt;
&lt;br /&gt;
===Version History===&lt;br /&gt;
* V1.00 - 06/04/2008 - First working version&lt;br /&gt;
===Source Code Revisions===&lt;br /&gt;
*Initial development: 268&lt;br /&gt;
*Tested under: 1110&lt;br /&gt;
*Known to compile under: 1528&lt;br /&gt;
*Broken since: --&lt;br /&gt;
&lt;br /&gt;
==Using the Amp Server Pro Source Module==&lt;br /&gt;
===Starting Amp Server Pro===&lt;br /&gt;
Amp Server Pro is capable of working with many amplifiers concurrently.  To begin using Amp Server Pro with BCI2000, ensure that at least one amplifier is connected to the server.  If no amplifier is connected, the Amp Server software emulates an amplifier.  If you choose to use the emulated amplifier, you should expect to see a smooth sine wave signal for all channels.  To start the amp server simply navigate to the Amp Server Pro directory and double click the file named &amp;quot;&amp;lt;tt&amp;gt;Amp Server&amp;lt;/tt&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Compiling the Amp Server Pro Source Module===&lt;br /&gt;
The Amp Server Pro Source Module is not considered to be part of the BCI2000 core and must be compiled from the source code before it can be used.  To compile the Amp Server Pro module you will need Borland C++ Builder v6.0 or later.  To proceed, please follow the instructions below:&lt;br /&gt;
# Navigate to &amp;lt;tt&amp;gt;BCI2000/src/contrib/SignalSource/AmpServerPro&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# Double click &amp;lt;tt&amp;gt;AmpServerPro.bpr&amp;lt;/tt&amp;gt; to open the Amp Server Pro project file in the Borland C++ Builder.&lt;br /&gt;
# From the file menu click Project &amp;gt; Make AmpServerPro.&lt;br /&gt;
&lt;br /&gt;
===Creating a BCI2000 Batch File===&lt;br /&gt;
Although it is not necessary, it is convenient to create a batch file to run BCI2000 with the Amp Server Pro module.  To create the batch file, open up a text editor and then copy the text below into a blank text file:&lt;br /&gt;
 cd ..\prog&lt;br /&gt;
 start operat.exe&lt;br /&gt;
 start AmpServerPro.exe 127.0.0.1&lt;br /&gt;
 start ARSignalProcessing.exe 127.0.0.1&lt;br /&gt;
 start CursorTask.exe 127.0.0&lt;br /&gt;
Then, save the file to &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.  You may want to modify lines 3 and 4 to suit the needs of your experiment.  Please browse the files in &amp;lt;tt&amp;gt;BCI2000/batch/&amp;lt;/tt&amp;gt; for other example batch files.&lt;br /&gt;
&lt;br /&gt;
===Using Amp Server Pro with BCI2000===&lt;br /&gt;
Once you have started the Amp Server and compiled the Amp Server Pro module, you can begin collecting data with BCI2000 by following the steps below.&lt;br /&gt;
# Double click &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt; - the batch file that was created in the previous section - to start BCI2000.&lt;br /&gt;
# Click the &amp;quot;Configure&amp;quot; button.&lt;br /&gt;
# Set the appropriate parameters.  The Amp Server Pro module is initialized with a number of parameters which can be configured from the &amp;quot;Source&amp;quot; tab.  A summary and description of these parameters can be found below.&lt;br /&gt;
# Click &amp;quot;Set Config&amp;quot; and attend to any errors reported by the BCI2000 operator.  If there were any errors, repeat this step.&lt;br /&gt;
# Click &amp;quot;Start&amp;quot; to begin your experiment.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
===ServerIP===&lt;br /&gt;
The IP address of the computer running the Amp Server software (e.g., 192.168.0.3).&lt;br /&gt;
&lt;br /&gt;
===CommandPort===&lt;br /&gt;
The port number of the port used for command layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9877 should be correct.&lt;br /&gt;
&lt;br /&gt;
===NotificationPort===&lt;br /&gt;
The port number of the port used for notification layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9878 should be correct.&lt;br /&gt;
&lt;br /&gt;
===StreamPort===&lt;br /&gt;
The port number of the port used for data streaming.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9879 should be correct.&lt;br /&gt;
&lt;br /&gt;
===AmplifierID===&lt;br /&gt;
Amp Server Pro is capable of managing many amplifiers concurrently.  BCI2000, however, operates with a single amplifier.  If only a single amplifier is connected, you may enter the value &amp;quot;auto&amp;quot; here and allow BCI2000 to automatically determine the Amplifier ID.  If multiple amplifiers are connected, however, you must enter a valid ID from 0 to N where N is the number of amplifiers connected.&lt;br /&gt;
&lt;br /&gt;
==States==&lt;br /&gt;
The Amp Server Pro source module introduces no additional states.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Reference:Filters]], [[Contributions:ADCs]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Contributions]][[Category:Data Acquisition]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3842</id>
		<title>Contributions:AmpServerProADC</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3842"/>
		<updated>2008-06-11T22:00:17Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Creating a BCI2000 Batch File */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Synopsis==&lt;br /&gt;
The &#039;&#039;AmpServerProADC&#039;&#039; component implements the client side of EGI&#039;s TCP/IP-based Amp Server Pro (ASP) protocol. Thus, it may be used to interface BCI2000 with an EGI amplifier managed by an ASP server.&lt;br /&gt;
&lt;br /&gt;
==Location==&lt;br /&gt;
http://{{SERVERNAME}}/svn/trunk/src/contrib/SignalSource/AmpServerPro&lt;br /&gt;
&lt;br /&gt;
==Versioning==&lt;br /&gt;
===Author===&lt;br /&gt;
Joshua Fialkoff, (c) 2008 Wadsworth Center, New York State Department of Health.&lt;br /&gt;
&lt;br /&gt;
===Version History===&lt;br /&gt;
* V1.00 - 06/04/2008 - First working version&lt;br /&gt;
===Source Code Revisions===&lt;br /&gt;
*Initial development: 268&lt;br /&gt;
*Tested under: 1110&lt;br /&gt;
*Known to compile under: 1528&lt;br /&gt;
*Broken since: --&lt;br /&gt;
&lt;br /&gt;
==Using the Amp Server Pro Source Module==&lt;br /&gt;
===Starting Amp Server Pro===&lt;br /&gt;
Amp Server Pro is capable of working with many amplifiers concurrently.  To begin using Amp Server Pro with BCI2000, ensure that at least one amplifier is connected to the server.  If no amplifier is connected, the Amp Server software emulates an amplifier.  If you choose to use the emulated amplifier, you should expect to see a smooth sine wave signal for all channels.  To start the amp server simply navigate to the Amp Server Pro directory and double click the file named &amp;quot;&amp;lt;tt&amp;gt;Amp Server&amp;lt;/tt&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Compiling the Amp Server Pro Source Module===&lt;br /&gt;
The Amp Server Pro Source Module is not considered to be part of the BCI2000 core and must be compiled from the source code before it can be used.  To compile the Amp Server Pro module you will need Borland C++ Builder v6.0 or later.  To proceed, please follow the instructions below:&lt;br /&gt;
# Navigate to &amp;lt;tt&amp;gt;BCI2000/src/contrib/SignalSource/AmpServerPro&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# Double click &amp;lt;tt&amp;gt;AmpServerPro.bpr&amp;lt;/tt&amp;gt; to open the Amp Server Pro project file in the Borland C++ Builder.&lt;br /&gt;
# From the file menu click Project &amp;gt; Make AmpServerPro.&lt;br /&gt;
&lt;br /&gt;
===Creating a BCI2000 Batch File===&lt;br /&gt;
Although it is not necessary, it is convenient to create a batch file to run BCI2000 with the Amp Server Pro module.  To create the batch file, open up a text editor and then copy the text below into a blank text file:&lt;br /&gt;
 cd ..\prog&lt;br /&gt;
 start operat.exe&lt;br /&gt;
 start AmpServerPro.exe 127.0.0.1&lt;br /&gt;
 start ARSignalProcessing.exe 127.0.0.1&lt;br /&gt;
 start CursorTask.exe 127.0.0&lt;br /&gt;
Then, save the file to &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.  You may want to modify lines 3 and 4 to suit the needs of your experiment.  Please browse the files in &amp;lt;tt&amp;gt;BCI2000/batch/&amp;lt;/tt&amp;gt; for other example batch files.&lt;br /&gt;
&lt;br /&gt;
===Using Amp Server Pro with BCI2000===&lt;br /&gt;
Once you have started the Amp Server and compiled the Amp Server Pro module, you can begin collecting data with BCI2000 by following the steps below.&lt;br /&gt;
# Double click &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt; - the batch file that was created in the previous section - to start BCI2000.&lt;br /&gt;
# Click the &amp;quot;Configure&amp;quot; button.&lt;br /&gt;
# Set the appropriate parameters.  The Amp Server Pro module is initialized with a number of parameters which can be configured from the &amp;quot;Source&amp;quot; tab.  A summary and description of these parameters can be found below.&lt;br /&gt;
# Click &amp;quot;Set Config&amp;quot; and attend to any errors reported by the BCI2000 operator.  If there were any errors, repeat this step.&lt;br /&gt;
# Click &amp;quot;Start&amp;quot; to begin your experiment.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
===ServerIP===&lt;br /&gt;
IP address of the computer running the Amp Server software (e.g., 192.168.0.3).&lt;br /&gt;
&lt;br /&gt;
===CommandPort===&lt;br /&gt;
The port number of the port used for command layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9877 should be correct.&lt;br /&gt;
&lt;br /&gt;
===NotificationPort===&lt;br /&gt;
The port number of the port used for notification layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9878 should be correct.&lt;br /&gt;
&lt;br /&gt;
===StreamPort===&lt;br /&gt;
The port number of the port used for data streaming.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9879 should be correct.&lt;br /&gt;
&lt;br /&gt;
===AmplifierID===&lt;br /&gt;
Amp Server Pro is capable of managing many amplifiers concurrently.  BCI2000, however, operates with a single amplifier.  If only a single amplifier is connected, you may enter the value &amp;quot;auto&amp;quot; here and allow BCI2000 to automatically determine the Amplifier ID.  If multiple amplifiers are connected, however, you must enter a valid ID from 0 to N where N is the number of amplifiers connected.&lt;br /&gt;
&lt;br /&gt;
==States==&lt;br /&gt;
The Amp Server Pro source module introduces no additional states.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Reference:Filters]], [[Contributions:ADCs]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Contributions]][[Category:Data Acquisition]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3841</id>
		<title>Contributions:AmpServerProADC</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3841"/>
		<updated>2008-06-11T21:59:48Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Creating a BCI2000 Batch File */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Synopsis==&lt;br /&gt;
The &#039;&#039;AmpServerProADC&#039;&#039; component implements the client side of EGI&#039;s TCP/IP-based Amp Server Pro (ASP) protocol. Thus, it may be used to interface BCI2000 with an EGI amplifier managed by an ASP server.&lt;br /&gt;
&lt;br /&gt;
==Location==&lt;br /&gt;
http://{{SERVERNAME}}/svn/trunk/src/contrib/SignalSource/AmpServerPro&lt;br /&gt;
&lt;br /&gt;
==Versioning==&lt;br /&gt;
===Author===&lt;br /&gt;
Joshua Fialkoff, (c) 2008 Wadsworth Center, New York State Department of Health.&lt;br /&gt;
&lt;br /&gt;
===Version History===&lt;br /&gt;
* V1.00 - 06/04/2008 - First working version&lt;br /&gt;
===Source Code Revisions===&lt;br /&gt;
*Initial development: 268&lt;br /&gt;
*Tested under: 1110&lt;br /&gt;
*Known to compile under: 1528&lt;br /&gt;
*Broken since: --&lt;br /&gt;
&lt;br /&gt;
==Using the Amp Server Pro Source Module==&lt;br /&gt;
===Starting Amp Server Pro===&lt;br /&gt;
Amp Server Pro is capable of working with many amplifiers concurrently.  To begin using Amp Server Pro with BCI2000, ensure that at least one amplifier is connected to the server.  If no amplifier is connected, the Amp Server software emulates an amplifier.  If you choose to use the emulated amplifier, you should expect to see a smooth sine wave signal for all channels.  To start the amp server simply navigate to the Amp Server Pro directory and double click the file named &amp;quot;&amp;lt;tt&amp;gt;Amp Server&amp;lt;/tt&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Compiling the Amp Server Pro Source Module===&lt;br /&gt;
The Amp Server Pro Source Module is not considered to be part of the BCI2000 core and must be compiled from the source code before it can be used.  To compile the Amp Server Pro module you will need Borland C++ Builder v6.0 or later.  To proceed, please follow the instructions below:&lt;br /&gt;
# Navigate to &amp;lt;tt&amp;gt;BCI2000/src/contrib/SignalSource/AmpServerPro&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# Double click &amp;lt;tt&amp;gt;AmpServerPro.bpr&amp;lt;/tt&amp;gt; to open the Amp Server Pro project file in the Borland C++ Builder.&lt;br /&gt;
# From the file menu click Project &amp;gt; Make AmpServerPro.&lt;br /&gt;
&lt;br /&gt;
===Creating a BCI2000 Batch File===&lt;br /&gt;
Although it is not necessary, it is convenient to create a batch file to run BCI2000 with the Amp Server Pro module.  To create the batch file, open up a text editor and then copy the text below into a blank text file:&lt;br /&gt;
 cd ..\prog&lt;br /&gt;
 start operat.exe&lt;br /&gt;
 start AmpServerPro.exe 127.0.0.1&lt;br /&gt;
 start ARSignalProcessing.exe 127.0.0.1&lt;br /&gt;
 start CursorTask.exe 127.0.0&lt;br /&gt;
Then, save the files to &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.  You may want to modify lines 3 and 4 to suit the needs of your experiment.  Please browse the files in &amp;lt;tt&amp;gt;BCI2000/batch/&amp;lt;/tt&amp;gt; for other example batch files.&lt;br /&gt;
&lt;br /&gt;
===Using Amp Server Pro with BCI2000===&lt;br /&gt;
Once you have started the Amp Server and compiled the Amp Server Pro module, you can begin collecting data with BCI2000 by following the steps below.&lt;br /&gt;
# Double click &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt; - the batch file that was created in the previous section - to start BCI2000.&lt;br /&gt;
# Click the &amp;quot;Configure&amp;quot; button.&lt;br /&gt;
# Set the appropriate parameters.  The Amp Server Pro module is initialized with a number of parameters which can be configured from the &amp;quot;Source&amp;quot; tab.  A summary and description of these parameters can be found below.&lt;br /&gt;
# Click &amp;quot;Set Config&amp;quot; and attend to any errors reported by the BCI2000 operator.  If there were any errors, repeat this step.&lt;br /&gt;
# Click &amp;quot;Start&amp;quot; to begin your experiment.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
===ServerIP===&lt;br /&gt;
IP address of the computer running the Amp Server software (e.g., 192.168.0.3).&lt;br /&gt;
&lt;br /&gt;
===CommandPort===&lt;br /&gt;
The port number of the port used for command layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9877 should be correct.&lt;br /&gt;
&lt;br /&gt;
===NotificationPort===&lt;br /&gt;
The port number of the port used for notification layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9878 should be correct.&lt;br /&gt;
&lt;br /&gt;
===StreamPort===&lt;br /&gt;
The port number of the port used for data streaming.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9879 should be correct.&lt;br /&gt;
&lt;br /&gt;
===AmplifierID===&lt;br /&gt;
Amp Server Pro is capable of managing many amplifiers concurrently.  BCI2000, however, operates with a single amplifier.  If only a single amplifier is connected, you may enter the value &amp;quot;auto&amp;quot; here and allow BCI2000 to automatically determine the Amplifier ID.  If multiple amplifiers are connected, however, you must enter a valid ID from 0 to N where N is the number of amplifiers connected.&lt;br /&gt;
&lt;br /&gt;
==States==&lt;br /&gt;
The Amp Server Pro source module introduces no additional states.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Reference:Filters]], [[Contributions:ADCs]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Contributions]][[Category:Data Acquisition]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3840</id>
		<title>Contributions:AmpServerProADC</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3840"/>
		<updated>2008-06-11T21:58:24Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Creating a BCI2000 Batch File */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Synopsis==&lt;br /&gt;
The &#039;&#039;AmpServerProADC&#039;&#039; component implements the client side of EGI&#039;s TCP/IP-based Amp Server Pro (ASP) protocol. Thus, it may be used to interface BCI2000 with an EGI amplifier managed by an ASP server.&lt;br /&gt;
&lt;br /&gt;
==Location==&lt;br /&gt;
http://{{SERVERNAME}}/svn/trunk/src/contrib/SignalSource/AmpServerPro&lt;br /&gt;
&lt;br /&gt;
==Versioning==&lt;br /&gt;
===Author===&lt;br /&gt;
Joshua Fialkoff, (c) 2008 Wadsworth Center, New York State Department of Health.&lt;br /&gt;
&lt;br /&gt;
===Version History===&lt;br /&gt;
* V1.00 - 06/04/2008 - First working version&lt;br /&gt;
===Source Code Revisions===&lt;br /&gt;
*Initial development: 268&lt;br /&gt;
*Tested under: 1110&lt;br /&gt;
*Known to compile under: 1528&lt;br /&gt;
*Broken since: --&lt;br /&gt;
&lt;br /&gt;
==Using the Amp Server Pro Source Module==&lt;br /&gt;
===Starting Amp Server Pro===&lt;br /&gt;
Amp Server Pro is capable of working with many amplifiers concurrently.  To begin using Amp Server Pro with BCI2000, ensure that at least one amplifier is connected to the server.  If no amplifier is connected, the Amp Server software emulates an amplifier.  If you choose to use the emulated amplifier, you should expect to see a smooth sine wave signal for all channels.  To start the amp server simply navigate to the Amp Server Pro directory and double click the file named &amp;quot;&amp;lt;tt&amp;gt;Amp Server&amp;lt;/tt&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Compiling the Amp Server Pro Source Module===&lt;br /&gt;
The Amp Server Pro Source Module is not considered to be part of the BCI2000 core and must be compiled from the source code before it can be used.  To compile the Amp Server Pro module you will need Borland C++ Builder v6.0 or later.  To proceed, please follow the instructions below:&lt;br /&gt;
# Navigate to &amp;lt;tt&amp;gt;BCI2000/src/contrib/SignalSource/AmpServerPro&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# Double click &amp;lt;tt&amp;gt;AmpServerPro.bpr&amp;lt;/tt&amp;gt; to open the Amp Server Pro project file in the Borland C++ Builder.&lt;br /&gt;
# From the file menu click Project &amp;gt; Make AmpServerPro.&lt;br /&gt;
&lt;br /&gt;
===Creating a BCI2000 Batch File===&lt;br /&gt;
Although it is not necessary, compiling a batch file will make it easier to run BCI2000 with the Amp Server Pro module.  To create the batch file, open up a text editor and then copy the text below into a blank text file:&lt;br /&gt;
 cd ..\prog&lt;br /&gt;
 start operat.exe&lt;br /&gt;
 start AmpServerPro.exe 127.0.0.1&lt;br /&gt;
 start ARSignalProcessing.exe 127.0.0.1&lt;br /&gt;
 start CursorTask.exe 127.0.0&lt;br /&gt;
Then, save the files to &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.  You may want to modify lines 3 and 4 to suit the needs of your experiment.  Please browse the files in &amp;lt;tt&amp;gt;BCI2000/batch/&amp;lt;/tt&amp;gt; for other example batch files.&lt;br /&gt;
&lt;br /&gt;
===Using Amp Server Pro with BCI2000===&lt;br /&gt;
Once you have started the Amp Server and compiled the Amp Server Pro module, you can begin collecting data with BCI2000 by following the steps below.&lt;br /&gt;
# Double click &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt; - the batch file that was created in the previous section - to start BCI2000.&lt;br /&gt;
# Click the &amp;quot;Configure&amp;quot; button.&lt;br /&gt;
# Set the appropriate parameters.  The Amp Server Pro module is initialized with a number of parameters which can be configured from the &amp;quot;Source&amp;quot; tab.  A summary and description of these parameters can be found below.&lt;br /&gt;
# Click &amp;quot;Set Config&amp;quot; and attend to any errors reported by the BCI2000 operator.  If there were any errors, repeat this step.&lt;br /&gt;
# Click &amp;quot;Start&amp;quot; to begin your experiment.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
===ServerIP===&lt;br /&gt;
IP address of the computer running the Amp Server software (e.g., 192.168.0.3).&lt;br /&gt;
&lt;br /&gt;
===CommandPort===&lt;br /&gt;
The port number of the port used for command layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9877 should be correct.&lt;br /&gt;
&lt;br /&gt;
===NotificationPort===&lt;br /&gt;
The port number of the port used for notification layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9878 should be correct.&lt;br /&gt;
&lt;br /&gt;
===StreamPort===&lt;br /&gt;
The port number of the port used for data streaming.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9879 should be correct.&lt;br /&gt;
&lt;br /&gt;
===AmplifierID===&lt;br /&gt;
Amp Server Pro is capable of managing many amplifiers concurrently.  BCI2000, however, operates with a single amplifier.  If only a single amplifier is connected, you may enter the value &amp;quot;auto&amp;quot; here and allow BCI2000 to automatically determine the Amplifier ID.  If multiple amplifiers are connected, however, you must enter a valid ID from 0 to N where N is the number of amplifiers connected.&lt;br /&gt;
&lt;br /&gt;
==States==&lt;br /&gt;
The Amp Server Pro source module introduces no additional states.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Reference:Filters]], [[Contributions:ADCs]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Contributions]][[Category:Data Acquisition]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3839</id>
		<title>Contributions:AmpServerProADC</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3839"/>
		<updated>2008-06-11T21:48:46Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Using the Amp Server Pro Source Module */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Synopsis==&lt;br /&gt;
The &#039;&#039;AmpServerProADC&#039;&#039; component implements the client side of EGI&#039;s TCP/IP-based Amp Server Pro (ASP) protocol. Thus, it may be used to interface BCI2000 with an EGI amplifier managed by an ASP server.&lt;br /&gt;
&lt;br /&gt;
==Location==&lt;br /&gt;
http://{{SERVERNAME}}/svn/trunk/src/contrib/SignalSource/AmpServerPro&lt;br /&gt;
&lt;br /&gt;
==Versioning==&lt;br /&gt;
===Author===&lt;br /&gt;
Joshua Fialkoff, (c) 2008 Wadsworth Center, New York State Department of Health.&lt;br /&gt;
&lt;br /&gt;
===Version History===&lt;br /&gt;
* V1.00 - 06/04/2008 - First working version&lt;br /&gt;
===Source Code Revisions===&lt;br /&gt;
*Initial development: 268&lt;br /&gt;
*Tested under: 1110&lt;br /&gt;
*Known to compile under: 1528&lt;br /&gt;
*Broken since: --&lt;br /&gt;
&lt;br /&gt;
==Using the Amp Server Pro Source Module==&lt;br /&gt;
===Starting Amp Server Pro===&lt;br /&gt;
Amp Server Pro is capable of working with many amplifiers concurrently.  To begin using Amp Server Pro with BCI2000, ensure that at least one amplifier is connected to the server.  If no amplifier is connected, the Amp Server software emulates an amplifier.  If you choose to use the emulated amplifier, you should expect to see a smooth sine wave signal for all channels.  To start the amp server simply navigate to the Amp Server Pro directory and double click the file named &amp;quot;&amp;lt;tt&amp;gt;Amp Server&amp;lt;/tt&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Compiling the Amp Server Pro Source Module===&lt;br /&gt;
The Amp Server Pro Source Module is not considered to be part of the BCI2000 core and must be compiled from the source code before it can be used.  To compile the Amp Server Pro module you will need Borland C++ Builder v6.0 or later.  To proceed, please follow the instructions below:&lt;br /&gt;
# Navigate to &amp;lt;tt&amp;gt;BCI2000/src/contrib/SignalSource/AmpServerPro&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# Double click &amp;lt;tt&amp;gt;AmpServerPro.bpr&amp;lt;/tt&amp;gt; to open the Amp Server Pro project file in the Borland C++ Builder.&lt;br /&gt;
# From the file menu click Project &amp;gt; Make AmpServerPro.&lt;br /&gt;
&lt;br /&gt;
===Creating a BCI2000 Batch File===&lt;br /&gt;
Although it is not necessary, compiling a batch file will make it easier to run BCI2000 with the Amp Server Pro module.  To create the batch file, open up a text editor and then copy the text below into a blank text file:&lt;br /&gt;
 cd ..\prog&lt;br /&gt;
 start operat.exe&lt;br /&gt;
 start AmpServerPro.exe 127.0.0.1&lt;br /&gt;
 start ARSignalProcessing.exe 127.0.0.1&lt;br /&gt;
 start CursorTask.exe 127.0.0.&lt;br /&gt;
Then, save the files to &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.  You may want to modify lines 3 and 4 to suit the needs of your experiment.  Please browse the files in &amp;lt;tt&amp;gt;BCI2000/batch/&amp;lt;/tt&amp;gt; for other example batch files.&lt;br /&gt;
&lt;br /&gt;
===Using Amp Server Pro with BCI2000===&lt;br /&gt;
Once you have started the Amp Server and compiled the Amp Server Pro module, you can begin collecting data with BCI2000 by following the steps below.&lt;br /&gt;
# Double click &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt; - the batch file that was created in the previous section - to start BCI2000.&lt;br /&gt;
# Click the &amp;quot;Configure&amp;quot; button.&lt;br /&gt;
# Set the appropriate parameters.  The Amp Server Pro module is initialized with a number of parameters which can be configured from the &amp;quot;Source&amp;quot; tab.  A summary and description of these parameters can be found below.&lt;br /&gt;
# Click &amp;quot;Set Config&amp;quot; and attend to any errors reported by the BCI2000 operator.  If there were any errors, repeat this step.&lt;br /&gt;
# Click &amp;quot;Start&amp;quot; to begin your experiment.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
===ServerIP===&lt;br /&gt;
IP address of the computer running the Amp Server software (e.g., 192.168.0.3).&lt;br /&gt;
&lt;br /&gt;
===CommandPort===&lt;br /&gt;
The port number of the port used for command layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9877 should be correct.&lt;br /&gt;
&lt;br /&gt;
===NotificationPort===&lt;br /&gt;
The port number of the port used for notification layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9878 should be correct.&lt;br /&gt;
&lt;br /&gt;
===StreamPort===&lt;br /&gt;
The port number of the port used for data streaming.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9879 should be correct.&lt;br /&gt;
&lt;br /&gt;
===AmplifierID===&lt;br /&gt;
Amp Server Pro is capable of managing many amplifiers concurrently.  BCI2000, however, operates with a single amplifier.  If only a single amplifier is connected, you may enter the value &amp;quot;auto&amp;quot; here and allow BCI2000 to automatically determine the Amplifier ID.  If multiple amplifiers are connected, however, you must enter a valid ID from 0 to N where N is the number of amplifiers connected.&lt;br /&gt;
&lt;br /&gt;
==States==&lt;br /&gt;
The Amp Server Pro source module introduces no additional states.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Reference:Filters]], [[Contributions:ADCs]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Contributions]][[Category:Data Acquisition]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3838</id>
		<title>Contributions:AmpServerProADC</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3838"/>
		<updated>2008-06-11T21:27:43Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Using Amp Server Pro with BCI2000 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Synopsis==&lt;br /&gt;
The &#039;&#039;AmpServerProADC&#039;&#039; component implements the client side of EGI&#039;s TCP/IP-based Amp Server Pro (ASP) protocol. Thus, it may be used to interface BCI2000 with an EGI amplifier managed by an ASP server.&lt;br /&gt;
&lt;br /&gt;
==Location==&lt;br /&gt;
http://{{SERVERNAME}}/svn/trunk/src/contrib/SignalSource/AmpServerPro&lt;br /&gt;
&lt;br /&gt;
==Versioning==&lt;br /&gt;
===Author===&lt;br /&gt;
Joshua Fialkoff, (c) 2008 Wadsworth Center, New York State Department of Health.&lt;br /&gt;
&lt;br /&gt;
===Version History===&lt;br /&gt;
* V1.00 - 06/04/2008 - First working version&lt;br /&gt;
===Source Code Revisions===&lt;br /&gt;
*Initial development: 268&lt;br /&gt;
*Tested under: 1110&lt;br /&gt;
*Known to compile under: 1528&lt;br /&gt;
*Broken since: --&lt;br /&gt;
&lt;br /&gt;
==Using the Amp Server Pro Source Module==&lt;br /&gt;
===Starting Amp Server Pro===&lt;br /&gt;
Amp Server Pro is capable of working with many amplifiers concurrently.  To begin using Amp Server Pro with BCI2000, ensure that at least one amplifier is connected to the server.  If no amplifier is connected, the Amp Server software emulates an amplifier.  If you choose to use the emulated amplifier, you should expect to see a smooth sine wave signal for all channels.  To start the amp server simply navigate to the Amp Server Pro directory and double click the file named &amp;quot;&amp;lt;tt&amp;gt;Amp Server&amp;lt;/tt&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Compiling the Amp Server Pro Source Module===&lt;br /&gt;
The Amp Server Pro Source Module is not considered to be part of the BCI2000 core and must be compiled manually.  To compile the Amp Server Pro module you will need Borland C++ Builder v6.0 or later.  To proceed, please follow the instructions below:&lt;br /&gt;
# Navigate to &amp;lt;tt&amp;gt;BCI2000/src/contrib/SignalSource/AmpServerPro&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# Double click &amp;lt;tt&amp;gt;AmpServerPro.bpr&amp;lt;/tt&amp;gt; to open the Amp Server Pro project file in the Borland C++ Builder.&lt;br /&gt;
# From the file menu click Project &amp;gt; Make AmpServerPro.&lt;br /&gt;
&lt;br /&gt;
===Using Amp Server Pro with BCI2000===&lt;br /&gt;
Once you have started the Amp Server and compiled the Amp Server Pro module, you can begin collecting data with BCI2000 by following the steps below.&lt;br /&gt;
# Double click &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt; to run a cursor task with BCI2000 using the Amp Server Pro source module.&lt;br /&gt;
# Click the &amp;quot;Configure&amp;quot; button.&lt;br /&gt;
# Set the appropriate parameters.  The Amp Server Pro module is initialized with a number of parameters which can be configured from the &amp;quot;Source&amp;quot; tab.  A summary and description of these parameters follows.&lt;br /&gt;
# Click &amp;quot;Set Config&amp;quot;.  If the operator reports any errors, you must handle these.&lt;br /&gt;
# Click &amp;quot;Start&amp;quot; to begin your experiment.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
===ServerIP===&lt;br /&gt;
IP address of the computer running the Amp Server software (e.g., 192.168.0.3).&lt;br /&gt;
&lt;br /&gt;
===CommandPort===&lt;br /&gt;
The port number of the port used for command layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9877 should be correct.&lt;br /&gt;
&lt;br /&gt;
===NotificationPort===&lt;br /&gt;
The port number of the port used for notification layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9878 should be correct.&lt;br /&gt;
&lt;br /&gt;
===StreamPort===&lt;br /&gt;
The port number of the port used for data streaming.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9879 should be correct.&lt;br /&gt;
&lt;br /&gt;
===AmplifierID===&lt;br /&gt;
Amp Server Pro is capable of managing many amplifiers concurrently.  BCI2000, however, operates with a single amplifier.  If only a single amplifier is connected, you may enter the value &amp;quot;auto&amp;quot; here and allow BCI2000 to automatically determine the Amplifier ID.  If multiple amplifiers are connected, however, you must enter a valid ID from 0 to N where N is the number of amplifiers connected.&lt;br /&gt;
&lt;br /&gt;
==States==&lt;br /&gt;
The Amp Server Pro source module introduces no additional states.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Reference:Filters]], [[Contributions:ADCs]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Contributions]][[Category:Data Acquisition]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3837</id>
		<title>Contributions:AmpServerProADC</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3837"/>
		<updated>2008-06-11T21:10:26Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Synopsis==&lt;br /&gt;
The &#039;&#039;AmpServerProADC&#039;&#039; component implements the client side of EGI&#039;s TCP/IP-based Amp Server Pro (ASP) protocol. Thus, it may be used to interface BCI2000 with an EGI amplifier managed by an ASP server.&lt;br /&gt;
&lt;br /&gt;
==Location==&lt;br /&gt;
http://{{SERVERNAME}}/svn/trunk/src/contrib/SignalSource/AmpServerPro&lt;br /&gt;
&lt;br /&gt;
==Versioning==&lt;br /&gt;
===Author===&lt;br /&gt;
Joshua Fialkoff, (c) 2008 Wadsworth Center, New York State Department of Health.&lt;br /&gt;
&lt;br /&gt;
===Version History===&lt;br /&gt;
* V1.00 - 06/04/2008 - First working version&lt;br /&gt;
===Source Code Revisions===&lt;br /&gt;
*Initial development: 268&lt;br /&gt;
*Tested under: 1110&lt;br /&gt;
*Known to compile under: 1528&lt;br /&gt;
*Broken since: --&lt;br /&gt;
&lt;br /&gt;
==Using the Amp Server Pro Source Module==&lt;br /&gt;
===Starting Amp Server Pro===&lt;br /&gt;
Amp Server Pro is capable of working with many amplifiers concurrently.  To begin using Amp Server Pro with BCI2000, ensure that at least one amplifier is connected to the server.  If no amplifier is connected, the Amp Server software emulates an amplifier.  If you choose to use the emulated amplifier, you should expect to see a smooth sine wave signal for all channels.  To start the amp server simply navigate to the Amp Server Pro directory and double click the file named &amp;quot;&amp;lt;tt&amp;gt;Amp Server&amp;lt;/tt&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Compiling the Amp Server Pro Source Module===&lt;br /&gt;
The Amp Server Pro Source Module is not considered to be part of the BCI2000 core and must be compiled manually.  To compile the Amp Server Pro module you will need Borland C++ Builder v6.0 or later.  To proceed, please follow the instructions below:&lt;br /&gt;
# Navigate to &amp;lt;tt&amp;gt;BCI2000/src/contrib/SignalSource/AmpServerPro&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# Double click &amp;lt;tt&amp;gt;AmpServerPro.bpr&amp;lt;/tt&amp;gt; to open the Amp Server Pro project file in the Borland C++ Builder.&lt;br /&gt;
# From the file menu click Project &amp;gt; Make AmpServerPro.&lt;br /&gt;
&lt;br /&gt;
===Using Amp Server Pro with BCI2000===&lt;br /&gt;
Once you have started the Amp Server and compiled the Amp Server Pro module, you can begin collecting data with BCI2000 by following the steps below:&lt;br /&gt;
# Open up a text editor and then copy the text below into a blank text file:&lt;br /&gt;
&amp;lt;tt&amp;gt;&lt;br /&gt;
cd ..\prog&lt;br /&gt;
start operat.exe&lt;br /&gt;
start AmpServerPro.exe 127.0.0.1&lt;br /&gt;
start ARSignalProcessing.exe 127.0.0.1&lt;br /&gt;
start CursorTask.exe 127.0.0.&lt;br /&gt;
&amp;lt;/tt&amp;gt;&lt;br /&gt;
You may want to modify lines 3 and 4 to suit the needs of your experiment.  Please inspect any of the files in &amp;lt;tt&amp;gt;BCI2000/batch/&amp;lt;/tt&amp;gt; for other example batch files.&lt;br /&gt;
&lt;br /&gt;
# Save the text file to &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# Double click &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt; to run a cursor task with BCI2000 using the Amp Server Pro source module.&lt;br /&gt;
# Click the &amp;quot;Configure&amp;quot; button.&lt;br /&gt;
# Set the appropriate parameters.  The Amp Server Pro module is initialized with a number of parameters which can be configured from the &amp;quot;Source&amp;quot; tab.  A summary and description of these parameters follows.&lt;br /&gt;
# Click &amp;quot;Set Config&amp;quot;.  If the operator reports any errors, you must handle these.&lt;br /&gt;
# Click &amp;quot;Start&amp;quot; to begin your experiment.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
===ServerIP===&lt;br /&gt;
IP address of the computer running the Amp Server software (e.g., 192.168.0.3).&lt;br /&gt;
&lt;br /&gt;
===CommandPort===&lt;br /&gt;
The port number of the port used for command layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9877 should be correct.&lt;br /&gt;
&lt;br /&gt;
===NotificationPort===&lt;br /&gt;
The port number of the port used for notification layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9878 should be correct.&lt;br /&gt;
&lt;br /&gt;
===StreamPort===&lt;br /&gt;
The port number of the port used for data streaming.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9879 should be correct.&lt;br /&gt;
&lt;br /&gt;
===AmplifierID===&lt;br /&gt;
Amp Server Pro is capable of managing many amplifiers concurrently.  BCI2000, however, operates with a single amplifier.  If only a single amplifier is connected, you may enter the value &amp;quot;auto&amp;quot; here and allow BCI2000 to automatically determine the Amplifier ID.  If multiple amplifiers are connected, however, you must enter a valid ID from 0 to N where N is the number of amplifiers connected.&lt;br /&gt;
&lt;br /&gt;
==States==&lt;br /&gt;
The Amp Server Pro source module introduces no additional states.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Reference:Filters]], [[Contributions:ADCs]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Contributions]][[Category:Data Acquisition]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3836</id>
		<title>Contributions:AmpServerProADC</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3836"/>
		<updated>2008-06-10T21:09:59Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* ServerIP */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Synopsis==&lt;br /&gt;
The &#039;&#039;AmpServerProADC&#039;&#039; component implements the client side of EGI&#039;s TCP/IP-based Amp Server Pro (ASP) protocol. Thus, it may be used to interface BCI2000 with an EGI amplifier managed by an ASP server.&lt;br /&gt;
&lt;br /&gt;
==Location==&lt;br /&gt;
http://{{SERVERNAME}}/svn/trunk/src/contrib/SignalSource/AmpServerPro&lt;br /&gt;
&lt;br /&gt;
==Versioning==&lt;br /&gt;
===Author===&lt;br /&gt;
Joshua Fialkoff, (c) 2008 Wadsworth Center, New York State Department of Health.&lt;br /&gt;
&lt;br /&gt;
===Version History===&lt;br /&gt;
* V1.00 - 06/04/2008 - First working version&lt;br /&gt;
===Source Code Revisions===&lt;br /&gt;
*Initial development: 268&lt;br /&gt;
*Tested under: 1110&lt;br /&gt;
*Known to compile under: 1528&lt;br /&gt;
*Broken since: --&lt;br /&gt;
&lt;br /&gt;
==Using the Amp Server Pro Source Module==&lt;br /&gt;
===Starting Amp Server Pro===&lt;br /&gt;
Amp Server Pro is capable of working with many amplifiers concurrently.  To begin using Amp Server Pro with BCI2000, ensure that at least one amplifier is connected to the server.  If no amplifier is connected, the Amp Server software emulates an amplifier.  If you choose to use the emulated amplifier, you should expect to see a smooth sine wave signal for all channels.  To begin, start the Amp Server by double clicking &amp;quot;&amp;lt;tt&amp;gt;Amp Server&amp;lt;/tt&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Compiling the Amp Server Pro Source Module===&lt;br /&gt;
The Amp Server Pro Source Module is not considered to be part of the BCI2000 core and must be compiled manually.  To compile the Amp Server Pro module you will need Borland C++ Builder v6.0 or later.  To proceed, please follow the instructions below:&lt;br /&gt;
# Navigate to &amp;lt;tt&amp;gt;BCI2000/src/contrib/SignalSource/AmpServerPro&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# Double click &amp;lt;tt&amp;gt;AmpServerPro.bpr&amp;lt;/tt&amp;gt; to open the Amp Server Pro project file in the Borland C++ Builder.&lt;br /&gt;
# From the file menu click Project &amp;gt; Make AmpServerPro to compile the AmpServerPro binary.&lt;br /&gt;
&lt;br /&gt;
===Using Amp Server Pro with BCI2000===&lt;br /&gt;
Once you have started the Amp Server and compiled the Amp Server Pro module, you can begin collecting data with BCI2000 by following the steps below:&lt;br /&gt;
# Download the batch file available here and save it to &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# To run the cursor task in BCI2000, double click &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.  If you prefer to operate under a different paradigm, you can edit either of the last two lines of &amp;lt;tt&amp;gt;CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt; to load the appropriate modules. &lt;br /&gt;
# Click the &amp;quot;Configure&amp;quot; button.&lt;br /&gt;
# Set the appropriate parameters.  The Amp Server Pro module is initialized with a number of parameters which can be configured from the &amp;quot;Source&amp;quot; tab.  A summary and description of these parameters follows.&lt;br /&gt;
# Click &amp;quot;Set Config&amp;quot;.  If the operator reports any errors, you must handle these.&lt;br /&gt;
# Click &amp;quot;Start&amp;quot; to begin your experiment.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
===ServerIP===&lt;br /&gt;
IP address of the computer running the Amp Server software (e.g., 192.168.0.3).&lt;br /&gt;
&lt;br /&gt;
===CommandPort===&lt;br /&gt;
The port number of the port used for command layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9877 should be correct.&lt;br /&gt;
&lt;br /&gt;
===NotificationPort===&lt;br /&gt;
The port number of the port used for notification layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9878 should be correct.&lt;br /&gt;
&lt;br /&gt;
===StreamPort===&lt;br /&gt;
The port number of the port used for data streaming.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9879 should be correct.&lt;br /&gt;
&lt;br /&gt;
===AmplifierID===&lt;br /&gt;
Amp Server Pro is capable of managing many amplifiers concurrently.  BCI2000, however, operates with a single amplifier.  If only a single amplifier is connected, you may enter the value &amp;quot;auto&amp;quot; here and allow BCI2000 to automatically determine the Amplifier ID.  If multiple amplifiers are connected, however, you must enter a valid ID from 0 to N where N is the number of amplifiers connected.&lt;br /&gt;
&lt;br /&gt;
==States==&lt;br /&gt;
The Amp Server Pro source module introduces no additional states.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Reference:Filters]], [[Contributions:ADCs]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Contributions]][[Category:Data Acquisition]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3835</id>
		<title>Contributions:AmpServerProADC</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3835"/>
		<updated>2008-06-10T21:09:44Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Parameters */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Synopsis==&lt;br /&gt;
The &#039;&#039;AmpServerProADC&#039;&#039; component implements the client side of EGI&#039;s TCP/IP-based Amp Server Pro (ASP) protocol. Thus, it may be used to interface BCI2000 with an EGI amplifier managed by an ASP server.&lt;br /&gt;
&lt;br /&gt;
==Location==&lt;br /&gt;
http://{{SERVERNAME}}/svn/trunk/src/contrib/SignalSource/AmpServerPro&lt;br /&gt;
&lt;br /&gt;
==Versioning==&lt;br /&gt;
===Author===&lt;br /&gt;
Joshua Fialkoff, (c) 2008 Wadsworth Center, New York State Department of Health.&lt;br /&gt;
&lt;br /&gt;
===Version History===&lt;br /&gt;
* V1.00 - 06/04/2008 - First working version&lt;br /&gt;
===Source Code Revisions===&lt;br /&gt;
*Initial development: 268&lt;br /&gt;
*Tested under: 1110&lt;br /&gt;
*Known to compile under: 1528&lt;br /&gt;
*Broken since: --&lt;br /&gt;
&lt;br /&gt;
==Using the Amp Server Pro Source Module==&lt;br /&gt;
===Starting Amp Server Pro===&lt;br /&gt;
Amp Server Pro is capable of working with many amplifiers concurrently.  To begin using Amp Server Pro with BCI2000, ensure that at least one amplifier is connected to the server.  If no amplifier is connected, the Amp Server software emulates an amplifier.  If you choose to use the emulated amplifier, you should expect to see a smooth sine wave signal for all channels.  To begin, start the Amp Server by double clicking &amp;quot;&amp;lt;tt&amp;gt;Amp Server&amp;lt;/tt&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Compiling the Amp Server Pro Source Module===&lt;br /&gt;
The Amp Server Pro Source Module is not considered to be part of the BCI2000 core and must be compiled manually.  To compile the Amp Server Pro module you will need Borland C++ Builder v6.0 or later.  To proceed, please follow the instructions below:&lt;br /&gt;
# Navigate to &amp;lt;tt&amp;gt;BCI2000/src/contrib/SignalSource/AmpServerPro&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# Double click &amp;lt;tt&amp;gt;AmpServerPro.bpr&amp;lt;/tt&amp;gt; to open the Amp Server Pro project file in the Borland C++ Builder.&lt;br /&gt;
# From the file menu click Project &amp;gt; Make AmpServerPro to compile the AmpServerPro binary.&lt;br /&gt;
&lt;br /&gt;
===Using Amp Server Pro with BCI2000===&lt;br /&gt;
Once you have started the Amp Server and compiled the Amp Server Pro module, you can begin collecting data with BCI2000 by following the steps below:&lt;br /&gt;
# Download the batch file available here and save it to &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# To run the cursor task in BCI2000, double click &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.  If you prefer to operate under a different paradigm, you can edit either of the last two lines of &amp;lt;tt&amp;gt;CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt; to load the appropriate modules. &lt;br /&gt;
# Click the &amp;quot;Configure&amp;quot; button.&lt;br /&gt;
# Set the appropriate parameters.  The Amp Server Pro module is initialized with a number of parameters which can be configured from the &amp;quot;Source&amp;quot; tab.  A summary and description of these parameters follows.&lt;br /&gt;
# Click &amp;quot;Set Config&amp;quot;.  If the operator reports any errors, you must handle these.&lt;br /&gt;
# Click &amp;quot;Start&amp;quot; to begin your experiment.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
===ServerIP===&lt;br /&gt;
IP address of the computer running the Amp Server software (e.g., 192.168.0.3).&#039;&lt;br /&gt;
&lt;br /&gt;
===CommandPort===&lt;br /&gt;
The port number of the port used for command layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9877 should be correct.&lt;br /&gt;
&lt;br /&gt;
===NotificationPort===&lt;br /&gt;
The port number of the port used for notification layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9878 should be correct.&lt;br /&gt;
&lt;br /&gt;
===StreamPort===&lt;br /&gt;
The port number of the port used for data streaming.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9879 should be correct.&lt;br /&gt;
&lt;br /&gt;
===AmplifierID===&lt;br /&gt;
Amp Server Pro is capable of managing many amplifiers concurrently.  BCI2000, however, operates with a single amplifier.  If only a single amplifier is connected, you may enter the value &amp;quot;auto&amp;quot; here and allow BCI2000 to automatically determine the Amplifier ID.  If multiple amplifiers are connected, however, you must enter a valid ID from 0 to N where N is the number of amplifiers connected.&lt;br /&gt;
&lt;br /&gt;
==States==&lt;br /&gt;
The Amp Server Pro source module introduces no additional states.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Reference:Filters]], [[Contributions:ADCs]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Contributions]][[Category:Data Acquisition]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3834</id>
		<title>Contributions:AmpServerProADC</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3834"/>
		<updated>2008-06-10T21:02:27Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Synopsis==&lt;br /&gt;
The &#039;&#039;AmpServerProADC&#039;&#039; component implements the client side of EGI&#039;s TCP/IP-based Amp Server Pro (ASP) protocol. Thus, it may be used to interface BCI2000 with an EGI amplifier managed by an ASP server.&lt;br /&gt;
&lt;br /&gt;
==Location==&lt;br /&gt;
http://{{SERVERNAME}}/svn/trunk/src/contrib/SignalSource/AmpServerPro&lt;br /&gt;
&lt;br /&gt;
==Versioning==&lt;br /&gt;
===Author===&lt;br /&gt;
Joshua Fialkoff, (c) 2008 Wadsworth Center, New York State Department of Health.&lt;br /&gt;
&lt;br /&gt;
===Version History===&lt;br /&gt;
* V1.00 - 06/04/2008 - First working version&lt;br /&gt;
===Source Code Revisions===&lt;br /&gt;
*Initial development: 268&lt;br /&gt;
*Tested under: 1110&lt;br /&gt;
*Known to compile under: 1528&lt;br /&gt;
*Broken since: --&lt;br /&gt;
&lt;br /&gt;
==Using the Amp Server Pro Source Module==&lt;br /&gt;
===Starting Amp Server Pro===&lt;br /&gt;
Amp Server Pro is capable of working with many amplifiers concurrently.  To begin using Amp Server Pro with BCI2000, ensure that at least one amplifier is connected to the server.  If no amplifier is connected, the Amp Server software emulates an amplifier.  If you choose to use the emulated amplifier, you should expect to see a smooth sine wave signal for all channels.  To begin, start the Amp Server by double clicking &amp;quot;&amp;lt;tt&amp;gt;Amp Server&amp;lt;/tt&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Compiling the Amp Server Pro Source Module===&lt;br /&gt;
The Amp Server Pro Source Module is not considered to be part of the BCI2000 core and must be compiled manually.  To compile the Amp Server Pro module you will need Borland C++ Builder v6.0 or later.  To proceed, please follow the instructions below:&lt;br /&gt;
# Navigate to &amp;lt;tt&amp;gt;BCI2000/src/contrib/SignalSource/AmpServerPro&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# Double click &amp;lt;tt&amp;gt;AmpServerPro.bpr&amp;lt;/tt&amp;gt; to open the Amp Server Pro project file in the Borland C++ Builder.&lt;br /&gt;
# From the file menu click Project &amp;gt; Make AmpServerPro to compile the AmpServerPro binary.&lt;br /&gt;
&lt;br /&gt;
===Using Amp Server Pro with BCI2000===&lt;br /&gt;
Once you have started the Amp Server and compiled the Amp Server Pro module, you can begin collecting data with BCI2000 by following the steps below:&lt;br /&gt;
# Download the batch file available here and save it to &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# To run the cursor task in BCI2000, double click &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.  If you prefer to operate under a different paradigm, you can edit either of the last two lines of &amp;lt;tt&amp;gt;CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt; to load the appropriate modules. &lt;br /&gt;
# Click the &amp;quot;Configure&amp;quot; button.&lt;br /&gt;
# Set the appropriate parameters.  The Amp Server Pro module is initialized with a number of parameters which can be configured from the &amp;quot;Source&amp;quot; tab.  A summary and description of these parameters follows.&lt;br /&gt;
# Click &amp;quot;Set Config&amp;quot;.  If the operator reports any errors, you must handle these.&lt;br /&gt;
# Click &amp;quot;Start&amp;quot; to begin your experiment.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
===ServerIP===&lt;br /&gt;
IP address of the computer running the Amp Server software (e.g., 192.168.0.3).&#039;&lt;br /&gt;
&lt;br /&gt;
===CommandPort===&lt;br /&gt;
The port number of the port used for command layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9877 should be correct.&lt;br /&gt;
&lt;br /&gt;
===NotificationPort===&lt;br /&gt;
The port number of the port used for notification layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9878 should be correct.&lt;br /&gt;
&lt;br /&gt;
===StreamPort===&lt;br /&gt;
The port number of the port used for data streaming.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9879 should be correct.&lt;br /&gt;
&lt;br /&gt;
===AmplifierID===&lt;br /&gt;
Amp Server Pro is capable of managing many amplifiers concurrently.  BCI2000, however, operates with a single amplifier.  If only a single amplifier is connected, you may enter the value &amp;quot;auto&amp;quot; here and allow BCI2000 to automatically determine the Amplifier ID.  If multiple amplifiers are connected, however, you must enter a valid ID from 0 to N where N is the number of amplifiers connected.&lt;br /&gt;
&lt;br /&gt;
===Timeout===&lt;br /&gt;
In the case that BCI2000 loses its connection to the Amp Server, a given read request may hang indefinitely.  In order to avoid this issue, set the timeout to a value greater than 0.  Note the value is interpreted as milliseconds and that 0 disables the timeout.&lt;br /&gt;
&lt;br /&gt;
==States==&lt;br /&gt;
The Amp Server Pro source module introduces no additional states.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Reference:Filters]], [[Contributions:ADCs]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Contributions]][[Category:Data Acquisition]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3833</id>
		<title>Contributions:AmpServerProADC</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3833"/>
		<updated>2008-06-04T16:38:38Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Synopsis==&lt;br /&gt;
The &#039;&#039;AmpServerProADC&#039;&#039; component implements the client side of EGI&#039;s TCP/IP-based Amp Server Pro (ASP) protocol. Thus, it may be used to interface BCI2000 with an EGI amplifier managed by an ASP server.&lt;br /&gt;
&lt;br /&gt;
==Location==&lt;br /&gt;
http://{{SERVERNAME}}/svn/trunk/src/contrib/SignalSource/AmpServerPro&lt;br /&gt;
&lt;br /&gt;
==Versioning==&lt;br /&gt;
===Author===&lt;br /&gt;
Joshua Fialkoff, (c) 2008 Wadsworth Center, New York State Department of Health.&lt;br /&gt;
&lt;br /&gt;
===Version History===&lt;br /&gt;
* V1.00 - 06/04/2008 - First working version&lt;br /&gt;
===Source Code Revisions===&lt;br /&gt;
*Initial development: 268&lt;br /&gt;
*Tested under: 1110&lt;br /&gt;
*Known to compile under: 1528&lt;br /&gt;
*Broken since: --&lt;br /&gt;
&lt;br /&gt;
==Functional Description==&lt;br /&gt;
This section comprises a technical description of the Amp Server Pro source module (&amp;lt;tt&amp;gt;AmpServerPro.exe&amp;lt;/tt&amp;gt;).  This module has been tested with &#039;&#039;&#039;Amp Server Pro&#039;&#039;&#039; v1.0 beta running on an Intel-based Mac and with BCI2000 running on Windows XP.  There is a known issue running both Amp Server and BCI2000 on the same computer via Parallels.  That particular configuration is not recommended and may result in unpredictable behavior.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Using the Amp Server Pro Source Module==&lt;br /&gt;
===Starting Amp Server Pro===&lt;br /&gt;
Amp Server Pro is capable of working with many amplifiers concurrently.  To begin using Amp Server Pro with BCI2000, ensure that at least one amplifier is connected to the server.  If no amplifier is connected, the Amp Server software emulates an amplifier.  If you choose to use the emulated amplifier, you should expect to see a smooth sine wave signal for all channels.  When your amplifiers are connected, start the Amp Server by double clicking &amp;quot;&amp;lt;tt&amp;gt;Amp Server&amp;lt;/tt&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Compiling the Amp Server Pro Source Module===&lt;br /&gt;
&lt;br /&gt;
===Using Amp Server Pro with BCI2000===&lt;br /&gt;
Once you have started the Amp Server and compiled the Amp Server Pro module, you can begin collecting data with BCI2000 by following the steps below:&lt;br /&gt;
# Download the batch file available here and save it to &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# To run the cursor task in BCI2000, double click &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.  If you prefer to operate under a different paradigm, you can edit either of the last two lines of &amp;lt;tt&amp;gt;CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt; to load the appropriate modules. &lt;br /&gt;
# Click the &amp;quot;Configure&amp;quot; button.&lt;br /&gt;
# Set the appropriate parameters.  The Amp Server Pro module is initialized with a number of parameters which can be configured from the &amp;quot;Source&amp;quot; tab.  A summary and description of these parameters follows.&lt;br /&gt;
# Click &amp;quot;Set Config&amp;quot;.  If the operator reports any errors, you must handle these.&lt;br /&gt;
# Click &amp;quot;Start&amp;quot; to begin your experiment.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
===ServerIP===&lt;br /&gt;
IP address of the computer running the Amp Server software (e.g., 192.168.0.3).&#039;&lt;br /&gt;
&lt;br /&gt;
===CommandPort===&lt;br /&gt;
The port number of the port used for command layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9877 should be correct.&lt;br /&gt;
&lt;br /&gt;
===NotificationPort===&lt;br /&gt;
The port number of the port used for notification layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9878 should be correct.&lt;br /&gt;
&lt;br /&gt;
===StreamPort===&lt;br /&gt;
The port number of the port used for data streaming.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9879 should be correct.&lt;br /&gt;
&lt;br /&gt;
===AmplifierID===&lt;br /&gt;
Amp Server Pro is capable of managing many amplifiers concurrently.  BCI2000, however, operates with a single amplifier.  If only a single amplifier is connected, you may enter the value &amp;quot;auto&amp;quot; here and allow BCI2000 to automatically determine the Amplifier ID.  If multiple amplifiers are connected, however, you must enter a valid ID from 0 to N where N is the number of amplifiers connected.&lt;br /&gt;
&lt;br /&gt;
===Timeout===&lt;br /&gt;
In the case that BCI2000 loses its connection to the Amp Server, a given read request may hang indefinitely.  In order to avoid this issue, set the timeout to a value greater than 0.  Note the value is interpreted as milliseconds and that 0 disables the timeout.&lt;br /&gt;
&lt;br /&gt;
==States==&lt;br /&gt;
The Amp Server Pro source module introduces no additional states.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Reference:Filters]], [[Contributions:ADCs]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Contributions]][[Category:Data Acquisition]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3832</id>
		<title>Contributions:AmpServerProADC</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3832"/>
		<updated>2008-06-04T16:34:52Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Synopsis==&lt;br /&gt;
The &#039;&#039;AmpServerProADC&#039;&#039; component implements the client side of EGI&#039;s TCP/IP-based Amp Server Pro (ASP) protocol. Thus, it may be used to interface BCI2000 with an EGI amplifier managed by an ASP server.&lt;br /&gt;
&lt;br /&gt;
==Location==&lt;br /&gt;
http://{{SERVERNAME}}/svn/trunk/src/contrib/SignalSource/AmpServerPro&lt;br /&gt;
&lt;br /&gt;
==Versioning==&lt;br /&gt;
===Author===&lt;br /&gt;
Joshua Fialkoff, (c) 2008 Wadsworth Center, New York State Department of Health.&lt;br /&gt;
&lt;br /&gt;
===Version History===&lt;br /&gt;
* V1.00 - 06/04/2008 - First working version&lt;br /&gt;
===Source Code Revisions===&lt;br /&gt;
*Initial development: 268&lt;br /&gt;
*Tested under: 1110&lt;br /&gt;
*Known to compile under: 1528&lt;br /&gt;
*Broken since: --&lt;br /&gt;
&lt;br /&gt;
==Functional Description==&lt;br /&gt;
This document describes the source module (&amp;lt;tt&amp;gt;AmpServerPro.exe&amp;lt;/tt&amp;gt;) that enables BCI2000 to utilize EGI&#039;s Amp Server for data acquisition.  This component has been tested with &#039;&#039;&#039;Amp Server Pro&#039;&#039;&#039; v1.0 beta running on an Intel-based Mac and with BCI2000 running on Windows XP.  There is a known issue running both Amp Server and BCI2000 on the same computer via Parallels.  That particular configuration is not recommended.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Starting Amp Server Pro===&lt;br /&gt;
Amp Server Pro is capable of working with many amplifiers concurrently.  To begin using Amp Server Pro with BCI2000, ensure that at least one amplifier is connected to the server.  If no amplifier is connected, the Amp Server software emulates an amplifier.  If you choose to use the emulated amplifier, you should expect to see a smooth sine wave signal for all channels.  When your amplifiers are connected, start the Amp Server by double clicking &amp;quot;&amp;lt;tt&amp;gt;Amp Server&amp;lt;/tt&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Compiling the Amp Server Pro Source Module===&lt;br /&gt;
&lt;br /&gt;
===Using Amp Server Pro with BCI2000===&lt;br /&gt;
Once you have started the Amp Server and compiled the Amp Server Pro module, you can begin collecting data with BCI2000 by following the steps below:&lt;br /&gt;
# Download the batch file available here and save it to &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# To run the cursor task in BCI2000, double click &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.  If you prefer to operate under a different paradigm, you can edit either of the last two lines of &amp;lt;tt&amp;gt;CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt; to load the appropriate modules. &lt;br /&gt;
# Click the &amp;quot;Configure&amp;quot; button.&lt;br /&gt;
# Set the appropriate parameters.  The Amp Server Pro module is initialized with a number of parameters which can be configured from the &amp;quot;Source&amp;quot; tab.  A summary and description of these parameters follows.&lt;br /&gt;
# Click &amp;quot;Set Config&amp;quot;.  If the operator reports any errors, you must handle these.&lt;br /&gt;
# Click &amp;quot;Start&amp;quot; to begin your experiment.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
===ServerIP===&lt;br /&gt;
IP address of the computer running the Amp Server software (e.g., 192.168.0.3).&#039;&lt;br /&gt;
&lt;br /&gt;
===CommandPort===&lt;br /&gt;
The port number of the port used for command layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9877 should be correct.&lt;br /&gt;
&lt;br /&gt;
===NotificationPort===&lt;br /&gt;
The port number of the port used for notification layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9878 should be correct.&lt;br /&gt;
&lt;br /&gt;
===StreamPort===&lt;br /&gt;
The port number of the port used for data streaming.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9879 should be correct.&lt;br /&gt;
&lt;br /&gt;
===AmplifierID===&lt;br /&gt;
Amp Server Pro is capable of managing many amplifiers concurrently.  BCI2000, however, operates with a single amplifier.  If only a single amplifier is connected, you may enter the value &amp;quot;auto&amp;quot; here and allow BCI2000 to automatically determine the Amplifier ID.  If multiple amplifiers are connected, however, you must enter a valid ID from 0 to N where N is the number of amplifiers connected.&lt;br /&gt;
&lt;br /&gt;
===Timeout===&lt;br /&gt;
In the case that BCI2000 loses its connection to the Amp Server, a given read request may hang indefinitely.  In order to avoid this issue, set the timeout to a value greater than 0.  Note the value is interpreted as milliseconds and that 0 disables the timeout.&lt;br /&gt;
&lt;br /&gt;
==States==&lt;br /&gt;
The Amp Server Pro source module introduces no additional states.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Reference:Filters]], [[Contributions:ADCs]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Contributions]][[Category:Data Acquisition]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3831</id>
		<title>Contributions:AmpServerProADC</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3831"/>
		<updated>2008-06-04T16:33:50Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Parameters */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Synopsis==&lt;br /&gt;
The &#039;&#039;AmpServerProADC&#039;&#039; component implements the client side of EGI&#039;s TCP/IP-based Amp Server Pro (ASP) protocol. Thus, it may be used to interface BCI2000 with an EGI amplifier managed by an ASP server.&lt;br /&gt;
&lt;br /&gt;
==Location==&lt;br /&gt;
http://{{SERVERNAME}}/svn/trunk/src/contrib/SignalSource/AmpServerPro&lt;br /&gt;
&lt;br /&gt;
==Versioning==&lt;br /&gt;
===Author===&lt;br /&gt;
Joshua Fialkoff, (c) 2008 Wadsworth Center, New York State Department of Health.&lt;br /&gt;
&lt;br /&gt;
===Version History===&lt;br /&gt;
* V1.00 - 06/04/2008 - First working version&lt;br /&gt;
===Source Code Revisions===&lt;br /&gt;
*Initial development: 268&lt;br /&gt;
*Tested under: 1110&lt;br /&gt;
*Known to compile under: 1528&lt;br /&gt;
*Broken since: --&lt;br /&gt;
&lt;br /&gt;
==Functional Description==&lt;br /&gt;
This document describes the source module (&amp;lt;tt&amp;gt;AmpServerPro.exe&amp;lt;/tt&amp;gt;) that enables BCI2000 to utilize EGI&#039;s Amp Server for data acquisition.  This component has been tested with &#039;&#039;&#039;Amp Server Pro&#039;&#039;&#039; v1.0 beta running on an Intel-based Mac and with BCI2000 running on Windows XP.  There is a known issue running both Amp Server and BCI2000 on the same computer via Parallels.  That particular configuration is not recommended.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Starting Amp Server Pro===&lt;br /&gt;
Amp Server Pro is capable of working with many amplifiers concurrently.  To begin using Amp Server Pro with BCI2000, ensure that at least one amplifier is connected to the server.  If no amplifier is connected, the Amp Server software emulates an amplifier.  If you choose to use the emulated amplifier, you should expect to see a smooth sine wave signal for all channels.  When your amplifiers are connected, start the Amp Server by double clicking &amp;quot;&amp;lt;tt&amp;gt;Amp Server&amp;lt;/tt&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Compiling the Amp Server Pro Source Module===&lt;br /&gt;
&lt;br /&gt;
===Using Amp Server Pro with BCI2000===&lt;br /&gt;
Once you have started the Amp Server and compiled the Amp Server Pro module, you can begin collecting data with BCI2000 by following the steps below:&lt;br /&gt;
# Download the batch file available here and save it to &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# To run the cursor task in BCI2000, double click &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.  If you prefer to operate under a different paradigm, you can edit either of the last two lines of &amp;lt;tt&amp;gt;CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt; to load the appropriate modules. &lt;br /&gt;
# Click the &amp;quot;Configure&amp;quot; button.&lt;br /&gt;
# Set the appropriate parameters.  The Amp Server Pro module is initialized with a number of parameters which can be configured from the &amp;quot;Source&amp;quot; tab.  A summary and description of these parameters follows.&lt;br /&gt;
# Click &amp;quot;Set Config&amp;quot;.  If the operator reports any errors, you must handle these.&lt;br /&gt;
# Click &amp;quot;Start&amp;quot; to begin your experiment.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
===ServerIP===&lt;br /&gt;
IP address of the computer running the Amp Server software (e.g., 192.168.0.3).&#039;&lt;br /&gt;
&lt;br /&gt;
===CommandPort===&lt;br /&gt;
The port number of the port used for command layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9877 should be correct.&lt;br /&gt;
&lt;br /&gt;
===NotificationPort===&lt;br /&gt;
The port number of the port used for notification layer communication.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9878 should be correct.&lt;br /&gt;
&lt;br /&gt;
===StreamPort===&lt;br /&gt;
The port number of the port used for data streaming.  Unless you have explicitly set the port number via Amp Server&#039;s configuration, the default of 9879 should be correct.&lt;br /&gt;
&lt;br /&gt;
===AmplifierID===&lt;br /&gt;
Amp Server Pro is capable of managing many amplifiers concurrently.  BCI2000, however, operates with a single amplifier.  If only a single amplifier is connected, you may enter the value &amp;quot;auto&amp;quot; here and allow BCI2000 to automatically determine the Amplifier ID.  If multiple amplifiers are connected, however, you must enter a valid ID from 0 to N where N is the number of amplifiers connected.&lt;br /&gt;
&lt;br /&gt;
===Timeout===&lt;br /&gt;
In the case that BCI2000 loses its connection to the Amp Server, a given read request may hang indefinitely.  In order to avoid this issue, set the timeout to a value greater than 0.  Note the value is interpreted as milliseconds and that 0 disables the timeout.&lt;br /&gt;
&lt;br /&gt;
==States==&lt;br /&gt;
The Amp Server Pro source module introduces no additional states.&lt;br /&gt;
&lt;br /&gt;
==The &amp;lt;tt&amp;gt;neurogetparams&amp;lt;/tt&amp;gt; Command Line Tool==&lt;br /&gt;
This command line tool reads system settings from the &#039;&#039;&#039;Neuroscan Acquire&#039;&#039;&#039;&lt;br /&gt;
server, displays them on a screen and creates a BCI2000 parameter file fragment &lt;br /&gt;
if desired. It can be used as follows: &amp;lt;tt&amp;gt;neurogetparams -address &lt;br /&gt;
localhost:3999 -paramfile test.prm&amp;lt;/tt&amp;gt;. (The &#039;&#039;&#039;Acquire&#039;&#039;&#039; server has to be &lt;br /&gt;
enabled before using this tool.) Once BCI2000 is configured correctly, this &lt;br /&gt;
parameter file fragment needs to be loaded on top of the existing configuration &lt;br /&gt;
to make sure that the settings match. You only need to repeat this procedure if &lt;br /&gt;
you change settings in &#039;&#039;&#039;Acquire&#039;&#039;&#039; (e.g., such as the number of channels or &lt;br /&gt;
the amplification).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
BCI2000 Parameter Tool for Neuroscan Acquire V4.3&lt;br /&gt;
*******************************************************************&lt;br /&gt;
(C)2004 Gerwin Schalk and Juergen Mellinger&lt;br /&gt;
        Wadsworth Center, New York State Dept of Health, Albany, NY&lt;br /&gt;
        Eberhardt-Karls University of Tuebingen, Germany&lt;br /&gt;
*******************************************************************&lt;br /&gt;
Signal Channels: 32&lt;br /&gt;
Event Channels:  1&lt;br /&gt;
Block Size:      40&lt;br /&gt;
Sampling Rate:   1000&lt;br /&gt;
Bits/Sample:     16&lt;br /&gt;
Resolution:      0.168uV/LSB&lt;br /&gt;
Parameter file test.prm successfully written&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Reference:Filters]], [[Contributions:ADCs]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Contributions]][[Category:Data Acquisition]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3830</id>
		<title>Contributions:AmpServerProADC</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3830"/>
		<updated>2008-06-04T16:17:30Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* States */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Synopsis==&lt;br /&gt;
The &#039;&#039;AmpServerProADC&#039;&#039; component implements the client side of EGI&#039;s TCP/IP-based Amp Server Pro (ASP) protocol. Thus, it may be used to interface BCI2000 with an EGI amplifier managed by an ASP server.&lt;br /&gt;
&lt;br /&gt;
==Location==&lt;br /&gt;
http://{{SERVERNAME}}/svn/trunk/src/contrib/SignalSource/AmpServerPro&lt;br /&gt;
&lt;br /&gt;
==Versioning==&lt;br /&gt;
===Author===&lt;br /&gt;
Joshua Fialkoff, (c) 2008 Wadsworth Center, New York State Department of Health.&lt;br /&gt;
&lt;br /&gt;
===Version History===&lt;br /&gt;
* V1.00 - 06/04/2008 - First working version&lt;br /&gt;
===Source Code Revisions===&lt;br /&gt;
*Initial development: 268&lt;br /&gt;
*Tested under: 1110&lt;br /&gt;
*Known to compile under: 1528&lt;br /&gt;
*Broken since: --&lt;br /&gt;
&lt;br /&gt;
==Functional Description==&lt;br /&gt;
This document describes the source module (&amp;lt;tt&amp;gt;AmpServerPro.exe&amp;lt;/tt&amp;gt;) that enables BCI2000 to utilize EGI&#039;s Amp Server for data acquisition.  This component has been tested with &#039;&#039;&#039;Amp Server Pro&#039;&#039;&#039; v1.0 beta running on an Intel-based Mac and with BCI2000 running on Windows XP.  There is a known issue running both Amp Server and BCI2000 on the same computer via Parallels.  That particular configuration is not recommended.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Starting Amp Server Pro===&lt;br /&gt;
Amp Server Pro is capable of working with many amplifiers concurrently.  To begin using Amp Server Pro with BCI2000, ensure that at least one amplifier is connected to the server.  If no amplifier is connected, the Amp Server software emulates an amplifier.  If you choose to use the emulated amplifier, you should expect to see a smooth sine wave signal for all channels.  When your amplifiers are connected, start the Amp Server by double clicking &amp;quot;&amp;lt;tt&amp;gt;Amp Server&amp;lt;/tt&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Compiling the Amp Server Pro Source Module===&lt;br /&gt;
&lt;br /&gt;
===Using Amp Server Pro with BCI2000===&lt;br /&gt;
Once you have started the Amp Server and compiled the Amp Server Pro module, you can begin collecting data with BCI2000 by following the steps below:&lt;br /&gt;
# Download the batch file available here and save it to &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# To run the cursor task in BCI2000, double click &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.  If you prefer to operate under a different paradigm, you can edit either of the last two lines of &amp;lt;tt&amp;gt;CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt; to load the appropriate modules. &lt;br /&gt;
# Click the &amp;quot;Configure&amp;quot; button.&lt;br /&gt;
# Set the appropriate parameters.  The Amp Server Pro module is initialized with a number of parameters which can be configured from the &amp;quot;Source&amp;quot; tab.  A summary and description of these parameters follows.&lt;br /&gt;
# Click &amp;quot;Set Config&amp;quot;.  If the operator reports any errors, you must handle these.&lt;br /&gt;
# Click &amp;quot;Start&amp;quot; to begin your experiment.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
===ServerAddress===&lt;br /&gt;
Address and port of the Neuroscan Acquire server, given in &amp;lt;tt&amp;gt;address:port&amp;lt;/tt&amp;gt; format.&lt;br /&gt;
&lt;br /&gt;
==States==&lt;br /&gt;
The Amp Server Pro source module introduces no additional states.&lt;br /&gt;
&lt;br /&gt;
==The &amp;lt;tt&amp;gt;neurogetparams&amp;lt;/tt&amp;gt; Command Line Tool==&lt;br /&gt;
This command line tool reads system settings from the &#039;&#039;&#039;Neuroscan Acquire&#039;&#039;&#039;&lt;br /&gt;
server, displays them on a screen and creates a BCI2000 parameter file fragment &lt;br /&gt;
if desired. It can be used as follows: &amp;lt;tt&amp;gt;neurogetparams -address &lt;br /&gt;
localhost:3999 -paramfile test.prm&amp;lt;/tt&amp;gt;. (The &#039;&#039;&#039;Acquire&#039;&#039;&#039; server has to be &lt;br /&gt;
enabled before using this tool.) Once BCI2000 is configured correctly, this &lt;br /&gt;
parameter file fragment needs to be loaded on top of the existing configuration &lt;br /&gt;
to make sure that the settings match. You only need to repeat this procedure if &lt;br /&gt;
you change settings in &#039;&#039;&#039;Acquire&#039;&#039;&#039; (e.g., such as the number of channels or &lt;br /&gt;
the amplification).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
BCI2000 Parameter Tool for Neuroscan Acquire V4.3&lt;br /&gt;
*******************************************************************&lt;br /&gt;
(C)2004 Gerwin Schalk and Juergen Mellinger&lt;br /&gt;
        Wadsworth Center, New York State Dept of Health, Albany, NY&lt;br /&gt;
        Eberhardt-Karls University of Tuebingen, Germany&lt;br /&gt;
*******************************************************************&lt;br /&gt;
Signal Channels: 32&lt;br /&gt;
Event Channels:  1&lt;br /&gt;
Block Size:      40&lt;br /&gt;
Sampling Rate:   1000&lt;br /&gt;
Bits/Sample:     16&lt;br /&gt;
Resolution:      0.168uV/LSB&lt;br /&gt;
Parameter file test.prm successfully written&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Reference:Filters]], [[Contributions:ADCs]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Contributions]][[Category:Data Acquisition]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3829</id>
		<title>Contributions:AmpServerProADC</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3829"/>
		<updated>2008-06-04T16:16:34Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Starting Amp Server Pro */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Synopsis==&lt;br /&gt;
The &#039;&#039;AmpServerProADC&#039;&#039; component implements the client side of EGI&#039;s TCP/IP-based Amp Server Pro (ASP) protocol. Thus, it may be used to interface BCI2000 with an EGI amplifier managed by an ASP server.&lt;br /&gt;
&lt;br /&gt;
==Location==&lt;br /&gt;
http://{{SERVERNAME}}/svn/trunk/src/contrib/SignalSource/AmpServerPro&lt;br /&gt;
&lt;br /&gt;
==Versioning==&lt;br /&gt;
===Author===&lt;br /&gt;
Joshua Fialkoff, (c) 2008 Wadsworth Center, New York State Department of Health.&lt;br /&gt;
&lt;br /&gt;
===Version History===&lt;br /&gt;
* V1.00 - 06/04/2008 - First working version&lt;br /&gt;
===Source Code Revisions===&lt;br /&gt;
*Initial development: 268&lt;br /&gt;
*Tested under: 1110&lt;br /&gt;
*Known to compile under: 1528&lt;br /&gt;
*Broken since: --&lt;br /&gt;
&lt;br /&gt;
==Functional Description==&lt;br /&gt;
This document describes the source module (&amp;lt;tt&amp;gt;AmpServerPro.exe&amp;lt;/tt&amp;gt;) that enables BCI2000 to utilize EGI&#039;s Amp Server for data acquisition.  This component has been tested with &#039;&#039;&#039;Amp Server Pro&#039;&#039;&#039; v1.0 beta running on an Intel-based Mac and with BCI2000 running on Windows XP.  There is a known issue running both Amp Server and BCI2000 on the same computer via Parallels.  That particular configuration is not recommended.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Starting Amp Server Pro===&lt;br /&gt;
Amp Server Pro is capable of working with many amplifiers concurrently.  To begin using Amp Server Pro with BCI2000, ensure that at least one amplifier is connected to the server.  If no amplifier is connected, the Amp Server software emulates an amplifier.  If you choose to use the emulated amplifier, you should expect to see a smooth sine wave signal for all channels.  When your amplifiers are connected, start the Amp Server by double clicking &amp;quot;&amp;lt;tt&amp;gt;Amp Server&amp;lt;/tt&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Compiling the Amp Server Pro Source Module===&lt;br /&gt;
&lt;br /&gt;
===Using Amp Server Pro with BCI2000===&lt;br /&gt;
Once you have started the Amp Server and compiled the Amp Server Pro module, you can begin collecting data with BCI2000 by following the steps below:&lt;br /&gt;
# Download the batch file available here and save it to &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# To run the cursor task in BCI2000, double click &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.  If you prefer to operate under a different paradigm, you can edit either of the last two lines of &amp;lt;tt&amp;gt;CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt; to load the appropriate modules. &lt;br /&gt;
# Click the &amp;quot;Configure&amp;quot; button.&lt;br /&gt;
# Set the appropriate parameters.  The Amp Server Pro module is initialized with a number of parameters which can be configured from the &amp;quot;Source&amp;quot; tab.  A summary and description of these parameters follows.&lt;br /&gt;
# Click &amp;quot;Set Config&amp;quot;.  If the operator reports any errors, you must handle these.&lt;br /&gt;
# Click &amp;quot;Start&amp;quot; to begin your experiment.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
===ServerAddress===&lt;br /&gt;
Address and port of the Neuroscan Acquire server, given in &amp;lt;tt&amp;gt;address:port&amp;lt;/tt&amp;gt; format.&lt;br /&gt;
&lt;br /&gt;
==States==&lt;br /&gt;
===NeuroscanEvent1===&lt;br /&gt;
An 8-bit state that encodes event information as sent over the Neuroscan Acquire protocol.&lt;br /&gt;
&lt;br /&gt;
==The &amp;lt;tt&amp;gt;neurogetparams&amp;lt;/tt&amp;gt; Command Line Tool==&lt;br /&gt;
This command line tool reads system settings from the &#039;&#039;&#039;Neuroscan Acquire&#039;&#039;&#039;&lt;br /&gt;
server, displays them on a screen and creates a BCI2000 parameter file fragment &lt;br /&gt;
if desired. It can be used as follows: &amp;lt;tt&amp;gt;neurogetparams -address &lt;br /&gt;
localhost:3999 -paramfile test.prm&amp;lt;/tt&amp;gt;. (The &#039;&#039;&#039;Acquire&#039;&#039;&#039; server has to be &lt;br /&gt;
enabled before using this tool.) Once BCI2000 is configured correctly, this &lt;br /&gt;
parameter file fragment needs to be loaded on top of the existing configuration &lt;br /&gt;
to make sure that the settings match. You only need to repeat this procedure if &lt;br /&gt;
you change settings in &#039;&#039;&#039;Acquire&#039;&#039;&#039; (e.g., such as the number of channels or &lt;br /&gt;
the amplification).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
BCI2000 Parameter Tool for Neuroscan Acquire V4.3&lt;br /&gt;
*******************************************************************&lt;br /&gt;
(C)2004 Gerwin Schalk and Juergen Mellinger&lt;br /&gt;
        Wadsworth Center, New York State Dept of Health, Albany, NY&lt;br /&gt;
        Eberhardt-Karls University of Tuebingen, Germany&lt;br /&gt;
*******************************************************************&lt;br /&gt;
Signal Channels: 32&lt;br /&gt;
Event Channels:  1&lt;br /&gt;
Block Size:      40&lt;br /&gt;
Sampling Rate:   1000&lt;br /&gt;
Bits/Sample:     16&lt;br /&gt;
Resolution:      0.168uV/LSB&lt;br /&gt;
Parameter file test.prm successfully written&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Reference:Filters]], [[Contributions:ADCs]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Contributions]][[Category:Data Acquisition]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3828</id>
		<title>Contributions:AmpServerProADC</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3828"/>
		<updated>2008-06-04T16:15:03Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Functional Description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Synopsis==&lt;br /&gt;
The &#039;&#039;AmpServerProADC&#039;&#039; component implements the client side of EGI&#039;s TCP/IP-based Amp Server Pro (ASP) protocol. Thus, it may be used to interface BCI2000 with an EGI amplifier managed by an ASP server.&lt;br /&gt;
&lt;br /&gt;
==Location==&lt;br /&gt;
http://{{SERVERNAME}}/svn/trunk/src/contrib/SignalSource/AmpServerPro&lt;br /&gt;
&lt;br /&gt;
==Versioning==&lt;br /&gt;
===Author===&lt;br /&gt;
Joshua Fialkoff, (c) 2008 Wadsworth Center, New York State Department of Health.&lt;br /&gt;
&lt;br /&gt;
===Version History===&lt;br /&gt;
* V1.00 - 06/04/2008 - First working version&lt;br /&gt;
===Source Code Revisions===&lt;br /&gt;
*Initial development: 268&lt;br /&gt;
*Tested under: 1110&lt;br /&gt;
*Known to compile under: 1528&lt;br /&gt;
*Broken since: --&lt;br /&gt;
&lt;br /&gt;
==Functional Description==&lt;br /&gt;
This document describes the source module (&amp;lt;tt&amp;gt;AmpServerPro.exe&amp;lt;/tt&amp;gt;) that enables BCI2000 to utilize EGI&#039;s Amp Server for data acquisition.  This component has been tested with &#039;&#039;&#039;Amp Server Pro&#039;&#039;&#039; v1.0 beta running on an Intel-based Mac and with BCI2000 running on Windows XP.  There is a known issue running both Amp Server and BCI2000 on the same computer via Parallels.  That particular configuration is not recommended.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Starting Amp Server Pro===&lt;br /&gt;
Amp Server Pro is capable of working with many amplifiers concurrently.  To begin using Amp Server Pro with BCI2000, ensure that at least one amplifier is connected to the server.  If no amplifier is connect, the Amp Server software emulates an amplifier.  If you choose to use the emulated amplifier, you should expect to see a smooth sine wave signal for all channels.  When your amplifiers are connected, start the Amp Server by double clicking &amp;quot;&amp;lt;tt&amp;gt;Amp Server&amp;lt;/tt&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Compiling the Amp Server Pro Source Module===&lt;br /&gt;
&lt;br /&gt;
===Using Amp Server Pro with BCI2000===&lt;br /&gt;
Once you have started the Amp Server and compiled the Amp Server Pro module, you can begin collecting data with BCI2000 by following the steps below:&lt;br /&gt;
# Download the batch file available here and save it to &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# To run the cursor task in BCI2000, double click &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.  If you prefer to operate under a different paradigm, you can edit either of the last two lines of &amp;lt;tt&amp;gt;CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt; to load the appropriate modules. &lt;br /&gt;
# Click the &amp;quot;Configure&amp;quot; button.&lt;br /&gt;
# Set the appropriate parameters.  The Amp Server Pro module is initialized with a number of parameters which can be configured from the &amp;quot;Source&amp;quot; tab.  A summary and description of these parameters follows.&lt;br /&gt;
# Click &amp;quot;Set Config&amp;quot;.  If the operator reports any errors, you must handle these.&lt;br /&gt;
# Click &amp;quot;Start&amp;quot; to begin your experiment.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
===ServerAddress===&lt;br /&gt;
Address and port of the Neuroscan Acquire server, given in &amp;lt;tt&amp;gt;address:port&amp;lt;/tt&amp;gt; format.&lt;br /&gt;
&lt;br /&gt;
==States==&lt;br /&gt;
===NeuroscanEvent1===&lt;br /&gt;
An 8-bit state that encodes event information as sent over the Neuroscan Acquire protocol.&lt;br /&gt;
&lt;br /&gt;
==The &amp;lt;tt&amp;gt;neurogetparams&amp;lt;/tt&amp;gt; Command Line Tool==&lt;br /&gt;
This command line tool reads system settings from the &#039;&#039;&#039;Neuroscan Acquire&#039;&#039;&#039;&lt;br /&gt;
server, displays them on a screen and creates a BCI2000 parameter file fragment &lt;br /&gt;
if desired. It can be used as follows: &amp;lt;tt&amp;gt;neurogetparams -address &lt;br /&gt;
localhost:3999 -paramfile test.prm&amp;lt;/tt&amp;gt;. (The &#039;&#039;&#039;Acquire&#039;&#039;&#039; server has to be &lt;br /&gt;
enabled before using this tool.) Once BCI2000 is configured correctly, this &lt;br /&gt;
parameter file fragment needs to be loaded on top of the existing configuration &lt;br /&gt;
to make sure that the settings match. You only need to repeat this procedure if &lt;br /&gt;
you change settings in &#039;&#039;&#039;Acquire&#039;&#039;&#039; (e.g., such as the number of channels or &lt;br /&gt;
the amplification).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
BCI2000 Parameter Tool for Neuroscan Acquire V4.3&lt;br /&gt;
*******************************************************************&lt;br /&gt;
(C)2004 Gerwin Schalk and Juergen Mellinger&lt;br /&gt;
        Wadsworth Center, New York State Dept of Health, Albany, NY&lt;br /&gt;
        Eberhardt-Karls University of Tuebingen, Germany&lt;br /&gt;
*******************************************************************&lt;br /&gt;
Signal Channels: 32&lt;br /&gt;
Event Channels:  1&lt;br /&gt;
Block Size:      40&lt;br /&gt;
Sampling Rate:   1000&lt;br /&gt;
Bits/Sample:     16&lt;br /&gt;
Resolution:      0.168uV/LSB&lt;br /&gt;
Parameter file test.prm successfully written&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Reference:Filters]], [[Contributions:ADCs]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Contributions]][[Category:Data Acquisition]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3827</id>
		<title>Contributions:AmpServerProADC</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3827"/>
		<updated>2008-06-04T16:14:49Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Starting Amp Server Pro */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Synopsis==&lt;br /&gt;
The &#039;&#039;AmpServerProADC&#039;&#039; component implements the client side of EGI&#039;s TCP/IP-based Amp Server Pro (ASP) protocol. Thus, it may be used to interface BCI2000 with an EGI amplifier managed by an ASP server.&lt;br /&gt;
&lt;br /&gt;
==Location==&lt;br /&gt;
http://{{SERVERNAME}}/svn/trunk/src/contrib/SignalSource/AmpServerPro&lt;br /&gt;
&lt;br /&gt;
==Versioning==&lt;br /&gt;
===Author===&lt;br /&gt;
Joshua Fialkoff, (c) 2008 Wadsworth Center, New York State Department of Health.&lt;br /&gt;
&lt;br /&gt;
===Version History===&lt;br /&gt;
* V1.00 - 06/04/2008 - First working version&lt;br /&gt;
===Source Code Revisions===&lt;br /&gt;
*Initial development: 268&lt;br /&gt;
*Tested under: 1110&lt;br /&gt;
*Known to compile under: 1528&lt;br /&gt;
*Broken since: --&lt;br /&gt;
&lt;br /&gt;
==Functional Description==&lt;br /&gt;
This document describes the source module (&amp;lt;tt&amp;gt;AmpServerPro.exe&amp;lt;/tt&amp;gt;) that enables BCI2000 to utilize EGI&#039;s Amp Server for data acquisition.  This component has been tested with &#039;&#039;&#039;Amp Server Pro&#039;&#039;&#039; v1.0 beta running on an Intel-based Mac and with BCI2000 running on Windows XP.  There is a known issue running both Amp Server and BCI2000 on the same computer via Parallels.&lt;br /&gt;
&lt;br /&gt;
===Starting Amp Server Pro===&lt;br /&gt;
Amp Server Pro is capable of working with many amplifiers concurrently.  To begin using Amp Server Pro with BCI2000, ensure that at least one amplifier is connected to the server.  If no amplifier is connect, the Amp Server software emulates an amplifier.  If you choose to use the emulated amplifier, you should expect to see a smooth sine wave signal for all channels.  When your amplifiers are connected, start the Amp Server by double clicking &amp;quot;&amp;lt;tt&amp;gt;Amp Server&amp;lt;/tt&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Compiling the Amp Server Pro Source Module===&lt;br /&gt;
&lt;br /&gt;
===Using Amp Server Pro with BCI2000===&lt;br /&gt;
Once you have started the Amp Server and compiled the Amp Server Pro module, you can begin collecting data with BCI2000 by following the steps below:&lt;br /&gt;
# Download the batch file available here and save it to &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# To run the cursor task in BCI2000, double click &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.  If you prefer to operate under a different paradigm, you can edit either of the last two lines of &amp;lt;tt&amp;gt;CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt; to load the appropriate modules. &lt;br /&gt;
# Click the &amp;quot;Configure&amp;quot; button.&lt;br /&gt;
# Set the appropriate parameters.  The Amp Server Pro module is initialized with a number of parameters which can be configured from the &amp;quot;Source&amp;quot; tab.  A summary and description of these parameters follows.&lt;br /&gt;
# Click &amp;quot;Set Config&amp;quot;.  If the operator reports any errors, you must handle these.&lt;br /&gt;
# Click &amp;quot;Start&amp;quot; to begin your experiment.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
===ServerAddress===&lt;br /&gt;
Address and port of the Neuroscan Acquire server, given in &amp;lt;tt&amp;gt;address:port&amp;lt;/tt&amp;gt; format.&lt;br /&gt;
&lt;br /&gt;
==States==&lt;br /&gt;
===NeuroscanEvent1===&lt;br /&gt;
An 8-bit state that encodes event information as sent over the Neuroscan Acquire protocol.&lt;br /&gt;
&lt;br /&gt;
==The &amp;lt;tt&amp;gt;neurogetparams&amp;lt;/tt&amp;gt; Command Line Tool==&lt;br /&gt;
This command line tool reads system settings from the &#039;&#039;&#039;Neuroscan Acquire&#039;&#039;&#039;&lt;br /&gt;
server, displays them on a screen and creates a BCI2000 parameter file fragment &lt;br /&gt;
if desired. It can be used as follows: &amp;lt;tt&amp;gt;neurogetparams -address &lt;br /&gt;
localhost:3999 -paramfile test.prm&amp;lt;/tt&amp;gt;. (The &#039;&#039;&#039;Acquire&#039;&#039;&#039; server has to be &lt;br /&gt;
enabled before using this tool.) Once BCI2000 is configured correctly, this &lt;br /&gt;
parameter file fragment needs to be loaded on top of the existing configuration &lt;br /&gt;
to make sure that the settings match. You only need to repeat this procedure if &lt;br /&gt;
you change settings in &#039;&#039;&#039;Acquire&#039;&#039;&#039; (e.g., such as the number of channels or &lt;br /&gt;
the amplification).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
BCI2000 Parameter Tool for Neuroscan Acquire V4.3&lt;br /&gt;
*******************************************************************&lt;br /&gt;
(C)2004 Gerwin Schalk and Juergen Mellinger&lt;br /&gt;
        Wadsworth Center, New York State Dept of Health, Albany, NY&lt;br /&gt;
        Eberhardt-Karls University of Tuebingen, Germany&lt;br /&gt;
*******************************************************************&lt;br /&gt;
Signal Channels: 32&lt;br /&gt;
Event Channels:  1&lt;br /&gt;
Block Size:      40&lt;br /&gt;
Sampling Rate:   1000&lt;br /&gt;
Bits/Sample:     16&lt;br /&gt;
Resolution:      0.168uV/LSB&lt;br /&gt;
Parameter file test.prm successfully written&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Reference:Filters]], [[Contributions:ADCs]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Contributions]][[Category:Data Acquisition]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3826</id>
		<title>Contributions:AmpServerProADC</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3826"/>
		<updated>2008-06-04T16:13:27Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Functional Description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Synopsis==&lt;br /&gt;
The &#039;&#039;AmpServerProADC&#039;&#039; component implements the client side of EGI&#039;s TCP/IP-based Amp Server Pro (ASP) protocol. Thus, it may be used to interface BCI2000 with an EGI amplifier managed by an ASP server.&lt;br /&gt;
&lt;br /&gt;
==Location==&lt;br /&gt;
http://{{SERVERNAME}}/svn/trunk/src/contrib/SignalSource/AmpServerPro&lt;br /&gt;
&lt;br /&gt;
==Versioning==&lt;br /&gt;
===Author===&lt;br /&gt;
Joshua Fialkoff, (c) 2008 Wadsworth Center, New York State Department of Health.&lt;br /&gt;
&lt;br /&gt;
===Version History===&lt;br /&gt;
* V1.00 - 06/04/2008 - First working version&lt;br /&gt;
===Source Code Revisions===&lt;br /&gt;
*Initial development: 268&lt;br /&gt;
*Tested under: 1110&lt;br /&gt;
*Known to compile under: 1528&lt;br /&gt;
*Broken since: --&lt;br /&gt;
&lt;br /&gt;
==Functional Description==&lt;br /&gt;
This document describes the source module (&amp;lt;tt&amp;gt;AmpServerPro.exe&amp;lt;/tt&amp;gt;) that enables BCI2000 to utilize EGI&#039;s Amp Server for data acquisition.  This component has been tested with &#039;&#039;&#039;Amp Server Pro&#039;&#039;&#039; v1.0 beta running on an Intel-based Mac and with BCI2000 running on Windows XP.  There is a known issue running both Amp Server and BCI2000 on the same computer via Parallels.&lt;br /&gt;
&lt;br /&gt;
===Starting Amp Server Pro===&lt;br /&gt;
Amp Server Pro is capable of working with many amplifiers concurrently.  To begin using Amp Server Pro with BCI2000, ensure that at least one amplifier is connected to the server.  If no amplifier is connect, the Amp Server software emulates an amplifier.  If you choose to use the emulated amplifier, you should expect to see a smooth sine wave signal for all channels.  When your amplifiers are connected, start the Amp Server by double clicking &amp;quot;&amp;lt;tt&amp;gt;Amp Server&amp;lt;/tt&amp;gt;&amp;quot;.  That particular configuration is not recommended.&lt;br /&gt;
&lt;br /&gt;
===Compiling the Amp Server Pro Source Module===&lt;br /&gt;
&lt;br /&gt;
===Using Amp Server Pro with BCI2000===&lt;br /&gt;
Once you have started the Amp Server and compiled the Amp Server Pro module, you can begin collecting data with BCI2000 by following the steps below:&lt;br /&gt;
# Download the batch file available here and save it to &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# To run the cursor task in BCI2000, double click &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.  If you prefer to operate under a different paradigm, you can edit either of the last two lines of &amp;lt;tt&amp;gt;CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt; to load the appropriate modules. &lt;br /&gt;
# Click the &amp;quot;Configure&amp;quot; button.&lt;br /&gt;
# Set the appropriate parameters.  The Amp Server Pro module is initialized with a number of parameters which can be configured from the &amp;quot;Source&amp;quot; tab.  A summary and description of these parameters follows.&lt;br /&gt;
# Click &amp;quot;Set Config&amp;quot;.  If the operator reports any errors, you must handle these.&lt;br /&gt;
# Click &amp;quot;Start&amp;quot; to begin your experiment.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
===ServerAddress===&lt;br /&gt;
Address and port of the Neuroscan Acquire server, given in &amp;lt;tt&amp;gt;address:port&amp;lt;/tt&amp;gt; format.&lt;br /&gt;
&lt;br /&gt;
==States==&lt;br /&gt;
===NeuroscanEvent1===&lt;br /&gt;
An 8-bit state that encodes event information as sent over the Neuroscan Acquire protocol.&lt;br /&gt;
&lt;br /&gt;
==The &amp;lt;tt&amp;gt;neurogetparams&amp;lt;/tt&amp;gt; Command Line Tool==&lt;br /&gt;
This command line tool reads system settings from the &#039;&#039;&#039;Neuroscan Acquire&#039;&#039;&#039;&lt;br /&gt;
server, displays them on a screen and creates a BCI2000 parameter file fragment &lt;br /&gt;
if desired. It can be used as follows: &amp;lt;tt&amp;gt;neurogetparams -address &lt;br /&gt;
localhost:3999 -paramfile test.prm&amp;lt;/tt&amp;gt;. (The &#039;&#039;&#039;Acquire&#039;&#039;&#039; server has to be &lt;br /&gt;
enabled before using this tool.) Once BCI2000 is configured correctly, this &lt;br /&gt;
parameter file fragment needs to be loaded on top of the existing configuration &lt;br /&gt;
to make sure that the settings match. You only need to repeat this procedure if &lt;br /&gt;
you change settings in &#039;&#039;&#039;Acquire&#039;&#039;&#039; (e.g., such as the number of channels or &lt;br /&gt;
the amplification).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
BCI2000 Parameter Tool for Neuroscan Acquire V4.3&lt;br /&gt;
*******************************************************************&lt;br /&gt;
(C)2004 Gerwin Schalk and Juergen Mellinger&lt;br /&gt;
        Wadsworth Center, New York State Dept of Health, Albany, NY&lt;br /&gt;
        Eberhardt-Karls University of Tuebingen, Germany&lt;br /&gt;
*******************************************************************&lt;br /&gt;
Signal Channels: 32&lt;br /&gt;
Event Channels:  1&lt;br /&gt;
Block Size:      40&lt;br /&gt;
Sampling Rate:   1000&lt;br /&gt;
Bits/Sample:     16&lt;br /&gt;
Resolution:      0.168uV/LSB&lt;br /&gt;
Parameter file test.prm successfully written&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Reference:Filters]], [[Contributions:ADCs]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Contributions]][[Category:Data Acquisition]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3825</id>
		<title>Contributions:AmpServerProADC</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3825"/>
		<updated>2008-06-04T16:02:25Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Using Amp Server Pro with BCI2000 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Synopsis==&lt;br /&gt;
The &#039;&#039;AmpServerProADC&#039;&#039; component implements the client side of EGI&#039;s TCP/IP-based Amp Server Pro (ASP) protocol. Thus, it may be used to interface BCI2000 with an EGI amplifier managed by an ASP server.&lt;br /&gt;
&lt;br /&gt;
==Location==&lt;br /&gt;
http://{{SERVERNAME}}/svn/trunk/src/contrib/SignalSource/AmpServerPro&lt;br /&gt;
&lt;br /&gt;
==Versioning==&lt;br /&gt;
===Author===&lt;br /&gt;
Joshua Fialkoff, (c) 2008 Wadsworth Center, New York State Department of Health.&lt;br /&gt;
&lt;br /&gt;
===Version History===&lt;br /&gt;
* V1.00 - 06/04/2008 - First working version&lt;br /&gt;
===Source Code Revisions===&lt;br /&gt;
*Initial development: 268&lt;br /&gt;
*Tested under: 1110&lt;br /&gt;
*Known to compile under: 1528&lt;br /&gt;
*Broken since: --&lt;br /&gt;
&lt;br /&gt;
==Functional Description==&lt;br /&gt;
This document describes the source module (&amp;lt;tt&amp;gt;AmpServerPro.exe&amp;lt;/tt&amp;gt;) that enables BCI2000 to utilize EGI&#039;s Amp Server for data acquisition.  This component has been tested with &#039;&#039;&#039;Amp Server Pro&#039;&#039;&#039; v1.0 beta running on an Intel-based Mac and with BCI2000 running on Windows XP.  There is a known issue running both Amp Server and BCI2000 on the same computer via Parallels.&lt;br /&gt;
&lt;br /&gt;
===Starting Amp Server Pro===&lt;br /&gt;
Amp Server Pro is capable of working with many amplifiers concurrently.  To begin using Amp Server Pro with BCI2000, ensure that at least one amplifier is connected to the server.  If no amplifier is connect, the Amp Server software emulates an amplifier.  If you choose to use the emulated amplifier, you should expect to see a smooth sine wave signal for all channels.  When your amplifiers are connected, start the Amp Server by double clicking &amp;quot;&amp;lt;tt&amp;gt;Amp Server&amp;lt;/tt&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Compiling the Amp Server Pro Source Module===&lt;br /&gt;
&lt;br /&gt;
===Using Amp Server Pro with BCI2000===&lt;br /&gt;
Once you have started the Amp Server and compiled the Amp Server Pro module, you can begin collecting data with BCI2000 by following the steps below:&lt;br /&gt;
# Download the batch file available here and save it to &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# To run the cursor task in BCI2000, double click &amp;lt;tt&amp;gt;BCI2000/batch/CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt;.  If you prefer to operate under a different paradigm, you can edit either of the last two lines of &amp;lt;tt&amp;gt;CursorTask_AmpServerPro.bat&amp;lt;/tt&amp;gt; to load the appropriate modules. &lt;br /&gt;
# Click the &amp;quot;Configure&amp;quot; button.&lt;br /&gt;
# Set the appropriate parameters.  The Amp Server Pro module is initialized with a number of parameters which can be configured from the &amp;quot;Source&amp;quot; tab.  A summary and description of these parameters follows.&lt;br /&gt;
# Click &amp;quot;Set Config&amp;quot;.  If the operator reports any errors, you must handle these.&lt;br /&gt;
# Click &amp;quot;Start&amp;quot; to begin your experiment.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
===ServerAddress===&lt;br /&gt;
Address and port of the Neuroscan Acquire server, given in &amp;lt;tt&amp;gt;address:port&amp;lt;/tt&amp;gt; format.&lt;br /&gt;
&lt;br /&gt;
==States==&lt;br /&gt;
===NeuroscanEvent1===&lt;br /&gt;
An 8-bit state that encodes event information as sent over the Neuroscan Acquire protocol.&lt;br /&gt;
&lt;br /&gt;
==The &amp;lt;tt&amp;gt;neurogetparams&amp;lt;/tt&amp;gt; Command Line Tool==&lt;br /&gt;
This command line tool reads system settings from the &#039;&#039;&#039;Neuroscan Acquire&#039;&#039;&#039;&lt;br /&gt;
server, displays them on a screen and creates a BCI2000 parameter file fragment &lt;br /&gt;
if desired. It can be used as follows: &amp;lt;tt&amp;gt;neurogetparams -address &lt;br /&gt;
localhost:3999 -paramfile test.prm&amp;lt;/tt&amp;gt;. (The &#039;&#039;&#039;Acquire&#039;&#039;&#039; server has to be &lt;br /&gt;
enabled before using this tool.) Once BCI2000 is configured correctly, this &lt;br /&gt;
parameter file fragment needs to be loaded on top of the existing configuration &lt;br /&gt;
to make sure that the settings match. You only need to repeat this procedure if &lt;br /&gt;
you change settings in &#039;&#039;&#039;Acquire&#039;&#039;&#039; (e.g., such as the number of channels or &lt;br /&gt;
the amplification).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
BCI2000 Parameter Tool for Neuroscan Acquire V4.3&lt;br /&gt;
*******************************************************************&lt;br /&gt;
(C)2004 Gerwin Schalk and Juergen Mellinger&lt;br /&gt;
        Wadsworth Center, New York State Dept of Health, Albany, NY&lt;br /&gt;
        Eberhardt-Karls University of Tuebingen, Germany&lt;br /&gt;
*******************************************************************&lt;br /&gt;
Signal Channels: 32&lt;br /&gt;
Event Channels:  1&lt;br /&gt;
Block Size:      40&lt;br /&gt;
Sampling Rate:   1000&lt;br /&gt;
Bits/Sample:     16&lt;br /&gt;
Resolution:      0.168uV/LSB&lt;br /&gt;
Parameter file test.prm successfully written&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Reference:Filters]], [[Contributions:ADCs]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Contributions]][[Category:Data Acquisition]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3824</id>
		<title>Contributions:AmpServerProADC</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Contributions:AmpServerProADC&amp;diff=3824"/>
		<updated>2008-06-04T15:42:15Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Synopsis==&lt;br /&gt;
The &#039;&#039;AmpServerProADC&#039;&#039; component implements the client side of EGI&#039;s TCP/IP-based Amp Server Pro (ASP) protocol. Thus, it may be used to interface BCI2000 with an EGI amplifier managed by an ASP server.&lt;br /&gt;
&lt;br /&gt;
==Location==&lt;br /&gt;
http://{{SERVERNAME}}/svn/trunk/src/contrib/SignalSource/AmpServerPro&lt;br /&gt;
&lt;br /&gt;
==Versioning==&lt;br /&gt;
===Author===&lt;br /&gt;
Joshua Fialkoff, (c) 2008 Wadsworth Center, New York State Department of Health.&lt;br /&gt;
&lt;br /&gt;
===Version History===&lt;br /&gt;
* V1.00 - 06/04/2008 - First working version&lt;br /&gt;
===Source Code Revisions===&lt;br /&gt;
*Initial development: 268&lt;br /&gt;
*Tested under: 1110&lt;br /&gt;
*Known to compile under: 1528&lt;br /&gt;
*Broken since: --&lt;br /&gt;
&lt;br /&gt;
==Functional Description==&lt;br /&gt;
This document describes the source module (&amp;lt;tt&amp;gt;AmpServerPro.exe&amp;lt;/tt&amp;gt;) that enables BCI2000 to utilize EGI&#039;s Amp Server for data acquisition.  This component has been tested with &#039;&#039;&#039;Amp Server Pro&#039;&#039;&#039; v1.0 beta running on an Intel-based Mac and with BCI2000 running on Windows XP.  There is a known issue running both Amp Server and BCI2000 on the same computer via Parallels.&lt;br /&gt;
&lt;br /&gt;
===Starting Amp Server Pro===&lt;br /&gt;
Amp Server Pro is capable of working with many amplifiers concurrently.  To begin using Amp Server Pro with BCI2000, ensure that at least one amplifier is connected to the server.  If no amplifier is connect, the Amp Server software emulates an amplifier.  If you choose to use the emulated amplifier, you should expect to see a smooth sine wave signal for all channels.  When your amplifiers are connected, start the Amp Server by double clicking &amp;quot;&amp;lt;tt&amp;gt;Amp Server&amp;lt;/tt&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Compiling the Amp Server Pro Source Module===&lt;br /&gt;
&lt;br /&gt;
===Using Amp Server Pro with BCI2000===&lt;br /&gt;
Once you have started the Amp Server, you can begin collecting data with BCI2000 by following the steps below:&lt;br /&gt;
# Start the BCI2000 operator by double clicking &amp;lt;tt&amp;gt;BCI2000/prog/operat.exe&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# Start the AmpServerProADC by double clicking &amp;lt;tt&amp;gt;BCI2000/prog/AmpServerPro.exe&amp;lt;/tt&amp;gt;.  Note that this module is not part of the core BCI2000 distribution and will not be available by default.  Please follow the instructions above for &amp;quot;Compiling the Amp Server Pro Source Module&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
# Click the &amp;quot;Configure&amp;quot; button.&lt;br /&gt;
# Set the appropriate parameters.  The Amp Server Pro module is initialized with a number of parameters which can be configured from the &amp;quot;Source&amp;quot; tab.  &lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
===ServerAddress===&lt;br /&gt;
Address and port of the Neuroscan Acquire server, given in &amp;lt;tt&amp;gt;address:port&amp;lt;/tt&amp;gt; format.&lt;br /&gt;
&lt;br /&gt;
==States==&lt;br /&gt;
===NeuroscanEvent1===&lt;br /&gt;
An 8-bit state that encodes event information as sent over the Neuroscan Acquire protocol.&lt;br /&gt;
&lt;br /&gt;
==The &amp;lt;tt&amp;gt;neurogetparams&amp;lt;/tt&amp;gt; Command Line Tool==&lt;br /&gt;
This command line tool reads system settings from the &#039;&#039;&#039;Neuroscan Acquire&#039;&#039;&#039;&lt;br /&gt;
server, displays them on a screen and creates a BCI2000 parameter file fragment &lt;br /&gt;
if desired. It can be used as follows: &amp;lt;tt&amp;gt;neurogetparams -address &lt;br /&gt;
localhost:3999 -paramfile test.prm&amp;lt;/tt&amp;gt;. (The &#039;&#039;&#039;Acquire&#039;&#039;&#039; server has to be &lt;br /&gt;
enabled before using this tool.) Once BCI2000 is configured correctly, this &lt;br /&gt;
parameter file fragment needs to be loaded on top of the existing configuration &lt;br /&gt;
to make sure that the settings match. You only need to repeat this procedure if &lt;br /&gt;
you change settings in &#039;&#039;&#039;Acquire&#039;&#039;&#039; (e.g., such as the number of channels or &lt;br /&gt;
the amplification).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
BCI2000 Parameter Tool for Neuroscan Acquire V4.3&lt;br /&gt;
*******************************************************************&lt;br /&gt;
(C)2004 Gerwin Schalk and Juergen Mellinger&lt;br /&gt;
        Wadsworth Center, New York State Dept of Health, Albany, NY&lt;br /&gt;
        Eberhardt-Karls University of Tuebingen, Germany&lt;br /&gt;
*******************************************************************&lt;br /&gt;
Signal Channels: 32&lt;br /&gt;
Event Channels:  1&lt;br /&gt;
Block Size:      40&lt;br /&gt;
Sampling Rate:   1000&lt;br /&gt;
Bits/Sample:     16&lt;br /&gt;
Resolution:      0.168uV/LSB&lt;br /&gt;
Parameter file test.prm successfully written&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Reference:Filters]], [[Contributions:ADCs]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Contributions]][[Category:Data Acquisition]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Configuring_Online_Feedback&amp;diff=3728</id>
		<title>User Tutorial:Configuring Online Feedback</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Configuring_Online_Feedback&amp;diff=3728"/>
		<updated>2008-04-09T00:21:14Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Configuring the Classifier */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This tutorial step assumes that you have [[User Tutorial:Obtaining Mu Rhythm Parameters in an Initial Session|obtained Mu rhythm parameters]] in an initial session.&lt;br /&gt;
Now you are going to create a subject-specific parameter configuration for on-line feedback.&lt;br /&gt;
&lt;br /&gt;
==Starting up BCI2000==&lt;br /&gt;
Start BCI2000 using the appropriate batch file at &amp;lt;tt&amp;gt;batch/CursorTask_&amp;lt;YourAmplifier&amp;gt;.bat&amp;lt;/tt&amp;gt;. You might consider creating a link to this file on the desktop.&lt;br /&gt;
&lt;br /&gt;
==Spatial Filtering==&lt;br /&gt;
As a result of the initial session, you have some idea of the signal topography, and spatial filtering that extracts the signal best.&lt;br /&gt;
In this tutorial, we use &#039;&#039;Common Average Reference (CAR)&#039;&#039; filtering because it gives generally good results, and has the advantage of being independent of the montage used. Also, this method is independent of subject specific parameters, so you will only need to configure it once for a given electrode montage.&lt;br /&gt;
===Creating a CAR Filter===&lt;br /&gt;
The idea behind CAR filtering is to subtract the spatial average of all &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt; channels from each individual channel.&lt;br /&gt;
In terms of spatial filtering matrices, this means an identity matrix minus a matrix that has &amp;lt;math&amp;gt;1/N&amp;lt;/math&amp;gt; in all entries:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M_{ij} = \delta_{ij} - 1/N&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
For 16 and 64 channel recordings, you may load appropriate parameter fragments are available at &amp;lt;tt&amp;gt;parms/fragments/spatial_filters/CommonAverageN.prm&amp;lt;/tt&amp;gt;.&lt;br /&gt;
For other &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt;, you will need to configure the &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039; parameters as follows:&lt;br /&gt;
*Go to the &#039;&#039;Source&#039;&#039; tab. In the &#039;&#039;TransmitChList&#039;&#039; parameter, enter a space-separated list of channel numbers beginning with 1:&amp;lt;br /&amp;gt;1 2 3 4 ... N&lt;br /&gt;
*Go to the &#039;&#039;Filtering&#039;&#039; tab. Click the &#039;&#039;Edit Matrix&#039;&#039; button associated with the &#039;&#039;SpatialFilter&#039;&#039; parameter.&lt;br /&gt;
**Set both &#039;&#039;Number of columns&#039;&#039; and &#039;&#039;Number of rows&#039;&#039; to &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt;, and click &#039;&#039;Set new matrix size&#039;&#039;.&lt;br /&gt;
**In the diagonal entries of the matrix, enter the numerical value of &amp;lt;math&amp;gt;1-1/N&amp;lt;/math&amp;gt;.&lt;br /&gt;
**In the non-diagonal entries, enter the numerical value of &amp;lt;math&amp;gt;1/N&amp;lt;/math&amp;gt;.&lt;br /&gt;
**Right-click the matrix, and choose &#039;&#039;Edit labels&#039;&#039; from the context menu.&lt;br /&gt;
**As &#039;&#039;&#039;row&#039;&#039;&#039; labels, enter the electrode locations corresponding to channels.&lt;br /&gt;
**Close the matrix editor window.&lt;br /&gt;
*Click &#039;&#039;Configure Save&#039;&#039; in the configuration window, and check all parameter entries except &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039;; then close the window.&lt;br /&gt;
*Click &#039;&#039;Save Parameters&#039;&#039;, and save your spatial filter configuration under &amp;lt;tt&amp;gt;parms/fragments/spatial_filters/CommonAverage&amp;lt;YourMontage&amp;gt;.prm&amp;lt;/tt&amp;gt;.&lt;br /&gt;
*Click &#039;&#039;Configure Save&#039;&#039; again, uncheck all parameter entries, close the window.&lt;br /&gt;
The step of entering electrode locations is not mandatory. However, it makes subject-specific configuration easier to set up later on.&lt;br /&gt;
Also, pre-defined CAR parameter files do not specify electrode locations, so you will need to enter these locations manually, and save the resulting configuration as described above.&lt;br /&gt;
&lt;br /&gt;
==Subject-Specific Parameters==&lt;br /&gt;
In the next step, we construct a full parameter file for the subject:&lt;br /&gt;
*In the configuration window, click &#039;&#039;Load Parameters&#039;&#039; to load &amp;lt;tt&amp;gt;parms/mu_tutorial/MuFeedback.prm&amp;lt;/tt&amp;gt;.&lt;br /&gt;
*Additionally, load your amplifier configuration from &amp;lt;tt&amp;gt;parms/fragments/amplifiers&amp;lt;/tt&amp;gt;.&lt;br /&gt;
*Load the spatial filtering parameter fragment created above.&lt;br /&gt;
*Go to the &#039;&#039;Storage&#039;&#039; tab, and enter the subject&#039;s name or ID into the &#039;&#039;SubjectName&#039;&#039; parameter.&lt;br /&gt;
*Into the &#039;&#039;SubjectSession&#039;&#039; parameter, enter &#039;&#039;002&#039;&#039;.&lt;br /&gt;
===Configuring the Classifier===&lt;br /&gt;
Subject-specific electrode location and Mu rhythm frequency are part of the classifier&#039;s configuration.&lt;br /&gt;
They are entered into the &#039;&#039;Classifier&#039;&#039; parameter on the &#039;&#039;Filtering&#039;&#039; tab; there, click the &#039;&#039;Edit Matrix&#039;&#039; button associated with the &#039;&#039;Classifier&#039;&#039; parameter.&lt;br /&gt;
#Set &#039;&#039;Number of columns&#039;&#039; to 4, and &#039;&#039;Number of rows&#039;&#039; to 1 (or the number of features that you wish to use); then, click &#039;&#039;Set new matrix size&#039;&#039; to apply your changes.&lt;br /&gt;
#In the first column (of the first row), labeled &#039;&#039;input channel&#039;&#039;, enter the location of the feedback electrode. If you did not specify electrode locations when configuring the spatial filter, enter the channel number associated with the feedback electrode.&lt;br /&gt;
#In the second column, labeled &#039;&#039;input element (bin)&#039;&#039;, enter feedback frequency in Hz, immediately followed with &#039;&#039;Hz&#039;&#039;, as in &amp;lt;tt&amp;gt;12Hz&amp;lt;/tt&amp;gt;.&lt;br /&gt;
#In the third column, enter the value 2 corresponding to the control channel for vertical control of the cursor.&lt;br /&gt;
#In the fourth column, enter 1 as the weight.&lt;br /&gt;
#If you wish to use more than one feature, repeat steps 2-5 for each additional feature moving down a row each time (i.e., enter the 2nd feature on the 2nd row, etc...).&lt;br /&gt;
#Finally, save your configuration to &amp;lt;tt&amp;gt;parms/subjects/mu_feedback/&amp;lt;Subject&amp;gt;002.prm&amp;lt;/tt&amp;gt;, or whereever you find appropriate.&lt;br /&gt;
&lt;br /&gt;
==Next Step==&lt;br /&gt;
In the next step, you will learn how to actually [[User Tutorial:Performing a Mu Rhythm Feedback Session|perform a Mu rhythm feedback session]] using the configuration created in the present step.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Tutorial:Mu Rhythm BCI Tutorial]], [[User Reference:SpatialFilter]], [[User Reference:LinearClassifier]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_an_Offline_Analysis_of_MEG_Data&amp;diff=3655</id>
		<title>User Tutorial:Performing an Offline Analysis of MEG Data</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_an_Offline_Analysis_of_MEG_Data&amp;diff=3655"/>
		<updated>2008-03-20T04:22:02Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Experimental Design */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In this section of the tutorial, we will take you through the steps for performing a frequency-domain analysis of data recorded using an MEG.  Regardless of the selected recording technique, we expect the basic properties of the Mu rhythm to be identical for all humans, while the rhythm&#039;s spatial pattern and exact frequency range will differ.  As in [[User Tutorial:Performing an Offline Analysis of EEG Data]], we will use &#039;&#039;BCI2000 Offline Analysis&#039;&#039; to help determine the frequencies and locations that best facilitate response classification for online control.&lt;br /&gt;
&lt;br /&gt;
== Experimental Design ==&lt;br /&gt;
This tutorial will make use of the &amp;lt;tt&amp;gt;meg1_1.dat&amp;lt;/tt&amp;gt; session that is included as part of the supplementary sample files downloadable [http://www.bci2000.org/downloads/bin/sampleFiles.zip here].  Please download this file and extract the contents to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;.  &lt;br /&gt;
&lt;br /&gt;
In the &amp;lt;tt&amp;gt;meg1_1.dat&amp;lt;/tt&amp;gt; session, the subject was asked to perform the right justified box (LJB) task - a 1-D task available through BCI2000.  For this task, the subject must move a cursor up or down in order to hit a target on the right side of the screen.  The cursor begins on the left side of the screen and travels toward the target at a constant speed determined by the operator.  In this particular experiment, the subject was asked to open and close his/her left hand to move the cursor up and right hand in order to move the cursor down.  The task was controlled using &#039;&#039;BCI2000&#039;&#039; and the data was recorded and labeled using the TargetCode state variable.  For trials where the subject was attempting to move the cursor up (i.e., left-hand movement) TargetCode is equal to 1.  For trials where the subject is attempting to move the cursor down (i.e., right-hand movement) TargetCode is equal to 2.  For intervals between trials (i.e., when the subject is at rest), TargetCode is equal to 0.  If you are relatively new to &#039;&#039;BCI2000&#039;&#039;, you may find it helpful to inspect the datafiles we&#039;ll be using with the &#039;&#039;BCI2000 Viewer&#039;&#039;.  Using this tool, you will be able to see how state variables change with respect to the data over time.  For instruction on how to inspect data using the &#039;&#039;BCI2000 Viewer&#039;&#039;, please see [[User Reference:BCI2000Viewer]].&lt;br /&gt;
&lt;br /&gt;
==The Results==&lt;br /&gt;
In [[User Tutorial:Performing an Offline Analysis of EEG Data]] we manually entered all the analysis parameters.  In this tutorial we will make use of the &#039;&#039;BCI2000 Offline Analysis&#039;&#039; &amp;quot;Load Settings&amp;quot; feature that allows us to load previously saved settings.  In order to load the settings for this tutorial, please do the following:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
# Open BCI2000 Offline Analysis. If this is your first time using BCI2000 Offline Analysis, you may want to review the instructions on how to install and run this application: [[User Reference:BCI2000 Offline Analysis]].&lt;br /&gt;
# Click the &amp;quot;Add&amp;quot; button next to &amp;quot;Data Files&amp;quot; and navigate to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;. From there, select the file &amp;lt;tt&amp;gt;meg1_1.dat&amp;lt;/tt&amp;gt; and click &amp;quot;Open&amp;quot;. If this file isn&#039;t present, please download the [http://www.bci2000.org/downloads/bin/sampleFiles.zip supplementary sample files] and extract them to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# Click File&amp;gt;Load Settings&lt;br /&gt;
# Navigate to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;&lt;br /&gt;
# Double-click or otherwise open &amp;lt;tt&amp;gt;meg1Analysis.bws&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now, click &amp;quot;Generate Plots&amp;quot;.  At this point you will be presented with a message dialog warning you that the number of trials found using the selected datafile is less than 10.  In order to sufficiently generalize the response, it is recommended that your data (i.e., all selected datafiles together) comprise at least 10 trials.  In some cases, you will not be able to meet the suggested minimum.  In that case, you can mark the checkbox labeled &amp;quot;Ignore Warnings&amp;quot; to proceed.  Even with this box checked, however, &#039;&#039;BCI2000 Offline Analysis&#039;&#039; will halt any analysis where the data comprises less than 3 trials.  So, in order to proceed with this single data file, please check the box labeled &amp;quot;Ignore Warnings&amp;quot;.  Now the &#039;&#039;BCI2000 Offline Analysis&#039;&#039; window should look like this:&lt;br /&gt;
&lt;br /&gt;
[[Image:offlineAnalysisMeg1.png]]&lt;br /&gt;
&lt;br /&gt;
Click &amp;quot;Generate Plots&amp;quot; once again.  Once your analysis is complete, you should see feature, spectra and topography plots similar to those below:&lt;br /&gt;
&lt;br /&gt;
[[Image:meg1Feature.png|600px]]&lt;br /&gt;
&lt;br /&gt;
[[Image:meg1Spectrum.png|600px]]&lt;br /&gt;
&lt;br /&gt;
[[Image:meg1Topo.png|600px]]&lt;br /&gt;
&lt;br /&gt;
In designing this analysis, we followed a similar procedure to the procedure outlined in [[User Tutorial:Performing an Offline Analysis of EEG Data]].  We begin by looking for clusters of high [[Glossary|r-squared]] values.  Again, these clusters are typically the first indication that the frequency/channel pairs that comprise the cluster may be good features for on-line analysis.  In the generated feature plot, one such cluster is centered around (13 Hz, Channel 4).  So, we continue by creating a topography at 13 Hz and a spectra for channel 4.  As in previous tutorials, we use these plots to evaluate the physiological plausibility of this response.  First note that there are significant changes in the spectra between movement and rest.  Also, the most significant of these changes occurs around the mu and beta frequency ranges.  From the topography, we see that the response is largely present over the motor cortex of the left hemisphere.  Such a response should be expected since the movement occurred on the right side of the body.  Therefore, we conclude that (13 Hz, Channel 4) will likely be an effective feature for online control tasks.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Tutorial:Obtaining Mu Rhythm Parameters in an Initial Session]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_an_Offline_Analysis_of_ECoG_Data&amp;diff=3654</id>
		<title>User Tutorial:Performing an Offline Analysis of ECoG Data</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_an_Offline_Analysis_of_ECoG_Data&amp;diff=3654"/>
		<updated>2008-03-20T04:20:52Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In this section of the tutorial, we will take you through the steps for performing a frequency-domain analysis of data recorded using an ECoG.  Regardless of the selected recording technique, we expect the basic properties of the Mu rhythm to be identical for all humans, while the rhythm&#039;s spatial pattern and exact frequency range will differ.  As in [[User Tutorial:Performing an Offline Analysis of EEG Data]], we will use &#039;&#039;BCI2000 Offline Analysis&#039;&#039; to help determine the frequencies and locations that best facilitate response classification for online control.&lt;br /&gt;
&lt;br /&gt;
== Experimental Design ==&lt;br /&gt;
This tutorial will make use of the &amp;lt;tt&amp;gt;ecog1_1.dat&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;ecog1_2.dat&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;ecog1_3.dat&amp;lt;/tt&amp;gt; sessions that are included as part of the supplementary sample files downloadable [http://www.bci2000.org/downloads/bin/sampleFiles.zip here].  Please download this file and extract the contents to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
In the ecog1 sessions, the subject was asked to move each hand in a predefined pattern.  The resulting data was recorded using &#039;&#039;BCI2000&#039;&#039; and labeled using the StimulusCode state variable such that TargetCode is equal to 1 when the subject is responding to the instruction to move his/her left hand, 2 when the subject is responding to the instruction to move his/her right hand and 0 when the subject is responding to the instruction to rest.  If you are relatively new to &#039;&#039;BCI2000&#039;&#039;, you may find it helpful to inspect the data files we&#039;ll be using with the &#039;&#039;BCI2000 Viewer&#039;&#039;.  Using this tool, you will be able to see how state variables change with respect to the data over time.  For instruction on how to inspect data using the &#039;&#039;BCI2000 Viewer&#039;&#039;, please see [[User Reference:BCI2000Viewer]].&lt;br /&gt;
&lt;br /&gt;
==The Results==&lt;br /&gt;
In [[User Tutorial:Performing an Offline Analysis of EEG Data]] we manually entered all the analysis parameters.  In this tutorial we will make use of the &#039;&#039;BCI2000 Offline Analysis&#039;&#039; &amp;quot;Load Settings&amp;quot; feature that allows us to load previously saved settings.  In order to load the settings for this tutorial, please do the following:&lt;br /&gt;
&lt;br /&gt;
# Open BCI2000 Offline Analysis. If this is your first time using BCI2000 Offline Analysis, you may want to review the instructions on how to install and run this application: [[User Reference:BCI2000 Offline Analysis]].&lt;br /&gt;
# Click the &amp;quot;Add&amp;quot; button next to &amp;quot;Data Files&amp;quot; and navigate to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;. From there, select the files &amp;lt;tt&amp;gt;ecog1_1.dat&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;ecog1_2.dat&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;ecog1_3.dat&amp;lt;/tt&amp;gt; and click &amp;quot;Open&amp;quot;. To select multiple files, you&#039;ll need to first click on any one file and then, while holding down the control button on your keyboard, click the remaining files.  If these files aren&#039;t present, please download the [http://www.bci2000.org/downloads/bin/sampleFiles.zip supplementary sample files] and extract them to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# Click File&amp;gt;Load Settings&lt;br /&gt;
# Navigate to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;&lt;br /&gt;
# Double-click or otherwise open &amp;lt;tt&amp;gt;ecog1Analysis.bws&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
At this point &#039;&#039;BCI2000 Offline Analysis&#039;&#039; should look like this:&lt;br /&gt;
&lt;br /&gt;
[[Image:offlineAnalysisEcog1.png]]&lt;br /&gt;
&lt;br /&gt;
Now, click &amp;quot;Generate Plots&amp;quot;.  Once your analysis is complete, you will see feature, spectra and topography plots similar to those below:&lt;br /&gt;
&lt;br /&gt;
[[Image:ecog1Feature.png|600px]]&lt;br /&gt;
&lt;br /&gt;
[[Image:ecog1Spectrum.png|600px]]&lt;br /&gt;
&lt;br /&gt;
[[Image:ecog1Topo.png|600px]]&lt;br /&gt;
&lt;br /&gt;
In designing this analysis, we followed a similar procedure to the procedure outlined in [[User Tutorial:Performing an Offline Analysis of EEG Data]].  We begin by looking for clusters of high [[Glossary|r-squared]] values.  Again, these clusters are typically the first indication that the frequency/channel pairs that comprise the cluster may be good features for online analysis.  In the generated feature plot, we see that one of the clusters with the highest [[Glossary|r-squared]] values is centered around (25 Hz, Channel 14).  So, we continue by creating a topography at 25 Hz and a spectra for channel 14.  In the previous tutorial, we used these plots to evaluate the physiological plausibility of this response.  We first note that there are significant changes in the spectra between movement and rest.  Also, the most significant of these changes occur around the beta frequency range.  When inspecting the topographies resulting from the EEG-based analysis, we were able to relate the spatial response to areas of the motor cortex known to control the muscle being moved.  We can do this in ECoG as well.  In this case, however, the location of an electrode will differ based on where the grid was placed.  We must also be aware that an ECoG grid is subject to shifts in position over time.  Because the above response is related to movement of the right hand, we expect the response to appear over the motor cortex of the left-hemisphere.  There are, however, many reasons why this may not be the case.  One simple reason is that the subject may not be performing the requested instruction.  Regardless, it is reasonable to conclude from our analysis that (25 Hz, Channel 14) may be an effective feature for use in an on-line recognition task.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Tutorial:Obtaining Mu Rhythm Parameters in an Initial Session]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_a_Time-Domain_Offline_Analysis_of_ECoG_Data&amp;diff=3653</id>
		<title>User Tutorial:Performing a Time-Domain Offline Analysis of ECoG Data</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_a_Time-Domain_Offline_Analysis_of_ECoG_Data&amp;diff=3653"/>
		<updated>2008-03-20T04:19:27Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In this section of the tutorial, we perform a time-domain offline analysis of a dataset recorded using an ECoG.  As in the case of EEG data, we expect the basic properties of the P300 evoked potential to be the same for all individuals while the response&#039;s latency, width, and spatial pattern may vary. As in [[User Tutorial:Performing a Time-Domain Offline Analysis of EEG Data]], we will use &#039;&#039;BCI2000 Offline Analysis&#039;&#039; to help determine the P300 parameters for a given subject.&lt;br /&gt;
&lt;br /&gt;
== Experimental Design ==&lt;br /&gt;
This tutorial will make use of the &amp;lt;tt&amp;gt;ecog2_1.dat&amp;lt;/tt&amp;gt; session that is included as part of the supplementary sample files downloadable [http://www.bci2000.org/downloads/bin/sampleFiles.zip here].  Please download this file and extract the contents to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
In the ecog2 session the subject was placed in front of a monitor displaying a P300 speller matrix.  A test sequence, consisting of a string of letters with a single letter highlighted, was also displayed.  In each run of the experiment, the subject was asked to focus on the symbol in the speller matrix that was currently highlighted in the test sequence. This way, it was possible to label evoked responses according to whether they occurred for the highlighted symbol or for some other symbol in the matrix. Such labels can be attached to BCI2000 data using state variables. In the case of the ecog2 data, we used the state variable StimulusType such that StimulusType is equal to 1 when the letter that flashes is the letter that the subject is focused on (i.e., the letter that is currently highlighted). When the symbol that flashes is not the symbol of focus, StimulusType will not be equal to 1.  If you are relatively new to &#039;&#039;BCI2000&#039;&#039;, you may find it helpful to inspect the data files we&#039;ll be using with the &#039;&#039;BCI2000 Viewer&#039;&#039;.  Using this tool, you will be able to see how state variables change with respect to the data over time.  For instruction on how to inspect data using the &#039;&#039;BCI2000 Viewer&#039;&#039;, please see [[User Reference:BCI2000Viewer]].&lt;br /&gt;
&lt;br /&gt;
==The Results==&lt;br /&gt;
In [[User Tutorial:Performing an Offline Analysis of EEG Data]] we manually entered all the analysis parameters.  In this tutorial we will make use of the &#039;&#039;BCI2000 Offline Analysis&#039;&#039; &amp;quot;Load Settings&amp;quot; feature that allows us to load previously saved settings. In order to load the settings for this tutorial, please do the following:&lt;br /&gt;
&lt;br /&gt;
# Open BCI2000 Offline Analysis. If this is your first time using BCI2000 Offline Analysis, you may want to review the instructions on how to install and run this application: [[User Reference:BCI2000 Offline Analysis]].&lt;br /&gt;
# Click the &amp;quot;Add&amp;quot; button next to &amp;quot;Data Files&amp;quot; and navigate to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;. From there, select the file &amp;lt;tt&amp;gt;ecog2_1.dat&amp;lt;/tt&amp;gt; and click &amp;quot;Open&amp;quot;. If this file isn&#039;t present, please download the [http://www.bci2000.org/downloads/bin/sampleFiles.zip supplementary sample files] and extract them to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# Click File&amp;gt;Load Settings&lt;br /&gt;
# Navigate to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;&lt;br /&gt;
# Double-click or otherwise open &amp;lt;tt&amp;gt;ecog2Analysis.bws&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
At this point &#039;&#039;BCI2000 Offline Analysis&#039;&#039; should look like this:&lt;br /&gt;
&lt;br /&gt;
[[Image:offlineAnalysisEcog2.png]]&lt;br /&gt;
&lt;br /&gt;
Typically in a P300 analysis, we would not use a CAR filter because it would remove too much of the signal.  In this case, as we will find later, the response is primarily on a single channel and performing a CAR filter will provide significant noise reduction without sacrificing the signal quality.  Now, click &amp;quot;Generate Plots&amp;quot;.  Once your analysis is complete, you should see feature, waveform and topography plots similar to those below:&lt;br /&gt;
&lt;br /&gt;
[[Image:ecog2Feature.png|600px]]&lt;br /&gt;
&lt;br /&gt;
[[Image:ecog2Waveform.png|600px]]&lt;br /&gt;
&lt;br /&gt;
[[Image:ecog2Topo.png|600px]]&lt;br /&gt;
&lt;br /&gt;
In designing this analysis, we followed a similar procedure to the procedure outlined in [[User Tutorial:Performing a Time-Domain Offline Analysis of EEG Data]].  We begin by looking for clusters of high [[Glossary|r-squared]] values. Again, these clusters are typically the first indication that the time/channel pairs that comprise the cluster may be good features for on-line analysis.  In the generated feature plot, we see that one of the clusters with the highest [[Glossary|r-squared]] values is centered around (260 ms, Channel 1).  So, we continue by creating a topography at 260 ms and a waveform for channel 1.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Tutorial:Obtaining P300 Parameters in an Initial Session]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_a_Time-Domain_Offline_Analysis_of_ECoG_Data&amp;diff=3652</id>
		<title>User Tutorial:Performing a Time-Domain Offline Analysis of ECoG Data</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_a_Time-Domain_Offline_Analysis_of_ECoG_Data&amp;diff=3652"/>
		<updated>2008-03-20T04:15:14Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In this section of the tutorial, we perform a time-domain offline analysis of a dataset recorded using an ECoG.  As in the case of EEG data, we expect the basic properties of the P300 evoked potential to be the same for all individuals while the response&#039;s latency, width, and spatial pattern may vary. As in [[User Tutorial:Performing a Time-Domain Offline Analysis of EEG Data]], we will use &#039;&#039;BCI2000 Offline Analysis&#039;&#039; to help determine the P300 parameters for a given subject.&lt;br /&gt;
&lt;br /&gt;
== Experimental Design ==&lt;br /&gt;
This tutorial will make use of the &amp;lt;tt&amp;gt;ecog2_1.dat&amp;lt;/tt&amp;gt; session that is included as part of the supplementary sample files downloadable [http://www.bci2000.org/downloads/bin/sampleFiles.zip here].  Please download this file and extract the contents to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;.  In the ecog2 session the subject was placed in front of a monitor displaying a P300 speller matrix.  A test sequence, consisting of a string of letters with a single letter highlighted, was also displayed.  In each run of the experiment, the subject was asked to focus on the symbol in the speller matrix that was currently highlighted in the test sequence. This way, it was possible to label evoked responses according to whether they occurred for the highlighted symbol or for some other symbol in the matrix. Such labels can be attached to BCI2000 data using state variables. In the case of the ecog2 data, we used the state variable StimulusType such that StimulusType is equal to 1 when the letter that flashes is the letter that the subject is focused on (i.e., the letter that is currently highlighted). When the symbol that flashes is not the symbol of focus, StimulusType will not be equal to 1.  If you are relatively new to &#039;&#039;BCI2000&#039;&#039;, you may find it helpful to inspect the data files we&#039;ll be using with the &#039;&#039;BCI2000 Viewer&#039;&#039;.  Using this tool, you will be able to see how state variables change with respect to the data over time.  For instruction on how to inspect data using the &#039;&#039;BCI2000 Viewer&#039;&#039;, please see [[User Reference:BCI2000Viewer]].&lt;br /&gt;
&lt;br /&gt;
==The Results==&lt;br /&gt;
In [[User Tutorial:Performing an Offline Analysis of EEG Data]] we manually entered all the analysis parameters.  In this tutorial we will make use of the &#039;&#039;BCI2000 Offline Analysis&#039;&#039; &amp;quot;Load Settings&amp;quot; feature that allows us to load previously saved settings. In order to load the settings for this tutorial, please do the following:&lt;br /&gt;
&lt;br /&gt;
# Open BCI2000 Offline Analysis. If this is your first time using BCI2000 Offline Analysis, you may want to review the instructions on how to install and run this application: [[User Reference:BCI2000 Offline Analysis]].&lt;br /&gt;
# Click the &amp;quot;Add&amp;quot; button next to &amp;quot;Data Files&amp;quot; and navigate to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;. From there, select the file &amp;lt;tt&amp;gt;ecog2_1.dat&amp;lt;/tt&amp;gt; and click &amp;quot;Open&amp;quot;. If this file isn&#039;t present, please download the [http://www.bci2000.org/downloads/bin/sampleFiles.zip supplementary sample files] and extract them to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# Click File&amp;gt;Load Settings&lt;br /&gt;
# Navigate to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;&lt;br /&gt;
# Double-click or otherwise open &amp;lt;tt&amp;gt;ecog2Analysis.bws&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
At this point &#039;&#039;BCI2000 Offline Analysis&#039;&#039; should look like this:&lt;br /&gt;
&lt;br /&gt;
[[Image:offlineAnalysisEcog2.png]]&lt;br /&gt;
&lt;br /&gt;
Typically in a P300 analysis, we would not use a CAR filter because it would remove too much of the signal.  In this case, as we will find later, the response is primarily on a single channel and performing a CAR filter will provide significant noise reduction without sacrificing the signal quality.  Now, click &amp;quot;Generate Plots&amp;quot;.  Once your analysis is complete, you should see feature, waveform and topography plots similar to those below:&lt;br /&gt;
&lt;br /&gt;
[[Image:ecog2Feature.png|600px]]&lt;br /&gt;
&lt;br /&gt;
[[Image:ecog2Waveform.png|600px]]&lt;br /&gt;
&lt;br /&gt;
[[Image:ecog2Topo.png|600px]]&lt;br /&gt;
&lt;br /&gt;
In designing this analysis, we followed a similar procedure to the procedure outlined in [[User Tutorial:Performing a Time-Domain Offline Analysis of EEG Data]].  We begin by looking for clusters of high [[Glossary|r-squared]] values. Again, these clusters are typically the first indication that the time/channel pairs that comprise the cluster may be good features for on-line analysis.  In the generated feature plot, we see that one of the clusters with the highest [[Glossary|r-squared]] values is centered around (260 ms, Channel 1).  So, we continue by creating a topography at 260 ms and a waveform for channel 1.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Tutorial:Obtaining P300 Parameters in an Initial Session]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_an_Offline_Analysis_of_MEG_Data&amp;diff=3651</id>
		<title>User Tutorial:Performing an Offline Analysis of MEG Data</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_an_Offline_Analysis_of_MEG_Data&amp;diff=3651"/>
		<updated>2008-03-20T04:04:33Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In this section of the tutorial, we will take you through the steps for performing a frequency-domain analysis of data recorded using an MEG.  Regardless of the selected recording technique, we expect the basic properties of the Mu rhythm to be identical for all humans, while the rhythm&#039;s spatial pattern and exact frequency range will differ.  As in [[User Tutorial:Performing an Offline Analysis of EEG Data]], we will use &#039;&#039;BCI2000 Offline Analysis&#039;&#039; to help determine the frequencies and locations that best facilitate response classification for online control.&lt;br /&gt;
&lt;br /&gt;
== Experimental Design ==&lt;br /&gt;
This tutorial will make use of the &amp;lt;tt&amp;gt;meg1_1.dat&amp;lt;/tt&amp;gt; session that is included in the supplementary sample files downloadable [http://www.bci2000.org/downloads/bin/sampleFiles.zip here].  Please download this file and extract the contents to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;.  In the &amp;lt;tt&amp;gt;meg1_1.dat&amp;lt;/tt&amp;gt; session, the subject was asked to perform the right justified box (LJB) task - a 1-D task available through BCI2000.  For this task, the subject must move a cursor up or down in order to hit a target on the right side of the screen.  The cursor begins on the left side of the screen and travels toward the target at a constant speed determined by the operator.  In this particular experiment, the subject was asked to open and close his/her left hand to move the cursor up and right hand in order to move the cursor down.  The task was controlled using &#039;&#039;BCI2000&#039;&#039; and the data was recorded and labeled using the TargetCode state variable.  For trials where the subject was attempting to move the cursor up (i.e., left-hand movement) TargetCode is equal to 1.  For trials where the subject is attempting to move the cursor down (i.e., right-hand movement) TargetCode is equal to 2.  For intervals between trials (i.e., when the subject is at rest), TargetCode is equal to 0.  If you are relatively new to &#039;&#039;BCI2000&#039;&#039;, you may find it helpful to inspect the datafiles we&#039;ll be using with the &#039;&#039;BCI2000 Viewer&#039;&#039;.  Using this tool, you will be able to see how state variables change with respect to the data over time.  For instruction on how to inspect data using the &#039;&#039;BCI2000 Viewer&#039;&#039;, please see [[User Reference:BCI2000Viewer]].&lt;br /&gt;
&lt;br /&gt;
==The Results==&lt;br /&gt;
In [[User Tutorial:Performing an Offline Analysis of EEG Data]] we manually entered all the analysis parameters.  In this tutorial we will make use of the &#039;&#039;BCI2000 Offline Analysis&#039;&#039; &amp;quot;Load Settings&amp;quot; feature that allows us to load previously saved settings.  In order to load the settings for this tutorial, please do the following:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
# Open BCI2000 Offline Analysis. If this is your first time using BCI2000 Offline Analysis, you may want to review the instructions on how to install and run this application: [[User Reference:BCI2000 Offline Analysis]].&lt;br /&gt;
# Click the &amp;quot;Add&amp;quot; button next to &amp;quot;Data Files&amp;quot; and navigate to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;. From there, select the file &amp;lt;tt&amp;gt;meg1_1.dat&amp;lt;/tt&amp;gt; and click &amp;quot;Open&amp;quot;. If this file isn&#039;t present, please download the [http://www.bci2000.org/downloads/bin/sampleFiles.zip supplementary sample files] and extract them to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# Click File&amp;gt;Load Settings&lt;br /&gt;
# Navigate to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;&lt;br /&gt;
# Double-click or otherwise open &amp;lt;tt&amp;gt;meg1Analysis.bws&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now, click &amp;quot;Generate Plots&amp;quot;.  At this point you will be presented with a message dialog warning you that the number of trials found using the selected datafile is less than 10.  In order to sufficiently generalize the response, it is recommended that your data (i.e., all selected datafiles together) comprise at least 10 trials.  In some cases, you will not be able to meet the suggested minimum.  In that case, you can mark the checkbox labeled &amp;quot;Ignore Warnings&amp;quot; to proceed.  Even with this box checked, however, &#039;&#039;BCI2000 Offline Analysis&#039;&#039; will halt any analysis where the data comprises less than 3 trials.  So, in order to proceed with this single data file, please check the box labeled &amp;quot;Ignore Warnings&amp;quot;.  Now the &#039;&#039;BCI2000 Offline Analysis&#039;&#039; window should look like this:&lt;br /&gt;
&lt;br /&gt;
[[Image:offlineAnalysisMeg1.png]]&lt;br /&gt;
&lt;br /&gt;
Click &amp;quot;Generate Plots&amp;quot; once again.  Once your analysis is complete, you should see feature, spectra and topography plots similar to those below:&lt;br /&gt;
&lt;br /&gt;
[[Image:meg1Feature.png|600px]]&lt;br /&gt;
&lt;br /&gt;
[[Image:meg1Spectrum.png|600px]]&lt;br /&gt;
&lt;br /&gt;
[[Image:meg1Topo.png|600px]]&lt;br /&gt;
&lt;br /&gt;
In designing this analysis, we followed a similar procedure to the procedure outlined in [[User Tutorial:Performing an Offline Analysis of EEG Data]].  We begin by looking for clusters of high [[Glossary|r-squared]] values.  Again, these clusters are typically the first indication that the frequency/channel pairs that comprise the cluster may be good features for on-line analysis.  In the generated feature plot, one such cluster is centered around (13 Hz, Channel 4).  So, we continue by creating a topography at 13 Hz and a spectra for channel 4.  As in previous tutorials, we use these plots to evaluate the physiological plausibility of this response.  First note that there are significant changes in the spectra between movement and rest.  Also, the most significant of these changes occurs around the mu and beta frequency ranges.  From the topography, we see that the response is largely present over the motor cortex of the left hemisphere.  Such a response should be expected since the movement occurred on the right side of the body.  Therefore, we conclude that (13 Hz, Channel 4) will likely be an effective feature for online control tasks.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Tutorial:Obtaining Mu Rhythm Parameters in an Initial Session]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_an_Offline_Analysis_of_ECoG_Data&amp;diff=3645</id>
		<title>User Tutorial:Performing an Offline Analysis of ECoG Data</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_an_Offline_Analysis_of_ECoG_Data&amp;diff=3645"/>
		<updated>2008-03-19T15:10:24Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In this section of the tutorial, we will take you through the steps for performing a frequency-domain analysis of data recorded using an ECoG.  Regardless of the selected recording technique, we expect the basic properties of the Mu rhythm to be identical for all humans, while the rhythm&#039;s spatial pattern and exact frequency range will differ.  As in [[User Tutorial:Performing an Offline Analysis of EEG Data]], we will use &#039;&#039;BCI2000 Offline Analysis&#039;&#039; to help determine the frequencies and locations that best facilitate response classification for online control.&lt;br /&gt;
&lt;br /&gt;
== Experimental Design ==&lt;br /&gt;
This tutorial will make use of the &amp;lt;tt&amp;gt;ecog1_1.dat&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;ecog1_2.dat&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;ecog1_3.dat&amp;lt;/tt&amp;gt; sessions that are included in the supplementary sample files downloadable [http://www.bci2000.org/downloads/bin/sampleFiles.zip here].  Please download this file and extract the contents to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;.  In the ecog1 sessions, the subject was asked to move each hand in a predefined pattern.  The resulting data was recorded using &#039;&#039;BCI2000&#039;&#039; and labeled using the StimulusCode state variable such that TargetCode is equal to 1 when the subject is responding to the instruction to move his/her left hand, 2 when the subject is responding to the instruction to move his/her right hand and 0 when the subject is responding to the instruction to rest.  If you are relatively new to &#039;&#039;BCI2000&#039;&#039;, you may find it helpful to inspect the data files we&#039;ll be using with the &#039;&#039;BCI2000 Viewer&#039;&#039;.  Using this tool, you will be able to see how state variables change with respect to the data over time.  For instruction on how to inspect data using the &#039;&#039;BCI2000 Viewer&#039;&#039;, please see [[User Reference:BCI2000Viewer]].&lt;br /&gt;
&lt;br /&gt;
==The Results==&lt;br /&gt;
In [[User Tutorial:Performing an Offline Analysis of EEG Data]] we manually entered all the analysis parameters.  In this tutorial we will make use of the &#039;&#039;BCI2000 Offline Analysis&#039;&#039; &amp;quot;Load Settings&amp;quot; feature that allows us to load previously saved settings.  In order to load the settings for this tutorial, please do the following:&lt;br /&gt;
&lt;br /&gt;
# Open BCI2000 Offline Analysis. If this is your first time using BCI2000 Offline Analysis, you may want to review the instructions on how to install and run this application: [[User Reference:BCI2000 Offline Analysis]].&lt;br /&gt;
# Click the &amp;quot;Add&amp;quot; button next to &amp;quot;Data Files&amp;quot; and navigate to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;. From there, select the files &amp;lt;tt&amp;gt;ecog1_1.dat&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;ecog1_2.dat&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;ecog1_3.dat&amp;lt;/tt&amp;gt; and click &amp;quot;Open&amp;quot;. To select multiple files, you&#039;ll need to first click on any one file and then, while holding down the control button on your keyboard, click the remaining files.  If these files aren&#039;t present, please download the [http://www.bci2000.org/downloads/bin/sampleFiles.zip supplementary sample files] and extract them to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# Click File&amp;gt;Load Settings&lt;br /&gt;
# Navigate to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;&lt;br /&gt;
# Double-click or otherwise open &amp;lt;tt&amp;gt;ecog1Analysis.bws&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
At this point &#039;&#039;BCI2000 Offline Analysis&#039;&#039; should look like this:&lt;br /&gt;
&lt;br /&gt;
[[Image:offlineAnalysisEcog1.png]]&lt;br /&gt;
&lt;br /&gt;
Now, click &amp;quot;Generate Plots&amp;quot;.  Once your analysis is complete, you will see feature, spectra and topography plots similar to those below:&lt;br /&gt;
&lt;br /&gt;
[[Image:ecog1Feature.png|600px]]&lt;br /&gt;
&lt;br /&gt;
[[Image:ecog1Spectrum.png|600px]]&lt;br /&gt;
&lt;br /&gt;
[[Image:ecog1Topo.png|600px]]&lt;br /&gt;
&lt;br /&gt;
In designing this analysis, we followed a similar procedure to the procedure outlined in [[User Tutorial:Performing an Offline Analysis of EEG Data]].  We begin by looking for clusters of high [[Glossary|r-squared]] values.  Again, these clusters are typically the first indication that the frequency/channel pairs that comprise the cluster may be good features for online analysis.  In the generated feature plot, we see that one of the clusters with the highest [[Glossary|r-squared]] values is centered around (25 Hz, Channel 14).  So, we continue by creating a topography at 25 Hz and a spectra for channel 14.  In the previous tutorial, we used these plots to evaluate the physiological plausibility of this response.  We first note that there are significant changes in the spectra between movement and rest.  Also, the most significant of these changes occur around the beta frequency range.  When inspecting the topographies resulting from the EEG-based analysis, we were able to relate the spatial response to areas of the motor cortex known to control the muscle being moved.  We can do this in ECoG as well.  In this case, however, the location of an electrode will differ based on where the grid was placed.  We must also be aware that an ECoG grid is subject to shifts in position over time.  Because the above response is related to movement of the right hand, we expect the response to appear over the motor cortex of the left-hemisphere.  There are, however, many reasons why this may not be the case.  One simple reason is that the subject may not be performing the requested instruction.  Regardless, it is reasonable to conclude from our analysis that (25 Hz, Channel 14) may be an effective feature for use in an on-line recognition task.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Tutorial:Obtaining Mu Rhythm Parameters in an Initial Session]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_an_Offline_Analysis_of_ECoG_Data&amp;diff=3644</id>
		<title>User Tutorial:Performing an Offline Analysis of ECoG Data</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_an_Offline_Analysis_of_ECoG_Data&amp;diff=3644"/>
		<updated>2008-03-19T15:09:52Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* The Results */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In this section of the tutorial, we will take you through the steps for performing a frequency-domain analysis of data recorded using an ECoG.  Regardless of the selected recording technique, we expect the basic properties of the Mu rhythm to be identical for all humans, while the rhythm&#039;s spatial pattern and exact frequency range will differ.  As in [[User Tutorial:Performing an Offline Analysis of EEG Data]], we will use &#039;&#039;BCI2000 Offline Analysis&#039;&#039; to help determine the frequencies and locations that best facilitate response classification for online control.&lt;br /&gt;
&lt;br /&gt;
== Experimental Design ==&lt;br /&gt;
This tutorial will make use of the &amp;lt;tt&amp;gt;ecog1_1.dat&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;ecog1_2.dat&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;ecog1_3.dat&amp;lt;/tt&amp;gt; sessions that are included in the supplementary sample files downloadable [http://www.bci2000.org/downloads/bin/sampleFiles.zip here].  Please download this file and extract the contents to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;.  In the ecog1 sessions, the subject was asked to move each hand in a predefined pattern.  The resulting data was recorded using &#039;&#039;BCI2000&#039;&#039; and labeled using the StimulusCode state variable such that TargetCode is equal to 1 when the subject is responding to the instruction to move his/her left hand, 2 when the subject is responding to the instruction to move his/her right hand and 0 when the subject is responding to the instruction to rest.  If you are relatively new to &#039;&#039;BCI2000&#039;&#039;, you may find it helpful to inspect the data files we&#039;ll be using with the &#039;&#039;BCI2000 Viewer&#039;&#039;.  Using this tool, you will be able to see how state variables change with respect to the data over time.  For instruction on how to inspect data using the &#039;&#039;BCI2000 Viewer&#039;&#039;, please see [[User Reference:BCI2000Viewer]].&lt;br /&gt;
&lt;br /&gt;
==The Results==&lt;br /&gt;
In [[User Tutorial:Performing an Offline Analysis of EEG Data]] we manually entered all the analysis parameters.  In this tutorial we will make use of the &#039;&#039;BCI2000 Offline Analysis&#039;&#039; &amp;quot;Load Settings&amp;quot; feature that allows us to load previously saved settings.  In order to load the settings for this tutorial, please do the following:&lt;br /&gt;
&lt;br /&gt;
# Open BCI2000 Offline Analysis. If this is your first time using BCI2000 Offline Analysis, you may want to review the instructions on how to install and run this application: [[User Reference:BCI2000 Offline Analysis]].&lt;br /&gt;
# Click the &amp;quot;Add&amp;quot; button next to &amp;quot;Data Files&amp;quot; and navigate to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;. From there, select the files &amp;lt;tt&amp;gt;ecog1_1.dat&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;ecog1_2.dat&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;ecog1_3.dat&amp;lt;/tt&amp;gt; and click &amp;quot;Open&amp;quot;. To select multiple files, you&#039;ll need to first click on any one file and then, while holding down the control button on your keyboard, click the remaining files.  If these files aren&#039;t present, please download the [supplementary sample files] and extract them to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# Click File&amp;gt;Load Settings&lt;br /&gt;
# Navigate to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;&lt;br /&gt;
# Double-click or otherwise open &amp;lt;tt&amp;gt;ecog1Analysis.bws&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
At this point &#039;&#039;BCI2000 Offline Analysis&#039;&#039; should look like this:&lt;br /&gt;
&lt;br /&gt;
[[Image:offlineAnalysisEcog1.png]]&lt;br /&gt;
&lt;br /&gt;
Now, click &amp;quot;Generate Plots&amp;quot;.  Once your analysis is complete, you will see feature, spectra and topography plots similar to those below:&lt;br /&gt;
&lt;br /&gt;
[[Image:ecog1Feature.png|600px]]&lt;br /&gt;
&lt;br /&gt;
[[Image:ecog1Spectrum.png|600px]]&lt;br /&gt;
&lt;br /&gt;
[[Image:ecog1Topo.png|600px]]&lt;br /&gt;
&lt;br /&gt;
In designing this analysis, we followed a similar procedure to the procedure outlined in [[User Tutorial:Performing an Offline Analysis of EEG Data]].  We begin by looking for clusters of high [[Glossary|r-squared]] values.  Again, these clusters are typically the first indication that the frequency/channel pairs that comprise the cluster may be good features for online analysis.  In the generated feature plot, we see that one of the clusters with the highest [[Glossary|r-squared]] values is centered around (25 Hz, Channel 14).  So, we continue by creating a topography at 25 Hz and a spectra for channel 14.  In the previous tutorial, we used these plots to evaluate the physiological plausibility of this response.  We first note that there are significant changes in the spectra between movement and rest.  Also, the most significant of these changes occur around the beta frequency range.  When inspecting the topographies resulting from the EEG-based analysis, we were able to relate the spatial response to areas of the motor cortex known to control the muscle being moved.  We can do this in ECoG as well.  In this case, however, the location of an electrode will differ based on where the grid was placed.  We must also be aware that an ECoG grid is subject to shifts in position over time.  Because the above response is related to movement of the right hand, we expect the response to appear over the motor cortex of the left-hemisphere.  There are, however, many reasons why this may not be the case.  One simple reason is that the subject may not be performing the requested instruction.  Regardless, it is reasonable to conclude from our analysis that (25 Hz, Channel 14) may be an effective feature for use in an on-line recognition task.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Tutorial:Obtaining Mu Rhythm Parameters in an Initial Session]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_an_Offline_Analysis_of_ECoG_Data&amp;diff=3643</id>
		<title>User Tutorial:Performing an Offline Analysis of ECoG Data</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_an_Offline_Analysis_of_ECoG_Data&amp;diff=3643"/>
		<updated>2008-03-19T15:07:40Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In this section of the tutorial, we will take you through the steps for performing a frequency-domain analysis of data recorded using an ECoG.  Regardless of the selected recording technique, we expect the basic properties of the Mu rhythm to be identical for all humans, while the rhythm&#039;s spatial pattern and exact frequency range will differ.  As in [[User Tutorial:Performing an Offline Analysis of EEG Data]], we will use &#039;&#039;BCI2000 Offline Analysis&#039;&#039; to help determine the frequencies and locations that best facilitate response classification for online control.&lt;br /&gt;
&lt;br /&gt;
== Experimental Design ==&lt;br /&gt;
This tutorial will make use of the &amp;lt;tt&amp;gt;ecog1_1.dat&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;ecog1_2.dat&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;ecog1_3.dat&amp;lt;/tt&amp;gt; sessions that are included in the supplementary sample files downloadable [http://www.bci2000.org/downloads/bin/sampleFiles.zip here].  Please download this file and extract the contents to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;.  In the ecog1 sessions, the subject was asked to move each hand in a predefined pattern.  The resulting data was recorded using &#039;&#039;BCI2000&#039;&#039; and labeled using the StimulusCode state variable such that TargetCode is equal to 1 when the subject is responding to the instruction to move his/her left hand, 2 when the subject is responding to the instruction to move his/her right hand and 0 when the subject is responding to the instruction to rest.  If you are relatively new to &#039;&#039;BCI2000&#039;&#039;, you may find it helpful to inspect the data files we&#039;ll be using with the &#039;&#039;BCI2000 Viewer&#039;&#039;.  Using this tool, you will be able to see how state variables change with respect to the data over time.  For instruction on how to inspect data using the &#039;&#039;BCI2000 Viewer&#039;&#039;, please see [[User Reference:BCI2000Viewer]].&lt;br /&gt;
&lt;br /&gt;
==The Results==&lt;br /&gt;
In [[User Tutorial:Performing an Offline Analysis of EEG Data]] we manually entered all the analysis parameters.  In this tutorial we will make use of the &#039;&#039;BCI2000 Offline Analysis&#039;&#039; &amp;quot;Load Settings&amp;quot; feature that allows us to load previously saved settings.  In order to load the settings for this tutorial, please do the following:&lt;br /&gt;
&lt;br /&gt;
# Open BCI2000 Offline Analysis. If this is your first time using BCI2000 Offline Analysis, you may want to review the instructions on how to install and run this application: [[User Reference:BCI2000 Offline Analysis]].&lt;br /&gt;
# Click the &amp;quot;Add&amp;quot; button next to &amp;quot;Data Files&amp;quot; and navigate to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;. From there, select the files &amp;lt;tt&amp;gt;ecog1_1.dat&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;ecog1_2.dat&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;ecog1_3.dat&amp;lt;/tt&amp;gt; and click &amp;quot;Open&amp;quot;. To select multiple files, you&#039;ll need to first click on any one file and then, while holding down the control button on your keyboard, click the remaining files.&lt;br /&gt;
# Click File&amp;gt;Load Settings&lt;br /&gt;
# Navigate to &amp;lt;tt&amp;gt;data/samplefiles/&amp;lt;/tt&amp;gt;&lt;br /&gt;
# Double-click or otherwise open &amp;lt;tt&amp;gt;ecog1Analysis.bws&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
At this point &#039;&#039;BCI2000 Offline Analysis&#039;&#039; should look like this:&lt;br /&gt;
&lt;br /&gt;
[[Image:offlineAnalysisEcog1.png]]&lt;br /&gt;
&lt;br /&gt;
Now, click &amp;quot;Generate Plots&amp;quot;.  Once your analysis is complete, you will see feature, spectra and topography plots similar to those below:&lt;br /&gt;
&lt;br /&gt;
[[Image:ecog1Feature.png|600px]]&lt;br /&gt;
&lt;br /&gt;
[[Image:ecog1Spectrum.png|600px]]&lt;br /&gt;
&lt;br /&gt;
[[Image:ecog1Topo.png|600px]]&lt;br /&gt;
&lt;br /&gt;
In designing this analysis, we followed a similar procedure to the procedure outlined in [[User Tutorial:Performing an Offline Analysis of EEG Data]].  We begin by looking for clusters of high [[Glossary|r-squared]] values.  Again, these clusters are typically the first indication that the frequency/channel pairs that comprise the cluster may be good features for online analysis.  In the generated feature plot, we see that one of the clusters with the highest [[Glossary|r-squared]] values is centered around (25 Hz, Channel 14).  So, we continue by creating a topography at 25 Hz and a spectra for channel 14.  In the previous tutorial, we used these plots to evaluate the physiological plausibility of this response.  We first note that there are significant changes in the spectra between movement and rest.  Also, the most significant of these changes occur around the beta frequency range.  When inspecting the topographies resulting from the EEG-based analysis, we were able to relate the spatial response to areas of the motor cortex known to control the muscle being moved.  We can do this in ECoG as well.  In this case, however, the location of an electrode will differ based on where the grid was placed.  We must also be aware that an ECoG grid is subject to shifts in position over time.  Because the above response is related to movement of the right hand, we expect the response to appear over the motor cortex of the left-hemisphere.  There are, however, many reasons why this may not be the case.  One simple reason is that the subject may not be performing the requested instruction.  Regardless, it is reasonable to conclude from our analysis that (25 Hz, Channel 14) may be an effective feature for use in an on-line recognition task.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Tutorial:Obtaining Mu Rhythm Parameters in an Initial Session]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=User_Reference:BCI2000_Offline_Analysis&amp;diff=3640</id>
		<title>User Reference:BCI2000 Offline Analysis</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=User_Reference:BCI2000_Offline_Analysis&amp;diff=3640"/>
		<updated>2008-03-14T15:03:28Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Reference */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;BCI2000 Offline Analysis&#039;&#039; is a tool for finding useful features in EEG and ECoG data.&lt;br /&gt;
[[Image:offlineAnalysis.png]] &lt;br /&gt;
&lt;br /&gt;
== Installing and Running ==&lt;br /&gt;
In order to run &#039;&#039;BCI2000 Offline Analysis&#039;&#039; you&#039;ll need a system running either Windows XP or 2000.  If your system meets this requirement, please choose from one of the following:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Systems with MATLAB v7.0 or greater installed===&lt;br /&gt;
====Startup Script====&lt;br /&gt;
If you have not yet opened MATLAB, the easiest way to run &#039;&#039;BCI2000 Offline Analysis&#039;&#039; is to double click the OfflineAnalysis.bat file that resides in &amp;lt;tt&amp;gt;tools/OfflineAnalysis/&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====From the MATLAB command line====&lt;br /&gt;
If MATLAB is already running, navigate to &amp;lt;tt&amp;gt;tools/OfflineAnalysis/&amp;lt;/tt&amp;gt; using the &#039;&#039;Current Directory&#039;&#039; explorer or typing the absolute path into the textbox at the top of the MATLAB window.  Then, type OfflineAnalysis at the MATLAB command prompt in order to start analyzing your data.&lt;br /&gt;
&lt;br /&gt;
===Systems that do not have MATLAB installed or with versions that predate MATLAB v7.0===&lt;br /&gt;
# Install the MATLAB Component Runtime (MCR)&lt;br /&gt;
## [http://www.bci2000.org/downloads/bin/mcrInstallerWin7.0.exe Click here] to download the MCR installer for Windows.&lt;br /&gt;
## When the download is complete, run the installer.&lt;br /&gt;
## Follow the on-screen instructions to complete the installation.&lt;br /&gt;
# Navigate to &amp;lt;tt&amp;gt;tools/OfflineAnalysis/&amp;lt;/tt&amp;gt;&lt;br /&gt;
# Double-click &amp;lt;tt&amp;gt;OfflineAnalysisWin.exe&amp;lt;/tt&amp;gt;  to begin analyzing your data.&lt;br /&gt;
&lt;br /&gt;
== Reference ==&lt;br /&gt;
For a &#039;&#039;BCI2000 Offline Analysis&#039;&#039; and &#039;&#039;Eloc Helper&#039;&#039; tutorial, please see [[User Tutorial:Performing an Offline Analysis of EEG Data]] and [[User Tutorial:Performing a Time-Domain Offline Analysis of EEG Data]].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;File&amp;gt;Save Settings -&#039;&#039;&#039; &amp;quot;Save Settings&amp;quot; allows you to save the values you&#039;ve entered for all fields excluding &amp;quot;Data files&amp;quot;, &amp;quot;Ignore warnings&amp;quot; and &amp;quot;Overwrite existing plots&amp;quot;.  This functionality may be particularly useful if you want to run the same or similar analyses between sessions.  &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;File&amp;gt;Load Settings -&#039;&#039;&#039; &amp;quot;Load Settings&amp;quot; allows you to load a settings file previously created using File&amp;gt;Save Settings. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Analysis Domain -&#039;&#039;&#039; The BCI2000 Offline Analysis tool allows for you to analyze your data either in the frequency domain or the time domain.  Be aware that certain fields will be labeled differently depending on the domain that is chosen.  Specifically, choosing &amp;quot;Frequency&amp;quot; will make the &amp;quot;Spectra Channels&amp;quot; and &amp;quot;Topo Frequencies&amp;quot; fields available.  Choosing &amp;quot;Time&amp;quot; on the other hand will make the fields &amp;quot;Waveform Channels&amp;quot; and &amp;quot;Topo Times&amp;quot; available.  Additionally, the values for the target conditions, trial change condition and spatial filter will be overwritten so as to correspond with the chosen domain.  &lt;br /&gt;
&lt;br /&gt;
A frequency domain analysis will result in up to three plots comprising a feature plot, a spectra plot (one spectrum for each channel specified) and up to 9 topographic plots (one for each topo frequency specified).  Typically the best frequency domain features can be found in the range of 9-12 Hz and 18-25 Hz.  Please see [[User Tutorial:Performing an Offline Analysis of EEG Data]] for a more complete explanation of this type of analysis.  &lt;br /&gt;
&lt;br /&gt;
A time domain analysis will result in up to three plots comprising a feature plot, a waveform plot (consisting of one waveform for each channel specified) and up to 9 topographic plots (one for each topo time specified).  Typically P300 features are found at around 300 ms following presentation of the stimulus.  Please see [[User Tutorial:Performing a Time-Domain Offline Analysis of EEG Data]] for a more complete explanation of this type of analysis.  &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Acquisition Type -&#039;&#039;&#039; Acquisition type allows the user to indicate whether the data was acquired using an EEG or an ECoG.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Data Files -&#039;&#039;&#039; Any number of BCI2000 data files with the same state information and number of channels may be analyzed in a single run.  To select a file to add to the list of files to be analyzed, simply click the &amp;quot;Add&amp;quot; button, choose the desired file and click &amp;quot;Open.&amp;quot;  To add multiple files from the same directory, click on any one of the desired files and then control-click the additional files.  Then, when all desired files are selected, click &amp;quot;Open.&amp;quot;  If files have already been added to the data files list then subsequent uses of the above procedure will append the selected files to the list allowing for addition of files from different directories.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Montage File &#039;&#039;(optional)&#039;&#039; -&#039;&#039;&#039; If topographic plots are desired, you must specify a montage file that is congruent with the chosen acquisition type (i.e., EEG or ECoG).  If you do not yet have a montage file, you can create one using the Eloc Helper tool that comes with BCI2000 Offline Analysis.  For more information about Eloc Helper, please see [[User Reference:Eloc Helper]].  In place of a montage file, you may also use data files that specify channel names that are compliant with the 10-20 standard.  In this case, &#039;&#039;BCI2000 Offline Analysis&#039;&#039; will use the channel name corresponding to each electrode to infer the location of that electrode.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Target Conditions -&#039;&#039;&#039; Target conditions consists of four fields that allow for the specification of two different conditions.  Each condition consists of the condition itself (i.e., a MATLAB-syntax Boolean statement) and the label for the corresponding data (e.g., &amp;quot;Opening and Closing Both Hands&amp;quot;).  Typically you will want to specify two different conditions in order to compare two different datasets.  Occasionally, however, you may want to inspect a single dataset to investigate certain artifacts such as subject-related noise.  In this case, you can omit the second condition (i.e., both the condition and the label).  To learn more about condition syntax, please see [[User Tutorial:Performing an Offline Analysis of EEG Data]] or [[User Tutorial:Performing a Time-Domain Offline Analysis of EEG Data]].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Trial Change Condition -&#039;&#039;&#039; The trial change condition allows for the user to indicate to &#039;&#039;BCI2000 Offline Analysis&#039;&#039; how to determine the position of the trial edges.  The condition must be a MATLAB-syntax Boolean statement.  To learn more about condition syntax, please see [[User Tutorial:Performing an Offline Analysis of EEG Data]] or [[User Tutorial:Performing a Time-Domain Offline Analysis of EEG Data]].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Spectra Channels &#039;&#039;(optional)&#039;&#039; -&#039;&#039;&#039; &#039;&#039;Note: This field is available only if you&#039;ve chosen &amp;quot;Frequency&amp;quot; as the analysis domain&#039;&#039;. If you would like to have the analysis generate spectra plots, you must enter at least one channel in this field.  Multiple channels can be specified using a comma-delimited list (e.g., &amp;quot;1,2,3&amp;quot;) or a space-delimited list (e.g., &amp;quot;1 2 3&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Topo Frequencies &#039;&#039;(optional)&#039;&#039; -&#039;&#039;&#039; &#039;&#039;Note: This field is available only if you&#039;ve chosen &amp;quot;Frequency&amp;quot; as the analysis domain&#039;&#039;. If you would like to have the analysis generate topographic plots, you must enter at least one frequency in this field.  Multiple frequencies can be specified using a comma-delimited list (e.g., &amp;quot;8, 11, 22&amp;quot;) or a space-delimited list (e.g., &amp;quot;8 11 22&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Waveform Channels &#039;&#039;(optional)&#039;&#039; -&#039;&#039;&#039; &#039;&#039;Note: This field is available only if you&#039;ve chosen &amp;quot;Time&amp;quot; as the analysis domain&#039;&#039;. If you would like to have the analysis generate P300 waveform plots, you must enter at least one channel in this field.  Multiple channels can be specified using a comma-delimited list (e.g., &amp;quot;1,2,3&amp;quot;) or a space-delimited list (e.g., &amp;quot;1 2 3&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Topo Time &#039;&#039;(optional)&#039;&#039; -&#039;&#039;&#039; &#039;&#039;Note: This field is available only if you&#039;ve chosen &amp;quot;Time&amp;quot; as the analysis domain&#039;&#039;. If you would like to have the analysis generate topographic plots, you must enter at least one time in this field.  Multiple times can be specified using a comma-delimited list (e.g., &amp;quot;200, 300, 400&amp;quot;) or a space-delimited list (e.g., &amp;quot;200 300 400&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Spatial Filter -&#039;&#039;&#039; By applying the right spatial filter to your data, you will likely be able to achieve better results.  Depending on the data, however, the optimal filter will differ.  &#039;&#039;BCI2000 Offline Analysis&#039;&#039; offers the CAR filter which is typically effective as long as the response isn&#039;t spread out over a large number of electrodes.  To apply a CAR filter to your data before processing, choose &amp;quot;Common Average Reference&amp;quot;.  Otherwise, choose &amp;quot;None&amp;quot; in order to run the analysis on the raw data.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ignore warnings -&#039;&#039;&#039; In order to get an accurate representation of the data, it is recommended that the analysis be performed on no less than 10 trials. &#039;&#039;BCI2000 Offline Analysis&#039;&#039; will generate a warning if this condition is not met.  This warning can be ignored by checking this box.  If a particular combination of data files and conditions results in less than 3 trials, an error is displayed and the analysis is halted.  Errors cannot be overridden.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Overwrite existing plots -&#039;&#039;&#039; Each time the analysis is run, up to three plots may be generated.  If you want to compare the results from different runs, ensure that this checkbox is unchecked.  In this case, &#039;&#039;BCI2000 Offline Analysis&#039;&#039; will generate the plots in new figures instead of simply overwriting the plots from previous analyses.&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&#039;&#039;Clicking on any button results in the error &amp;quot;Undefined command/function ...&amp;quot; followed by &amp;quot;Error while evaluating figure ...&amp;quot;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
If you&#039;re receiving this error, it is possible that after opening &#039;&#039;BCI2000 Offline Analysis&#039;&#039; you changed MATLAB&#039;s working directory.  Make sure that your working directory is the same directory that contains the OfflineAnalysis script.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;The analysis doesn&#039;t seem to be generating any topographic plots&#039;&#039;&lt;br /&gt;
In order to generate topographic plots, it is necessary to specify a montage file and at least one topo frequency (for frequency domain analyses) or topo time (for time domain analyses).  If the analysis you&#039;re running doesn&#039;t generate a topogrphic plot, please ensure that you&#039;ve entered values in both of these fields.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;The analysis doesn&#039;t seem to be generating any spectra or waveform plots&#039;&#039;&lt;br /&gt;
In order to generate spectra or waveform plots, it is necessary to specify at least one spectra channel (for frequency domain analyses) or waveform channel (for time domain analyses).  If your analysis is not resulting in one of these plots, please ensure that you have entered values into the appropriate field.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;I&#039;ve typed in a valid target or trial change condition, but I get the error &amp;quot;Invalid ... condition specified&amp;quot;.&#039;&#039;&lt;br /&gt;
Condition syntax is case-sensitive.  For instance, while states.TargetCode may be a valid state condition, states.targetcode is not.  Please double-check your conditions to ensure that the state variables are capitalized correctly.&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=User_Reference:BCI2000_Offline_Analysis&amp;diff=3638</id>
		<title>User Reference:BCI2000 Offline Analysis</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=User_Reference:BCI2000_Offline_Analysis&amp;diff=3638"/>
		<updated>2008-03-13T23:07:43Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Reference */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;BCI2000 Offline Analysis&#039;&#039; is a tool for finding useful features in EEG and ECoG data.&lt;br /&gt;
[[Image:offlineAnalysis.png]] &lt;br /&gt;
&lt;br /&gt;
== Installing and Running ==&lt;br /&gt;
In order to run &#039;&#039;BCI2000 Offline Analysis&#039;&#039; you&#039;ll need a system running either Windows XP or 2000.  If your system meets this requirement, please choose from one of the following:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Systems with MATLAB v7.0 or greater installed===&lt;br /&gt;
====Startup Script====&lt;br /&gt;
If you have not yet opened MATLAB, the easiest way to run &#039;&#039;BCI2000 Offline Analysis&#039;&#039; is to double click the OfflineAnalysis.bat file that resides in &amp;lt;tt&amp;gt;tools/OfflineAnalysis/&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====From the MATLAB command line====&lt;br /&gt;
If MATLAB is already running, navigate to &amp;lt;tt&amp;gt;tools/OfflineAnalysis/&amp;lt;/tt&amp;gt; using the &#039;&#039;Current Directory&#039;&#039; explorer or typing the absolute path into the textbox at the top of the MATLAB window.  Then, type OfflineAnalysis at the MATLAB command prompt in order to start analyzing your data.&lt;br /&gt;
&lt;br /&gt;
===Systems that do not have MATLAB installed or with versions that predate MATLAB v7.0===&lt;br /&gt;
# Install the MATLAB Component Runtime (MCR)&lt;br /&gt;
## [http://www.bci2000.org/downloads/bin/mcrInstallerWin7.0.exe Click here] to download the MCR installer for Windows.&lt;br /&gt;
## When the download is complete, run the installer.&lt;br /&gt;
## Follow the on-screen instructions to complete the installation.&lt;br /&gt;
# Navigate to &amp;lt;tt&amp;gt;tools/OfflineAnalysis/&amp;lt;/tt&amp;gt;&lt;br /&gt;
# Double-click &amp;lt;tt&amp;gt;OfflineAnalysisWin.exe&amp;lt;/tt&amp;gt;  to begin analyzing your data.&lt;br /&gt;
&lt;br /&gt;
== Reference ==&lt;br /&gt;
For a &#039;&#039;BCI2000 Offline Analysis&#039;&#039; and &#039;&#039;Eloc Helper&#039;&#039; tutorial, please see [[User Tutorial:Performing an Offline Analysis of EEG Data]] and [[User Tutorial:Performing a Time-Domain Offline Analysis of EEG Data]].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;File&amp;gt;Save Settings -&#039;&#039;&#039; &amp;quot;Save Settings&amp;quot; allows you to save the values you&#039;ve entered for all fields excluding &amp;quot;Data files&amp;quot;, &amp;quot;Ignore warnings&amp;quot; and &amp;quot;Overwrite existing plots&amp;quot;.  This functionality may be particularly useful if you want to run the same or similar analyses between sessions.  &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;File&amp;gt;Load Settings -&#039;&#039;&#039; &amp;quot;Load Settings&amp;quot; allows you to load a settings file previously created using File&amp;gt;Save Settings. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Analysis Domain -&#039;&#039;&#039; The BCI2000 Offline Analysis tool allows for you to analyze your data either in the frequency domain or the time domain.  Be aware that certain fields will be labeled differently depending on the domain that is chosen.  Specifically, choosing &amp;quot;Frequency&amp;quot; will make the &amp;quot;Spectra Channels&amp;quot; and &amp;quot;Topo Frequencies&amp;quot; fields available.  Choosing &amp;quot;Time&amp;quot; on the other hand will make the fields &amp;quot;Waveform Channels&amp;quot; and &amp;quot;Topo Times&amp;quot; available.  Additionally, the values for the target conditions, trial change condition and spatial filter will be overwritten so as to correspond with the chosen domain.  &lt;br /&gt;
&lt;br /&gt;
A frequency domain analysis will result in up to three plots comprising a feature plot, a spectra plot (one spectrum for each channel specified) and up to 9 topographic plots (one for each topo frequency specified).  Typically the best frequency domain features can be found in the range of 9-12 Hz and 18-25 Hz.  Please see [[User Tutorial:Performing an Offline Analysis of EEG Data]] for a more complete explanation of this type of analysis.  &lt;br /&gt;
&lt;br /&gt;
A time domain analysis will result in up to three plots comprising a feature plot, a waveform plot (consisting of one waveform for each channel specified) and up to 9 topographic plots (one for each topo time specified).  Typically P300 features are found at around 300 ms following presentation of the stimulus.  Please see [[User Tutorial:Performing a Time-Domain Offline Analysis of EEG Data]] for a more complete explanation of this type of analysis.  &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Acquisition Type -&#039;&#039;&#039; Acquisition type allows the user to indicate whether the data was acquired using an EEG or an ECoG.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Data Files -&#039;&#039;&#039; Any number of BCI2000 data files with the same state information and number of channels may be analyzed in a single run.  To select a file to add to the list of files to be analyzed, simply click the &amp;quot;Add&amp;quot; button, choose the desired file and click &amp;quot;Open.&amp;quot;  To add multiple files from the same directory, click on any one of the desired files and then control-click the additional files.  Then, when all desired files are selected, click &amp;quot;Open.&amp;quot;  If files have already been added to the data files list then subsequent uses of the above procedure will append the selected files to the list allowing for addition of files from different directories.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Montage File &#039;&#039;(optional)&#039;&#039; -&#039;&#039;&#039; If topographic plots are desired, you must specify a montage file that is congruent with the chosen acquisition type (i.e., EEG or ECoG).  If you do not yet have a montage file, you can create one using the Eloc Helper tool that comes with BCI2000 Offline Analysis.  For more information about Eloc Helper, please see [[User Reference:Eloc Helper]].  In place of a montage file, you may also use data files that specify channel names that are compliant with the 10-20 standard.  In this case, &#039;&#039;BCI2000 Offline Analysis&#039;&#039; will use the channel name corresponding to each electrode to infer the location that electrode.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Target Conditions -&#039;&#039;&#039; Target conditions consists of four fields that allow for the specification of two different conditions.  Each condition consists of the condition itself (i.e., a MATLAB-syntax Boolean statement) and the label for the corresponding data (e.g., &amp;quot;Opening and Closing Both Hands&amp;quot;).  Typically you will want to specify two different conditions in order to compare two different datasets.  Occasionally, however, you may want to inspect a single dataset to investigate certain artifacts such as subject-related noise.  In this case, you can omit the second condition (i.e., both the condition and the label).  To learn more about condition syntax, please see [[User Tutorial:Performing an Offline Analysis of EEG Data]] or [[User Tutorial:Performing a Time-Domain Offline Analysis of EEG Data]].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Trial Change Condition -&#039;&#039;&#039; The trial change condition allows for the user to indicate to &#039;&#039;BCI2000 Offline Analysis&#039;&#039; how to determine the position of the trial edges.  The condition must be a MATLAB-syntax Boolean statement.  To learn more about condition syntax, please see [[User Tutorial:Performing an Offline Analysis of EEG Data]] or [[User Tutorial:Performing a Time-Domain Offline Analysis of EEG Data]].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Spectra Channels &#039;&#039;(optional)&#039;&#039; -&#039;&#039;&#039; &#039;&#039;Note: This field is available only if you&#039;ve chosen &amp;quot;Frequency&amp;quot; as the analysis domain&#039;&#039;. If you would like to have the analysis generate spectra plots, you must enter at least one channel in this field.  Multiple channels can be specified using a comma-delimited list (e.g., &amp;quot;1,2,3&amp;quot;) or a space-delimited list (e.g., &amp;quot;1 2 3&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Topo Frequencies &#039;&#039;(optional)&#039;&#039; -&#039;&#039;&#039; &#039;&#039;Note: This field is available only if you&#039;ve chosen &amp;quot;Frequency&amp;quot; as the analysis domain&#039;&#039;. If you would like to have the analysis generate topographic plots, you must enter at least one frequency in this field.  Multiple frequencies can be specified using a comma-delimited list (e.g., &amp;quot;8, 11, 22&amp;quot;) or a space-delimited list (e.g., &amp;quot;8 11 22&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Waveform Channels &#039;&#039;(optional)&#039;&#039; -&#039;&#039;&#039; &#039;&#039;Note: This field is available only if you&#039;ve chosen &amp;quot;Time&amp;quot; as the analysis domain&#039;&#039;. If you would like to have the analysis generate P300 waveform plots, you must enter at least one channel in this field.  Multiple channels can be specified using a comma-delimited list (e.g., &amp;quot;1,2,3&amp;quot;) or a space-delimited list (e.g., &amp;quot;1 2 3&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Topo Time &#039;&#039;(optional)&#039;&#039; -&#039;&#039;&#039; &#039;&#039;Note: This field is available only if you&#039;ve chosen &amp;quot;Time&amp;quot; as the analysis domain&#039;&#039;. If you would like to have the analysis generate topographic plots, you must enter at least one time in this field.  Multiple times can be specified using a comma-delimited list (e.g., &amp;quot;200, 300, 400&amp;quot;) or a space-delimited list (e.g., &amp;quot;200 300 400&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Spatial Filter -&#039;&#039;&#039; By applying the right spatial filter to your data, you will likely be able to achieve better results.  Depending on the data, however, the optimal filter will differ.  &#039;&#039;BCI2000 Offline Analysis&#039;&#039; offers the CAR filter which is typically effective as long as the response isn&#039;t spread out over a large number of electrodes.  To apply a CAR filter to your data before processing, choose &amp;quot;Common Average Reference&amp;quot;.  Otherwise, choose &amp;quot;None&amp;quot; in order to run the analysis on the raw data.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ignore warnings -&#039;&#039;&#039; In order to get an accurate representation of the data, it is recommended that the analysis be performed on no less than 10 trials. &#039;&#039;BCI2000 Offline Analysis&#039;&#039; will generate a warning if this condition is not met.  This warning can be ignored by checking this box.  If a particular combination of data files and conditions results in less than 3 trials, an error is displayed and the analysis is halted.  Errors cannot be overridden.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Overwrite existing plots -&#039;&#039;&#039; Each time the analysis is run, up to three plots may be generated.  If you want to compare the results from different runs, ensure that this checkbox is unchecked.  In this case, &#039;&#039;BCI2000 Offline Analysis&#039;&#039; will generate the plots in new figures instead of simply overwriting the plots from previous analyses.&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&#039;&#039;Clicking on any button results in the error &amp;quot;Undefined command/function ...&amp;quot; followed by &amp;quot;Error while evaluating figure ...&amp;quot;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
If you&#039;re receiving this error, it is possible that after opening &#039;&#039;BCI2000 Offline Analysis&#039;&#039; you changed MATLAB&#039;s working directory.  Make sure that your working directory is the same directory that contains the OfflineAnalysis script.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;The analysis doesn&#039;t seem to be generating any topographic plots&#039;&#039;&lt;br /&gt;
In order to generate topographic plots, it is necessary to specify a montage file and at least one topo frequency (for frequency domain analyses) or topo time (for time domain analyses).  If the analysis you&#039;re running doesn&#039;t generate a topogrphic plot, please ensure that you&#039;ve entered values in both of these fields.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;The analysis doesn&#039;t seem to be generating any spectra or waveform plots&#039;&#039;&lt;br /&gt;
In order to generate spectra or waveform plots, it is necessary to specify at least one spectra channel (for frequency domain analyses) or waveform channel (for time domain analyses).  If your analysis is not resulting in one of these plots, please ensure that you have entered values into the appropriate field.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;I&#039;ve typed in a valid target or trial change condition, but I get the error &amp;quot;Invalid ... condition specified&amp;quot;.&#039;&#039;&lt;br /&gt;
Condition syntax is case-sensitive.  For instance, while states.TargetCode may be a valid state condition, states.targetcode is not.  Please double-check your conditions to ensure that the state variables are capitalized correctly.&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Configuring_Online_Feedback&amp;diff=3613</id>
		<title>User Tutorial:Configuring Online Feedback</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Configuring_Online_Feedback&amp;diff=3613"/>
		<updated>2008-02-27T16:12:25Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Configuring the Classifier */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This tutorial step assumes that you have [[User Tutorial:Obtaining Mu Rhythm Parameters in an Initial Session|obtained Mu rhythm parameters]] in an initial session.&lt;br /&gt;
Now you are going to create a subject-specific parameter configuration for on-line feedback.&lt;br /&gt;
&lt;br /&gt;
==Starting up BCI2000==&lt;br /&gt;
Start BCI2000 using the appropriate batch file at &amp;lt;tt&amp;gt;batch/CursorTask_&amp;lt;YourAmplifier&amp;gt;.bat&amp;lt;/tt&amp;gt;. You might consider creating a link to this file on the desktop.&lt;br /&gt;
&lt;br /&gt;
==Spatial Filtering==&lt;br /&gt;
As a result of the initial session, you have some idea of the signal topography, and spatial filtering that extracts the signal best.&lt;br /&gt;
In this tutorial, we use &#039;&#039;Common Average Reference (CAR)&#039;&#039; filtering because it gives generally good results, and has the advantage of being independent of the montage used. Also, this method is independent of subject specific parameters, so you will only need to configure it once for a given electrode montage.&lt;br /&gt;
===Creating a CAR Filter===&lt;br /&gt;
The idea behind CAR filtering is to subtract the spatial average of all &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt; channels from each individual channel.&lt;br /&gt;
In terms of spatial filtering matrices, this means an identity matrix minus a matrix that has &amp;lt;math&amp;gt;1/N&amp;lt;/math&amp;gt; in all entries:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M_{ij} = \delta_{ij} - 1/N&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
For 16 and 64 channel recordings, you may load appropriate parameter fragments are available at &amp;lt;tt&amp;gt;parms/fragments/spatial_filters/CommonAverageN.prm&amp;lt;/tt&amp;gt;.&lt;br /&gt;
For other &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt;, you will need to configure the &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039; parameters as follows:&lt;br /&gt;
*Go to the &#039;&#039;Source&#039;&#039; tab. In the &#039;&#039;TransmitChList&#039;&#039; parameter, enter a space-separated list of channel numbers beginning with 1:&amp;lt;br /&amp;gt;1 2 3 4 ... N&lt;br /&gt;
*Go to the &#039;&#039;Filtering&#039;&#039; tab. Click the &#039;&#039;Edit Matrix&#039;&#039; button associated with the &#039;&#039;SpatialFilter&#039;&#039; parameter.&lt;br /&gt;
**Set both &#039;&#039;Number of columns&#039;&#039; and &#039;&#039;Number of rows&#039;&#039; to &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt;, and click &#039;&#039;Set new matrix size&#039;&#039;.&lt;br /&gt;
**In the diagonal entries of the matrix, enter the numerical value of &amp;lt;math&amp;gt;1-1/N&amp;lt;/math&amp;gt;.&lt;br /&gt;
**In the non-diagonal entries, enter the numerical value of &amp;lt;math&amp;gt;1/N&amp;lt;/math&amp;gt;.&lt;br /&gt;
**Right-click the matrix, and choose &#039;&#039;Edit labels&#039;&#039; from the context menu.&lt;br /&gt;
**As &#039;&#039;&#039;row&#039;&#039;&#039; labels, enter the electrode locations corresponding to channels.&lt;br /&gt;
**Close the matrix editor window.&lt;br /&gt;
*Click &#039;&#039;Configure Save&#039;&#039; in the configuration window, and check all parameter entries except &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039;; then close the window.&lt;br /&gt;
*Click &#039;&#039;Save Parameters&#039;&#039;, and save your spatial filter configuration under &amp;lt;tt&amp;gt;parms/fragments/spatial_filters/CommonAverage&amp;lt;YourMontage&amp;gt;.prm&amp;lt;/tt&amp;gt;.&lt;br /&gt;
*Click &#039;&#039;Configure Save&#039;&#039; again, uncheck all parameter entries, close the window.&lt;br /&gt;
The step of entering electrode locations is not mandatory. However, it makes subject-specific configuration easier to set up later on.&lt;br /&gt;
Also, pre-defined CAR parameter files do not specify electrode locations, so you will need to enter these locations manually, and save the resulting configuration as described above.&lt;br /&gt;
&lt;br /&gt;
==Subject-Specific Parameters==&lt;br /&gt;
In the next step, we construct a full parameter file for the subject:&lt;br /&gt;
*In the configuration window, click &#039;&#039;Load Parameters&#039;&#039; to load &amp;lt;tt&amp;gt;parms/mu_tutorial/MuFeedback.prm&amp;lt;/tt&amp;gt;.&lt;br /&gt;
*Additionally, load your amplifier configuration from &amp;lt;tt&amp;gt;parms/fragments/amplifiers&amp;lt;/tt&amp;gt;.&lt;br /&gt;
*Load the spatial filtering parameter fragment created above.&lt;br /&gt;
*Go to the &#039;&#039;Storage&#039;&#039; tab, and enter the subject&#039;s name or ID into the &#039;&#039;SubjectName&#039;&#039; parameter.&lt;br /&gt;
*Into the &#039;&#039;SubjectSession&#039;&#039; parameter, enter &#039;&#039;002&#039;&#039;.&lt;br /&gt;
===Configuring the Classifier===&lt;br /&gt;
Subject-specific electrode location and Mu rhythm frequency are part of the classifier&#039;s configuration.&lt;br /&gt;
They are entered into the &#039;&#039;Classifier&#039;&#039; parameter on the &#039;&#039;Filtering&#039;&#039; tab; there, click the &#039;&#039;Edit Matrix&#039;&#039; button associated with the &#039;&#039;Classifier&#039;&#039; parameter.&lt;br /&gt;
*Set &#039;&#039;Number of columns&#039;&#039; to 4, and &#039;&#039;Number of rows&#039;&#039; to 2; then, click &#039;&#039;Set new matrix size&#039;&#039; to apply your changes.&lt;br /&gt;
*In the first column, labeled &#039;&#039;input channel&#039;&#039;, enter the location of the feedback electrode. If you did not specify electrode locations when configuring the spatial filter, enter the channel number associated with the feedback electrode.&lt;br /&gt;
*In the second column, labeled &#039;&#039;input element (bin)&#039;&#039;, enter feedback frequency in Hz, immediately followed with &#039;&#039;Hz&#039;&#039;, as in &amp;lt;tt&amp;gt;12Hz&amp;lt;/tt&amp;gt;.&lt;br /&gt;
*In the third column, enter the value 2 corresponding to the control channel for vertical control of the cursor.&lt;br /&gt;
*In the fourth column, enter 1 as the weight.&lt;br /&gt;
*Finally, save your configuration to &amp;lt;tt&amp;gt;parms/subjects/mu_feedback/&amp;lt;Subject&amp;gt;002.prm&amp;lt;/tt&amp;gt;, or whereever you find appropriate.&lt;br /&gt;
&lt;br /&gt;
==Next Step==&lt;br /&gt;
In the next step, you will learn how to actually [[User Tutorial:Performing a Mu Rhythm Feedback Session|perform a Mu rhythm feedback session]] using the configuration created in the present step.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Tutorial:Mu Rhythm BCI Tutorial]], [[User Reference:SpatialFilter]], [[User Reference:LinearClassifier]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_a_Mu_Rhythm_Feedback_Session&amp;diff=3504</id>
		<title>User Tutorial:Performing a Mu Rhythm Feedback Session</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_a_Mu_Rhythm_Feedback_Session&amp;diff=3504"/>
		<updated>2008-02-20T18:49:29Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Monitoring the Recording */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This step assumes that you [[User Tutorial:Configuring Online Feedback|created a subject-specific configuration file]] for the on-line system, as described in the previous step of this tutorial.&lt;br /&gt;
&lt;br /&gt;
==Preparation==&lt;br /&gt;
If you quit BCI2000 after the [[User Tutorial:Configuring Online Feedback|previous step,]] start it using the appropriate batch file at &amp;lt;tt&amp;gt;batch/CursorTask_&amp;lt;YourAmplifier&amp;gt;.bat&amp;lt;/tt&amp;gt;, or the link to that file which you created on the desktop.&lt;br /&gt;
&lt;br /&gt;
Then, load the configuration file that you saved in the previous step.&lt;br /&gt;
&lt;br /&gt;
Click &#039;&#039;Set Config&#039;&#039; to view the EEG signal, and [[User_Tutorial:EEG_Measurement_Setup|prepare the subject for EEG recording]] as you did for the [[User_Tutorial:Obtaining_Mu_Rhythm_Parameters_in_an_Initial_Session|initial session]].&lt;br /&gt;
&lt;br /&gt;
==Instructions to the Subject==&lt;br /&gt;
After the subject is ready for EEG acquisition, he/she is given instructions&lt;br /&gt;
about the experimental task.&lt;br /&gt;
&lt;br /&gt;
A screen with a T in the center is initially presented. As soon as the subject is&lt;br /&gt;
ready and the EEG traces are stabilized, the investigator will start the&lt;br /&gt;
acquisition, and the T will disappear. For each trial, four phases will occur:&lt;br /&gt;
#Target presentation. A target appears on the right edge of the screen for about one second.&lt;br /&gt;
#Cursor movement. The subject receives feedback about his/her Mu amplitude by the trajectory of the cursor on the screen. The time needed for the cursor to move from the left to the right edge of the screen should be approximately three seconds.&lt;br /&gt;
#Result. If the cursor hits the target, the latter changes its color; otherwise, the screen will blank. In either case, this period lasts one second.&lt;br /&gt;
#Intertrial Interval. Screen will turn/remain black for one second, after which the cycle starts over.&lt;br /&gt;
&lt;br /&gt;
When a target is presented, the subject must concentrate on whatever he feels&lt;br /&gt;
can modify the cursor trajectory towards the desired direction. In other words,&lt;br /&gt;
it is not the subject&#039;s task to perform a particular mental imagery, but it is the&lt;br /&gt;
subject&#039;s task to control the cursor.&lt;br /&gt;
&lt;br /&gt;
In the early part of the training, the experimenter will suggest that up/down&lt;br /&gt;
movement may be achieved by imagining movement of upper/lower limbs. In&lt;br /&gt;
fact, this is likely to produce a differential modulation of Mu rhythm over the&lt;br /&gt;
hands (C3, C4) or feet (Cz) motor areas. After a few sessions, motor imagery&lt;br /&gt;
typically becomes less important.&lt;br /&gt;
&lt;br /&gt;
The second set of instructions to the subject regards the minimization of&lt;br /&gt;
[[User Tutorial:EEG_Measurement_Setup#EEG Artifacts|artifacts]] from&lt;br /&gt;
*Contraction of the muscles of the face/head, swallowing;&lt;br /&gt;
*Eye blinks and eye movements;&lt;br /&gt;
*Motion.&lt;br /&gt;
&lt;br /&gt;
Provided that subjects are asked to minimize artifacts (e.g. asked to try to&lt;br /&gt;
swallow only during the pause between letters), he/she should be further&lt;br /&gt;
assisted in these efforts by providing a comfortable chair and a dimly lit room.&lt;br /&gt;
We will return to the role of reinforcement, but it is already clear that the&lt;br /&gt;
experimenter must carefully monitor the EEG and alert the subject in the case&lt;br /&gt;
he/she has forgotten some of the instructions.&lt;br /&gt;
When the experimenter is sure that his/her instructions have been well&lt;br /&gt;
understood, the recording session may start.&lt;br /&gt;
&lt;br /&gt;
Click the &#039;&#039;Start&#039;&#039; button to start the feedback experiment.&lt;br /&gt;
During the experiment, the subject&#039;s performance is written into a log window on the experimenter&#039;s screen, and recorded into a log file that is saved to disk in the session directory.&lt;br /&gt;
&lt;br /&gt;
==Monitoring the Recording==&lt;br /&gt;
After recording has started, one might feel the temptation to leave&lt;br /&gt;
the subject alone during the run since most of the experimental activities are&lt;br /&gt;
automated in BCI2000. On the contrary, the experimenter has several tasks:&lt;br /&gt;
*Filling in a run-sheet to report information that is not automatically recorded by BCI2000 and that will later help when data are analyzed.&lt;br /&gt;
*Monitoring the EEG waves, checking that the quality of recording does not decrease (electrode contact failure, muscular, EOG or motion artifacts, etc.)&lt;br /&gt;
*Reinforce the subject: warn him/her if he/she is producing artifacts, keep him/her alert if getting drowsy, give him/her feedback about his/her performance so that interest is kept high.&lt;br /&gt;
The run sheet is the most important means of communication between the&lt;br /&gt;
technician who performs the recordings and the person who analyzes the data&lt;br /&gt;
(or possibly the historical memory of whoever does both). It is important that&lt;br /&gt;
it is compiled carefully and that it is rich in what may seem to be obvious detail: only&lt;br /&gt;
time will say what is standard and what changes from session to session, and if&lt;br /&gt;
you will need to analyze data acquired years before, you will probably have a&lt;br /&gt;
problem if you did not note down all information.&lt;br /&gt;
&lt;br /&gt;
==Multiple Sessions==&lt;br /&gt;
Once a run has ended, BCI2000 goes into suspended state.&lt;br /&gt;
Further runs will be added to the session when you click &#039;&#039;Resume&#039;&#039;.&lt;br /&gt;
After the session has finished, you may want to save auto-adjusted parameters for the next session.&lt;br /&gt;
Use &#039;&#039;Save Parameters&#039;&#039; from the configuration window to do this.&lt;br /&gt;
&lt;br /&gt;
Alternatively, the &#039;&#039;Load Parameters&#039;&#039; dialog allows you to choose a data file rather than a parameter file, and thus use the configuration contained in a previous session&#039;s data file for the next session. However, parameters contained in a data file reflect the state at the &#039;&#039;beginning&#039;&#039; of the recording, so changes during a session&#039;s last run cannot be recovered that way.&lt;br /&gt;
&lt;br /&gt;
When starting the next session, don&#039;t forget to increment the &#039;&#039;SessionNumber&#039;&#039; parameter on the &#039;&#039;Storage&#039;&#039; tab. Otherwise, new runs will be added to the previous session&#039;s directory. As a safety net, BCI2000 will never overwrite existing data files, and documents date and time in the &#039;&#039;StorageTime&#039;&#039; parameter. This allows to later separate data files into runs even if the &#039;&#039;SessionNumber&#039;&#039; parameter has not been increased.&lt;br /&gt;
&lt;br /&gt;
After each session, it is recommended that you analyze the recorded data in the same way as you did for the  [[User_Tutorial:Obtaining_Mu_Rhythm_Parameters_in_an_Initial_Session|initial session]]. This allows you to track and adapt to signal changes in the subject&#039;s parameters that may occur in the course of learning.&lt;br /&gt;
&lt;br /&gt;
==Finished==&lt;br /&gt;
Here, the Mu rhythm tutorial is finished. &lt;br /&gt;
&lt;br /&gt;
Congratulations! You are now able to perform [[User Tutorial:Mu Rhythm BCI Tutorial|mu rhythm feedback experiments]].&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Tutorial:Mu Rhythm BCI Tutorial]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_a_Mu_Rhythm_Feedback_Session&amp;diff=3503</id>
		<title>User Tutorial:Performing a Mu Rhythm Feedback Session</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Performing_a_Mu_Rhythm_Feedback_Session&amp;diff=3503"/>
		<updated>2008-02-20T18:45:14Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Preparation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This step assumes that you [[User Tutorial:Configuring Online Feedback|created a subject-specific configuration file]] for the on-line system, as described in the previous step of this tutorial.&lt;br /&gt;
&lt;br /&gt;
==Preparation==&lt;br /&gt;
If you quit BCI2000 after the [[User Tutorial:Configuring Online Feedback|previous step,]] start it using the appropriate batch file at &amp;lt;tt&amp;gt;batch/CursorTask_&amp;lt;YourAmplifier&amp;gt;.bat&amp;lt;/tt&amp;gt;, or the link to that file which you created on the desktop.&lt;br /&gt;
&lt;br /&gt;
Then, load the configuration file that you saved in the previous step.&lt;br /&gt;
&lt;br /&gt;
Click &#039;&#039;Set Config&#039;&#039; to view the EEG signal, and [[User_Tutorial:EEG_Measurement_Setup|prepare the subject for EEG recording]] as you did for the [[User_Tutorial:Obtaining_Mu_Rhythm_Parameters_in_an_Initial_Session|initial session]].&lt;br /&gt;
&lt;br /&gt;
==Instructions to the Subject==&lt;br /&gt;
After the subject is ready for EEG acquisition, he/she is given instructions&lt;br /&gt;
about the experimental task.&lt;br /&gt;
&lt;br /&gt;
A screen with a T in the center is initially presented. As soon as the subject is&lt;br /&gt;
ready and the EEG traces are stabilized, the investigator will start the&lt;br /&gt;
acquisition, and the T will disappear. For each trial, four phases will occur:&lt;br /&gt;
#Target presentation. A target appears on the right edge of the screen for about one second.&lt;br /&gt;
#Cursor movement. The subject receives feedback about his/her Mu amplitude by the trajectory of the cursor on the screen. The time needed for the cursor to move from the left to the right edge of the screen should be approximately three seconds.&lt;br /&gt;
#Result. If the cursor hits the target, the latter changes its color; otherwise, the screen will blank. In either case, this period lasts one second.&lt;br /&gt;
#Intertrial Interval. Screen will turn/remain black for one second, after which the cycle starts over.&lt;br /&gt;
&lt;br /&gt;
When a target is presented, the subject must concentrate on whatever he feels&lt;br /&gt;
can modify the cursor trajectory towards the desired direction. In other words,&lt;br /&gt;
it is not the subject&#039;s task to perform a particular mental imagery, but it is the&lt;br /&gt;
subject&#039;s task to control the cursor.&lt;br /&gt;
&lt;br /&gt;
In the early part of the training, the experimenter will suggest that up/down&lt;br /&gt;
movement may be achieved by imagining movement of upper/lower limbs. In&lt;br /&gt;
fact, this is likely to produce a differential modulation of Mu rhythm over the&lt;br /&gt;
hands (C3, C4) or feet (Cz) motor areas. After a few sessions, motor imagery&lt;br /&gt;
typically becomes less important.&lt;br /&gt;
&lt;br /&gt;
The second set of instructions to the subject regards the minimization of&lt;br /&gt;
[[User Tutorial:EEG_Measurement_Setup#EEG Artifacts|artifacts]] from&lt;br /&gt;
*Contraction of the muscles of the face/head, swallowing;&lt;br /&gt;
*Eye blinks and eye movements;&lt;br /&gt;
*Motion.&lt;br /&gt;
&lt;br /&gt;
Provided that subjects are asked to minimize artifacts (e.g. asked to try to&lt;br /&gt;
swallow only during the pause between letters), he/she should be further&lt;br /&gt;
assisted in these efforts by providing a comfortable chair and a dimly lit room.&lt;br /&gt;
We will return to the role of reinforcement, but it is already clear that the&lt;br /&gt;
experimenter must carefully monitor the EEG and alert the subject in the case&lt;br /&gt;
he/she has forgotten some of the instructions.&lt;br /&gt;
When the experimenter is sure that his/her instructions have been well&lt;br /&gt;
understood, the recording session may start.&lt;br /&gt;
&lt;br /&gt;
Click the &#039;&#039;Start&#039;&#039; button to start the feedback experiment.&lt;br /&gt;
During the experiment, the subject&#039;s performance is written into a log window on the experimenter&#039;s screen, and recorded into a log file that is saved to disk in the session directory.&lt;br /&gt;
&lt;br /&gt;
==Monitoring the Recording==&lt;br /&gt;
After recording has started, one might feel the temptation to leave&lt;br /&gt;
the subject alone during the run since most of the experimental activities are&lt;br /&gt;
automated in BCI2000. On the contrary, the experimenter has several tasks:&lt;br /&gt;
*Filling in a run-sheet to report information that is not automatically recorded by BCI2000 and that will later help when data are analyzed.&lt;br /&gt;
*Monitoring the EEG waves, checking that the quality of recording does not decrease (electrode contact failure, muscular, EOG or motion artifacts, etc.)&lt;br /&gt;
*Reinforce the subject: warn him/her if he/she is producing artifacts, keep him/her alert if getting drowsy, give him/her feedback about his/her performance so that interest is kept high.&lt;br /&gt;
The run sheet is the most important mean of communication between the&lt;br /&gt;
technician who performs the recordings and the person who analyzes the data&lt;br /&gt;
(or possibly the historical memory of whoever does both). It is important that&lt;br /&gt;
it is compiled carefully and that it is rich of appearingly obvious details: only&lt;br /&gt;
time will say what is standard and what changes from session to session, and if&lt;br /&gt;
you will need to analyze data acquired years before, you will probably have a&lt;br /&gt;
problem if you did not note down all information.&lt;br /&gt;
&lt;br /&gt;
==Multiple Sessions==&lt;br /&gt;
Once a run has ended, BCI2000 goes into suspended state.&lt;br /&gt;
Further runs will be added to the session when you click &#039;&#039;Resume&#039;&#039;.&lt;br /&gt;
After the session has finished, you may want to save auto-adjusted parameters for the next session.&lt;br /&gt;
Use &#039;&#039;Save Parameters&#039;&#039; from the configuration window to do this.&lt;br /&gt;
&lt;br /&gt;
Alternatively, the &#039;&#039;Load Parameters&#039;&#039; dialog allows you to choose a data file rather than a parameter file, and thus use the configuration contained in a previous session&#039;s data file for the next session. However, parameters contained in a data file reflect the state at the &#039;&#039;beginning&#039;&#039; of the recording, so changes during a session&#039;s last run cannot be recovered that way.&lt;br /&gt;
&lt;br /&gt;
When starting the next session, don&#039;t forget to increment the &#039;&#039;SessionNumber&#039;&#039; parameter on the &#039;&#039;Storage&#039;&#039; tab. Otherwise, new runs will be added to the previous session&#039;s directory. As a safety net, BCI2000 will never overwrite existing data files, and documents date and time in the &#039;&#039;StorageTime&#039;&#039; parameter. This allows to later separate data files into runs even if the &#039;&#039;SessionNumber&#039;&#039; parameter has not been increased.&lt;br /&gt;
&lt;br /&gt;
After each session, it is recommended that you analyze the recorded data in the same way as you did for the  [[User_Tutorial:Obtaining_Mu_Rhythm_Parameters_in_an_Initial_Session|initial session]]. This allows you to track and adapt to signal changes in the subject&#039;s parameters that may occur in the course of learning.&lt;br /&gt;
&lt;br /&gt;
==Finished==&lt;br /&gt;
Here, the Mu rhythm tutorial is finished. &lt;br /&gt;
&lt;br /&gt;
Congratulations! You are now able to perform [[User Tutorial:Mu Rhythm BCI Tutorial|mu rhythm feedback experiments]].&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Tutorial:Mu Rhythm BCI Tutorial]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Configuring_Online_Feedback&amp;diff=3502</id>
		<title>User Tutorial:Configuring Online Feedback</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=User_Tutorial:Configuring_Online_Feedback&amp;diff=3502"/>
		<updated>2008-02-20T18:23:47Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Starting up BCI2000 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This tutorial step assumes that you have [[User Tutorial:Obtaining Mu Rhythm Parameters in an Initial Session|obtained Mu rhythm parameters]] in an initial session.&lt;br /&gt;
Now you are going to create a subject-specific parameter configuration for on-line feedback.&lt;br /&gt;
&lt;br /&gt;
==Starting up BCI2000==&lt;br /&gt;
Start BCI2000 using the appropriate batch file at &amp;lt;tt&amp;gt;batch/CursorTask_&amp;lt;YourAmplifier&amp;gt;.bat&amp;lt;/tt&amp;gt;. You might consider creating a link to this file on the desktop.&lt;br /&gt;
&lt;br /&gt;
==Spatial Filtering==&lt;br /&gt;
As a result of the initial session, you have some idea of the signal topography, and spatial filtering that extracts the signal best.&lt;br /&gt;
In this tutorial, we use &#039;&#039;Common Average Reference (CAR)&#039;&#039; filtering because it gives generally good results, and has the advantage of being independent of the montage used. Also, this method is independent of subject specific parameters, so you will only need to configure it once for a given electrode montage.&lt;br /&gt;
===Creating a CAR Filter===&lt;br /&gt;
The idea behind CAR filtering is to subtract the spatial average of all &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt; channels from each individual channel.&lt;br /&gt;
In terms of spatial filtering matrices, this means an identity matrix minus a matrix that has &amp;lt;math&amp;gt;1/N&amp;lt;/math&amp;gt; in all entries:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M_{ij} = \delta_{ij} - 1/N&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
For 16 and 64 channel recordings, you may load appropriate parameter fragments are available at &amp;lt;tt&amp;gt;parms/fragments/spatial_filters/CommonAverageN.prm&amp;lt;/tt&amp;gt;.&lt;br /&gt;
For other &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt;, you will need to configure the &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039; parameters as follows:&lt;br /&gt;
*Go to the &#039;&#039;Source&#039;&#039; tab. In the &#039;&#039;TransmitChList&#039;&#039; parameter, enter a space-separated list of channel numbers beginning with 1:&amp;lt;br /&amp;gt;1 2 3 4 ... N&lt;br /&gt;
*Go to the &#039;&#039;Filtering&#039;&#039; tab. Click the &#039;&#039;Edit Matrix&#039;&#039; button associated with the &#039;&#039;SpatialFilter&#039;&#039; parameter.&lt;br /&gt;
**Set both &#039;&#039;Number of columns&#039;&#039; and &#039;&#039;Number of rows&#039;&#039; to &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt;, and click &#039;&#039;Set new matrix size&#039;&#039;.&lt;br /&gt;
**In the diagonal entries of the matrix, enter the numerical value of &amp;lt;math&amp;gt;1-1/N&amp;lt;/math&amp;gt;.&lt;br /&gt;
**In the non-diagonal entries, enter the numerical value of &amp;lt;math&amp;gt;1/N&amp;lt;/math&amp;gt;.&lt;br /&gt;
**Right-click the matrix, and choose &#039;&#039;Edit labels&#039;&#039; from the context menu.&lt;br /&gt;
**As &#039;&#039;&#039;row&#039;&#039;&#039; labels, enter the electrode locations corresponding to channels.&lt;br /&gt;
**Close the matrix editor window.&lt;br /&gt;
*Click &#039;&#039;Configure Save&#039;&#039; in the configuration window, and check all parameter entries except &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039;; then close the window.&lt;br /&gt;
*Click &#039;&#039;Save Parameters&#039;&#039;, and save your spatial filter configuration under &amp;lt;tt&amp;gt;parms/fragments/spatial_filters/CommonAverage&amp;lt;YourMontage&amp;gt;.prm&amp;lt;/tt&amp;gt;.&lt;br /&gt;
*Click &#039;&#039;Configure Save&#039;&#039; again, uncheck all parameter entries, close the window.&lt;br /&gt;
The step of entering electrode locations is not mandatory. However, it makes subject-specific configuration easier to set up later on.&lt;br /&gt;
Also, pre-defined CAR parameter files do not specify electrode locations, so you will need to enter these locations manually, and save the resulting configuration as described above.&lt;br /&gt;
&lt;br /&gt;
==Subject-Specific Parameters==&lt;br /&gt;
In the next step, we construct a full parameter file for the subject:&lt;br /&gt;
*In the configuration window, click &#039;&#039;Load Parameters&#039;&#039; to load &amp;lt;tt&amp;gt;parms/mu_tutorial/MuFeedback.prm&amp;lt;/tt&amp;gt;.&lt;br /&gt;
*Additionally, load your amplifier configuration from &amp;lt;tt&amp;gt;parms/fragments/amplifiers&amp;lt;/tt&amp;gt;.&lt;br /&gt;
*Load the spatial filtering parameter fragment created above.&lt;br /&gt;
*Go to the &#039;&#039;Storage&#039;&#039; tab, and enter the subject&#039;s name or ID into the &#039;&#039;SubjectName&#039;&#039; parameter.&lt;br /&gt;
*Into the &#039;&#039;SubjectSession&#039;&#039; parameter, enter &#039;&#039;002&#039;&#039;.&lt;br /&gt;
===Configuring the Classifier===&lt;br /&gt;
Subject-specific electrode location and Mu rhythm frequency are part of the classifier&#039;s configuration.&lt;br /&gt;
They are entered into the &#039;&#039;Classifier&#039;&#039; parameter on the &#039;&#039;Filtering&#039;&#039; tab; there, click the &#039;&#039;Edit Matrix&#039;&#039; button associated with the &#039;&#039;Classifier&#039;&#039; parameter.&lt;br /&gt;
*Set &#039;&#039;Number of columns&#039;&#039; to 4, and &#039;&#039;Number of rows&#039;&#039; to 2; then, click &#039;&#039;Set new matrix size&#039;&#039; to apply your changes.&lt;br /&gt;
*In the first column, labeled &#039;&#039;input channel&#039;&#039;, enter the location of the feedback electrode. If you did not specify electrode locations when configuring the spatial filter, enter the channel number associated with the feedback electrode.&lt;br /&gt;
*In the second column, labeled &#039;&#039;input element (bin)&#039;&#039;, enter feedback frequency in Hz, immediately followed with &#039;&#039;Hz&#039;&#039;, as in &amp;lt;tt&amp;gt;12Hz&amp;lt;/tt&amp;gt;.&lt;br /&gt;
*In the third and fourth columns, enter 1 as output channel, and 1 as the weight.&lt;br /&gt;
*Finally, save your configuration to &amp;lt;tt&amp;gt;parms/subjects/mu_feedback/&amp;lt;Subject&amp;gt;002.prm&amp;lt;/tt&amp;gt;, or whereever you find appropriate.&lt;br /&gt;
&lt;br /&gt;
==Next Step==&lt;br /&gt;
In the next step, you will learn how to actually [[User Tutorial:Performing a Mu Rhythm Feedback Session|perform a Mu rhythm feedback session]] using the configuration created in the present step.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[[User Tutorial:Mu Rhythm BCI Tutorial]], [[User Reference:SpatialFilter]], [[User Reference:LinearClassifier]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Tutorial]]&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Template:Tutorial_Spatial_Filter&amp;diff=3348</id>
		<title>Template:Tutorial Spatial Filter</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Template:Tutorial_Spatial_Filter&amp;diff=3348"/>
		<updated>2008-02-13T20:13:18Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Creating an Identity Filter */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Spatial Filtering==&lt;br /&gt;
In the initial session you had a chance to gain some familiarity with the typical topography of a P300 signal.  Generally, and as was likely the case for your own results, the P300 response is uniform over a large number of electrodes which implies that the spatial response has most of its energy in the lower frequencies.  Mu responses, on the other hand, have a broader spatial response that includes more energy in mid and higher frequencies.  Thus, with Mu responses, we will typically apply a spatial high-pass filter prior to performing an analysis.  One example of such a filter is the common average reference (CAR) filter.  Because this filter removes energy from the lower frequencies, however, it is generally a bad choice for P300 signals.  For the purpose of this tutorial, we will show you how to configure BCI2000 so that no spatial filtering (i.e., identity spatial filtering) is applied to the signal.&lt;br /&gt;
&lt;br /&gt;
===Creating an Identity Filter===&lt;br /&gt;
In its default configuration, BCI2000 requires the user to specify a spatial filter matrix.  While there are spatial filters that may be effective for improving a P300 signal, we typically will not want to use a CAR filter.  Instead we will specify a spatial filter that will not affect the signal (i.e., an identity spatial filter).  For 8, 16 and 64 channel recordings, you may load any one of the parameter fragments available at &amp;lt;tt&amp;gt;parms/fragments/spatial_filters/IdentityN.prm&amp;lt;/tt&amp;gt; where &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt; is the number of electrodes (e.g., 8, 16, 64).  Applying one of these fragments will automatically set the appropriate values for the &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039; parameters.  To set the spatial filter labels, which may be useful for subject-specific configuration, please review the steps below.  If you didn&#039;t use an 8, 16 or 64-electrode array, you will need to configure the &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039; parameters as follows:&lt;br /&gt;
&lt;br /&gt;
*From the main window of &#039;&#039;BCI2000&#039;&#039; (i.e., &#039;&#039;Operator&#039;&#039;), click &#039;&#039;Config&#039;&#039;.&lt;br /&gt;
*Go to the &#039;&#039;Source&#039;&#039; tab. In the &#039;&#039;TransmitChList&#039;&#039; parameter, enter a space-separated list of channel numbers beginning with 1:&amp;lt;br /&amp;gt;1 2 3 4 ... N&lt;br /&gt;
*Go to the &#039;&#039;Filtering&#039;&#039; tab. Click the &#039;&#039;Edit Matrix&#039;&#039; button associated with the &#039;&#039;SpatialFilter&#039;&#039; parameter.&lt;br /&gt;
**Set both &#039;&#039;Number of columns&#039;&#039; and &#039;&#039;Number of rows&#039;&#039; to &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt;, and click &#039;&#039;Set new matrix size&#039;&#039;.&lt;br /&gt;
**In the diagonal entries of the matrix, enter the value 1. &lt;br /&gt;
**In the non-diagonal entries, enter the value 0. &lt;br /&gt;
**Set the matrix labels.  This step is not mandatory. However, it makes subject-specific configuration easier to set up later on.&lt;br /&gt;
***Right-click the matrix, and choose &#039;&#039;Edit labels&#039;&#039; from the context menu.&lt;br /&gt;
***In the first column of each row (i.e., the row labels), enter the appropriate 10-20 electrode location corresponding to that channel.&lt;br /&gt;
**Close the matrix editor window.&lt;br /&gt;
*Click &#039;&#039;Configure Save&#039;&#039; in the configuration window, check all parameter entries except &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039; and close the window.&lt;br /&gt;
*Click &#039;&#039;Save Parameters&#039;&#039;, and save your spatial filter configuration under &amp;lt;tt&amp;gt;parms/fragments/spatial_filters/Identity&amp;lt;YourMontage&amp;gt;.prm&amp;lt;/tt&amp;gt;.&lt;br /&gt;
*Click &#039;&#039;Configure Save&#039;&#039; again, uncheck all parameter entries and close the window.&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Template:Tutorial_Spatial_Filter&amp;diff=3347</id>
		<title>Template:Tutorial Spatial Filter</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Template:Tutorial_Spatial_Filter&amp;diff=3347"/>
		<updated>2008-02-13T20:09:01Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Creating an Identity Filter */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Spatial Filtering==&lt;br /&gt;
In the initial session you had a chance to gain some familiarity with the typical topography of a P300 signal.  Generally, and as was likely the case for your own results, the P300 response is uniform over a large number of electrodes which implies that the spatial response has most of its energy in the lower frequencies.  Mu responses, on the other hand, have a broader spatial response that includes more energy in mid and higher frequencies.  Thus, with Mu responses, we will typically apply a spatial high-pass filter prior to performing an analysis.  One example of such a filter is the common average reference (CAR) filter.  Because this filter removes energy from the lower frequencies, however, it is generally a bad choice for P300 signals.  For the purpose of this tutorial, we will show you how to configure BCI2000 so that no spatial filtering (i.e., identity spatial filtering) is applied to the signal.&lt;br /&gt;
&lt;br /&gt;
===Creating an Identity Filter===&lt;br /&gt;
In its default configuration, BCI2000 requires the user to specify a spatial filter matrix.  While there are spatial filters that may be effective for improving a P300 signal, we typically will not want to use a CAR filter.  Instead we will specify a spatial filter that will not affect the signal (i.e., an identity spatial filter).  For 8, 16 and 64 channel recordings, you may load any one of the parameter fragments available at &amp;lt;tt&amp;gt;parms/fragments/spatial_filters/IdentityN.prm&amp;lt;/tt&amp;gt; where &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt; is the number of electrodes (e.g., 8, 16, 64).  Applying one of these fragments will automatically set the appropriate values for the &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039; parameters.  To set the spatial filter labels, which may be useful for subject-specific configuration, please review the steps below.  If you didn&#039;t use an 8, 16 or 64-electrode array, you will need to configure the &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039; parameters as follows:&lt;br /&gt;
&lt;br /&gt;
*From the main window of &#039;&#039;BCI2000&#039;&#039; (i.e., &#039;&#039;Operator&#039;&#039;), click &#039;&#039;Config&#039;&#039;.&lt;br /&gt;
*Go to the &#039;&#039;Source&#039;&#039; tab. In the &#039;&#039;TransmitChList&#039;&#039; parameter, enter a space-separated list of channel numbers beginning with 1:&amp;lt;br /&amp;gt;1 2 3 4 ... N&lt;br /&gt;
*Go to the &#039;&#039;Filtering&#039;&#039; tab. Click the &#039;&#039;Edit Matrix&#039;&#039; button associated with the &#039;&#039;SpatialFilter&#039;&#039; parameter.&lt;br /&gt;
**Set both &#039;&#039;Number of columns&#039;&#039; and &#039;&#039;Number of rows&#039;&#039; to &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt;, and click &#039;&#039;Set new matrix size&#039;&#039;.&lt;br /&gt;
**In the diagonal entries of the matrix, enter the value 1. &lt;br /&gt;
**In the non-diagonal entries, enter the value 0. &lt;br /&gt;
**Set the matrix labels.  This step is not mandatory. However, it makes subject-specific configuration easier to set up later on.&lt;br /&gt;
***Right-click the matrix, and choose &#039;&#039;Edit labels&#039;&#039; from the context menu.&lt;br /&gt;
***In the first column of each row (i.e., the row labels), enter the appropriate 10-20 electrode location corresponding to that channel.&lt;br /&gt;
**Close the matrix editor window.&lt;br /&gt;
*Click &#039;&#039;Configure Save&#039;&#039; in the configuration window, and check all parameter entries except &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039;; close the window.&lt;br /&gt;
*Click &#039;&#039;Save Parameters&#039;&#039;, and save your spatial filter configuration under &amp;lt;tt&amp;gt;parms/fragments/spatial_filters/Identity&amp;lt;YourMontage&amp;gt;.prm&amp;lt;/tt&amp;gt;.&lt;br /&gt;
*Click &#039;&#039;Configure Save&#039;&#039; again, uncheck all parameter entries and close the window.&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Template:Tutorial_Spatial_Filter&amp;diff=3346</id>
		<title>Template:Tutorial Spatial Filter</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Template:Tutorial_Spatial_Filter&amp;diff=3346"/>
		<updated>2008-02-13T20:07:55Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Creating an Identity Filter */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Spatial Filtering==&lt;br /&gt;
In the initial session you had a chance to gain some familiarity with the typical topography of a P300 signal.  Generally, and as was likely the case for your own results, the P300 response is uniform over a large number of electrodes which implies that the spatial response has most of its energy in the lower frequencies.  Mu responses, on the other hand, have a broader spatial response that includes more energy in mid and higher frequencies.  Thus, with Mu responses, we will typically apply a spatial high-pass filter prior to performing an analysis.  One example of such a filter is the common average reference (CAR) filter.  Because this filter removes energy from the lower frequencies, however, it is generally a bad choice for P300 signals.  For the purpose of this tutorial, we will show you how to configure BCI2000 so that no spatial filtering (i.e., identity spatial filtering) is applied to the signal.&lt;br /&gt;
&lt;br /&gt;
===Creating an Identity Filter===&lt;br /&gt;
In its default configuration, BCI2000 requires the user to specify a spatial filter matrix.  While there are spatial filters that may be effective for improving a P300 signal, we typically will not want to use a CAR filter.  Instead we will specify a spatial filter that will not affect the signal (i.e., an identity spatial filter).  For 8, 16 and 64 channel recordings, you may load any one of the parameter fragments available at &amp;lt;tt&amp;gt;parms/fragments/spatial_filters/IdentityN.prm&amp;lt;/tt&amp;gt; where &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt; is the number of electrodes (e.g., 8, 16, 64).  Applying one of these fragments will automatically set the appropriate values for the &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039; parameters.  To set the spatial filter labels, which may be useful for subject-specific configuration, please review the steps below.  If you didn&#039;t use an 8, 16 or 64-electrode array, you will need to configure the &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039; parameters as follows:&lt;br /&gt;
&lt;br /&gt;
*From the &#039;&#039;BCI2000 Operator&#039;&#039;, click &#039;&#039;Config&#039;&#039;.&lt;br /&gt;
*Go to the &#039;&#039;Source&#039;&#039; tab. In the &#039;&#039;TransmitChList&#039;&#039; parameter, enter a space-separated list of channel numbers beginning with 1:&amp;lt;br /&amp;gt;1 2 3 4 ... N&lt;br /&gt;
*Go to the &#039;&#039;Filtering&#039;&#039; tab. Click the &#039;&#039;Edit Matrix&#039;&#039; button associated with the &#039;&#039;SpatialFilter&#039;&#039; parameter.&lt;br /&gt;
**Set both &#039;&#039;Number of columns&#039;&#039; and &#039;&#039;Number of rows&#039;&#039; to &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt;, and click &#039;&#039;Set new matrix size&#039;&#039;.&lt;br /&gt;
**In the diagonal entries of the matrix, enter the value 1. &lt;br /&gt;
**In the non-diagonal entries, enter the value 0. &lt;br /&gt;
**Set the matrix labels.  This step is not mandatory. However, it makes subject-specific configuration easier to set up later on.&lt;br /&gt;
***Right-click the matrix, and choose &#039;&#039;Edit labels&#039;&#039; from the context menu.&lt;br /&gt;
***In the first column of each row (i.e., the row labels), enter the appropriate 10-20 electrode location corresponding to that channel.&lt;br /&gt;
**Close the matrix editor window.&lt;br /&gt;
*Click &#039;&#039;Configure Save&#039;&#039; in the configuration window, and check all parameter entries except &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039;; close the window.&lt;br /&gt;
*Click &#039;&#039;Save Parameters&#039;&#039;, and save your spatial filter configuration under &amp;lt;tt&amp;gt;parms/fragments/spatial_filters/Identity&amp;lt;YourMontage&amp;gt;.prm&amp;lt;/tt&amp;gt;.&lt;br /&gt;
*Click &#039;&#039;Configure Save&#039;&#039; again, uncheck all parameter entries and close the window.&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Template:Tutorial_Spatial_Filter&amp;diff=3345</id>
		<title>Template:Tutorial Spatial Filter</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Template:Tutorial_Spatial_Filter&amp;diff=3345"/>
		<updated>2008-02-13T20:06:21Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Creating an Identity Filter */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Spatial Filtering==&lt;br /&gt;
In the initial session you had a chance to gain some familiarity with the typical topography of a P300 signal.  Generally, and as was likely the case for your own results, the P300 response is uniform over a large number of electrodes which implies that the spatial response has most of its energy in the lower frequencies.  Mu responses, on the other hand, have a broader spatial response that includes more energy in mid and higher frequencies.  Thus, with Mu responses, we will typically apply a spatial high-pass filter prior to performing an analysis.  One example of such a filter is the common average reference (CAR) filter.  Because this filter removes energy from the lower frequencies, however, it is generally a bad choice for P300 signals.  For the purpose of this tutorial, we will show you how to configure BCI2000 so that no spatial filtering (i.e., identity spatial filtering) is applied to the signal.&lt;br /&gt;
&lt;br /&gt;
===Creating an Identity Filter===&lt;br /&gt;
In its default configuration, BCI2000 requires the user to specify a spatial filter matrix.  While there are spatial filters that may be effective for improving a P300 signal, we typically will not want to use a CAR filter.  Instead we will specify a spatial filter that will not affect the signal (i.e., an identity spatial filter).  For 8, 16 and 64 channel recordings, you may load any one of the parameter fragments available at &amp;lt;tt&amp;gt;parms/fragments/spatial_filters/IdentityN.prm&amp;lt;/tt&amp;gt; where &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt; is the number of electrodes (e.g., 8, 16, 64).  Applying one of these fragments will automatically set the appropriate values for the &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039; parameters.  To set the spatial filter labels, which may be useful for subject-specific configuration, please review the steps below.  If you didn&#039;t use an 8, 16 or 64-electrode array, you will need to configure the &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039; parameters as follows:&lt;br /&gt;
&lt;br /&gt;
*Go to the &#039;&#039;Source&#039;&#039; tab. In the &#039;&#039;TransmitChList&#039;&#039; parameter, enter a space-separated list of channel numbers beginning with 1:&amp;lt;br /&amp;gt;1 2 3 4 ... N&lt;br /&gt;
*Go to the &#039;&#039;Filtering&#039;&#039; tab. Click the &#039;&#039;Edit Matrix&#039;&#039; button associated with the &#039;&#039;SpatialFilter&#039;&#039; parameter.&lt;br /&gt;
**Set both &#039;&#039;Number of columns&#039;&#039; and &#039;&#039;Number of rows&#039;&#039; to &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt;, and click &#039;&#039;Set new matrix size&#039;&#039;.&lt;br /&gt;
**In the diagonal entries of the matrix, enter the value 1. &lt;br /&gt;
**In the non-diagonal entries, enter the value 0. &lt;br /&gt;
**Set the matrix labels.  This step is not mandatory. However, it makes subject-specific configuration easier to set up later on.&lt;br /&gt;
***Right-click the matrix, and choose &#039;&#039;Edit labels&#039;&#039; from the context menu.&lt;br /&gt;
***In the first column of each row (i.e., the row labels), enter the appropriate 10-20 electrode location corresponding to that channel.&lt;br /&gt;
**Close the matrix editor window.&lt;br /&gt;
*Click &#039;&#039;Configure Save&#039;&#039; in the configuration window, and check all parameter entries except &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039;; close the window.&lt;br /&gt;
*Click &#039;&#039;Save Parameters&#039;&#039;, and save your spatial filter configuration under &amp;lt;tt&amp;gt;parms/fragments/spatial_filters/Identity&amp;lt;YourMontage&amp;gt;.prm&amp;lt;/tt&amp;gt;.&lt;br /&gt;
*Click &#039;&#039;Configure Save&#039;&#039; again, uncheck all parameter entries and close the window.&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Template:Tutorial_Spatial_Filter&amp;diff=3344</id>
		<title>Template:Tutorial Spatial Filter</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Template:Tutorial_Spatial_Filter&amp;diff=3344"/>
		<updated>2008-02-13T20:05:01Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Creating an Identity Filter */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Spatial Filtering==&lt;br /&gt;
In the initial session you had a chance to gain some familiarity with the typical topography of a P300 signal.  Generally, and as was likely the case for your own results, the P300 response is uniform over a large number of electrodes which implies that the spatial response has most of its energy in the lower frequencies.  Mu responses, on the other hand, have a broader spatial response that includes more energy in mid and higher frequencies.  Thus, with Mu responses, we will typically apply a spatial high-pass filter prior to performing an analysis.  One example of such a filter is the common average reference (CAR) filter.  Because this filter removes energy from the lower frequencies, however, it is generally a bad choice for P300 signals.  For the purpose of this tutorial, we will show you how to configure BCI2000 so that no spatial filtering (i.e., identity spatial filtering) is applied to the signal.&lt;br /&gt;
&lt;br /&gt;
===Creating an Identity Filter===&lt;br /&gt;
In its default configuration, BCI2000 requires the user to specify a spatial filter matrix.  While there are spatial filters that may be effective for improving a P300 signal, we typically will not want to use a CAR filter.  Instead we will specify a spatial filter that will not affect the signal (i.e., an identity spatial filter).  For 8, 16 and 64 channel recordings, you may load any one of the parameter fragments available at &amp;lt;tt&amp;gt;parms/fragments/spatial_filters/IdentityN.prm&amp;lt;/tt&amp;gt; where &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt; is the number of electrodes (e.g., 8, 16, 64).  Applying one of these fragments will automatically set the appropriate values for the &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039; parameters.  To set the spatial filter labels, please review the steps below.  If you didn&#039;t use an 8, 16 or 64-electrode array, you will need to configure the &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039; parameters as follows:&lt;br /&gt;
&lt;br /&gt;
*Go to the &#039;&#039;Source&#039;&#039; tab. In the &#039;&#039;TransmitChList&#039;&#039; parameter, enter a space-separated list of channel numbers beginning with 1:&amp;lt;br /&amp;gt;1 2 3 4 ... N&lt;br /&gt;
*Go to the &#039;&#039;Filtering&#039;&#039; tab. Click the &#039;&#039;Edit Matrix&#039;&#039; button associated with the &#039;&#039;SpatialFilter&#039;&#039; parameter.&lt;br /&gt;
**Set both &#039;&#039;Number of columns&#039;&#039; and &#039;&#039;Number of rows&#039;&#039; to &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt;, and click &#039;&#039;Set new matrix size&#039;&#039;.&lt;br /&gt;
**In the diagonal entries of the matrix, enter the value 1. &lt;br /&gt;
**In the non-diagonal entries, enter the value 0. &lt;br /&gt;
**Set the matrix labels.  This step is not mandatory. However, it makes subject-specific configuration easier to set up later on.&lt;br /&gt;
***Right-click the matrix, and choose &#039;&#039;Edit labels&#039;&#039; from the context menu.&lt;br /&gt;
***In the first column of each row (i.e., the row labels), enter the appropriate 10-20 electrode location corresponding to that channel.&lt;br /&gt;
**Close the matrix editor window.&lt;br /&gt;
*Click &#039;&#039;Configure Save&#039;&#039; in the configuration window, and check all parameter entries except &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039;; close the window.&lt;br /&gt;
*Click &#039;&#039;Save Parameters&#039;&#039;, and save your spatial filter configuration under &amp;lt;tt&amp;gt;parms/fragments/spatial_filters/Identity&amp;lt;YourMontage&amp;gt;.prm&amp;lt;/tt&amp;gt;.&lt;br /&gt;
*Click &#039;&#039;Configure Save&#039;&#039; again, uncheck all parameter entries and close the window.&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Template:Tutorial_Spatial_Filter&amp;diff=3343</id>
		<title>Template:Tutorial Spatial Filter</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Template:Tutorial_Spatial_Filter&amp;diff=3343"/>
		<updated>2008-02-13T20:03:07Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Creating an Identity Filter */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Spatial Filtering==&lt;br /&gt;
In the initial session you had a chance to gain some familiarity with the typical topography of a P300 signal.  Generally, and as was likely the case for your own results, the P300 response is uniform over a large number of electrodes which implies that the spatial response has most of its energy in the lower frequencies.  Mu responses, on the other hand, have a broader spatial response that includes more energy in mid and higher frequencies.  Thus, with Mu responses, we will typically apply a spatial high-pass filter prior to performing an analysis.  One example of such a filter is the common average reference (CAR) filter.  Because this filter removes energy from the lower frequencies, however, it is generally a bad choice for P300 signals.  For the purpose of this tutorial, we will show you how to configure BCI2000 so that no spatial filtering (i.e., identity spatial filtering) is applied to the signal.&lt;br /&gt;
&lt;br /&gt;
===Creating an Identity Filter===&lt;br /&gt;
In its default configuration, BCI2000 requires the user to specify a spatial filter matrix.  While there are spatial filters that may be effective for improving a P300 signal, we typically will not want to use a CAR filter.  Instead we will specify a spatial filter that will not affect the signal (i.e., an identity spatial filter).  For 8, 16 and 64 channel recordings, you may load any one of the parameter fragments available at &amp;lt;tt&amp;gt;parms/fragments/spatial_filters/IdentityN.prm&amp;lt;/tt&amp;gt; where &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt; is the number of electrodes (e.g., 8, 16, 64).  Applying one of these fragments will automatically set the appropriate values for the &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039; parameters.  To set the spatial filter labels, please review the steps below.  For other values of &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt;, you will need to configure the &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039; parameters as follows:&lt;br /&gt;
&lt;br /&gt;
*Go to the &#039;&#039;Source&#039;&#039; tab. In the &#039;&#039;TransmitChList&#039;&#039; parameter, enter a space-separated list of channel numbers beginning with 1:&amp;lt;br /&amp;gt;1 2 3 4 ... N&lt;br /&gt;
*Go to the &#039;&#039;Filtering&#039;&#039; tab. Click the &#039;&#039;Edit Matrix&#039;&#039; button associated with the &#039;&#039;SpatialFilter&#039;&#039; parameter.&lt;br /&gt;
**Set both &#039;&#039;Number of columns&#039;&#039; and &#039;&#039;Number of rows&#039;&#039; to &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt;, and click &#039;&#039;Set new matrix size&#039;&#039;.&lt;br /&gt;
**In the diagonal entries of the matrix, enter the value 1. &lt;br /&gt;
**In the non-diagonal entries, enter the value 0. &lt;br /&gt;
**Set the matrix labels.  This step is not mandatory. However, it makes subject-specific configuration easier to set up later on.&lt;br /&gt;
***Right-click the matrix, and choose &#039;&#039;Edit labels&#039;&#039; from the context menu.&lt;br /&gt;
***In the first column of each row (i.e., the row labels), enter the appropriate 10-20 electrode location corresponding to that channel.&lt;br /&gt;
**Close the matrix editor window.&lt;br /&gt;
*Click &#039;&#039;Configure Save&#039;&#039; in the configuration window, and check all parameter entries except &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039;; close the window.&lt;br /&gt;
*Click &#039;&#039;Save Parameters&#039;&#039;, and save your spatial filter configuration under &amp;lt;tt&amp;gt;parms/fragments/spatial_filters/Identity&amp;lt;YourMontage&amp;gt;.prm&amp;lt;/tt&amp;gt;.&lt;br /&gt;
*Click &#039;&#039;Configure Save&#039;&#039; again, uncheck all parameter entries and close the window.&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Template:Tutorial_Spatial_Filter&amp;diff=3342</id>
		<title>Template:Tutorial Spatial Filter</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Template:Tutorial_Spatial_Filter&amp;diff=3342"/>
		<updated>2008-02-13T20:01:48Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Spatial Filtering */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Spatial Filtering==&lt;br /&gt;
In the initial session you had a chance to gain some familiarity with the typical topography of a P300 signal.  Generally, and as was likely the case for your own results, the P300 response is uniform over a large number of electrodes which implies that the spatial response has most of its energy in the lower frequencies.  Mu responses, on the other hand, have a broader spatial response that includes more energy in mid and higher frequencies.  Thus, with Mu responses, we will typically apply a spatial high-pass filter prior to performing an analysis.  One example of such a filter is the common average reference (CAR) filter.  Because this filter removes energy from the lower frequencies, however, it is generally a bad choice for P300 signals.  For the purpose of this tutorial, we will show you how to configure BCI2000 so that no spatial filtering (i.e., identity spatial filtering) is applied to the signal.&lt;br /&gt;
&lt;br /&gt;
===Creating an Identity Filter===&lt;br /&gt;
In its default configuration, BCI2000 requires the user to specify a spatial filter matrix.  While there are spatial filters that may be effective for improving a P300 signal, we typically will not want to use a CAR filter.  Instead we will specify a spatial filter that will not affect the signal (i.e., an identity spatial filter).  For 8, 16 and 64 channel recordings, you may load appropriate parameter fragments are available at &amp;lt;tt&amp;gt;parms/fragments/spatial_filters/IdentityN.prm&amp;lt;/tt&amp;gt; where &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt; is the number of electrodes (e.g., 8, 16, 64).  Applying one of these fragments will automatically set the appropriate values for the &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039; parameters.  To set the spatial filter labels, please review the steps below.  For other values of &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt;, you will need to configure the &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039; parameters as follows:&lt;br /&gt;
&lt;br /&gt;
*Go to the &#039;&#039;Source&#039;&#039; tab. In the &#039;&#039;TransmitChList&#039;&#039; parameter, enter a space-separated list of channel numbers beginning with 1:&amp;lt;br /&amp;gt;1 2 3 4 ... N&lt;br /&gt;
*Go to the &#039;&#039;Filtering&#039;&#039; tab. Click the &#039;&#039;Edit Matrix&#039;&#039; button associated with the &#039;&#039;SpatialFilter&#039;&#039; parameter.&lt;br /&gt;
**Set both &#039;&#039;Number of columns&#039;&#039; and &#039;&#039;Number of rows&#039;&#039; to &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt;, and click &#039;&#039;Set new matrix size&#039;&#039;.&lt;br /&gt;
**In the diagonal entries of the matrix, enter the value 1. &lt;br /&gt;
**In the non-diagonal entries, enter the value 0. &lt;br /&gt;
**Set the matrix labels.  This step is not mandatory. However, it makes subject-specific configuration easier to set up later on.&lt;br /&gt;
***Right-click the matrix, and choose &#039;&#039;Edit labels&#039;&#039; from the context menu.&lt;br /&gt;
***In the first column of each row (i.e., the row labels), enter the appropriate 10-20 electrode location corresponding to that channel.&lt;br /&gt;
**Close the matrix editor window.&lt;br /&gt;
*Click &#039;&#039;Configure Save&#039;&#039; in the configuration window, and check all parameter entries except &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039;; close the window.&lt;br /&gt;
*Click &#039;&#039;Save Parameters&#039;&#039;, and save your spatial filter configuration under &amp;lt;tt&amp;gt;parms/fragments/spatial_filters/Identity&amp;lt;YourMontage&amp;gt;.prm&amp;lt;/tt&amp;gt;.&lt;br /&gt;
*Click &#039;&#039;Configure Save&#039;&#039; again, uncheck all parameter entries and close the window.&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Template:Tutorial_Spatial_Filter&amp;diff=3341</id>
		<title>Template:Tutorial Spatial Filter</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Template:Tutorial_Spatial_Filter&amp;diff=3341"/>
		<updated>2008-02-13T19:59:15Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: /* Spatial Filtering */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Spatial Filtering==&lt;br /&gt;
In the initial session you had a chance to gain some familiarity with the typical topography of a P300 signal.  Generally, and as was likely the case for your own results, the P300 response is uniform over a large number of electrodes which implies that the spatial response has most of its energy in the lower frequencies.  Mu responses, on the other hand, have a broader spatial response that includes more energy in mid and higher frequencies.  Thus, with these types of responses, we will typically apply a spatial high-pass filter prior to performing an analysis.  One example of such a filter is the common average reference (CAR) filter.  Because this filter removes energy from the lower frequencies, however, it is generally a bad choice for P300 signals.  For the purpose of this tutorial, we will show you how to configure BCI2000 so that no spatial filtering (i.e., identity spatial filtering) is applied to the signal.&lt;br /&gt;
&lt;br /&gt;
As a result of the initial session, you have some idea of the signal topography, and spatial filtering that extracts the signal best.&lt;br /&gt;
In this tutorial, we use &#039;&#039;Common Average Reference (CAR)&#039;&#039; filtering because it gives generally good results, and has the advantage of being independent of the montage used. Also, this method is independent of subject specific parameters, so you will only need to configure it once for a given electrode montage.&lt;br /&gt;
&lt;br /&gt;
===Creating an Identity Filter===&lt;br /&gt;
In its default configuration, BCI2000 requires the user to specify a spatial filter matrix.  While there are spatial filters that may be effective for improving a P300 signal, we typically will not want to use a CAR filter.  Instead we will specify a spatial filter that will not affect the signal (i.e., an identity spatial filter).  For 8, 16 and 64 channel recordings, you may load appropriate parameter fragments are available at &amp;lt;tt&amp;gt;parms/fragments/spatial_filters/IdentityN.prm&amp;lt;/tt&amp;gt; where &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt; is the number of electrodes (e.g., 8, 16, 64).  Applying one of these fragments will automatically set the appropriate values for the &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039; parameters.  To set the spatial filter labels, please review the steps below.  For other values of &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt;, you will need to configure the &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039; parameters as follows:&lt;br /&gt;
&lt;br /&gt;
*Go to the &#039;&#039;Source&#039;&#039; tab. In the &#039;&#039;TransmitChList&#039;&#039; parameter, enter a space-separated list of channel numbers beginning with 1:&amp;lt;br /&amp;gt;1 2 3 4 ... N&lt;br /&gt;
*Go to the &#039;&#039;Filtering&#039;&#039; tab. Click the &#039;&#039;Edit Matrix&#039;&#039; button associated with the &#039;&#039;SpatialFilter&#039;&#039; parameter.&lt;br /&gt;
**Set both &#039;&#039;Number of columns&#039;&#039; and &#039;&#039;Number of rows&#039;&#039; to &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt;, and click &#039;&#039;Set new matrix size&#039;&#039;.&lt;br /&gt;
**In the diagonal entries of the matrix, enter the value 1. &lt;br /&gt;
**In the non-diagonal entries, enter the value 0. &lt;br /&gt;
**Set the matrix labels.  This step is not mandatory. However, it makes subject-specific configuration easier to set up later on.&lt;br /&gt;
***Right-click the matrix, and choose &#039;&#039;Edit labels&#039;&#039; from the context menu.&lt;br /&gt;
***In the first column of each row (i.e., the row labels), enter the appropriate 10-20 electrode location corresponding to that channel.&lt;br /&gt;
**Close the matrix editor window.&lt;br /&gt;
*Click &#039;&#039;Configure Save&#039;&#039; in the configuration window, and check all parameter entries except &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039;; close the window.&lt;br /&gt;
*Click &#039;&#039;Save Parameters&#039;&#039;, and save your spatial filter configuration under &amp;lt;tt&amp;gt;parms/fragments/spatial_filters/Identity&amp;lt;YourMontage&amp;gt;.prm&amp;lt;/tt&amp;gt;.&lt;br /&gt;
*Click &#039;&#039;Configure Save&#039;&#039; again, uncheck all parameter entries and close the window.&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
	<entry>
		<id>https://www.bci2000.org/mediawiki/index.php?title=Template:Tutorial_Spatial_Filter&amp;diff=3340</id>
		<title>Template:Tutorial Spatial Filter</title>
		<link rel="alternate" type="text/html" href="https://www.bci2000.org/mediawiki/index.php?title=Template:Tutorial_Spatial_Filter&amp;diff=3340"/>
		<updated>2008-02-13T19:58:43Z</updated>

		<summary type="html">&lt;p&gt;Jfialkoff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Spatial Filtering==&lt;br /&gt;
In the initial session you had a chance to gain some familiarity with the typical topography of a P300 signal.  Generally, and as was likely the case for your own results, the P300 response is uniform over a large number of electrodes which implies that the spatial response has most of its energy in the lower frequencies.  Mu responses, on the other hand, have a broader spatial response that includes more energy in mid and higher frequencies.  Thus, with these types of responses, we will typically apply a spatial high-pass filter prior to performing an analysis.  One example of such a filter is the common average reference (CAR) filter.  Because this filter removes energy from the lower frequencies, however, it is generally a bad choice for P300 signals.  For the purpose of this tutorial, we will show you how to configure BCI2000 so that no spatial filtering (i.e., identity spatial filtering) is applied to the signal.&lt;br /&gt;
&lt;br /&gt;
 As a result of the initial session, you have some idea of the signal topography, and spatial filtering that extracts the signal best.&lt;br /&gt;
In this tutorial, we use &#039;&#039;Common Average Reference (CAR)&#039;&#039; filtering because it gives generally good results, and has the advantage of being independent of the montage used. Also, this method is independent of subject specific parameters, so you will only need to configure it once for a given electrode montage.&lt;br /&gt;
===Creating an Identity Filter===&lt;br /&gt;
In its default configuration, BCI2000 requires the user to specify a spatial filter matrix.  While there are spatial filters that may be effective for improving a P300 signal, we typically will not want to use a CAR filter.  Instead we will specify a spatial filter that will not affect the signal (i.e., an identity spatial filter).  For 8, 16 and 64 channel recordings, you may load appropriate parameter fragments are available at &amp;lt;tt&amp;gt;parms/fragments/spatial_filters/IdentityN.prm&amp;lt;/tt&amp;gt; where &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt; is the number of electrodes (e.g., 8, 16, 64).  Applying one of these fragments will automatically set the appropriate values for the &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039; parameters.  To set the spatial filter labels, please review the steps below.  For other values of &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt;, you will need to configure the &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039; parameters as follows:&lt;br /&gt;
&lt;br /&gt;
*Go to the &#039;&#039;Source&#039;&#039; tab. In the &#039;&#039;TransmitChList&#039;&#039; parameter, enter a space-separated list of channel numbers beginning with 1:&amp;lt;br /&amp;gt;1 2 3 4 ... N&lt;br /&gt;
*Go to the &#039;&#039;Filtering&#039;&#039; tab. Click the &#039;&#039;Edit Matrix&#039;&#039; button associated with the &#039;&#039;SpatialFilter&#039;&#039; parameter.&lt;br /&gt;
**Set both &#039;&#039;Number of columns&#039;&#039; and &#039;&#039;Number of rows&#039;&#039; to &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt;, and click &#039;&#039;Set new matrix size&#039;&#039;.&lt;br /&gt;
**In the diagonal entries of the matrix, enter the value 1. &lt;br /&gt;
**In the non-diagonal entries, enter the value 0. &lt;br /&gt;
**Set the matrix labels.  This step is not mandatory. However, it makes subject-specific configuration easier to set up later on.&lt;br /&gt;
***Right-click the matrix, and choose &#039;&#039;Edit labels&#039;&#039; from the context menu.&lt;br /&gt;
***In the first column of each row (i.e., the row labels), enter the appropriate 10-20 electrode location corresponding to that channel.&lt;br /&gt;
**Close the matrix editor window.&lt;br /&gt;
*Click &#039;&#039;Configure Save&#039;&#039; in the configuration window, and check all parameter entries except &#039;&#039;TransmitChList&#039;&#039; and &#039;&#039;SpatialFilter&#039;&#039;; close the window.&lt;br /&gt;
*Click &#039;&#039;Save Parameters&#039;&#039;, and save your spatial filter configuration under &amp;lt;tt&amp;gt;parms/fragments/spatial_filters/Identity&amp;lt;YourMontage&amp;gt;.prm&amp;lt;/tt&amp;gt;.&lt;br /&gt;
*Click &#039;&#039;Configure Save&#039;&#039; again, uncheck all parameter entries and close the window.&lt;/div&gt;</summary>
		<author><name>Jfialkoff</name></author>
	</entry>
</feed>