The VR Juggler Configuration Guide

$Revision: 93 $

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with the Invariant Sections being Appendix H, GNU Free Documentation License, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in Appendix H, GNU Free Documentation License.

Some of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in this book, and Infiscape Corporation was aware of the trademark claim, the designations have been printed in caps or initial caps.

$Date: 2007-08-11 13:51:44 -0500 (Sat, 11 Aug 2007) $


Table of Contents

Preface
1. Introduction
Parameterization of Components
Configuration Elements
Run-Time Reconfiguration
Configuration Files
Configuration Editing
VRJConfig
Static Configuration Editing and Remote Run-Time Reconfiguration
Using the VRJConfig Control Panel
Updating Configurations
Configuration of VR Juggler
2. Configuring Input
The Input Manager
Driver Search Path
Driver DLL Name
Driver Scan Path
Input Devices
Physical Devices
Simulator Devices
Device Proxies
Proxy Aliases
Position Filters
Matrix Notation
Tracker Transformations
Configuring Position Filters
Putting it All Together
3. Configuring Displays
The Display Manager
Users
Display Windows
The OpenGL Frame Buffer
Graphics Window Input
Viewports
Simulator Viewports
Surface Viewports
Multiple Viewports in a Single Window
4. Configuring a Cluster
Cluster Nodes
Cluster Manager
Cluster Plug-Ins
Remote Input Manager
Start Barrier
Application Data Manager
TCP Swap Lock
Parallel Port (Wired) Swap Lock
Input Device Sharing
Cluster Configuration Tips
Naming Cluster Node Config Elements
Choosing Master Nodes
5. Remote Run-Time Reconfiguration Using VRJConfig
Preparing VR Juggler for Remote Run-Time Reconfiguration
Connecting to VR Juggler Using VRJConfig
6. Config Definition Editing
Introduction to Config Definitions
Config Definition Features
Config Definitions and XML Schema
Config Definition Files
File Format Version
Root Document Attributes
Definition Version
Abstract Config Definitions
Config Definition Help Text
Config Definition Parents
Categories
Property Definitions
Upgrade Transforms
A. Tracker Configuration
Ascension Flock of Birds®
Ascension MotionStar Wireless® 2
InterSense API and InterSense IS-900
InterSense API Configuration Aspects
IS-900™ Configuration Aspects
Configuring InterSense Stations
Polhemus Fastrak®
VRCO Trackd® and trackdAPI Sensor
B. Glove Configuration
5DT Data Glove
Fakespace Pinch™ Gloves
Immersion CyberGlove®
Essential Reality P5 Glove
noDNA X-IST Glove
C. Multi-Type Input Device Configuration
VRCO Trackd® and trackdAPI Controller
VRPN
Ascension Wanda®
Immersion Interface Box
Linux Joystick Device
The Linux joydev Kernel Module
USB Device Mapping
Analog and Digital Input Sources
Direct Input Game Controller
D. Other Device Drivers
U.S. Digital Serial Encoder
Microsoft Speech API
Elexol Ether I/O 24
E. Configuration of Miscellaneous Components
VR Juggler Kernel Shutdown
Sonix Sound Manager
F. VRJConfig Custom Editors by Infiscape
Display Window Editor
Flock of Birds® Editor
MotionStar Wireless® Editor
Device Proxy Editor
Simulator Editor
G. File Format Specifications
Config Definition Files
Config Files
H. GNU Free Documentation License
PREAMBLE
APPLICABILITY AND DEFINITIONS
VERBATIM COPYING
COPYING IN QUANTITY
MODIFICATIONS
COMBINING DOCUMENTS
COLLECTIONS OF DOCUMENTS
AGGREGATION WITH INDEPENDENT WORKS
TRANSLATION
TERMINATION
FUTURE REVISIONS OF THIS LICENSE
ADDENDUM: How to use this License for your documents
Glossary of Terms
Index

List of Figures

1.1. Simple Configuration Element
1.2. VRJConfig
1.3. VRJConfig Configuration Editor Main Toolbar
1.4. VRJConfig Configuration Editor New and Open Buttons
1.5. VRJConfig Configuration Context Toolbar
1.6. VRJConfig Context Modification Menu
1.7. VRJConfig Config Element Navigator Panel
1.8. Config Element Chooser
1.9. Config Element Search Dialog
1.10. Editing a Property with a Variable Number of Values
1.11. Changing the Order of Property Values
1.12. VRJConfig Control Panel Start Screen
2.1. Frames of reference for configuring a tracking system
5.1. Subject Manager Lookup Dialog
5.2. VRJConfig Remote Run-Time Reconfiguration Button
F.1. Display Window Editor: Simulator Viewport
F.2. Display Window Editor: Viewport Resizing
F.3. Display Window Editor: Window/Viewport Menu
F.4. Display Window Editor: Display Window Properties Dialog
F.5. Display Window Editor: Simulator Viewport Add/Edit Dialog
F.6. Display Window Editor: Surface Viewport Add/Edit Dialog
F.7. Display Window Editor: Surface Orientation
F.8. Display Window Editor: Surface Viewport Configured
F.9. Display Window Editor: Multiple Viewports
F.10. Flock of Birds® Editor: Transmitter Settings
F.11. Flock of Birds® Editor: Sensor Settings
F.12. Flock of Birds® Editor: Serial Port Settings
F.13. MotionStar Wireless® Editor: Transmitter Settings
F.14. MotionStar Wireless® Editor: Sensor Settings
F.15. Device Proxy Editor: Single Positional Device
F.16. Proxy Editor: Creating a New Proxy/Device Connection (Step 1)
F.17. Proxy Editor: Creating a New Proxy/Device Connection (Step 2)
F.18. Proxy Editor: Creating a New Proxy/Device Connection (Step 3)
F.19. Proxy Editor: Adding Positional Units
F.20. Proxy Editor: Adding a Proxy Alias
F.21. Proxy Editor: Reassociating a Proxy Alias
F.22. Proxy Editor: Multi-Type Input Devices
F.23. Proxy Editor: Adding a Digital Input Source
F.24. Proxy Editor: Adding Another Digital Input Source
F.25. Simulator Editor: Single Window Simulator
F.26. Simulator Editor: Multi-Window Simulator
F.27. Simulator Editor: Simulated Analog Devices
F.28. Simulator Editor: Simulated Digital Devices
F.29. Simulator Editor: Simulated Positional Devices
F.30. Simulator Editor: On-the-Fly Error Detection
F.31. Simulator Editor: Advanced Simulated Device View

List of Tables

1.1. Valid Property Types
2.1. Proxies for an InterSense IS-900

List of Examples

6.1. Basic Config Definition File Structure
6.2. Multi-Version Config Definition Example (simulated_digital_device.jdef)
6.3. Simple Config Definition (position_proxy.jdef)
6.4. Example Abstract Config Definition (input_device.jdef)
6.5. HTML Encoded Within a <help> Tag
6.6. Resulting HTML Help String
6.7. Value Enumeration (surface_viewport.jdef)
6.8. Editable Value Enumeration (cluster_manager.jdef)
6.9. Allowed Type for an Embedded Config Element Value (position_proxy.jdef)
6.10. Single Allowed Type for a Config Element Pointer (position_proxy.jdef)
6.11. Multiple Allowed Types for a Config Element Pointer (user.jdef)