Table of Contents

Namespace Harp.Behavior

Harp Behavior

This is a multi-purpose device tailored to behavioral experiments. It allows control of pokes, RGB LEDs, LEDs, cameras, servo motors and a quadrature counter.

HarpBehavior

Key Features

  • Enable pulse and configure duration for each output
  • Support for PWM configuration (frequency up to 10KHz and duty cycle)
  • LED current (up to 100mA) and maximum nominal current configuration
  • Up to 2 cameras controlling (DO0 and DO1)
  • Up to 2 servo motors (DO2 and DO3)
  • Up to 1 quadrature counter (Port2) (Note: Port0 and Port1 can also act as quadrature counters but this is a request feature)

Connectivity

  • 1x clock sync input (CLKIN) [stereo jack]
  • 1x USB (for computer) [USB type B]
  • 1x 12V supply [barrel connector jack]
  • 3x poke connectors (LED+12V valve) (Poke0, Poke1, Poke2) [RJ45]
  • 2x LEDs outputs (5V) (LED0, LED1) [screw terminal]
  • 2x RGB LEDs outputs (5V) (RGB0, RGB1) [flick lock 3x male pins]
  • 4x general purpose digital outputs with PWM (5V) (DO0-DO3) [screw terminal]
  • 1x ADC (5V) [screw terminal]

Interface

The interface with the Harp Behavior can be done through Bonsai or a dedicated GUI (Graphical User Interface).

In order to use this GUI, there are some software that needs to be installed:

1 - Install the drivers.

2 - Install the runtime.

3 - Reboot the computer.

4 - Install the GUI.

Licensing

Each subdirectory will contain a license or, possibly, a set of licenses if it involves both hardware and software.

Behavior
whoAmI1216
firmwareVersion3.2
hardwareTargets1.1

Registers

