Skip to content

Commit

Permalink
Move hardware tutorial under user guide (#58)
Browse files Browse the repository at this point in the history
* Move hardware tutorial under user guide

- This change implements breakout tutorial only
- This provides scaffolding for other hardware tutorials

Co-authored-by: bparks13 <bap@open-ephys.org>
Co-authored-by: jonnew <jpn@open-ephys.org>
  • Loading branch information
3 people committed Sep 25, 2024
1 parent c505cdb commit 5e1dca5
Show file tree
Hide file tree
Showing 137 changed files with 1,509 additions and 14,846 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ git submodule update --recursive --remote
The following three commands are run remotely by remote GitHub Actions serve upon pushing to a branch. The branch will not be able to merge to main unless all three commands complete successfully without any errors. Confirm that they can complete successfully without errors locally before committing and pushing. Otherwise, the branch becomes cluttered with potentially several attempts to pass the link-check process. Run:

``` console
.\build.ps1 --logLevel Warning --warningsAsErrors
.\build.ps1 --logLevel Suggestion --warningsAsErrors
dotnet DocLinkChecker -v -f .github/workflows/DocLinkChecker.config
```

Expand Down
12 changes: 0 additions & 12 deletions articles/devices/bno055-neuropixelsv1e.md

This file was deleted.

12 changes: 0 additions & 12 deletions articles/devices/bno055-neuropixelsv2e.md

This file was deleted.

12 changes: 0 additions & 12 deletions articles/devices/bno055.md

This file was deleted.

12 changes: 0 additions & 12 deletions articles/devices/breakoutanalogio.md

This file was deleted.

12 changes: 0 additions & 12 deletions articles/devices/breakoutdigitalio.md

This file was deleted.

16 changes: 0 additions & 16 deletions articles/devices/electricalstimulator.md

This file was deleted.

12 changes: 0 additions & 12 deletions articles/devices/heartbeat.md

This file was deleted.

12 changes: 0 additions & 12 deletions articles/devices/memorymonitor.md

This file was deleted.

12 changes: 0 additions & 12 deletions articles/devices/neuropixelsv1e.md

This file was deleted.

12 changes: 0 additions & 12 deletions articles/devices/neuropixelsv2e.md

This file was deleted.

12 changes: 0 additions & 12 deletions articles/devices/neuropixelsv2ebeta.md

This file was deleted.

16 changes: 0 additions & 16 deletions articles/devices/opticalstimulator.md

This file was deleted.

12 changes: 0 additions & 12 deletions articles/devices/rhd2164.md

This file was deleted.

13 changes: 0 additions & 13 deletions articles/devices/ts4231.md

This file was deleted.

2 changes: 1 addition & 1 deletion articles/getting-started/bonsai-usage.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
uid: BonsaiUsage
uid: bonsai-usage
title: Bonsai Usage
---

Expand Down
8 changes: 0 additions & 8 deletions articles/getting-started/getting-started.md

This file was deleted.

15 changes: 15 additions & 0 deletions articles/getting-started/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
uid: getting-started
title: Getting Started
---

Welcome to the user guide! The next few pages are dedicated to users who are unfamiliar with ONIX
and Bonsai, and will teach them what ONIX is, how to download and install Bonsai, open a new file,
place operators (and understand what an operator is), reorder a workflow, run a workflow, and
finally visualize data.

For those who are already familiar with Bonsai and are looking for a particular device or headstage
to learn more about the hardware and how to utilize it, the table of contents on the left contains
entries for each available device and headstage. Choose a page to learn more about the hardware and
view a fully complete workflow that can be copied directly into Bonsai to aid in quickly setting up
and collecting data from a system.
2 changes: 1 addition & 1 deletion articles/getting-started/initialize-oni-context.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
uid: InitializeOniContext
uid: initialize-onicontext
title: Initialize the ONI Context
---

Expand Down
40 changes: 26 additions & 14 deletions articles/getting-started/install-configure-bonsai.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
uid: BonsaiInstallationAndConfiguration
uid: install-configure-bonsai
title: Bonsai Installation and Configuration
---

Expand Down Expand Up @@ -29,6 +29,30 @@ The following packages required to run the workflows in this documentation are:
> [!TIP]
> Additional packages will allow you to extend the functionality of ONIX hardware beyond the scope of this documentation. There are packages that allow ONIX be combined with [visual psychophysics](https://bonsai-rx.org/docs/tutorials/vision-psychophysics.html), [markerless pose estimation](https://bonsai-rx.org/sleap/), [HARP behavioral devices](https://harp-tech.org/), and much more.
### OpenEphys.Onix1

To install the `OpenEphys.Onix1` package [open the package manager](#open-bonsai-package-manager) and:

1. Click the `Browse` tab.
1. Set `Package source` to `All` or `NuGet`.
1. Search `OpenEphys.Onix1`.
1. Click `Install`.
1. Click `I Accept` when the license agreement window appears.

![Bonsai OpenEphys.Onix1 Install Screenshot](../../images/bonsai-install-OpenEphys.Onix1.webp){width=650px}

### OpenEphys.Onix1.Design

To install the `OpenEphys.Onix1.Design` package [open the package manager](#open-bonsai-package-manager) and:

1. Click the `Browse` tab.
1. Set `Package source` to `All` or `NuGet`.
1. Search `OpenEphys.Onix1.Design`.
1. Click `Install`.
1. Click `I Accept` when the license agreement window appears.

![Bonsai OpenEphys.Onix1.Design Install Screenshot](../../images/bonsai-install-OpenEphys.Onix1.Design.webp){width=650px}

### Bonsai.StarterPack

To install the `Bonsai.StarterPack` package [open the package manager](#open-bonsai-package-manager) and:
Expand All @@ -51,18 +75,6 @@ To install the `OpenEphys.Commutator` package [open the package manager](#open-b

![Bonsai OpenEphys.Commutator Install Screenshot](../../images/bonsai-install-OpenEphys.Commutator.webp){width=650px}

### OpenEphys.Onix1.Design

To install the `OpenEphys.Onix1.Design` package [open the package manager](#open-bonsai-package-manager) and:

1. Click the `Browse` tab.
1. Set `Package source` to `All` or `NuGet`.
1. Search `OpenEphys.Onix1.Design`.
1. Click `Install`.
1. Click `I Accept` when the license agreement window appears.

![Bonsai OpenEphys.Onix1.Design Install Screenshot](../../images/bonsai-install-OpenEphys.Onix1.Design.webp){width=650px}

## Update Packages in Bonsai

It is good practice to periodically check for package updates. To do this, [open the package manager](#open-bonsai-package-manager) and:
Expand Down Expand Up @@ -90,4 +102,4 @@ Sometimes it is helpful to uninstall packages. [Open the package manager](#open-

## Next Steps

Now that Bonsai has been installed and configured, it is time to start constructing a workflow to capture data from your ONIX system. The following sections give a high-level understanding of how Bonsai is organized, and some of the ONIX-specific concepts that will be useful for learning how to work with the operators. If you are familiar with Bonsai, you might want to skip to the <xref:headstages-index> section.
Now that Bonsai has been installed and configured, it is time to start constructing a workflow to capture data from your ONIX system. The following sections give a high-level understanding of how Bonsai is organized, and some of the ONIX-specific concepts that will be useful for learning how to work with the operators. If you are familiar with Bonsai, you might want to skip to the <xref:tutorials> section.
6 changes: 3 additions & 3 deletions articles/getting-started/next-steps.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
---
uid: NextSteps
uid: next-steps
title: Next Steps
---

Continue browsing <xref:GettingStarted> and check out specific operators on the left to see how to configure each operator, as well as some ways to visualize data. Each page will have a fully functional workflow that can be copied into Bonsai to provide an easy starting point for generating data.
Continue browsing <xref:getting-started> and check out specific operators on the left to see how to configure each operator, as well as some ways to visualize data. Each page will have a fully functional workflow that can be copied into Bonsai to provide an easy starting point for generating data.

For more technical information on each operator, head to the <xref:OpenEphys.Onix1> to see a more developer-focused view of each operator.

More complex and in-depth tutorials for placing multiple operators and moving towards generating data in an experimental setting can be found in the <xref:TutorialsLandingPage>.
More complex and in-depth tutorials for placing multiple operators and moving towards generating data in an experimental setting can be found in the <xref:tutorials>.
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
uid: OperatorTypes
uid: operator-types
title: Operator Types
---

Expand Down
6 changes: 4 additions & 2 deletions articles/getting-started/property-categories.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
---
uid: PropertyCategories
uid: property-categories
title: Property Categories
---

There are specific categories of properties that define when an operator's properties can be modified.

`Configuration` properties only have effect when a workflow is started and are used to initialize the hardware state. If they are changed while a workflow is running they will have no effect.

`Acquisition` properties can be manipulated when the workflow is running and will have an immediate effect on hardware. For instance stimulus waveform parameters can be modified in real-time and sent to the device multiple times while the workflow is running to shape stimulation patterns.
`Acquisition` properties can be manipulated when the workflow is running and will have an immediate effect on hardware. For instance stimulus waveform parameters can be modified in real-time and sent to the device multiple times while the workflow is running to shape stimulation patterns.

`Devices` properties refer to the individual devices available within a particular aggregate operator. Aggregate operators include <xref:OpenEphys.Onix1.ConfigureHeadstage64>, <xref:OpenEphys.Onix1.ConfigureBreakoutBoard>, and more. Explore other available options under the [aggregate configuration operators](xref:configure) page.
4 changes: 2 additions & 2 deletions articles/getting-started/start-workflow.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
uid: StartAWorkflow
title: Start a Workflow
uid: start-workflow
title: Start Workflow
---

Once all operators have been placed and linked correctly, and all **Configuration** properties have been set, it is now possible to run a workflow. Note that some aspects of Bonsai are only available in specific contexts; for instance, the GUIs mentioned above can only be opened when a workflow is not running. Once a workflow is running, these GUIs are not accessible, but visualizers for certain operators can be opened to view the streaming data.
Expand Down
4 changes: 2 additions & 2 deletions articles/getting-started/tips-tricks.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
---
uid: TipsAndTricks
uid: tips-and-tricks
title: Tips and Tricks
---

## Bonsai Operator Actions

When running a workflow in Bonsai, operators are evaluated from left to right, and top to bottom. In a workflow, each node represents an operator defining an sequence of values. Nodes can be connected to other nodes, from left to right. Each connection indicates that the downstream operator on the right subscribes, or "listens", to the notifications of the upstream operator on the left. The table below provides some useful information to effectively use the workflow editor. It provides information on how to add connections between operators, remove connections, reordering operators horizontally and vertically, as well as some shortcuts to aid in placing operators more efficiently.

Aside from determining the order of exceution, the order of operators within a workflow determines which editing actions can be taken. In the table below, the "first" operator is always the one that is on the left side, or on the bottom for multiple rows of operators. If the first operator clicked is on the right side, or on the top, these actions will not work.
Aside from determining the order of execution, the order of operators within a workflow determines which editing actions can be taken. In the table below, the "first" operator is always the one that is on the left side, or on the bottom for multiple rows of operators. If the first operator clicked is on the right side, or on the top, these actions will not work.

| Goal | Clicks / Keystrokes | Description |
| ---- | ------------------- | ----------- |
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
uid: VisualizingData
title: Visualizing Data
uid: visualize-data
title: Visualize Data
---

To visualize data from any `*Data` operator, typically the variable that needs to be visualized must first be output from the operator. To do this, right-click on any `*Data` operator and select the first option; this will be something similar to `Output (OpenEphys.Onix1.*DataFrame)`. From the drop-down list, select the corresponding data variable to be visualized. Doing so will create a new operator in the workflow.
Expand Down
Loading

0 comments on commit 5e1dca5

Please sign in to comment.