OptiTrack Peripheral API

Main PageOptiTrack Peripheral API

The OptiTrack Peripheral API is an open C++ API that can be used to create 'plugin' devices. Custom built plugin DLL's will allow you to initialize and synchronize external devices with the OptiTrack motion capture system in Motive. After building a custom plugin device using the API, the library must be placed in the \device folder within the Motive install directory in order to initialize and integrate desired peripheral devices. For integrating force plates (AMTI and Bertec) and NI-DAQ devices, the existing BiomechDevicePlugin.dll that installs with the peripheral module can be utilized.

Note: The OptiTrack Peripheral API is available in Motive versions 1.10 and above.

The following features are supported by the Peripheral API:

  • Real-time synchronized data collection from peripheral hardware device and the OptiTrack motion capture system into Motive Take (TAK) files and the open standard C3D file format.
  • Motive UI access to device properties and event settings under the Devices pane, allowing the users to configure the device in Motive.
  • Real-time display of live device data in Motive's scope view in the Graph pane.
  • Captured data review in Motive's 2D Graphing windows in the Graph pane.


The Peripheral API folder is installed with the Motive software. It can be found in the Motive install directory, which is located in C:\Program Files\OptiTrack\Motive\PeripheralAPI by default.

Folder Contents
\example Visual Studio Example Device project and source code showing Peripheral API usage.
\include API headers (include in your project)
\lib Peripheral API / Motive import library (link to your project)
ClassDiagram Class relationship diagram of Plugin Devices to Motive Plugin Library.
Readme.txt Peripheral API release notes.


The following components are required for using the OptiTrack Peripheral API.

  • Microsoft Windows 7, 8, or 10.
  • Microsoft Visual Studio 2013 ( Recommended )


The following guideline can be used to create and apply custom device plugin DLLs in Motive:

  1. Copy the OptiTrackPeripheralExample project and modify the code in the lines where indicated in the sample.
  2. Build the sample, which produces a plugin DLL. Copy this DLL to the <Motive install folder>\devices subfolder.
  3. If your plugin has external dependencies (e.g. driver / SDK dlls), make sure these are on your system path, or in the Motive install directory.
  4. Launch Motive. Your device should appear in the Devices pane in Motive. If it does not, check the Motive Status Log for error notifications.
  5. When a peripheral device is detected in Motive, real-time collected data can be monitored from the real-time plotting of the Graph pane in the Live mode.
Plugin Device loaded into Motive

Class Diagram[edit]

Motive Peripheral API - Class Diagram.jpg