name address type length access description range interfaceType
DigitalInputState 32 U8 Event Reflects the state of DI digital lines of each Port DigitalInputs
OutputSet 34 U16 Write Set the specified digital output lines. DigitalOutputs
OutputClear 35 U16 Write Clear the specified digital output lines DigitalOutputs
OutputToggle 36 U16 Write Toggle the specified digital output lines DigitalOutputs
OutputState 37 U16 Write Write the state of all digital output lines DigitalOutputs
PortDIOSet 38 U8 Write Set the specified port DIO lines PortDigitalIOS
PortDIOClear 39 U8 Write Clear the specified port DIO lines PortDigitalIOS
PortDIOToggle 40 U8 Write Toggle the specified port DIO lines PortDigitalIOS
PortDIOState 41 U8 Write Write the state of all port DIO lines PortDigitalIOS
PortDIODirection 42 U8 Write Specifies which of the port DIO lines are outputs PortDigitalIOS
PortDIOStateEvent 43 U8 Event Specifies the state of the port DIO lines on a line change PortDigitalIOS
AnalogData 44 S16 3 Event Voltage at the ADC input and encoder value on Port 2 AnalogDataPayload
OutputPulseEnable 45 U16 Write Enables the pulse function for the specified output lines DigitalOutputs
PulseDOPort0 46 U16 Write Specifies the duration of the output pulse in milliseconds. [1:]
PulseDOPort1 47 U16 Write Specifies the duration of the output pulse in milliseconds. [1:]
PulseDOPort2 48 U16 Write Specifies the duration of the output pulse in milliseconds. [1:]
PulseSupplyPort0 49 U16 Write Specifies the duration of the output pulse in milliseconds. [1:]
PulseSupplyPort1 50 U16 Write Specifies the duration of the output pulse in milliseconds. [1:]
PulseSupplyPort2 51 U16 Write Specifies the duration of the output pulse in milliseconds. [1:]
PulseLed0 52 U16 Write Specifies the duration of the output pulse in milliseconds. [1:]
PulseLed1 53 U16 Write Specifies the duration of the output pulse in milliseconds. [1:]
PulseRgb0 54 U16 Write Specifies the duration of the output pulse in milliseconds. [1:]
PulseRgb1 55 U16 Write Specifies the duration of the output pulse in milliseconds. [1:]
PulseDO0 56 U16 Write Specifies the duration of the output pulse in milliseconds. [1:]
PulseDO1 57 U16 Write Specifies the duration of the output pulse in milliseconds. [1:]
PulseDO2 58 U16 Write Specifies the duration of the output pulse in milliseconds. [1:]
PulseDO3 59 U16 Write Specifies the duration of the output pulse in milliseconds. [1:]
PwmFrequencyDO0 60 U16 Write Specifies the frequency of the PWM at DO0. [1:]
PwmFrequencyDO1 61 U16 Write Specifies the frequency of the PWM at DO1. [1:]
PwmFrequencyDO2 62 U16 Write Specifies the frequency of the PWM at DO2. [1:]
PwmFrequencyDO3 63 U16 Write Specifies the frequency of the PWM at DO3. [1:]
PwmDutyCycleDO0 64 U8 Write Specifies the duty cycle of the PWM at DO0. [1:99]
PwmDutyCycleDO1 65 U8 Write Specifies the duty cycle of the PWM at DO1. [1:99]
PwmDutyCycleDO2 66 U8 Write Specifies the duty cycle of the PWM at DO2. [1:99]
PwmDutyCycleDO3 67 U8 Write Specifies the duty cycle of the PWM at DO3. [1:99]
PwmStart 68 U8 Write Starts the PWM on the selected output lines. PwmOutputs
PwmStop 69 U8 Write Stops the PWM on the selected output lines. PwmOutputs
RgbAll 70 U8 6 Write Specifies the state of all RGB LED channels. RgbAllPayload
Rgb0 71 U8 3 Write Specifies the state of the RGB0 LED channels. RgbPayload
Rgb1 72 U8 3 Write Specifies the state of the RGB1 LED channels. RgbPayload
Led0Current 73 U8 Write Specifies the configuration of current to drive LED 0. [2:100]
Led1Current 74 U8 Write Specifies the configuration of current to drive LED 1. [2:100]
Led0MaxCurrent 75 U8 Write Specifies the configuration of current to drive LED 0. [5:100]
Led1MaxCurrent 76 U8 Write Specifies the configuration of current to drive LED 1. [5:100]
EventEnable 77 U8 Write Specifies the active events in the device. Events
StartCameras 78 U8 Write Specifies the camera outputs to enable in the device. CameraOutputs
StopCameras 79 U8 Write Specifies the camera outputs to disable in the device. CameraOutputs
EnableServos 80 U8 Write Specifies the servo outputs to enable in the device. ServoOutputs
DisableServos 81 U8 Write Specifies the servo outputs to disable in the device. ServoOutputs
EnableEncoders 82 U8 Write Specifies the port quadrature counters to enable in the device. EncoderInputs
EncoderMode 83 U8 Write Configures the operation mode of the quadrature encoders. EncoderModeConfig
Camera0Frame 92 U8 Event Specifies that a frame was acquired on camera 0. FrameAcquired
Camera0Frequency 93 U16 Write Specifies the trigger frequency for camera 0. [1:600]
Camera1Frame 94 U8 Event Specifies that a frame was acquired on camera 1. FrameAcquired
Camera1Frequency 95 U16 Write Specifies the trigger frequency for camera 1. [1:600]
ServoMotor2Period 100 U16 Write Specifies the period of the servo motor in DO2, in microseconds. [2:65534]
ServoMotor2Pulse 101 U16 Write Specifies the pulse of the servo motor in DO2, in microseconds. [6:65530]
ServoMotor3Period 102 U16 Write Specifies the period of the servo motor in DO3, in microseconds. [2:65534]
ServoMotor3Pulse 103 U16 Write Specifies the pulse of the servo motor in DO3, in microseconds. [6:65530]
EncoderReset 108 U8 Write Reset the counter of the specified encoders to zero. EncoderInputs
EnableSerialTimestamp 110 U8 Write Enables the timestamp for serial TX.
MimicPort0IR 111 U8 Write Specifies the digital output to mimic the Port 0 IR state. MimicOutput
MimicPort1IR 112 U8 Write Specifies the digital output to mimic the Port 1 IR state. MimicOutput
MimicPort2IR 113 U8 Write Specifies the digital output to mimic the Port 2 IR state. MimicOutput
MimicPort0Valve 117 U8 Write Specifies the digital output to mimic the Port 0 valve state. MimicOutput
MimicPort1Valve 118 U8 Write Specifies the digital output to mimic the Port 1 valve state. MimicOutput
MimicPort2Valve 119 U8 Write Specifies the digital output to mimic the Port 2 valve state. MimicOutput
PokeInputFilter 122 U8 Write Specifies the low pass filter time value for poke inputs, in ms.

Classes

AnalogData

Represents a register that voltage at the ADC input and encoder value on Port 2.

AsyncDevice

Represents an asynchronous API to configure and interface with Behavior devices.

Camera0Frame

Represents a register that specifies that a frame was acquired on camera 0.

Camera0Frequency

Represents a register that specifies the trigger frequency for camera 0.

Camera1Frame

Represents a register that specifies that a frame was acquired on camera 1.

Camera1Frequency

Represents a register that specifies the trigger frequency for camera 1.

CreateAnalogDataPayload

Represents an operator that creates a message payload that voltage at the ADC input and encoder value on Port 2.

CreateCamera0FramePayload

Represents an operator that creates a message payload that specifies that a frame was acquired on camera 0.

CreateCamera0FrequencyPayload

Represents an operator that creates a message payload that specifies the trigger frequency for camera 0.

CreateCamera1FramePayload

Represents an operator that creates a message payload that specifies that a frame was acquired on camera 1.

CreateCamera1FrequencyPayload

Represents an operator that creates a message payload that specifies the trigger frequency for camera 1.

CreateDigitalInputStatePayload

Represents an operator that creates a message payload that reflects the state of DI digital lines of each Port.

CreateDisableServosPayload

Represents an operator that creates a message payload that specifies the servo outputs to disable in the device.

CreateEnableEncodersPayload

Represents an operator that creates a message payload that specifies the port quadrature counters to enable in the device.

