Thales Visionix 9SMLW Ultrasonic Tracking Device User Manual Version 2 2
Thales Visionix, Inc. Ultrasonic Tracking Device Version 2 2
User Manual.pdf
User Guide IS-900 SimTracker, SimTracker LT, & VETracker with MicroTraxTM Devices 2014 Thales Visionix, Inc. 700 Technology Park Drive, Suite 102 Billerica, MA 01821 USA Phone +1 781 541 6330 • Fax +1 781 541 6329 www.intersense.com Doc. No. 072-00105-0I07 Revision 4.2 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 User Guide for the IS-900 SimTracker, SimTracker LT, & VETracker Firmware 4.29 and higher DLL Version 4.237 and higher Contacting InterSense Please contact us if you need assistance. Thales Visionix, Inc. 700 Technology Park Drive, Suite 102 Billerica, Massachusetts 01821 USA Telephone: Fax: Technical Support: Sales: +1 781 541 6330 +1 781 541 6329 +1 781 541 7624 +1 781 541 7650 Internet: email: email: email: http://www.intersense.com ISinfo@intersense.com techsupport@intersense.com sales@intersense.com Patents The label below identifies the protection granted by the Government of the United States to InterSense for its products: U.S. Patents 5645077, 5807284, 6162191, 6176837, 6314055, 6361507, 6409687, 6474159, 6681629, 6757068, 6786877, 6922632, 700469 and Patents Pending Trademarks InterSense™, InertiaCube™, InertiaCube2™, SoniDisc™, SoniStrip™, SoniFrame™, SoniPod™, IS-900™, VETracker™, SimTracker™, ISDEMO™, GEOS™, PULSAR™, CONSTELLATION™, MicroTrax™ are trademarks of Thales Visionix, Inc. All other trademarks are the property of their respective owners. Copyright 2013 Thales Visionix, Inc. IS-900 User Guide Page 2 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Regulatory Statements and Approvals FCC Compliance Statement for SimTracker and VETracker Systems This device complies with part 15 of the FCC Rules. Operation is subject to the following two conditions: (1) This device may not cause harmful interference, and (2) this device must accept any interference received, including interference that may cause undesired operation. Warning This is a Class A product. In a domestic environment this product may cause radio interference in which case the user may be required to take adequate measures. Note: this equipment has been tested and found to comply with the limits for a Class A digital device, pursuant to part 15 of the FCC Rules. These limits are designed to provide reasonable protection against harmful interference when the equipment is operated in a commercial environment. This equipment generates, uses, and can radiate radio frequency energy and, if not installed and used in accordance with the instruction manual, may cause harmful interference to radio communications. Operation of this equipment in a residential area is likely to cause harmful interference in which case the user will be required to correct the interference at his own expense. Important: Changes or modifications to this product not authorized by InterSense, Inc. could void the EMC compliance and negate your authority to operate the product. This product was tested for EMC compliance under conditions that included the use of InterSense peripheral devices and InterSense cables and connectors between system components. It is important that you use InterSense peripheral devices, cables, and connectors between system components to reduce the possibility of causing interference to radios, TV sets, and other electronic devices. You can obtain InterSense peripheral devices, cables, and connectors from InterSense or through an InterSense Authorized Reseller. Responsible party (contact for FCC matters): Thales Visionix, Inc. 700 Technology Park Drive, Suite 102 Billerica, MA 01821 Industry Canada Statement This Class A digital apparatus complies with Canadian ICES-003. Cet appareil numérique de la classe A est conforme à la norme NMB-003 du Canada. European Community Products with the below CE marking comply with the directives issued by the Commission of the European Community. IS-900 User Guide Page 3 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 FCC Compliance Statement for SimTracker LT Systems This equipment has been tested and found to comply with the limits for a Class B digital device, pursuant to Part 15 of the FCC Rules. These limits are designed to provide reasonable protection against harmful interference in a residential installation. This equipment generates uses and can radiate radio frequency energy and, if not installed and used in accordance with the instructions, may cause harmful interference to radio communications. However, there is no guarantee that interference will not occur in a particular installation. If this equipment does cause harmful interference to radio or television reception, which can be determined by turning the equipment off and on, the user is encouraged to try to correct the interference by one of the following measures: - Reorient or relocate the receiving antenna. - Increase the separation between the equipment and receiver. - Connect the equipment into an outlet on a circuit different from that to which the receiver is connected. - Consult the dealer or an experienced radio/TV technician for help. This device complies with Part 15 of the FCC Rules. Operation is subject to the following two conditions: (1) This device may not cause harmful interference, and (2) this device must accept any interference received, including interference that may cause undesired operation. FCC Caution: Any changes or modifications not expressly approved by the party responsible for compliance could void the user's authority to operate this equipment. To comply with FCC’s and Industry Canada’s RF radiation exposure limits for general population/uncontrolled exposure, the antenna(s) used for this transmitter must be installed to provide a separation distance of at least 20 cm from all persons and must not be collocated or operating in conjunction with any other antenna or transmitter. This device complies with Industry Canada licence-exempt RSS standard(s). Operation is subject to the following two conditions: (1) this device may not cause interference, and (2) this device must accept any interference, including interference that may cause undesired operation of the device. Le présent appareil est conforme aux CNR d'Industrie Canada applicables aux appareils radio exempts de licence. L'exploitation est autorisée aux deux conditions suivantes : (1) l'appareil ne doit pas produire de brouillage, et (2) l'utilisateur de l'appareil doit accepter tout brouillage radioélectrique subi, même si le brouillage est susceptible d'en compromettre le fonctionnement. Under Industry Canada regulations, this radio transmitter may only operate using an antenna of a type and maximum (or lesser) gain approved for the transmitter by Industry Canada. To reduce potential radio interference to other users, the antenna type and its gain should be so chosen that the equivalent isotropically radiated power (e.i.r.p.) is not more than that necessary for successful communication. Conformément à la réglementation d'Industrie Canada, le présent émetteur radio peut fonctionner avec une antenne d'un type et d'un gain maximal (ou inférieur) approuvé pour l'émetteur par Industrie Canada. Dans le but de réduire les risques de brouillage radioélectrique à l'intention des autres utilisateurs, il faut choisir le type d'antenne et son gain de sorte que la puissance isotrope rayonnée équivalente (p.i.r.e.) ne dépasse pas l'intensité nécessaire à l'établissement d'une communication satisfaisante. IS-900 User Guide Page 4 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Warnings and Precautionary Statements Any changes or modifications to the IS-900 SimTracker/VETracker, MicroTrax Tracking Devices and other components of the IS-900 System not expressly approved by InterSense will void the warranty and any regulatory compliance issued for the system. This could also void the user’s authority to operate the equipment. MicroTrax device microphones are susceptible to ESD and may require power cycling to recover from communication failure. Do not drop or otherwise shock the tracking devices for they can be permanently damaged. Do not bend, twist, pull strongly or tamper in any way with any part of the cabling. Take care to avoid electric shocks. Do not plug-in or unplug the power cable with wet hands. Please see Appendix C for Health and Safety warnings and guidelines Wireless Devices This device contains a Lithium Ion battery that should only be used with the following warnings and precautions. • Avoid short circuits • Do not dispose of the battery in fire • Do not heat the batteries above 60°C • Do not solder directly to the batteries • Do not charge above 4.2V • Do not charge below 0°C or above 45°C • Do not discharge below 2.7V • Do not discharge below 20°C or above 60°C • Do not insert the batteries in reverse polarity Warning: Fire, Explosion, and Severe Burn Hazard IS-900 User Guide Page 5 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Equipment Design: • To avoid damage to the battery pack, make sure that the battery pack is positioned away from heat sources in the equipment. • If the battery pack is designed into other equipment, use caution to strictly avoid designing airtight battery compartments. When using the battery Misusing the battery may cause the battery to get hot, explode, or ignite and cause serious injury. Be sure to follow the safety rules listed below: Do not place the battery in fire or heat the battery. Do not pierce the battery with nails, strike the battery with a hammer, step on the battery, or otherwise subject it to strong impacts or shocks. Do not expose the battery to water or salt water or allow the battery to get wet. Do not disassemble or modify the battery. The battery contains safety and protection devices, which, if damaged, may cause the battery to generate heat, explode or ignite. Do not place the battery on or near fires, stoves, or other high-temperature locations. Do not place the battery in direct sunshine, or store the battery inside cars in hot weather. Doing so may cause the battery to generate heat, explode, or ignite. Using the battery in this manner may also result in the loss of performance and shortened life expectancy. When the battery will no longer hold a charge, contact InterSense for servicing options. Do not exchange with any other battery. Immediately discontinue use of the battery if, while using, charging or storing the battery the battery emits an unusual smell, feels hot, changes color, changes shape or appears abnormal in any other way. Contact InterSense if any of these problems have been observed. Do not place the batteries in microwave ovens, high-pressure containers, or on induction cookware. In the event that the battery leaks and fluid gets into one’s eye, do not rub the eye. Rinse well with water and immediately seek medical care. If left untreated the battery fluid could cause damage to the eye. IS-900 User Guide Page 6 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 While charging the battery Follow the rules listed below while charging the battery. Failure to do so may cause the battery to become hot, explode, or ignite and cause serious injury. • When charging the battery use only InterSense’s charging station (10091000-EWBS) or individual device charger (099-00076-0000) Note: * means that the suffix is U, E or K depending on voltage requirements of your country. • Do not place the batteries in or near fire, or into direct sunlight. When the battery becomes hot, the built in safety equipment is activated, preventing the battery from charging further. Over-heating the battery can destroy the safety equipment and can cause additional heating, breaking or ignition of the battery. Do not continue charging the battery if it does not recharge within the specified charging time. Doing so may cause the battery to become hot, explode or ignite. The temperature range over which the battery can be charged is 0 degrees Celsius to 45 degrees Celsius. Charging the battery at temperatures outside of this range may cause the battery to become hot or to break. Charging the battery outside this temperature range may also harm the performance of the battery or reduce the battery’s life expectancy. When discharging the battery Do not discharge the battery using any devices except for the specified device. When the battery is used in devices aside from the specified device, it may damage the performance of the battery or reduce its life expectancy, and if the device causes an abnormal current to flow, it may cause the battery to become hot, explode or ignite and cause serious injury. The temperature range over which the battery can be discharged is –20 degrees Celsius to 60 degrees Celsius. Use of the battery outside of this temperature range may damage the performance of the battery or may reduce its life expectancy. General Warnings & Precautionary Statements Do not drop or otherwise shock the tracking devices for they can be permanently damaged. Do not plug in any devices while the electrical power is applied. Any changes or modifications to the IS-900 not expressly approved by Thales Visionix, Inc. will void the warranty and any regulatory compliance issued for the system. IS-900 User Guide Page 7 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Do not bend, twist, pull strongly or tamper in any way with any part of the IS-900 cabling. Take care to avoid electric shocks. Do not plug-in or unplug the power cable with wet hands. During normal operation, the user should not make contact with the metal surfaces, including the microphone housings and the connector hood, of the tracking stations. Such contact could result in invalid data or a tracker reset. Please see the section titled Health and Safety Warnings and Guidelines Radio System Information These devices contain a commercially available 900 MHz or 2.4 GHz non-frequency hopping wireless data communication link. The wireless link is intended for use in normal commercial applications. Applications requiring extended temperature range or unusual environmental requirements such as military, medical life-support or life-sustaining equipment are specifically not recommended without additional testing for such applications. The following devices: • IS-900 MicroTrax Wireless Transmitter part number 100-91000-EWTX: 2.4 GHz part number 100-91900-EWTX: 900 MHz These devices, with their antenna, comply with FCC’s RF radiation exposure limits set forth for an uncontrolled environment. To maintain compliance, they must not be co-located or operate in conjunction with any other antenna or transmitter. Complies with Part 15 of the FCC Rules. Operation is subject to the following two conditions: 1. These devices may not cause harmful interference 2. These devices must accept any interference received, including interference that may cause undesired operation. IS-900 User Guide Page 8 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 The following devices: • • 2.4 GHzo IS-900 MicroTrax Wireless Wand (part number 100-91000-EWWD) IS-900 16 Channel Receiver (part number 100-IS9MW-RX16) SimTracker LT (part number 100-9SMLW-0020) 900 MHz IS-900 MicroTrax Wireless Wand (part number 100-91900-EWWD) IS-900 10 Channel Receiver (part number 100-91900-EWRX) SimTracker LT (part number 100-9SMLW-0090) This device complies with FCC’s RF radiation exposure limits set forth for an uncontrolled environment. It should be installed and operated such that; a minimum separation distance of 20cm is maintained between the radiator (antenna) & user’s/nearby people’s body at all times. This device must not be co-located or operating in conjunction with any other antenna or transmitter. Comply with Part 15 of the FCC Rules. Operation is subject to the following two conditions: 3. These devices may not cause harmful interference 4. These devices must accept any interference received, including interference that may cause undesired operation. IS-900 User Guide Page 9 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Table of Contents 1. System Description ................................................................................................................ 13 1.1. IS-900 Configuration ....................................................................................................... 14 1.2. IS-900 SimTracker & VETracker Processor ................................................................... 15 1.3. SoniStrips, SoniFrame, SoniWing & SoniPod acoustic pulse transmitters ..................... 16 1.4. Acoustic Constellation Mounting Considerations ............................................................ 17 1.4.1. SoniFrame & SoniWing Fixed Constellations .......................................................... 17 1.4.2. SoniPods .................................................................................................................. 18 1.5. Tracking Station Description ........................................................................................... 18 1.5.1. MicroTrax Wand with Joystick ................................................................................. 20 1.5.2. MicroTrax Head Tracker .......................................................................................... 21 1.5.3. MicroTrax Docking Station ....................................................................................... 22 1.5.4. MicroTrax Hand Tracker .......................................................................................... 23 1.5.5. Wireless MicroTrax Modules ................................................................................... 24 1.5.6. OEM Tracking Devices ............................................................................................ 24 1.6. IS-900 Cables, Connectors, Adaptors, Power Boosters and Wireless Radios ............... 25 1.6.1. Wired System ........................................................................................................... 25 1.6.2. Wireless System ...................................................................................................... 28 1.6.3. All Systems .............................................................................................................. 30 1.7. IS-900 Support CD .......................................................................................................... 31 2. Specifications ......................................................................................................................... 32 2.1. Performance Specifications ............................................................................................ 32 2.2. Physical Specifications .................................................................................................... 33 2.3. Environmental Specifications .......................................................................................... 34 3. Installation and Set-up ............................................................................................................ 34 3.1. InterSense Coordinate Reference Frame ....................................................................... 36 3.2. Hardware Set-up ............................................................................................................. 37 3.3. Installation of SoniStrips .................................................................................................. 38 3.3.1. SoniStrip Mounting for Ceiling Installations ............................................................. 41 3.3.2. SoniStrip Mounting for Power Wall Installations ...................................................... 42 3.3.3. SoniStrip Mounting for CAVE-like Installations ........................................................ 43 3.3.4. SoniFrame and SoniWing ........................................................................................ 44 3.4. Measurement and Calibration of SoniStrips ................................................................... 44 3.5. Connections with IS-900 Processor ................................................................................ 47 3.6. Wireless MicroTrax Setup ............................................................................................... 48 3.6.1. Wireless Device Types ............................................................................................ 48 3.6.2. Receiver Sharing (900 MHz) ................................................................................... 49 3.6.3. Wireless Device Configuration ................................................................................. 49 3.6.4. Checking the installation .......................................................................................... 54 3.6.5. Loading the Constellation File ................................................................................. 55 3.6.6. Using Wireless MicroTrax Devices .......................................................................... 61 4. Interface Communication Protocol ......................................................................................... 63 4.1. Commands Sent from the Host to the Tracker ............................................................... 63 4.2. Standard Fastrak™ Interface Commands ..................................................................... 63 4.3. Fastrak™ Commands Implemented for Compatibility .................................................... 71 4.4. InterSense specific Commands ...................................................................................... 71 4.4.1. System Configuration Commands ........................................................................... 72 4.4.2. InterSense-specific Station Parameters .................................................................. 75 4.4.3. Station and Constellation Configuration Commands ............................................... 77 4.5. Records Returned from the Tracker to the Host ............................................................. 80 4.5.1. Format Considerations............................................................................................. 80 4.5.2. Status Record Hexadecimal Character Decoding ................................................... 80 4.5.3. Fastrak™ System and Data Records ...................................................................... 81 4.5.4. InterSense-specific Records .................................................................................... 86 IS-900 User Guide Page 10 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 4.5.5. Records Specific to IS-900 Models .......................................................................... 88 LCD Status & Settings Screen ............................................................................................... 90 5.1. Overview ......................................................................................................................... 90 5.2. Normal Operation (Steady State) .................................................................................... 91 5.3. IS-900 LCD Menu Flow Chart ......................................................................................... 95 6. Appendix A – Frequently Asked Questions ............................................................................ 96 7. Appendix B – Troubleshooting & Tips .................................................................................... 98 8. Appendix C – Health & Safety Warnings with Tracker Use Guidelines ............................... 101 9. Appendix D – Care & Maintenance ...................................................................................... 103 10. Appendix E – ISDEMO Reference ................................................................................... 104 10.1. Getting Started .......................................................................................................... 104 10.2. File Options ............................................................................................................... 108 10.3. Communications Options .......................................................................................... 109 10.4. Parameter Options .................................................................................................... 112 10.4.1. Wireless Configuration window .......................................................................... 117 10.5. Display Options ......................................................................................................... 119 10.6. Tool Options .............................................................................................................. 120 10.7. Constellation™ Configuration Tool ............................................................................ 128 10.8. RF Scope ................................................................................................................... 142 11. Appendix F – GENLOCK Synchronization ....................................................................... 144 11.1. Why Use GENLOCK? ............................................................................................... 144 11.2. Configuring the IS-900 for GENLOCK....................................................................... 146 12. Appendix G – Developers Instructions ............................................................................. 149 12.1. Introduction ................................................................................................................ 149 12.2. Sample Program ........................................................................................................ 149 12.3. Usage ........................................................................................................................ 150 12.4. API ............................................................................................................................. 151 12.5. Data Structures .......................................................................................................... 161 12.5.1. ISD_TRACKER_INFO_TYPE ............................................................................ 161 12.5.2. ISD_STATION_INFO_TYPE .............................................................................. 163 12.5.3. ISD_TRACKING_DATA_TYPE .......................................................................... 167 12.5.4. ISD_HARDWARE_INFO_TYPE ........................................................................ 171 12.5.5. ISD_STATION_HARDWARE_INFO_TYPE....................................................... 173 12.5.6. ISD_PORT_WIRELESS_INFO_TYPE............................................................... 174 13. Appendix H – Interface Protocol Commands – Quick Reference .................................... 175 5. IS-900 User Guide Page 11 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Table of Figures Figure 1 - IS-900 Functional Diagram ........................................................................................... 14 Figure 2 - IS-900 SimTracker Processor ....................................................................................... 15 Figure 3 - IS-900 VETracker Processor ........................................................................................ 15 Figure 4 - IS-900 SoniStrips .......................................................................................................... 16 Figure 5 - IS-900 SoniWing ........................................................................................................... 16 Figure 6 - IS-900 SoniFrame with three 6 ft. SoniStrips Assembled and Mounted on a Ceiling .. 16 Figure 7 - Discrete SoniDisc Transmitter (SoniPod) ..................................................................... 17 Figure 8 - IS-900 Tracked Stations................................................................................................ 18 Figure 9 - MicroTrax Wand ............................................................................................................ 20 Figure 10 - MicroTrax Head Tracker ............................................................................................. 21 Figure 11 - MicroTrax Docking Station .......................................................................................... 22 Figure 12 - MicroTrax Hand Tracker ............................................................................................. 23 Figure 13 - Wired IS-900 and MicroTrax Cables, Connectors and Adapters ................................ 25 Figure 14 - Wireless IS-900 and MicroTrax Cables, Connectors and Adapters ........................... 28 Figure 15 - SoniStrip Power Booster (Optional) ............................................................................ 30 Figure 16 - InterSense Coordinate Reference Frame ................................................................... 36 Figure 17 - Unit Normal Vector Definition for Ceiling Installed SoniStrip ...................................... 38 Figure 18 - Tracking Coverage with Two SoniStrips ..................................................................... 39 Figure 19 - Immersive Room Ceiling Mounting (top down view) ................................................... 41 Figure 20 - Power Wall Perimeter mounting (front forward view) ................................................. 42 Figure 21 - CAVE-like Installation (top down view) ....................................................................... 43 Figure 22 - External Power Booster for SoniStrips ........................................................................ 48 Figure 23 - Configuration Script Menu for loading SoniStrip Constellation array file .................... 55 Figure 24 - Configuration Script File Menu .................................................................................... 56 Figure 25 - Sending Configuration Script to Tracker ..................................................................... 56 Figure 26 - Constellation Tool Selection ....................................................................................... 57 Figure 27 - Checking installed SoniStrip Constellation Array ........................................................ 57 Figure 28 - ISDEMO Constellation Tool Screen for Ceiling Mount Power Wall Applications ....... 58 Figure 29 - ISDEMO Constellation Tool Screen for Wall Mount Power Wall Applications ........... 58 Figure 30 - ISDEMO Constellation Tool Screen for CAVE-like Applications ................................ 58 Figure 31 - ISDEMO Constellation Tool Screen with Tracking Devices ....................................... 59 Figure 32 - Tracking Status Display on IS-900 LCD Panel ........................................................... 59 Figure 33 - Saving All Configuration Settings to IS-900 Processor ............................................... 60 Figure 34 - Locking Configuration Settings in IS-900 Processor .................................................. 60 Figure 35 - IS-900 LCD Status & Settings Screen ........................................................................ 90 Figure 36 - LCD Panel in Normal Display Mode (Tracking One Station) ...................................... 91 Figure 37 - Status Display of Additional Tracking Stations ........................................................... 91 Figure 38 - Rejected Measurement Status for Tracking Station 1 ................................................ 92 Figure 39 - Communication Integrity Status for a Wired Tracking Station 1 ................................. 93 Figure 40 - Tracking Quality Status for a Wired Tracking Station 1 .............................................. 93 Figure 41 - IS-900 LCD Menu Flow Chart ..................................................................................... 95 Figure 42 - Timing Diagram: IS-900 Interfaced to PC with 60 Hz Display Refresh .................... 144 Figure 43 - Timing Diagram: IS-900 Adjusted with Proper Phase for 60 Hz Display Refresh ... 145 Figure 44 - Back Panel of IS-900, SYNC IN is External GENLOCK Input .................................. 146 IS-900 User Guide Page 12 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 1. System Description The IS-900 product family delivers precision motion tracking technology for simulators, training, virtual, and immersive display systems. The IS-900, designed for dedicated, precision 6 degree of freedom (6-DOF) motion tracking for both small tracking area simulators and large area virtual environments. This manual covers two IS-900 product configurations – the IS-900 SimTracker (Simulation Tracker) and the IS-900 VETracker (Virtual Environment Tracker). The SimTracker is ideal for smaller 3D environments such as cockpit or desktop simulators while the VETracker is ideal for TM large immersive 3D environments. This manual also covers the wireless MicroTrax devices for the IS-900 System. Please note that custom configurations are also available. The IS-900 product design provides a great deal of flexibility for OEM configurations. While the specific configuration of your IS-900 system may vary from the SimTracker and VETracker standard products, the fundamental set-up, calibration, and operation principles remain the same as described in this manual. The system operates on hybrid technology combining inertial and ultrasonic tracking. The output of the miniature inertial components (both accelerometers and gyros found in each tracking device) determines position and orientation of the tracking stations. Using advanced Kalman filters, constant drift correction is applied by fusing the output of the inertial sensors with range measurements obtained from the ultrasonic components. The result is full 6-DOF data that is very smooth, precise, and free from jitter. Advantages of the IS-900 technology include: • • • • • • • Low cost system utilizes IS-900 technology for small area tracking Immune to metallic, most acoustic, and optical interference Sensor design eliminates acoustic transmitter “line of sight” blockage Consistent accuracy over entire tracking volume Factory calibration configurations available for accurate position mapping of acoustic transmitters Superior motion prediction algorithms Integration of tracking devices into OEM applications Wireless MicroTraxTM Devices TM The MicroTrax wireless tracker options for the IS-900 system allow for untethered 6 degree of freedom (6-DOF) tracking. They can also be used along with wired tracking devices. The radio/battery modules have lithium polymer batteries with enough capacity to provide 6-8 hours of continuous use and can be fully recharged in 3 hours. The Transmitter Modules have a processor that detects if the unit has not moved within 10 minutes and will automatically stop tracking and turn itself off to extend the battery life / tracking time. The device monitors the battery voltage and has an indicator that will flash to indicate a low battery condition at approximately 1 hour of tracking left before the unit must be recharged. The batteries can be recharged about 500 times before the length of time the charge lasts starts to decline. The batteries are field replaceable when charge cycle deterioration renders them ineffective. The MicroTrax Docking Station allows you to recharge your wireless devices and spare batteries in-situ via contacts while they rest in the cradle. The MicroTrax devices use a 2.4 GHz or 900 MHz non-frequency hopping spread spectrum radio module. The 2.4 GHz allows up to 16 different channel selections while the 900 MHz allows up to 10 channels. IS-900 User Guide Page 13 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 1.1. IS-900 Configuration As shown in the block diagram in Figure 1, the IS-900 offers a wide range of tracking options. InterSense’s SensorFusion code for calculating the full 6-DOF tracking solution is performed by the dedicated IS-900 processor. The MicroTrax tracking devices and SoniStrips plug into the serial interface ports and the IS-900 processor interfaces directly to a host computer via RS-232 serial port or Ethernet. The IS-900 SimTracker supports a maximum of 4 MicroTrax devices and 12 SoniStrips (36 SoniDisc ultrasonic emitters). The IS-900 VETracker supports a maximum of 7 MicroTrax devices and up to 42 SoniStrips (126 SoniDiscs) on an interface port. The VETracker can also be configured to support 7 MicroTrax devices and up to 84 SoniStrips split between two interface ports (42 SoniStrips or 126 SoniDiscs per port). InterSense IS-900 SimTracker & VETracker Functional Block Diagram ENTER F1 F2 LCD Display with Buttons PORT1 PORT2 PORT3 PORT4 PORT5 PORT6 PORT7 PORT8 LED Display of Active Ports IS-900 SimTracker or IS-900 VETracker Processor AC Power & Switch RS-232 Port Ethernet Port ETH Host Tracker and SoniStrip Ports* PORT1 PORT2 PORT3 PORT4 PORT5 PORT6 PORT7 PORT8 SoniStrip SoniStrip SoniStrip - IS-900 SimTracker supports up to 12 SoniStrips (36 SoniDiscs) MicroTrax Device Host Computer or Graphics Processor MicroTrax Device - IS-900 VETracker supports up to 42 SoniStrips (126 SoniDiscs per port) & up to 84 SoniStrips per system (252 SoniDiscs) - IS-900 VETracker requires an in-line Power Booster for every 12 SoniStrips. *NOTE: IS-900 SimTracker Supports only five Tracker/SoniStrip Ports Figure 1 - IS-900 Functional Diagram IS-900 User Guide Page 14 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 The IS-900 SimTracker and VETracker work with all of InterSense’s standard wired & wireless MicroTrax devices (Head Tracker and Wand) plus several specialized devices developed for OEM applications (Helmet Tracker, NVIS Virtual Binoculars & HMD, plus others). Note that some early versions of InterSense’s devices are not compatible with the SimTracker & VETracker components. Please check with InterSense Technical Support (techsupport@intersense.com) to see if upgrades are required if you plan to use previously purchased devices with the IS-900 SimTracker or VETracker system. 1.2. IS-900 SimTracker & VETracker Processor The IS-900 Processor uses specialized firmware running on a dedicated processor to control motion sensor data acquisition and then calculate tracking and related data for output over serial or Ethernet interfaces. Shown in Figure 2, the SimTracker Processor has five front panel LEDs which indicate active ports during normal operation. Shown in Figure 3, the VETracker Processor has eight front panel LEDs to indicate active ports. Both processor configurations have a front panel LCD display and selection buttons for checking and changing tracking system parameters. The tracking device, SoniStrip, Ethernet, host computer, and power connectors are accessed from the rear panel (described in detail in Section 3). Figure 2 - IS-900 SimTracker Processor Figure 3 - IS-900 VETracker Processor IS-900 User Guide Page 15 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 1.3. SoniStrips, SoniFrame, SoniWing & SoniPod acoustic pulse transmitters The SoniStrips (Figure 4), SoniWing (Figure 5), SoniFrame (Figure 6) and SoniPods (Figure 7) have ultrasonic SoniDisc transmitters that receive addressed signals from the Base Processor Unit and transmit ultrasonic pulses in response. The acoustic transmission beam width for each SoniDisc is adjusted for wide-angle coverage (approx. 70-degree cone angle) to maximize the tracking area. Figure 4 - IS-900 SoniStrips Figure 5 - IS-900 SoniWing Figure 6 - IS-900 SoniFrame with three 6 ft. SoniStrips Assembled and Mounted on a Ceiling IS-900 User Guide Page 16 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Figure 7 - Discrete SoniDisc Transmitter (SoniPod) The IS-900 uses an acoustic time-of-flight (TOF) ranging system to prevent position and orientation drift. For maximum accuracy and resolution, acoustic range measurements are made with unidirectional TOF measurements from the SoniStrip transmitters to the Tracked Stations. The SoniDiscs’ acoustic pulses are detected by miniature microphones integrated in the Tracked Stations. Details of the assembly and set up of the SoniFrame and SoniWing are found in a supplemental manual in your IS-900 product CD. 1.4. Acoustic Constellation Mounting Considerations The IS-900 product family offers a wide range of options to meet the needs of many different tracking environments. SoniStrips are normally mounted from the ceiling over the desired tracking workspace. To increase the flexibility of this system, the IS-900 has been designed with different sized SoniStrips for mounting in a variety of immersive environments. The user is able to position SoniStrips in most environments, including confined spaces such as virtual workbenches, automobiles, and cockpit simulators. Once installed, the user must calibrate the SoniStrip Constellation by measuring the Cartesian X, Y, Z coordinates of each SoniStrip and enter this information using the Constellation Configuration Utility Program provided with the system. A trained technical representative should perform the process of calibration. InterSense provides installation services and training upon request. Adjusting the tracking volume is easily accomplished by selecting the appropriate ultrasonic Constellation components. Options include different sized SoniStrips, discrete SoniPods and precalibrated SoniFrame or SoniWing structures. 1.4.1. SoniFrame & SoniWing Fixed Constellations The fixed frame SoniFrame assembly provides up to a 2 x 2 x 3 meter tracking volume with no special sighting or calibration of the SoniStrips. The three SoniStrips easily mount to the SoniFrame assembly to produce a repeatable rigid structure that is portable and convenient to use. The SoniFrame provides a quick and convenient method for setting the IS-900’s tracking area that does not require optical sighting for calibration. The aluminum frame is made from a standard extrusion product that when assembled properly will provide an accurate mounting platform for InterSense’s ultrasonic SoniStrip and SoniDisc tracking referencing components. IS-900 User Guide Page 17 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 The design of the Fixed Frame provides mechanical mounting options for all InterSense SoniStrips in all lengths (2-foot, 4-foot and 6-foot) and combinations. Figure 6 shows a typical SoniFrame fully assembled and ceiling mounted with three 6 ft. SoniStrips. Interconnect bars are available to assemble multiple SoniFrames together as one structure. NOTE: When using multiple SoniFrames connected with InterSense’s interconnect bars, the fully assembled & interconnected frames must be mounted to a rigid structure (i.e. a lighting grid or ceiling structure). Furthermore, the mounted SoniFrames must be leveled and coplanar in order to achieve accurate tracking. The SoniWing is a smaller fixed frame assembly ideal for cockpit simulators or desktop tracking applications. The SoniWing, like the SoniFrame, does not require special measurement or calibration. The exact location of the SoniDiscs has been pre-measured by InterSense and is included in the ISDEMO Constellation Tool utility program provided with the system. As with SoniFrames, multiple SoniWings can be utilized with a single system (i.e. a dual cockpit flight simulator configuration can use two SoniWings to simultaneously track two pilot head positions). 1.4.2. SoniPods The SoniPod is a discrete SoniDisc packaged in its own enclosure with mechanical and electrical interfaces. SoniPods provide the most flexible Constellation configuration option for closed spaces, cockpits, or spaces that do not offer simple mounting spaces for fixed frames or SoniStrips. Each SoniPod is connected by “daisy chain” to the next with one cable from the IS900 processor. It is highly recommended that InterSense installation engineers are consulted for configuration, installation and calibration of an IS-900 SoniPod Constellation array. 1.5. Tracking Station Description For InterSense motion tracking systems, a “station” is the tracked object or device, which by industry jargon may also be called a sensor or tracker. An IS-900 tracks all stations in a 6-DOF mode, meaning each tracked device outputs X, Y, Z position information along with a pitch, yaw and roll orientation information. In addition, the Wand Tracking Station output joystick and button information for use with the immersive environment software. Figure 8 summarizes InterSense’s IS-900 Tracking Stations. Tracked Station MicroTrax Wand w/ Joystick Tracking Station MicroTrax Head Tracking Station MicroTrax Hand Tracking Station MicroTrax OEM Tracking Stations Figure 8 - IS-900 Tracked Stations Function Five button with center push button joystick Stereo glasses and Head Mounted Display (HMD) mounted Mounted to user’s hand Specific to OEM application Each tracked station sends inertia measurement unit (IMU) data (angular & acceleration rates) with Ultrasonic Receiver Module (URM) acoustic range data for transmission to IS-900 base processor via wired or wireless links. InterSense provides the different types of tracked stations listed above for use in immersive environments. All of these tracked stations use InterSense’s advanced inertial MicroTrax technology combined with miniaturized digital acoustic position referencing components. IS-900 User Guide Page 18 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 In addition to InterSense’s standard tracked stations, there are also new OEM devices being delivered with some IS-900 systems that integrate the IS-900 technology into custom 3rd party tracked stations. IS-900 systems shipped with 3rd party devices come with documentation specific to these devices. All of InterSense’s MicroTrax tracking devices can be configured with a wireless transmitter & receiver for unencumbered tracking over larger areas. The following sections summarize all of the options available from your local reseller or InterSense. IS-900 User Guide Page 19 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 1.5.1. MicroTrax Wand with Joystick Figure 9 - MicroTrax Wand The MicroTrax Wand with center-click Joystick (Figure 9) is a tracked device that provides a simple and convenient way for the user to interact with virtual environments. There are four miniature acoustic receiver microphones integrated into the MicroTrax Wand. During operation, all four miniature microphones are sampling the ultrasonic signals. Based on the trackers position with respect to ultrasonic Constellation array, only signals from the two best microphones are used for combination with the inertial data and calculation of the 6-DOF output. Each miniature receiver microphone has a reception cone angle approaching 180°. With two pairs of microphones located on the top and bottom of the MicroTrax Wand, the wand will consistently track over a full 360° range of motion in all axes while under the active Constellation array. The Wand will continue to track during brief (less than 1 minute) occlusion of one of the two active microphones. Each of the five buttons (four on top and one below plus sixth button on the joystick can be accessed from the IS-900 data stream by calling the output record Data Item 22. The two axis analog joystick provides an easy “fly-through” navigation interface used in most immersive virtual environments. The access to joystick data comes by calling the output record Data Item 23. The device powers on by pressing the left button for ~ 3seconds. The unit will auto-off after 10 minutes of no movement to preserve battery power. To shut the unit off, press the left button and right button simultaneously (pressing the left button for ~ 1 minute will also power off the device). Details of format, definition, and programming your application to use the buttons and joystick can be found in Section 4. IS-900 User Guide Page 20 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 1.5.2. MicroTrax Head Tracker Figure 10 - MicroTrax Head Tracker The MicroTrax Head Trackers (Figure 10) are tracked devices that provide accurate 6-DOF data needed to give the user a correct visual viewpoint in an immersive visual environment. The MicroTrax head tracker is suitable for use in both projected (Simulators, CAVE®s, PowerWalls, etc…) and head worn (HMDs) application where head tracking is required. The device can be used wired, or wirelessly. When wired, the head tracker connects to the MicroTrax TTL-RS422 Dongle. When used in a wireless configuration the head tracker connects to the MicroTrax Wireless Transmitter. The transmitter powers on by pressing the button for ~ 3seconds. The unit will auto-off after 10 minutes of no movement to preserve battery power. To shut the unit off, press and hold the button for 3 seconds. There are two miniature acoustic receiver microphones integrated into the MicroTrax Head Tracker. During operation, all miniature microphones are sampling the ultrasonic signals. Each miniature receiver microphone has a reception cone angle approaching 180°. The MicroTrax Head Tracker has the receiver microphones placed at a 45° angle off the front of the device assuring continual tracking with all normal head positions in standard ceiling or wall mounted Constellation arrays. The head trackers will continue to track during brief (less than 1 minute) occlusion of one of the microphones. IS-900 User Guide Page 21 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 1.5.3. MicroTrax Docking Station Figure 11 - MicroTrax Docking Station The MicroTrax Docking Station (Figure 11) is an optional component that serves to hold the wireless MicroTrax devices, and two spare batteries, in one handy place. The wireless devices are equipped with charging contacts enabling recharging in-situ. LEDs next to each slot indicate when the device is in the process of charging or is completely charged. When the LED is illuminated and the color is: • • • Orange Green Off IS-900 User Guide Device is in the process of recharging Device is fully charged. Device is either not fully seated or the docking station is not powered. Page 22 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 1.5.4. MicroTrax Hand Tracker Figure 12 - MicroTrax Hand Tracker The MicroTrax Hand Tracker (Figure 12) is a tracked device that provides accurate 6-DOF data of a user’s hand. The MicroTrax Hand Tracker is designed to be ambidextrous. When properly mounted to either hand, the main device cable should exit the tracker from the pinky-side of the hand. The device can be used wired, or wirelessly. When wired, the hand tracker connects to the MicroTrax TTL-RS422 Dongle. When used in a wireless configuration the hand tracker connects to the MicroTrax Wireless Transmitter. The transmitter powers on by pressing the button for ~ 3 seconds. The unit will auto-off after 10 minutes of no movement to preserve battery power. To shut the unit off, press and hold the button for 3 seconds. There are four miniature acoustic receiver microphones integrated into the MicroTrax Hand Tracker. During operation, all four miniature microphones are sampling the ultrasonic signals. Based on the tracker’s position with respect to ultrasonic Constellation array, only signals from the two best microphones are used for combination with the inertial data and calculation of the 6DOF output. Each miniature receiver microphone has a reception cone angle approaching 180°. The head tracker will continue to track during brief (less than 1 minute) occlusion of one of the two active microphones. IS-900 User Guide Page 23 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 1.5.5. Wireless MicroTrax Modules All MicroTrax tracked stations can be operated without cabling to the IS-900 processor by using the IS-900 Wireless Modules. The Wireless Modules have two components—a receiver component that plugs into the IS-900 Processor and a rechargeable, battery operated transmitter that is either integrated into the tracked station (e.g. IS-900 Wireless MicroTrax Wand), or connected to a small, body worn transmitter that plugs directly in to the MicroTrax Station (e.g. IS900 Wireless MicroTrax Head Tracker). 1.5.6. OEM Tracking Devices InterSense works with Value Added Resellers, Systems Integrators and Partners to provide tracked devices tailored to specific applications. InterSense uses the Inter-IC bus (I C) interface to all MicroTrax devices. The I C is an industry standard interface developed by Philips nearly 20 years ago to establish a simple 2-wire communication standard between a variety of IC’s and interface devices. By choosing this standard board level interface, OEM’s and systems integrators have the flexibility of integrating the InterSense’s IS-900 wireless tracking technology and device interface into custom 3D interaction devices. InterSense can assist you with the development of a custom device, providing technical interface details and reference designs, or be contracted to develop the custom device to your specifications. For additional information about custom system development, call or email us at sales@intersense.com. IS-900 User Guide Page 24 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 1.6. IS-900 Cables, Connectors, Adaptors, Power Boosters and Wireless Radios Due to the flexible design of the IS-900 system, many systems are custom configured and installed by trained service representatives and may come with varying cabling and interconnect items.The items and their descriptions in this section cover all standard and optional interconnect components available for the IS-900. Contact InterSense for detailed cable, adapter, or power booster specifications/questions. 1.6.1. Wired System Figure 13 illustrates how the cables, connectors and adaptors are set-up for the wired version of the IS-900 System and MicroTrax devices. SoniStrip* SoniStrip* *Configuration depends on your constellation IS-900 Processor Connector Symbols RJ48 RJ12 Hirose Adapter Adapter Not – to - Scale Head Tracker Wand Figure 13 - Wired IS-900 and MicroTrax Cables, Connectors and Adapters IS-900 User Guide Page 25 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 1. Cable: Processor to SoniStrip or to MicroTrax device Adapter. • Part no. 078-00088-0030 • 30 feet long • RS422 communication • 10-pin RJ48 cable connector This 30 foot cable provides basic +12 VDC power and transmits the SoniDisc trigger signals to the SoniStrip Constellation array. It connects from the back of the IS-900 Processor (any PORT #) to the SoniStrips and can run a maximum length of 15 meters (50 ft.)*. *NOTE: Maximum length of the total SoniStrip daisy chain measured from the IS-900 Processor to the end of the SoniStrip chain is 24 meters (80 ft.) without external power boosters. This same cable is also used to connect the MicroTrax adapter to the processor. 2. Cable: SoniStrip to SoniStrip • Part no. 078-00088-0004 • 4 feet long • RS422 communication • 10-pin RJ48 The 4 foot SoniStrip to SoniStrip cable provides standard connectivity between each SoniStrip in the Constellation array. The cable and connector type (10-pin RJ48) are identical to the Processor to SoniStrip Cable. The IS-900 SimTracker configuration can support a maximum of 12 SoniStrips (36 SoniDiscs) per system. The IS-900 VETracker configuration can support 84 SoniStrips (252 SoniDiscs) split between two ports with the use of external power boosters**. **NOTE: Maximum length of total SoniStrip daisy chain measured from the IS-900 Processor to the end of the SoniStrip chain and configured with power boosters can be greater than 90 meters (300 ft.). Consult with InterSense for non standard configuration support! 3. Cable (Integral to the Head Tracker): Head Tracker to Adapter (ref. item 4) • Part no. 100-91003-AWHT • 3 feet long • TTL communication • Hirose connector In order to keep the Head Tracker lightweight and unobtrusive, we use a Hirose connector carrying a TTL signal. However this cable has limited length to processor capability. Therefore, we convert it to anRS422 signal to allow longer cable lengths. 4. Adapter: TTL to RS422 • Part no. 100-91000-AWDG • Hirose Connector for TTL • 10 pin RJ48 connector for RS422 This adapter simply converts the TTL MicroTrax interface signals to a differential serial signal (RS422) in order to transmit the signals long distance to the IS-900 Processor. The interface RJ48 connector labeled “BASE” attaches to the Cable (ref. item 1). The Hirose connector connects directly to the MicroTrax Head Tracker integral cable (ref. item 3). 5. Cable (Integral to Wand): Wand to Adapter (ref. item 6) • Part no. 100-91012-AWWD • 12 feet long • RS232 Communication • 6-pin RJ-11 This cable is fixed to the wand and uses RS232 communication. It has limited length capability therefore must be converted to an RS422 signal to allow for longer cable lengths.downstream closer to the processor. IS-900 User Guide Page 26 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 6. Adapter: RS232 to RS422 • Part no. 100-SDPDL-001 • 10 pin RJ48 connector for RS422 • 6-pin RJ12 connector for RS232 This adapter simply converts the RS232 MicroTrax interface signals to a differential serial signal (RS422) in order to transmit the signals long distance to the IS-900 Processor. The interface RJ48 connector labeled “BASE” attaches to the Cable (ref. item 1). The RJ12 connector labeled “TRACKER” connects to the MicroTrax Wand integrated cable. IS-900 User Guide Page 27 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 1.6.2. Wireless System Figure 14 illustrates how the cables, connectors and adaptors are set-up for the wireless version of the IS-900 System and MicroTrax devices. For simplicity, 2.4 GHz wireless devices are shown, therefore each device requires its own receiver (900 MHz devices may share receivers, 2 devices per receiver). SoniStrip* SoniStrip* * Configuration depends on your constellation ATA Connector Symbols IS-900 Processor RJ48 RJ12 Hirose WR WR Not – to - Scale Head Tracker Wand Figure 14 - Wireless IS-900 and MicroTrax Cables, Connectors and Adapters 1. Cable: Processor to SoniStrip • Part no. 078-00088-0030 • 30 feet long • RS422 communication • 10-pin RJ48 cable connector This 30 foot cable provides basic +12 VDC power and transmits the SoniDisc trigger signals to the SoniStrip Constellation array. It connects from the back of the IS-900 Processor (any PORT #) to the SoniStrips and can run a maximum length of 15 meters (50 ft.)*. *NOTE: Maximum length of the total SoniStrip daisy chain measured from the IS-900 Processor to the end of the SoniStrip chain is 24 meters (80 ft.) without external power boosters. IS-900 User Guide Page 28 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 2. Cable: SoniStrip to SoniStrip • Part no. 078-00088-0004 • 4 feet long • RS422 communication • 10-pin RJ48 The 4 foot SoniStrip to SoniStrip cable provides standard connectivity between each SoniStrip in the Constellation array. The cable and connector type (10-pin RJ48) are identical to the Processor to SoniStrip Cable. The IS-900 SimTracker configuration can support a maximum of 12 SoniStrips (36 SoniDiscs) per system. The IS-900 VETracker configuration can support 84 SoniStrips (252 SoniDiscs) split between two ports with the use of external power boosters**. **NOTE: Maximum length of total SoniStrip daisy chain measured from the IS-900 Processor to the end of the SoniStrip chain and configured with power boosters can be greater than 90 meters (300 ft.). Consult with InterSense for non standard configuration support! 3. Cable (Integral to the Head Tracker): Head Tracker to MicroTrax Wireless Transmitter (ref. item 7) • Part no. 100-91003-AWHT • 3 feet long • TTL communication • Hirose connector 7. MicroTrax Wireless Transmitter for Head Tracker • Part no. 100-91000-EWTX This module transmits the data from the wireless head tracker to the head tracker’s receiver. The Hirose connector attaches to the TTL cable integral to the head tracker. 8. MicroTrax Wireless Receiver • Part no. 100-IS9MW-RX16 • Has integral cable that connects to the processor • RS422 communication • 10-pin RJ48 cable connector 9. Cable for Acoustic Timing Adjuster • Part no. 078-00088-0001 • 1 foot long • RS422 communication • 10-pin RJ48 cable connector • Adjusts the timing of the beacons in the SoniStrips to match the timing of the MicroTrax wireless devices. IS-900 User Guide Page 29 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 1.6.3. All Systems AC Power Cable, Part No. 078-00003-xx09 (“xx” for US/JP, UK, EU country code) The IS-900 system ships with a 9 foot AC Power Cord to match the country voltage specification on your order. The IS-900 Processor has an auto switching power supply module to supporting AC voltage inputs from 100 to 240 VAC. RS-232 Null Modem Serial Cable, Part No. 078-00001-0000 (IS-900 Processor to PC cable) The null modem cable provides both data and control communication between the IS-900 System and your host computer. InterSense ships a 1.8 meter (6 foot) cable with the system. The maximum specified length for RS-232 communication cabling is 7.6 meters (25 feet). A pin-out and cable specification is located in FAQ’s Appendix below. The null modem cable connects to the port labeled HOST on the IS-900 Processor. (Optional) SoniStrip Power Booster, Part No. ISC-REV3X-PWRx The optional SoniStrip Power Booster kit shown in Figure 15 comes with a +15 VDC power supply w/ country specific line cord, a 4 ft. SoniStrip Cable (Part No. 078-00088-0004), and an inline power booster module (Part No. 100-REV3X-POWR). SoniStrip Power Booster Kits are required for SoniStrip Constellation Arrays that meet at least one the following conditions: a) The initial Processor to SoniStrip Cable, Part No. 078-00088-00xx, is greater than 15 meters (50 ft.). b) The SoniStrip Constellation Array is configured with more than 12 SoniStrips. c) Any SoniStrip Constellation array requires an extended measurement range of up to 4 meters (13 ft.). For condition (a) with just 12 SoniStrips in a Constellation Array, the Power Booster is inserted inline with the SoniStrip just before the first SoniStrip in the array. For condition (b), a Power th Booster is required after every 12 SoniStrip in a Constellation (i.e. it is added in-line after th th th between the 12 and 13th SoniStrip, the 24 and 25 SoniStrip, etc…). For condition (c), the st th Power Boosters deploy as in-line components before the 1 SoniStrip and after every 12 SoniStrip thereafter. Figure 15 - SoniStrip Power Booster (Optional) IS-900 User Guide Page 30 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Failure to power down the IS-900 Processor when connecting or disconnecting tracked stations will cause damage to the tracked stations. Exceeding maximum cable lengths will cause IS-900 to operate unreliably due to signal transmission and timing errors. 1.7. IS-900 Support CD The provided support CD has the latest version of all InterSense product specifications, InterSense technical papers/notes, and IS-900 product documentation. The current version of InterSense’s ISDEMO set-up, calibration, and product testing software is also available on the support wepage at http://www.intersense.com/downloads. IS-900 User Guide Page 31 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 2. Specifications 2.1. Performance Specifications Degrees of Freedom: 6 (X, Y, Z, Yaw, Pitch, and Roll) Tracking Device(s): MicroTrax Head Tracker MicroTrax Wand MicroTrax Hand Tracker Custom/OEM Devices (Consult InterSense) Tracking Volume: Up to 20 m with 12 SoniStrips (SimTracker maximum) Up to 140 m with 84 SoniStrips (VETracker maximum) 2.0 m x 2.0 m x 3.0 m maximum w/ SoniFrame (optional) 1.5 m x 1.5 m x 3.0 m with SoniWing (optional) Angular Range: Full 360º - All Axes Resolution: 0.75 mm (1.5 mm Wireless) 0.05º (0.10º Wireless) Static Accuracy: 2.0 to 3.0 mm (3.0 to 5.0 mm Wireless) 0.25º RMS in Pitch & Roll, 0.50º RMS in Yaw 0.50º RMS in Pitch & Roll, 1.00º RMS in Yaw (Wireless MicroTrax) Update Rate: 180 Hz Nominal 120 Hz Minimum (Wireless SimTracker & VETracker) Latency: 4 ms Typical (without prediction @ 115 kbaud) Maximum number of devices 4 for SimTracker (Wired or Wireless) 7 for VETracker (Wired or Wireless) Interface: RS-232 Serial Port Ethernet Windows XP/Vista/7, Linux, Mac OS X SDK with full InterSense API ISDEMO control & connectivity software O/S Compatibility: Software Support: 2.4 GHzSpecification for Wireless Devices Device charge time 3 hours Number of charges Constant Tracking Time Radio Technology Radio Range (Indoor) Radio Channels 500 6-8 hours on one charge 2.4 GHz non-frequency hopping spread spectrum 100 Feet (with no major obstructions) 16 IS-900 User Guide Page 32 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 900 MHzSpecification for Wireless Devices Device charge time 3 hours Number of charges Constant Tracking Time Radio Technology Radio Range (Indoor) Radio Channels 500 6-8 hours on one charge 900 MHz non-frequency hopping spread spectrum 100 Feet (with no major obstructions) 10 2.2. Physical Specifications AC Input: 100 to 120 V/200 to 240 V, 60/50 Hz, 6/3 A (auto switching) Operating Temperature: 0º C to 50º C (32º F to 122º F) Storage Temperature: -20º C to 70º C (-4º F to 158º F) Standard Cable Lengths: IS-900 to SoniStrips – 10.7 m IS-900 to Tracking Devices – 12.0 m IS-900 to Host (RS-232 Serial) – 1.8 m Maximum Cable Lengths: System configuration dependent – Consult InterSense Processor Size: 1 U rack mounted (44.45 cm wide x 40.64 cm deep x 4.45 cm tall) Processor Weight: 6.8 kg SoniStrip 2 foot 4 foot 6 foot Size 0.61 m x 3.7 cm x 2.5 cm 1.22 m x 3.7 cm x 2.5 cm 1.83 m x 3.7 cm x 2.5 cm Weight 0.4 kg 0.9 kg 1.3 kg MicroTrax Devices Standard Head Tracker Wired Wand Wireless Wand Wireless Transmitter Wireless Receiver Size (outside dimensions) 10.15 x 1.54 x 1.38 cm 17.48 x 10.16 x 5.38 cm 17.48 x 10.16 x 5.38 cm 7.62 x 4.45 x 3.40 cm 5.3 x 3.5 x 2 cm Weight 40 g (Includes wire) 140 g 170 g 65 g 45.4g (includes wire) IS-900 User Guide Page 33 of 177 InterSense 2.3. Doc. No. 072-00105-0I07 Rev. 4.2 Environmental Specifications When disposing of electronic equipment please do so responsibly in accordance with local requirements. Normal environmental conditions This standard applies to equipment designed to be safe at least under the following conditions: a) indoor use; b) altitude up to 2 000 m; c) temperature 0 °C to 50 °C; d) maximum relative humidity 80 % for temperatures up to 31 °C decreasing linearly to 50 % relative humidity at 40 °C; e) MAINS supply voltage fluctuations up to ±10 % of the nominal voltage; f) transient over voltages typically present on the MAINS supply. g) Applicable rated pollution degree 2 environment. 10 ISO 7000-0434 Attention, consult accompanying documents In case of application as a safety sign, the rules according to ISO 3864-1 are to be adhered to. See safety sign ISO 3864-1, B.3.1, “General warning, caution, risk of danger”. 3. Installation and Set-up This section reviews the background information needed to understand how the IS-900 system works. It then covers the detailed steps required for set-up and calibration of the IS-900 tracking system in typical virtual or simulation environments. References made to other parts of this manual or to supplemental manuals provide additional background material. The detailed set-up steps below assume an IS-900 VETracker is being used for a typical immersive display environment with a wired MicroTrax Head Tracker and a wired MicroTrax Wand. Systems purchased for different applications, such as cockpit simulators, may require technical support from InterSense to complete the installation, although the basic steps covered here are applicable for all IS-900 tracking configurations. Check IS-900 Firmware Version Tracking device upgrades to an existing IS-900 System may require you to upgrade the firmware in the IS-900 Processor. Wireless Tracking Modules with the IS-900 SimTracker or VETracker processors require firmware version 4.20 or later (MiniTrax), 4.2301 or later (MicroTrax), or 4.29 or later (900 MHz wireless) to operate. To check if your IS-900 system needs a firmware upgrade, follow these steps: IS-900 User Guide Page 34 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 1. Power on the IS-900 Shortcut→ Use the front panel buttons and LCD menus to determine the IS-900 firmware version by pressing the Enter key, arrow key down to System Config, select Enter again, select Information to read Firmware revision number. Or use ISDEMO as follows. 2. Connect the PC to the IS-900 processor using the null modem cable provided with your system or via Ethernet. 3. Launch ISDEMO to determine the firmware version installed in the IS-900 Processor (with ISDEMO, this information is found under the Tools→System Information menu). 4. If the version number shown is lower than the version specified above for your IS-900 processor configuration, you will need to upload a new version of firmware to the IS-900 processor. If you believe you require a Firmware Upgrade for the IS-900 System, please contact InterSense Technical (techsupport@intersense.com or +1 781 541-7624) support for assistance with selecting the correct firmware needed with your system. The necessary download and instructions can also be found on the Support section of our website. IS-900 User Guide Page 35 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 3.1. InterSense Coordinate Reference Frame Before setting up the IS-900, it is important to review the standard InterSense coordinate reference system. As a 6-DOF tracker, use of the “InterSense Coordinate Reference Frame” throughout this manual helps explain the installation, calibration and tracking performance. Roll Pitch Yaw Figure 16 - InterSense Coordinate Reference Frame Figure 16 shows the standard reference frame for both position and orientation of all InterSense tracker systems. The reference frame (hereafter referred to as Navigation frame or Nav frame or N frame) is the locally-level geographic frame with its x-axis pointing north, y-axis east, and z-axis down. It is important to understand that when setting up any InterSense system, the z-axis of the tracking system’s coordinates must always point in the direction of gravity, whereas the x and y axes may be set to any direction rotated about the z-axis. Subsequent coordinate transformations by application software to change the direction of the zaxis are normal, but the underlying reference of InterSense’s inertial components to gravity must be maintained by the tracking system. The Euler angles reported by the tracker are described as a sequence of rotations applied to the tracking device starting with its body axes initially aligned with the Nav frame axes and resulting in the current orientation. The sequence starts with a rotation by (+yaw) about the Z axis, followed by a rotation by (+pitch) about the new Y axis (i.e. body frame axis), followed by a rotation by (+roll) about the new X axis (i.e. body frame x axis). IS-900 User Guide Page 36 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 3.2. Hardware Set-up General Equipment Handling Warnings The ultrasonic transmitters (SoniDiscs) are sensitive electronic components. Take care not to allow any dirt or moisture in or around the SoniDiscs install the SoniStrips, SoniFrame, SoniWing or SoniPods. Mishandling or static discharge can damage both the ultrasonic emitters and the tracking devices. Do not drop the tracked stations. While InterSense has designed the devices for normal usage in simulators and virtual environments, excessive shock can damage the internal components. Always turn off the IS-900 Processor (remembering to save any configuration changes) before plugging or unplugging the tracked stations. Failure to do this could result in damage to the stations. Always store the tracked devices in a secure location when not in use. Leaving them on the floor or on an unsecured surface can result in accidental damage. This section covers a typical installation of the IS-900 with standard components. Consult InterSense for non-standard or OEM installations. The basic steps covered in this section include: • • • • Installation of SoniStrips Mount and Calibration of SoniStrips Connection and Test with the IS-900 Processor. Special Instructions for Wireless Devices Unpack all components and check against packing list (standard configuration referenced in Section 1.2 for the IS-900 SimTracker and 1.3 for the IS-900 VETracker). Check the packing list that came with the system as many orders will not match the standard configurations shown in Section 1. Contact InterSense if any components are missing or appear damaged. IS-900 User Guide Page 37 of 177 InterSense 3.3. Doc. No. 072-00105-0I07 Rev. 4.2 Installation of SoniStrips In order to install the SoniStrips, you need the following (that are not supplied in the standard IS900 System): 1. An optical surveying tool or Total Station. We recommend a Nikon DTM 420 or equivalent for measuring absolute X, Y, and Z coordinates of all SoniDiscs. Note: If your IS-900 system comes with a fixed constellation frame (SoniFrame or SoniWing), then the optical surveying equipment is not needed. 2. A Windows PC capable of running the latest version of ISDEMO (check www.intersense.com/downloads.aspx for current version). General Guidelines The position of a SoniDisc is defined as the coordinates of the center of the grill covering the speaker. When measuring the position of each SoniDisc in an installed Constellation Array, all values are entered in meters. The coordinates of the SoniDiscs are entered in a user-defined, locally leveled coordinate frame. The coordinate system is right-handed with X pointing forward, Y to the right and Z pointing down. Position data for all stations is computed relative to that coordinate system. SoniStrips come in 0.6, 1.2 or 1.8 meter (2, 4 or 6 foot) lengths. The 2-ft. SoniStrip has two SoniDiscs per SoniStrip and the 4-ft SoniStrip has 3 SoniDiscs installed with each SoniDisc spaced at 0.61 m (2 foot). The 6-ft SoniStrip has 3 SoniDiscs with each spaced at 0.91 m (3 foot) spacing. For best performance, it is generally recommended that SoniStrips be installed in a regular grid over the tracked area. Total distance from a SoniDisc in the Constellation to a tracked station should not exceed 3.0 meters (10 feet) to guarantee good signal detection (4 meters with external power boosters installed). IS-900 default configuration does not contain a Constellation, so it is up to the user to configure it. To properly track, the system needs to know the position and orientation of each of the SoniDiscs in the Constellation with high degree of accuracy. The best way to measure position of each SoniDisc is with the use of an optical sighting tool known as a Total Station. The quality of the measured position data input for the SoniStrip Constellation Array is directly proportional to the accuracy of the IS-900 system’s tracking data output. A second parameter needed for each SoniDisc in the installed Constellation Array is the unit normal vector, as shown in Figure 17. The unit normal vector defines the orientation of a SoniDisc. The default assumption is that the Constellation is installed horizontally over the tracked area, so the normal vector points straight down with unit normal vector coordinates of 0, 0, 1. The unit normal vector is the same for each SoniDisc on the same SoniStrip. Entering the correct normal vector for each SoniDisc is important. The normal vector information is used by the IS-900 tracking algorithm to correctly schedule the polling of each SoniDiscs. SoniStrips SoniDisc Emitter Normal vector pointing down 0, 0, 1 Figure 17 - Unit Normal Vector Definition for Ceiling Installed SoniStrip IS-900 User Guide Page 38 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 The SoniStrip Constellation Array provides an absolute positional reference to the tracked environment. The idea behind providing SoniDiscs (beacons) in groups of three in each SoniStrip (rail) is to give flexibility in both the configuration and installation to cover a wide range of tracking environments in a convenient package for ease of installation. To establish a minimum criterion for a tracked environment, at least two SoniStrips are required to provide proper tracking. A conceptual diagram using two SoniStrips, shown in Figure 18, provides the fundamental relationship established by the SoniStrip Constellation with respect to the tracking environment. Side view of SoniStrips 0.67 m 70 degree acoustic cone 3m Floor Top view of SoniStrips Area of Single SoniDisc Coverage at 2 m from SoniStrip Constellation Area of optimal tracking at 1m to 2 m from SoniStrip Constellation 0.67 m Figure 18 - Tracking Coverage with Two SoniStrips When preparing the installation for SoniStrips or SoniPods, it is very important to assure the following in order to maintain stable tracking conditions: 1. The mounting surface is rigid and stable 2. The relative position between SoniStrips or SoniPods remains fixed IS-900 User Guide Page 39 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Note: If either of these two conditions is not met, then the performance of the tracking system will degrade and possibly fail. InterSense will not warrant a system to track with improper installation. For larger or first time installations, we recommend you contract InterSense to perform onsite installation and training. Please contact your InterSense representative for details. Sections 3.3.1, 3.3.2 and 3.3.3 describe three examples of typical tracking system installations: • • • SoniStrip Mounting for Ceiling Installations SoniStrip Mounting for Power Wall Installations SoniStrip Mounting for CAVE-like Installations IS-900 User Guide Page 40 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 3.3.1. SoniStrip Mounting for Ceiling Installations The following is an example of an installation for a large area immersive room environment. Important Note: For customers upgrading existing MiniTrax systems to work with wireless MicroTrax devices – an InterSense acoustic timing adjuster (ATA) must be inserted between the processor and the first SoniStrip in the chain. The ATA allows users with revision 3 SoniStrips to use wireless MicroTrax devices more effectively (improves tracking at close range). Most applications for IS-900 systems are best realized with a ceiling mounting of several SoniStrips in either a grid-like pattern or a staggered pattern as depicted in Figure 19 below. In both cases, 6-foot SoniStrips are mounted to the ceiling using InterSense provided ceiling clips that attach directly to most all suspended ceiling systems. The SoniStrips are mounted approximately 2 to 3 feet apart, depending on the ceiling height. For ceilings that are 8 feet high, mount SoniStrips with 2 foot separation. For lower ceilings, consider using 4-foot SoniStrips mounted 2 feet apart. For ceiling mounts from 9 to 12 feet high, mount 6foot SoniStrips approximately 3 feet apart and plan on using external power boosters to maximize the acoustic measurement range of the IS-900. Figure 19 - Immersive Room Ceiling Mounting (top down view) In Figure 19, the coordinate system is shown from a “top down view”, identical to the default Constellation Array view used with the InterSense set up software ISDEMO. Each SoniStrip is wired in sequence from the lower left hand corner of the SoniStrip Constellation Array connecting to Port 5 on the IS-900 Processor. Definition of the SoniStrip ID numbers come from the wiring sequence, or “daisy chain”, and IS900 Processor port number that is used to connect to the Constellation Array. Here, the SoniStrip Array is plugged into Port 5 thus becoming a sequence with SoniDisc ID numbers from 5001 to 5018. IS-900 User Guide Page 41 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 With each SoniStrip mounted in the same orientation on the ceiling and pointing down, the normal vectors then for the installation and wiring shown in Figure 19 become: SoniDisc ID Nos. 5001 – 5018 Normal Vectors used in Constellation Array 0.000, 0.000, 1.000 3.3.2. SoniStrip Mounting for Power Wall Installations The following is an example of an installation for a typical power wall. A typical immersive display wall consists of one or more stereo projectors that illuminate a flat (or curved) screen. This type of display is ideal for mounting the IS-900 SoniStrips surrounding the screen with each SoniStrip angled at 45 degrees towards the center of the screen. Figure 20 shows a typical, two-projector, flat display using six, 6-foot SoniStrips in a perimeter mount configuration. Figure 20 - Power Wall Perimeter mounting (front forward view) Each SoniStrip is mounted along the edge of the display using the InterSense provided angle brackets. The SoniStrips on the top and bottom of the display are spaced approximately 2 to 3 feet apart, depending on the size of the display wall. The InterSense coordinate system for Figure 20 has X forward looking into the screen, Y positive to the right, and Z positive down in the direction of gravity. Each SoniStrip is wired in sequence with the bottom left corner connecting to Port 5 of the IS-900 Processor. The SoniStrip ID numbers are defined by the wiring and port number and become a sequence with numbers from 5001 to 5018. With each SoniStrip angled at 45 degrees toward the screen center, the normal vectors for the installation and wiring shown in Figure 20 become: IS-900 User Guide Page 42 of 177 InterSense SoniDisc ID Nos. 5001 – 5003 5004 – 5009 5010 – 5012 5013 – 5018 Doc. No. 072-00105-0I07 Rev. 4.2 Normal Vectors used in Constellation Array -0.707, 0.707, 0.000 -0.707, 0.000, 0.707 -0.707, -0.707, 0.000 -0.707, 0.000, -0.707 3.3.3. SoniStrip Mounting for CAVE-like Installations The following is an example of an installation for a typical CAVE-like environment. The IS-900 excels over magnetic or optical trackers in CAVE-like installations. As shown in Figure 21, the SoniStrips are positioned to provide uniform tracking coverage throughout the entire immersive display environment with no distortion or occlusion issues. 3 meters 5004 5005 5006 SoniStrips Mounted at 45 degree angles 5003 5016 5015 Mirror 5008 5017 5014 +Z into floor 5001 +Y 5009 5018 5013 5012 3 meters +X 5002 IS-900 Processor 5007 5011 5010 Additional Mounting Support Figure 21 - CAVE-like Installation (top down view) The example above is a 3 meter cube, 4 walled immersive display system which uses six 6-ft. SoniStrips. Depending of the number of display walls, display volume and mirror position/size, it may be necessary to use a variety of different sized SoniStrips (6, 4, and 2 foot) or SoniPods discretely located to provide the optimum tracking coverage. Please consult with InterSense regarding all CAVE-like installations to maximize the tracking performance. The first three SoniStrips mounted along the top and around the perimeter of the CAVE walls, are angled in towards the CAVE center at 45 degrees. The remaining three SoniStrips are mounted IS-900 User Guide Page 43 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 with the normal vectors pointing straight down on each side of the center ceiling mirror and along the back side of the CAVE. The mounting of these three interior SoniStrips may require the addition of two U-Channels, positioned front to back, on each side of the mirror at the top, center of the CAVE. Each SoniStrip is wired in sequence with the bottom left corner connecting to Port 5 of the IS-900 Processor. The SoniStrip ID numbers are defined by the wiring and port number and become a sequence with numbers from 5001 to 5018. With three perimeter SoniStrips angled at 45 degrees toward the CAVE center and the three interior SoniStrips pointing straight down in the Z-axis, the normal vectors then for the installation and wiring shown in Figure 24 become: SoniDisc ID Nos. 5001 – 5003 5004 – 5006 5007 – 5009 5010 – 5018 Normal Vectors used in Constellation Array 0.000, 0.707, 0.707 -0.707, 0.000, 0.707 0.000, -0.707, 0.707 0.000, 0.000, 1.000 3.3.4. SoniFrame and SoniWing Please refer to the IS-900 Product Supplement Manual titled “IS-900 Fixed Frame Assemblies— SoniFrame & SoniWing”, Doc. No. 072-00088-0G04, for details on the assembly and set up of these pre-calibrated SoniDisc Constellation Arrays. The InterSense installation and testing software, ISDEMO, has commands in the Constellation Tool that allow rapid installation and calibration of the SoniWing and SoniFrame. This tool automatically generates both the position and normal vectors for these fixed frame, factory calibrated SoniDisc Constellation options. Refer to Section 10.7 for information about using ISDEMO to install SoniWing and SoniFrame Constellation Arrays. 3.4. Measurement and Calibration of SoniStrips Once the SoniStrip Constellation array is installed and wired, the next step is to accurately measure the absolute positions of each SoniDisc in the array. Two methods can be used to calibrate the installed SoniStrip beacon array: 1. Optical Surveying (sighting with a surveying tool, i.e. a Nikon total station). This is the most precise method of calibration. Use this method for installations in all virtual environments. 2. Direct Measurement (hand measurement with a tape measure). This technique is not recommended for most installations but can be used temporarily to quickly test an IS-900 installation when the first technique is not possible. ISDEMO has SoniStrip positioning and alignment tools that help when performing a quick installation using the direct measurement approach. Refer to Section 10.7 for details. NOTE: In calibrating the SoniStrip constellation array, it is very important that the measurements are as accurate as possible. Accurately measuring the SoniStrip beacon constellation array will directly impact tracking performance. Use a Total Station (Nikon DTM 420 or equivalent), or other means to accurately measure the absolute position vector for each SoniDisc. Contact InterSense for Total Station recommendations or installation support. IS-900 User Guide Page 44 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 When measuring the SoniStrip Constellation Array with a Total Station: 1. Read the manufacturer’s instructions on the set-up and operation of the surveying tool. Make sure the measurement tool can report absolute X, Y, and Z coordinates for each measurement. The IS-900 Tracking system needs the X, Y, and Z position measurement for each SoniDisc location in order to properly track. 2. Measure the X, Y, Z coordinates of each SoniDisc and write down the measurements in a table listing beacon position (x, y, z values in meters), normal vector (for ceiling applications the normal vector nx, ny, nz is always 0.00,0.00,1.00). The SoniDisc ID number is determined by the port the SoniStrip “daisy chain” is plugged in to (i.e. Port 5 for our examples is Section 3.3) and the sequence number in the daisy chain (i.e. the first SoniStrip in a daisy chain will have SoniDisc IDs 5001, 5002 and 5003). For example: 1.2000, 0.0000, 0.0000, 0.00, 0.00, 1.00, 5001 Sample sheet to enter X, Y, Z measurements of each beacon IS-900 User Guide Nx Ny Nz Beacon # Page 45 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 3. Using the InterSense command format: MCF{beaconNum}, X, Y, Z, Nx, Ny, Nz, BeaconID Where, {beaconNum} is a sequential number (i.e. 1, 2, 3, …) X, Y, Z are the beacon locations in meters in nav-space (X forward, Y to the right, Z down), Nx, Ny, Nz are the pointing vectors of the beacon, usually they point down in the +Z direction so entering 0,0,1, is correct; and, BeaconID is the SoniDisc number determined by the “daisy chain” sequence of the SoniStrips for that specific beacon (i.e. with SoniStrips plugged into port 5, the sequence starts at 5001, 5002, 5003, 5004, etc…). Enter beacon locations in meters into comma delimited text file (.txt) using WordPad or any text editing application on your PC in the following format shown in the example below. The “MCC” line at the beginning is a command to clear the current constellation, and the “MCe” line at the end is to apply the constellation. Example of .txt file with X, Y, Z measurements MCC MCF1, 0.0000, 0.0000, -3.0000, MCF2, 0.0000, 0.9144, -3.0000, MCF3, 0.0000, 1.8288, -3.0000, MCF4, 0.6000, -0.5050, -3.0000, MCF5, 0.6000, 0.4094, -3.0000, MCF6, 0.6000, 1.3238, -3.0000, MCF7, 1.2000, 0.0000, -3.0000, MCF8, 1.2000, 0.9144, -3.0000, MCF9, 1.2000, 1.8288, -3.0000, MCF10, 1.8000, -0.5030, -3.0000, MCF11, 1.8000, 0.4114, -3.0000, MCF12, 1.8000, 1.3258, -3.0000, MCF13, 2.4000, 0.0030, -3.0000, MCF14, 2.4000, 0.9174, -3.0000, MCF15, 2.4000, 1.8318, -3.0000, MCF16, 3.0000, -0.5030, -3.0000, MCF17, 3.0000, 0.4114, -3.0000, MCF18, 3.0000, 1.3258, -3.0000, MCe IS-900 User Guide 0.00, 0.00, 1.00, 5001 0.00, 0.00, 1.00, 5002 0.00, 0.00, 1.00, 5003 0.00, 0.00, 1.00, 5004 0.00, 0.00, 1.00, 5005 0.00, 0.00, 1.00, 5006 0.00, 0.00, 1.00, 5007 0.00, 0.00, 1.00, 5008 0.00, 0.00, 1.00, 5009 0.00, 0.00, 1.00, 5010 0.00, 0.00, 1.00, 5011 0.00, 0.00, 1.00, 5012 0.00, 0.00, 1.00, 5013 0.00, 0.00, 1.00, 5014 0.00, 0.00, 1.00, 5015 0.00, 0.00, 1.00, 5016 0.00, 0.00, 1.00, 5017 0.00, 0.00, 1.00, 5018 Page 46 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 3.5. Connections with IS-900 Processor This section describes the final steps to setting up the IS-900 system. 1. Connect all the tracking devices and SoniStrip Constellation Array to the IS-900 Processor Important! Always power down the IS-900 Processor and any external power boosters prior to connecting or removing any cables. DO NOT “hot plug” any devices into the IS-900 Processor – connecting devices to the IS-900 while the power is on will result in damage to both the IS-900 Processor and the tracking devices. Wired MicroTrax Devices For wired MicroTrax Devices, please see Figure 13. If you have a MicroTrax Head Tracker, it connects directly to the Adapter: TTL to RS422, (item 4 in Figure 13). If you have a wand, it connects directly to the Adapter:RS232 to RS422, (item 6 in Figure 13). Next, connect the adapter(s) to the processor using the 30 ft. cable (part number 078-000880030). Either adapter uses the same cable to the processor. You can use Ports 1, 2, 3, 4, 6, 7 or 8 on the VETracker for tracking devices or a second SoniStrip Constellation “daisy chain.” However the SimTracker has only Ports 1, 2, 3 and 4 available for tracking devices or a second SoniStrip Constellation “daisy chain.” Next, connect the SoniStrip Constellation Array into Port 5 on the back of the IS-900 Processor using the 30 ft. cable (part number 078-00088-0030). Wireless MicroTrax Devices For wireless MicroTrax devices, please see Figure 14. If you have a MicroTrax Head Tracker, it connects directly to the MicroTrax Wireless Transmitter (item 7 in Figure 14). Whether you have a Head Tracker, a Wand or both, each needs a Wireless Receiver. Simply connect the integrated cable on the Wireless Receiver into the Processor. Connect the SoniStrip Constellation Array into the Acoustic Timing Adapter (item 9/ATA in Figure 14). Then connect the ATA into Port 5 on the back of the IS-900 Processor. Similar to wired devices, additional tracking devices or a second SoniStrip Constellation “daisy chain” can use Ports 1, 2, 3, 4, 6, 7, or 8 on the VETracker. The SimTracker has only Ports 1, 2, 3 and 4 available for additional tracking devices or a second SoniStrip Constellation “daisy chain.” Important Note: Each SoniStrip Constellation “daisy chain” needs one ATA. If you use additional constellations, then you will need an additional ATA for each additional constellation. When connecting the cables to the IS-900 system, please always follow these guidelines: • Only use supplied cables to connect the SoniStrips to the IS-900 Processor. DO NOT use standard phone cables or network cables, as they do not have the correct pin-outs used with the IS-900 tracking system. • If a need arises to build additional cables, use RJ48 flat cabling and RJ48 connectors. Call InterSense Technical Support for a detailed specification or with any cabling questions (+1 781 541 7624). IS-900 User Guide Page 47 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 A Power booster (Figure 22) must be connected in between Port 5 and the end of the SoniStrip “daisy chain” and of the IS-900 Processor to supply the additional power to the SoniDiscs for: • • Measurement ranges greater than 3 meters or, SoniStrip Arrays configured with more than 12 SoniStrips, where an additional power booster is required after every 12th SoniStrip in a large SoniStrip Constellation Array. Figure 22 - External Power Booster for SoniStrips 2. Setup your PC and launch ISDEMO Follow the directions in Section 10 to install and run ISDEMO on a PC. 3. Connect the communications to the IS-900 system Choose a communication option for connecting to the PC running ISDEMO. Section 10.3 details the communication options for connecting with either serial or Ethernet. 3.6. Wireless MicroTrax Setup Skip this step if you are using wired tracking devices. 3.6.1. Wireless Device Types InterSense manufactures Base Receiver Module and trackers in two bands, 2.4 GHz and 900 MHz. These may be used together on the same system if desired. Channel numbering is from 0 to 15 for 2.4 GHz devices and from 1 to 10 for 900 MHz devices; since the receivers operate in different bands, the same channel number may be used in each band IS-900 User Guide Page 48 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 simultaneously, for example it is acceptable to set a 900 MHz and 2.4 GHz tracker/Base Receiver Module to channel 4 on the same system. 900 MHz wireless devices allow receiver sharing, which is a special mode that allows two trackers to connect to a single Base Receiver Module. 3.6.2. Receiver Sharing (900 MHz) When receiver sharing is configured by adding a second link ID to the port configuration as shown below, two important changes occur. The first change is that all physical ports on the IS-900 are mapped to 2 stations, so trackers communicating with the receiver on processor port 1 become stations 1 and 2, trackers on port 2 become stations 3 and 4, etc. This only applies to trackers and Base Receiver Modules, not SoniStrips, which are still numbered based on the physical port number. Wired devices and 2.4 GHz wireless devices (which do not support channel sharing) are assigned to the first station on a given port (2*p-1, where p is the port number), for example a wired tracker in port 4 would become station 7. Physical ports above port 4 cannot be used for trackers/Base Receiver Modules in this configuration. The second change that occurs when using receiver sharing is a decrease in update rate of all wired and wireless devices, from approximately 120 Hz to 110 Hz. 3.6.3. Wireless Device Configuration IMPORTANT NOTE: Additional wireless IS-900 tracking systems in the immediate area should be shut down while a new system is being configured to avoid the possibility of interference during setup. IS-900 User Guide Page 49 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Please refer to the RFScope tool (Section 10.8) to assist in choosing an optimal RF channel for MicroTrax devices. If you are using wireless devices, we recommend fully charging the Radio/Battery Modules prior to use. If the power LED on the wireless Wand or Head tracker transmitter is flashing, that is an indication of a low battery. Once the wireless receiver / transmitter combinations have been configured below, each receiver will be matched to exactly one transmitter via an “RF Channel” and “Link ID”. The system will not need to be configured again unless the user wishes to change the receiver/transmitter pairing. 1. Make sure the IS-900 Processor is powered off. 2. Plug the Base Receiver Modules into the IS-900 Processor. Plug the cable coming from the Base Receiver Modules directly into one of the IS-900 Processor Ports (Ports 1 to 5 on the SimTracker processor or Ports 1 to 8 on the VETracker processor) on the rear of the processor. 3. Turn on the wireless tracking devices by holding the power buttons for approximately 2 seconds. 4. On the wireless wand, the power button is the button farthest to the left (under the joystick). On the wireless head tracker, the power button is the only button available on the transmitter pack that connects to the tracker itself. 5. Turn on the IS-900 processor. When the system has finished booting, verify that each receiver has a green power LED lit. (If there are no LEDs on any of the receivers, then they are not receiving power and they will not be configurable. Power off the IS-900 processor and check that the cable was inserted securely). IS-900 User Guide Page 50 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 6. Run ISDEMO and connect to the processor via the “IS-900” configuration. Click “Parameters->Wireless Configuration” from the menu. You will be presented with the following dialog; set the Mode dropdown box to “Normal mode – connect to devices by ID”: Normal Mode Determines wireless communication by device Link IDs Anonymous Mode Link IDs Determines wireless communication by wireless channel, and ignores Port Port of the IS-900 Processor. Configured Channel The channel that the connected Base Receiver Module is configured to. No two Base Receiver Modules can be configured to the same channel / band pair (however, the same channel is permitted if using a 900 MHz and 2.4 GHz receiver, since each channel represents a different frequency). Reported Channel The channel that the connected Base Receiver Module is currently configured for (0-15 for 2.4 GHz, 1-10 for 900 MHz). Configured Link ID The link ID that is assigned to the receiver. Each wireless tracker has a link ID associated with it when it is shipped, based on the lower 5 digits of the internal device serial number. This 4-5 digit number can be found on a label on your tracker (or its cable for trackers with cables). Reported Link ID The link ID that is currently associated to the Base Receiver Module. Status Port status. Any ports with a status of “no receiver” did not have a Base Receiver Module detected, and cannot be configured. Radio 900 MHz or 2.4 GHz band; both may be used simultaneously. IS-900 User Guide Page 51 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 7. Click a row that corresponds with a receiver and click the “Edit” button. A dialog similar to the following will be presented (900 MHz and 2.4 GHz radio dialogs shown): 8. Enter a channel into the first input box. The valid range of channels is 0-15 for 2.4 GHz and 1-10 for 900 MHz. No two Base Receiver Modules can use the same channel on the same band. For best results, it is recommended that channels be configured such that they are separated by one unused channel if possible, though it is better to have channels adjacent than to have a device set to a channel with a high level of RF interference. Use of the RFScope utility is recommended when initially choosing channels. If multiple IS-900 systems are in use in the same general area (within a few hundred feet), the Base Receiver Module and Trackers should be set to different channels to minimize interference. 9. The Base Receiver Module will now be linked to a specific tracker via the “Link ID” input box. Enter the Link ID of an appropriate device and click “Apply”. If the second Link ID input box is used for a 900 MHz Base Receiver Module, Receiver Sharing mode will be activated. The wireless configuration dialog should now appear similar to this: IS-900 User Guide Page 52 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 If 900 MHz channel-sharing functionality is used (multiple devices per receiver), the dialog will indicate multiple slots per port, and each port/slot will be considered a “station”, so port 2 slot 1 would be mapped to station 3 in ISDEMO and the InterSense API, for example: IS-900 User Guide Page 53 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 10. Make sure that all configured Trackers are powered on and click the “Apply” button. ISDEMO will prompt you if an RF Search is recommended. It may take a minute or two for the processor to apply the configuration. If the devices are communicating properly, both green LEDs should now be lit on both the Trackers and Base Receiver Modules. The status should also be listed as “ok”. If the status is “station not found” click Search→RF Search. Helpful Tip: Placement of Wireless Base Receiver Module You should not place the Base Receiver Module inside a metal container. If the IS-900 is rackmounted, we recommend placing the adapters outside of the rack mount. In ideal conditions, the Base Receiver Module can be as far away as 100 feet from the Transmitter Module. But if you are having an interference issue, you may want to move the Base Receiver Module closer to the tracking area to try to improve communication Extension cables are available to extend the distance from the Base Receiver Module to the IS-900 Processor. You should keep the Base Receiver Modules at least 10 cm (4 inches) apart from each other. 3.6.4. Checking the installation Make sure you have followed the steps in the Software and Hardware Setup sections. Turn off the IS-900 Processor. Turn on the Wireless Transmitter or Wireless Wand. IS-900 User Guide Page 54 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 The “Power” LED on the transmitter should be on. The “Link” LED on the transmitter should be off. If the power LED is flashing or doesn’t turn on, the battery is low and you should charge it before you continue or replace the battery with a charged one. Note: If you turn the Wireless Transmitter Module ON but do not move it for more than 10 minutes it will go into sleep mode and you will have to switch the power ON again. Turn on the power to the IS-900 processor. The LEDs on the front panel next to each port should come on and then stay on for each occupied port. The “Power” LED on the Wireless Receiver should turn on. The Wireless Receiver ”Link” LED should turn on along with the Wireless Transmitter “Link” LED. If any of these steps failed or if the LCD on the front panel of the IS-900 processor indicates X for the wireless station, refer to the Troubleshooting section in this manual. Place the tracking device(s) under the IS-900 SoniStrip Constellation. The LCD on the front panel of the IS-900 Processor should show a ‘T’ for each station indicating it is tracking. If it shows an ‘L’ (lost), then you need to confirm that the tracking device is within the tracking volume and the SoniStrip Constellation has been properly configured in the IS-900 Processor using ISDEMO. If you are unable to get the tracker to work properly please contact Technical Support using the information in the Contact section of this manual. 3.6.5. Loading the Constellation File Open the Configuration Script window in ISDEMO Under the Tools menu in ISDEMO, click on Configuration Script (Figure 23) to open the Configuration Script window. Figure 23 - Configuration Script Menu for loading SoniStrip Constellation array file From the Configuration Script window under File menu, select Load from File (Figure 24). Locate the SoniStrip Constellation Array .txt file created in Step 3.4 above. Double click on the file and click on OK. IS-900 User Guide Page 55 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Figure 24 - Configuration Script File Menu From the Configuration Script window under Tracker menu, select Send to Tracker (Figure 25). The SoniStrip Constellation Array is now uploaded into the IS-900 Processor. Figure 25 - Sending Configuration Script to Tracker Check the Configuration To check the configuration, open the Constellation Configuration Tool window by selecting Tools→ Constellation Tool from the Tools menu in the main window of ISDEMO (Figure 26). IS-900 User Guide Page 56 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Figure 26 - Constellation Tool Selection From the Constellation Configuration Tool window, select Retrieve from Tracker from the menu item Constellation (Figure 27). Figure 27 - Checking installed SoniStrip Constellation Array This will upload the grid into the Constellation Configuration Tool window from the IS-900 Processor. At this point, you should see SoniStrip Constellation Arrays similar to examples covered in Section 3.3 for typical configurations (Figure 28, Figure 29 - ISDEMO Constellation Tool Screen for Wall Mount Power Wall Applications and Figure 30). IS-900 User Guide Page 57 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Figure 28 - ISDEMO Constellation Tool Screen for Ceiling Mount Power Wall Applications Figure 29 - ISDEMO Constellation Tool Screen for Wall Mount Power Wall Applications Figure 30 - ISDEMO Constellation Tool Screen for CAVE-like Applications Verify system is tracking While still in the Constellation Configuration Tool window, type CTRL-D (or select menu item Display→Start Displaying Data as shown in Figure 31) to verify the Constellation Array is correctly installed and the system is tracking. The tracked device will appear green in the center IS-900 User Guide Page 58 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 of the display window indicating correct tracking. Move the physical tracker around and see it move in the display window. Figure 31 - ISDEMO Constellation Tool Screen with Tracking Devices Also check the LCD panel of the IS-900 Processor. For each connected tracking station, “T” should appear on the IS-900 Processor’s front LCD panel to indicate proper tracking (Figure 32). If an “X”, appears it may indicate hardware, cabling or wireless link issues. Go back to Steps 5 & 6 to reload the proper configuration script containing the correct Constellation Configuration Array. Refer to Section 7 for troubleshooting hardware, cabling and wireless connectivity issues. Figure 32 - Tracking Status Display on IS-900 LCD Panel Saving the Configuration Save the current settings into firmware of the IS-900 Processor by selecting the menu item File→ Save Current Settings from the main ISDEMO (Figure 33). A window will come up asking to save into permanent memory. Select YES to save into permanent memory. IS-900 User Guide Page 59 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Figure 33 - Saving All Configuration Settings to IS-900 Processor Locking the configuration Locking the settings will prevent inadvertently changing settings when not desired. Lock the settings by selecting menu item File→Configuration Lock in main ISDEMO window (Figure 34). A window will come up asking to Lock tracker configuration. Click on Lock Tracker Configuration. Figure 34 - Locking Configuration Settings in IS-900 Processor IS-900 User Guide Page 60 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Connecting to application Follow the instructions or manual that came with the tracked application for using the IS-900 tracking system. If you have problems connecting to your application, first contact the application developer for detailed information about connecting to InterSense tracking systems. If you still need assistance, contact InterSense for technical support. The IS-900 CD delivered with this system contains InterSense Software Development Kit (SDK) for developing interfaces specific to new applications. The application programmers interface (API) and library calls to the InterSense libraries are documented in Section 12. 3.6.6. Using Wireless MicroTrax Devices When power is powered on, the Transmitter Module “Power” LED will turn on. When the battery voltage gets to a low level, the Transmitter Module “Power” LED will begin to flash. This indicates the devices should have about an hour of tracking left before the charger must be plugged in for it to work. If the MicroTrax Transmitter establishes communication with the Receiver, then the “In Range” LED on the Transmitter will light and remain on as long as the device is in range or not in sleep mode. Sleep Mode: If no motion is detected by the Transmitter for about 10 minutes, it and the MicroTrax will power down and the LEDs will turn off. Once the transmitter has shut itself off, it must be manually powered on again before it can be used. NOTE: While the Wireless Transmitter Module is turned off or out of range, the IS-900 Processor will show an X in the LCD and the IS-900 trackers’ output of position and orientation will remain fixed at their last value. Summary of LEDs on Wireless Transmitter Module Power: ON – The MicroTrax device and wireless Transmitter have power. OFF – If the Power Switch is on may mean the battery is too low to operate the device. FLASHING – The battery is low. Connection Status: OFF – If the Power LED is on, no connection has been made to a Wireless Receiver. ON – The Transmitter is connected to a Wireless Receive. FLASHING – Device is losing communication. Summary of LEDs on Wireless Receiver Module Power: ON – Wireless Receiver Module has power from IS-900 Processor OFF – IS-900 is off or is not supplying power to this port. Connection Status: IS-900 User Guide Page 61 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 ON – The Receiver is communicating (or attempting to communicate) with a Wireless Transmitter Module. OFF – A connection has not been established with a Wireless Transmitter Module. Charging Instructions Only use the power supply from InterSense when charging the Radio/Battery board. Other chargers could cause failures and void the warranty. See the battery handling instructions at the beginning of this manual. When the “Low Power” LED on the Transmitter Module is ON or when you want to make sure that the module is fully charged, you should connect the Transmitter Module to the charger. You may leave the Transmitter Module on while charging; but, if you plan on using another Transmitter Module– Base Receiver Module pair with the same channel selected, you must turn off the Wireless Transmitter Module while it is being charged. While it is charging, the LED next to the charger port will be on (Orange). When it turns solid Green, the battery is finished charging (flashing green indicates that the battery is being “topped off”). A fully discharged battery takes less than 4 hours to charge. Changing a MicroTrax head tracking device from a wireless to wired configuration To convert the MicroTrax devices from wireless to wired mode, follow these steps: Turn off the IS-900 processor Disconnect the appropriate receiver cable from the IS-900 Processor to the Base Receiver Module. Turn off the power on the Wireless Transmitter Module connected to the MicroTrax device. Unplug the MicroTrax device from the Transmitter Module and plug it into the MicroTrax IS-900 Wired Adapter device. Connect the wired adapter in the IS-900 Processor and turn the power on. No software or configuration will need to be changed. IS-900 User Guide Page 62 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 4. Interface Communication Protocol For firmware version 4.20 or higher Terminology Throughout this section and the ISDEMO program described in Section 10, certain terms and acronyms are used to reference functional components of all InterSense tracking systems. Specifically, IS-900 models contain an ultrasonic subsystem that includes SoniDiscs (Ultrasonic Transponder Beacons) and Microphones (Ultrasonic Receiver Modules – URMs). To generalize the interface protocol and configuration tools for these tracker models, InterSense uses the term: PSE - Position Sensing Element. A PSE may be Mobile or Fixed. Mobile PSEs are assigned to the stations and their movements are tracked by the system (i.e. MicroTrax Microphones). Fixed PSEs form a CONSTELLATION that is used as a reference for tracking (i.e. SoniStrips & SoniDiscs). In the case of IS-900 tracking systems, Microphones are mobile and SoniDiscs are fixed. 4.1. Commands Sent from the Host to the Tracker <> Carriage return line feed pair- not needed for single character commands. CR – ASCII value 13, LF – ASCII value 10. {} List of parameters required for command. [] List of optional parameters for command. Omitting those results in a query. The IS-900 emulates most (but not all) of the commands in the Polhemus Fastrak™ protocol, thus it is possible to use the IS-900 with most applications without writing new driver code. There are also several additional commands added to access some of the advanced features of the IS900 that do not have any counterpart in the Fastrak™ protocol. Note: Firmware version 3.xx extended Fastrak™ protocol to support up to 32 stations (actual number allowed is determined by your hardware configuration). StationNum in commands, status and data records is now encoded in an extended hexadecimal notation. Numbers 1 to F conform to standard hexadecimal notation, with numbers greater that F represented by additional upper case letters of the alphabet. For example, number 16 is displayed as G. 4.2. Standard Fastrak™ Interface Commands Data Record Request Request a data record from all active stations. Only used in polled mode. Output mode Put in continuous output mode. Put in polled output mode. Default Polled mode IS-900 User Guide Page 63 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Alignment Reference Frame A{stationNum},[Ox,Oy,Oz,Xx,Xy,Xz,Yx,Yy,Yz]<> Sets the coordinate frame with respect to which outputs for that station will be reported. The coordinate frame is defined by a set of three points. Ox,Oy,Oz defines the origin of the new coordinate system, Xx,Xy,Xz defines a point on the positive x-axis and Yx,Yy,Yz defines a point on the positive y-axis. The points on the positive X and positive Y axis are in the new coordinate frame rather than the original coordinate frame. Values are not cumulative/incremental, so any future changes are relative to the original coordinate system. For example, in order to configure station 1 to use a new origin of (50, 60, 70)cm with the coordinate frame rotated 90 degrees about the +Z axis, the command would be A1,50,60,70,50,61,70,49,60,70 (adding +1cm to the Xy value and -1cm to the Yx value). Any length of vector along +X and +Y may be used, as these are normalized internally to a length of 2m (200cm), although for simplicity we recommend adding the same value; in the example, however, the command A1,50,60,70,50,400,70,12,60,70 (adding +340cm to Xy and -38cm to Yx) would cause the same translation/rotation of the coordinate system. If optional parameters are omitted, current values are returned. Units are centimeters. Default Fusion Mode: X=North, Y=East, Z=Down, position origin is defined by SoniStrip Constellation Array horizontally leveled. See Section 3.1. Reset Alignment Reference Frame R{stationNum}<> Resets reference frame to the default. Boresight Reference Angles G{stationNum},[yawref, pitchref, rollref]<> Sets the boresight reference angles for the specified station. If set, these values are then used by the next Boresight command instead of current orientation. If optional parameters are omitted, current reference angles are returned. Units are degrees. Default IS-900 User Guide 0,0,0 Page 64 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Boresight Compatibility Mode MBF<> Switch system to Fastrak Compatible mode. MBI<> Switch system to Firmware Version 2.x Compatible mode. In firmware versions prior to 3.00 the B{stationNum}<> command was implemented as the Heading Boresight (see below) and full boresight was not available. To maintain compatibility with the user software written at that time, two Boresight Compatibility modes are available. In Fastrak Compatible mode B{stationNum}<> command executes full 3-DOF boresight and MB{stationNum}<> effects heading only. In the Firmware Version 2.x Compatible mode the meanings of these commands are reversed. Default Boresight Firmware Version 2.x Compatible, MBI<> B{stationNum}<> MB{stationNum}<> mode) (Fastrak compatibility mode) (Firmware Version 2.x compatibility Boresight a station. If boresight reference angles have been specified by the G{stationNum}[yawref, pitchref, rollref]<> command prior to issuing of Boresight command then that orientation becomes the new reference point. The angles output by the tracker at that orientation become zero. Otherwise, system uses current station orientation and that becomes the new reference line of sight. Please make sure that the object being tracked (like an HMD) is leveled and is pointing down the x-axis when boresighting a station. Unboresight b{stationNum} <> Mb{stationNum}<> mode) (Fastrak compatibility mode) (Firmware Version 2.x compatibility Unboresight a station. Reference angles are cleared for the specified station. Heading Boresight B{stationNum}<> mode) MB{stationNum}<> (Firmware Version 2.x compatibility (Fastrak compatibility mode) This command has no effect with the IS-900. IS-900 User Guide Page 65 of 177 InterSense Heading Unboresight Doc. No. 072-00105-0I07 Rev. 4.2 b{stationNum}<> mode) Mb{stationNum}<> (Firmware Version 2.x compatibility (Fastrak compatibility mode) This command has no effect with the IS-900. Set Serial Communication Parameters o{rate,parity,bits,HHS}<> Change the serial communication parameters rate is one of 3,12,24,48,96,192,384,576,1152 (rate is multiplied by 100) parity N = none O = odd E = even bits 7 or 8 HHS (Hardware handshake) 0 = OFF 1 = ON Default serial communications settings: rate 1152 parity bits HHS OFF System Record Request Station Status l{stationNum},[state]<> Set the stationNum on or off. state Request a system status record to be sent. 0 = OFF, 1 = ON Default Output Units Control Sets output data record position units to inches. Sets the position units to centimeters. These only matter in 6-DOF mode. Default System control All connected stations are on ^K Save the current settings to nonvolatile memory. Restore the system settings to the factory defaults. ^Y Restart the firmware to the power up condition. ^S Suspend data transmission. ^Q Resume data transmission. Caution: Sending W command will cause all the user configuration information to be lost. IS-900 User Guide Page 66 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Output record mode Put in ASCII output mode Put in Binary output mode. Default Output record list settings O{stationNum},[p1],[p2],[p3],.....,[pn]<> Sets the output data list for stationNum. If optional parameters are omitted, a data record containing current output list settings for the station is returned. Item Description Output Format 11 16 18 19 ASCII space character ASCII CR, LF pair x, y, z position coordinates yaw, pitch, roll Euler angles X-axis direction cosines Y-axis direction cosines Z-axis direction cosines orientation quaternion stylus switch status (always 0) x, y, z in 16 bit binary format yaw, pitch and roll in 16 bit binary format quaternion in 16 bit binary format time stamp, in selected time units buttons joystick tracking status auxiliary inputs communication integrity Measurement quality 1 ASCII byte 2 ASCII bytes 3 floats 3 floats 3 floats 3 floats 3 floats 4 floats 1 byte (ASCII/binary) see below see below 20 21 22 23 40 68 – 71 75 76 see below see section 5.3.1 see below see below 0-255 0-100 0-100 Default 2,4,1 Data Item 4 – Euler Angles. The Euler angles are defined as rotations about Z, then Y, then X in body frame. Angles are returned in degrees IS-900 User Guide Page 67 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Roll Pitch Yaw Data Items 5, 6, 7 – Direction Cosines. X-axis, Y-axis and Z-axis direction cosines can be used to construct a 3x3 rotation matrix. x1 x2 x3 y1 y2 y3 z1 z2 z3 X direction cosines. Y direction cosines. Z direction cosines. This matrix can also be constructed from Euler angles: cos(P)*cos(Y) cos(P)*sin(Y) -sin(P) sin(R)*sin(P)*cos(Y) - cos(R)*sin(Y) cos(R)*sin(P)*cos(Y) + sin(R)*sin(Y) sin(R)*sin(P)*sin(Y) + cos(R)*cos(Y) cos(R)*sin(P)*sin(Y) - sin(R)*cos(Y) cos(P)*sin(R) cos(P)*cos(R) Data Item 11 – Orientation Quaternion. Quaternion is returned as q = [w, x, y, z]. Quaternion to rotation matrix conversion can be accomplished using the following formula: 1–2y2 – 2z2 2xy + 2wz 2xz – 2wy 2y2 IS-900 User Guide 2xy – 2wz 1 – 2x2 – 2z2 2yz + 2wx 2xz + 2wy 2yz – 2wx 1 – 2x2 – Page 68 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Data Items 18, 19, 20 – 16 bit binary format. 16 bit binary format can be used in applications requiring fastest possible serial I/O. Each floating point number is stored in 2 bytes with only 14 bits containing actual data. This results in lower accuracy than the standard IEEE floating point format. Data is 2’s-complement. The first byte of the data set has its high-order bit set to 1; all others have them set to zero. This can be used for data synchronization. Data is returned low-order byte, then high-order byte. Use following code sample as an example on how to decode this format: To decode position: lo = (dataRecord[3] & 0x007F); hi = (dataRecord[4] & 0x007F); int14bit = (lo « 2) | (hi « 9); result = (float) int14bit * 3.0 / 32768.0; Result is a number representing position (in meters) and has a full range of ± 3.0 meters (−300.0 to+299.963 centimeters or – 118.110 to 118.096 inches). To decode Euler angles: lo = (dataRecord[3] & 0x007F); hi = (dataRecord[4] & 0x007F); int14bit = (lo « 2) | (hi « 9); result = (float) int14bit * 180.0 / 32768.0; Resulting number represents orientation and has a full range of ± 180.0 (−180.0 to +179.978) degrees. To decode Orientation Quaternion: lo = (dataRecord[3] & 0x007F); hi = (dataRecord[4] & 0x007F); int14bit = (lo « 2) | (hi « 9); result = (float) int14bit * 1.0 / 32768.0; Resulting quaternion value has range of ± 1.0. IS-900 User Guide Page 69 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Data Item 22 – Buttons. One 3-digit integer in ASCII format or one byte in binary format. Bits represent the button states of a station’s buttons. If a button is pressed, the corresponding bit is 1 otherwise it is 0. The bit assignments for the wand are (where bit 0 is the least significant bit): Bit Button MicroTrax Wand button 1 on wand image 2 on wand image 3 on wand image 4 on wand image center (press joystick) trigger Data Item 23 – Joystick. Two integers, one for each axis, values ranging from 0 to 255. Two 3-digit integers in ASCII format or two 1-byte unsigned values in binary format. Values at limits and at center are: Axis left/right (1st integer) front/rear (2nd integer) Define Tip Offsets Position left center right rear center front Value 127 255 127 255 N{stationNum},[Ox, Oy, Oz]<> By default, the point being tracked is for each station is: Wand Station: Tip. Head Tracker Station: Intersection of front surface, bottom surface and at mid length, see image to the left. Tip Offset: intersection of front surface and bottom surface and at mid length. Hand Tracker Station: center top, in dent. This command allows the user to define a set of position offsets, so a different point can be tracked. Offsets are measured in the body coordinate frame of the MicroTrax station and are entered in centimeters. If optional parameters are omitted, current settings are returned. Default IS-900 User Guide 0,0,0 Page 70 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Position Operational Envelope V{stationNum},[Xmax, Ymax, Zmax, Xmin, Ymin, Zmin]<> This command sets the boundaries of the area where position is to be tracked. Whenever a station leaves the defined range, position tracking is stopped and only resumed once it is back within the defined boundaries. Parameters are entered in meters. If optional parameters are omitted, current settings are returned. Units are meters. Default 4.3. Hemisphere 200,200,200,-200,-200,-200 Fastrak™ Commands Implemented for Compatibility H{stationNum},[p1,p2,p3]<> Sets the tracking hemisphere for a magnetic tracking system. Because InterSense trackers are not magnetic the parameters are ignored. However, they can be set and then queried for compatibility with software such as MultiGen SmartScene or Immersion Corporation haptic Software. If optional parameters are omitted, a data record containing current Hemisphere settings for the station is returned. Default 4.4. 1,0,0 InterSense specific Commands All InterSense specific commands start with the letter M (for “Manufacturer-specific”) and must be completed by a CR,LF pair. IS-900 User Guide Page 71 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 4.4.1. System Configuration Commands Time Units The time stamp recorded is the time when the tracker data was collected from the hardware. The time index is set to zero when tracker is first turned on. MT<> Sets the units for the data record time stamp to milliseconds. Mt<> Sets the units for the data record time stamp to microseconds. Default Set Current Time to Zero MZ<> This command sets current time index of the tracker to zero. Set Ethernet Communication Parameters MEthIp{address}<> Sets System IP address. Use dotted format like 192.168.1.1. If address is omitted, the current address is returned, 31EI[address]<>. The IP address takes effect immediately unless an address was already set, in which case system settings must be saved and the system must be restarted. MEthTcpPort{port}<> Sets TCP communication port. MEthUdp{state}<> Sets state of UDP broadcast. 1=enabled, 0=disabled MEthUdpPort{port}<> Sets UDP broadcast port. MEthSubnet{subnet}<> Sets network subnet. MEthMode{mode}<> Sets network subnet. 2=DHCP, 1=manual, 0=disabled MEthApply<> Apply Ethernet settings (settings must be saved to make this permanent). Default Ethernet communications settings: UDP state OFF UDP port 5001 TCP port 5005 Subnet 255.255.255.0 IP address None IS-900 User Guide Page 72 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 InterSense System Status Record Request MS<> Request the manufacturer-specific system status record. This is information about parameters which are specific to the InterSense product, additional to the standard system status information obtained using the S command. Tracking Status Record Request MP<> Requests tracking status information for all 12 stations. See Section 5.5.5 for the description. Ultrasonic Timeout Interval MU[interval]<> This command has no effect with the IS900. Default N/A Ultrasonic Receiver Sensitivity Mg[Level]<> This command has no effect with the IS-900. Default Genlock Synchronization MG[State, Rate]<> State Rate Default Genlock Phase N/A 0 – Genlock is off (free run) 1 – Reserved 2 – External sync, manual (supply strobe rate) 3 – Internal sync, supply output record rate Value in Hertz used with State = 2 and 3 MGP[Param]<> Param can be the Phase (0 to 100%) or ‘+’ to increase to the next phase point, or ‘-‘ to decrease to the next phase point. Please see Appendix F for complete details. Default Genlock Sync Source MGS[source]<> source IS-900 User Guide 1 – TTL 2 – NTSC Page 73 of 177 InterSense Configuration Lock Doc. No. 072-00105-0I07 Rev. 4.2 Configuration lock commands are used to prevent unintentional changes to tracker configuration. Two Levels of protection are provided. The First prevents changes to saved settings. The second prevents changes to current unsaved (session) settings as well as saved settings. MConfigLockMode[mode]<> Mode 0 Lock off 1 Lock saved settings 2 Lock saved and session settings Default In mode 1 (lock saved settings), the Fastrak commands to save current (^K) and restore factory (W) settings are disabled. In mode 2 (lock saved and session settings), the Fastrak command to restore saved settings (^Y) is disabled as well as ^K and W. In mode 0 (lock off), ^Y, ^K and W are all enabled. When mode is changed, it is saved to nonvolatile memory without affecting any other saved settings. If mode is omitted, the current setting is returned. The LCD menu options to save and restore settings are not affected by lock mode. SoniStrip LED control ML[state]<> If state is 0, the blue LEDs on the SoniStrips are disabled. Visual confirmation of the operation of the ultrasonic system is important, so don’t disable the LEDs unless they interfere with your application. Default Beacon Scheduler MSchAlg[n]<> Selects beacon Scheduling Algorithm. If n is 1, a distance-based algorithm is used. This algorithm chooses beacons based on distance only. If n is 2 a directional algorithm is used which chooses beacons based on orientation as well as distance. Default 2 Error reporting IS-900 User Guide Hardware and configuration errors are stored internally and can be reported to the application. If the application is not setup to accept error messages, or if you are not sure, error reporting should be disabled. This setting is not saved with tracker configuration, so error reporting is off every time tracker is turned on. Page 74 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 ME<> MEC<> ME1<> ME0<> Returns all errors, one per error message. Clear all errors from internal list. Enable error reporting. Disable error reporting. Default Error reporting is OFF Command logging Command logging captures all host commands into a file for debugging purposes. The log file holds a maximum of 500 kB. When the max size is reached, the file is rewound and overwritten with new entries. Long series of P and MP commands are abbreviated to save space. The command logging state is also indicated on the LCD (see Section 5). Command logging control is available on the LCD menu under System ConfigCommand Log: Enable Log, Disable Log and Clear Log. It is accessed by the following command set. MLogOpen<> MLogClose<> MLogClear<> MLogState<> MLogSend<> Enables logging. If settings are saved, logging will remain on through reset. An existing log file is always appended to. Disables logging. Disables logging and deletes log file. Use MLogOpen to resume logging. Returns logging state (0=off, 1=on), 31LS{0,1}<> Outputs log file to host one command per line. 31LF: <> the timestamp is a decimal number and is not zero-padded. The log file can alternatively be retrieved using ISDEMO (see section 10). 4.4.2. InterSense-specific Station Parameters InterSense Station Status Record Request Ms{stationNum}<> Request an individual sensor status record for stationNum. This is information about parameters which are specific to the InterSense product. Prediction Interval Mp{stationNum},[Interval]<> Sets the time-interval of prediction for stationNum. Interval is an integer number of time in milliseconds. Suggested IS-900 User Guide Page 75 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 range is 0-50 ms. This parameter is used for both position and orientation prediction. If optional parameter is omitted, current prediction value is returned. Default Perceptual Enhancement Level MF{stationNum},{Mode}<> In order to provide the best performance for a large range of various applications, 3 levels of perceptual enhancement are available. None of the modes introduces any additional latency. Mode 0 provides the best accuracy. The drift correction adjustments are made immediately; no jitter reduction algorithms are used. This results in somewhat jumpy output (not recommended for head-tracking) but with lower RMS error. Use this mode for accuracy testing or for any application that requires best accuracy. Mode 1 provides accuracy similar to that of mode 0, with an addition of a jitter reduction algorithm. This algorithm reduces the accuracy by only a small amount and does not add any latency to the measurements. 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. Default Compass Heading Correction MH{stationNum, mode}<> Turns on the stationNum’s compass heading correction. To operate effectively, the magnetic field in the environment needs to be homogeneous. Only valid when an InertiaCube is being used as a station (i.e. not valid for MicroTrax devices). For an InertiaCube, the modes are defined: Mode 0 - Compass is OFF, no heading compensation is applied. Not recommended, Modes 1 or 2 are preferred. Mode 1 - Partial compass mode. Magnetometer readings are used to reduce drift and maintain stability, but not as an absolute measurement system. In this mode, system is IS-900 User Guide Page 76 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 much less susceptible to magnetic interference, but heading drift will slowly accumulate. This mode is particularly useful when high rotational sensitivity settings are used. Mode 2 - FULL compass mode. Readings produced by the magnetometers inside the InertiaCube are used as the absolute reference orientation for yaw. Default Mh{stationNum}<> Turns off the stationNum’s compass heading correction. There can be slow drift in the yaw direction. Only valid when an InertiaCube is being used as a station (i.e. not valid for MicroTrax devices). Rotational Sensitivity Level MQ{stationNum},[Sensitivity Level]<> Adjusts rotational sensitivity of a station when the Perceptual Enhancement Level is set to level 2. Sensitivity Level is an integer 1 to 4 where 1 is the lowest and 4 is the highest sensitivity. It is recommended that sensitivity be set to 4 when enhancement is set to level 1. If optional parameter is omitted, current value is returned. Default 4.4.3. Station and Constellation Configuration Commands This section describes the commands used to assign sensing devices to the logical components of the tracking system. Such devices with the IS-900 are SoniStrips and the SoniDiscs (beacons) that make up the Constellation Array. All commands in this section start with MC. A Configuration Session is the period during which MC commands are received and accepted. It starts when the first MC command arrives and ends when these commands are explicitly activated with the MCe<> (or discarded with the MCx<>) command. Associate Fixed PSE with a Constellation MCF{FPSE number},{xp, yp, zp, xn, yn, zn, IDcode}<> Configures or adds a Fixed PSE. For IS-900 FPSE is a SoniDisc ultrasonic transponder beacon. If only the FPSE number parameter is present then current data for that PSE is returned on the serial port. If that PSE is not configured, record will contain Hardware ID of -1. If no parameters are provided then data for all configured Fixed PSEs is returned, each PSE in a separate record. This command does not take effect until explicitly activated by the MCe<> command. FPSE number IS-900 User Guide Page 77 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 A Unique number identifying a Fixed PSE (beacon) within a Constellation (a complete set of fixed PSEs). Numbering starts at 1. xp, yp, zp xn, yn, zn IDcode <> FPSE position in meters. Normal vector. Hardware ID of the PSE. CR LF pair. Disassociate Fixed PSE from the Constellation MCf[Fixed PSE number, IDcode]<> If PSE number and IDcode are not associated in the current configuration, this command is ignored. This command does not take effect until explicitly activated by the MCe<> command. Clear All Fixed PSEs (Constellation) Command MCC<> Delete all Fixed PSEs from the configuration. This command does not take effect until explicitly activated by the MCe<> command. IS-900 User Guide Page 78 of 177 InterSense Apply New Configuration Doc. No. 072-00105-0I07 Rev. 4.2 MCe<> This command reconfigures the system with the new MicroTrax station and SoniDisc information. Configuration Session is the period during which the station and constellation configuration commands are received and accepted. The configuration session starts when the first MC command arrives. MC commands are saved but not applied to the system configuration until the MCe<> command is received. This command executes all MC commands received since the start of the Configuration Session and computes the new system state. Cancel Configuration Session MCx<> Cancel the configuration session command. All MC commands received during the session are discarded. IS-900 User Guide Page 79 of 177 InterSense 4.5. Doc. No. 072-00105-0I07 Rev. 4.2 Records Returned from the Tracker to the Host 4.5.1. Format Considerations Record Headers The first byte of each record is used to identify its type. 0 – Data record. 2 – Fastrak™ status record. 3 – InterSense manufacturer-specific status record. Floating Point Numbers Floating point numbers can be returned as IEEE 32 bit floats or as ASCII numbers in X.xf notation, where: is the total number of characters used to represent the float. is the number of digits after the floating point. is a symbol indicating that number is a float. For example, number -42.6 in 10.4f format would look as follows: “-42.6000” 4.5.2. Status Record Hexadecimal Character Decoding System Status, Manufacturer Status, and Manufacturer Station records use Hexadecimal Characters to encode status data. Each character can be 0 to F and can encode 4 bits. Logical AND operator can be used to test specific bits. Please see following code example: unsigned short byte1, byte2, byte3; char hexChar[2]; hexChar[1] = 0x00; hexChar[0] = statusRecordBuffer[3]; sscanf(hexChar,"%x", &byte1); hexChar[0] = statusRecordBuffer[4]; sscanf(hexChar,"%x", &byte2); hexChar[0] = statusRecordBuffer[5]; sscanf(hexChar,"%x", &byte3); IS-900 User Guide Page 80 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 4.5.3. Fastrak™ System and Data Records Data Record This record is sent in response to the P command in polled mode or continuously in continuous mode. A separate data record is sent for each active station. The list of data items in each station record depends on how the list was set up with the O command. For most of the commonly used data list items, the format depends on commands F, f, U, u, MT, Mt. 0{stationNum}{status}{dataItem1,dataItem2,....} stationNum A hexadecimal number up to C (decimal 12) status An ASCII space character. This status byte is currently unused. dataItemX ASCII In ASCII numbers, set with the F command, any numbers returned as floats are returned as ASCII numbers. Each number is 7 ASCII characters: a sign, 3 digits, a decimal point and 2 more digits. If programming in C use scanf(“%7.2f”, &value) to read them. Binary In binary mode, set with the 'f' command, the floats are sent as 4 byte IEEE 32-bit floats. Time Stamp 32 bit floating point number ASCII In ASCII mode it is allowed 14 characters and is displayed as an integer (digits after the floating point are ignored). Binary In binary mode it is returned as a 32 bit float. Binary16 mode Set by selecting 18, 19 and/or 20 only with the O command. This is the fastest way to get data but the most difficult to decode and the least accurate. IS-900 User Guide Page 81 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Example: For the default data record O1,2,4,1<> in ASCII mode 'F'. The output record set for the active stations 1 and 2 would look as follows: '01 '02 1.23 41.83 23.01 -452.94 12.18 0.01 13.04 -1.01 76.11 23.32 34.12CRLF' 12.34CRLF' Station 1: x=1.23, y=41.83, z=12.18, yaw=13.04, pitch=76.11, roll=34.12 Station 2: x=23.01, y=-452.94, z=0.01, yaw=−1.01, pitch=23.32, roll=12.34 System Status Record This record is sent in response to the S command. It contains system wide status information. Some of the information in the status record must be bit decoded. 21S{statusRecord}<> Bytes 7-9 10-15 16-21 22-53 54-55 Explanation Record type, '2' Station Number. Always '1' Sub-Record type, 'S' Config Hex Char 0 Config Hex Char 1 Config Hex Char 2 BIT error. Currently unused. Blank Firmware version ID System Identification CR, LF To decode each of the Config bytes Config Hex Char 0 Config Hex Char 1 Unused Unused Config Hex Char 2 Bit Meaning Output Format (0= ASCII, 1=Binary) Output Units (0=Inches, 1= Centimeters) Unused Transmit Mode (0 = Polled, 1 = Continuous) Output List Record This record is sent in response to an O{stationNum}<> command. It returns the list of currently selected output parameters for that station, 2 bytes per item. 2{stationNum}O{par1par2...parN}<> Bytes IS-900 User Guide Explanation Record type , '2' Page 82 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 C. 4-5 6-7 … Station Number. A hexadecimal number up to Sub-Record type, 'O' par1 par2 CR, LF For example, the default data list would be returned as: '21O 2 4 1<>' Station State Record This record is sent in response to an l{stationNum}<> command. If the stationNum parameter is omitted the record returns the state of the first four stations. This maintains compatibility with the Fastrak protocol. If stationNum is stated then byte 4 of the record will contain the state of the requested station. Bytes 5, 6, and 7 will contain the state of stations 2, 3, and 4. If stationNum is replaced with the ‘*’ wild-card character, then status for 32 stations is returned in a single record. Output of values are interpreted as 1 for ON and 0 for OFF. 2{stationNum}l{stat1stat2stat3stat4}<> Bytes Explanation Record type , '2' Station Number. 1, 2, 3, 4 Sub-Record type, 'l' State of station stationNum, or station 1 if omitted. State of station 2. State of station 3. State of station 4. 8-35 (if ‘*’) Status of stations 5 to 32. 8,9 or 36,37 CR, LF For example, if stations 1 and 3 are on: l1<> command will return ‘21l1010<>’ l*<> command will return ‘21l10100000000000000000000000000000<>’ IS-900 User Guide Page 83 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 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 4-24 25-45 axis 46-66 axis 67-68 Explanation Record type , '2' Station Number. A hexadecimal number up to C. Sub-Record type, 'A' OxOyOz - origin coordinates XxXyXz - vector in the direction of the positive x YxYyYz - vector in the direction of the positive y CR, LF Boresight Reference Angles Record This record is sent in response to a G{stationNum} command. It returns 3 ASCII floats that were last set with the G command. Each float is represented as 7 characters with 2 digits after the floating point. Units are degrees. 2{stationNum}G{yawref pitchref rollref}<> Bytes C. 4-10 11-17 18-24 25-26 Hemisphere Record Explanation Record type , '2' Station Number. A hexadecimal number up to Sub-Record type, 'G' yawref - azimuth reference angle pitchref - elevation reference angle rollref - roll reference angle CR, LF This record is sent in response to an H{stationNum}<> command. It returns 3 ASCII floats that were last set with the H command. Each float is represented as 7 characters with 2 digits after the floating point. 2{stationNum}H{p1p2p3}<> IS-900 User Guide Page 84 of 177 InterSense Tip Offset Record Doc. No. 072-00105-0I07 Rev. 4.2 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 C. 4-11 12-19 20-27 28-29 Explanation Record type , '2' Station Number. A hexadecimal number up to Sub-Record type, 'N' Ox – X-direction tip offset Oy – Y-direction tip offset Oz – Z-direction tip offset CR, LF Position Operational Envelope Record This record is sent in response to a V{stationNum}<> command. It returns 6 ASCII floats that were last set with the V command. Each float is represented as 7 characters with 2 digits after the floating point. Units are meters. 2{stationNum}V{Xmax,Ymax,Zmax,Xmin,Ymin,Zmin}<> Bytes C. 4-11 12-19 20-27 28-35 36-43 44-51 52-53 IS-900 User Guide Explanation Record type , '2' Station Number. A hexadecimal number up to Sub-Record type, 'V' Xmax – Maximum X-direction value Ymax – Maximum Y-direction value Zmax – Maximum Z-direction value Xmin – Minimum X-direction value Ymin – Minimum Y-direction value Zmin – Minimum Z-direction value CR, LF Page 85 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 4.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 7,8 Explanation Record type , '3' Station number. Always '1' Sub-Record type, 'S' Config Hex Char 0 Config Hex Char 1 Config Hex Char 2 CR, LF To decode each of the Config Hex Characters Config Hex Char 0 Reserved Config Hex Char 1 Reserved Config Hex Char 2 Bit Meaning Reserved Boresight Compatibility Mode (0 = Firmware Version 2.x, 1 = FASTRACK) Time units (0 = milliseconds, 1 = microseconds) ReceiverPod LEDs (0 = OFF, 1 = ON) Manufacturer Station Record This record is sent in response to the Ms{stationNum}<> command. It returns a station status record specific to the InterSense system. 3{stationNum}s{statusRecord}<> Bytes 7,8 Explanation Record type , '3' Station number. A hexadecimal number up to C. Sub-Record type, 's' Config Byte 0 Config Byte 1 Config Byte 2 CR, LF To decode each of the Config bytes IS-900 User Guide Page 86 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 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. Config Byte 2 Bit Meaning Reserved Heading Compensation Mode bit 1 Heading Compensation Mode bit 2 Reserved Heading compensation bits are translated as: 00 – Compass mode 0 (compass is off) 01 – Compass mode 1 (Partial compass mode) 10 – Compass mode 2 (Full compass mode) Prediction Interval Record This record is sent in response to Mp{stationNum}<> command. It returns an ASCII integer for the number of milliseconds of prediction. 3{stationNum}p{interval}<> Bytes 4-5 6,7 Sensitivity Level Record Explanation Record type , '3' Station Number. A hexadecimal number up to C. Sub-Record type, 'p' Prediction interval. CR, LF This record is sent in response to MQ{station number}<> command. It returns the current sensitivity settings of a station. This setting is only relevant when Perceptual Enhancement level is set to 1 or 2. 3{Station Number}Q{Sensitivity Level}<> Bytes 5,6 IS-900 User Guide Explanation Record type , '3' Station Number. A hexadecimal number up to C. Sub-Record type, 'Q' Sensitivity level 1 to 5 CR, LF Page 87 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 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 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. CR, LF 4.5.5. Records Specific to IS-900 Models Ultrasonic Timeout Record This record is sent in response to the MU<> command. It returns an ASCII integer for the number of milliseconds of the ultrasonic timeout. 31U{Interval}<> Bytes 4,5 6,7 Explanation Record type , '3' Station Number. Always 1. Sub-Record type, 'U' Ultrasonic timeout value. CR, LF Ultrasonic Sensitivity Record This record is sent in response to the Mg<> command. It returns an ASCII integer representing current sensitivity setting of the ultrasonic receivers. 31g{Level }<> Bytes 5,6 IS-900 User Guide Explanation Record type , '3' Station Number. Always 1. Sub-Record type, 'g' Sensitivity Level. CR, LF Page 88 of 177 InterSense Fixed PSE Record Doc. No. 072-00105-0I07 Rev. 4.2 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 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. x, y, z components of normal vector in 7.2f ASCII format Hardware ID code in ASCII format. CR, LF Sent in response to MP<> command. It returns the tracking status information for all 12 stations. Range measurement is defined as an ultrasonic signal received by a single URM. For example, if the system is configured with two URMs and six ultrasonic beacons (SoniDiscs), 12 range measurements per cycle could be received. 31P{Tracking state record}<> Bytes Explanation Record type, 3'3' Station Number. Always 1. Sub-Record type, 'P' Tracking state identifier for station 1. State can be L if lost, T for tracking, or X for invalid. Please see Section 4.2.10 of this manual for complete description. Number of range measurements received this cycle. Number of range measurements rejected. … 3+3*N Tracking state identifier for station N. … 40-44 Update rate per station. 45 Not used, always blank. 46 Genlock identifier. Can be G for Genlock on and synchronized, X if Genlock on but not synchronized, or blank if Genlock is off. 47,48 CR, LF IS-900 User Guide Page 89 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 5. LCD Status & Settings Screen (Firmware 4.26 and higher) 5.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. There are 7 buttons provided for status/menu navigation: Up, Down, Right, Left, Enter, F2, and F1 (see Figure 35). Figure 35 - IS-900 LCD Status & Settings Screen Command logging indicator is the "C" field. If logging is off, the indicator is blank. If logging is on, it is "C". If logging is on and the log file has wrapped (overflowed), the indicator is "W". The “G” indicates GENLOCK is on and an “X” in its place indicates GENLOCK in on, but the GENLOCK signal is not valid. A blank field indicates that GENLOCK is off. See Appendix X to learn about GENLOCK. In display mode, "xx" is the statistic indicated by the "dd" field. The up/down arrows rotate between the possible statistics. Statistics - when the field “dd” is replaced by: RC Indicates the number of measurements received. RJ Indicates the number of rejected measurements. CI Indicates wireless communication integrity (100% when running wired)* TQ An overall measure of tracking quality (nominally > 80%) MQ An overall measure of ultrasonic range quality (nominally > 95% when still) *NOTE: If the tracking device is running wired and the CI is less than 100%, then a faulty wire or connection is probable. Power down and reseat all connections. Contact InterSense if condition continues. In display mode, the rotating “~o~” located in the upper right corner of the LCD panel is an indication of IS-900 Processor health operation. If the rotating “~o~” is replaced by an “E”, then an error has occurred in the IS-900 processor. Not all errors are serious, and can sometimes be cleared using the LCD menu with no ill effect on the system. The LCD menu will also let you determine the error code(s) which are referenced in Section 10. Buttons for display mode: Enter Transitions to menu mode. Right/Left Selects next/previous group of stations for status display. Up/Down Switches between measurements received, measurements rejected, tracking quality, and communication integrity. IS-900 User Guide Page 90 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 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. 5.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. To show progress during initialization, a line of 8 dashes turns into squares from left to right as each port is initialized. After initialization, the LCD operates in 2 modes; display and menu. In display mode (Figure 36), the LCD indicates the tracking status of 4 stations at a time. Figure 36 - LCD Panel in Normal Display Mode (Tracking One Station) If the system is running, the station status is displayed and the indicator at the upper right corner of the display should rotate. A number and a letter along the upper row, starting on the left side of the LCD panel, represent each tracking station. Pressing the right arrow button (as shown in Figure 37) will bring the status of the remaining stations into view. Figure 37 - Status Display of Additional Tracking Stations IS-900 User Guide Page 91 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 In Figure 36, 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. As shown in Figure 36, the “RC” shows that 11 ultrasonic measurements where received and used during the last measurement cycle of this tracking station. Pressing the up/down buttons will cycle through the other statistics displays. Figure 38 shows a zero value for the “RJ” or rejected measurement field indicating that all ultrasonic measured values where used (none where rejected) during the last measurement cycle. Figure 38 - Rejected Measurement Status for Tracking Station 1 The statistical values for “CI” or communication integrity (shown in Figure 39) are represented by a percentage from 0 to 100%. 100% indicates the station is communicating with no errors or missing records. For wired tracking stations, this value will always be 100%. If a station is disconnected, it shows 0%. Anything in between might indicate a poor connection or an excessive length of cable for a wired tracker, or for a wireless tracker, may indicate a weak signal or radio frequency interference. Wireless stations, typically show 90-100% because some records are lost or corrupted due to the nature of the radio link. Lower percentages can occur when Wireless MicroTrax devices are set to adjacent channels, or if interference from a source like a heavily used wireless LAN is present. If a wireless station drops below about 30%, the link is assumed down and shows 0% until it is reestablished. A wireless station also shows 0% while it is asleep. When a station drops to 0%, “X” is displayed in place of “T” or “L” for that station on the LCD. IS-900 User Guide Page 92 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Figure 39 - Communication Integrity Status for a Wired Tracking Station 1 The statistical values for “TQ” or tracking quality (shown in Figure 40) 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. This statistic is also available in the output data record item #75 indicating communication integrity for a station. It ranges from 0 to 100, the same as the LCD value. Figure 40 - Tracking Quality Status for a Wired Tracking Station 1 With MicroTrax devices, the number of measurements a station receives and the size of the range errors of each measurement determine tracking quality. A station that receives a measurement at each microphone in almost every measurement cycle, with an average range error of less than 1 mm, will indicate 100%. The quality can drop to 0 if the station stops receiving measurements or range errors get larger than 2 cm. Brisk motions or shock can also temporarily reduce quality. It is typical to see a figure of 90% or higher for a motionless station under good conditions with a well-calibrated Constellation. Loss of data from poor communication integrity will also reduce the tracking quality. This statistic is also available in the output data record item #40 indicating tracking status for a station. In this data record, the value is 2.55 x TQ% (a range of 0 to 255). Closely related to “TQ”, the “MQ” or measurement quality value indicates the average range errors recorded in the ultrasonic measurement cycle. While the “TQ” value incorporates both the range errors and number of measurements in its calculation, “MQ” is only concerned with range errors (these can be displayed using the Diagnostics Screen mode in ISDEMO). Because range errors primarily are due to the accuracy of the emitter positions, this value should be very high (nominally 95%) for a stationary tracker as long as several emitters are being detected. Low values, especially when moving slowly, often indicate mis-sighted or mis-configured constellations. “MQ” is output data record item #75. IS-900 User Guide Page 93 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 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 36. The first step is to press the Enter key which brings the LCD into the top menu of Menu mode. Step 2 – Scroll down to System Config Use the down arrow keys to scroll to the system configuration menu item. Step 3 – Access the System Config submenu Use the ENTER key to access the system configuration submenu. Step 4 – Access the Information submenu Press enter to access the information submenu which displays the current Firmware Revision of the IS-900. If left alone, the LCD panel will automatically switch back to Display mode or pressing F1 will exit the Menu mode directly. Pressing F2 will go up a single level in the menu tree. IS-900 User Guide Page 94 of 177 InterSense 5.3. Doc. No. 072-00105-0I07 Rev. 4.2 IS-900 LCD Menu Flow Chart Figure 41 illustrates the flow chart for the IS-900 LCD menu. Communication Station Config System Config Errors Display Reset Encoders (reserved) Exit Menu 0. 9600 Baud 1. 19200 Baud 2. 38400 Baud 3. 115200 Baud BACK Baud Rate Data Output Ethernet BACK Inches Centimeters BACK Format Units Sample Mode BACK 0. Disabled 1. Manual 2. DHCP BACK Mode IP Address Subnet Mask TCP Port Apply UDP Broadcast BACK Binary Form ASCII Form BACK Polled Continuous BACK IP Address xxx.xxx.xxx.xxx UDP Port: xxxx Subnet Mask xxx.xxx.xxx.xxx Set Group Set Mode BACK TCP Port xxxx Prediction: XXms Broadcast On Broadcast Off UDP Port BACK Set Group XX # Set Station XX # Prediction Sensitivity Enhancement Compass State BACK Set Station Config Station View Station BACK Information Settings Genlock Beacons Command Log Monitor BACK Meas Received Meas Rejected Comm Integrity Track Quality Meas Quality BACK 1. Low 2. Medium 3. High 4. Max BACK 0. None 1. Partial 2. Full BACK Station [X] State [X] Enhancement [X] Sensitivity [X] Compass [X] Prediction [X] BACK Enable Log Disable Log Clear Log BACK 0. Off 1. Bias 2. Full BACK Station On Station Off BACK Update Rate Rev. _____ BACK Rate: xxxx Hz LED Control Volume BACK Min Low Med Max BACK View Errors Clear Errors BACK Save Current Restore Factory Restore Saved Set Config Lock BACK LEDs On LEDs Off BACK Errors #x xxxxxxH Genlock Off External Internal BACK State Phase Source BACK TTL NTSC BACK Set Phase Increase Decrease BACK 0. Off 1. Saved 2. Saved/Session BACK Strobe Rate xxx Hz Output Rate xxx Hz Phase Point xxx % LCD menu flow chart for firmware versions 4.29 and greater. Bold boxes represent decision points. Figure 41 - IS-900 LCD Menu Flow Chart IS-900 User Guide Page 95 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 6. 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. 078-00088-0030, can run a maximum length of 15 meters (50 ft). The maximum length of the total SoniStrip daisy chain measured from the IS-900 Processor to the end of the SoniStrip chain is 24 meters (80 ft.) without external power boosters. The IS-900 SimTracker configuration can support a maximum of 12 SoniStrips (36 SoniDiscs) per system. The IS-900 VETracker configuration can support 84 SoniStrips (252 SoniDiscs) split between two ports with the use of external power boosters. With the power boosters, the maximum length of the complete SoniStrip daisy chain measured from the IS-900 Processor to the end of the SoniStrip chain can be greater than 90 meters (300 ft.). Please consult InterSense for non-standard configuration support! See Section 1.8 for full details on cabling. Q3. What is the Mean Time Before Failure (MTBF) of the IS-900 system? Based on supplier data, the MTBF for the IS-900 is estimated at 5 years. Q4. What type of shock can the MicroTrax Tracked Devices sustain? The individual inertial components in the MicroTrax Devices are designed to withstand a maximum acceleration of 500 g. Basically this means that a direct impact on the devices is not recommended and will most likely result in damaging the packaging, ultrasonic components and/or calibration of the device. Should your tracking components experience this type of shock, consult InterSense to determine if repairs or recalibration are needed. The MicroTrax devices can withstand a higher level of external shock if mounted on rubber, since the acceleration experienced by the MicroTrax device itself is reduced. Also, InterSense manufactures hardened tracking devices for industrial environments. Consult InterSense sales if you require a hardened tracking device. Q5. What are the PIN assignments on the RS-232 Serial Ports (DB9) on the IS-900 Processor? Pin Function DCD RX TX DTR IS-900 User Guide Page 96 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 GND DSR RTS CTS RI Q6. Do you have any advice about working with software packages? InterSense maintains a list of software partners at http://www.intersense.com/softwarepartners. Please check this web page and then consult with the software vendor to determine compatibility. If the software package is not listed or you have any questions, contact InterSense technical support at techsupport@intersense.com. Q7. How do I know whether I have the latest release of ISDEMO? Check our web site’s Support/Downloads section. The direct URL is http://www.intersense.com/downloads. All versions of our product CDs are available for download. We always post the latest release for you to download. Q8. If my tracker is not working properly, how can I have it examined or repaired? Please contact InterSense technical support at +1 781-541-7624, or email techsupport@intersense.com. A support representative will assist you with troubleshooting the tracker, and if it is determined that there is a hardware problem, can provide a return authorization number to have it repaired. InterSense has a standard warranty of one year for all serial-numbered items, which covers defects in materials and workmanship. Physical or electrical damaged to equipment is not covered, with the exception of damage that is caused by another InterSense device being properly connected to the damaged device, or in similar instances. If your device is more than one year old, it can still be repaired by InterSense, but it may incur an examination fee as well as charges for parts and labor. If you require warranty coverage on a device or devices beyond one year, InterSense sells extended warranties in one-year increments – please contact your sales representative for additional information or to purchase such a warranty extension. IS-900 User Guide Page 97 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 7. 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). 4) The RS-232 cable running from the IS-900 to the computer is not a straight-through serial cable. 5) Not using Start Displaying Data (CTRL-D). It may be necessary to select Stop Displaying Data (CTRL-X) first. 6) Check the communication settings for proper configuration with either Serial or Ethernet, depending on the choice of host communications. 7) If connecting over Ethernet, you may need to save the settings and power-cycle the IS-900 for them to take effect. Also, verify that you are using a patch cable if connected to a hub/switch or a crossover cable if connected directly to a PC. 8) If connecting over Ethernet, ensure that you are on the correct subnet. This means that the first three dotted numbers are the same between the PC and IS-900, and the subnet mask for the PC’s network card is 255.255.255.0. ISDEMO is running, but system does not track Check for the following: 1) The IS-900 is not plugged in or the host connection is not plugged in or configured properly. Check all power, connections and Communication configuration in ISDEMO. 2) The SoniStrips are not connected to, or detected by, the IS-900 (the port they are connected to should have a corresponding red LED lit to indicate they are connected – if no red LED is lit, then try powering down the IS-900, unplugging and replugging the cable, and turning the IS-900 on again). 3) The SoniStrips may be connected to the processor with an incorrect cable. The cables used between SoniStrips and between a SoniStrip and the IS-900 should have 10 pins, and will typically have a blue band around them. If your cable has 8 pins, it is a tracker cable and cannot be used with SoniStrips. IS-900 User Guide Page 98 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 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”. This creates a window with text information about the configuration of the system and will report is the IS-900 is communicating correctly to both the SoniStrips and Tracker(s). This text file can be saved from the same window using the menu item “File Save” and sent to InterSense for technical support (techsupport@intersense.com). Orientation is drifting uncontrollably After power down, make sure that the MicroTrax Device is properly plugged in and if running wireless a communication channel is working. Specific Troubleshooting Tips for Wireless Devices ISSUE: The IS-900 Processor reports an X on the LCD for a wireless station Run self-test using ISDEMO: Select: Tools→System Self-Test→Test→Run Tests At the bottom of the test report, check for error or warning messages: Message Link down for station n Possible Cause Transmitter is powered off or in sleep mode or battery is discharged MicroTrax is not plugged into transmitter Transmitter channel does not match Base Receiver Module channel Transmitter is out of range RF interference from another receiver transmitter being used with another IS900 system in the area RF interference from other sources Link ID for station n doesn’t match initial ID MicroTrax was swapped out with another unit while IS-900 processor was on Wireless link could not be established when the IS-900 Processor powered up and the MicroTrax is not the same IS-900 User Guide Remedy Switch module power on, move transmitter to wake it up, plug in charger, respectively Switch transmitter module off, plug in MicroTrax, switch back on In ISDEMO, select Parameters→Wireless Configuration to set up radios Move transmitter and Base Receiver Module closer together until connection is reestablished Check for other receiver or transmitter in the area that are powered on and set to the same RF channel. Check for and turn off possible 2.4 GHz sources such as WLANs, cordless phones, Bluetooth devices Reset IS-900 Processor (if using anonymous mode) or select Parameters→Wireless Configuration in ISDEMO to set up radios (if using normal mode) Reset IS-900 Processor (if using anonymous mode) or select Parameters→Wireless Configuration Page 99 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 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. In ISDEMO, select Parameters→Wireless Configuration to set up radios Contact InterSense ISSUE: The Wireless Receiver Module Connection LED intermittently turns on and off while using the system. ⇒ Try moving the Base Receiver Module to a different location, either further away from other Base Receiver Modules or away from any large metal structures and/or closer to the tracking area. ISSUE: The Transmitter Module does not last more than 6 hours on a single charge. ⇒ Make sure the charge light is off before you start to use the device to get the full charge time. If the device is over a year old and you have been using it regularly, it may be time to replace the battery. Contact InterSense on how to return the device for the battery replacement. If the device is fully charged but only lasts a short time (less than 5 hours) there may be a hardware failure. Contact InterSense on how to return the device for service. If you suspect a hardware failure, do not continue to use the device - it could damage the battery and cause a danger. See Battery Warnings at the beginning of this manual. IS-900 User Guide Page 100 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 8. 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. In exceptional circumstances, failure to read and follow the user instructions could result in possible side effects that may lead to accidental injury during or after use. Recommended. For use only by persons 15 years of age or older. This system should not be used by: Persons under the influence of drugs and alcohol. Pregnant women. Persons suffering from a heart condition Persons with a history of epilepsy. Take frequent breaks. It is recommended that the IS-900 should not be used for more than one hour at a time in visually immersive applications. After an hour, you should take a 15-minute rest break before re-use regardless of how you feel. If you feel uncomfortable at any time, stop using immediately. Rest after using. Rest for at least 15 minutes after using the IS-900 even if you feel fine and have experienced none of the symptoms described below. If you have experienced any undesirable effects or symptoms, rest until they are completely gone. Do not walk, drive, ride a bike or operate equipment until you have rested, otherwise you risk injury to yourself and others. Epilepsy and seizures. A very small part of the population has a condition that may result in epileptic seizures or loss of consciousness. If you or anyone in your family has epilepsy or has experienced seizures or loss of consciousness, do not use the IS-900 without first consulting your physician. Persons who have not experienced seizures or loss of consciousness may still have an epileptic condition. We recommend that a non-user is always present when the IS-900 is being used. IS-900 User Guide Page 101 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 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. The IS-900 is designed using the latest sensor technologies and we believe that the possibility of such symptoms occurring is minimized. However, it is not possible to design for the individual characteristics of each user and it is possible that users will experience one or more of the side effects described below. Historic research shows that the effects or symptoms ordinarily occur during and immediately after use and should diminish quickly once the user stops using the system. We want you to make an informed and responsible choice about using the IS900. Accordingly, we warn you that even if you read and follow the User Instructions, you may experience one or more of the following effects or symptoms when using an IS-900 with a personal display: eye strain, altered vision, eye or muscle twitching, headaches, neck and shoulder strain, nausea and vomiting, disorientation, dizziness, impaired balance and stability, drowsiness, fainting, fatigue, sweating, extreme paleness, impaired hand-eye or other co-ordination. Each effect or symptom, if it occurs, should be temporary and may last from a few minutes to 30 minutes. Tracker Use Guidelines Keep the IS-900 MicroTrax tracking devices still for the first 10 seconds after starting your application software. It is recommended, though not required, that you wait for the MicroTrax devices to warm up (it achieves optimal performance after warming up for at least 15-20 minutes). The IS-900 system is tuned for normal head & hand motion. Avoid shaking/vibration. Remember, this precision instrument uses angular rate sensors, which sense smooth, regular movement very well. If you keep these guidelines in mind, your IS-900 system will deliver superb performance. IS-900 User Guide Page 102 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 9. Appendix D – Care & Maintenance Care and Cleaning When not in use, always return your IS-900 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. Recommended cleaning materials are the same as those for computers. Antistatic cloths, which not only clean the components, but also reduce static electricity, should always be used. Cleaning solutions should be applied to the cloth and not directly on any part of the system components. Phone & email support Any questions regarding the care and maintenance of your IS-900 system can be handled by phone (781) 541-7624 (Toll Free in the US 888-359-8478 x7624) or by email techsupport@intersense.com. Please see the Support page at www.intersense.com/support for the technical support contact information. Returns to InterSense If you need to return a component to InterSense for replacement or repair, contact InterSense prior to shipment to obtain a Return Authorization (RA) number. When calling, please look on the back of IS-900 Processor to provide the serial number and the serial number of any devices you need to return to help us complete the RA process. To request an RMA please use the link below and follow the instructions: http://www.intersense.com/rma Please note that InterSense will not be responsible for materials returned without an RMA number clearly marked on the outside of the shipping package. Batteries Read the Warnings and Precautionary Statements at the beginning of the manual regarding the Lithium-Ion rechargeable batteries. Electrical power IS-900 MicroTrax Charging Station: Input 100-240 VAC, 50/60 Hz; Output +5VDC, 2.5A Fuses There are no user replaceable fuses in either the Wireless Transmitter Module or Receiver Base Module. IS-900 User Guide Page 103 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 10. Appendix E – ISDEMO Reference For ISDEMO Versions 4.2703 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 Windows XP/Vista/7. ISDEMO provides a convenient graphical interface that can configure most of the tracker parameters. It does not directly support some features. Sending single line commands through the serial port or via the ISDEMO Command prompt can configure these features. See the section titled “Interface Communication Protocol” for descriptions of all the available commands. 10.1. Getting Started Install the InterSense product CD on your machine. It will automatically create a directory in your hard drive called “IS-900 Software” (by default, the directory will be C:\InterSense\IS-900 Software). Using ISDEMO The first screen you will see is the hardware selection window. This program creates a different interface depending on the tracker model selected. IS-900 User Guide Page 104 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Select IS-900 Series interface and click Accept to begin. Use the Detect option from this first screen to detect serial communication port and baud rate parameters only if you have trouble setting them manually. 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. Note: You must select either IS-900 or DLL Compatible (if the isense.dll is installed), or ISDEMO will not be able to correctly configure your tracker. If you have an InterSense RF analyzer accessory, you can launch the user interface from this first screen by selecting Wireless→RF Scope on the menu bar. See section 10.8 for details. ISDEMO: Main window This top of the main window 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 IS-900 User Guide Page 105 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 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. Stations display T when tracking position, and L (Lost) when position tracking is not possible. If a station configuration is invalid or hardware is not connected, X is displayed. Row 3 (Meas) displays the number of range measurements received by each station during the last cycle. A range measurement is defined as an ultrasonic signal received by a single microphone. Typical values are in the 10-14 range; low values can have several causes, including weak microphones, low emitter volume, being too far away from the emitter, or having the microphones turned away from the majority of emitters. Row 4 (Rej) displays the number or range measurements rejected by the system. This number should normally be 0-1. Measurements can be rejected for one of the following reasons: SoniStrip configuration (Constellation) is inaccurate Certain positions or orientations may cause errors in measurements to specific emitters; moving the tracker slightly may prevent the rejections Extremely fast movements can sometimes cause some measurements to be rejected It is worth noting that rejections are not used by the IS-900 in calculating position updates, so are not necessarily an indication of any problem as long as the overall measurement counts are good Row 5 (TQ) displays the tracking quality of the station as a percentage. It is a measure of the number of measurements a station receives and the size of the range errors of the measurements. 100% means that the station is tracking perfectly and 0% means it is lost. 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. An “X” will be displayed on the Status line when this value drops below 30%. Row 7 (MQ) displays the measurement quality of the station as a percentage. 100% means that the station has range errors of 1mm or less on average, and for a properly sighted constellation this should be >95% for a stationary tracker, in most cases. IS-900 User Guide Page 106 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 ISDEMO also has six primary menus in its main window: • • • • • • File Communications Parameters Display Tools Help The following sections will walk you through all of the menu options. IS-900 User Guide Page 107 of 177 InterSense 10.2. Doc. No. 072-00105-0I07 Rev. 4.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. They disable of enable the ^K command and the W command. Save Current Settings Sends ^K command to the tracker. This saves the current settings to nonvolatile memory in the tracker base unit. The next time the tracker is turned on these settings will be restored. Load Power Up Settings Sends ^Y commands to the tracker. This restores the firmware to the power up condition. All changes made to the settings since power up or last ^K command are lost. Load and Save Factory Settings Sends W command to the tracker. This restores the system settings to the factory defaults. Exit IS-900 User Guide Closes ISDEMO Page 108 of 177 InterSense 10.3. Doc. No. 072-00105-0I07 Rev. 4.2 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 COM1, 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. Either communications interface is available as a view port while the host application is communicating through the other interface. Using ISDEMO on one port while communicating tracking data through the second allows performance of basic diagnostics or system configuration while the host application is live. Selecting the Communication Setup menu option brings up of the following configuration window. IS-900 User Guide Page 109 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Serial Configuration Default settings are for the serial port set to COM1 with a baud rate of 115,200. Serial Port Choose the RS232 port the tracker is connected to. Baud Rate Choose the communications speed the tracker is set to. Connect ISDEMO attempts to connect to the IS-900 Processor using the selected communication parameters. Cancel Exits the screen saving the current selected communication parameters. Detect RS232 Settings 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 1 second. If the status record is not received within that time the program tries again with the different communication parameters. IS-900 User Guide Page 110 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 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 or LCD menu to enable Ethernet communication. Refer to Section 4.2 to set an IP address for your IS900 tracker. Two Ethernet interface paths are available - a command interface (single client, bi-directional) and a UDP broadcast interface (multiple clients, receive only). The TCP port defaults to 5005, but is configurable. Ethernet Modes Off – Ethernet interface is disabled Manual - IP address and Subnet Mask are configured manually, DHCP is disabled. If no IP address is configured Ethernet is disabled until one is set. DHCP - IP address and subnet mask are automatically obtained from a DHCP server. Server IP Address IS-900 User Guide Enter the IP address of the IS-900 in the Server IP Address box, and leave the Network Port set at 5005. Page 111 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Network Port The TCP port (defaults to 5005). UDP Broadcast State ON/OFF UDP Port Default is 5001, the Isense.DLL automatically checks ports 5001-5005. You can set the port from 1001 to 6535. 10.4. Parameter Options Parameters menu allows access to the tracker configuration controls. IS-900 User Guide Page 112 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 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 byte IEEE 32-bit floats. This can increase data throughput by minimizing the size of the records. Genlock IS-900 User Guide State (MG command) Off, Automatic (not supported), External (manual, supply strobe rate), Internal (supply output record rate). Page 113 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Sync Rate Value in Hertz used with Genlock enabled. Sync Phase 0-100%. Please see section 11 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). Volume levels 2 and 3 are identical unless using a power booster, in which case volume 3 will be louder. Station and Sensor Parameters The window shown below lists each station to be configured. A “Station” is a position and/or orientation-sensing unit, such as a MicroTrax head tracker. IS-900 Series trackers can support up to 7 stations (the remaining port being reserved for SoniStrips). Before data is displayed in this list, ISDEMO attempts to receive the configuration data from the tracker. If this fails for any reason, an error message is displayed and data in the list may not be reliable. Double clicking on the Station line or selecting the Change button will bring up the Station Configuration window where changes can be made. IS-900 User Guide Page 114 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Station Configuration window Station ON/OFF When a station is ON, data records will be sent for it, even if there is no hardware connected to the IS-900. 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. To compensate for the drift, tracker uses accelerometers and an ultrasonic range measurement system to measure the actual physical position and orientation of the sensor. That data is then used to compute the necessary correction. In Mode 0 correction adjustments are made immediately, no jitter reduction algorithms are used. This results in most accurate output (not recommended for head tracking) with lowest RMS error. Use this mode for accuracy testing or for any application that requires best accuracy. Mode 1 provides accuracy similar to that of mode 0, with the addition of a jitter reduction algorithm. This algorithm reduces the accuracy by only a small amount and does not add any latency to the measurements. Mode 1 is recommended for augmented reality applications (i.e. overlaying or mixing both virtual and real objects in a visualization system.) IS-900 User Guide Page 115 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Mode 2 is recommended for use with HMD or other immersive applications. 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. It may result in some small residual movements for a couple of seconds after the sensor has stopped. If your application requires sensitivity greater than the maximum provided by this control, you must use Perceptual Enhancement level 0 or 1 instead. Prediction Value IS-900 can predict motion up to 50 ms into the future, which compensates for graphics rendering delays and further contributes to eliminating simulator lag. Tip Offset Defines a set of position offsets, so a different point can be tracked. Offsets are measured in the body coordinate frame of the MicroTrax station and are entered in centimeters. Sensor Rotation Sets boresight reference angles in degrees for the specified station. IS-900 User Guide Page 116 of 177 InterSense 10.4.1. Doc. No. 072-00105-0I07 Rev. 4.2 Wireless Configuration window The window below lists the wireless status and configuration for each processor port. Normal Mode Determines wireless communication by device Link IDs Anonymous Mode Determines wireless communication by wireless channel, and ignores Link IDs Port Port of the IS-900 Processor. Configured Channel The channel that the connected Base Receiver Module is configured to. No two Base Receiver Modules can be configured to the same channel / band pair (however, the same channel is permitted if using a 900 MHz and 2.4 GHz receiver, since each channel represents a different frequency). Reported Channel The channel that the connected Base Receiver Module is currently configured for (0-15 for 2.4 GHz, 1-10 for 900 MHz). Configured Link ID The link ID that is assigned to the receiver. Each wireless tracker has a link ID associated with it when it is shipped, based on the lower 5 digits of the internal device serial number. This 4-5 digit number can be found on a label on your tracker (or its cable for trackers with cables). Reported Link ID The link ID that is currently associated to the Base Receiver Module. Status Port status. Any ports with a status of “no receiver” did not have a Base Receiver Module detected, and cannot be configured. Radio 900 MHz or 2.4 GHz band; both may be used simultaneously. IS-900 User Guide Page 117 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 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 Base Receiver Module connected and click Edit, or double-click on the line. The second screenshot depicts channel-sharing mode with two Link IDs, and is only available on 900 MHz Base Receiver Modules/Trackers. In the Port Settings dialog box, enter the channel (0-15 for 2.4 GHz radios, 1-10 for 900 MHz radios) and station ID to use for that port. Each port must be assigned its own channel within a given band. To maximize performance, it is recommended that active channels be separated by one unused channel. It is possible to use adjacent channels, but interference may occur under some circumstances. The link ID is the 4-5 digit number on a label affixed to the exterior or cable of each tracked device. If the ID cannot be read from the label, run a level 3 self-test or choose RF Search→Enumerate Wireless Devices to determine the ID (see section 10.6). Click Clear to remove settings from a port. Click Apply to dismiss the dialog box. Repeat as needed to configure additional ports. When done, click Apply configure radios. The operation may take about a minute to complete. If successful, status for each configured port should be “ok.” If the status is “station not found,” verify that link IDs are correct and devices are on and in range. Select Search→RF Search to reapply configuration. Once configured, stations will connect automatically and do not have to be powered on nor within range during system initialization. Anonymous Mode In anonymous mode, stations are connected to if they are on the same channel as a receiver regardless of their ID. This allows a station to be swapped out with another station set to the same channel without reconfiguration (however a system reset via hardware switch or ISDEMO is required, as device calibration information is only read once, during startup). It is recommended that normal mode be used in most situations. This is especially true if the IS900 is operating in the vicinity of wireless InertiaCubes or other IS-900 systems with wireless MicroTrax devices in use. In anonymous mode, the IS-900 may mistakenly connect to these other nearby devices. IS-900 User Guide Page 118 of 177 InterSense 10.5. Doc. No. 072-00105-0I07 Rev. 4.2 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. If it fails to receive a reply to any of the status record requests it will still go into the display mode, but there may be no data to display or it may not be able to display the data correctly. If such errors are detected, stop the display by selecting Stop Displaying Data option in the Display menu or pressing Ctrl-X and check the connection. Station Number Allows the user to choose which station is to be displayed in the main window of ISDEMO. Ctrl-Fx, where x represents the station number, can also be used to switch stations. For example, to switch to station 2, use Ctrl-F2. Display Text When this option is selected all status and some of the data records are displayed in text format in the sensor display area. To prevent graphics updates from taking over most of the processor time, no more than 20 data records per second are displayed. IS-900 User Guide Page 119 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Please note that whenever your tracker is in continuous mode, records are displayed in the text window even when the display is off. 10.6. IS-900 User Guide Tool Options Page 120 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Constellation™ Tool 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. Constellation™ 3D This tool provides a rotatable 3D view of the current constellation, including normal vectors. It also contains the performance evaluator tool, and is very useful during initial configuration of the IS-900. System Information This window provides a summary of the InterSense tracker system configuration. IS-900 User Guide Page 121 of 177 InterSense System Self-Test Doc. No. 072-00105-0I07 Rev. 4.2 There are three levels of tests supported for this release. Level 1 Designed to detect and display information on all the connected hardware and compare it to the user configuration to evaluate it for errors. This tool is designed for troubleshooting the system when hardware failure is suspected. Level 2 Displays the current Communication status, Tracking quality and URM noise for all active stations. Communications Status for wired stations should always show 100%. If a station is disconnected, it shows 0%. Anything in between might indicate a poor connection or an excessive length of cable. Wireless stations, on the other hand, typically show less than 100% because some records are lost or corrupted due to the nature of the radio link. Tracking quality is a measure of the number of measurements a station receives and the size of the range errors of the measurements. 100% means that the station is tracking perfectly and 0% means it is lost. URM noise is measured by suspending the firing of beacons for a period of time and counting the number of detections at each microphone. Under good conditions, the percentages should be 0% or close to it for all microphones. IMU stands for Inertial Measurement Unit, also called InertiaCube. URS stands for Ultrasonic Ranging System and includes interface board, microphones, and transmitters (SoniDiscs). IS-900 User Guide Page 122 of 177 InterSense Level 3 Doc. No. 072-00105-0I07 Rev. 4.2 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. This tool is useful for identifying a wireless device if its ID is unknown. The ID is needed to use the ISDEMO Wireless Configuration Tool. Wireless receivers are listed with their respective port numbers and channel settings plus a field that indicates the type of control (active or manual). MicroTrax receivers have active control, which means channel settings and station pairings can be changed using the Wireless Configuration Tool. Previous-generation receivers have manual control via a mechanical channel switch. Wireless stations that were detected during the search are listed with their respective IDs and channel settings. If the station is paired with a receiver, its port and slot number is also shown. The search operation can only detect stations that are powered on and in range. Since the search operation scans through all available channels, be aware that it may temporarily interfere with other InterSense trackers if they are in range. Any stations reporting the ID 65535 indicate a communication failure between the radio and the device connected to it (such as between the head tracker and lapel transmitter, or the wand and its internal radio board). Self test reports generated here can be saved to the disk using the Save to a File option in the File menu. You may send the reports to InterSense technical support (techsupport@intersense.com) for analysis and help with troubleshooting. IS-900 User Guide Page 123 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 The self-test procedures 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 The system log file can be retrieved and viewed with the Log→Get System Log File option on the System Self Test screen. Command Log Creating a command log can be enabled with Command Log→Command Logging. A previous command log can be viewed with Command Log→Get Command Log File. The command logging function can also accessed from this screen with the Log→Command Log menu. Error Report System errors are logged by the tracker and displayed on the base unit LCD. If software error reporting is enabled, error messages are sent out the serial port and can be displayed by ISDEMO. This tool is designed to display InterSense-specific error messages and ignores standard Fastrak errors. See Section 0 for a list of errors and their meanings. File Save to File Ctrl+S Save contents of the window to a text file. Get From Tracker F5 Requests full list of currently stored error codes and displays it. Clear All Lists Sends command to the tracker to clear the error list and erases the contents of the window. Exit IS-900 User Guide Ctrl+Q Page 124 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 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. Previously recorded data can be displayed through ISDEMO by selecting Play. Playback option will only work on files saved with the Save as is option. Send Command String IS-900 User Guide Allows single line commands to be sent to the tracker. This tool is provided to allow control over the tracker parameters not supported in the ISDEMO menus and dialogs or on the LCD button panel. For instance, this function can be used for test and debug purposes. Type in the command and press Enter or Return. The pair is automatically added to the end of the line before it is written to the serial port. See Section 4 - Interface Communication Protocol, for the complete list of all available commands. Page 125 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 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 Ctrl+O Opens a file selection dialog box. Configuration file must be a plain text file. Save to a File Ctrl+S Used to save the contents of the window to a text file. Exit Ctrl+Q Tracker Retrieve from Tracker F5 Queries the tracker for all standard configuration parameters, converts them to commands and displays the results in the window. This can then be saved to a file. This is a superset of the data saved by the Constellation™ Tool. Send to Tracker Sends all interface commands in the display area to the tracker. CR LF pair is automatically added to each line. IS-900 User Guide Page 126 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 System Errors Some basic system errors and their meanings are listed in the table below. This is a partial list and does not contain all possible error codes; please contact InterSense for more information on specific error codes. Code Type 6401 General Math exception 6402 General 6404 General 6408 6409 010x 020x General General URS IMU 0205 IMU SOS out of range - check PSE configuration Inconsistent PSE position or obtuse PSE angle File I/O error Ethernet error URM start/read failed IMU start/read failed IMU read timed out IMU NVRAM read failed 020A IMU 020B 020C IMU IMU 020D 030A 030B IMU Can't select IMU channels Wireless Link ID for stations are both… Wireless Channels for stations are both... Wireless Mixed radio types not supported I/O Card No I/O card found or error Config Alignment reference frame Config SoniDisc Hardware ID out of range Config Too few SoniDiscs to track Joystick Joystick start/read failed Joystick get info failed 030C 040x 0501 0504 0510 060x Message No MicroTrax device connected to this port Failed reading sensor EPROM IMU get config failed Comments Invalid sensor data or bad IMU calibration - if persists contact InterSense. Poor/invalid Constellation or microphone configuration. Check beacon normal vectors. Contact InterSense. Contact InterSense. Likely communication error. Likely communication error. Failure while reading calibration data from MicroTrax device EPROM, contact InterSense if issue persists. Contact InterSense if issue persists. Contact InterSense if issue persists. Driver level error. Occurs during IO Board initialization. IMU read error. Duplicate station ID encountered. Stations are set to same channel. Older (MiniTrax) radio sets cannot be used in combination with MicroTrax. Contact InterSense. Invalid alignment reference frame SoniDisc hardware ID is invalid. Minimum of 3 SoniDisks required. Likely communication error. Standard Fastrak error codes Field missing, command is invalid. Parameter is not a numeric value, command is invalid. Parameter value is out of range, command is invalid. Not configured (not used by InterSense). Buffer limit exceeded (not used by InterSense). 99 Invalid command parameter. IS-900 User Guide Page 127 of 177 InterSense 10.7. Doc. No. 072-00105-0I07 Rev. 4.2 Constellation™ Configuration Tool Constellation™ 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). To generalize the interface protocol and configuration tools for these tracker models, InterSense uses the term: PSE Position Sensing Element. A PSE may be Mobile or Fixed. Mobile PSEs are assigned to the stations and their movements are tracked by the system. Fixed PSEs form a Constellation that is used as a reference for tracking. In the case of IS-900 tracking systems, microphones are mobile PSEs and SoniDiscs are fixed PSEs. General Guidelines The position of a SoniDisc is defined as the coordinates of the center of the grill covering the speaker. All values are entered in meters. The coordinates of the SoniDiscs are entered in a user-defined, locally leveled coordinate frame. The coordinate system is right-handed with X pointing forward, Y to the right and Z pointing down (see Section IS-900 User Guide Page 128 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 3.1 for details on the InterSense standard coordinate system). stations is computed relative to that coordinate system. Position data for all Mobile PSE configuration is stored in the EPROM of each station and is configured automatically without user input. The 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. For more information about the other SoniDisc housing styles, see their appropriate supplemental manual. For best performance it is generally recommended that SoniStrips be installed in a regular grid over the tracked area. The total distance from a SoniDisc in the Constellation to a tracked station should not exceed 3.0 meter (10 feet) to guarantee good signal detection (4.0 meter with +15 VDC external power boosters). IS-900 default configuration does not contain a Constellation, so it is up to the user to configure it. The system is shipped with a packing list containing the part numbers of the included SoniStrips. These part numbers and corresponding SoniDisc Hardware IDs are used in the Constellation tool to identify the SoniStrips. To operate, the system needs to know the position and orientation of each of the SoniDiscs in the Constellation with high degree of accuracy (2 to 3 mm positional accuracy and approximately 5 degrees for the normal vectors of each SoniDisc in the Constellation; the positional accuracy is far more important than the angular accuracy for tracking purposes). A high accuracy device, like a total station (also known as a Theodolite with absolute position measuring capabilities), is required to measure the positions of the SoniDiscs and enter them into the system configuration. The importance of the quality of this data can’t be overstated, as the system cannot track better than its configuration would allow. A unit normal vector, as shown in the figure above, defines the orientation of a SoniDisc. The default assumption is that the Constellation is installed horizontally over the tracked area, so the normal vector points straight down with unit normal vector coordinates of 0,0,1 (the InterSense Z axis). Entering the correct normal vector for each SoniStrip is important. The normal vector information is used by the IS-900 tracking algorithm to correctly schedule the polling of SoniDiscs. File Menu IS-900 User Guide Open Opens a file selection dialog. Select a configuration file and click OK. The file is read in and Constellation contained in it replaces the currently displayed configuration. Save Currently displayed Constellation is saved to a file previously selected with the Open or Save As commands. Save As Opens a file selection dialog. Current Constellation is written to the selected file, previous contents are overwritten. Page 129 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 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. Display Full List Displayed window contains the entire Constellation, one SoniDisc per line. Selecting Change item under the Edit menu or double-clicking on a line opens the SoniStrip Properties window, where position and orientation data can be edited. You can also use this window to selectively delete SoniDiscs. IS-900 User Guide Page 130 of 177 InterSense Insert Doc. No. 072-00105-0I07 Rev. 4.2 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. Note that ISDEMO has an Edit Lock button that must be pressed to change it from Edit Lock On to Edit Lock Off in order to insert or move SoniStrips. Grid Menu This feature is designed for the IS-1200 and should not be used with the IS-900. Edit Menu Select All This action will select all the SoniStrips and corresponding SoniDiscs. Use to perform additional “right mouse click” operations on the entire SoniStrip Constellation. Center Tracker The display origin of the Constellation, Tool is moved so that station currently selected for display in the main window of ISDEMO is displayed in the center of the screen. IS-900 User Guide Page 131 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Undo Center Tracker The effects of Center Tracker command are removed and display origin is aligned with the origin of the coordinate system. IS-900 User Guide Page 132 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 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. Positions of the SoniStrips are recalculated for the new coordinate system and redrawn. This command has the same effect as selecting all SoniStrips and moving them to a new location relative to the origin. To apply the changes use Send To Tracker item in the Constellation menu. Rotate Coordinate System Used to rotate the coordinate system. After this menu item is selected, left-click in the display area and while holding the button down, move the mouse up or down. The coordinate system will rotate in the clock-wise or counter clock-wise direction. Release the mouse button when satisfied with the new orientation. Positions of the SoniStrips are recalculated for the new coordinate system. To apply the changes use Send To Tracker item in the Constellation menu. IS-900 User Guide Page 133 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 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 not consistently appear red. If they do, for different positions and orientations of the tracker, the Constellation should be examined for configuration errors. The IS-900 only uses the SoniDiscs in the immediate vicinity of a station, all others are ignored and will be drawn in white. Stop Displaying Data Turns the display off. Constellation editor commands can only be used when display is off. Zoom In/Out Changes the scale factor of the display. Current zoom setting is displayed at the bottom of the screen. Current Station Changes which station ISDEMO will show as the primary station. Certain functions, such as Center Tracker (from the Edit menu) will depend on which station is the current primary station. Display Options Hardware IDs of the SoniDiscs and ultrasonic range measurements can optionally be displayed along with the positions of the configured stations. View In most cases a Constellation is installed horizontally over the tracked area, so XY view is the default. In other cases, XZ IS-900 User Guide Page 134 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 and YZ views can be used. The coordinate system is righthanded with X forward, Y to the right and Z pointing down. Using the Constellation Constellation Graphical Interface to manually configure 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 and/or SoniDiscs you would like to manipulate. Be sure to turn the Edit Lock button OFF before trying to edit the Constellation. Remove IS-900 User Guide Removes selected (highlighted in yellow) SoniStrips or SoniDiscs from the Constellation. Page 135 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Inserting SoniStrips 1. Right-click in the Constellation Tool window at the position where the new SoniStrip is to be placed. 2. Select Insert Rev3 SoniStrip item. Rev1 and Rev2 SoniStrips are not generally used with IS-900 SimTracker or VETracker processor configurations (though InterSense does have hubs which provide backward compatibility with existing SoniStrips). A window listing available SoniStrip options is displayed. Select one and click OK. The new SoniStrip will appear in the display area. It is also removed from the list of available SoniStrip options. 3. Using the mouse move the newly added SoniStrip to the desired position. Note that mouse movement of SoniStrips should only be done for initial testing; in general it is impossible to obtain the required accuracy for proper tracking in this manner. Moving SoniStrips 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. To rotate a SoniStrip using the mouse, select one of the SoniDiscs and without releasing the left mouse button, move the mouse up or down. The SoniStrip will rotate about the selected SoniDisc. If more than one SoniDisc is selected, the whole SoniStrip is moved with the mouse. To make exact movements, use the Constellation→Display Full List menu, which can make precise translations to individual SoniStrips, or the Move/Rotate SoniDiscs option from the right-click menu. IS-900 User Guide Page 136 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Move SoniStrips (right-click menu) Select one or more emitters first (the actual circles need to be selected, not just the SoniStrip grouping). All values are entered in meters. This menu allows both displacement and rotation along/about all axes. Units are 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. This is useful when configuring a Constellation installed on a regular grid, such as a drop ceiling. IS-900 User Guide Page 137 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 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. By selecting a single SoniDisc and then choosing this option, the blue LED for the selected SoniDisc is turned on for a few seconds. Use this visual confirmation to check that the SoniDisc is connected properly, and that its location in the Constellation is consistent with its location in the physical world. Properties IS-900 User Guide A more precise way to move or rotate a SoniStrip is to use the Properties Window, which is opened by double-clicking on a SoniStrip or selecting Properties in the right-click menu. The properties window lists positions and normal vectors of the 3 SoniDiscs that belong to the SoniStrip. To move or rotate a SoniStrip, change the position values for one of the SoniDiscs. You’ll notice that Apply button becomes active and the Hardware IDs of the other 2 SoniDiscs are grayed out and corresponding position fields are disabled. By clicking the Apply button, a dialog box is displayed that allows the action that is to be performed next to be selected. First option (default) will move the entire SoniStrip to the new location without changing its orientation. Alternatively, the SoniStrip can be rotated about one of the remaining SoniDiscs. The rotation algorithm uses the selected SoniDisc as the pivot point and computes the line from that point to the new location of the SoniDisc that had the position data changed. The SoniStrip is then rotated to correspond to that line. Actions can be cancelled at any time. Page 138 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 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 optional beacon ID number. Use the slide bars or mouse to zoom in and out. Click and drag the main view to rotate the constellation. Left click rotates, right click drags, and scroll wheel zooms. Page 139 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 The Constellation 3D tool also includes a three dimensional performance tool. This feature will allow an end user to estimate the ultrasonic signal strength and tracking geometry quality 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. The Tracking report file can be saved as a text file and e-mailed to InterSense technical support for review. The Constellation must be retrieved and Display turned on in order to record this data. SoniStrip Fit Report Useful to estimate the overall accuracy in calibration of a constellation file which uses SoniStrips. The positions and distances between three SoniDiscs on one SoniStrip are compared to SoniStrip manufacturing specifications. Inaccuracies in the calibration of the SoniDiscs will affect the overall accuracy of the IS-900 system. IS-900 User Guide Page 140 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Microscribe-3DX Using a Microscribe is an extremely accurate way to measure the positions of your SonisDiscs. First, Set up and initialize the Microscribe. Plug the microscribe into a serial port (COM1 through COM4) of your PC. In the main window of ISDEMO, change the communications parameters to the COM port. Next use the right-click insert function of ISDEMO Constellation Tool. Select a SoniDisc you would like to map by highlighting it. Move the pointed end of the 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 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. Targets can be added to the constellation as phantom SoniDiscs with Station ID’s less than 100. IS-900 User Guide Page 141 of 177 InterSense 10.8. Doc. No. 072-00105-0I07 Rev. 4.2 RF Scope RFScope usage In order to set channels optimally, it is recommended that the RFScope utility be used to check for wireless interference from sources such as wireless LANs and other portable devices operating in the 900 MHz or 2.4 GHz bands supported by the IS-900 receivers. Setting trackers to channels with significant wireless interference on them can result in poor performance, or in extreme cases, the devices being unable to change channels back to a clear channel without isolating both the receiver and transmitter in a shielded location. The following simple steps are recommended each time that the IS-900 is set up in a new environment, or if the RF environment is changed in any way, such as adding a wireless access point to the tracking area. Firmware version 4.2601 or later is required to use this feature, along with ISDEMO 4.2703 or later (for 900 MHz support). In order to use RFScope, you must use the RS232 connection to the IS-900, though the initial Port Access command may be sent over Ethernet. Follow these steps: 1. Note which stations have wireless receivers connected to them (either by physically looking at the IS-900 or as reported by the Wireless Configuration dialog in ISDEMO) 2. Select Tools > Send Command String from ISDEMO 3. Send the command MPortAccessx, where ‘x’ is the port number of the receiver you would like to use. For most installations, it doesn’t matter which receiver is selected, but in some cases the receivers may be arranged such that they are in different areas of the room or even in separate rooms, in which case the RF environments may be significantly different and testing multiple receivers may be helpful. This command is case sensitive. 4. The front LCD panel of the IS-900 should display a message indicating that it is in Port Access Mode, and that the Enter key may be pressed to exit. Other than rebooting, the Enter key is the only way to exit this mode. The red LED corresponding to the receiver’s port should illuminate as well. 5. Close ISDEMO 6. Reopen ISDEMO, and select Wireless > RFScope from the main selection screen (do not select “IS-900”. 7. Check for wireless interference as described below. 8. Once testing is complete, press “Enter” on the front panel and either reconnect with ISDEMO and choose File > Load Power Up Settings, or simply restart the processor using the switch on front. Your trackers will not function until the IS-900 has been restarted by one of these two methods. IS-900 User Guide Page 142 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 The RFScope display consists of several sections. The section at the top shows the current, peak, and moving average signal strength values in 1 MHz increments from 2405 to 2480 MHz (or 904 to 926 MHz), as reported by the receiver. The current measurements are shown with a green line graph, the peak signal strength is shown as a dark red bar graph, and the moving average lines are shown as yellow lines that gradually decrease in strength. Screenshots below show 900 MHz (left) and 2.4 GHz (right) spectrum displays. The lower section is a sideways-scrolling “waterfall” display, and displays signal strength vs. time. The numbers on the left are our channels 0-15, and each block represents 1 MHz vertically. Dark purple/blue is low signal strength, and bright red is higher signal strength. As strength increases, the color becomes ‘redder’ as well as brighter. Note that the MicroTrax device channels are different than WiFi or Bluetooth channel numbers, and also that channels are shown centered on the thin blue horizontal lines. The numbers on the right side indicate an approximate communication integrity value if you were to try communicating on these channels, so values should be chosen that are, ideally, 90% or better for optimal tracking performance. In general, channels with significant amounts of green or higher (yellow, orange, or red) should be avoided. The 2.4 GHz example image shows a wireless LAN on channels 5-9, as well as weaker signals on several other channels. Channels 15, 14, 0, 13, 12 (in that order) would probably be the best choices in this environment. InterSense recommends watching this display for a minimum of 5 minutes during the time of day that the system will typically be used to get the best possible representation of the RF environment. Some external signals may be intermittent, and only occasionally impact tracking. Therefore, testing multiple times and possibly on multiple days can be important to choosing the best possible channel for your wireless devices. IS-900 User Guide Page 143 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 11. Appendix F – GENLOCK Synchronization 11.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.7 milliseconds will result in orientation jitter of 2 degrees, which can be highly disturbing to the user. On an IS-900 series product operating with no synchronization, the tracker will update at about 180 Hz, corresponding to a 5.6 ms period. Since the 180 Hz update rate of the tracker is asynchronous with the update rate of the computer graphics rendering and display cycle, the latency will vary by up to 5.6 ms from cycle to cycle, and thus GENLOCK synchronization is essential if smooth response is desired during periods of moderately fast head rotation. time(ms) 16.7 Display scan out 33.3 50.0 latency Rendering Tracking sample InertiaCube first processing stage second processing stage Figure 42 - Timing Diagram: IS-900 Interfaced to PC with 60 Hz Display Refresh Figure 42 illustrates the timing relationship of the tracking loop to the rendering loop with GENLOCK in effect. The vertical lines at multiples of 16.7 milliseconds represent the vertical sync pulses stripped from the 60 Hz VGA monitor cable. The tracker automatically determines the frequency of the GENLOCK synchronization signal and then decides upon a tracking loop update rate which is the highest multiple of this frequency that it can consistently maintain. In the example in the diagram, the tracker has decided to do 3 internal updates per display refresh cycle. However, ONLY ONCE per display refresh cycle is data output across the serial or Ethernet port to the host. This point, by default, is at the end of the last update cycle in the field, labeled 6 in Figure 42. Using this point (or point 5) provides the lowest possible end-to-end latency, only 1 1/3 video fields in this example. So, if the total time to transmit the data across the communication port plus the time to process and render the display is not guaranteed less than 16.7 ms on every single cycle, there will be cycles when the rendering does not complete for the next scan out, resulting in a disturbing glitch in the image. IS-900 User Guide Page 144 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 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. Of course, if there are several frames in a row that run longer than 16.7 ms, the system will eventually drop a frame, resulting in a jarring transition to 2 2/3 frame latency. To prevent this, the user must insure that the average frame rate before attempting synchronization is ALWAYS above 60 Hz, so that once the synchronization is enabled, the frame rate will be fixed at 60 Hz with no annoying shifts. As a precaution, if the frame rate of the rendering engine drops below 60 Hz, the software driver that is reading data from the tracker should always check to make sure that it is reading the latest available data record. After reading a complete record, check to see if there are any further bytes in the receive buffer, and if so wait for there to be a complete record and read it in replacing the just read record. If this is implemented in the software driver, multiple data records could become queued up in the ‘receive’ buffer, resulting in extra latency. time(ms) 16.7 33.3 50.0 latency Display scan out Rendering Tracking sample InertiaCube first processing stage second processing stage Figure 43 - Timing Diagram: IS-900 Adjusted with Proper Phase for 60 Hz Display Refresh The second reason why it may be desirable to adjust the output record transmission to an earlier phase point is to allow for serial port transmission time. In the diagrams above, the slant of the arrow pointing up from the tracking loop to the rendering loop represents the delay of transmitting the results from the tracker to the host. If you use binary data mode, and set up the IS-900 to only transmit 6 bytes of data (3 Euler angles plus 3 position values) using the command O1,2,4<>, then the total number of bytes per record will be 29 which corresponds to 290 bits. At a baud rate of 115,200 bits/sec, this record will take about 2.7 ms to transmit. Thus, the tightest timing loop illustrated in the first diagram above can be achieved if the rendering time is always less than (16.7 ms – 2.5 ms) = 14.2 ms, but it should probably not be attempted with any longer output data record format or slower baud rate. IS-900 User Guide Page 145 of 177 InterSense 11.2. Doc. No. 072-00105-0I07 Rev. 4.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. If a valid signal not present, the tracker will wait an extra period for the signal, dropping the update rate to half the sync rate. Details are discussed below. Connecting Sync Signal The external sync signal for GENLOCK on an IS-900 is on the back panel of the processor shown in Figure 44. Figure 44 - Back Panel of IS-900, SYNC IN is External GENLOCK Input Connect the sync signal to the BNC connector labeled SYNC IN on the back of the IS900 Processor. The input interface setting for SYNC IN is controlled by software and access is provided via command or the LCD menu. This setting is saved with the rest of the user settings. Command: MGS[source]<> source 1 TTL 2 NTSC Default is TTL. If source is omitted, the current setting is returned (31GS{source}<>). From the LCD menu, GENLOCK source is selected by choosing: System Config → GENLOCK → Source (TTL and NTSC options only). IS-900 User Guide Page 146 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 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) Reserved—has no effect on the GENLOCK state. Use external sync, strobe rate specified by rate parameter (manual). Use internal sync, output data records at frequency specified by rate parameter. rate For state 2, the sync strobe rate in hertz. For state 3, the data record output rate in hertz. 30 Hz minimum in either case. Current settings of state and rate are reported if the command is issued without parameters (or invalid ones). The Fastrak command y{state}<> is not recognized by the IS-900, but has the equivalent function the MG command with state equal to 0 or 1. If the Fastrak y{state}<> command is used in your code, remember to manually configure GENLOCK via the LCD menu to the settings required by the application. ISDEMO can be used to send the GENLOCK command using the Send Command String option. GENLOCK settings can be saved to the tracker using ISDEMO, using the ^K command or using the LCD (if equipped). Enabling GENLOCK via LCD Menu Select Communication→Data Output→Sample Mode→Continuous to place the tracker 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. Select System Config→GENLOCK→State and then one of the following choices. Off Manual Internal IS-900 User Guide GENLOCK off Use external sync (select strobe rate in 5 Hz increments using arrow buttons, then press the enter button) Use internal sync (select data record output rate in 5 Hz increments using arrows buttons, then press the enter button) Page 147 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 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. Using CrystalEyes™ To configure an IS-900 for use with CrystalEyes™, set the sync signal type to TTL and send the command MG2,120 or MG2,60 to the tracker (assuming the video refresh rate is 60 Hz or 120 Hz per eye). Connect the external sync signal used for the CrystalEyes™ IR emitter to the SYNC IN on the back panel of the IS-900 Processor. Adjusting Phase Point A data record is output once per sync period when the tracker is in continuous mode. The phase point is the time within the sync period at which a data record is transmitted and is adjustable for internal and external GENLOCK. The phase point is specified as a percentage of the sync period. 0% (the default) instructs the tracker to output a data record as soon as possible after the sync period begins. 100% delays the output of a record as much as possible before the next sync period begins. To adjust phase point via command: MGP[+/-]<> MGP[p]<> Increase/decrease to next/preceding phase point Set phase point to percentage specified by p (0 to 100) The current phase point is reported if the command is issued without parameters (or invalid ones). The tracker will accept the first form of the command only after GENLOCK is established. With the second form of the command, the tracker will match the specified phase point as best it can, but typically with far less resolution than 1/100th of the sync period. To set the phase point via the LCD menu, select System Config→Genlock→Phase→Set and change the value with the arrow buttons, then press the enter button. To increase or decrease to the next or previous phase point, select System Config→Genlock→Phase→Increase or →Decrease. Adjust the phase to the latest point in the cycle (for minimum latency) such that the system still behaves smoothly during head rotation (no render cycles last beyond the deadline for the next scan out). IS-900 User Guide Page 148 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 12. Appendix G – Developers Instructions For InterSense SDK Version 4.23 or higher. 12.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 InterSense library (isense.dll / libisense.so / libisense.dylib). This library and API is provided to simplify communications with all models of InterSense tracking devices. It can detect, configure, and get data from up to 32 trackers, which may have multiple (up to 8) stations in some cases, such as the IS-900 processor. The library maintains compatibility with existing devices, and also makes the applications forward compatible with all future InterSense products. The library is intended to be backwards compatible, in the sense that software written for older versions of the DLL should generally run without recompilation using the current version. 12.2. Sample Program The library is distributed with sample programs written in C (all platforms), C# (Windows only), and Visual Basic (Windows only) to demonstrate usage. It includes a header file (isense.h) with data structure definitions and function prototypes. Most of the API description below can also be obtained from the header file. The header file is heavily commented and contains detailed information about the structures and function calls. main.c Main loop of the program. All API calls are made from here. isense.h Header file containing function prototypes and definitions, some of which are only applicable to InterSense Professional Series devices and are not used with InterTrax. This file should not be modified. isense.c DLL import procedures. This file is included instead of an import library to provide compatibility with all compilers. isense.dll libisense.so libisense.dylib The InterSense DLL and shared libraries. These files should be placed in the Windows system directory, system library directory, or in the working directory of the application (additional configuration may be required on UNIX platforms). dlcompat.c dlcompat.h Shared object import procedures for Mac OS X, not used on other operating systems. IS-900 User Guide Page 149 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 12.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 3 or 4 function calls, as shown in the simple example below: #include #include "isense.h" #ifdef UNIX #include #endif void main() ISD_TRACKER_HANDLE ISD_TRACKER_INFO_TYPE ISD_TRACKING_DATA_TYPE int handle; tracker; data; i; handle = ISD_OpenTracker((Hwnd)NULL, 0, FALSE, FALSE ); if ( handle > 0 ) printf( "\n Az El Rl else printf( "Tracker not found. Press any key to exit" ); Z \n" ); for (i=0; i < 20; i++) { if ( handle > 0 ) { ISD_GetTrackingData( handle, &data ); printf( "%7.2f %7.2f %7.2f %7.3f %7.3f %7.3f data.Station[0].Euler[0], data.Station[0].Euler[1], data.Station[0].Euler[2], data.Station[0].Position[0], data.Station[0].Position[1], data.Station[0].Position[2] ); ", ISD_GetCommInfo( handle, &tracker ); printf( "%5.2f Kb/s %d Rec/s \r", tracker.KBitsPerSec, tracker.RecordsPerSec ); fflush(0); #ifdef _WIN32 Sleep( 1000 ); #elif defined UNIX usleep(1e6); #endif ISD_CloseTracker( handle ); IS-900 User Guide Page 150 of 177 InterSense 12.4. Doc. No. 072-00105-0I07 Rev. 4.2 API ISD_TRACKER_HANDLE ISD_OpenTracker( HWND hParent, DWORD commPort, Bool infoScreen, Bool verbose ) This function is used for opening a single tracker. It may be called multiple times in order to open multiple trackers, though typically using ISD_OpenAllTrackers()is recommended instead for use with multiple trackers. 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. Otherwise it looks for USB device, then for serial port device on all ports at all baud rates. Most applications should pass 0 for maximum flexibility. If you have more than one InterSense device and would like to have a specific tracker, connected to a known port, initialized first, then enter the port number instead of 0. infoScreen This feature has not been implemented. Its purpose is to display an information window to show the tracker detection progress and results. Currently DLL writes only to Windows console. Most applications should pass FALSE. verbose Pass TRUE if you would like a more detailed report of the DLL activity. Messages are printed to Windows console. DWORD ISD_OpenAllTrackers( Hwnd hParent, ISD_TRACKER_HANDLE *handle, Bool infoScreen, Bool verbose ) This function is used for opening multiple trackers. It returns an array of handles for all detected trackers. -1 is returned on failure. 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. handle An ISD_TRACKER_HANDLE array of size ISD_MAX_TRACKERS. This is the recommended method for opening multiple trackers. The handle IS-900 User Guide Page 151 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 pointer will be populated with handles for all detected trackers when this function returns. infoScreen This feature has not been implemented. Its purpose is to display an information window to show the tracker detection progress and results. Currently DLL writes only to Windows console. Most applications should pass FALSE. verbose Pass TRUE if you would like a more detailed report of the DLL activity. Messages are printed to Windows console. Bool ISD_CloseTracker( ISD_TRACKER_HANDLE handle ) This function call de-initializes the tracker, closes the communications port and frees the resources associated with this tracker. If 0 is passed, all currently open trackers are closed. When the last tracker is closed, the program frees the DLL. Returns FALSE if failed for any reason. handle Handle to the tracking device. This is a handle returned by ISD_OpenTracker() or ISD_OpenAllTrackers(). 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 the ISD_TRACKER_INFO_TYPE structure definition for a complete list of items. handle Handle to the tracking device. This is a handle returned by ISD_OpenTracker() or ISD_OpenAllTrackers(). Tracker Pointer to a structure of type ISD_TRACKER_INFO_TYPE. The structure definition is given below. Bool ISD_SetTrackerConfig( ISD_TRACKER_HANDLE handle, ISD_TRACKER_INFO_TYPE *Tracker, Bool verbose ) IS-900 User Guide Page 152 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 When used with IS Precision Series (IS-300, IS-600, and IS-900) tracking devices this function call will set ultrasonic and synchronization parameters, all other fields in the ISD_TRACKER_INFO_TYPE structure are for information purposes only. handle Handle to the tracking device. This is a handle returned by ISD_OpenTracker() or ISD_OpenAllTrackers(). Tracker Pointer to a structure of type ISD_TRACKER_INFO_TYPE. The structure definition is given below. Bool ISD_GetCommInfo( ISD_TRACKER_HANDLE handle, ISD_TRACKER_INFO_TYPE *Tracker) Get RecordsPerSec and KBitsPerSec without requesting Genlock and other settings from the tracker. Use this instead of ISD_GetTrackerConfig() to prevent your program from stalling while waiting for the tracker response. This call is used to obtain data rate information. handle Handle to the tracking device. This is a handle returned by ISD_OpenTracker() or ISD_OpenAllTrackers(). Tracker Pointer to a structure of type ISD_TRACKER_INFO_TYPE. The structure definition is given below. 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 the current configuration, make the changes, and then apply them. Calling ISD_GetStationConfig() is important because you typically only want to change some of the settings, leaving the rest unchanged. This function is ignored if used with InterTrax products. IS-900, IS-600, IS-300 and InertiaCubes allow many parameters (including but not limited to AngleFormat, Compass, Prediction, Enhancement, and Sensitivity) to be changed. handle Handle to the tracking device. This is a handle returned by ISD_OpenTracker() or ISD_OpenAllTrackers(). IS-900 User Guide Page 153 of 177 InterSense Station Doc. No. 072-00105-0I07 Rev. 4.2 Pointer to a structure of type ISD_STATION_INFO_TYPE. The structure definition is given below. stationID Number from 1 to ISD_MAX_STATIONS. Bool ISD_GetStationConfig( ISD_TRACKER_HANDLE handle, ISD_STATION_INFO_TYPE *Station, WORD stationID, Bool verbose ) Fills the ISD_STATION_INFO_TYPE structure with current settings. handle Handle to the tracking device. This is a handle returned by ISD_OpenTracker() or ISD_OpenAllTrackers(). Station Pointer to a structure of type ISD_STATION_INFO_TYPE. The structure definition is given below. stationID Number from 1 to ISD_MAX_STATIONS. Bool ISD_ConfigureFromFile( ISD_TRACKER_HANDLE handle, char *path, Bool verbose ) When a tracker is first opened, library automatically looks for a configuration file in current directory of the application. File name convention is isenseX.ini where X is a number, starting at 1, identifying the first tracking system in the order of initialization. This function provides for a way to manually configure the tracker using an arbitrary configuration file instead. handle Handle to the tracking device. This is a handle returned by ISD_OpenTracker() or ISD_OpenAllTrackers(). path Pointer to a string representing the complete path to the file to load. Bool ISD_ConfigSave( ISD_TRACKER_HANDLE handle ) Save tracker configuration. For devices with on-host processing, like the IS-900 PCTracker or PCI Tracker, this will write to the isenseX.cfg file. Serial port devices like IS-300, IS-600 and IS-900 save configuration in the base unit, and this call will just send a command to commit the changes to permanent storage. handle Handle to the tracking device. This is a handle returned by ISD_OpenTracker() or ISD_OpenAllTrackers(). IS-900 User Guide Page 154 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Bool ISD_GetTrackingData( ISD_TRACKER_HANDLE handle, ISD_TRACKING_DATA_TYPE *Data ) Get data from all configured stations. Data is places in the ISD_TRACKING_DATA_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. This is a handle returned by ISD_OpenTracker() or ISD_OpenAllTrackers(). Data Pointer to a structure of type ISD_TRACKER_DATA_TYPE. See below for structure definition. Orientation data order is Yaw, Pitch, and Roll for Euler angles and W, X, Y, Z for quaternions. Bool ISD_RingBufferSetup( ISD_TRACKER_HANDLE handle, WORD stationID, ISD_STATION_DATA_TYPE *dataBuffer, DWORD samples ) By default, ISD_GetTrackingData() processes all records available from the tracker and only returns the latest data. As the result, data samples can be lost if it is not called frequently enough. If all the data samples are required, you can use a ring buffer to store them. ISD_RingBufferSetup() accepts a pointer to the ring buffer, and its size. Once activated, all processed data samples are stored in the buffer for use by the application. ISD_GetTrackingData() can still be used to read the data, but will return the oldest saved data sample, then remove it from the buffer (FIFO). By repeatedly calling ISD_GetTrackingData(), all samples are retrieved, the latest coming last. All consecutive calls to ISD_GetTrackingData() will return the last sample, but the NewData flag will be FALSE to indicate that the buffer has been emptied. handle Handle to the tracking device. This is a handle returned by ISD_OpenTracker() or ISD_OpenAllTrackers(). stationID Number from 1 to ISD_MAX_STATIONS. dataBuffer An array of ISD_STATION_DATA_TYPE structures. Pass in NULL if you do not need visibility into the complete buffer (typical). samples IS-900 User Guide The size of the ring buffer. ISD_GetTrackingData()should be called frequently enough to avoid buffer overrun. Page 155 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Bool ISD_RingBufferStart( ISD_TRACKER_HANDLE handle, WORD stationID ) Activate the ring buffer. While active, all data samples are stored in the buffer. Because this is a ring buffer, it will only store the number of samples specified in the call to ISD_RingBufferSetup(), so the oldest samples can be overwritten. handle Handle to the tracking device. This is a handle returned by ISD_OpenTracker() or ISD_OpenAllTrackers(). stationID Number from 1 to ISD_MAX_STATIONS. Bool ISD_RingBufferStop( ISD_TRACKER_HANDLE handle, WORD stationID ) Stop collection. The library will continue to process data, but the contents of the ring buffer will not be altered. handle Handle to the tracking device. This is a handle returned by ISD_OpenTracker() or ISD_OpenAllTrackers(). stationID Number from 1 to ISD_MAX_STATIONS. Bool ISD_RingBufferQuery( ISD_TRACKER_HANDLE handle, WORD stationID, ISD_STATION_DATA_TYPE *currentData, DWORD *head, DWORD *tail ) Queries the library for the latest data without removing it from the buffer or affecting the NewData flag. It also returns the indexes of the newest and the oldest samples in the buffer. These can then be used to parse the buffer. handle Handle to the tracking device. This is a handle returned by ISD_OpenTracker() or ISD_OpenAllTrackers(). stationID Number from 1 to ISD_MAX_STATIONS. currentData An array of ISD_STATION_DATA_TYPE used as the buffer. head Pointer to the current head of the ring buffer. tail Pointer to the current tail of the ring buffer. IS-900 User Guide Page 156 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Bool ISD_ResetHeading( ISD_TRACKER_HANDLE handle, WORD stationID ) Reset heading (yaw) to zero. handle Handle to the tracking device. This is a handle returned by ISD_OpenTracker() or ISD_OpenAllTrackers(). stationID Number from 1 to ISD_MAX_STATIONS. 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 (0, 0, 0) for yaw, pitch, and roll, when the HMD is horizontal. handle Handle to the tracking device. This is a handle returned by ISD_OpenTracker() or ISD_OpenAllTrackers(). stationID Number from 1 to ISD_MAX_STATIONS. yaw, pitch, roll Boresight reference angles. Bool ISD_Boresight ( ISD_TRACKER_HANDLE handle, WORD stationID, Bool set ) Boresight, or unboresight a station. If 'set' is TRUE, all angles are reset to zero. Otherwise, all boresight settings are cleared, including those set by ISD_ResetHeading() and ISD_BoresightReferenced(). Note that the angles are reset relative to the current yaw; if the station is at 90 degrees yaw and 0 degrees pitch/roll when this function is called, rolling the sensor (relative to its current heading) will be considered pitch, and pitch (relative to its current heading) will be considered roll; it does not perform a boresight 'relative' to the current orientation vector. handle IS-900 User Guide Handle to the tracking device. This is a handle returned by ISD_OpenTracker() or ISD_OpenAllTrackers(). Page 157 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 stationID Number from 1 to ISD_MAX_STATIONS. set TRUE or FALSE, to set to clear boresight, respectively. Bool ISD_SendScript( ISD_TRACKER_HANDLE handle, char *script ) Send a configuration script to the tracker. Script must consist of valid commands as described in the interface protocol. Commands in the script should be terminated by the newline character '\n'. The linefeed character '\r' is added by the function and is not required. Note that this may not be supported when using the shared memory interface, such as with sfServer, and is primarily intended for the IS-300/IS-600/IS-900 system. handle Handle to the tracking device. This is a handle returned by ISD_OpenTracker() or ISD_OpenAllTrackers(). script Pointer to a string containing the command script. Bool ISD_AuxOutput( ISD_TRACKER_HANDLE handle, WORD stationID, BYTE *AuxOutput, WORD length ) Sends up to 4 output bytes to the auxiliary interface of the station specified. The number of bytes should match the number the auxiliary outputs the interface is configured to expect. If too many are specified, extra bytes are ignored. handle Handle to the tracking device. This is a handle returned by ISD_OpenTracker() or ISD_OpenAllTrackers(). stationID Number from 1 to ISD_MAX_STATIONS. AuxOutput An array of BYTEs to send. length IS-900 User Guide Size of AuxOutput. Page 158 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Bool ISD_NumOpenTrackers( WORD *num ) The number of currently opened trackers is stored in the parameter passed to this function. float ISD_GetTime( void ) Platform independent time function. Bool ISD_UdpDataBroadcast( ISD_TRACKER_HANDLE handle, DWORD port, ISD_TRACKING_DATA_TYPE *trackingData, ISD_CAMERA_DATA_TYPE *cameraData ) Broadcast tracker data over the network using UDP broadcast. handle Handle to the tracking device. This is a handle returned by ISD_OpenTracker() or ISD_OpenAllTrackers(). port UDP port (0 to 65535). trackingData A ISD_TRACKING_DATA_TYPE structure containing the data to send, retrieved with ISD_GetTrackingData(). cameraData Pass NULL to this. Bool ISD_GetSystemHardwareInfo( ISD_TRACKER_HANDLE handle, ISD_HARDWARE_INFO_TYPE *hwInfo ) Retrieve system hardware information. Note that the system is a single tracker (and will thus have one handle). For details on individual stations (such as the devices on each port of an IS-900), use ISD_GetStationHardwareInfo() instead. handle Handle to the tracking device. This is a handle returned by ISD_OpenTracker() or ISD_OpenAllTrackers(). hwInfo An ISD_HARDWARE_INFO_TYPE structure containing the information. The structure definition is given below. IS-900 User Guide Page 159 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Bool ISD_GetStationHardwareInfo( ISD_TRACKER_HANDLE handle, ISD_STATION_HARDWARE_INFO_TYPE *info, WORD stationID ) Retrieve station hardware information. Stations are individual devices (such as a wand or head tracker) connected to a tracker (such as an IS-900). handle Handle to the tracking device. This is a handle returned by ISD_OpenTracker() or ISD_OpenAllTrackers(). info An ISD_STATION_HARDWARE_INFO_TYPE structure containing the information. The structure definition is given below. stationID Number from 1 to ISD_MAX_STATIONS. Bool ISD_GetPortWirelessInfo( ISD_TRACKER_HANDLE handle, WORD port, ISD_PORT_WIRELESS_INFO_TYPE *info ) Retrieve wireless configuration information. handle Handle to the tracking device. This is a handle returned by ISD_OpenTracker() or ISD_OpenAllTrackers(). port Station or port to get info from, starting at 0 for the first port. info An ISD_PORT_WIRELESS_INFO_TYPE structure containing the information. The structure definition is given below. IS-900 User Guide Page 160 of 177 InterSense 12.5. Doc. No. 072-00105-0I07 Rev. 4.2 Data Structures 12.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 FirmwareRev; float fReserved2; float fReserved3; float fReserved4; Bool LedEnable; Bool bReserved2; Bool bReserved3; Bool bReserved4; ISD_TRACKER_INFO_TYPE; LibVersion InterSense library version (version of DLL or shared library). TrackerType One of the values defined in ISD_SYSTEM_TYPE TrackerModel One of the values defined in ISD_SYSTEM_MODEL Port Number of the hardware port the tracker is connected to. Starts with 1. RecordsPerSec Communication statistics (number of data records/sec from tracker). KBitsPerSec Communications statistics (Kb/sec of data from tracker). IS-900 User Guide Page 161 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 SyncState Applies to IS-X Series devices only. Can be one of 4 values: 0 - OFF, system is in free run 1 – Not used 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. The phase point is specified as a percentage of the sync period. 0% (the default) instructs the tracker to output a data record as soon as possible after the sync period begins. 100% delays the output of a record as much as possible before the next sync period begins. Interface Hardware interface type, as defined in ISD_INTERFACE_TYPE. UltTimeout IS-900 only, ultrasonic timeout (sampling rate). UltVolume IS-900 only, ultrasonic speaker volume. FirmwareRev Firmware revision for tracker. LedEnable IS-900 only, blue led on the SoniDiscs enable flag. IS-900 User Guide Page 162 of 177 InterSense 12.5.2. Doc. No. 072-00105-0I07 Rev. 4.2 ISD_STATION_INFO_TYPE This data structure is used to get and set station configuration, using ISD_GetStationConfig() and ISD_SetStationConfig(). typedef struct { DWORD ID; Bool State; Bool Compass; LONG InertiaCube; DWORD Enhancement; DWORD Sensitivity; DWORD Prediction; DWORD AngleFormat; Bool TimeStamped; Bool GetInputs; Bool GetEncoderData; BYTE CompassCompensation; BYTE ImuShockSuppression; BYTE UrmRejectionFactor; BYTE bReserved2; DWORD CoordFrame DWORD AccelSensitivity; float fReserved1; float fReserved2; float TipOffset[3]; float fReserved3; Bool GetCameraData; Bool GetAuxInputs; Bool GetCovarianceData; Bool GetExtendedData; ISD_STATION_INFO_TYPE; ID A unique number identifying a station. It is the same as that passed to the ISD_SetStationConfig() and ISD_GetStationConfig() functions and can be 1 to ISD_MAX_STATIONS. State TRUE if on, FALSE if off. InertiaCubes are considered to be a tracking system consisting of one station, which cannot be turned off, so this field will always be TRUE. The IS-900 may have up to 7 stations connected. Compass Only available for InertiaCube devices. For all others this setting is always 2. This controls the state of the compass component of the InertiaCube. Compass is only used when station is configured for GEOS or Dual modes, in Fusion mode compass readings are not used, regardless of this setting. When station is configured for full compass mode, the readings produced by the magnetometers inside the InertiaCube are used as absolute reference orientation for yaw. Compass can be affected by metallic objects and electronic equipment in close proximity to an InertiaCube. Older versions of tracker firmware supported only IS-900 User Guide Page 163 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 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. Otherwise, it is a positive number 1 to ISD_MAX_STATIONS. Only relevant for IS-300 and IS-600 Series devices. For IS-900 systems, it is always the same as the station number, for InterTrax and InertiaCubes it’s always 1. Enhancement In order to provide the best performance for a large range of various applications, three levels of perceptual enhancement are available. None of the modes introduces any additional latency. The InterTrax is restricted to Mode 2. Mode 0 provides the best accuracy. The inertial tracker uses gyros to measure angular rotation rates for computing the sensor’s orientation. To compensate for the gyroscopic drift, depending on the configuration, the tracker may use accelerometers, magnetometers or SoniDiscs to measure the actual physical orientation of the sensor. That data is then used to compute the necessary correction. In Mode 0 correction adjustments are made immediately, no jitter reduction algorithms are used. This results in somewhat jumpy output (not recommended for head tracking) but with lower RMS error. Use this mode for accuracy testing or for any application that requires best accuracy. Mode 1 provides accuracy similar to that of mode 0, with an addition of a jitter reduction algorithm. This algorithm reduces the accuracy by only a small amount and does not add any latency to the measurements. Mode 1 is recommended for augmented reality applications (i.e. overlaying or mixing both virtual and real objects in a visualization system.) 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 This setting is only used when Perceptual Enhancement Level is set to 1 or 2. It controls the minimum angular rotation rate picked up by the InertiaCube. Default is level 3. Increasing sensitivity does not increase latency during normal movements. It may, however, result in some small residual movements for a couple of seconds after the sensor has stopped. If your application requires sensitivity greater than maximum provided by this control, you must use Perceptual Enhancement level 0. For InterTrax this value is fixed to default and can’t be changed. IS-900 User Guide Page 164 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 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 InertiaCubes. 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. GetInputs TRUE if button and joystick data is requested, default is FALSE. GetEncoderData TRUE if raw encoder data is requested, default is FALSE. CompassCompensation This setting controls how Magnetic Environment Calibration is applied. This calibration calculates nominal field strength and dip angle for the environment in which the sensor is used. Based on these values, the system can assign a weight to compass measurements, allowing it to reject bad measurements. Values from 0 to 3 are accepted. If CompassCompensation is set to 0, the calibration is ignored and all compass data is used. Higher values result in a tighter rejection threshold, resulting in more measurements being rejected. If the sensor is used in an environment with significant magnetic interference this can result in drift due to insufficient compensation from the compass data. Default setting is 2. Note that the sensor must be calibrated in the ISDemo Compass Calibration Tool for this setting to have any effect. ImuShockSuppression This setting controls how the system deals with sharp changes in IMU data that can be caused by shock or impact. Sensors may experience momentary rotation rates or accelerations that are outside of the specified range, resulting in undesirable behavior. By turning on shock suppression you can have the system filter out corrupted data. Values 0 (OFF) to 2 are accepted, with higher values resulting in greater filtering. ImuShockSuppression This setting controls the rejection threshold for ultrasonic measurements. Currently, it is implemented only for the IS-900 PCTracker. Default setting is 4, which results in measurements with range errors greater than 4 times the average to be rejected. Please do not change this setting without first consulting with InterSense technical support. IS-900 User Guide Page 165 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 CoordFrame Coordinate frame in which position and orientation data is reported. Can be ISD_DEFAULT_FRAME or ISD_VSET_FRAME. Second is used for camera tracker only. Default is ISD_DEFAULT_FRAME. AccelSensitivity AccelSensitivity is used for 3-DOF tracking with InertiaCube products only. It controls how fast tilt correction, using accelerometers, is applied. Valid values are 1 to 4, with 2 as default. Level 1 reduces the amount of tilt correction during movement. While it will prevent any effect linear accelerations may have on pitch and roll, it will also reduce stability and dynamic accuracy. It should only be used in situations when sensor is not expected to experience a lot of movement. Level 2 (default) is best for head tracking in static environment, with user seated. Level 3 allows for more aggressive tilt compensation, appropriate when sensor is moved a lot, for example, when the user is walking for long periods of time. Level 4 allows for even greater tilt corrections. It will reduce orientation accuracy by allowing linear accelerations to effect orientation, but increase stability. This level is appropriate for when the user is running, or in other situations where the sensor experiences a great deal of movement. TipOffset Offset of the reported position from the physical point being tracked. This is only applicable to system capable of tracking position. GetCameraData TRUE to get computed FOV, aperture, etc. default is FALSE. GetAuxInputs TRUE to get values from auxiliary inputs connected to the I C port in the MicroTrax device. IS-900 User Guide Page 166 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 12.5.3. ISD_TRACKING_DATA_TYPE This data structure is used to return current data for a station, including position, orientation, time stamp, button and analog channel state. It is passed to ISD_GetTrackingData() as part of ISD_TRACKING_DATA_TYPE typedef struct { ISD_STATION_DATA_TYPE Station[ISD_MAX_STATIONS]; ISD_TRACKING_DATA_TYPE; typedef struct { BYTE TrackingStatus; BYTE NewData; BYTE CommIntegrity; BYTE BatteryState float Euler[3]; float Quaternion[4]; float Position[3]; float TimeStamp; float StillTime; float BatteryLevel; float CompassYaw; Bool short BYTE ButtonState[ISD_MAX_BUTTONS]; AnalogData[ISD_MAX_CHANNELS]; AuxInputs[ISD_MAX_AUX_INPUTS]; float float float float float float BYTE BYTE BYTE BYTE AngularVelBodyFrame[3]; AngularVelNavFrame[3]; AccelBodyFrame[3]; AccelNavFrame[3]; VelocityNavFrame[3]; AngularVelRaw[3]; MeasQuality; bReserved2; bReserved3; bReserved4; DWORD DWORD TimeStampSeconds; TimeStampMicroSec; DWORD DWORD OSTimeStampSeconds; OSTimeStampMicroSec; float float Reserved[56]; MagBodyFrame[3]; ISD_STATION_DATA_TYPE; IS-900 User Guide Page 167 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 TrackingStatus Tracking status byte. Available only with IS-900 firmware versions 4.13 and higher, and isense.dll versions 3.54 and higher. It is a value from 0 to 255 that represents tracking quality. 0 represents lost. NewData TRUE if this is new data. Every time ISD_GetData() is called this flag is reset. CommIntegrity Communication integrity of wireless link (percentage of packets received from tracker, 0-100%) BatteryState Certain wireless devices only (0=N/A, 1=Low, 2=OK). Not currently used by MiniTrax or MicroTrax stations. Euler Orientation in Euler angle format (Yaw, Pitch, Roll) Quaternion Orientation in Quaternion format (W,X,Y,Z) Position Station position in meters. TimeStamp Timestamp in seconds, reported only if requested StillTime InertiaCube and PC-Tracker products only, whether sensor is still BatteryLevel Battery voltage, if available CompassYaw Magnetometer heading, computed based on current orientation. Available for InertiaCube products only, such as IC2, IC3 and IC2+ 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. Values are from 0 to 255, with 127 representing the center. AuxInputs Only if requested. IS-900 User Guide Page 168 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 AngularVelBodyFrame rad/sec, in sensor body coordinate frame. Reported as rates about X, Y and Z axes, corresponding to Roll, Pitch, Yaw order. This is the processed angular rate, with current biases removed. This is the angular rate used to produce orientation updates. AngularVelNavFrame rad/sec, in world coordinate frame, with boresight and other transformations applied. Reported as rates about X, Y and Z axes, corresponding to Roll, Pitch, Yaw order. AccelBodyFrame meter/sec^2, in sensor body coordinate frame. These are the accelerometer measurements in the sensor body coordinate frame. Only factory calibration is applied to this data, gravity component is not removed. Reported as accelerations along X, Y and Z axes. AccelNavFrame meters/sec^2, in the navigation (earth) coordinate frame. This is the accelerometer measurements with calibration, current sensor orientation applied, and gravity subtracted. This is the best available estimate of tracker acceleration. Reported as accelerations along X, Y and Z axes. VelocityNavFrame meters/sec, 6-DOF systems only. Reported as velocity along X, Y and Z axes. AngularVelRaw Raw gyro output, only factory calibration is applied. Some errors due to temperature dependant gyro bias drift will remain. MeasQuality Ultrasonic Measurement Quality (IS-900 only, firmware >= 4.26) TimeStampSeconds Time Stamp in whole seconds. TimeStampMicroSec Fractional part of the Time Stamp in micro-seconds. OSTimeStampSeconds OSTimeStampMicroSec Data record arrival time stamp based on OS time, reserved for future use, not implemented. MagBodyFrame 3DOF sensors only. Magnetometer data along the X, Y, and Z axes. Units are nominally in Gauss, and factory calibration is applied. Note, however, that most sensors are not calibrated precisely since the absolute field strength is not IS-900 User Guide Page 169 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 necessary to for tracking purposes. Relative magnitudes should be accurate, however. Fixed metal compass calibration may rescale the values. IS-900 User Guide Page 170 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 12.5.4. ISD_HARDWARE_INFO_TYPE This data structure is used to return system hardware information using ISD_GetSystemHardwareInfo(). For more detailed descriptions of elements in the structure, please reference the comments in the isense.h file. typedef struct { Bool Valid; DWORD DWORD DWORD DWORD Bool DWORD float TrackerType; TrackerModel; Port; Interface; OnHost; AuxSystem; FirmwareRev; char ModelName[128]; struct { Bool Bool Bool Bool Bool Bool Bool Bool Position; Orientation; Encoders; Prediction; Enhancement; Compass; SelfTest; ErrorLog; Bool Bool Bool Bool UltVolume; UltGain; UltTimeout; PhotoDiode; DWORD DWORD DWORD DWORD DWORD MaxStations; MaxImus; MaxFPses; MaxChannels; MaxButtons; Bool Bool Bool Bool MeasData; DiagData; PseConfig; ConfigLock; float float float float UltMaxRange; fReserved2; fReserved3; fReserved4; Bool Bool Bool Bool CompassCal; bReserved2; bReserved3; bReserved4; DWORD dwReserved1; IS-900 User Guide Page 171 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 DWORD DWORD DWORD dwReserved2; dwReserved3; dwReserved4; Capability; Bool Bool Bool Bool bReserved1; bReserved2; bReserved3; bReserved4; DWORD DWORD DWORD DWORD BaudRate; NumTestLevels; dwReserved3; dwReserved4; float float float float fReserved1; fReserved2; fReserved3; fReserved4; char char char char cReserved1[128]; cReserved2[128]; cReserved3[128]; cReserved4[128]; ISD_HARDWARE_INFO_TYPE; IS-900 User Guide Page 172 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 12.5.5. ISD_STATION_HARDWARE_INFO_TYPE This data structure is used to return station (individual tracking device) hardware information using ISD_GetStationHardwareInfo(). For more detailed descriptions of elements in the structure, please reference the comments in the isense.h file. typedef struct { Bool Valid; DWORD ID; char DescVersion[20]; float FirmwareRev; DWORD SerialNum; char CalDate[20]; DWORD Port; struct { Bool Bool DWORD DWORD DWORD DWORD DWORD Bool Bool Bool Bool Bool DWORD DWORD DWORD DWORD Capability; Position; Orientation; Encoders; NumChannels; NumButtons; AuxInputs; AuxOutputs; Compass; bReserved1; bReserved2; bReserved3; bReserved4; dwReserved1; dwReserved2; dwReserved3; dwReserved4; Bool Bool Bool Bool DWORD DWORD DWORD DWORD bReserved1; bReserved2; bReserved3; bReserved4; Type; DeviceID; dwReserved3; dwReserved4; float float float float fReserved1; fReserved2; fReserved3; fReserved4; char char char char cReserved1[128]; cReserved2[128]; cReserved3[128]; cReserved4[128]; ISD_STATION_HARDWARE_INFO_TYPE; IS-900 User Guide Page 173 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 12.5.6. ISD_PORT_WIRELESS_INFO_TYPE This data structure is used to information about the wireless hardware on a given port, using ISD_GetPortWirelessInfo(). The radioVersion field can be used to check the type of radio hardware: 2.4 2.4 900 868 GHz GHz MHz MHz (Aerocomm, radio used with older MiniTrax trackers): 15 or 31 (Chipcon, MicroTrax only): 128 (MicroTrax only): 144 (MicroTrax only): 160 typedef struct { Bool valid; LONG status; Bool wireless; DWORD channel; DWORD id[4]; DWORD radioVersion; DWORD DWORD DWORD DWORD dReserved1; dReserved2; dReserved3; dReserved4; ISD_PORT_WIRELESS_INFO_TYPE; IS-900 User Guide Page 174 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 13. Appendix H – Interface Protocol Commands – Quick Reference For further detail, see: Section 4.2 Standard Fastrak™ Interface Commands, pages 63-71. Section 4.3 Fastrak™ Commands Implemented for Compatibility, page 71. Section 4.4 InterSense specific Commands, pages 71-80. NOTE: “<>” represents a newline character, and “^” represents a control character Command Syntax Data Record Request Output mode Alignment Reference Frame A{stationNum},[Ox,Oy,Oz,Xx,Xy,Xz,Yx,Yy,Yz]<> Reset Alignment Reference Frame R{stationNum}<> Boresight Reference Angles G{stationNum},[yawref, pitchref, rollref]<> Boresight Compatibility Mode MBF<> MBI<> Boresight B{stationNum}<> MB{stationNum}<> (Fastrak compatibility mode) (Version 2.x compatibility mode) Unboresight b{stationNum}<> Mb{stationNum}<> (Fastrak compatibility mode) (Version 2.x compatibility mode) Heading Boresight B{stationNum}<> MB{stationNum}<> (Version 2.x compatibility mode) (Fastrak compatibility mode) Heading Unboresight b{stationNum}<> Mb{stationNum}<> (Version 2.x compatibility mode) (Fastrak compatibility mode) Set continuous output mode Set polled output mode Switch to Fastrak Compatible mode. Switch to Version 2.x Compatible mode (default). Set Serial Communication Parameters o{rate,parity,bits,HHS}<> System Record Request Station Status l{stationNum},[state]<> Output Units Control Set units to inches. Set units to centimeters. System control ^K ^Y ^S ^Q Save current settings to non-volatile memory. Restore factory default settings. Restart the firmware to the power up condition. Suspend data transmission. Resume data transmission. Output record mode Put in ASCII output mode. Put in Binary output mode. IS-900 User Guide Page 175 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 Output record list settings O{stationNum},[p1],[p2],[p3],.....,[pn]<> Define Tip Offsets N{stationNum},[Ox, Oy, Oz]<> Position Operational Envelope V{stationNum},[Xmax,Ymax,Zmax,Xmin,Ymin,Zmin]<> Hemisphere H{stationNum},[p1,p2,p3]<> Time Units MT<> Mt<> Set Current Time to Zero MZ<> Ethernet Communication Parameters MEthIp{address}<> MEthTcpPort{port}<> MEthUdp{state}<> MEthUdpPort{port}<> MEthSubnet{subnet}<> MEthMode{mode}<> MEthApply<> InterSense System Status Record Request MS<> Tracking Status Record Request MP<> Genlock Synchronization MG[State, Rate]<> Genlock Phase MGP[Param]<> Configuration Lock MConfigLockMode{Mode}<> SoniStrip LED Control ML[state] Error reporting ME<> MEC<> ME1<> ME0<> Command Logging MLogOpen<> MLogClose<> MLogClear<> MLogState<> MLogSend<> InterSense Station Status Record Request Ms{stationNum}<> Prediction Interval Mp{stationNum},[Interval]<> Perceptual Enhancement Level MF{stationNum},{Mode}<> Compass Heading Correction MH{stationNum},{state}<> Rotational Sensitivity Level MQ{stationNum},[Sensitivity Level]<> Associate Fixed PSE with a Constellation MCF{FPSE number}, {xp, yp, zp, xn, yn, zn, IDcode}<> Disassociate Fixed PSE from Constellation MCf[Fixed PSE number, IDcode]<> Clear All Fixed PSEs (Constellation) MCC<> Apply New Configuration MCe<> Cancel Configuration Session MCx<> IS-900 User Guide Sets to milliseconds. Sets to microseconds. Set IP address Set TCP port Set UDP state Set UDP port Set subnet Set manual or DHCP mode Apply Ethernet settings Page 176 of 177 InterSense Doc. No. 072-00105-0I07 Rev. 4.2 [END] IS-900 User Guide Page 177 of 177
Source Exif Data:
File Type : PDF File Type Extension : pdf MIME Type : application/pdf PDF Version : 1.5 Linearized : Yes Author : Tom Stepsis Checked By : DCW Create Date : 2014:01:07 13:10:48-05:00 Document Number : 072-00105-0I07 Keywords : Inertial-Acoustic, Tracking, System Modify Date : 2014:01:07 13:11:43-05:00 Subject : IS-900 MicroTrax Systems Telephone Number : +1 781 541 6330 Tagged PDF : Yes XMP Toolkit : Adobe XMP Core 5.2-c001 63.139439, 2010/09/27-13:37:26 Metadata Date : 2014:01:07 13:11:43-05:00 Creator Tool : Acrobat PDFMaker 10.1 for Word Document ID : uuid:aaf9d12b-a44a-4260-ae55-87988876fe33 Instance ID : uuid:bab4c040-85b2-45b9-b95c-4729dc14fccd Format : application/pdf Title : User Manual Version 2.2 Description : IS-900 MicroTrax Systems Creator : Tom Stepsis Producer : Adobe PDF Library 10.0 Source Modified : D:20140107181013 Company : InterSense Manager : Dean Wormell Category : Product Documentation Checked 0020by : DCW Department : Marketing Destination : Product CD Document 0020number : 072-00105-0I07 Telephone 0020number : +1 781 541 6330 Headline : IS-900 MicroTrax Systems Page Layout : OneColumn Page Count : 177EXIF Metadata provided by EXIF.tools