Key Features

Rich repertoire of stimuli and design features support a wide variety of visual neuroscience experiments

As it has evolved over time, Maestro has offered a number of different stimulus platforms, both visual and non-visual. Of these, only the RMVideo display, the Chair target, and the PSGM remain available in Maestro 4.x.

    • RMVideo. This OpenGL application runs on a separate Linux workstation and relies on a fast, modern NVidia graphics adapter to present visual targets on a high-performance color CRT monitor: uniform spots and bars, random-dot patches, sinusoidal gratings and plaids, Gabor patches, as well as short movies or static images loaded from file. It currently supports refresh rates in the range of 75-120Hz. Higher refresh rates typically demand lower screen resolution. However, with a fast enough graphics card (e.g., the GeForce GTX 1060) and a DisplayPort 1.4 graphics cable, we were able to run RMVideo at 2560x1440 @ 144Hz.

    • XYScope. Single spots and a variety of random-dot patches may be presented on a large, vector oscilloscope with a fast-decay phosphor. The advantage of the XYScope over RMVideo is a programmable refresh rate that can go as high as 500Hz. Unfortunately, analog vector oscilloscopes are no longer available, and our lab has no remaining viable scopes. RMVideo became the primary visual stimulus platform in Maestro 3.x, and Maestro 4.x lacks hardware support for the XYScope.

    • Chair. The subject sits on a rotational turntable that can rotate +/-180 degrees about the rest position, which faces one of the video monitors. The turntable is typically used in studies of the vestibular ocular reflex. It is driven by a velocity-controlled servo; the velocity command signal is updated at 1KHz.

    • PSGM. The Pulse Stimulus Generator Module is a custom-designed digital device that controls a Grass stimulus generator, injecting a sequence of current pulses into the brain via an extracellular electrode. The PSGM offers the user considerable flexibility in defining the characteristics of the pulse sequence -- from a single unipolar pulse, to a biphasic pulse, to an entire train of unipolar or biphasic pulses. NOTE: While this module is still technically supported by the latest Maestro release, it was never used and the required custom digital device has not been built.

    • Optic-bench targets. Fiber-optic spots that were back-projected onto a translucent screen via a pair of X-Y mirror galvonometers (Fiber1, Fiber2); and stationary shuttered LED spots (REDLED1, REDLED2) that were projected onto the same screen. These targets fell out of use in the Maestro 2.x era and are no longer supported as of version 3.0.

Maestro has been designed from the start to provide as much flexibility as possible in designing experiments examining the smooth pursuit and vestibulo-ocular reflex (VOR) systems of the brain. Various capabilities have been added over the years to support new kinds of experimental protocols. Below are some of the program's major functional features:

    • Four operational modes. Experiments are designed and saved in Idle mode. Most experiments are constructed as sets of related trials that are presented in a randomized sequence in Trial mode. Typically, each individual trial is short in duration, and the animal is rewarded once at trial's end. Experiments that require a much longer presentation along with periodic rewards to maintain the animal's interest are run in Continuous mode; VOR studies are often run in this mode. Finally, Test & Calibration mode is available for testing and debugging installed hardware and the external rack equipment.

    • Different trial sequencing modes. Single-trial and ordered sequencing are used while designing and testing trials, while randomized sequencing is used when running the actual experiment. In addition, a special staircase sequencing mode is available to support threshold-finding experiments in human psychophysics.

    • Perturbing target trajectories in Trial mode. The trial definition table allows the user to set each participating target's on/off state, position, velocity and acceleration during each of up to 18 segments. In addition, you can modulate a target's trajectory with a defined perturbation waveform. A trial can include up to four different perturbations, and these perturbations can be applied to various components of target motion (eg: horizontal or vertical velocity, vector speed, vector direction).

    • Decision-oriented tasks. A number of specialized features have been added in Trial mode to support experiments in which the animal must make a choice. Among these is a "search task" feature, in which the animal must "find" a goal target among one or more "distractors" by fixating on that target for a minimum period of time. Finding the target earns the full reward, while finding one of the distractors earns a typically much smaller reward.

    • Variable-length rewards. Delivering a reward to the animal for a correctly performed task is fundamental to an experiment's success. Maestro supports a variable-length reward pulse, which ultimately drives the solenoid that delivers the liquid reward. Having control over the size of the reward is very useful when training the animal, and is essential for certain experiment designs, such as a forced two-choice task or the target search task.

    • Velocity stabilization. In some experiments it is useful to be able to stabilize the target image on the retina for periods of time as the eye moves. In Trial mode, the researcher can choose to velocity-stabilize any video target on a per-segment basis.

    • Receptive field characterization. Often the researcher would like to quickly assess the visual receptive field (RF) of a neural unit before proceeding with the actual experiment. Maestro offers several different approaches to measuring the RF. For example, in Continuous mode, one can use the "cursor-tracking" target to quickly wave a random-dot patch or sinusoidal grating target across the animal's field of view in different directions, providing a quick-and-dirty assessment of RF that can guide more quantitative measurements.

Record and monitor behavioral and neural responses during the experiment

Maestro can sample and record up to 16 different analog inputs at 1KHz during a typical experiment. A number of these inputs are dedicated to a particular signal in the experiment apparatus:

    • Horizontal gaze and vertical eye position

    • Horizontal head position and velocity

    • Horizontal and vertical eye velocity

    • Extracellular electrode voltage -- a.k.a., the "spike waveform" -- recorded at 25KHz for offline spike sorting

The other available analog inputs can be put to general-purpose use as needed. Eye and fixation target motion can be monitored at runtime in Maestro's Eye-Target Plot, and up to 10 analog signals can be displayed in the Data Trace Window.