CreateEnableSerialTimestampPayload

Represents an operator that creates a message payload that enables the timestamp for serial TX.

CreateEnableServosPayload

Represents an operator that creates a message payload that specifies the servo outputs to enable in the device.

CreateEncoderModePayload

Represents an operator that creates a message payload that configures the operation mode of the quadrature encoders.

CreateEncoderResetPayload

Represents an operator that creates a message payload that reset the counter of the specified encoders to zero.

CreateEventEnablePayload

Represents an operator that creates a message payload that specifies the active events in the device.

CreateLed0CurrentPayload

Represents an operator that creates a message payload that specifies the configuration of current to drive LED 0.

CreateLed0MaxCurrentPayload

Represents an operator that creates a message payload that specifies the configuration of current to drive LED 0.

CreateLed1CurrentPayload

Represents an operator that creates a message payload that specifies the configuration of current to drive LED 1.

CreateLed1MaxCurrentPayload

Represents an operator that creates a message payload that specifies the configuration of current to drive LED 1.

CreateMessage

Represents an operator which creates standard message payloads for the Behavior device.

CreateMimicPort0IRPayload

Represents an operator that creates a message payload that specifies the digital output to mimic the Port 0 IR state.

CreateMimicPort0ValvePayload

Represents an operator that creates a message payload that specifies the digital output to mimic the Port 0 valve state.

CreateMimicPort1IRPayload

Represents an operator that creates a message payload that specifies the digital output to mimic the Port 1 IR state.

CreateMimicPort1ValvePayload

Represents an operator that creates a message payload that specifies the digital output to mimic the Port 1 valve state.

CreateMimicPort2IRPayload

Represents an operator that creates a message payload that specifies the digital output to mimic the Port 2 IR state.

CreateMimicPort2ValvePayload

Represents an operator that creates a message payload that specifies the digital output to mimic the Port 2 valve state.

CreateOutputClearPayload

Represents an operator that creates a message payload that clear the specified digital output lines.

CreateOutputPulseEnablePayload

Represents an operator that creates a message payload that enables the pulse function for the specified output lines.

CreateOutputSetPayload

Represents an operator that creates a message payload that set the specified digital output lines.

CreateOutputStatePayload

Represents an operator that creates a message payload that write the state of all digital output lines.

CreateOutputTogglePayload

Represents an operator that creates a message payload that toggle the specified digital output lines.

CreatePokeInputFilterPayload

Represents an operator that creates a message payload that specifies the low pass filter time value for poke inputs, in ms.

CreatePortDIOClearPayload

Represents an operator that creates a message payload that clear the specified port DIO lines.

CreatePortDIODirectionPayload

Represents an operator that creates a message payload that specifies which of the port DIO lines are outputs.

CreatePortDIOSetPayload

Represents an operator that creates a message payload that set the specified port DIO lines.

CreatePortDIOStateEventPayload

Represents an operator that creates a message payload that specifies the state of the port DIO lines on a line change.

CreatePortDIOStatePayload

Represents an operator that creates a message payload that write the state of all port DIO lines.

CreatePortDIOTogglePayload

Represents an operator that creates a message payload that toggle the specified port DIO lines.

CreatePulseDO0Payload

Represents an operator that creates a message payload that specifies the duration of the output pulse in milliseconds.

CreatePulseDO1Payload

Represents an operator that creates a message payload that specifies the duration of the output pulse in milliseconds.

CreatePulseDO2Payload

Represents an operator that creates a message payload that specifies the duration of the output pulse in milliseconds.

CreatePulseDO3Payload

Represents an operator that creates a message payload that specifies the duration of the output pulse in milliseconds.

CreatePulseDOPort0Payload

Represents an operator that creates a message payload that specifies the duration of the output pulse in milliseconds.

CreatePulseDOPort1Payload

Represents an operator that creates a message payload that specifies the duration of the output pulse in milliseconds.

CreatePulseDOPort2Payload

Represents an operator that creates a message payload that specifies the duration of the output pulse in milliseconds.

CreatePulseLed0Payload

Represents an operator that creates a message payload that specifies the duration of the output pulse in milliseconds.

CreatePulseLed1Payload

Represents an operator that creates a message payload that specifies the duration of the output pulse in milliseconds.

CreatePulseRgb0Payload

Represents an operator that creates a message payload that specifies the duration of the output pulse in milliseconds.

CreatePulseRgb1Payload

Represents an operator that creates a message payload that specifies the duration of the output pulse in milliseconds.

CreatePulseSupplyPort0Payload

Represents an operator that creates a message payload that specifies the duration of the output pulse in milliseconds.

CreatePulseSupplyPort1Payload

Represents an operator that creates a message payload that specifies the duration of the output pulse in milliseconds.

CreatePulseSupplyPort2Payload

Represents an operator that creates a message payload that specifies the duration of the output pulse in milliseconds.

CreatePwmDutyCycleDO0Payload

Represents an operator that creates a message payload that specifies the duty cycle of the PWM at DO0.

CreatePwmDutyCycleDO1Payload

