Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
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
Prev Previous commit
Next Next commit
Update links to pass linkcheck
  • Loading branch information
bparks13 committed May 2, 2025
commit dec82a6a1aa31339e9f1f4aaf75a995addf89d5e
2 changes: 1 addition & 1 deletion source/Developer-Guide/Common-and-external-libraries.rst
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ The first step in creating a new common library is to create a repository from t

5. Click the green "Create repository from template" button.

On your local machine, create an "OEPlugins" directory within the same directory that contains your :code:`plugin-GUI` repository: Then, using the command line or the `GitHub Desktop <https://desktop.github.com/>`__ app, clone your the common library repository into this new folder. Your directory structure should look something like this:
On your local machine, create an "OEPlugins" directory within the same directory that contains your :code:`plugin-GUI` repository: Then, using the command line or the `GitHub Desktop <https://github.com/apps/desktop>`__ app, clone your the common library repository into this new folder. Your directory structure should look something like this:

.. code-block::

Expand Down
2 changes: 1 addition & 1 deletion source/Developer-Guide/Compiling-plugins.rst
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ Most Open Ephys GUI plugins work equally well on Windows, Linux, and Mac. Howeve
Obtaining the source code
--------------------------

The first step for compiling a pre-existing plugin is downloading the source code. If you're planning to make your own changes to the plugin, we recommend first forking the plugin's GitHub repository to your own account, then cloning the fork via the `command line <https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository#cloning-a-repository-using-the-command-linee>`__ or the `GitHub Desktop app <https://desktop.github.com/>`__. If you're not planning to make any changes to the plugin, you can clone the original repository or download the code as a **.zip** file.
The first step for compiling a pre-existing plugin is downloading the source code. If you're planning to make your own changes to the plugin, we recommend first forking the plugin's GitHub repository to your own account, then cloning the fork via the `command line <https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository#cloning-a-repository-using-the-command-line>`__ or the `GitHub Desktop app <https://github.com/apps/desktop/>`__. If you're not planning to make any changes to the plugin, you can clone the original repository or download the code as a **.zip** file.

All of the officially supported plugins assume that the plugin source code is contained within a separate directory *at the same level* as that of the host application (the :code:`plugin-GUI` GitHub repository). Before attempting to compile your plugin, make sure your directory structure looks something like this:

Expand Down
2 changes: 1 addition & 1 deletion source/Developer-Guide/Compiling-the-GUI.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
Compiling the GUI
=====================

If you'd like to build the GUI from source, you'll have to download the code to your local machine. We recommend first forking the `GUI's GitHub repository <https://github.com/open-ephys/plugin-GUI>`__ to your own account, then cloning the fork via the `command line <https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository#cloning-a-repository-using-the-command-line>`__ or the `GitHub Desktop app <https://desktop.github.com/>`__.
If you'd like to build the GUI from source, you'll have to download the code to your local machine. We recommend first forking the `GUI's GitHub repository <https://github.com/open-ephys/plugin-GUI>`__ to your own account, then cloning the fork via the `command line <https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository#cloning-a-repository-using-the-command-line>`__ or the `GitHub Desktop app <https://github.com/apps/desktop/>`__.


Windows
Expand Down
4 changes: 2 additions & 2 deletions source/Developer-Guide/Creating-a-new-plugin.rst
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ The first step in creating a new plugin is to create a repository from the appro

5. Click the green "Create repository from template" button.

On your local machine, create an "OEPlugins" directory within the same directory that contains your :code:`plugin-GUI` repository: Then, using the command line or the `GitHub Desktop <https://desktop.github.com/>`__ app, clone your the plugin repository into this new folder. Your directory structure should look something like this:
On your local machine, create an "OEPlugins" directory within the same directory that contains your :code:`plugin-GUI` repository: Then, using the command line or the `GitHub Desktop <https://github.com/apps/desktop/>`__ app, clone your the plugin repository into this new folder. Your directory structure should look something like this:

.. code-block::

Expand All @@ -58,7 +58,7 @@ Inside the "Source" folder of the plugin repository you just cloned, you'll find
**Processor** and **Visualizer** Plugins
-------------------------------------------

Most plugins will be "processors," meaning they implement the :code:`process()` method of `GenericProcessor.h <https://github.com/open-ephys/plugin-GUI/blob/master/Source/Processors/GenericProcessor/GenericProcessor.h>`__. This method is called repeatedly during the GUI's acquisition loop, so each plugin has a chance to respond to incoming data (or generate its own). If they include a canvas for displaying data, Processor plugins can also be Visualizer plugins.
Most plugins will be "processors," meaning they implement the :code:`process()` method of `GenericProcessor.h <https://github.com/open-ephys/plugin-GUI/blob/main/Source/Processors/GenericProcessor/GenericProcessor.h>`__. This method is called repeatedly during the GUI's acquisition loop, so each plugin has a chance to respond to incoming data (or generate its own). If they include a canvas for displaying data, Processor plugins can also be Visualizer plugins.

