15.11.2012 Views

Synaptics TouchPad Interfacing Guide

Synaptics TouchPad Interfacing Guide

Synaptics TouchPad Interfacing Guide

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Synaptics</strong> <strong>TouchPad</strong> <strong>Interfacing</strong> <strong>Guide</strong> Second Edition<br />

5.3. Power-on reset<br />

The <strong>Synaptics</strong> <strong>TouchPad</strong> is able to respond to ADB bus traffic within 200ms of powerup.<br />

The device’s ADB port is fully functional after this point for as long as power is<br />

applied.<br />

At power-up, the <strong>TouchPad</strong> mode byte is set to $00. The initial ADB address is 3, and<br />

the initial handler ID is $01. Power-up settings are restored whenever a Global Reset<br />

signal or SendReset command occurs on the ADB bus.<br />

5.4. Command set<br />

The <strong>Synaptics</strong> <strong>TouchPad</strong> emulates a standard ADB mouse. It supports the Cursor Device<br />

Manager interface as well as the older 100- and 200-dpi interfaces. It also supports<br />

extensions that allow the host to access the <strong>Synaptics</strong> <strong>TouchPad</strong>’s special features.<br />

All ADB devices have four logical registers up to eight bytes in length. The <strong>Synaptics</strong><br />

<strong>TouchPad</strong> supports the usual ADB commands for accessing these registers:<br />

• The “Talk” command reports the current contents of any of the four ADB registers.<br />

• The “Listen” command stores a new value into one of the four registers.<br />

• The “Flush” command clears any pending motion packet, but has no other effect on<br />

the state of the device.<br />

• The “SendReset” command and the “Global Reset” signal reset the device to its<br />

power-up state.<br />

The <strong>Synaptics</strong> <strong>TouchPad</strong> treats invalid command codes the same as “Flush” commands.<br />

In the <strong>Synaptics</strong> <strong>TouchPad</strong>, the four ADB registers are assigned as follows:<br />

ADB Register Length Contents<br />

0 0–5 Current finger motion packet<br />

1 8 CDM identification<br />

2 8 <strong>Synaptics</strong> <strong>TouchPad</strong> mode bytes<br />

3 2 ADB identification<br />

Figure 5-4. ADB Registers<br />

These registers are described in the sections below.<br />

5.4.1. ADB Register 0<br />

This register contains the current finger motion or position data. It has the special<br />

property that it is empty (“Talk 0” does not respond) if there is no motion to report. The<br />

host must poll Register 0 periodically to collect the motion data. The device asserts a<br />

“Service Request” whenever Register 0 becomes full but the host is talking to a different<br />

ADB device. The device continues to assert Service Requests until the host sends a<br />

Copyright © 2001 <strong>Synaptics</strong>, Inc. 510-000080 - A §5.3 Page 66

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!