LogoLogo
WebsiteSupportDownloadsForumsQuick LinksContact Us
v2.3
v2.3
  • OptiTrack Support Documentation
  • WHAT'S NEW
    • Unreal Engine: OptiTrack InCamera VFX
  • QUICK START GUIDES
    • Quick Start Guide: Getting Started
    • Quick Start Guide: Precision Capture
    • Quick Start Guide: Tutorial Videos
    • Quick Start Guide: Prime Color Setup
    • Quick Start Guide: Active Marker Tracking
    • Quick Start Guide: Outdoor Tracking Setup
  • HARDWARE
    • Cameras
      • Ethernet Cameras
        • PrimeX 41
        • PrimeX 22
        • PrimeX 13
        • PrimeX 13W
        • SlimX 13
        • Prime Color
      • USB Cameras
        • Slim 3U
        • Flex 13
        • Flex 3
        • V120:Duo
        • V120:Trio
        • V120:Duo and Trio Setup
        • Adjusting Global Origin for Tracking Bars
    • Prepare Setup Area
    • Camera Mount Structures
    • Camera Placement
    • Camera Network Setup
    • Aiming and Focusing
    • Camera Status Indicators
  • MOTIVE
    • Installation and Activation
    • Motive Basics
    • Calibration
      • Continuous Calibration
      • Calibration Squares
    • Markers
    • Assets
      • Gizmo Tool: Translate, Rotate, and Scale
    • Rigid Body Tracking
      • Aligning Rigid Body Pivot Point with a Replicated 3D Model
    • Skeleton Tracking
    • Data Recording
      • Data Types
    • Labeling
    • Data Editing
    • Data Export
      • Data Export: BVH
      • Data Export: C3D
      • Data Export: CSV
      • Data Export: FBX
      • Data Export: TRC
    • Data Streaming
    • Camera Video Types
    • Audio Recording
    • Motive HotKeys
    • Measurement Probe Kit Guide
    • Motive Batch Processor
    • Reconstruction and 2D Mode
    • Tracking Bar Coordinate System
      • Transforming Coordinate System: Global to Local
  • MOTIVE UI PANES
    • Application Settings
      • Settings: Live Reconstruction
      • Settings: General
      • Settings: Views
      • Settings: Assets
        • Skeletons
        • Rigid Body
      • Settings: Camera
    • Mouse and Keyboard
    • Assets Pane
    • Builder Pane
    • Calibration Pane
    • Control Deck
    • Data Pane
    • Data Streaming Pane
    • Devices Pane
    • Edit Tools Pane
    • Graph View Pane
    • Info Pane
    • Labels Pane
    • Log Pane
    • Marker Sets Pane
      • Marker Name XML Files
    • Measurement Pane
    • Probe Pane
    • Properties Pane
      • Properties Pane: Camera
      • Properties Pane: Force Plates
      • Properties Pane: NI-DAQ
      • Properties Pane: OptiHub2
      • Properties Pane: Rigid Body
      • Properties Pane: Skeleton
      • Properties Pane: Take
      • Properties Pane: eSync2
    • Reference View pane
    • Status Panel
    • Toolbar/Command Bar
    • Viewport
  • PLUGINS
    • OptiTrack Unreal Engine Plugin
      • Unreal Engine: OptiTrack Live Link Plugin
      • Unreal Engine: OptiTrack Streaming Client Plugin
      • Unreal Engine: HMD Setup
      • Unreal Engine: MotionBuilder Workflow
      • Unreal Engine VCS Inputs
    • OptiTrack Unity Plugin
      • Unity: HMD Setup
    • OptiTrack OpenVR Driver
    • Autodesk Maya
      • Autodesk Maya: OptiTrack Insight VCS Plugin
    • Autodesk MotionBuilder
      • Autodesk MotionBuilder Plugin
      • Autodesk MotionBuilder: OptiTrack Skeleton Plugin
      • Autodesk MotionBuilder: OptiTrack Optical Plugin
      • Autodesk MotionBuilder: OptiTrack Insight VCS Plugin
      • Autodesk MotionBuilder: Timecode Data
    • OptiTrack Peripheral API
    • External Plugins
      • Houdini 19 Integration
  • ACTIVE COMPONENTS
    • Active Components Hardware
      • Active Puck
      • CinePuck
      • BaseStation
      • Information for Assembling the Active Tags
      • Manus Glove Setup
    • Configuration
      • Active Batch Programmer
      • Active Hardware Configuration: PuTTY
      • Active Component Firmware Compatibility
    • Active Marker Tracking
      • Active Finger Marker Set
      • Active Marker Tracking: IMU Setup
  • SYNCHRONIZATION
    • Synchronization Hardware
      • External Device Sync Guide: eSync 2
      • External Device Sync Guide: OptiHub2
    • Synchronization Setup
    • OptiTrack Timecode
  • VIRTUAL PRODUCTION
    • Unreal Engine: OptiTrack InCamera VFX
    • Entertainment Marker Sets
    • PrimeX 41
  • MOVEMENT SCIENCES
    • Movement Sciences Hardware
      • General Motive Force Plate Setup
      • AMTI Force Plate Setup
      • Bertec Force Plate Setup
      • Kistler Force Plate Setup
      • Delsys EMG Setup
      • NI-DAQ Setup
      • Multiple Device Setup
      • Prime Color Setup
    • Movement Sciences Marker Sets
      • Biomechanics Marker Sets
      • Biomech (57)
      • Rizzoli Marker Sets
    • For Visual3D Users
  • VIRTUAL REALITY
    • VR Plugins
      • VR Unreal Engine
        • OptiTrack Unreal Engine Plugin
        • Unreal Engine: OptiTrack Live Link Plugin
        • Unreal Engine: OptiTrack Streaming Client Plugin
        • Unreal Engine VCS Inputs
      • VR Unity
        • OptiTrack Unity Plugin
      • VR OpenVR
        • OptiTrack OpenVR Driver
    • VR HMD Setup
      • Unreal Engine: HMD Setup
      • Unity: HMD Setup
      • Manually Calibrating the HMD Pivot Point
      • Sync Configuration with an HTC Vive System
    • Navigation Controller Guide
    • SlimX 13
    • Active Marker Tracking
      • Active Finger Marker Set
      • Active Marker Tracking: IMU Setup
    • Synchronization Hardware
      • External Device Sync Guide: eSync 2
      • External Device Sync Guide: OptiHub2
  • ANIMATION
    • Autodesk Maya
      • Autodesk Maya: OptiTrack Insight VCS Plugin
    • Autodesk MotionBuilder
      • Autodesk MotionBuilder Plugin
      • Autodesk MotionBuilder: OptiTrack Skeleton Plugin
      • Autodesk MotionBuilder: OptiTrack Optical Plugin
      • Autodesk MotionBuilder: OptiTrack Insight VCS Plugin
      • Autodesk MotionBuilder: Timecode Data
  • ROBOTICS
    • PrimeX 22
    • Outdoor Tracking Setup
  • DEVELOPER TOOLS
    • Developer Tools Overview
    • NatNet SDK
      • NatNet 4.0
      • NatNet: Class/Function Reference
      • NatNet: Creating a Managed (C sharp) Client Application
      • NatNet: Creating a Native (C++) Client Application
      • NatNet: Data Types
      • NatNet: Matlab Wrapper
      • NatNet: Migration to NatNet 3.0 libraries
      • NatNet: RebroadcastMotiveData Sample
      • NatNet: Remote Requests/Commands
      • NatNet: Sample Projects
      • NatNet: Unicast Data Subscription Commands
      • Latency Measurements
    • Motive API
      • Motive API: Quick Start Guide
      • Motive API Overview
      • Motive API: Function Reference
      • Motive API Camera Calibration
    • Camera SDK
      • Camera SDK Classes
        • Class: cCameraGroupFilterSettings
        • Class: cCameraGroupMarkerSizeSettings
        • Class: cCameraGroupPointCloudSettings
        • Class: cCameraModule
        • Class: cRigidBodySettings
        • Class: cRigidBodySolutionTest
        • Class: cTTAPIListener
        • Class: cUID
  • MARKER SETS
    • Full Body
      • Baseline (37)
      • Baseline + Hinged Toe (41)
      • Baseline + Hinged Toe, with Headband (41)
      • Baseline + 13 Additional Markers (50)
      • Biomech (57)
      • Conventional (39)
    • Full Body + Fingers
      • Baseline + Hinged Toe + Fingers (49)
      • Baseline + 11 Additional Markers + Fingers (54)
      • Manus Glove Setup
    • Upper
      • Baseline Upper (25)
      • Baseline Upper Body + Fingers (33)
      • Conventional Upper (27)
    • Lower
      • Baseline Lower (20)
      • Helen Hayes Lower (19)
      • Conventional Lower (16)
    • Hand and Fingers
      • Left and Right Hand (11)
      • Active Finger Marker Set
    • Rizzoli Marker Sets
    • Entertainment Marker Sets
    • Rigid Body Skeleton Marker Set
  • GENERAL TROUBLESHOOTING
    • Troubleshooting
    • Running Motive on High DPI Displays
    • Firewall Settings