Represents an operator that creates a message payload that specifies the duty cycle of the PWM at DO1.

CreatePwmDutyCycleDO2Payload

Represents an operator that creates a message payload that specifies the duty cycle of the PWM at DO2.

CreatePwmDutyCycleDO3Payload

Represents an operator that creates a message payload that specifies the duty cycle of the PWM at DO3.

CreatePwmFrequencyDO0Payload

Represents an operator that creates a message payload that specifies the frequency of the PWM at DO0.

CreatePwmFrequencyDO1Payload

Represents an operator that creates a message payload that specifies the frequency of the PWM at DO1.

CreatePwmFrequencyDO2Payload

Represents an operator that creates a message payload that specifies the frequency of the PWM at DO2.

CreatePwmFrequencyDO3Payload

Represents an operator that creates a message payload that specifies the frequency of the PWM at DO3.

CreatePwmStartPayload

Represents an operator that creates a message payload that starts the PWM on the selected output lines.

CreatePwmStopPayload

Represents an operator that creates a message payload that stops the PWM on the selected output lines.

CreateRgb0Payload

Represents an operator that creates a message payload that specifies the state of the RGB0 LED channels.

CreateRgb1Payload

Represents an operator that creates a message payload that specifies the state of the RGB1 LED channels.

CreateRgbAllPayload

Represents an operator that creates a message payload that specifies the state of all RGB LED channels.

CreateServoMotor2PeriodPayload

Represents an operator that creates a message payload that specifies the period of the servo motor in DO2, in microseconds.

CreateServoMotor2PulsePayload

Represents an operator that creates a message payload that specifies the pulse of the servo motor in DO2, in microseconds.

CreateServoMotor3PeriodPayload

Represents an operator that creates a message payload that specifies the period of the servo motor in DO3, in microseconds.

CreateServoMotor3PulsePayload

Represents an operator that creates a message payload that specifies the pulse of the servo motor in DO3, in microseconds.

CreateStartCamerasPayload

Represents an operator that creates a message payload that specifies the camera outputs to enable in the device.

CreateStopCamerasPayload

Represents an operator that creates a message payload that specifies the camera outputs to disable in the device.

CreateTimestampedAnalogDataPayload

Represents an operator that creates a timestamped message payload that voltage at the ADC input and encoder value on Port 2.

CreateTimestampedCamera0FramePayload

Represents an operator that creates a timestamped message payload that specifies that a frame was acquired on camera 0.

CreateTimestampedCamera0FrequencyPayload

Represents an operator that creates a timestamped message payload that specifies the trigger frequency for camera 0.

CreateTimestampedCamera1FramePayload

Represents an operator that creates a timestamped message payload that specifies that a frame was acquired on camera 1.

CreateTimestampedCamera1FrequencyPayload

Represents an operator that creates a timestamped message payload that specifies the trigger frequency for camera 1.

CreateTimestampedDigitalInputStatePayload

Represents an operator that creates a timestamped message payload that reflects the state of DI digital lines of each Port.

CreateTimestampedDisableServosPayload

Represents an operator that creates a timestamped message payload that specifies the servo outputs to disable in the device.

CreateTimestampedEnableEncodersPayload

Represents an operator that creates a timestamped message payload that specifies the port quadrature counters to enable in the device.

CreateTimestampedEnableSerialTimestampPayload

Represents an operator that creates a timestamped message payload that enables the timestamp for serial TX.

CreateTimestampedEnableServosPayload

Represents an operator that creates a timestamped message payload that specifies the servo outputs to enable in the device.

CreateTimestampedEncoderModePayload

Represents an operator that creates a timestamped message payload that configures the operation mode of the quadrature encoders.

CreateTimestampedEncoderResetPayload

Represents an operator that creates a timestamped message payload that reset the counter of the specified encoders to zero.

CreateTimestampedEventEnablePayload

Represents an operator that creates a timestamped message payload that specifies the active events in the device.

CreateTimestampedLed0CurrentPayload

Represents an operator that creates a timestamped message payload that specifies the configuration of current to drive LED 0.

CreateTimestampedLed0MaxCurrentPayload

Represents an operator that creates a timestamped message payload that specifies the configuration of current to drive LED 0.

CreateTimestampedLed1CurrentPayload

Represents an operator that creates a timestamped message payload that specifies the configuration of current to drive LED 1.

CreateTimestampedLed1MaxCurrentPayload

Represents an operator that creates a timestamped message payload that specifies the configuration of current to drive LED 1.

CreateTimestampedMimicPort0IRPayload

Represents an operator that creates a timestamped message payload that specifies the digital output to mimic the Port 0 IR state.

CreateTimestampedMimicPort0ValvePayload

Represents an operator that creates a timestamped message payload that specifies the digital output to mimic the Port 0 valve state.

CreateTimestampedMimicPort1IRPayload

Represents an operator that creates a timestamped message payload that specifies the digital output to mimic the Port 1 IR state.

CreateTimestampedMimicPort1ValvePayload

Represents an operator that creates a timestamped message payload that specifies the digital output to mimic the Port 1 valve state.

CreateTimestampedMimicPort2IRPayload

