Table of Contents

ConfigureBreakoutBoard

sink Operator

Configures an ONIX breakout board.

The ONIX breakout board is a general purpose interface for neural data acquisition. It provides the following features on the headstage:

  • 2x general purpose input ports for headstage, miniscopes, etc.
  • 12x configurable ±10V analog input/output channels sampled/updated at 100 kHz per channel.
  • 8x digital inputs
  • 8x digital outputs
  • Hardware time-stamped buttons for manual event logging
  • Indicator LEDs with dark mode for light-sensitive applications.

ConfigureBreakoutBoard Workflow

Inputs & Outputs

Configure all devices in the device group.

This will schedule configuration actions to be applied by a StartAcquisition instance prior to data acquisition.

A sequence of ContextTask instances that hold configuration actions.

right-arrow
representation of a sink operator
right-arrow

The original sequence modified by adding additional configuration actions required to configure all the devices in the device group.

Properties

Configuration

These are properties of the aggregate operator:

Property Type Description
Name string

Gets or sets a unique device group name.

A human-readable identifier that is used as a prefix for the DeviceName of each device in the the group.

Devices

AnalogIO

AnalogIO is a ConfigureAnalogIO operator encapsulated by the ConfigureBreakoutBoard operator with the following properties:

Property Type Description
Direction0 AnalogIODirection

Gets or sets the direction of channel 0.

Input = 0
Output = 1
Direction1 AnalogIODirection

Gets or sets the direction of channel 1.

Input = 0
Output = 1
Direction2 AnalogIODirection

Gets or sets the direction of channel 2.

Input = 0
Output = 1
Direction3 AnalogIODirection

Gets or sets the direction of channel 3.

Input = 0
Output = 1
Direction4 AnalogIODirection

Gets or sets the direction of channel 4.

Input = 0
Output = 1
Direction5 AnalogIODirection

Gets or sets the direction of channel 5.

Input = 0
Output = 1
Direction6 AnalogIODirection

Gets or sets the direction of channel 6.

Input = 0
Output = 1
Direction7 AnalogIODirection

Gets or sets the direction of channel 7.

Input = 0
Output = 1
Direction8 AnalogIODirection

Gets or sets the direction of channel 8.

Input = 0
Output = 1
Direction9 AnalogIODirection

Gets or sets the direction of channel 9.

Input = 0
Output = 1
Direction10 AnalogIODirection

Gets or sets the direction of channel 10.

Input = 0
Output = 1
Direction11 AnalogIODirection

Gets or sets the direction of channel 11.

Input = 0
Output = 1
Enable bool

Gets or sets the device enable state.

If set to true, AnalogInput will produce data. If set to false, AnalogInput will not produce data.

InputRange0 AnalogIOVoltageRange

Gets or sets the input voltage range of channel 0.

TenVolts = 0
TwoPointFiveVolts = 1
FiveVolts = 2
InputRange1 AnalogIOVoltageRange

Gets or sets the input voltage range of channel 1.

TenVolts = 0
TwoPointFiveVolts = 1
FiveVolts = 2
InputRange2 AnalogIOVoltageRange

Gets or sets the input voltage range of channel 2.

TenVolts = 0
TwoPointFiveVolts = 1
FiveVolts = 2
InputRange3 AnalogIOVoltageRange

Gets or sets the input voltage range of channel 3.

TenVolts = 0
TwoPointFiveVolts = 1
FiveVolts = 2
InputRange4 AnalogIOVoltageRange

Gets or sets the input voltage range of channel 4.

TenVolts = 0
TwoPointFiveVolts = 1
FiveVolts = 2
InputRange5 AnalogIOVoltageRange

Gets or sets the input voltage range of channel 5.

TenVolts = 0
TwoPointFiveVolts = 1
FiveVolts = 2
InputRange6 AnalogIOVoltageRange

Gets or sets the input voltage range of channel 6.

TenVolts = 0
TwoPointFiveVolts = 1
FiveVolts = 2
InputRange7 AnalogIOVoltageRange

Gets or sets the input voltage range of channel 7.

TenVolts = 0
TwoPointFiveVolts = 1
FiveVolts = 2
InputRange8 AnalogIOVoltageRange