Processor and Visualizer plugins should edit the following lines in :code:`OpenEphysLib.cpp`:

Expand Down
2 changes: 1 addition & 1 deletion source/Developer-Guide/Modifying-the-host-application.rst
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ If you're planning to update the host application, or any of the plugins in the

1. Fork the `GUI's GitHub repository <https://github.com/open-ephys/plugin-GUI>`__ to your own account.

2. Clone the fork via the `command line <https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository#cloning-a-repository-using-the-command-line>`__ or the `GitHub Desktop app <https://desktop.github.com/>`__.
2. Clone the fork via the `command line <https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository#cloning-a-repository-using-the-command-line>`__ or the `GitHub Desktop app <https://github.com/apps/desktop/>`__.

3. Compile the GUI for your platform of choice according to the steps on :ref:`this page<compilingthegui>`.

Expand Down
2 changes: 1 addition & 1 deletion source/Developer-Guide/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ Before you :ref:`create a new plugin<creatinganewplugin>`, you'll need to have s
Updating the host application
------------------------------

If you'd like to make changes to the Open Ephys GUI main repository, first read through :ref:`this section<modifyingthehostapplication>` of the developer documentation. Then, take a look at our list of `active projects <https://github.com/open-ephys/plugin-GUI/projects>`__ to find out about the features we're planning to update in the near future. If you're interested in tackling one of these projects, or have other ideas for useful additions to the main application, don't hesistate to `open an issue on GitHub <https://github.com/open-ephys/plugin-GUI/issues>`__.
If you'd like to make changes to the Open Ephys GUI main repository, first read through :ref:`this section<modifyingthehostapplication>` of the developer documentation. Then, take a look at our list of `active projects <https://github.com/open-ephys/plugin-GUI/projects?query=is%3Aopen>`__ to find out about the features we're planning to update in the near future. If you're interested in tackling one of these projects, or have other ideas for useful additions to the main application, don't hesitate to `open an issue on GitHub <https://github.com/open-ephys/plugin-GUI/issues>`__.

Other projects
---------------
Expand Down
2 changes: 1 addition & 1 deletion source/FAQ/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,6 @@ If you want to contribute in a more substantial way, you could add funding for a

**Can I license the Open Ephys GUI for a commercial project?**

The GUI is released under a `GPL 3.0 license <https://github.com/open-ephys/plugin-GUI/blob/master/LICENSE>`__, which means that any derivative software must also be open source. However, if you'd like to use the GUI to acquire data from a closed-source device, this is both easy and encouraged! We would love for more companies to use the GUI, rather than choosing to build their own acquisition software from scratch.
The GUI is released under a `GPL 3.0 license <https://github.com/open-ephys/plugin-GUI/blob/main/LICENSE>`__, which means that any derivative software must also be open source. However, if you'd like to use the GUI to acquire data from a closed-source device, this is both easy and encouraged! We would love for more companies to use the GUI, rather than choosing to build their own acquisition software from scratch.

|
2 changes: 1 addition & 1 deletion source/Tutorials/How-To-Make-Your-Own-Plugin.rst
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ The first step in creating a plugin is to create a new code repository from a te
.. image:: ../_static/images/tutorials/makeyourownplugin/makeyourownplugin-02.png
:alt: Create TTLEventGenerator Repository

On your local machine, create an "OEPlugins" directory within the same directory that contains your :code:`plugin-GUI` repository. Then, using the `git <https://git-scm.com/>`__ command line interface or the `GitHub Desktop <https://desktop.github.com/>`__ app, clone the newly created plugin repository into this directory. Your directory structure should look something like this:
On your local machine, create an "OEPlugins" directory within the same directory that contains your :code:`plugin-GUI` repository. Then, using the `git <https://git-scm.com/>`__ command line interface or the `GitHub Desktop <https://github.com/apps/desktop/>`__ app, clone the newly created plugin repository into this directory. Your directory structure should look something like this:

.. code-block::

Expand Down
2 changes: 1 addition & 1 deletion source/Tutorials/Making-Your-Own-Visualizer-Plugin.rst
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ The first step in creating a plugin is to create a new code repository from a te
.. image:: ../_static/images/tutorials/makeyourownvisualizerplugin/visualizerplugin-02.png
:alt: Create rate-viewer Repository

On your local machine, create an "OEPlugins" directory within the same directory that contains your :code:`plugin-GUI` repository. Then, using the `git <https://git-scm.com/>`__ command-line interface or the `GitHub Desktop <https://desktop.github.com/>`__ app, clone the newly created plugin repository into this directory.
On your local machine, create an "OEPlugins" directory within the same directory that contains your :code:`plugin-GUI` repository. Then, using the `git <https://git-scm.com/>`__ command-line interface or the `GitHub Desktop <https://github.com/apps/desktop/>`__ app, clone the newly created plugin repository into this directory.