Represents an operator that creates a timestamped message payload that specifies the digital output to mimic the Port 2 IR state.

CreateTimestampedMimicPort2ValvePayload

Represents an operator that creates a timestamped message payload that specifies the digital output to mimic the Port 2 valve state.

CreateTimestampedOutputClearPayload

Represents an operator that creates a timestamped message payload that clear the specified digital output lines.

CreateTimestampedOutputPulseEnablePayload

Represents an operator that creates a timestamped message payload that enables the pulse function for the specified output lines.

CreateTimestampedOutputSetPayload

Represents an operator that creates a timestamped message payload that set the specified digital output lines.

CreateTimestampedOutputStatePayload

Represents an operator that creates a timestamped message payload that write the state of all digital output lines.

CreateTimestampedOutputTogglePayload

Represents an operator that creates a timestamped message payload that toggle the specified digital output lines.

CreateTimestampedPokeInputFilterPayload

Represents an operator that creates a timestamped message payload that specifies the low pass filter time value for poke inputs, in ms.

CreateTimestampedPortDIOClearPayload

Represents an operator that creates a timestamped message payload that clear the specified port DIO lines.

CreateTimestampedPortDIODirectionPayload

Represents an operator that creates a timestamped message payload that specifies which of the port DIO lines are outputs.

CreateTimestampedPortDIOSetPayload

Represents an operator that creates a timestamped message payload that set the specified port DIO lines.

CreateTimestampedPortDIOStateEventPayload

Represents an operator that creates a timestamped message payload that specifies the state of the port DIO lines on a line change.

CreateTimestampedPortDIOStatePayload

Represents an operator that creates a timestamped message payload that write the state of all port DIO lines.

CreateTimestampedPortDIOTogglePayload

Represents an operator that creates a timestamped message payload that toggle the specified port DIO lines.

CreateTimestampedPulseDO0Payload

Represents an operator that creates a timestamped message payload that specifies the duration of the output pulse in milliseconds.

CreateTimestampedPulseDO1Payload

Represents an operator that creates a timestamped message payload that specifies the duration of the output pulse in milliseconds.

CreateTimestampedPulseDO2Payload

Represents an operator that creates a timestamped message payload that specifies the duration of the output pulse in milliseconds.

CreateTimestampedPulseDO3Payload

Represents an operator that creates a timestamped message payload that specifies the duration of the output pulse in milliseconds.

CreateTimestampedPulseDOPort0Payload

Represents an operator that creates a timestamped message payload that specifies the duration of the output pulse in milliseconds.

CreateTimestampedPulseDOPort1Payload

Represents an operator that creates a timestamped message payload that specifies the duration of the output pulse in milliseconds.

CreateTimestampedPulseDOPort2Payload

Represents an operator that creates a timestamped message payload that specifies the duration of the output pulse in milliseconds.

CreateTimestampedPulseLed0Payload

Represents an operator that creates a timestamped message payload that specifies the duration of the output pulse in milliseconds.

CreateTimestampedPulseLed1Payload

Represents an operator that creates a timestamped message payload that specifies the duration of the output pulse in milliseconds.

CreateTimestampedPulseRgb0Payload

Represents an operator that creates a timestamped message payload that specifies the duration of the output pulse in milliseconds.

CreateTimestampedPulseRgb1Payload

Represents an operator that creates a timestamped message payload that specifies the duration of the output pulse in milliseconds.

CreateTimestampedPulseSupplyPort0Payload

Represents an operator that creates a timestamped message payload that specifies the duration of the output pulse in milliseconds.

CreateTimestampedPulseSupplyPort1Payload

Represents an operator that creates a timestamped message payload that specifies the duration of the output pulse in milliseconds.

CreateTimestampedPulseSupplyPort2Payload

Represents an operator that creates a timestamped message payload that specifies the duration of the output pulse in milliseconds.

CreateTimestampedPwmDutyCycleDO0Payload

Represents an operator that creates a timestamped message payload that specifies the duty cycle of the PWM at DO0.

CreateTimestampedPwmDutyCycleDO1Payload

Represents an operator that creates a timestamped message payload that specifies the duty cycle of the PWM at DO1.

CreateTimestampedPwmDutyCycleDO2Payload

Represents an operator that creates a timestamped message payload that specifies the duty cycle of the PWM at DO2.

CreateTimestampedPwmDutyCycleDO3Payload

Represents an operator that creates a timestamped message payload that specifies the duty cycle of the PWM at DO3.

CreateTimestampedPwmFrequencyDO0Payload

Represents an operator that creates a timestamped message payload that specifies the frequency of the PWM at DO0.

CreateTimestampedPwmFrequencyDO1Payload

Represents an operator that creates a timestamped message payload that specifies the frequency of the PWM at DO1.

CreateTimestampedPwmFrequencyDO2Payload

Represents an operator that creates a timestamped message payload that specifies the frequency of the PWM at DO2.

CreateTimestampedPwmFrequencyDO3Payload

Represents an operator that creates a timestamped message payload that specifies the frequency of the PWM at DO3.

CreateTimestampedPwmStartPayload

