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
  • Controller Setup
  • Use
  • Charging the Navigation Controller
  • Usage Notes
  • Troubleshooting

Was this helpful?

Export as PDF
  1. VIRTUAL REALITY

Navigation Controller Guide

PreviousSync Configuration with an HTC Vive SystemNextSlimX 13

Last updated 2 years ago

Was this helpful?

Overview

The Navigation Controller integration allows users to track the Bluetooth navigation controller and to receive its inputs signals, in real-time. Once the controllers are properly set up, tracking data and key input data of the corresponding controller will be displayed in real-time in Motive. The data can be streamed onto client applications that are developed using VRPN.

Requirements

  • Windows 10 with administrator privileges

  • Bluetooth dongle (Kinivo BTD-400 Bluetooth USB adapter)

  • mini-USB cable

  • Navigation Controller

Controller Setup

Please read through the NavigationControllerReadme.txt file before starting with the setup process.

Step 1. Connect the devices

Step 1. Connect the devices

Connect the Bluetooth dongle and all of the Navigation Controllers to the PC using the provided mini-USB cables.

Step 2. Install Bluetooth driver for the custom controller

To use the controller, the driver for the navigation controller must be installed. Once the driver is successfully installed, both Bluetooth dongle and controllers should get listed in Windows Device Manager under "Universal Serial Bus Devices"

  • Run OptiTrackNavController\BluetoothDriver\DPInst.exe as administrator.

Step 3. Confirm Navigation Controllers operation

Operation of the navigation controllers can be confirmed through two applications: ScpServer.exe and ScpMonitor.exe. When the driver is installed properly, each connected controller will be recognized in these applications:

  • Run SCPTools\ScpServer.exe. Each Controller should appear as "Pad X"

  • Run SCPTools\ScpMonitor.exe. Charging status of each controller will be shown.

Step 4. User the ScpMonitor to confirm key inputs

Once the device connection is confirmed from step 3, you can use the ScpMonitor to confirm the key inputs. Make sure the keys are properly working in this application in order to use it within Motive.

  • From Windows Task Tray -> SCPMonitor -> Right Click -> Profile Manager.

  • Check the buttons on the controller and make sure the input signal gets properly received onto the Profile Manager.

Step 5. Install Motive Navigation Controller Plugin

Now that both connection and operation is confirmed, we can start navigating using the controller within Motive. Before doing that, copy OptiTrackNavController\MotivePlugin\WandPeripheral.dll to <Motive Install Folder>\Devices folder, so that this library can be used in Motive.

Use

Step 1. Launch OptiTrackController\Utils\ScpServer.exe

Before starting Motive, make sure to start up the ScpServer.exe application under the SCPTools folder.

Step 2. Run Motive

Step 3. Power on Controller(s)

Step 4. Load the Predefined Controller TRA files

Once the corresponding Rigid Body file has been imported, rename the RigidBody to match the name of the Controller (e.g. Controller 1). Once this is configured, a rectangular block and an arrow vector will be displayed in the 3D viewport over top of the Rigid Body.

Step 5. Confirm Operation

Charging the Navigation Controller

  • The Controller has a rechargeable battery.

  • To recharge the Controller, simply connect the Controller to the PC using the supplied Mini-USB cable for charging.

  • The Controller LED flashes slowly while charging, solid when complete.

Usage Notes

  • The Controller Clip coordinate system is in right-handed coordinate system (RHS), +Z aligned with controller's forward axis (Marker 3)

  • Only use the provided Bluetooth dongle and Mini-USB cables.

  • Controller activity is transient, but their ID is persistent (Controller 1 is always Controller 1)

  • Controllers perform an initial 'bonding' with the SCP Server. This pairing is remembered, so upon successive connections, the controller 'number' is preserved (1-4).

  • Controller represents to SCPServer as DS 3.

  • 4 Devices always show in Motive, regardless of their power/connection status. Their ID is based on their pre-paired / bonded status. This allows for devices to easily come and go but mapped to a consistent ID during a session. After pairing, controllers can be physically numbered to simplify visual/physical identification.

  • Controllers turn on manually, but turn off automaticallym after a user-definable timeout (default: 5 minutes).

  • There is a reset button on the bottom if the controller is not operating correctly.

  • Recording, or playback, is not supported.

  • Smoothing applied to the RigidBody may be userful, since smooth movement over latency is preferred.

  • Controller Device Name and RigidBody Name must match for VRPN to correctly correlate Rigid Body position and orientation with Controller's Axis and button states. (e.g. Controller 1).

Troubleshooting

Q: Controller is not showing in Motive

A: If a controller is not showing in Motive, first confirm its operation in SCPServer.exe. If they are not working there, the device itself may need to be paired with the Bluetooth dongle again.

  1. Use the supplied USB cable to connect the Controllers to the PC that has the Bluetooth dongle. When connected, the Controller should show up in the Windows Device Manager under Universal Serial Bus device.

  2. Once the connection is confirmed in Device Manager, run the SCPServer.exe.

  3. Select the controller's radio box and press the 'Pair' button.

Start Motive. When the program shows up, there will be 4 Controller devices listed under the .

Power the controllers. Active controllers will be shown in the with a check-mark next to each.

Next step is to import the predefined TRA files. Each controller's physical marker configuration will reflect one of the predefined files (e.g. ControllerA.tra). If the loaded TRA file matches the marker configuration, it will be tracked within Motive. A quick way to find out is to load all of the four Rigid Body definition files, place the controllers within the capture volume, and then remove the definitions that are not tracked. Please check the marker positions on the controller against the PDF configuration files and determine which TRA files to import into Motive.

When you pull the trigger, the magnitude of the arrow vector will increase correspondingly. Each button clicks will be inputted through each channel that can be plotted on the . You can use the provided Live-DeviceSelectedChannel template to plot the output graph.

The charge state is Displayed in the Device's properties in

The Controller Clip comes in 4 unique configurations (A, B, C, D). Corresponding TRA is provided for each configuration (e.g. ControllerA.tra).

Devices pane
Devices pane
Graph View pane
Properties pane
Rigid Body definition
5KB
NavigationControllerReadme2.1.txt
13MB
OptiTrackNavController-Motive2.1.zip
archive
Installing the driver required for both the controller and the Bluetooth dongle.
Navigation controller detected and listed under ScpServer.
Power status of each controller listed under ScpMonitor.
WandPeripheral.dll installed in the Devices folder within Motive install directory.
Configuration A (ControllerA.tra).
Configuration B (ControllerB.tra).
Configuration C (ControllerC.tra).
Configuration D (ControllerD.tra).
Navigation controller configured in Motive.
Input buttons get plotted onto the Graph View pane.
TRA Rigid Body definition