adns-4700 Avago Technologies, adns-4700 Datasheet - Page 28

no-image

adns-4700

Manufacturer Part Number
adns-4700
Description
Single Chip Usb Optical Mouse Sensor
Manufacturer
Avago Technologies
Datasheet
28
Poll_Endpt1
Returns:
Default:
Addressed:
Confi gured:
Notes:
Special note on wLength:
bb xx yx yy zz
bb = button byte
xx = X motion byte
yx = XY motion byte
yy = Y motion byte
zz = Z motion byte (if Z-Wheel)
Ignore request
Ignore request
Accept (NAK if no data; Send packet if available)
See also Get_HID_Input. Endpt will only stall if halt bit is set by Set_Feature_Endpt1. Details of data
packet are below.
Endpt1 should be polled at least every 10 frames (mS). It is typically polled every 8 frames on Windows
machines. For internal testing, Endpt1 can be continuously polled if desired.
The chip will not generate any report packets unless in the Confi gured state.
If Endpt1 is currently empty, any motion or button change will be loaded into the Endpt1 buff ers. Once
the Endpt1 buff ers are full, any further motion events will get accumulated. When the Endpt1 buff ers
are later polled and emptied, the current accumulated X/Y/Z values will be loaded into the Endpt1
buff ers. After transferring their data, the accumulation registers are reset so they are ready to start ac-
cumulating new motion events.
Button information is handled a bit diff erently. If the Endpt1 buff ers are empty, and a button change
event occurs, the new button state is put into the Endpt1 buff ers. At the same time, the button state
that is put in Endpt1 is copied for later use. While Endpt1 is full, changes in button state are essentially
ignored. When Endpt1 is emptied, if the current button state is diff erent than that which was last
loaded into Endpt1, then the new state will be loaded and a new copy saved. Basically, the button
state that is loaded into Endpt1 is always the current button state at that point in time. It should also
be noted that there is hardware on the chip to help de-bounce the buttons.
The wLength paramater in commands specifi es the maximum number of bytes a device should send
back. The commands listed below are not able to handle a wLength of 0 correctly.
Get_Status_Device
Get_Status_Interface
Get_Status_Endpt0
Get_Status_Endpt1
Get_Confi guration
Get_Interface
This chip will send one byte of data rather than none when wLength = 0 is requested for the above
commands.

Related parts for adns-4700