Represents an operator that creates a timestamped message payload that starts the PWM on the selected output lines.

CreateTimestampedPwmStopPayload

Represents an operator that creates a timestamped message payload that stops the PWM on the selected output lines.

CreateTimestampedRgb0Payload

Represents an operator that creates a timestamped message payload that specifies the state of the RGB0 LED channels.

CreateTimestampedRgb1Payload

Represents an operator that creates a timestamped message payload that specifies the state of the RGB1 LED channels.

CreateTimestampedRgbAllPayload

Represents an operator that creates a timestamped message payload that specifies the state of all RGB LED channels.

CreateTimestampedServoMotor2PeriodPayload

Represents an operator that creates a timestamped message payload that specifies the period of the servo motor in DO2, in microseconds.

CreateTimestampedServoMotor2PulsePayload

Represents an operator that creates a timestamped message payload that specifies the pulse of the servo motor in DO2, in microseconds.

CreateTimestampedServoMotor3PeriodPayload

Represents an operator that creates a timestamped message payload that specifies the period of the servo motor in DO3, in microseconds.

CreateTimestampedServoMotor3PulsePayload

Represents an operator that creates a timestamped message payload that specifies the pulse of the servo motor in DO3, in microseconds.

CreateTimestampedStartCamerasPayload

Represents an operator that creates a timestamped message payload that specifies the camera outputs to enable in the device.

CreateTimestampedStopCamerasPayload

Represents an operator that creates a timestamped message payload that specifies the camera outputs to disable in the device.

Device

Represents an observable source of messages from the Harp device connected at the specified serial port.

DigitalInputState

Represents a register that reflects the state of DI digital lines of each Port.

DisableServos

Represents a register that specifies the servo outputs to disable in the device.

EnableEncoders

Represents a register that specifies the port quadrature counters to enable in the device.

EnableSerialTimestamp

Represents a register that enables the timestamp for serial TX.

EnableServos

Represents a register that specifies the servo outputs to enable in the device.

EncoderMode

Represents a register that configures the operation mode of the quadrature encoders.

EncoderReset

Represents a register that reset the counter of the specified encoders to zero.

EventEnable

Represents a register that specifies the active events in the device.

FilterRegister

Represents an operator that filters register-specific messages reported by the Harp.Behavior device.

Format

Represents an operator which formats a sequence of values as specific Behavior register messages.

GroupByRegister

Represents an operator that groups the sequence of Harp.Behavior" messages by register type.

Led0Current

Represents a register that specifies the configuration of current to drive LED 0.

Led0MaxCurrent

Represents a register that specifies the configuration of current to drive LED 0.

Led1Current

Represents a register that specifies the configuration of current to drive LED 1.

Led1MaxCurrent

Represents a register that specifies the configuration of current to drive LED 1.

MimicPort0IR

Represents a register that specifies the digital output to mimic the Port 0 IR state.

MimicPort0Valve

Represents a register that specifies the digital output to mimic the Port 0 valve state.

MimicPort1IR

Represents a register that specifies the digital output to mimic the Port 1 IR state.

MimicPort1Valve

Represents a register that specifies the digital output to mimic the Port 1 valve state.

MimicPort2IR

Represents a register that specifies the digital output to mimic the Port 2 IR state.

MimicPort2Valve

Represents a register that specifies the digital output to mimic the Port 2 valve state.

OutputClear

Represents a register that clear the specified digital output lines.

OutputPulseEnable

Represents a register that enables the pulse function for the specified output lines.

OutputSet

Represents a register that set the specified digital output lines.

OutputState

Represents a register that write the state of all digital output lines.

OutputToggle

Represents a register that toggle the specified digital output lines.

Parse

Represents an operator which filters and selects specific messages reported by the Behavior device.

PokeInputFilter

Represents a register that specifies the low pass filter time value for poke inputs, in ms.

PortDIOClear

Represents a register that clear the specified port DIO lines.

PortDIODirection

Represents a register that specifies which of the port DIO lines are outputs.

PortDIOSet

Represents a register that set the specified port DIO lines.

PortDIOState

Represents a register that write the state of all port DIO lines.

PortDIOStateEvent

Represents a register that specifies the state of the port DIO lines on a line change.

PortDIOToggle

Represents a register that toggle the specified port DIO lines.

PulseDO0

Represents a register that specifies the duration of the output pulse in milliseconds.

PulseDO1

Represents a register that specifies the duration of the output pulse in milliseconds.

PulseDO2

Represents a register that specifies the duration of the output pulse in milliseconds.

PulseDO3

Represents a register that specifies the duration of the output pulse in milliseconds.

PulseDOPort0

Represents a register that specifies the duration of the output pulse in milliseconds.

PulseDOPort1

Represents a register that specifies the duration of the output pulse in milliseconds.

PulseDOPort2

Represents a register that specifies the duration of the output pulse in milliseconds.

PulseLed0

Represents a register that specifies the duration of the output pulse in milliseconds.

PulseLed1

Represents a register that specifies the duration of the output pulse in milliseconds.

PulseRgb0

Represents a register that specifies the duration of the output pulse in milliseconds.

