Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
79 changes: 79 additions & 0 deletions source/User-Manual/Plugins/Commutator-Control.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
.. _commutatorcontrol:
.. role:: raw-html-m2r(raw)
:format: html

##################
Commutator Control
##################

.. image:: ../../_static/images/plugins/commutatorcontrol/oecommutator.png
:alt: Annotated settings interface for the Commutator Control plugin

.. csv-table:: Prevents twist in the tether connecting a moving animal to a stationary `Open Ephys acquisition board Gen3 <https://open-ephys.org/acq-board>`__.
:widths: 18, 80

"*Plugin Type*", "Sink"
"*Platforms*", "Windows, Linux, macOS"
"*Built in?*", "No"
"*Key Developers*", "Brandon Parks, Aarón Cuevas López"
"*Source Code*", "https://github.com/open-ephys-plugins/oe-commutator-control"

.. tip:: For more in-depth documentation on the commutator hardware, please refer to the `Open Ephys Commutators docs site <https://open-ephys.github.io/commutator-docs/>`__.

Installing and upgrading
==========================

The Commutator Control plugin is not included by default in the Open Ephys GUI. To install, use
**ctrl-P** or **⌘P** to open the Plugin Installer, browse to "Commutator Control", and click the
"Install" button. After installation, *Commutator Control* will appear in the processor list on the
left side of the GUI's main window.

The Plugin Installer also allows you to upgrade to the latest version of this plugin, if it's
already installed. The plugin must be removed from the signal chain prior to upgrading.

Plugin configuration
====================

Serial port selector
####################

In the top-left corner of the commutator processor, there is a dropdown menu to select the COM port
that corresponds to your commutator. To determine which COM port corresponds to your commutator:

#. Unplug your commutator.

#. Click the dropdown. Note the COM ports that are shown in the dropdown.

#. Plug in your commutator.

#. Click the dropdown. The COM port that appears in step 4 but not in step 2 is the one that
corresponds to your commutator.

Stream selector
###############

In the bottom-left corner of the commutator process, there is a dropdown menu to select which IMU
stream you would like to use to calculate commutator rotations. The options provided by the dropdown
correspond to IMUs detected in the Acquisition Board processor.

Rotation axis selector
######################

In the top-right corner of the commutator processor, there is a dropdown menu to select the relevant
rotation axis for calculating commutator rotations.

The GUI software automatically pre-maps each headstage's orientation axes such that the +Z axis
aligns along the tether where it connects to the headstage, so you shouldn't need to change this
value. However, if you do need to change this value, there is an "override" button to allow you to
do that. For more information on the headstages' axes, look at the `Headstages
<https://open-ephys.github.io/acq-board-docs/Hardware-Guide/Headstages.html#channel-maps>`_ section
of the Acquisition Board docs.

Turn buttons
############

In the bottom-right corner of the commutator processor, there are arrow buttons for controlling the
commutator manually. Click the left arrow to rotate the commutator 0.1 revolutions. Click the right
arrow to rotate the commutator 0.1 revolutions in the other direction. Hold the left arrow to rotate
the commutator continuously. Hold the right arrow to rotate the commutator continuously in the other
direction.
6 changes: 3 additions & 3 deletions source/User-Manual/Plugins/Network-Events.rst
Original file line number Diff line number Diff line change
Expand Up @@ -46,16 +46,16 @@ The primary purpose of the Network Events module is to add TTL events to one or

:code:`TTL [Line=1-256] [State=0/1]` – Sends an **ON** (1) or **OFF** (0) TTL event on the specified TTL line.

:code:`TTL [Word=unsigned_int64_value]` – Sends TTL event with the states of the first 64 lines combined to form the TTL word. Each line represents a different bit in the given unsigned 64-bit integer. For more information on how TTL words work, refer to :ref:`undertanding-ttl-events`.
:code:`TTL [Word=unsigned_int64_value]` – Sends TTL event with the states of the first 64 lines combined to form the TTL word. Each line represents a different bit in the given unsigned 64-bit integer. For more information on how TTL words work, refer to :ref:`understanding-ttl-events`.

Other commands
---------------

The Network Events module can also respond to commands related to starting/stopping acquisition and recording. However, these commands are also available via the Open Ephys HTTP Server (added in GUI version 0.6.0). It's recommended to use the HTTP Server commands whenever possible, as these do not rely on a specific plugin.

:code:`StartAcquisition` – Starts data aquisition
:code:`StartAcquisition` – Starts data acquisition

:code:`StopAcquisition` – Stops data aquisition
:code:`StopAcquisition` – Stops data acquisition

:code:`StartRecord [RecordNode=record_node_id] [CreateNewDir=1] [RecDir=recording_directory_path] [PrependText=some_text] [AppendText=some_text]` – Starts recording of data

Expand Down
3 changes: 2 additions & 1 deletion source/User-Manual/Plugins/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ Officially supported Record Engines: :ref:`binaryformat`, :ref:`openephysformat`
File Sources
-------------

File Sources allow the File Reader to read data in different formats. These plugins do not appear in the processor list, but instead speicfy the file extensions that the File Reader can accept (e.g., :code:`.nwb` or :code:`.oebin`).
File Sources allow the File Reader to read data in different formats. These plugins do not appear in the processor list, but instead specify the file extensions that the File Reader can accept (e.g., :code:`.nwb` or :code:`.oebin`).

Officially supported Record Engines: :ref:`binaryformat`, :ref:`openephysformat`, :ref:`nwbdataformat`

Expand Down Expand Up @@ -131,6 +131,7 @@ To remove a plugin, simply click the "Uninstall" button. This will delete the pl
Bandpass-Filter
Channel-Map
Common-Average-Reference
Commutator-Control
CNN-Ripple
Crossing-Detector
Data-Snapshot
Expand Down
2 changes: 1 addition & 1 deletion source/User-Manual/Recording-data/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,7 @@ In order to align events and continuous data from different streams, these strea
If the streams were not synchronized online, they can be synchronized offline assuming all streams share at least one event line in common. See the :ref:`datasynchronization` tutorial for more information about synchronizing data streams.

.. _NumPy: https://numpy.org/
.. _Neurodata Without Borders: https://neurodatawithoutborders.github.io/
.. _Neurodata Without Borders: http://nwb.org/
.. _pynwb: https://pynwb.readthedocs.io/en/stable/

.. toctree::
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
269 changes: 269 additions & 0 deletions source/_static/images/plugins/commutatorcontrol/oecommutator.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.