Logitech 3D MOUSE & HEAD TRACKER Technical Reference Manual page 46

Table of Contents

Advertisement

Chapter 5
34
OUT Bit Set-First Report.
report is as follows (if the receiver is not in range, and has never been
in range since you powered on or initialized the control unit, when the
report is requested):
1x1xxxxx*
00000000
*The letter "x" means "don't care," could be 0 or 1.
This "all-zero" data report is repeated until you move the receiver in
range, because the control unit always returns the last valid position and
orientation in 3D mode. In this case, there has been no previously valid
information.
OUT Bit Example
If your application converts absolute information into relative
information, prompt the user to move the receiver into range before
completing the control unit's initialization. This approach avoids a large
relative change in position/orientation from the all-zero data report to
the first valid data report. The following is a C pseudo-code example:
// go get the data report
get_report (report);
// first report valid?
if (report [0] & logitech_OUTBIT) {
// first report invalid, request user to move the
receiver printf ("Please move the Logitech receiver in
range.\n");
// stick around until I get a valid data report
do {
// go get another report
get_report (report);
} while (report [0] & logitech_OUTBIT);
//cheers to the user
printf ("Logitech receiver detected.\n");
}
// squirrel away the report for later processing
save_report (report);
The OUT bit in the first byte of the data
byte 1
byte 2 through byte 16

Advertisement

Table of Contents
loading

Table of Contents