PulseRgb1

Represents a register that specifies the duration of the output pulse in milliseconds.

PulseSupplyPort0

Represents a register that specifies the duration of the output pulse in milliseconds.

PulseSupplyPort1

Represents a register that specifies the duration of the output pulse in milliseconds.

PulseSupplyPort2

Represents a register that specifies the duration of the output pulse in milliseconds.

PwmDutyCycleDO0

Represents a register that specifies the duty cycle of the PWM at DO0.

PwmDutyCycleDO1

Represents a register that specifies the duty cycle of the PWM at DO1.

PwmDutyCycleDO2

Represents a register that specifies the duty cycle of the PWM at DO2.

PwmDutyCycleDO3

Represents a register that specifies the duty cycle of the PWM at DO3.

PwmFrequencyDO0

Represents a register that specifies the frequency of the PWM at DO0.

PwmFrequencyDO1

Represents a register that specifies the frequency of the PWM at DO1.

PwmFrequencyDO2

Represents a register that specifies the frequency of the PWM at DO2.

PwmFrequencyDO3

Represents a register that specifies the frequency of the PWM at DO3.

PwmStart

Represents a register that starts the PWM on the selected output lines.

PwmStop

Represents a register that stops the PWM on the selected output lines.

Rgb0

Represents a register that specifies the state of the RGB0 LED channels.

Rgb1

Represents a register that specifies the state of the RGB1 LED channels.

RgbAll

Represents a register that specifies the state of all RGB LED channels.

ServoMotor2Period

Represents a register that specifies the period of the servo motor in DO2, in microseconds.

ServoMotor2Pulse

Represents a register that specifies the pulse of the servo motor in DO2, in microseconds.

ServoMotor3Period

Represents a register that specifies the period of the servo motor in DO3, in microseconds.

ServoMotor3Pulse

Represents a register that specifies the pulse of the servo motor in DO3, in microseconds.

StartCameras

Represents a register that specifies the camera outputs to enable in the device.

StopCameras

Represents a register that specifies the camera outputs to disable in the device.

TimestampedAnalogData

Provides methods for manipulating timestamped messages from the AnalogData register.

TimestampedCamera0Frame

Provides methods for manipulating timestamped messages from the Camera0Frame register.

TimestampedCamera0Frequency

Provides methods for manipulating timestamped messages from the Camera0Frequency register.

TimestampedCamera1Frame

Provides methods for manipulating timestamped messages from the Camera1Frame register.

TimestampedCamera1Frequency

Provides methods for manipulating timestamped messages from the Camera1Frequency register.

TimestampedDigitalInputState

Provides methods for manipulating timestamped messages from the DigitalInputState register.

TimestampedDisableServos

Provides methods for manipulating timestamped messages from the DisableServos register.

TimestampedEnableEncoders

Provides methods for manipulating timestamped messages from the EnableEncoders register.

TimestampedEnableSerialTimestamp

Provides methods for manipulating timestamped messages from the EnableSerialTimestamp register.

TimestampedEnableServos

Provides methods for manipulating timestamped messages from the EnableServos register.

TimestampedEncoderMode

Provides methods for manipulating timestamped messages from the EncoderMode register.

TimestampedEncoderReset

Provides methods for manipulating timestamped messages from the EncoderReset register.

TimestampedEventEnable

Provides methods for manipulating timestamped messages from the EventEnable register.

TimestampedLed0Current

Provides methods for manipulating timestamped messages from the Led0Current register.

TimestampedLed0MaxCurrent

Provides methods for manipulating timestamped messages from the Led0MaxCurrent register.

TimestampedLed1Current

Provides methods for manipulating timestamped messages from the Led1Current register.

TimestampedLed1MaxCurrent

Provides methods for manipulating timestamped messages from the Led1MaxCurrent register.

TimestampedMimicPort0IR

Provides methods for manipulating timestamped messages from the MimicPort0IR register.

TimestampedMimicPort0Valve

Provides methods for manipulating timestamped messages from the MimicPort0Valve register.

TimestampedMimicPort1IR

Provides methods for manipulating timestamped messages from the MimicPort1IR register.

TimestampedMimicPort1Valve

Provides methods for manipulating timestamped messages from the MimicPort1Valve register.

TimestampedMimicPort2IR

Provides methods for manipulating timestamped messages from the MimicPort2IR register.

TimestampedMimicPort2Valve

Provides methods for manipulating timestamped messages from the MimicPort2Valve register.

TimestampedOutputClear

Provides methods for manipulating timestamped messages from the OutputClear register.

TimestampedOutputPulseEnable

Provides methods for manipulating timestamped messages from the OutputPulseEnable register.

TimestampedOutputSet

Provides methods for manipulating timestamped messages from the OutputSet register.

TimestampedOutputState

Provides methods for manipulating timestamped messages from the OutputState register.

TimestampedOutputToggle

Provides methods for manipulating timestamped messages from the OutputToggle register.

TimestampedPokeInputFilter

Provides methods for manipulating timestamped messages from the PokeInputFilter register.

TimestampedPortDIOClear

