Navigation Controller Guide


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.


  • 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.


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

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

Step 3. Power on Controller(s)

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

Step 4. Load the Predefined Controller TRA files

Next step is to import the predefined TRA files. Each controller's physical marker configuration will reflect one of the predefined TRA Rigid Body definition 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.

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

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 Graph View pane. You can use the provided Live-DeviceSelectedChannel template to plot the output graph.

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.

  • The charge state is Displayed in the Device's properties in Properties pane

Usage Notes

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

  • 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).


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.

Last updated