Powered by GitBook
On this page
  • Overview
  • External Device Synchronization
  • Synchronization Setup
  • Setting Up a Parent Device
  • Setting Up a Child Device
  • Input Source
  • Internal Sync
  • Sync In
  • USB Sync
  • Trigger and Camera Exposure
  • Output Source
  • Exposure Time & Gated Exposure Time
  • Recording Gate
  • Pass-Through

Was this helpful?

Export as PDF
  1. VIRTUAL REALITY
  2. Synchronization Hardware

External Device Sync Guide: OptiHub2

PreviousExternal Device Sync Guide: eSync 2NextANIMATION

Last updated 2 years ago

Was this helpful?

Overview

This page provides general instructions on how to use the OptiHub2 for integrating external devices with Flex series mocap systems. The OptiHub2 not only provides power for the USB cameras, but it also includes external sync in/out ports for integration of external devices. With proper configurations, you can have another device (parent) control the mocap system or have the mocap system control another external device (child), or both. Setup instructions for both child and parent devices will be covered. Note that the sync setup may vary depending on the type of integrated devices as well as the morphology of the communicated sync signals. Use this guide for understanding the general idea of how external devices are implemented, and apply it to your own needs.

External Device Synchronization

On the OptiHub2, there are one External SYNC In and one External SYNC Out ports for connecting external devices. In general, parent devices connect to the input port for controlling the mocap system, and child devices connect to the output port to be triggered by the mocap system. Once the devices are connected, the input and output source needs to be configured under the in Motive.

