Table of Contents 1. Introduction ......................1 2. Setup and Installation..................... 2 2.1. Package Contents..................2 2.2. Connecting the Glove .................. 2 3. Software Installation ....................3 3.1. CD Contents ....................3 3.2. Installed Software ..................4 4. Using GloveManager....................5 4.1.
Page 4
6.4. Supported Gloves ..................28 6.5. Sensor Mappings for the 5DT Data Glove 5 ..........28 6.6. Sensor Mappings for the 5DT Data Glove 16 and 14 Ultra ......29 6.7. Gesture Definitions ..................30 6.8. Auto-Calibration ..................32 7. Troubleshooting and Support ................33 7.1.
1. Introduction The 5DT Data Glove Ultra is a hand data motion capturing solution for animation and virtual reality. The 5DT Data Glove Ultra is the second generation of 5DT’s high-end data glove and has been completely redesigned and optimized for the best performance and ease of use.
2.1. Package Contents When first unpacking your glove, please ensure that all the parts are there. If you are missing anything please contact 5DT or your reseller immediately. The 5DT Data Glove Ultra consists of the following: 1. 5DT Data Glove Ultra (5 or 14 Sensor) 2.
The setup program should run when you insert the CD, but if it doesn’t, run the program setup.exe in the install directory and follow the on-screen instructions. When prompted, check the 5DT Data Glove Ultra box to install the software for this product.
Kaydara glove plug-in. More detail on this is given in Section 5. …\SDK This directory contains the 5DT Glove SDK files. These are described in detail in Section 6. The 3D glove demo will not function with the Data Glove Ultra USB.
4. Using GloveManager The 5DT GloveManager is a useful tool accompanying the Data Glove which may be used for the following: • Testing the 5DT Data Glove • Obtaining good calibrated values for the 5DT Data Glove • Logging data obtained from the 5DT Data Glove Note: All images are shown for the Data Glove 14 Ultra.
glove after starting GloveManager. Once the USB scan is complete the USB device tree will be updated to show available gloves. Figure 3 – Result of the USB Scan As can be seen in Figure 3, the Port Scan has found two wireless gloves on COM1.
Page 11
Figure 5 – GloveManager after the USB Glove is Successfully Opened Clicking on the tab will cause GloveManager to display the setup tab window again. To open the second wireless glove, select it from the COM port tree.
4.3. Opening Serial and Wireless Gloves 4.3.1 Scanning for Gloves Clicking the button in the setup tab window causes GloveManager to scan the COM ports for available gloves. This is useful if you do not know on which COM port your glove is connected to, or you simply want to scan for available gloves.
Page 13
Figure 8 – GloveManager after the First Glove is Successfully Opened Clicking on the tab will cause GloveManager to display the setup tab window again. To open the second wireless glove, select it from the COM port tree. Figure 9 – Selecting the Second Glove to be Opened Click on the button again to open the second glove.
Figure 10 – The Tab Bar with Two Gloves Open You may switch between open gloves by clicking on either of the Glove Tabs. 4.4. The Graph View The following information fields are available in Graph View: • Menu bar •...
Menu bar Toolbar Tab bar Sensor graph Sensor name and values Status bar Figure 11 – Available Fields in Graph View 4.4.1 The Menu Bar The following commands are available from the menu: Item Shortcut Description File | New Recording Ctrl+N Creates a new recording file File | Save Recording...
Item Shortcut Description Calibration | Auto Calibration Toggles between auto and manual calibration Calibration | Manual Calibration Toggles between auto and manual calibration Calibration | Reset Calibration Resets the auto calibration values, and turns auto calibration on Calibration | Load Calibration Values Alt+O Load the calibration values from file, turns auto calibration off Calibration | Save Calibration Values Alt+S Save the current calibration values to file...
Some items may me disabled when no glove is open. 4.4.3 Tab Bar The tab bar allows you to switch between the Setup view and the currently open gloves. The blue dot on the tab icon indicates a wireless glove. Figure 12 –...
4.4.4.3 Graph Zooming You may zoom into a graph by simply clicking on it, as illustrated below: Left click Figure 15 – An Illustration of the Zoom Procedure The zoomed view gives you a more detailed view of the graph, and allows you to do fine-tuning of the calibration value.
Page 19
Sensor name Raw value Graph top value Scaled value Current graph value Graph bottom value Lower calibration value Upper calibration value Dynamic range value Figure 16 – The Sensor Info Box The upper and lower calibration values may be fine-tuned by adjusting the minimum and maximum values of the dynamic range.
4.4.6 The Status Bar The status bar displays various program and glove related information, including: • Program status and information messages • The packet rate • An indication if recording is currently on • An indication if auto calibration is currently on •...
You may go back to graph view by clicking on the buttons, by selecting the View | Show View Setup option from the menu or by pressing the V shortcut key. 4.6. Glove Calibration Figure 20 – The Sensor Selection View Glove calibration values may be loaded from file by clicking the button, by selecting the Calibration | Load Calibration Values menu option, or by using...
Page 22
Figure 21 – The File Open Dialog for Calibration Files Select a calibration file (extension .cal) and click on the button to open the file. Glove calibration values may be saved to file by clicking the button, by selecting the Calibration | Save Calibration Values menu option, or by using the Alt+S shortcut key.
Type in your file name and click the button to save the calibration values to file. The file format is also compatible with the 5DT Data Glove SDK. 4.7. Recording The incoming glove data may be recorded by clicking the...
To install the driver, follow the steps given below. 1. Copy the file ordevice5dt.dll to the [MOCAP]\bin\plugins directory. 2. Make sure that the 5DT Glove driver is installed – specifically fglove.dll should be installed in the Windows\System folder. 3. Run MOCAP.
Figure 24 - Clicking and Dragging the 5DT DataGlove Icon to Create a New Glove In the navigator pane, click on the newly created glove. The following window will appear: Figure 25 - The Glove Control Pane If you know which port the glove is connected to, select it from the ports drop- down list.
Page 26
The process of opening two wireless gloves is illustrated next: 1. The first glove is created (by dragging the 5DT DataGlove icon from the device pane into the viewer window) and a port scan is performed. We can see that there is a glove present on COM1-A.
Figure 28 - Result of the Second Port Scan 4. The second glove is opened by selecting the correct port and clicking on the Online check box. Figure 29 - Glove B has been Opened 5.4. Calibration You may use auto calibration to calibrate the glove, but it is recommended that you use the pre-defined calibration steps.
5.5. Model Binding To create a model binding, select Create… from the Model binding drop-drown menu as in Figure 30. Figure 30 - The Model Binding Drop-down List After the Create command has been issued the wire frame hand model is created in the viewer and the model’s name is added to the Model binding drop- down list.
Page 29
Figure 33 – Creating an Actor If the actor asset is selected in the Navigator window, the Actor Settings window will appear. Figure 34 – The Actor Settings Window If no Marker Set exists for this actor create one by clicking on the MarkerSet… button.
Page 30
Figure 35 – Creating a Marker Set Once a Marker Set has been selected, select the hand marker to which the glove should be referenced. Drop the root of the glove device (under the Scene branch) into the Glove Reference in the Model column. Click on the Active checkbox to make the actor active (real-time animations are shown).
6. Using the SDK 6.1. Introduction The 5DT Data Glove SDK provides access to the 5DT range of data gloves at an intermediate level. The Windows 98/NT/Me/XP version is provided in the form of a C/C++ header (.h) file, a Microsoft Visual C++ library (.lib) file and a dynamic link library (.dll) file.
Roll angle of tilt sensor Table 3 - Sensor Mappings for the 5DT Data Glove 5 and 5DT Data Glove 5 Ultra Both these driver sensor indices will return the same value when the 5DT Data Glove 5 or Data Glove 5 Ultra is used.
6.6. Sensor Mappings for the 5DT Data Glove 16 and 14 Ultra The sensors on the 5DT Data Glove 16 are positioned as in Figure 38. Figure 38 – Sensor Mappings for the 5DT Data Glove 16 and 5DT Data Glove 14 Ultra Sensor Driver Sensor...
16.1 Not index finger point 16.1 Flat hand Table 4 - Gesture Definition Scheme as Implemented for the 5DT Data Glove SDK When the 5DT Data Glove 5 is used, both these driver sensor indices will return the same value.
Page 35
14) Not index finger point 15) Flat hand point Figure 16 - Gesture Illustrations When the 5DT Data Glove 16 or 5DT Data Glove 14 Ultra is used, the driver sensor indices will return different values. The maximum of the two values will...
be used to test for a flexed (closed) gesture, and the minimum value of the two will be used to test for an unflexed (open) gesture. 6.8. Auto-Calibration The driver can provide sensor outputs in an automatic, linearly calibrated fashion. During every update, the raw value read from the sensor is compared to the current minimum and maximum raw values (raw and raw ) as set by...
7. Troubleshooting and Support The following information is provided to help you diagnose any problems that may be encountered with your 5DT Data Glove Ultra or 5DT Data Glove Ultra Wireless Kit. Please consult this section before contacting your supplier.
Can I use four (or more) serial gloves on one machine at the same time? 5DT just loves people like you! The number of gloves is limited by the number of serial ports on your computer. Multiport cards are available that have up to eight serial ports on them and you only need one serial port per wireless pair.
8.2. One (1) Year Product Warranty 5DT warrants to the original purchaser of the 5DT Data Glove 14 Ultra Wireless Kit that it will be free of defects in materials and workmanship for a period of one year from the original date of purchase. During the warranty period, 5DT will repair or replace (with a reconditioned unit) components that are defective.
Page 40
7. When completing customs or courier documentation, please clearly indicate: "Unit returned for repairs under warranty". 5DT is not responsible for any damage that may occur during shipping. Shipping charges to 5DT are your responsibility. COD shipments will not be...
9. About 5DT 5DT <Fifth Dimension Technologies> is a high technology company specializing in Virtual Reality (VR). 5DT develops, produces and distributes affordable virtual reality hardware, software and systems. 5DT can also develop custom systems for all your VR needs.
Page 42
+1 949 450-9044 Fax: +1 949 450-9045 e-mail: info.us@5dt.com Web: www.5dt.com Rest of World - 5DT (Fifth Dimension Technologies) 25 De Havilland Crescent, P.O. Box 5 Persequor Park, 0020 South Africa Tel: +27 12 349 2690 Fax: +27 12 349 1404 E-mail: info@5dt.com...
Center positive DC power connector SAMPLING RATE: The full hand (all available sensors) may be sampled at least 60 times per second. At 5DT we constantly try to improve our products As a result, these specifications are subject to change without prior notice.
Appendix B – Serial Protocol The data glove is connected to the RS-232 port of the computer. The 5DT Data Glove Ultra Wireless Kit is a transmit-only device, as it does not respond to any commands sent to it. The 5DT Data Glove Ultra has the following serial settings: •...
Page 45
Glove Type The glove type identifier byte. The following values are defined: 0x00 – Data Glove14 Ultra wired right hand glove 0x01 – Data Glove14 Ultra wired left hand glove 0x02 – Data Glove14 Ultra wireless right hand glove (Port A) 0x03 –...
Appendix C – SDK Function Descriptions The following functions are available in the SDK: fdGlove *fdOpen(char *pPort) Initializes the glove device on the specified port. Return value Returns a pointer to the glove device (fdGlove *). NULL is returned if an error occurred.
Page 47
Remarks FD_GLOVE7 and FD_GLOVE7W refer to the original 5+2 (tilt angles) sensor glove (5DT Data Glove 5). The W suffix indicates a wireless model. FD_GLOVE16 and FD_GLOVE16W refer to the Data Glove 16. FD_GLOVE14, FD_GLOVE14W, and FD_GLOVE14_USB refer to the Data Glove 14 Ultra. The USB suffix refers to the Universal Serial Bus interface.
Page 48
Returns the number of sensors. Currently it is fixed at 18, but future driver releases may differ. Parameters Pointer to a glove device. This is the value returned by fdOpen(). Remarks Although the 5-sensor glove can measure only average flexure, the driver will attempt to fill in missing values.
Page 49
The enumerated type EfdSensors defines the finger mapping for each sensor. void fdSetSensorRawAll(fdGlove *pFG, unsigned short *pData) Forces the raw value for all the sensors. Return value None. Parameters Pointer to a glove device. This is the value returned by fdOpen(). pData Pointer to an array of 16-bit integers that will contain the raw sensor values.
Page 50
void fdGetSensorScaledAll(fdGlove *pFG, float *pData) Obtains the most recent scaled (auto-calibrated) sensor values from the currently connected glove. Return value None. Parameters Pointer to a glove device. This is the value returned by fdOpen(). pData Pointer to an array of floating point numbers that will contain the scaled sensor values.
Page 51
Return value Returns the number of available gestures. Currently 16 different gestures are supported. Refer to section 5 for details. Parameters Pointer to a glove device. This is the value returned by fdOpen(). Remarks None. int fdGetGesture(fdGlove *pFG) Obtains the current gesture being performed. Return value Returns the current gesture being performed.
Page 52
Pointer to a glove device. This is the value returned by fdOpen(). nSensor Index of the sensor that is being set. The value must lie in the range given by the enumerated type EfdSensors, or alternatively from zero to the value returned by fdGetNumSensors() minus one.
Page 53
nUpper and nLower 16 bit unsigned integers containing the maximum and minimum raw sensor values. Refer to section 6 for details. Remarks For unmapped sensors it would be sensible to set the upper and lower calibration settings above below value forced with fdSetSensorRaw()and fdSetSensorRawAll().
Page 54
respectively, which is the inverse of the auto-calibration settings. If auto calibration was turned off, it is turned on again. void fdGetSensorMaxAll(fdGlove *pFG, float *pMax) Obtains the maximum scaled value for each sensor. Return value None. Parameters Pointer to a glove device. This is the value returned by fdOpen(). pMax Array of floating point values that will contain the maximum scaled sensor values.
Page 55
Array of floating point values that contains the maximum scaled sensor values. The size of the array must always match the value returned by fdGetNumSensors(). Remarks The glove driver defaults to a maximum scaled value of 1 for each sensor. void fdSetSensorMax(fdGlove *pFG, int nSensor, float fMax) Sets the maximum scaled value for a specific sensor.
Page 56
Return value None. Parameters Pointer to a glove device. This is the value returned by fdOpen(). nSensor Index of the sensor that is being queried. The value must lie in the range given by the enumerated type EfdSensors, or alternatively from zero to the value returned by fdGetNumSensors() minus one.
Page 57
Index of the sensor that is being set. The value must lie in the range given by the enumerated type EfdSensors, or alternatively from zero to the value returned by fdGetNumSensors() minus one. fUpper and fLower Floating point numbers that contain the maximum and minimum threshold values.
Page 58
Pointer to a glove device. This is the value returned by fdOpen(). pFunc Pointer to the callback function. This should be cast to void. param The parameter to be given to the callback function. Remarks This callback function is called every time a new packet is received by the driver.
Page 59
int fdGetFWVersionMajor(fdGlove *pFG) Obtains the major version of the glove’s firmware. Return value Returns the major version of the glove’s firmware as an integer. Parameters Pointer to a glove device. This is the value returned by fdOpen(). Remarks This function has currently only been implemented for the Data Glove 14 Ultra. It will return 0 if the glove type isn’t a Data Glove 14 Ultra variant.
Page 60
Pointer to a glove device. This is the value returned by fdOpen(). bAutoCalibrate Boolean value indicating if auto calibration should be turned on (true) or off (false). Remarks Turn auto calibration off after calibrating to prevent the calibration values from being too extreme, thus causing scaled values of poor quality.
Need help?
Do you have a question about the Data Glove Ultra Series and is the answer not in the manual?
Questions and answers