Gets or sets the input voltage range of channel 8.

TenVolts = 0
TwoPointFiveVolts = 1
FiveVolts = 2
InputRange9 AnalogIOVoltageRange

Gets or sets the input voltage range of channel 9.

TenVolts = 0
TwoPointFiveVolts = 1
FiveVolts = 2
InputRange10 AnalogIOVoltageRange

Gets or sets the input voltage range of channel 10.

TenVolts = 0
TwoPointFiveVolts = 1
FiveVolts = 2
InputRange11 AnalogIOVoltageRange

Gets or sets the input voltage range of channel 11.

TenVolts = 0
TwoPointFiveVolts = 1
FiveVolts = 2

ClockOutput

ClockOutput is a ConfigureOutputClock operator encapsulated by the ConfigureBreakoutBoard operator with the following properties:

Property Type Description
ClockGate bool

Gets or sets a value specifying if the output clock is active.

If set to true, the clock output will be connected to the clock output line. If set to false, the clock output line will be held low. This value can be toggled in real time to gate acquisition of external hardware.

Delay double

Gets or sets the delay following acquisition commencement before the clock becomes active in seconds.

Valid values are between 0 and and 3600 seconds. Setting to a value greater than 0 can be useful for ensuring data sources that are driven by the output clock start significantly after ONIX has begun acquisition for the purposes of ordering acquisition start times.

The delay must be an integer multiple of the Acquisition Clock frequency. Therefore, the true delay cycle will be set to a value that is as close as possible to the requested setting while respecting this constraint. The value as actualized in hardware is reported by OutputClockData.

DutyCycle double

Gets or sets the output clock duty cycle in percent.

Valid values are between 10% and 90%. The output clock high and low times must each be an integer multiple of the Acquisition Clock frequency. Therefore, the true duty cycle will be set to a value that is as close as possible to the requested setting while respecting this constraint. The value as actualized in hardware is reported by OutputClockData.

Frequency double

Gets or sets the output clock frequency in Hz.

Valid values are between 0.1 Hz and 10 MHz. The output clock high and low times must each be an integer multiple of the Acquisition Clock frequency. Therefore, the true clock frequency will be set to a value that is as close as possible to the requested setting while respecting this constraint. The value as actualized in hardware is reported by OutputClockData.

DigitalIO

DigitalIO is a ConfigureDigitalIO operator encapsulated by the ConfigureBreakoutBoard operator with the following properties:

Property Type Description
Enable bool

Gets or sets the device enable state.

If set to true, DigitalInput will produce data. If set to false, DigitalInput will not produce data.

HarpInput

HarpInput is a ConfigureHarpSyncInput operator encapsulated by the ConfigureBreakoutBoard operator with the following properties:

Property Type Description
Enable bool

Gets or sets a value specifying whether the Harp sync input device is enabled.

Source HarpSyncSource

Gets or sets a value specifying the physical Harp clock input source.

In standard ONIX breakout boards, the Harp mini-jack connector on the side of the breakout is configured to receive Harp clock synchronization signals.

In early access versions of the ONIX breakout board, the Harp mini-jack connector is configured for output only, so a special adapter is needed to transmit the Harp clock synchronization signal to the breakout clock input zero.

Breakout = 0
ClockAdapter = 1

Heartbeat

Heartbeat is a ConfigureHeartbeat operator encapsulated by the ConfigureBreakoutBoard operator with the following properties:

Property Type Description
BeatsPerSecond uint

Gets or sets the rate at which beats are produced in Hz.

If set to true, a HeartbeatData instance that is linked to this configuration will produce data. If set to false, it will not produce data.

Enable bool

Gets or sets the device enable state.

If set to true, a HeartbeatData instance that is linked to this configuration will produce data. If set to false, it will not produce data.

MemoryMonitor

MemoryMonitor is a ConfigureMemoryMonitor operator encapsulated by the ConfigureBreakoutBoard operator with the following properties:

Property Type Description
Enable bool

Gets or sets the device enable state.

If set to true, MemoryMonitorData will produce data. If set to false, MemoryMonitorData will not produce data.

SamplesPerSecond uint

Gets or sets the frequency at which memory use is recorded in Hz.