1
ADNK-6013-SP01
Optical Mouse Designer’s Kit
Design Guide
Introduction
The Universal Serial Bus (USB) is an industry standard
serial interface between a computer and peripherals
such as a mouse, joystick, keyboard, UPS, etc. This design
guide describes how a cost-eff ective USB optical mouse
can be built using the Sunplus, SPCP825A USB microcon-
troller and the Avago Technologies ADNS-6010 optical
sensor. The document starts with the basic operations of
a computer mouse peripheral followed by an introduc-
tion to the Sunplus, SPCP825A USB microcontroller and
the Avago Technologies ADNS-6010 Optical Navigation
Sensor. A schematic of the Sunplus, SPCP825A USB micro-
controller to the ADNS-6010 optical sensor and buttons
of a standard mouse can be found in Appendix A. The
software section of this application note describes the ar-
chitecture of the fi rmware required to implement the USB
mouse functions. The Sunplus, SPCP825A data sheet is
available from the Sunplus web site at www.sunplus.com
. The ADNS-6010 data sheet is available from the Avago
Technologies web site at www.avagotech.com. USB docu-
mentation can be found at the USB Implementers Forum
web site at www.usb.org.
ADNS-6010 laser mouse set is the world’s fi rst laser-illumi-
nated navigation system. With laser navigation technol-
ogy, the mouse can operate on many surfaces that prove
diffi
cult for traditional LED-based optical navigation.
Its high-performance architecture is capable of sensing
high speed mouse motion velocities up to 45 inches per
second and accelerations up to 20g.
The ADNS-6010 sensor along with the ADNS-6120 lens,
ADNS-6230-001 clip and ADNV-6340 laser diode form
a complete and compact laser mouse tracking system.
There are no moving parts, which means high reliabil-
ity and less maintenance for the end user. In addition,
precision optical alignment is not required, facilitating
high volume assembly. The ADNS-6010 enables 400cpi,
800cpi, 1600cpi or 2000cpi performance.
Optical Mouse Basics
The optical mouse measures changes in position by
optically acquiring sequential surface images (frames),
and mathematically determining the direction and
magnitude of movement. The Z-wheel movement is done
in the traditional method by decoding the quadrature
signal generated by optical sensors. This design guide
shows how to connect to and manage a standard con-
fi guration of mouse hardware, as well as handle the USB
protocols. Each of these protocols provides a standard
way of reporting mouse movement and button presses to
the PC.
Introduction to the Sunplus, SPCP825A
The Sunplus, SPCP825A is a general purpose OTP USB mi-
crocontroller. It has dual USB speed, namely low and full
speed. It can support PS/2 mode. The transceiver is fully
controlled by the fi rmware. Moreover the USB SIE provides
good fl exibility for fi rmware to handle USB protocol. The
built in PLL allows CPU to work at 6MHz or 12MHz by
using only one 6MHz crystal or resonator.
Serial Peripheral Interface (SPI)
The Sunplus SPCP825A provides a SPI compatible
interface. The SPI circuit supports byte serial transfer in
either Master or Slave mode. The integrated SPI circuit
allows the Sunplus SPCP825A to communicate with
external SPI compatible hardware, in this case the ADNS-
6010.
Hardware Implementation
The standard hardware to implement a mouse is shown
in Figure 1. For X and Y movement, the optical sensor
is used. The Z- wheel movement is detected by a set of
optical sensors that output quadrature signals. For each
button there is a switch that is pulled up internally by the
built in pull up resistors. The D - line is pulled up via a 1.3k
ohm resistor connected to the VREG pin.