In addition to recording analog data, Maestro can timestamp TTL pulses (on the pulse's rising edge) on any of 16 different digital inputs. Digital events that are typically recorded during an experiment include general-purpose marker pulses (which the program itself can generate on any of 12 different digital output channels), or the TTL output of a "window discriminator" that is used to capture the arrival times of spikes in the extracellular electrode recording. The timestamps are synchronized with the recorded analog data and have 10-microsecond resolution.

In late 2003 our laboratory purchased the first of several Plexon™ Multichannel Acquisition Processors. The Plexon gives us the ability to record the signals from an array of extracellular electrodes and from these signals isolate one or more neural "units" in real time. While Maestro operates independently of the Plexon, it does deliver some character data and synchronization pulses that are recorded by the Plexon so that analysis software can merge their independent data streams, either offline or while an experiment is in progress.

From the beginning we have used a magnetic phase coil system to record eye movements in the subject. However, Maestro 3.2.0 (Dec 2015) introduces an alternative -- the EyeLink 1000+ eye tracker from SR Research. This non-invasive approach uses a high-speed camera and real-time image processing hardware to track pupil position during an experiment. The EyeLink's "Host PC" is connected to the Maestro workstation over a dedicated Ethernet link, and raw pupil position samples are streamed over that connection at 1KHz in Maestro's Trial and Continuous modes. Pupil coordinates are converted to the same units expected when using the eye coil system, using adjustable calibration offset and gain factors for both horizontal and vertical eye position. Eye velocity is computed from the position data using a central-point difference method followed by a smoothing filter.

Flexible experiment design

Maestro offers two distinct kinds of experimental protocols, trials and stimulus runs. A typical experiment involves the presentation of a related set of trials in Trial mode, or a related set of stimulus runs in Continuous mode. Trial mode is by far the most used of the two operational modes, and trials are considerably more complex and versatile than stimulus runs. A trial can define the trajectories of up to 25 participating targets over as many as 18 different segments. Selected target trajectories may be modulated by perturbation waveforms, and the set of data channels that are recorded and/or displayed during trial runtime are specified in the trial's channel configuration.

Targets, perturbations, channel configurations, trials, and stimulus runs can be thought of as the "building blocks" for an experiment. Trials and stimulus runs are "dependent" objects in the sense that their definition relies upon one or more instances of the other three object classes. The main advantage of this building-block approach is reuse. For example, suppose a target is used in all 50 trials within a given trial set. We define the target once and attach it to each trial object. If we had to define the targets employed in each trial within that trial's definition, we'd have to define the same target 50 times!

The Maestro experiment document organizes these building blocks in a hierarchical tree with five major nodes: Trials, Stimulus Runs, Targets, Perturbations, and Channels. Related targets, trials, and stimulus runs are grouped into sets under the corresponding root node. A user can easily define many experiments in a single document, which can store more than 65000 objects. Switching to a different experiment is simply a matter of selecting the desired trial set or stimulus run set from a drop-down combo box in the Mode Control panel!

While it is relatively easy to define a typical experiment within Maestro's user interface, it can be cumbersome if your trials animate many targets over many segments. Furthermore, some users have needed to quickly define a set of trials while they're running an experiment -- in which case time is of the essence. For these situations, we've developed a Matlab M-function that supports script-based generation of a complete experiment document. It allows you to specify all aspects of an experiment except for stimulus runs, and saves the document in a plain-text file format that Maestro can import.

A compact but customizable user interface

Maestro presents to the user as a classic Windows XP-era application, with a single frame window, a traditional menu bar with pull-down menus, and a toolbar for oft-used menu commands. The contents of the current experiment document are displayed and edited in the client area, a split panel with the hierarchical document tree on the left-hand side and a tabbed window for displaying and editing individual document nodes on the right. A set of five docking panels organize widgets used to control and monitor an experiment in progress. Users customize the layout by choosing which docking panels are visible, their size and docking locations. For example, when defining targets and trials during an experiment's design phase, the user may close all of the docking panels and expand the frame window so that the document tree and the tabbed node editor are as large as possible. But when an experiment is running, the most important user interface elements are the Mode Control Panel, Eye-Target Plot, and Data Trace Display, all of which reside in docking panels that can be easily resized (or even "floated" as separate windows) to occupy much of the screen real estate.

Support for data analysis

Data recorded by Maestro during Trial or Continuous mode is streamed to a binary file as a series of 1-kilobyte records. Records contain compressed analog data, digital event data, or information about the experimental protocol presented when the data was collected. In addition, our laboratory's offline analysis program JMWork may append a number of different "action" records on the end of the data file to describe any analysis actions taken by the user within the context of that program. Thus, the effect of the action is attached to the raw data without altering the data itself. The next time the data file is loaded into JMWork, the actions can be automatically reproduced without user interaction.

The disadvantage of the custom binary file format is that simply reading back the data in the file becomes a significant coding task. Since researchers in our laboratory do most of their analysis in Matlab™, we maintain a utility -- the MEX function readcxdata -- which reads the contents of the data file into a Matlab structure. For those who would prefer to write their own code to read the data file, this guide includes a detailed description of the binary file format.

In addition to readcxdata, we maintain a number of other tools to assist in the online (during an ongoing experiment) or offline analysis of Maestro-recorded data. The aforementioned JMWork is a Java application primarily used to cut saccades from the behavioral data traces, perform spike sorting on the 25KHz spike waveform, or place markers in the recorded timeline. Explore the Data Analysis chapter for a more thorough discussion of the tools, which are also available for download from this site.