Important Note

Please note that the OptiHub2 is not designed for precise synchronization with external devices. It is used to provide only a rough synchronization to a trigger event on the input/output signal. Using an OptiHub2, there will be some amount of time delay between the trigger events and the desired actions, and for this reason, the OptiHub2 is not suitable for the precisely synchronizing to an external device. To accomplish such synchronization, it is recommended to use the instead along with an Ethernet camera system.

Difference Between OptiSync and Wired Sync

OptiSync

  • The OptiSync is a custom camera-to-camera synchronization protocol designed for Flex series cameras. The OptiSync protocol sends and receives sync signals over the USB cable, without the need for RCA sync cables. This sync method is only available when using Flex 3 or Flex 13 cameras connected to the OptiHub2.

Wired Sync

  • The Wired Sync is a camera-to-camera synchronization protocol using RCA cables in a daisy chain arrangement. With a master RCA sync cable connecting the master camera to the OptiHub2, each camera in the system is connected in series via RCA sync cables and splitters. The V100:R1 (Legacy) and the Slim 3U cameras utilize Wired Sync only, and therefore any OptiTrack system containing these cameras need to be synchronized through the Wired Sync. Wired Sync is optionally available for Flex 3 cameras.

Additional Notes:

  • Unlike the eSync2, the OptiHub2 cannot generate an output signal at a higher frequency than the camera capture rate.

  • When using multiple OptiHub2s, input and output ports of only the parent OptiHub2 can be used. The parent OptiHub2 is the first OptiHub2 within the daisy-chained RCA sync chain.

Duo/Trio Tracking Bars:

  • Use the Sync In/Out ports on the I/O-X USB hub to use the external signal to drive the tracking bar.

Synchronization Setup

Setting Up a Parent Device

Step 1. [Hardware] Connect a parent device into the External SYNC In port of the parent OptiHub2.

Step 2. [Motive] Launch Motive.

Setting Up a Child Device

Step 1. [Hardware] Connect a child device into the External SYNC Out port of the parent OptiHub2.

Step 2. [Motive] Launch Motive.

Step 6. [Motive] Once this is set, the OptiHub2 will output configured signal through its output ports.

Input Source

The Sync Input configuration determines how the camera system is synchronized. Depending on which input source is configured under the custom sync settings, the cameras will shutter at the corresponding frequency. To configure the sync input signals, first define an input Source and then configure the respective trigger settings. The following input sources can be configured with the OptiHub2:

Internal Sync

(The camera system will be the parent)

When the sync source is set to Internal/Wired the camera system uses the OptiHub2 as the sync source. This is the default configuration, and it uses OptiHub2's sync protocol for synchronizing the cameras. The Parent OptiHub2 will generate an internal sync signal which will be propagated to other (child) OptiHub2(s) via the Hub Sync Out Jack and Hub Sync In Jack, and all of the cameras connected to the OptiHub2s will be synchronized. For V100:R1(legacy) and the Slim 3U cameras, Wired Sync protocol is used. In this mode, the internal sync signal will still be generated but it will be routed directly to the cameras via daisy-chained sync cables.

When the Internal Sync is selected as the sync source, Internal Sync Freq (Hz) can be set under the Synchronization Control section. This setting determines how the OptiHub2 triggers the camera exposures or the camera framerate.

Sync In

(The camera system will be the child)

