Alignment Reference Frame Record This record is sent in response to an A{stationNum}<> command. It returns 9 ASCII floats that were last set with the A command. Each float is represented as 7 characters with 2 digits after the floating point. Units are centimeters. 2{stationNum}A{OxOyOzXxXyXzYxYyYz}<> Bytes 1 2 3 4-24 25-45 axis 46-66 axis 67-68 Explanation Record type , '2' Station Number. A hexadecimal number up to C.
Tip Offset Record This record is sent in response to an N{stationNum}<> command. It returns 3 ASCII floats that were last set with the N command. Each float is represented as 7 characters with 3 digits after the floating point. Units are centimeters. 2{stationNum}N{Ox Oy Oz}<> Bytes 1 2 C. 3 4-11 12-19 20-27 28-29 Explanation Record type , '2' Station Number.
8.5.4. InterSense-specific Records Manufacturer System Status Record This record is sent in response to an MS<> command. It returns a status record specific to the InterSense system. 31S{statusRecord}<> Bytes 1 2 3 4 5 6 7,8 Explanation Record type , '3' Station number.
To decode each of the Config bytes Config Byte 0 Unused Config Byte 1 Corresponds to the Perceptual Enhancement Level. Can be 0, 1, or 2. The remaining 2 bits are reserved for future expansion of this option.
Genlock Synchronization Record This record is sent in response to MG<> command. It returns the current synchronization settings of the system. 31G{State}, {Rate}, {Number of cycles per signal}<> Bytes 1 2 3 4 5-11 12-14 15,16 Explanation Record type , '3' Always 1. Sub-Record type, 'G' State, 0 to 3 Strobe rate or Output record rate Number of computational cycles tracker performs between sync signals or output records. Multiply this parameter by Rate to determine the internal update rate of the tracker.
Fixed PSE Record This record is sent in response to MCF[Fixed PSE number]<> command. It returns the current settings of a single PSE or entire Constellation. 31F{Fixed PSE number}{Fixed PSE record}<> Bytes 1 2 3 4-10 11-40 41-61 62-68 69,70 Tracking Status Record Explanation Record type , '3' Constellation Number. Always '1' Sub-Record type, 'M' Fixed PSE number in ASCII decimal format. x, y, z components of position vector in 10.4f ASCII format. Values are in meters.
9. LCD Status & Settings Screen (Firmware 4.20 and higher) 9.1. Overview The LCD Status and Settings screen provides a simple and convenient way to view and change most of the tracking parameters, communication protocols, and IS-900 system settings without the requirement of a dedicated Windows PC running ISDEMO. The LCD panel also provides a simple way to place the IS-900 in “file transfer” communication mode for installing firmware updates.
Buttons for menu mode: Enter Select menu item at cursor or enter changed setting. Up/Down Move cursor to another menu item. Right/Left Scroll right/left when viewing error message. F2 Back up to parent menu. F1 Return to display mode. 9.2. Normal Operation (Steady State) During system start-up, the LCD displays a greeting and draws dots along the bottom row. While the dots are being drawn, “file transfer” mode can be invoked by pressing the F1 button. Otherwise, the system begins initializing.
In Figure 35, the “T” indicates that Station 1 (or the Tracker connected into port 1 of the processor) is tracking. The “T” field next to each station number has different letter values that indicate: “T” = The station is tracking. “X” = The station status is invalid or wireless channel is off. “L” = The station is lost. “ ” = No station is connected or the station state is “off”. The statistics field below the station status is used to provide quick feedback of tracking performance for each station.
Figure 38 - Communication Integrity Status for a Wired Tracking Station 1 The statistical values for “TQ” or tracking quality (shown in Figure 39) are represented by a percentage from 0 to 100%. 100% means that the station is tracking perfectly and 0% means it is lost. When an InertiaCube is plugged into a station port, the tracking quality is always 100% because no ultrasonic measurements are used by 3-DOF devices such as InertiaCubes. For MicroTrax devices, values anywhere in the range are possible.
9.3. Example of LCD Menu Navigation As example of a typical use for the LCD panel, here are the steps to find out the current firmware revision running on the IS-900. Refer to the menu flow chart in the next sectioin to follow the navigation steps outlined here. Step 1 – Change to Display mode When the system is running with one tracker attached at Port 1, the LCD is in display mode as shown in Figure 35. The first step is to press the Enter key which brings the LCD into the top menu of Menu mode.
9.4. IS-900 LCD Menu Flow Chart Figure 40 illustrates the flow chart for the IS-900 LCD menu. Communication Station Config. System Config. Errors Display Reset Encoders (reserved) Exit Menu Set Group Set Mode BACK 0. 9,600 Baud 1. 19,200 Baud 2. 38,400 Baud 3.
10. Appendix A – Frequently Asked Questions Q1. What is the maximum length of the cable between the IS-900 MicroTrax Tracked Devices and IS-900 Processor? The cable between the IS-900 Processor and the MicroTrax Devices has been tested to a length of 15 m (50 feet). This is the total length of cabling including the Tracker cable and the Tracker Extension cable. Q2. What is the maximum cable length from the IS-900 Processor to the SoniStrips? The Processor to SoniStrip Cable, Part No.
Q5. What are the PIN assignments on the RS-232 Serial Ports (DB9) on the IS-900 Processor? Pin 1 2 3 4 5 6 7 8 9 Function DCD RX TX DTR GND DSR RTS CTS RI Q7. Do you have any advice about working with software packages? InterSense maintains a full list of supported Third-Party Programs at http://www.intersense.com/partners.aspx?id=51. Please check this web page and then consult with the software vendor first to determine compatibility.
11. Appendix B – Troubleshooting & Tips Problem Reason/Solution ISDEMO doesn’t work / can’t connect to IS-900 Most common reasons (not in any order): 1) Connected to wrong COM port plug on the back of the computer. 2) The selected serial port is captured by another program and can’t be opened by ISDEMO. 3) The RS-232 cable running from the PCTracker Hub to the computer is not a null modem serial cable (crossed TX and RX lines).
Tracker(s) are lost Check for the following: 1) A valid constellation for the SoniStrips is loaded. 2) The small microphones on the MicroTrax Device(s) are covered, upside down or the device is not located under the SoniStrip constellation. 3) From the main ISDEMO window, run a self test by selecting menu items “Tools à System Self-Test” and then from the Tracker Hardware and Configuration Test window select menu item “Test à Run Tests”.
unit on the station port the last time the system was used Interference from a transmitter being used with another IS-900 system Channels for stations n and m are both set to x Link ID for stations n and m are both x Receivers are set to the same channel MicroTrax units are not compatible with each other in ISDEMO to set up radios (if using normal mode) Check for transmitter in the area that is powered on and set to the same channel.
12. Appendix C - Health & Safety Warnings with Tracker Use Guidelines Important: Most of the side effects described in this section usually only occur when a tracking device, like an IS-900, is used with personal displays or 3D glasses. The symptoms listed below usually are referred to as “Simulator Sickness”. Read and follow the user instructions. Before using the IS-900, read and follow the user instructions. Also fully read rd any 3 party software or HMD instructions.
Additional possible risks of harm. While tracking technology has been used for many years, the range of sensors that are used to calculate positional and angular data continues to develop. Over the last twenty years as considerable amount of research has been conducted into possible side effects induced in users of real time computing systems that include various types of tracking sensors. This research has reported the symptoms described below from some users of these systems.
13. Appendix D– Care & Maintenance Care and Cleaning When not in use, always return your IS900 wireless devices (Wand and Wireless Transmitter) to InterSense’s MicroTrax Docking Station or individual charger. The first step to keeping the IS-900 clean is to keep dirt and dust from accumulating. Try to keep the area around the system clear and clean. Open ports in the rear of the base unit can quickly accumulate dust and dirt that can affect their functioning.
14. Appendix E – ISDEMO Reference For ISDEMO Versions 4.1710 and above. ISDEMO is a tool to help you test, diagnose and configure your system. With ISDEMO, it is possible to test all the features of the tracker. Use it also to set and save tracker configurations. Software included with your tracking device consists of the following: ISDEMO32.EXE Win32 version for use with Windows2000/NT/XP or VISTA. ISDEMO provides a convenient graphical interface that can configure most of the tracker parameters.
The DLL Compatible interface can be used for all InterSense trackers when isense.dll is installed in the \WINDOWS\SYSTEM32 directory of a Windows PC. For set-up and configuration of the IS-900, it is recommended to use the IS-900 Series interface, as some of the interactive controls through the isense.dll interface are inactive in ISDEMO. However, the DLL Compatible option can be useful to test that the IS-900 system is properly interfacing to the isense.dll for verification of an end-user application.
14.2. File Options The File menu (shown above) provides you with the following options: Select Hardware Device System Initialization window (also seen at initial start-up) is shown when Select Hardware Device is selected. Use this window to select or detect the tracker model connected to your computer. Configuration Lock Configuration lock commands are used to prevent unintentional changes to tracker configurations being saved to permanent memory.
14.3. Communications Options This menu allows the communications port and the baud rate of the computer ISDEMO is running on to be set to match the settings of the tracker. The default settings are COM port 1, with a rate of 115,200 baud. Communications Setup The IS-900 allows both Serial communications as well as Ethernet communications. The Ethernet interface is used as a command interface with exactly the same InterSense command protocol used for the serial port.
Ethernet Configuration Ethernet is supported with IS-900 firmware version 4.20 and higher. Ethernet is disabled by default. An IP address must be configured using the serial port to enable the Ethernet option. Refer to Section 4.2 to set an IP address for your IS-900 tracker. Two Ethernet interface paths are available - a command interface and a UDP broadcast interface. TCP is used in this case with socket port 5005. Only a single client at a time can connect via the command interface.
Detect RS232 Settings 14.4. When chosen, this option will automatically detect the port and the baud rate being used. The program attempts to establish communication by sending the S command (status record request) and waiting for a response for 2 seconds. If the status record is not received within that time the program tries again with the different communication parameters. Parameter Options Parameters menu allows access to the tracker configuration controls.
Tracker System Parameters Output Mode Polled or Continuous. In Polled mode, data records are sent out only in response to a P command. Measurement (output record) Inches Centimeters Data Format ASCII (F command) Numbers are returned in ASCII format. Each number has 7 ASCII characters: a sign, 3 digits, a decimal point, and 2 more digits. Binary (f command) Floats are sent as 4 bytes of IEEE 32-bit floats. This can increase the data throughput by minimizing the size of the record.
Sync Rate Value in Hertz used with Genlock enabled. Sync Phase 0-100%. Please see section 15 for complete details. SoniDisc LEDs (ML command) Enable and disable the SoniStrip LEDs. Ultrasonic Volume Sets the volume of the SoniDiscs (ultrasonic emitters). Ranges between 0 (off) and 3 (maximum volume). Station and Sensor Parameters The window shown below lists each station to be configured. A “Station” is a position and/or orientation-sensing unit.
Station Configuration window Station ON/OFF When a station is ON a data record will be sent for it, even if there is no hardware connected to the base unit. Perceptual Enhancement Level In order to provide the best performance for a large range of applications, three levels of perceptual enhancement are available. None of the modes introduce any additional latency. Mode 0 provides the best accuracy. The inertial tracker uses gyros to measure angular rotation rates for computing the sensor’s orientation.
Mode 2 is recommended for use with HMD or other immersive applications. The drift correction adjustments are made smoothly and only while the sensor is moving, so as to be transparent to the user. Sensitivity Level This setting is only used when Perceptual Enhancement Level is set to 2. It controls the minimum angular rotation rate picked up by the MicroTrax inertial components. Default is level 3. Increasing sensitivity does not increase latency during normal movements.
14.4.1. Wireless Configuration window The window shown below lists the wireless status and configuration for each processor port. Port Port of the IS-900 Processor. Configured Channel The channel that the connected receiver is configured to. No two receivers can be configured to the same channel. Reported Channel The channel that the connected receiver is currently on. Configured Link ID The link ID that assigned to the receiver.
Normal Mode Use normal mode to set radios to desired channels and station IDs. Only stations with the specified IDs are connected to. Select a port with a receiver connected and click Edit. In the Port Settings dialog box, enter the channel (0-15) and station ID to use for that port. Each port must be assigned its own channel. To maximize performance, it is recommended that active channels be separated by one unused channel.
14.5. Display Options Start (and Stop) Displaying Data To display position and orientation data being received from the tracker, use the Start Displaying Data option in the Display menu or press Ctrl-D. ISDEMO first attempts to establish communication and get all configuration information necessary to correctly interpret and display incoming data.
Please note that whenever your tracker is in continuous mode, records are displayed in the text window even when the display is off. 14.6. Tool Options Constellation™ Tool IS-900 User Guide This tool provides a graphical representation of the tracked area. All tracked devices are shown. The Constellation Tool is extremely useful when first installing the IS-900 system. See Section 10.7 of the manual for more information.
Tracking Statistics This option is used to display tracking status information for all stations. G = Genlock indicator. It appears in the right lower corner of the display if GENLOCK feature is on and working properly. If the “G” is replaced with an “X”, this indicates the GENLOCK feature in on, but a valid signal is not being detected. See Appendix F for details about GENLOCK. Row 1 (Stn) lists station numbers. Row 2 (Status) displays the tracking status.
Row 6 (CI) displays the communication integrity of the station as a percentage. 100% means that the station is communicating perfectly and 0% means that it is not communicating at all. To activate CI display, right-click and select option to enable. System Information This window provides a summary of the InterSense tracker system configuration. System Self-Test There are three levels of tests supported for this release.
detections at each microphone. Under good conditions, the percentage is 0% or close to it. IMU stands for Inertial Measurement Unit, also called InertiaCube. URS stands for Ultrasonic Ranging System and includes interface board, microphones, and transmitters (SoniDiscs). Level 3 Searches for wireless stations and displays wireless receiver and station configuration. Please note that the search operation can take a minute or so to complete.
Test procedure may generate warning and errors that are displayed at the end of the report. If errors are detected, corresponding error records are also generated and can be displayed in the Error Report tool. Log Files The system log file can be retrieved and viewed with the Log? Get System Log File option on the System Self Test screen. The command logging function can also accessed from this screen with the Log? Command Log menu.
Data Capture/Playback Utility ISDEMO has the ability to write the data it receives from the tracker to a file. To utilize this feature you must first specify the name and location of the output file. To start data collection, select Record. Data can be Saved as is, or in an ASCII or Binary Flat File. When the Flat File option is selected, only tracker data is saved, one line per update cycle. To import data to Excel or Matlab the output format must be set to ASCII or the ASCII Flat File option must be used.
Configuration Script Tool This utility provides complete control over the tracker parameters, including support for multiple configurations. Contents of the display area of the window can be edited directly, like in any text editor. File Load from File Crtl+O Opens a file selection dialog box. Configuration file must be a plain text file. Save to File Crtl+S Used to save contents of the window to a text file.
some difficulty, but it should still work. An InterSense technical support engineer will walk you through the required procedure. When connected, ISDEMO becomes a relay, passing serial port data to a remote host. Commands sent from the remote host are also relayed to the tracker. InterSense engineers at the remote computer can run diagnostics software as if the tracker was connected to that computer directly. There are two ways of connecting to the remote host.
3. Call or email InterSense to obtain the Server IP Address. 4. Make sure that protocol selection is set to TCP and port to 5001. If this port is not available, other numbers can be used, provided that InterSense engineer is notified. 5. Enter IP Address and click on Connect button. 6. Watch the message area of the window for status information. 7. If connection is lost prematurely, try to reconnect.
14.6.1. System Errors Some basic system errors and their meanings are listed in the table below. Code Type Message Comments 6401 General Math exception 6402 General 6404 General 010x 020x URS IMU 0205 IMU SOS out of range - check PSE configuration Inconsistent PSE position or obtuse PSE angle URM start/read failed IMU start/read failed IMU read timed out IMU NVRAM read failed Invalid sensor data or bad IMU calibration - if persists contact InterSense.
14.7. Constellation Configuration Tool Constellation Configuration tool is used to configure and manage the Constellation of SoniDiscs. This is the most important part of tracker configuration, as it has a direct effect on quality of tracking. Terminology IS-900 models contain an ultrasonic subsystem that includes SoniDiscs (Ultrasonic Transponder Beacons) and Microphones (URMs).
Mobile PSE configuration is stored in the EPROM of each station and is configured automatically without user input. Constellation, however, is custom for each installation and must be configured before the system can be used. SoniDiscs are available in several types of protective housings, including SoniPods, SoniFrames, SoniWings, and SoniStrips. This Section will focus on the most common form—SoniStrips.
Constellation Menu Retrieve from Tracker ISDEMO requests the current Constellation from the IS-900 base unit and displays the received configuration. Any configuration displayed prior to this command is replaced. Send To Tracker Currently displayed configuration is sent to the tracker. This command is used to apply custom configuration once data entry has been completed. Please note that Constellation editing is done off line, so this step is required.
Insert Grid Menu SoniDiscs in pre-calibrated configurations such as the SoniWing, SoniFrame, and L-Frame can be added to the Constellation with this feature. By selecting one of the three choices, ISDEMO will prompt the user to enter information about the hardware in use. After selecting the proper settings for the hardware you intend to use, ISDEMO will add the associated SoniDiscs to the Constellation. This feature is designed for the IS-1200 and should not be used with the IS-900.
Define Coordinate System Used to specify the exact location of your origin when using a total station to measure the exact XYZ locations of your SoniDiscs. Move Coordinate System Used to move the origin of the coordinate system to a new location. After this menu item is selected, left-click in the display area and while holding the button down, move the mouse. The coordinate system will then move with the mouse. Release the mouse button when satisfied with the location.
Display Menu Start Displaying Data Turns the display on. Configured stations are displayed in green when tracking, or in red if lost. When display is on, SoniDiscs in the Constellation are displayed in green when they are used for tracking or in red, if range measurements received are rejected by the tracker. During normal operation SoniDiscs should never appear red. If they do, Constellation must be examined for configuration errors.
Using the Constellation Graphical Interface to manually configure a Constellation By “right-clicking” your mouse in the constellation window, a list of options to manually configure your constellation appears. Use your mouse to select which SoniStrip/SoniDiscs you would like to manipulate. Remove Removes selected (highlighted in yellow) SoniStrips or SoniDiscs from the Constellation. Inserting SoniStrips 1.
3. Using the mouse move the newly added SoniStrip to the desired position. Moving SoniStrips IS-900 User Guide SoniStrip position and orientation can be changed using the mouse or by using the commands available on the right-click menu. To move with the mouse, select the SoniStrip and drag. Multiple SoniStrips can be selected and moved by keeping the Ctrl or Shift keys pressed while selecting and dragging.
Move SoniStrips (right-click menu) All selected SoniStrips are moved by the specified distance in X, Y and Z dimension. All values are entered in meters. Line-up SoniStrips (right-click menu) This tool changes the orientation of all selected SoniStrips to match one of them. The selection window displays a list of all the currently selected SoniStrips. Choose one and click OK. All selected SoniStrips become parallel.
Set X/Y/Z Spacing (right-click menu) This tool applies a set spacing to the group of selected SoniStrips. Value is entered in meters. The order of the SoniStrips is preserved. For example, when setting up a grid attached to a drop ceiling with 2 foot tiles, enter 0.6096 and click Apply. Light Up SoniDisc (right-click menu) This option is extremely helpful in diagnosing potential cabling and/or configuration problems.
Tools Menu Constellation 3D IS-900 User Guide This tool gives a three dimensional view of the constellation, as well as all tracked devices. Each SoniDisc is drawn with a normal vector and beacon ID number. Use the slide bars to zoom in and rotate the constellation.
The Constellation 3D tool also includes a three dimensional performance tool. This feature will allow and end user to ‘see’ the ultrasonic signal strength under a constellation. For more information on this tool click on ‘About’. Tracking Report Information is gathered about all PSEs. A history of when stations become ‘lost’ and then reacquire is also recorded at the bottom of the file. This report is helpful when a PSE hardware failure is suspected.
Microscribe to be directly in front of the center of the SoniDisc you are mapping. Use the Microscribe foot petal to record the position. ISDEMO will move the SoniDisc to the proper location. You will then need to configure the normal vectors of the SoniDisc using the right-click properties feature. Target Aiming Demo IS-900 User Guide Designed to show the accuracy and repeatability of the tracking system. When the zero point of a station is pointing at a SoniDisc, the color will change.
14.8. RF Scope RF Scope is a tool that uses an InterSense RF analyzer accessory to scan the 2.4 GHz frequency range and display detected signal strength. This is useful to characterize your RF environment , determine if sources of interference exist and identify channels to use with your wireless MicroTrax devices to best avoid those sources of interference. The center frequencies InterSense uses for the 16 available channels range from 2405-2480 MHz in 5 MHz increments as shown in Figure 41.
The upper chart indicates the signal strength in dB at 1 MHz increments across the frequency range (in green). It also shows the maximum signal level detected in each of 16 bins corresponding to the available wireless channels (in red). The yellow lines are a visual aid that jump up to the current levels if higher than the lines and then slowly drift down. The lower chart is a spectrogram or time-frequency plot that displays the average signal level corresponding to each of the 16 channels versus time.
15. Appendix F – GENLOCK Synchronization 15.1. Why Use GENLOCK? GENLOCK synchronization is used to guarantee constant latency between the sampling of the motion tracking sensor and the current image on the display device. Any change in the amount of latency between these two events appears as jitter in orientation when the head is rotating. For typical head rotation rates of 300 degrees/sec, a timing difference of 6.
By choosing to have the data port output occur at one of the earlier numbered phase points, there is a bit more latency, but also more slack to allow for an occasional rendering cycle that just slightly exceeds the allotted 16.7 ms. Figure 43 illustrates the tracker set up to output data at phase point # 3. The timing slack has absorbed this anomaly so that the image is still rendered with the same 1 2/3 frame latency as the frames before it, resulting in no visual glitch.
15.2. Configuring the IS-900 for GENLOCK The default operation of the tracker is free run. That is, the tracker performs updates and, in continuous mode, outputs data records as rapidly as it can. GENLOCK operation causes the tracker to synchronize updates and data record output to an external sync signal or to an internal clock. When external GENLOCK is enabled and a valid sync signal is provided, it may take several seconds to stabilize tracking.
Enabling GENLOCK via Command Send the C command to the tracker to place it in continuous mode. If the tracker is used in polled mode, its internal updates will be synchronized to the sync signal but data record output will not. Send the InterSense-specific GENLOCK command to the tracker. MG[state,[rate]]<> State 0 Genlock off (free run) 1 Reserved—has no effect on the GENLOCK state. 2 Use external sync, strobe rate specified by rate parameter (manual).
Verifying Synchronization To verify GENLOCK is working with the IS-900, check the GENLOCK indicator in the lower-right corner of the LCD on the front panel of the processor. When GENLOCK is on and stable, the indicator displays “G”, otherwise the indicator displays an “X” indicating GENLOCK is enabled but the processor is not synchronized. If “G” or “X” is not displayed, then GENLOCK is off.
16. Appendix G – Developers Instructions For InterSense SDK Version 3.58 or higher. 16.1. Introduction This document describes the interface to be used by the application software to initialize and retrieve data from the InterSense devices using the ISENSE.DLL. This dynamic link library is provided to simplify communications with all models of InterSense tracking devices, including IS-300, IS-600, IS-900, InertiaCube2 and all versions of InterTrax.
16.3. Usage The API provides an extensive set of functions that can read and set tracker configuration, but in its simplest form can be limited to just 4 calls, as shown below: void main() { ISD_TRACKER_HANDLE ISD_TRACKER_INFO_TYPE ISD_TRACKER_DATA_TYPE handle; tracker; data; handle = ISD_OpenTracker( NULL, 0, FALSE, FALSE ); if( handle > 0 ) printf( "\n Az El Rl X Y else printf( "Tracker not found. Press any key to exit" ); Z \n" ); while( !kbhit() ) { if( handle > 0 ) { ISD_GetData( handle, &data );
16.4. API ISD_TRACKER_HANDLE ISD_OpenTracker( HWND hParent, DWORD commPort, Bool infoScreen, Bool verbose ) hParent Handle to the parent window. This parameter is optional and should only be used if information screen or tracker configuration tools are to be used when available in the future releases. All included sample programs pass NULL. commPort If this parameter is a number other than 0, program will try to locate an InterSense tracker on the specified RS232 port.
Bool ISD_GetTrackerConfig( ISD_TRACKER_HANDLE handle, ISD_TRACKER_INFO_TYPE *tracker, BOOL verbose ) Get general tracker information, such as type, model, port, etc. Also retrieves Genlock synchronization configuration, if available. See ISD_TRACKER_INFO_TYPE structure definition for complete list of items. handle Handle to the tracking device. This is the handle returned by ISD_OpenTracker. tracker Pointer to a structure of type ISD_TRACKER_INFO_TYPE. See isense.h for structure definition.
Bool ISD_SetStationConfig( ISD_TRACKER_HANDLE handle, ISD_STATION_INFO_TYPE *station, WORD stationID, BOOL verbose ) Configure station as specified in the ISD_STATION_INFO_TYPE structure. Before this function is called, all elements of the structure must be assigned valid values. General procedure for changing any setting is to first retrieve current configuration, make the change, and then apply them.
Bool ISD_GetData( ISD_TRACKER_HANDLE handle, ISD_TRACKER_DATA_TYPE *data ) Get data from all configured stations. Data is places in the ISD_TRACKER_DATA_TYPE structure. Orientation array may contain Euler angles or Quaternions, depending on the settings of the AngleFormat field of the ISD_STATION_INFO_TYPE structure. TimeStamp is only available if requested by setting TimeStamped field to TRUE. Returns FALSE if failed for any reason. handle Handle to the tracking device.
Bool ISD_BoresightReferenced( ISD_TRACKER_HANDLE handle, WORD stationID, float yaw, float pitch, float roll ) Boresight station using specific reference angles. This is useful when you need to apply a specific offset to system output. For example, if a sensor is mounted at 40 degrees relative to the HMD, you can enter 0, 40, 0 to get the system to output zero when HMD is horizontal. handle Handle to the tracking device. This is the handle returned by ISD_OpenTracker.
16.5. Data Structures 16.5.1. ISD_TRACKER_INFO_TYPE typedef struct { float LibVersion; DWORD TrackerType; DWORD TrackerModel; DWORD Port; DWORD RecordsPerSec; float KBitsPerSec; DWORD SyncState; float SyncRate; DWORD SyncPhase; DWORD Interface; DWORD UltTimeout; DWORD UltVolume; DWORD dwReserved4; float fReserved1; float fReserved2; float fReserved3; float fReserved4; Bool LedEnable; Bool bReserved2; Bool bReserved3; Bool bReserved4; } ISD_TRACKER_INFO_TYPE; LibVersion InterSense Library version.
SyncState Applies to IS-X Series devices only. Can be one of 4 values: 0 - OFF, system is in free run 1 – Unknown State 2 - ON, hardware genlock frequency is specified by the user 3 - ON, no hardware signal, lock to the user specified frequency SyncRate Sync frequency - number of hardware sync signals per second, or, if SyncState is 3 - data record output frequency. SyncPhase The time within the sync period at which a data record is transmitted.
16.5.2. ISD_STATION_INFO_TYPE This data structure is used to get and set station configuration.
drift and maintain stability, but not as an absolute measurement system. In this mode system is much less susceptible to magnetic interference, but heading drift will accumulate. If compass is off, no heading compensation is applied. Older versions of tracker firmware supported only 0 and 1, which stood for ON or OFF. Please use the new notation. This API will correctly interpret the settings. InertiaCube InertiaCube associated with this station. If no InertiaCube is assigned, this number is -1.
Prediction Inertial sensors can predict motion up to 50 ms into the future, which compensates for graphics rendering delays and further contributes to eliminating simulator lag. Supported by IS-300, IS-600, IS-900 and InertiaCube2. Not available for the InterTrax. AngleFormat ISD_EULER or ISD_QUATERNION. The Euler angles are defined as rotations about Z, then Y, then X in body frame. Angles are returned in degrees. Default is ISD_EULER. TimeStamped TRUE if time stamp is requested, default is FALSE.
16.5.3. ISD_STATION_STATE_TYPE This data structure is used to return current data for a station, including position, orientation, time stamp, button and analog channel state.
Orientation Orientation in Euler or Quaternion form, depending on the setting of AngleFormat in ISD_STATION_INFO_TYPE structure. Euler angles are returned in degrees. Position Station position in meters. TimeStamp Only if requested, in seconds. ButtonState Only if requested. AnalogData Only if requested. Current hardware is limited to 10 channels, only 2 are used. The only device using this is the IS-900 wand that has a built-in analog joystick. Channel 1 is x-axis rotation, channel 2 is y-axis rotation.
17. Appendix H – Interface Protocol Commands – Quick Reference For further detail, see: Section 8.2 Standard Fastrak™ Interface Commands, pages 61-69. Section 8.3 Fastrak™ Commands Implemented for Compatibility, page 69. Section 8.4 InterSense specific Commands, pages 69-77.
Output record list settings O{stationNum},[p1],[p2],[p3],.....