Your directory structure should look something like this:

Expand Down
6 changes: 3 additions & 3 deletions source/User-Manual/Hardware-requirements.rst
Original file line number Diff line number Diff line change
Expand Up @@ -41,11 +41,11 @@ Other hardware

These are the minimum requirements for getting up and running. You will likely need additional hardware for the full experiment (e.g. reward ports, mazes, commutators, light for optogenetic stimulation).

* **Acquisition board** (available from the `Open Ephys Store <https://open-ephys.org/acquisition-system/acquisition-board>`__)
* **Acquisition board** (available from the `Open Ephys Store <https://open-ephys.org/acquisition-system/oeps-9029>`__)

* **I/O boards** for interfacing with auxiliary analog and digital signals (available from the `Open Ephys Store <https://open-ephys.org/acquisition-system/io-board-pcb>`__)

* **Headstages and cables** (available as part of the `Open Ephys Starter Kit <https://open-ephys.org/acquisition-system/starter-kit>`__ or from `Intan Technologies <https://intantech.com/pricing.html>`__; there is also a low-profile headstage available from the `Open Ephys Store <https://open-ephys.org/acquisition-system/low-profile-spi-headstage-64ch>`__)
* **Headstages and cables** (available as part of the `Open Ephys Starter Kit <https://open-ephys.org/acquisition-system/starter-kit>`__ or from `Intan Technologies <https://intantech.com/pricing.html>`__; there is also a low-profile headstage available from the `Open Ephys Store <https://open-ephys.org/acquisition-system/oeps-6570-6571>`__)

* **Electrodes** - there is lots of flexibility here, as long as you have some way to interface between your electrodes and a compatible headstage. For tetrodes, we recommend the `shuttleDrive <https://open-ephys.org/drive-implant>`__.

Expand Down Expand Up @@ -81,7 +81,7 @@ Computer specs
Other hardware
###############

The following summarizes the additional hardware you'll need to buy to run Neuropixels experiments. OneBoxes, PXI basestations, headstages, and probes can be ordered from `neuropixels.org <https://neuropixels.org>`__. Other PXI components are available from NI.
The following summarizes the additional hardware you'll need to buy to run Neuropixels experiments. OneBoxes, PXI basestations, headstages, and probes can be ordered from `neuropixels.org <https://www.neuropixels.org>`__. Other PXI components are available from NI.

.. _onebox-hardware-requirements:

Expand Down
2 changes: 1 addition & 1 deletion source/User-Manual/Installing-the-GUI.rst
Original file line number Diff line number Diff line change
Expand Up @@ -125,5 +125,5 @@ Via .zip file
|

.. _this page: https://open-ephys.org/gui
.. _Visual Studio 2015, 2017, 2019, and 2022 redistributable package: https://docs.microsoft.com/en-US/cpp/windows/latest-supported-vc-redist?view=msvc-170
.. _Visual Studio 2015, 2017, 2019, and 2022 redistributable package: https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170

4 changes: 2 additions & 2 deletions source/User-Manual/Plugins/Arduino-Output.rst
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ Arduino Output
.. image:: ../../_static/images/plugins/arduinooutput/arduinooutput-01.png
:alt: Annotated Arduino Output settings interface

.. csv-table:: Allows events from within the GUI to control the state of digital output pins on an Arduino running `Firmata <hhttps://docs.arduino.cc/hacking/software/FirmataLibrary>`__. Provides a quick and easy way to translate information from software to hardware.
.. csv-table:: Allows events from within the GUI to control the state of digital output pins on an Arduino running `Firmata <https://docs.arduino.cc/retired/hacking/software/FirmataLibrary>`__. Provides a quick and easy way to translate information from software to hardware.
:widths: 18, 80

"*Plugin Type*", "Sink"
Expand Down Expand Up @@ -40,7 +40,7 @@ Not all Arduino-like devices will work with this plugin. Below is a list of ones
Configuring your Arduino
=========================

This plugin works with any Arduino running the `Firmata <https://docs.arduino.cc/hacking/software/FirmataLibrary>`__ firmware. To install this on your device, first make sure you've downloaded the `Arduino IDE <https://www.arduino.cc/en/software>`__ (version 1.0 or higher) for your platform of choice.
This plugin works with any Arduino running the `Firmata <https://docs.arduino.cc/retired/hacking/software/FirmataLibrary>`__ firmware. To install this on your device, first make sure you've downloaded the `Arduino IDE <https://www.arduino.cc/en/software>`__ (version 1.0 or higher) for your platform of choice.