When synchronizing the camera system to an external device, set the source to Sync In, and the camera system references the external signal through the SYNC In port as the parent sync. In this mode, the Input Trigger event must be defined so that the camera systems respond to the incoming signal as desired; available triggers are Either Edge, Rising Edge, Falling Edge, High Gated, and Low Gated. Note that the suitable event will vary depending on characteristics of the received signal and how you want the system to synchronize with it.

For syncing to input signals with a frequency higher than the supported camera frame rates, the Input Divider can be applied so that the sync source is down-sampled to the supported rate range.

Duo/Trio Tracking Bars:

  • In Duo/Trio Tracking bars, when there is external signal detected through its I/O-X box, the tracking bar will no longer be able to operate in free-run mode. In this case, the source must be set to Sync In to utilize the external signal OR the external input must be disconnected from the I/O-X box for free-run.

USB Sync

(The camera system will be the child)

Trigger and Camera Exposure

Note that the precise moment of the camera exposure does not exactly coincide with the sync input trigger event. There is a fixed latency between these two events due to specific implementation of the sensors used in the cameras. This delay from the onset of the trigger-event to the start of exposure on the cameras can be calculated as the following:

Flex 3 and Duo/Trio tracking bars

  • Camera exposure (measured in scanlines for Flex 3 cameras)

Flex 13

Output Source

  • All output signals can be inverted by setting the Output::Polarity to Inverted.

  • For connecting more than one child devices, output signals may be split using a BNC splitter.

  • The sync hubs are capable of sending out the following signals:

Exposure Time & Gated Exposure Time

Exposure output signals to inform when the cameras are exposing. When the output type is set to Exposure Time, the sync hub asserts the output signals when the cameras are exposing, or shuttering, in the live mode. When the output is configured to Recording Pulse, the exposure signal is asserted only when Motive is recording.

Recording Gate

The Recording Gate signal can be used to tell the child device when Motive is recording or not. When configured to Recording Gate, the sync hub will output a constant high voltage signal when Motive is recording. Please note that OptiHub2 is not specifically designed for precise synchronization, and there will be a slight delay when it starts outputting the trigger signal. This delay varies on each camera system setup.

Gated Output Signal (OptiHub2) Note:

The gated (while-recording) output signal from the OptiHub2 is not frame-synchronous with the recorded frame data. When the recording trigger is received in the middle of a frame, mocap frames starting from the next one get recorded in the Take. The gate output signal, however, does not respect this and begins outputting the signal as soon as the recording trigger is received. For this reason, there could be a slight offset between the outputted gated signal and the recorded mocap data.

Pass-Through

The Pass-through type outputs the signal that is received through the SYNC In port.

Step 3. [Motive] Open the and the under the view tab.

Step 4. [Motive] Select the parent OptiHub2 in the , then its properties will get listed under the .

Step 5. [Motive] Under the Sync Input Settings section, configure the source and the corresponding settings. If you are using an external device connected to the External SYNC In port as the sync source, set the input source to Sync In. See more under the section of this page.

Step 6. [Motive] Once above is configured, the camera system will capture according to the input signal, and you should be able to see the change in the camera frame rate section.

Step 3. [Motive] Open the and the from the view tab.

Step 4. [Motive] Select the parent OptiHub2 in the , then its properties will get listed under the . By modifying the properties, you can configure the for outputting sync signals to the child devices.

Step 5. [Motive] Under the output section, set the output signal type. This will determine the signal characteristic that the child device will receive. See the section of this page for details.

This mode is for customers who use the and would like to have their software trigger the cameras instead. Using the provided API, the OptiHub2 will can receive the trigger signal from the PC via the OptiHub2's USB uplink connection.

Imager Scan-Rate: Frame Rate Setting defined under the .

Flex 13 cameras have a different trigger-to-exposure latency. From the moment the sync trigger event is received, it takes 480 microseconds for the cameras to synchronize and start exposing. After this delay, the Flex 13 cameras expose for the duration defined under the exposure settings in the . The camera exposures are measured in microseconds for Flex 13 cameras.

The External SYNC Out port of the OptiHub2 can be used if you want to set up the camera system to be a parent of other systems. The output port sends out the sync signals which can be configured under the External Sync Output section of the . First, understand the characteristic of sync signal that the connected child device is expecting and configure the output source accordingly.

Devices pane
Properties pane
Devices pane
Properties pane
Devices pane
Devices pane
Properties pane
Devices pane
Properties pane
software development kits
Devices pane
Devices pane
OptiHub2 properties
Input Source
Output Source
OptiHub2 properties
eSync 2
OptiSync
Wired Sync
The OptiHub2.
OptiHub setup.
Trigger to exposure delay in Flex 13 cameras.
Using the BNC splitter for connecting additional child devices.
Exposure Time output signal.
Recording Gate output signal.