Provides methods for manipulating timestamped messages from the PortDIOClear register.

TimestampedPortDIODirection

Provides methods for manipulating timestamped messages from the PortDIODirection register.

TimestampedPortDIOSet

Provides methods for manipulating timestamped messages from the PortDIOSet register.

TimestampedPortDIOState

Provides methods for manipulating timestamped messages from the PortDIOState register.

TimestampedPortDIOStateEvent

Provides methods for manipulating timestamped messages from the PortDIOStateEvent register.

TimestampedPortDIOToggle

Provides methods for manipulating timestamped messages from the PortDIOToggle register.

TimestampedPulseDO0

Provides methods for manipulating timestamped messages from the PulseDO0 register.

TimestampedPulseDO1

Provides methods for manipulating timestamped messages from the PulseDO1 register.

TimestampedPulseDO2

Provides methods for manipulating timestamped messages from the PulseDO2 register.

TimestampedPulseDO3

Provides methods for manipulating timestamped messages from the PulseDO3 register.

TimestampedPulseDOPort0

Provides methods for manipulating timestamped messages from the PulseDOPort0 register.

TimestampedPulseDOPort1

Provides methods for manipulating timestamped messages from the PulseDOPort1 register.

TimestampedPulseDOPort2

Provides methods for manipulating timestamped messages from the PulseDOPort2 register.

TimestampedPulseLed0

Provides methods for manipulating timestamped messages from the PulseLed0 register.

TimestampedPulseLed1

Provides methods for manipulating timestamped messages from the PulseLed1 register.

TimestampedPulseRgb0

Provides methods for manipulating timestamped messages from the PulseRgb0 register.

TimestampedPulseRgb1

Provides methods for manipulating timestamped messages from the PulseRgb1 register.

TimestampedPulseSupplyPort0

Provides methods for manipulating timestamped messages from the PulseSupplyPort0 register.

TimestampedPulseSupplyPort1

Provides methods for manipulating timestamped messages from the PulseSupplyPort1 register.

TimestampedPulseSupplyPort2

Provides methods for manipulating timestamped messages from the PulseSupplyPort2 register.

TimestampedPwmDutyCycleDO0

Provides methods for manipulating timestamped messages from the PwmDutyCycleDO0 register.

TimestampedPwmDutyCycleDO1

Provides methods for manipulating timestamped messages from the PwmDutyCycleDO1 register.

TimestampedPwmDutyCycleDO2

Provides methods for manipulating timestamped messages from the PwmDutyCycleDO2 register.

TimestampedPwmDutyCycleDO3

Provides methods for manipulating timestamped messages from the PwmDutyCycleDO3 register.

TimestampedPwmFrequencyDO0

Provides methods for manipulating timestamped messages from the PwmFrequencyDO0 register.

TimestampedPwmFrequencyDO1

Provides methods for manipulating timestamped messages from the PwmFrequencyDO1 register.

TimestampedPwmFrequencyDO2

Provides methods for manipulating timestamped messages from the PwmFrequencyDO2 register.

TimestampedPwmFrequencyDO3

Provides methods for manipulating timestamped messages from the PwmFrequencyDO3 register.

TimestampedPwmStart

Provides methods for manipulating timestamped messages from the PwmStart register.

TimestampedPwmStop

Provides methods for manipulating timestamped messages from the PwmStop register.

TimestampedRgb0

Provides methods for manipulating timestamped messages from the Rgb0 register.

TimestampedRgb1

Provides methods for manipulating timestamped messages from the Rgb1 register.

TimestampedRgbAll

Provides methods for manipulating timestamped messages from the RgbAll register.

TimestampedServoMotor2Period

Provides methods for manipulating timestamped messages from the ServoMotor2Period register.

TimestampedServoMotor2Pulse

Provides methods for manipulating timestamped messages from the ServoMotor2Pulse register.

TimestampedServoMotor3Period

Provides methods for manipulating timestamped messages from the ServoMotor3Period register.

TimestampedServoMotor3Pulse

Provides methods for manipulating timestamped messages from the ServoMotor3Pulse register.

TimestampedStartCameras

Provides methods for manipulating timestamped messages from the StartCameras register.

TimestampedStopCameras

Provides methods for manipulating timestamped messages from the StopCameras register.

Structs

AnalogDataPayload

Represents the payload of the AnalogData register.

RgbAllPayload

Represents the payload of the RgbAll register.

RgbPayload

Represents the payload of the Rgb register.

Enums

CameraOutputs

Specifies camera output enable bits.

DigitalInputs

Specifies the state of port digital input lines.

DigitalOutputs

Specifies the state of port digital output lines.

EncoderInputs

Specifies quadrature counter enable bits.

EncoderModeConfig

Specifies the type of reading made from the quadrature encoder.

Events

Specifies the active events in the device.

FrameAcquired

Specifies that camera frame was acquired.

MimicOutput

Specifies the target IO on which to mimic the specified register.

PortDigitalIOS

Specifies the state of the port DIO lines.

PwmOutputs

Specifies the state of PWM output lines.

ServoOutputs

Specifies servo output enable bits.