Next, connect the Arduino to your computer and upload the sketch in `File > Examples > Firmata > StandardFirmata`. This will allow your computer to control the state of the Arduino from software.

Expand Down
2 changes: 1 addition & 1 deletion source/User-Manual/Plugins/CNN-Ripple.rst
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ CNN Ripple
"*Built in?*", "No"
"*Key Developers*", "Rodrigo Amaducci, Andrea Navas-Olive"
"*Source Code*", "https://github.com/open-ephys-plugins/cnn-ripple"
"*Publication DOI*", "`10.7554/eLife.77772 <http://dx.doi.org/10.7554/eLife.77772>`__"
"*Publication DOI*", "`10.7554/eLife.77772 <https://elifesciences.org/articles/77772>`__"

Installing and upgrading
###########################
Expand Down
2 changes: 1 addition & 1 deletion source/User-Manual/Plugins/Falcon-Output.rst
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ See the `Falcon <https://falcon-core.readthedocs.io/en/latest/>`__ documentation
Creating a custom client
#########################

The Falcon Output plugin uses ZeroMQ to stream data. Unlike the :ref:`zmqinterface` plugin, this plugin uses the `FlatBuffers <https://google.github.io/flatbuffers/>`__ serialization library to reduce latency. An example C++ client can be found in the :code:`clients` directory of the plugin repository.
The Falcon Output plugin uses ZeroMQ to stream data. Unlike the :ref:`zmqinterface` plugin, this plugin uses the `FlatBuffers <https://flatbuffers.dev/>`__ serialization library to reduce latency. An example C++ client can be found in the :code:`clients` directory of the plugin repository.

Falcon Input
#############
Expand Down
2 changes: 1 addition & 1 deletion source/User-Manual/Plugins/NIDAQmx.rst
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ Requirements

* (optional) An NI terminal block (e.g. BNC-2090A or BNC-2110) and compatible cables

* Installed NI-DAQmx drivers (available for download `here <https://www.ni.com/en-us/support/downloads/drivers/download.ni-daqmx.html#348669>`__; version 19.0+ recommended).
* Installed NI-DAQmx drivers (available for download `here <permanently to https://www.ni.com/en/support/downloads/drivers/download.ni-daq-mx.html>`__; version 19.0+ recommended).

* **For synchronization**: One digital input line shared between all data sources streaming data to the GUI (e.g., Open Ephys acquisition board, Neuropixels PXI basestation, other NI devices).

Expand Down
4 changes: 2 additions & 2 deletions source/User-Manual/Plugins/Neuropixels-PXI.rst
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ For chassis with a built-in Thunderbolt controller (e.g. PXIe-1083):

* One sufficiently long **Thunderbolt cable**

Ordered via `neuropixels.org <https://neuropixels.org>`__:
Ordered via `neuropixels.org <https://www.neuropixels.org/>`__:

* One or more **Neuropixels basestations** (can acquire data from 4 Neuropixels 1.0 probes per basestation)

Expand Down Expand Up @@ -94,7 +94,7 @@ This plugin can stream data from the following Neuropixels probe types:
Connecting to the PXI system
##############################

Before using this plugin, make sure you've followed all of the steps in the `Neuropixels User Manual <https://www.neuropixels.org/support>`__ to set up and configure your hardware. Prior to using your Neuropixels PXI basestation, you must install the Enclustra drivers (available for `Windows 7/8 <https://github.com/open-ephys-plugins/neuropixels-pxi/raw/main/Resources/Enclustra_Win7%268.zip>`__ and `Windows 10 <https://github.com/open-ephys-plugins/neuropixels-pxi/raw/main/Resources/Enclustra_Win10.zip>`__). See section 4.2.2 of the User Manual for installation instructions.
Before using this plugin, make sure you've followed all of the steps in the `Neuropixels User Manual <https://www.neuropixels.org/support>`__ to set up and configure your hardware. Prior to using your Neuropixels PXI basestation, you must install the Enclustra drivers (available for `Windows 7/8 <https://raw.githubusercontent.com/open-ephys-plugins/neuropixels-pxi/main/Resources/Enclustra_Win7%268.zip>`__ and `Windows 10 <https://raw.githubusercontent.com/open-ephys-plugins/neuropixels-pxi/main/Resources/Enclustra_Win10.zip>`__). See section 4.2.2 of the User Manual for installation instructions.

Once your PXI system is up and running, you can drag and drop the "Neuropix-PXI" module from the Processor List onto the Editor Viewport. The GUI will automatically connect to any available basestations in your PXI chassis with probes connected. If no basestations are found, the plugin can be run in simulation mode. If no probes are found, the plugin editor will display information about each basestation, and can be used to perform a firmware update (see :ref:`updating-basestation-firmware` below).

Expand Down
Loading