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
Please read through the NavigationControllerReadme.txt file before starting with the setup process.
Connect the Bluetooth dongle and all of the Navigation Controllers to the PC using the provided mini-USB cables.
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.
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.
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.
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.
Before starting Motive, make sure to start up the ScpServer.exe application under the SCPTools folder.
Start Motive. When the program shows up, there will be 4 Controller devices listed under the Devices pane.
Power the controllers. Active controllers will be shown in the Devices pane 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 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.
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
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).