Probe Viewer#

Annotated Probe Viewer editor
Visualizes the signal from a linear probe as a heatmap (time x channels). Can be configured to show RMS signal, spike rate, or power in different frequency bands.#

Plugin Type

Sink

Platforms

Windows, Linux, macOS

Built in?

No

Key Developers

Josh Siegle, K. Michael Fox, Anjal Doshi

Source Code

open-ephys-plugins/probe-viewer

Installing and upgrading#

The Probe Viewer plugin is not included by default in the Open Ephys GUI. To install, use ctrl-P or ⌘P to access the Plugin Installer, browse to the “Phase Calculator” plugin, and click the “Install” button.

The Plugin Installer also allows you to upgrade to the latest version of this plugin, if it’s already installed.

Plugin configuration#

The Probe Viewer visualizer interface (accessed by clicking the “tab” or “window” buttons at the top right of the plugin editor) looks like this:

Annotated Probe Viewer visualizer

To change the subset of channels to be viewed, drag the edges of the bounding box in the channel browser interface on the left-hand side of the visualizer. The currently displayed channels are shown as circular icons in the zoomed-in view to the right.

Render modes#

  1. RMS Signal - Color corresponds to the overall amplitude of the signal on each channel (computed as root-mean-squared signal amplitude within each pixel window). The minimum and maximum of the color scale can be adjusted.

  2. Freq. Band Power - Color corresponds to the spectral power at a given center frequency. For example, this can be used to visualize theta-band (8 Hz) power across depth.

  3. Spike Rate - Color corresponds to the number of threshold crossings per unit time within each pixel window. The threshold voltage can be adjusted.

Channel ordering#

The Probe Viewer will automatically sort channels by depth, if this information is available. Currently, the Neuropixels PXI plugin is the only upstream plugin that tags channels with depth information. Therefore, if you are using Neuropixels probes, the Probe Viewer will first sort channels by shank, and then by depth within each shank. Note that since channels not mapped to contiguous electrodes on Neuropixels 2.0 probes, this will result in the channels appearing “out of order” in the Probe Viewer display.

Anatomy overlay#

As of plugin version 0.3.1, the Probe Viewer can display information about the brain regions that a Neuropixels probe passes through via integration with external software. An example of this is shown in the image below:

Probe Viewer with anatomy overlay

Using this feature requires that a Neuropixels PXI plugin is upstream of the Probe Viewer.

This information can be sent to the Probe Viewer in at least two ways:

Via Pinpoint#

Pinpoint is open-source software for planning Neuropixels insertions. In order to send anatomical information from Pinpoint to Open Ephys, you need to use the Desktop version (not the web-based version).

Pinpoint API settings
  1. Add at least one probe to the Pinpoint scene

  2. Press Escape to open the settings menu

  3. Navigate to the “API” tab

  4. Make sure the “OpenEphys API” section points to the correct endpoint. This should be http://localhost:37497 if you’re running Open Ephys and Pinpoint on the same machine; otherwise, replace localhost with the IP address of the Open Ephys machine.

  5. Click the checkbox to connect to the Open Ephys GUI

  6. If the Probe Viewer processor ID (Viewer Processor #) is not found automatically, use the drop-down menu to select the correct one.

  7. Use the interface on the right to associate probes in the Pinpoint scene to probes in the Open Ephys GUI.

After that, the anatomical information in the Probe Viewer should update every time the associated probe in moved in Pinpoint.

See this tutorial for alternative instructions on how to send anatomical information from Pinpoint to Open Ephys.

Via Neuropixels Trajectory Explorer#

Neuropixels Trajectory Explorer is insertion-planning software that can be run from within MATLAB or as a standalone application.

Connecting NTE to recording software

From the “Connect” menu, select “Recording” then “OpenEphys”.

Assuming the Probe Viewer has a Neuropixels PXI plugin upstream, the anatomical overlay should update every time the probe in moved in Neuropixels Trajectory explorer.

See this tutorial for additional information on how to send anatomical information from Neuropixels Trajectory Explorer to Open Ephys.

Via config messages#

The Probe Viewer accepts config messages in the following format:

<probe_name>;<start1>-<end1>,<region_ID_1>,<hex_color_1>;<start2>-<end2>,...
  • probe_name : the name of a Neuropixels probe in the Neuropix-PXI plugin (with no spaces)

  • start1: the index of the first electrode in region 1

  • end1: the index of the last electrode in region 1

  • region_ID_1: the abbreviated name of region 1 (e.g. “VISp”)

  • hex_color_1: the 6-character hex color ID for region 1

For example, to update a probe named Probe A` in a Probe Viewer with processor ID 105, you can send the following JSON string using the Python requests library:

r = requests.put(
    "http://localhost:37497/api/processors/105/config",
    json={"text" : "ProbeA;0-69,PT,FF909F;70-97,PVT,FF909F;98-161,-,000000;162-173,-,000000,174-185,SF,90CBED;..."})

Note that the start and end indices refer to electrodes, not channels. The Probe Viewer will automatically display the anatomical information for the electrodes that are selected. For example, for a Neuropixels 1.0 probe, you can send region info for up to 960 electrodes, but only 384 will be displayed at a time.