0% found this document useful (0 votes)
11 views39 pages

Adns 2700

Download as pdf or txt
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 39

ADNS-2700

Single Chip USB Optical Mouse Sensor

Data Sheet

Description Features
The ADNS-2700 is a compact, one chip USB optical mouse  One chip USB mouse sensor
sensor designed for implementation of a non-mechanical  USB 2.0 Low Speed Compliance
tracking engine in computer mice.
 12 bits USB motion data reporting
It is based on optical navigation technology that measures
 Meets HID Revision 1.11
changes in position by optically acquiring sequential
surface images (frames) and mathematically determining  Single 5.0 volts power supply
the direction and magnitude of movement.  High speed motion detection at 30 inches per second
The sensor is in an 8-pin optical package that is designed (ips) and acceleration up to 8 g
to be used with the ADNS-5100-001 trim lens, LED clip  Input buttons: 3 buttons
and the HLMP-EG3E-xxxxx LED. Together, these parts  Z-Wheel interface for vertical scroll
provide a complete and compact mouse sensor. There
are no moving parts and precision optical alignment is  Integrated oscillator
not required, thus facilitating high volume assembly.  Integrated USB D- pull-up resistor
The output format is USB. This device meets HID Revision  Product string is set to “USB Optical Mouse”
1.11 specification and is compatible with USB Revision 2.0  On-chip OTP memory for device configuration
specification. flexibility without any external software driver:
Frame rate is varied internally to the sensor to achieve – Programmable resolution from 500 to 1250 counts
tracking and speed performance, eliminating the need for per inch (cpi) with 250 cpi step.
the use of many registers. – Programmable sensor orientation
Default resolution is specified as 1000 counts per inch, – Programmable VID and PID.
with rates of motion up to 30 inches per second.
A complete mouse can be built with the addition of a PC
Applications
board, switches and Z-wheel, plastic case and cable.  Corded optical mice
 Trackballs
 Integrated input devices
NOTE: ADNS-2700 will be referred to as "sensor", ADNS-5100-
001 as " trim lens" and HLMP-EG3E as "LED" hereafter.

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

Theory of Operation Package Pinout


The sensor is based on Optical Navigation Technology. Date Code
It contains an Image Acquisition System (IAS), a Digital
Signal Processor (DSP) and USB stream output. 4
5
The IAS acquires microscopic surface images via the lens 3
and illumination system provided by the trim lens. The 6
clip and LED. These images are processed by the DSP to 2
determine the direction and distance of motion. The DSP 7
generates the x and y relative displacement values 1
which are converted to USB motion data. 8

Table 1. Pin Name Description Product Number Lot Code


Pin Name Input/Output Description
Item Marking Remarks
XY_LED I XY_LED
Product Number A2700
VDDA5 – 5-Volt Power
Date Code XYYWWZ X = Subcon Code
ZB I Z-Wheel quadrature input
YYWW = Date Code
ZA I Z-Wheel quadrature input Z = Sensor Die Source
SW – 3-in-1 button pin. Do not force E = Wafer Revision
any voltage into this pin Lot Code VVV Numeric
GND – Ground
D- I/O USB D- line Figure 1. Package outline drawing (top view)
D+ I/O USB D+ line

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
2
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

Product
Number Date Code

Features for
Illustration only

Lot Code 12.85


Pin 1 (At shoulder)
0.506

0.203
0.169
0.126
4.30

5.15
9.90

3.21
9.10
0.390 0.358

90
±
3q
0.50 1.00
Lead width Lead offset
0.020 0.039
12.85 ± 0.50
2.00 (At lead tip)
Lead pitch 0.506 ± 0.020
0.079

(2.54)
0.100
(0.04)
∅ 5.60

0.002
Pin 1
0.220
Protective
Kapton Tape
0.179
4.55

Section A-A
A A
∅ 0.80
Notes:
4.45 0.031 1. Dimensions in millimeter / inches.
0.175 Clear Optical Path 2. Dimensional tolerance: ± 0.1mm.
3. Coplanarity of leads: 0.1mm.
4. Lead pitch tolerance: ± 0.15mm.
5. Non-cumulative pitch tolerance: ± 0.15mm.
6. Angular tolerance: ± 3q
7. Maximum flash: 0.2mm.
8. Brackets () indicate reference dimension.
9. Document Number: LED_DIFF_8B_PKG_002

Figure 2. Package Outline Drawing

CAUTION: It is advised that normal static precautions be taken in handling and assembling
of this component to prevent damage and/or degradation which may be induced by ESD.

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
3
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

Overview of Optical Mouse Sensor Assembly


Pixart provides an IGES file drawing describing the base plate molding features for lens and PCB
alignment. The sensor is designed for mounting on a through-hole PCB. There is an aperture stop and features
on the package that align to the lens. The lens provides optics for the imaging of the surface as well as the
illumination of the surface at the optimum angle. Features on the lens align it to the sensor, base plate, and clip with
the LED. The clip holds the LED in relation to the lens. The LED must be inserted into the clip and the LED’s leads formed
prior to loading on the PCB.
10.35
0.407
7.56
0.298
6.29
0.248 Optional hole for
5.02 alignment post if used
0.198
2.25 12.85
0.089 0.506 31.50
1.240
0.25 24.15 25.00
0.010 0.951 0.984

26.67 3.00
1.050 3x 0 Clear Zone
0.118

0.80
2x 0
14.44 0.031 14.94
0.569 Pin #1 0.588
0
0
2.00 1.00
2.00 0.039 13.06
0.079
0.079 Hole Pitch 0.514
Distance

0.80
8x 0
0.031

Optical Center

0
0
1.37
0.054
6.29
0.248
11.22
0.442
12.60
0.496

Figure 3. Recommended PCB Mechanical Cutouts and Spacing

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
4
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

TOP VIEW 33.45


1.317

Pin #1
B B

13.10
0.516

BASE PLATE

CROSS SECTION SIDEVIEW

LENS
LED
10.59 LED CLIP
SENSOR
0.417
PCB
7.45
0.293 TOP PCB to SURFACE ALIGNMENT POST
(OPTIONAL)

BASE PLATE
2.40 BOTTOM of LENS
0.094 FLANGE to SURFACE
NAVIGATION SURFACE

NOTE: Dimensions in mm/Inches


Important Note: Pin 1 of sensor should be located nearest to the LED

Figure 4. 2D Assembly drawing of sensor (Top and Side View)

Sensor Lens

Object Surface
Lens Reference Plane
2.40
Z=
0.094
Figure 5. Distance from lens reference plane to tracking surface (Z)

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
5
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

LED
Clip

Sensor

Customer supplied PCB

Trim Lens

Customer supplied base plate with


recommended alignment features
per IGES drawing

IMPORTANT NOTE: P-bin LED or better is recommended.

Figure 6. Exploded View of Assembly

PCB Assembly Considerations


1. Insert the sensor and all other electrical components 7. Remove the protective Kapton tape from optical
into PCB. aperture of the sensor. Care must be taken to keep
2. Insert the LED into the assembly clip and bend the contaminants from entering the aperture. Recommend
leads 90 degrees. not to place the PCB facing up during the entire mouse
assembly process. Recommend to hold the PCB first
3. Insert the LED clip assembly into PCB. vertically for the Kapton removal process.
4. This sensor package is only qualified for wave-solder 8. Insert PCB assembly over the lens onto the base plate
process. aligning post to retain PCB assembly. The sensor
5. Wave solder the entire assembly in a no-wash solder aperture ring should self-align to the lens.
process utilizing solder fixture. The solder fixture is 9. The optical position reference for the PCB is set by the
needed to protect the sensor during the solder process. base plate and lens. Note that the PCB motion due to
It also sets the correct sensor-to-PCB distance as the button presses must be minimized to maintain optical
lead shoulders do not normally rest on the PCB surface. alignment.
The fixture should be designed to expose the sensor
leads to solder while shielding the optical aperture 10. Install mouse top case. There MUST be a feature in
from direct solder contact. the top case to press down onto the PCB assembly to
ensure all components are interlocked to the correct
6. Place the lens onto the base plate. vertical height.

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
6
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

USB D+
PORT D SW BUTTONS
CONTROL AND
ZA I/O PROCESSOR

Z WHEEL

R
POWER VE
OSCILLATOR ON OG
RESET LU
T L
IMAGE AA
PROCESSOR GT VDDA5
LED XY_LED LED EO 5 VOLT
DRIVE R POWER
GND

Figure 7. Block diagram of optical mouse

Design considerations for improving ESD Performance


The table below shows typical values assuming base plate
construction per the Pixart supplied IGES
file trim lens. Stand-off of the base plate shall not be larger
than 5 mm.

Typical Value Distance (mm)


Creepage 17.9 mm
Clearance 9.2 mm

Note that the lens material is polycarbonate or polysty-


rene HH30, therefore, cyanoacrylate based adhesives
should not be used as they will cause lens material defor-
mation

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
7
VCC

VDD VDD_LED VCC


VDD VDD_LED

1 P6 1 P9
VCC GND
POWER BLOCK Rbin PAD1 PAD1
Refer to Rbin Table

VCC VOLTAGE MEASUREMENT


C3 C5
100 nF 4.7 μF/10 V
C2 D5
10 μF/50 V HLMP-EG3E
U1

H1 2 1
VDDA5 XY_LED
VCC
R 1
W USB- 7 3 1
2 R9 22R D- ZB ZB
G USB+ A2700 PAD1
3
B VSS R8 22R 8 4 1
4 Shield D+ ZA ZA
B VDD PAD1
5 C9 C10 6 5 1
20 pF 20 pF GND SW 2 VDD
HWFL 2mm 5Way 1 PAD1

R7 R10 R11
30 k 15 k 6.8 k

3 SW1 Z1 1 P3
BL VDD
1 3
Left Button COM ZB P1
2 2 1 ZB
B ZA
1
SW2 A P2
3 1 ZA
Table 1 Right Button 1 BR Z-ENCORDER
2
Rbin Value (Ohm) LED Bin
MECH-Z-Encoder
SW3
59.0  78.7 Q 2 1 BM
Middle Button
59.0  93.1 R
Buttons
59.0  110.0 S
59.0  143.0 T
1 Use ONLY 1% tolerance resistor for buttons

1 Try to shield the HWEL with a SHIELD Plane (USB pin 5) similar size of HWFL before connect to GND. Isolate the Shield island with GND plane

Don’t use jumper wire. Use resistor to jump instead. Keep the trace wide.
2 Keep (pin 5) away from noisy traces, GND plane and Power plane.
The 3 button trace for SW pin need to be same width, length.

Figure 8. Application Circuit with sensor

8
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

Regulatory Requirements
 Passes FCC B and worldwide analogous emission limits when assembled into a mouse with shielded cable and
following Pixart recommendations.
 Passes EN61000-4-4/IEC801-4 EFT tests when assembled into a mouse with shielded cable and following Pixart
recommendations.
 UL flammability level UL94 V-0.
 Provides sufficient ESD creepage/clearance distance to withstand discharge up to 8 kV when assembled into a mouse
with trim lens according to usage instructions above.

Absolute Maximum Ratings


Parameter Symbol Minimum Maximum Units Notes
Storage Temperature TS -40 85 C
Operating Temperature TA -15 55 C
Lead Solder Temperature 260 C For 10 seconds, 1.6 mm below seating plane.
Supply Voltage VDDA5 -0.5 5.5 V
ESD 2 kV All pins, human body model JESD22-A114
Input Voltage VIN -0.5 VDDA5 +0.5 V All I/O pins except D+, D-
-1.0 4.6 V D+, D-, AC waveform,
see USB specification (7.1.1)
Input Short Circuit Voltage VSC 0 VDDA5 V D+, D-, see USB specification (7.1.1)

Recommended Operating Condition


Parameter Symbol Minimum Typical Maximum Units Notes
Operating Temperature TA 0 40 C
Power Supply Voltage VDDA5 4.25 5.0 5.25 V For accurate navigation and
proper USB operation
Vddm 4.0 5.0 5.25 V Maintains communication to
USB host and internal register
contents.
Power Supply Rise Time VRT 0.1 6 ms
Supply Noise VN 100 mV Peak to peak within 0-100
MHz bandwidth
Velocity Vel 30 ips
Acceleration Acc 8 g 0.5 g from Rest
Serial Port Clock Frequency fSCLK 1 MHz 50% duty cycle
Distance from Lens Reference Z 2.3 2.4 2.5 mm See Figure 9
Plane to Surface
Light Level onto IC IRRINC 80 25000 MW/m2  = 639 nm
Frame Rate 2400 fps Internally adjusted by sensor
Sensor

Lens

Z
Object Surface
Figure 9. Distance from lens reference plane to object surface

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
9
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

AC Electrical Specifications
Electrical Characteristics over recommended operating conditions. Typical values at 25° C, VDDA5 = 5.0 V.
Parameter Symbol Minimum Typical Maximum Units Notes
Wakeup Delay from Rest Mode T WUPP 1 2 ms
Due to Motion
Power Up Delay TPUP 50 ms
Debounce Delay on TDBB 23 ms “Maximum” specified at 8 ms
Button Inputs polling rate.
Scroll Wheel Sampling Period TSW 150 200 300 s ZA PIN
Transient Supply Current IDDT 60 mA Max. supply current during
a VDDA5 ramp from 0 to 5.0 V
with > 500 s rise time. Does
not include charging currents
for bypass capacitors.

USB Electrical Specifications


Electrical Characteristics over recommended operating conditions.
Parameter Symbol Minimum Maximum Units Notes
Output Signal Crossover Voltage VCRS 1.5 2.0 V CL = 200 to 600 pF (see Figure 10)
Input Signal Crossover Voltage VICRS 1.2 2.1 V CL = 200 to 600 pF (see Figure 10)
Output High VOH 2.8 3.6 V with 15 k to Ground and 7.5 k to VBUS on
D- (see Figure 11)
Output Low VOL 0.0 0.3 V with 15 k to Ground and 7.5 k to VBUS on
D- (see Figure 11)
Single Ended Input VSEI 0.8 V
Input High (Driven) VIH 2.0 V
Input High (Floating) VIHZ 2.7 3.6 V
Input Low VIL 0.8 V 7.5 k to VDDA5
Differential Input Sensitivity VDI 0.2 V |(D+)-(D-)| See Figure 12
Differential Input Common VCM 0.8 2.5 V Includes VDI, See Figure 12
Mode Range
Single Ended Receiver Threshold VSE 0.8 2.0 V
Transceiver Input Capacitance CIN 12 pF D+ to VBUS, D- to VBUS

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
10
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

USB Timing Specifications


Timing Specifications over recommended operating conditions.
Parameter Symbol Minimum Maximum Units Notes
D+/D- Transition rise time TLR 75 ns CL = 200 pF (10% to 90%), see Figure 10
D+/D- Transition rise time TLR 300 ns CL = 600 pF (10% to 90%), see Figure 10
D+/D- Transition fall time TLF 75 ns CL = 200 pF (90% to 10%), see Figure 10
D+/D- Transition fall time TLF 300 ns CL = 600 pF (90% to 10%), see Figure 10
Rise and Fall time matching TLRFM 80 125 % TR/TF; CL = 200 pF; Excluding the first
transition from the Idle State
Wakeup delay from USB T WUPB 17 ms Delay from button push to USB operation
suspend mode due to Only required if remote wakeup enabled
buttons push
Wakeup delay from USB T WUPN 50 ms Delay from button push to navigation
suspend mode due to buttons operation. Only required if remote wakeup
push until accurate navigation enabled
USB reset time Treset 18.7 s
Data Rate tLDRATE 1.4775 1.5225 Mb/s Average bit rate, 1.5 Mb/s +/- 1.5%
Receiver Jitter Tolerance tDJR1 -75 75 ns To next transition, see Figure 13
Receiver Jitter Tolerance tDJR2 -45 45 ns For paired transitions, see Figure 13
Differential to EOP tLDEOP -40 100 ns See Figure 14
Transition Skew
EOP Width at Receiver tLEOPR 670 ns Accepts EOP, see Figure 14
Source EOP Width tLEOPT 1.25 1.50 s
Width of SE0 interval during tLST 210 ns See Figure 11.
Differential Transition
Differential Output Jitter tUDJ1 -95 95 ns To next transition, see Figure 15
Differential Output Jitter tUDJ2 -150 150 For paired transitions, see Figure 15

D+
VOH
90% 90%

VCRS

10% 10%
VOL
D
TLR TLF
Rise Time Fall Time
Figure 10. Data Signal Rise and Fall Times

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
11
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

One Bit Time (1.5 MB/s) Minimal Reflectance


and Ringing

VOH (min)
VIH (min)

VIL (max)
VOL (max)

GND

tLST
Figure 11. Data Signal Voltage Levels

Differential Input Voltage Range

Differential Output
Crossover
Voltage Range

-1.0 0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0 2.2 2.4 2.6 2.8 3.0 3.2 4.6

Input Voltage Range (volts)


Figure 12. Differential Receiver Input Sensitivity vs. Common Mode Input Range

TPERIOD

TDJR TDJR1 TDJR2

Consecutive Transitions
N * TPERIOD + TDJR1

Paired Transitions
N * TPERIOD + TDJR2
Figure 13. Receiver Jitter Tolerance

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
12
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

TPERIOD

Crossover Point
Crossover Point Extended

Differential
Data Lines

Differential Data Source EOP Width: TLEOPT


to SE0 Skew
N * TPERIOD + TLDEOP
Receiver EOP Width: TLEOPR
Figure 14. Differential to EOP Transition Skew and EOP Width

TPERIOD

Differential
Data Lines

Consecutive Transitions
N * TPERIOD + TUDJ1

Paired Transitions
N * TPERIOD + TUDJ2

Figure 15. Differential Output Jitter

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
13
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

DC Electrical Specifications
Electrical Characteristics over recommended operating conditions. Typical values at 25° C, VDDA5 = 5.0 V.
Parameter Symbol Minimum Typical Maximum Units Notes
System Current, Mouse Moving IDD5 35 50 mA Includes XY_LED current
System Current, Mouse Not IDD5N 15 30 mA Includes XY_LED current
Moving
System Current, USB Suspend IDD5S 500 A Includes XY_LED current and
Mode, Remote Wakeup Enabled D- pullup resistor.
Supply Current (Sensor only), IDDS 4.5 8 mA No load on SW, XY-LED, ZA, ZB,
Mouse Moving D+, D-
Supply Current (Sensor only), IDDSN 3.9 7.5 mA No load on SW, XY-LED, ZA, ZB,
Mouse Not Moving D+, D-
Sensor Supply Current, IDDSS 320 A No load on SW, XY-LED, ZA, ZB,
USB Suspend Mode D+,D-
XY_LED Current ILED 30 mA
XY_LED Output Low Voltage VOL 1.1 V
Input Low Voltage VIL 0.5 V Pins: ZA, ZB
VIL max of 0.5 VDC is at VDDA5 min
of 4 V DC, with a typical of 0.8 VDC
at VDDA5 of 5 VDC
Input High Voltage VIH 0.6*VDDA5 V Pins: ZA, ZB

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
14
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

One-Time-Programmable (OTP) Memory OTP Byte Write Operation


The on chip OTP memory allows device configuration flex- OTP write operation flow chart is shown in Figure 16.
ibility to override the default setting of sensors without
1. Set OTP Clock enable bit in OTP_CLOCK register, 0x42:
any external software driver. Once the OTP operation
OTP_CLOCK_EN = 1.
is enabled, all OTP registers must be programmed
accordingly as the default values of un-program OTP 2. Set OTP enable bit in OTP_CONFIG register, 0x51: OTP_
registers are always zero when L1_USE_OTP register EN = 1.
setting is not zero value. Tips: OTP write to the OTP register 3. Write the OTP register address byte to OTP_ADDR
can be skipped if the setting is zero value (0x00) in order register, 0x52.
to save the OTP programming time.
4. Write the OTP data byte to OTP_DATA register, 0x53.
OTP address space is from 0xDF to 0xE8. OTP can be pro- 5. Set write enable bit in OTP_CTRL register, 0x54 to
grammed via USB interface using Set Vendor Test and Get enable write command to OTP: WR = 1.
Vendor Test commands.
6. Read the write enable bit status in OTP_CTRL register,
0x54. If WR = 1, repeat reading the bit status until it is
clear.
7. Read the write status bit in OTP_CTRLSTAT register,
0x58.
a. If WR_OK = 1, OTP write operation is completed.
Repeat Step 2 for more OTP byte write operations.
b. If WR_OK = 0, repeat Step 5.
8. If Step 6b is repeated up to 10 times, OTP write operation
is failed and the chip is confirmed as defective unit.
Start

0x51: REGA_OTP_CONFIG[0]=1 Write OTP enable bit

repeat = 1

0x52: REGA_OTP_ADDR[7:0] Write OTP address byte

0x53: REGA_OTP_DATA[7:0] Write OTP data byte

0x54: REGA_OTP_CTRL[0]=1 Write OTP program bit

0x54: REGA_OTP_CTRL[0] Read OTP program bit


No
bit = 0?
Yes
repeat = repeat + 1
0x58: REGA_OTP_CTRLSTAT[0] read otp status bit
No
No
bit = 1? repeat = 10?

Yes
OTP write pass OTP write fail

Bad Chip
more Yes
bytes?

No
Done

Figure 16. OTP Byte Write Flow Chart

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
15
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

OTP Byte Read Operation 2. After OTP write to OTPLOCK1 register, set OTP enable
bit in OTP_CONFIG register, 0x51: OTP_EN = 1.
OTP read operation flow chart is shown in Figure 17.
3. Set OTP lock bit in OTP_CTRL register, 0x54 to enable
1. Set OTP Clock enable bit in OTP_CLOCK register, 0x42: OTP lock command: LOCK_L1 = 1.
OTP_CLOCK_EN = 1.
4. Read the OTP lock bit status in OTP_CTRL register, 0x54.
2. Set OTP enable bit in OTP_CONFIG register, 0x51: OTP_ If LOCK_L1 = 1, repeat reading the bit status until it is
EN = 1. clear.
3. Write the OTP register address byte to OTP_ADDR 5. Read the lock status and CRC bits in OTP_CTRLSTAT
register, 0x52. register, 0x58.
4. Set read enable bit in OTP_CTRL register, 0x54 to enable a. If both L1_LOCK_OK and L1_CRC_OK = 1, OTP lock
write command to OTP: RD = 1. operation is completed.
5. Read the read enable bit status in OTP_CTRL register, b. If either L1_LOCK_OK or L1_CRC_OK = 0, repeat Step
0x54. If RD = 1, repeat reading the bit status until it is 2 until both bits are set.
clear. Read the OTP data byte from OTP_DATA register,
6. If Step 4b is repeated up to 10 times, OTP lock operation
0x53 to complete the OTP read operation.
is failed and the chip is confirmed as defective unit.
6. Read the OTP data byte from OTP_DATA register, 0x53
7. Read the CRC result stored in register 0xE9, 0xEA, 0xEB,
to complete the OTP read operation.
0xEC, if four register values not 0x00 means CRC has
7. Repeat Step 2 for more OTP read operations been generated correctly and verified as lock operation
Start success. Start

0x51: REGA_OTP_CONFIG[0]=1 Write OTP enable bit


0x51: REGA_OTP_CONFIG[0]=1 Write OTP enable bit

0x52: REGA_OTP_ADDR[7:0] Write OTP addr byte Repeat = 1

0x54: REGA_OTP_CTRL[1]=1 Write OTP read bite 0x54: REGA_OTP_CTRL[3]=1 Write OTP lock bit

0x54: REGA_OTP_CTRL[1] Read OTP program bit Wait for 10ms

No 0x54: REGA_OTP_CTRL[3] Read OTP lock bit


bit = 0?
No
bit = 0?
Yes
0x53: REGA_OTP_DATA[7:0] Read OTP data Yes
0x58: REGA_OTP_CTRLSTAT[4] Read lock status bit
OTP read done Repeat = Repeat + 1

0x58: REGA_OTP_CTRLSTAT[5] Read CRC status bit

Yes No
more
bytes? No
Repeat = 10? lock & crc = 1?
No
Yes Yes
Done
OTP write fail OTP lock
Figure 17. OTP Byte Read Flow Chart
OTP Lock Operation Bad Chip
Yes
more lock?
OTP lock operation MUST be performed once OTP write to
OTPLOCK1 register for the sensor to function. DO not reset
32 bit CRC results stored in register
or power up the chip right after OTP write to OTPLOCK1 0xE9 0xEA 0xEB 0xEC Compare CRC
register, otherwise the chip will be malfunction. The OTP
lock operation flow chart is shown in Figure 18. No
CRC Correct?
1. Set OTP Clock enable bit in OTP_CLOCK register, 0x42: Figure 18. OTP Byte Lock Flow Chart
Yes
OTP_CLOCK_EN = 1
Done

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
16
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

Buttons Debounce Algorithm


The minimum time between button pressed is TDBB. The  Button inputs B1, B2, and B3 are sampled every 6ms.
button connection is described in Figure 19  Two consecutive low values create a button press
event.
SW  Three consecutive high values create a button release
Pin R7 R10 R11
30 k 15 k 6.8 k event.

BL BR BM

Note: Use only 1%


tolerance resistors

Figure 19. Button connections

Configuration after Power up (Data Values)


Signal State from Figure 9-1 of USB spec: State from Figure 9-1 of USB spec:
Function Powered or Default Address or Configured Suspended from Any Other State
SW Output voltage at 1.16 V (Typ) Output voltage at 2.7 V (Typ)
D- USB I/O Hi-Z Input
D+ USB I/O Hi-Z Input
XY_LED Always ON / Pulsing Pulled HIGH (OFF)
ZB Hi-Z Input Output HIGH
ZA Hi-Z Input Output HIGH

Typical Performance Characteristics


Performance Characteristics over recommended operating conditions. Typical values at 25° C, VDD = 5.0 V, 24 MHz
Parameter Symbol Minimum Typical Maximum Units Notes
Path Error PError 0.5 % Average path error as percent of total 2.5” travel on
(Deviation) various standard surfaces

The following graphs are the typical performance of the sensor, assembled as shown in the 2D assembly drawing with
trim lens, clip, and LED.

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
17
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

Resolution vs Z-Height on Standard Surfaces


1200

1000
Resolution (DPI)

800

600

400
White Formica Spruce/White Pine
200 White Paper Black Formica
Manila
0
1.8 1.9 2.0 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 3.0 3.1 3.2
Distance from Lens Reference Plane to Surface, Z (mm)
Figure 20. Typical Resolution vs. Z Height

Mean Shutter vs Z (White paper)


100
Avg-3sigma
Avg
Shutter value (Count)

Avg+3sigma

50

0
1.6 1.8 2.0 2.2 2.4 2.6 2.8 3.0 3.2 3.4
Distance from Lens Reference Plane to Surface, Z (mm)
Figure 21. Mean shutter vs Z height over white paper

Notes:
1. The sensor is designed for optimal performance when used with the specified LED.
2. Z = distance from Lens Reference Plane to Surface.

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
18
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

USB Commands
Mnemonic Command Notes
USB_RESET D+/D- low > 18.7 s Device Resets; Address=0
USB_SUSPEND Idle state > 3 mS Device enters USB low-power mode
USB_RESUME Non-idle state Device exits USB low-power mode
Get_Status_Device 80 00 00 00 00 00 02 00 Normally returns 00 00, Self powered 00 00,
Remote wakeup 02 00
Get_Status_Interface 81 00 00 00 00 00 02 00 Normally returns 00 00
Get_Status_Endpt0 82 00 00 00 xx 00 02 00 OUT: xx=00, IN: xx=80
Normally returns 00 00
Get_Status_Endpt1 82 00 00 00 81 00 02 00 Normally returns 00 00, Halt 00 01
Get_Configuration 80 08 00 00 00 00 01 00 Return: 00=not config., 01=configured
Get_Interface 81 0A 00 00 00 00 01 00 Normally returns 00
Get_Protocol A1 03 00 00 00 00 01 00 Normally returns 01, Boot protocol 00
Get_Desc_Device 80 06 00 01 00 00 nn 00 See USB command details
Get_Desc_Config 80 06 00 02 00 00 nn 00 See USB command details
Get_Desc_String 80 06 xx 03 00 00 nn 00 See USB command details
Get_Desc_HID 81 06 00 21 00 00 09 00 See USB command details
Get_Desc_HID_Report 81 06 00 22 00 00 nn 00 See USB command details
Get_HID_Input A1 01 00 01 00 00 nn 00 Return depends on motion & config
Get_Idle A1 02 00 00 00 00 01 00 Returns rate in multiples of 4 ms
Get_Vendor_Test C0 01 00 00 xx 00 01 00 Read register xx
Set_Address 00 05 xx 00 00 00 00 00 xx = address
Set_Configuration 00 09 xx 00 00 00 00 00 Not configured: xx=00
Configured: xx=01
Set_Interface 01 0B 00 00 00 00 00 00 Only one interface supported
Set_Protocol 21 0B xx 00 00 00 00 00 Boot: xx=00, Report: xx=01
Set_Feature_Device 00 03 01 00 00 00 00 00 Enable remote wakeup
Set_Feature_Endpt0 02 03 00 00 xx 00 00 00 Halt. OUT: xx=00, IN: xx=80
Set_Feature_Endpt1 02 03 00 00 81 00 00 00 Halt
Clear_Feature_Device 00 01 01 00 00 00 00 00 Disable Remote wakeup
Clear_Feature_Endpt0 02 01 00 00 xx 00 00 00 Clear Halt; OUT: xx=00, IN: xx=80
Clear_Feature_Endpt1 02 01 00 00 81 00 00 00 Clear Halt
Set_Idle 21 0A 00 rr 00 00 00 00 rr = report rate in multiples of 4 ms
Set_Vendor_Test 40 01 00 00 xx yy 00 00 Write yy to address xx
Poll_Endpt1 Read buttons, motion, & Z-wheel
Note:
The last two bytes in a command shown as “nn 00” specify the 16-bit data size in the order of “LowByte HighByte.” For example a two-byte data size
would be specified as “02 00.” The sensor will not provide more bytes than the number requested in the command, but it will only supply up to a
maximum of 8 bytes at a time. The sensor will re-send the last packet if the transfer is not acknowledged properly.

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
19
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

USB COMMAND DETAILS


USB_RESET D+/D- low for an extended period
USB Spec: A device may reset after seeing an SE0 for more than 18.7 uS, and definitely after 10 mS.
Notes: After power up and prior to Reset, the device will not respond to any USB commands. After the device
has been given a USB Reset, the device’s address will be reset to zero and the device will be in the
Default state. The chip will default to Report protocol and any pending output will be flushed.
All registers will be reset to a state that matches power-on-reset with the following exceptions: USB
State register will be “Default” instead of “Attached”.
USB_SUSPEND Idle state for an extended period
USB Spec: A device may suspend after seeing an idle for more than 3 mS, and definitely after 10 mS.
Notes: The chip will take a minimum of 5 mS to start Suspend, though will definitely start after 6 mS. The chip
may finish the current frame if necessary before stopping the clock. Thus, an additional frame time may
be used to reach Suspend mode.
USB_RESUME Non-idle state
USB Spec: Remote Resume signalling from a device must be between 1 mS and 15 mS. The host is required to
send Resume signaling for 20 mS plus 10 mS of resume recovery time in which it does not access any
Notes:
devices. This allows devices enough time to wake back up.
The chip can cause a Resume if Remote Wakeup is enabled and a button has been pressed. Remote
resume signalling from the chip will last 11.45 mS to 12.45 mS.
Get_Status_Device 80 00 00 00 00 00 02 00
Returns: xx yy
xx[0] = Self Powered
xx[1] = Remote Wakeup
xx[7:2] = 0
yy = 00 (Reserved)
Default: Accept (undefined in USB Spec)
Addressed: Accept
Configured: Accept
Notes: Use Set_Feature_Device/Clear_Feature_Device to set/clear remote wakeup.
Get_Status_Interface 81 00 00 00 00 00 02 00
Returns: 00 00
Default: Stall (undefined in USB Spec)
Addressed: Stall
Configured: Accept
Notes: Both return bytes are reserved and currently 00.

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
20
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

Get_Status_Endpt0 82 00 00 00 xx 00 02 00
82 00 00 00 00 00 02 00
82 00 00 00 80 00 02 00
xx = 00 = Endpt0 OUT
xx = 80 = Endpt0 IN
Returns: xx yy
xx[0] = Halt
xx[7:1] = 0
yy = 00 (Reserved)
Default: Accept (undefined in USB Spec)
Addressed: Accept
Configured: Accept
Notes: Use Set_Feature_Endpt0/Clear_Feature_Endpt0 to (try to) set/clear Halt bit. According to USB, “It is
neither required or recommended that the Halt feature be implemented for the Default Control Pipe.”
Since a new SETUP command will clear any Endpt0 halt bit, it is impossible to tell if there really is a
halt bit.
Get_Status_Endpt1 82 00 00 00 81 00 02 00
Returns: xx yy
xx[0] = Halt
xx[7:1] = 0
yy = 00 (Reserved)
Default: Stall (undefined in USB Spec)
Addressed: Stall
Configured: Accept
Notes: Use Set_Feature_Endpt1/Clear_Feature_Endpt1 to set/clear Halt bit.
Get_Configuration 80 08 00 00 00 00 01 00
Returns: xx
xx = config value
Default: Accept (undefined in USB Spec) – returns 00
Addressed: Accept – returns 00
Configured: Accept – returns 01
Notes: Use Set_Configuration to change.
Get_Interface 81 0A 00 00 00 00 01 00
Returns: 00
Default: Stall (undefined in USB Spec)
Addressed: Stall
Configured: Accept – returns 00
Notes: Command has no alternate interfaces, so only valid value is 00

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
21
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

Get_Protocol A1 03 00 00 00 00 01 00
Returns: xx
xx = 00 = Boot protocol
xx = 01 = Report protocol
Default: Accept
Addressed: Accept
Configured: Accept
Notes: Defaults to Report protocol after USB Reset. Use Set_Protocol to change.
Get_Desc_Device 80 06 00 01 00 00 nn 00
80 06 00 01 00 00 12 00
Returns: 12 01 00 02 00 00 00 08
vv vv pp pp dd dd mm PP
ss 01
Example: vv vv = vendor id
pp pp = product id (vendor specified)
dd dd = device id (vendor specified) (bcd rev_id byte)
mm = iManufacturer
PP = iProduct
ss = iSerialNumber (00 – no string)
Example for Multi-button: 12 01 00 02 00 00 00 08
6D 04 pp pp 00 54 01 02
00 01
// Device Descriptor
| 12 // bLength (18 decimal)
| 01 // bDescriptorType
| 00 // bcdUSB (Release ##.## = 02.00)
| 02
| 00 // bDeviceClass
| 00 // bDeviceSubClass
| 00 // bDeviceProtocol
| 08 // bMaxPacketSize0
| 2F // idVendor
| 19 // idVendor
| 16 // idProduct // based on #buttons & wheel
| 09 // idProduct
| 00 // bcdDevice (Dev Rel 54.00)
| 54
| 00 // iManufacturer
| 02 // iProduct
| 00 // iSerialNumber
| 01 // bNumConfigurations
Default: Accept
Addressed: Accept
Configured: Accept
Get_Desc_String will return “stall” if Manufacturer string is queried when iManufacturer = 0x00.

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
22
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

Get_Desc_Config 80 06 00 02 00 00 nn 00
80 06 00 02 00 00 22 00
Returns: 09 02 22 00 01 01 00 A0
32 09 04 00 00 01 03 01
02 00 09 21 11 01 00 01
22 rr 00 07 05 81 03 05
00 0A
rr = HID Report descriptor length
47 = 12 bit motion reporting
Default: Accept
Addressed: Accept
Configured: Accept
Notes: This is the concatenation of 4 descriptors:
Configuration
Interface
HID
Endpt
Get_Desc_String 80 06 xx 03 00 00 nnl nnh
xx= 00 Language String
01 Manufacturer String
02 Product String
Command Option: xx= 00 => Language String
01 => Manufacturer String
02 => Product String
Nnl nnh = varies with the string length
Returns: ss 03 “unicode string”
ss = String descriptor length
For xx = 00: 04 03 09 04 // Language ID
For xx = 01: default: stall

Product String (xx=02)


Product String Returns
USB Optical Mouse 24 03 55 00 53 00 42 00 20 00 4f 00 70 00 74 00 69 00
63 00 61 00 6c 00 20 00 4d 00 6f 00 75 00 73 00 65 00
Synopsys cmd: No
Default: Accept
Addressed: Accept
Configured: Accept
Notes:
1. A request for any other string will STALL.
2. Returned string depends on the manufacturer string section via OTP.

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
23
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

Get_Desc_HID 81 06 00 21 00 00 09 00
Returns: 09 21 11 01 00 01 22 rr 00
rr = HID Report descriptor length
40 = 12bit reporting
Get_Desc_HID_Report 81 06 00 22 00 00 nn 00
Returns: This returns a report descriptor that describes how many buttons and x, y, z data.
12 bit reporting: 05 01 09 02 A1 01 09 01
A1 00 05 09 19 01 29 03
15 00 25 01 75 01 95 03
81 02 75 05 95 01 81 01
05 01 09 30 09 31 16 01
F8 26 FF 07 75 0C 95 02
81 06 09 38 15 81 25 7F
75 08 95 01 81 06 C0 C0
// HID Report
| 05 01 // USAGE_PAGE (Generic Desktop)
| 09 02 // USAGE (Mouse)
| A1 01 // COLLECTION (Application)
| 09 01 // USAGE (Pointer)
| A1 00 // COLLECTION (Physical)
| 05 09 // USAGE_PAGE (Button)
| 19 01 // USAGE_MINIMUM (Button 1)
| 29 03 // USAGE_MAXIMUM (Button #3)
| 15 00 // LOGICAL_MINIMUM (0)
| 25 01 // LOGICAL_MAXIMUM (1)
| 75 01 // REPORT_SIZE (1)
| 95 03 // REPORT_COUNT (3)
| 81 02 // INPUT (Data,Var,Abs)
| 75 05 // USAGE PAGE
| 95 01 // REPORT COUNT(1)
| 81 01 // INPUT (CNST,ARR,ABS)
| 05 01 // USAGE PAGE (Generic Desktop)
| 09 30 // USAGE (X)
| 09 31 // USAGE (Y)
| 16 01 F8 // LOGICAL MINIMUM (-127)
| 26 FF 07 // LOGICAL MAXUMUN (128)
| 75 0C // REPORT_SIZE (12)
| 95 02 // REPORT_COUNT (2)
| 81 06 // INPUT (Data,Var,Rel)
| 09 38 // USAGE (Zwheel)
| 15 81 // LOGICAL MINIMUM(-127)
| 25 7F // LOGICAL MAXIMUM(127)
| 75 08 // REPORT_SIZE(8)
| 95 01 // REPORT_COUNT(1)
| 81 06 // INPUT(Data,Var,Rel)
| C0 // END_COLLECTION
| C0 // END_COLLECTION
Default: Accept
Addressed: Accept
Configured: Accept
Notes: The length of this report is needed in the HID descriptor.

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
24
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

Get_HID_Input A1 01 00 01 00 00 nn 00
nn = 06 (12 bit reporting)
Returns: bb xx yx yy zz
bb = button byte
xx = X motion byte
yx = XY motion byte
yy = Y motion byte
zz = Z motion byte
Default:
Stall
Addressed:
Stall
Configured:
Accept
Notes:
If the device is configured, it will always respond with a report for this command, even if no motion
or button changes have occurred. In this case, it would report 00 for motion and simply report the
current button state. If a report is pending on endpt1, the data there will be reported and the report
on endpt1 cleared.
The mouse will only create new button/motion packets when it is in the Configured state

USB Data Packet Format


Bit 7 6 5 4 3 2 1 0
Byte 1 0 0 0 0 0 B3(MB) B2(RB) B1(LB)
Byte 2 X7 X6 X5 X4 X3 X2 X1 X0
Byte 3 Y3 Y2 Y1 Y0 X11 X10 X9 X8
Byte 4 Y11 Y10 Y9 Y8 Y7 X6 X5 X4
Byte 5 Z7 Z6 Z5 Z4 Z3 Z2 Z1 Z0
Byte 6 0 0 0 0 0 0 0 0

Get_Idle A1 02 00 00 00 00 01 00
Returns: rr
rr = rate in multiples of 4 mS
Default: Accept
Addressed: Accept
Configured: Accept
Notes: The third byte of the command is to select the Report ID. There is only one for the mouse – so, using
00 or 01 will work. See also Set_Idle.
Get_Vendor_Test C0 01 00 00 xx 00 01 00
ii = ignore
xx = address of register to read
Returns: rr (depends on register read)
Default: Accept
Addressed: Accept
Configured: Accept
Notes: Address range (xx) is datasheet register range

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
25
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

Set_Address 00 05 xx 00 00 00 00 00
xx = new device address, from 00 to 7F
Default: Accept
Addressed: Accept
Configured: Accept (undefined in USB Spec)
Chip gets new address, but stays in “Configured” mode.
Notes: If device is not configured, the device will be given the new address and put in the addressed state
(or default if new address = 00). If the device is already configured, the device will be given the new
address state and remain configured.
Set_Configuration 00 09 xx 00 00 00 00 00
xx = 00 = not configured
xx = 01 = configured
Default: Accept (undefined in USB Spec)
Addressed: Accept
Configured: Accept
Notes: Invalid config values will cause stall. Chip will stall invalid value in configured mode, and leave device
in old (configured) mode.
Set_Interface 01 0B 00 00 00 00 00 00
Default: Stall (undefined in USB Spec)
Addressed: Stall
Configured: Accept
Notes: Mouse has only one valid interface (00) and alternate setting (00). Invalid values will cause stall. Chip
retains previous (valid) interface state after executing this command in configured mode even if invalid
values are given and command was stalled.
Set_Protocol 21 0B xx 00 00 00 00 00
xx = 00 = Boot protocol
xx = 01 = Report protocol
Default: Accept (Not in USB Spec)
Addressed: Accept (Not in USB Spec)
Configured: Accept
Notes: 3 byte data packets will be reported in boot mode. These bytes are button, XX data, and YY data.
Set_Feature_Device 00 03 01 00 00 00 00 00
Default: Accept (undefined in USB Spec)
Addressed: Accept
Configured: Accept
Notes: This sets the remote wakeup bit.
Set_Feature_Endpt0 02 03 00 00 xx 00 00 00
02 03 00 00 00 00 00 00
02 03 00 00 80 00 00 00
xx = 00 = Endpt0 OUT
xx = 80 = Endpt0 IN
Default: Stall (undefined in USB Spec)
Addressed: Stall
Configured: Stall
Notes: This (tries to) sets the halt bit. The chip always stalls the status stage for this command. The chip never
reports the halt bit set for Endpt0 with the Get_Status_Endpt0 command, as any new SETUP command
will clear Endpt0 stall.

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
26
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

Set_Feature_Endpt1 02 03 00 00 81 00 00 00
Default: Stall (undefined in USB Spec)
Addressed: Stall
Configured: Accept
Notes: Sets the halt bit for Endpt1.
Clear_Feature_Device 00 01 01 00 00 00 00 00
Default: Accept (undefined in USB Spec)
Addressed: Accept
Configured: Accept
Notes: This clears the remote wakeup bit.
Clear_Feature_Endpt0 02 01 00 00 xx 00 00 00
02 01 00 00 00 00 00 00
02 01 00 00 80 00 00 00
xx = 00 = Endpt0 OUT
xx = 80 = Endpt0 IN
Default: Accept (undefined in USB Spec)
Addressed: Accept
Configured: Accept
Notes: The chip does NOT stall like it does for Set_Feature_Endpt0.
Clear_Feature_Endpt1 02 01 00 00 81 00 00 00
Default: Stall (undefined in USB Spec)
Addressed: Stall
Configured: Accept
Notes: See Set_Feature_Endpt1.
Set_Idle 21 0A 00 rr 00 00 00 00
rr = rate in multiples of 4 mS
Default: Accept
Addressed: Accept
Configured: Accept
Notes: The third byte of the command is to select the Report ID. There is only one for the mouse – so, using
either 00 or 01 will work.
The fourth byte of the command sets the rate in multiples of 4 mS. The initial value for mice will be x00
which means “infinite” – that is packets only come out when there is a change in data.
Data will only be allowed to come out when the device is configured. However, the chip will accept the
command in Default or Addressed mode and use that value when the device is later configured.
Set_Vendor_Test 40 01 00 00 xx yy 00 00
xx = address
yy = data
Default: Accept
Addressed: Accept
Configured: Accept
Notes: Address range for “xx” should be 0x00 to 0x3F. Addresses above this are reserved for possible future
use. See also Get_Vendor_Test.

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
27
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

Poll_Endpt1
Returns: 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)
Default:
Ignore request
Addressed:
Ignore request
Configured:
Accept (NAK if no data; Send packet if available)
Notes:
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 Configured state.
If Endpt1 is currently empty, any motion or button change will be loaded into the Endpt1 buffers. Once
the Endpt1 buffers are full, any further motion events will get accumulated. When the Endpt1 buffers
are later polled and emptied, the current accumulated X/Y/Z values will be loaded into the Endpt1
buffers. 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 differently. If the Endpt1 buffers are empty, and a button change
event occurs, the new button state is put into the Endpt1 buffers. 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 different 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.
Special note on wLength: The wLength paramater in commands specifies 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_Configuration
Get_Interface
This chip will send one byte of data rather than none when wLength = 0 is requested for the above
commands.

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
28
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor
Registers
The sensor can be programmed through registers, via the USB port, and configuration and motion data can be read from
these registers. The registers will be “disabled” by VDDA5 going low or sending a USB reset command.

Address Register Name Register Type Access Reset Value


0x00 PROD_ID Device Read only 0x2b
0x01 REV_ID Device Read only 0x01
0x02 MOUSE_STAT Device Read only Undefined
0x03 DELTA_X_L Device Read only 0x00
0x04 DELTA_Y_L Device Read only 0x00
0x05 DELTA_XY_H Device Read only 0x00
0x06 DZ Device Read only 0x00
0x07 SQUAL Device Read only 0x00
0x08 SHUT_HI Device Read only 0x00
0x09 SHUT_LO Device Read only 0x32
0x0A PIX_MAX Device Read only 0x00
0x0B PIX_ACCUM Device Read only 0x00
0x0C PIX_MIN Device Read only 0x00
0x0D PIX_GRAB Device Read only 0x00
0x40 INV_REV_ID Device Read only 0xFE
0x42 OTP_CLOCK Device Read/Write 0x00
0x51 OTP_CONFIG Device Read/Write 0x00
0x52 OTP_ADDR Device Read/Write 0x00
0x53 OTP_DATA Device Read/Write 0x00
0x54 OTP_CTRL Device Read/Write 0x00
0x56 OTP_RUNSTAT Device Read only Undefined
0x58 OTP_CTRLSTAT Device Read only Undefined
0xDF L1_USE_OTP OTP Read/Write 0x00
0xE0 DPI OTP Read/Write 0x04
0xE2 : 0xE3 PID1 : PID0 OTP Read/Write 0x0916
0xE4 : 0xE5 VID1 : VID0 OTP Read/Write 0x192F
0xE8 OTPLOCK1 OTP Read/Write 0x00

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
29
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

PROD_ID Address: 0x00 Type: Device


Access: Read only Reset Value: 0x2b
Bit 7 6 5 4 3 2 1 0
Field PID7 PID6 PID5 PID4 PID3 PID2 PID1 PID0

Data Type: 8-bit number with the product identifier.


USAGE: The value in this register does not change; it can be used to verify that the sensor communications link is OK.

REV_ID Address: 0x01 Type: Device


Access: Read only Reset Value: 0x01
Bit 7 6 5 4 3 2 1 0
Field RID7 RID6 RID5 RID4 RID3 RID2 RID1 RID0

Data Type: 8-bit number with current revision of the IC.


USAGE: This register contains the IC revision. It is subject to change when new IC versions are released.

BUT_STAT Address: 0x02 Type: Device


Access: Read only Reset Value: Undefined
Bit 7 6 5 4 3 2 1 0
Field Reserved Reserved Reserved Reserved Reserved BUT3 BUT2 BUT1

Data Type: Bit field.


USAGE: This register is included for test purposes only. For navigation use, use the USB HID defined commands. The
button status bits reported are for the debounce signals.
Field Name Description
BUT3 Reports the status of B3
0 = Open
1 = Button Pressed
BUT2 Reports the status of B2
0 = Open
1 = Button Pressed
BUT1 Reports the status of B1
0 = Open
1 = Button Pressed

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
30
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

DELTA_X_L Address: 0x03


Access: Read Reset Value: 0x00
Bit 7 6 5 4 3 2 1 0
Field X7 X6 X5 X4 X3 X2 X1 X0

Data Type: Bit field.


USAGE: The value in this register reflects the last USB delta X (lower 8 bits) data output or data queued for output.
This register is included for test purposes only. For navigation use, use the HID defined commands. Data is 2’s
complement. Absolute value is determined by the currently set resolution.
Register 0x03 must be read before register 0x04 (Delta_Y_L) and 0x05 (Delta_XY_H)

DELTA_Y_L Address: 0x04


Access: Read Reset Value: 0x00
Bit 7 6 5 4 3 2 1 0
Field Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0

Data Type: Bit field.


USAGE: The value in this register reflects the last USB delta Y (lower 8 bits) data output or data queued for output.
This register is included for test purposes only. Register 0x03 should be read before register 0x04 (Delta_Y_L) and
0x05 (Delta_XY_H), else Delta_Y_L will return 0. For navigation use, use the HID defined commands. Data is 2’s
complement. Absolute value is determined by the currently set resolution.

DELTA_XY_H Address: 0x05


Access: Read Reset Value: 0x00
Bit 7 6 5 4 3 2 1 0
Field X11 X10 X9 X8 Y11 Y10 Y9 Y8

Data Type: Bit field.


USAGE: The value in this register reflects the last USB delta X and Y (upper 4 bits) data output or data queued for output.
This register is included for test purposes only. Register 0x03 should be read before register 0x04 (Delta_Y_L) and
0x05 (Delta_XY_H), else Delta_XY_H will return 0. For navigation use, use the HID defined commands. Data is 2’s
complement. Absolute value is determined by the currently set resolution.

DZ Address: 0x06
Access: Read Reset Value: 0x00
Bit 7 6 5 4 3 2 1 0
Field Z7 Z6 Z5 Z4 Z3 Z2 Z1 Z0

Data Type: Bit field.


USAGE: This register contains the Z-wheel count. Range is from -127 to 127 decimal.

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
31
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

SQUAL Address: 0x07


Access: Read Reset Value: 0x00
Bit 7 6 5 4 3 2 1 0
Field SQ7 SQ6 SQ5 SQ4 SQ3 SQ2 SQ1 SQ0

Data Type: Eight bit number.


USAGE: SQUAL is a measure of the number of features visible by the sensor in the current frame. The maximum value is
128. Since small changes in the current frame can result in changes in SQUAL, slight variations in SQUAL on one
surface is expected.

SHUT_HI Address: 0x08 Type: Device


Access: Read only Reset Value: 0x00
Bit 7 6 5 4 3 2 1 0
Field S15 S14 S13 S12 S11 S10 S9 S8

SHUT_LO Address: 0x09 Type: Device


Access: Read only Reset Value: 0x64
Bit 7 6 5 4 3 2 1 0
Field S7 S6 S5 S4 S3 S2 S1 S0

Data Type: 16-bit number.


USAGE: The combination of SHUT_HI and SHUT_LO is a 16-bit number. This is the number of clocks the shutter was
open for the last image taken. The unit is in main clock count (nominally 12MHz). To avoid split read issues, read
SHUT_Hi first.

PIX_MAX Address: 0x0A Type: Device


Access: Read only Reset Value: 0x00
Bit 7 6 5 4 3 2 1 0
Field 0 MX6 MX5 MX4 MX3 MX2 MX1 MX0

Data Type: Eight bit number.


USAGE: This is the maximum pixel value from the last image taken.

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
32
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

PIX_ACCUM Address: 0x0B Type: Device


Access: Read only Reset Value: 0x00
Bit 7 6 5 4 3 2 1 0
Field AC7 AC6 AC5 AC4 AC3 AC2 AC1 AC0

Data Type: High 8bits of 17-bit unsigned integer.


USAGE: This is the accumulated pixel value from the last image taken. For the 19x19 pixels, only the 8 most prominent
bits are reported ([15:8]). To get the true average pixel value, divide this register value by 1.41.

PIX_MIN Address: 0x0C Type: Device


Access: Read only Reset Value: 0x00
Bit 7 6 5 4 3 2 1 0
Field 0 MN6 MN5 MN4 MN3 MN2 MN1 MN0

Data Type: 8-bit number.


USAGE: This is the minimum pixel value from the last image taken.

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
33
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

PIX_GRAB Address: 0x0D Type: Device


Access: Read/Write Reset Value: 0x00
Bit 7 6 5 4 3 2 1 0
Field VALID PG6 PG5 PG4 PG3 PG2 PG1 PG0

Data Type: 8-bit number.


USAGE: The pixel grabber captures 1 pixel per frame. If there is a valid pixel in the grabber when this is read, the MSB will
be set, an internal counter will incremented to captured the next pixel and the grabber will be armed to capture
the next pixel. It will take 361 reads to upload the completed image.
Any write to this register will reset and arm the grabber to grab pixel 0 on the next image. See pixel array
numbering in Figure 20.

342 323 304 285 266 247 228 209 190 171 152 133 114 95 76 57 38 19 0 Top Xray View of Mouse
343 324 305 286 267 248 229 210 191 172 153 134 115 96 77 58 39 20 1
344 325 306 287 268 249 230 211 192 173 154 135 116 97 78 59 40 21 2
345 326 307 288 269 250 231 212 193 174 155 136 117 98 79 60 41 22 3
P LB RB
346 327 308 289 270 251 232 213 194 175 156 137 118 99 80 61 42 23 4 O
347 328 309 290 271 252 233 214 195 176 157 138 119 100 81 62 43 24 5 S
348 329 310 291 272 253 234 215 196 177 158 139 120 101 82 63 44 25 6 I
T
349 330 311 292 273 254 235 216 197 178 159 140 121 102 83 64 45 26 7 I 4
350 331 312 293 274 255 236 217 198 179 160 141 122 103 84 65 46 27 8 V 5
3
351 332 313 294 275 256 237 218 199 180 161 142 123 104 85 66 47 28 9 E 6
2
7
352 333 314 295 276 257 238 219 200 181 162 143 124 105 86 67 48 29 10 Y 1
8
353 334 315 296 277 258 239 220 201 182 163 144 125 106 87 68 49 30 11
354 335 316 297 278 259 240 221 202 183 164 145 126 107 88 69 50 31 12
355 336 317 298 279 260 241 222 203 184 165 146 127 108 89 70 51 32 13
356 337 318 299 280 261 242 223 204 185 166 147 128 109 90 71 52 33 14
357 338 319 300 281 262 243 224 205 186 167 148 129 110 91 72 53 34 15
358 339 320 301 282 263 244 225 206 187 168 149 130 111 92 73 54 35 16 POSITIVE X
359 340 321 302 283 264 245 226 207 188 169 150 131 112 93 74 55 36 17
360 341 322 303 284 265 246 227 208 189 170 151 132 113 94 75 56 37 18

Figure 20. Pixel Map. Sensor looking at the navigation surface through the lens from top of mouse.

INV_REV_ID Address: 0x40


Access: Read Reset Value: 0xfe
Bit 7 6 5 4 3 2 1 0
Field RRID7 RRID6 RRID5 RRID4 RRID3 RRID2 RRID1 RRID0

Data Type: Eight bit number.


USAGE: Contains the inverse of the revision ID which is located in register 0x01.

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
34
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

OTP_CONFIG Address: 0x51 Type: Device


Access: Read/Write Reset Value: 0x00
Bit 7 6 5 4 3 2 1 0
Field Reserved Reserved Reserved Reserved Reserved Reserved Reserved OTP_EN

Data Type: Bit field.


USAGE: OTP commands enable/disable. Refer to OTP programming section.
Field Name Description
OTP_EN OTP commands
1 = Enabled
0 = Disabled

OTP_ADDR Address: 0x52 Type: Device


Access: Read/Write Reset Value: 0x00
Bit 7 6 5 4 3 2 1 0
Field OTP_ OTP_ OTP_ OTP_ OTP_ OTP_ OTP_ OTP_
ADDR7 ADDR6 ADDR5 ADDR4 ADDR3 ADDR2 ADDR1 ADDR0

Data Type: 8-bit number.


USAGE: This register is the container of OTP address in OTP read/write command. Refer to OTP programming section.

OTP_DATA Address: 0x53 Type: Device


Access: Read/Write Reset Value: 0x00
Bit 7 6 5 4 3 2 1 0
Field OTP_ OTP_ OTP_ OTP_ OTP_ OTP_ OTP_ OTP_
DATA7 DATA6 DATA5 DATA4 DATA3 DATA2 DATA1 DATA0

Data Type: 8-bit number.


USAGE: This register is the container of OTP data value in OTP read/write command. Refer to OTP programming
section.

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
35
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

OTP_CRTL Address: 0x54 Type: Device


Access: Read/Write Reset Value: 0x00
Bit 7 6 5 4 3 2 1 0
Field Reserved Reserved Reserved Reserved LOCK_L1 Reserved RD WR

Data Type: Bit field.


USAGE: This register controls the read, write and lock commands of OTP. The commands are auto clear for status check.
Refer to OTP programming section.
Field Name Description
WR Enable write command to OTP
1 = Write to OTP
0 = Write command is completed
RD Enable read command to OTP
1 = Read from OTP
0 = Data is ready to be read from OTP_DATA register
LOCK_L1 Enable OTP lock command
1 = Lock OTP space
0 = Lock command is completed

OTP_RUNSTAT Address: 0x56 Type: Device


Access: Read only Reset Value: Undefined
Bit 7 6 5 4 3 2 1 0
Field Reserved Reserved Reserved Reserved Reserved L1_ L1_ L1_USED
CHECKED LOCKED

Data Type: Bit field.


USAGE: This register shows the OTP run status. Refer to OTP programming section.
Field Name Description
L1_USED OTP space status
1 = Used
0 = Unused
L1_LOCKED OTP space locking status
1 = Locked
0 = Open
L1_CHECKED OTP status check
1 = Checked
0 = Unchecked

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
36
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

OTP_CTRLSTAT Address: 0x58 Type: Device


Access: Read only Reset Value: Undefined
Bit 7 6 5 4 3 2 1 0
Field Reserved Reserved L1_CRC_ L1_LOCK_ DEVICE_ DEVICE_ WR_ WR_OK
OK OK DONE RDY DENIED

Data Type: Bit field.


USAGE: This register shows the OTP control status. Refer to OTP programming section.
Field Name Description
WR_OK OTP write status
1 = OK
0 = Failed
WR_DENIED OTP write access status
1 = Denied
0 = OK
L1_LOCK_OK OTP lock status
1 = OK
0 = Failed
L1_CRC_OK CRC test status
1 = OK
0 = Failed

L1_USE_OTP Address: 0xDF Type: OTP


Access: Read/Write Reset Value: 0x00
Bit 7 6 5 4 3 2 1 0
Field L1_USE_ L1_USE_ L1_USE_ L1_USE_ L1_USE_ L1_USE_ L1_USE_ L1_USE_
OTP7 OTP6 OTP5 OTP4 OTP3 OTP2 OTP1 OTP0

Data Type: 8-bit field.


USAGE: Bypass OTP configuration if all bits are zero. MUST write non-zero value to this register to enable OTP operation.
Once enabled, all OTP registers must be written as the default values are zero value.

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
37
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

DPI Address: 0xE0 Type: OTP


Access: Read/Write Reset Value: 0x54
Bit 7 6 5 4 3 2 1 0
Field Reserved SwapXY INV_X INV_Y Reserved DPI2 DPI1 DPI0

Data Type: Bit field.


USAGE: These registers are used to customize the device’s DPI.
Field Name Description
SwapXY To swap x and y
0 = no swap
1 = swap
INV_X To invert x direction
0 = not inverted
1 = inverted
INV_Y To invert y direction
0 = not inverted
1 = inverted
DPI Device status
010 = 500 dpi
011 = 750 dpi
100 = 1000 dpi (default)
101 = 1250 dpi

Note: Sensor orientation setting by changing bit 6,5 and 4. The SwapXY operation is always performed before
INV_X and INV_Y inversion operations.
Rotation 0° 90° 180° 270°
Bit[6:4] 101 000 110 011
Motion
Reporting
A2700 XYYWWZE

A2700 XYYWWZE

Direction +Y A2700 XYYWWZE


+Y +Y +Y

+X +X
+X +X
A2700 XYYWWZE

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw
38
PixArt Imaging Inc.
ADNS-2700 Single Chip USB Optical Mouse Sensor

PID0 Address: 0xE2 Type: OTP


Access: Read/Write Reset Value: 0x16
Bit 7 6 5 4 3 2 1 0
Field PID7 PID6 PID5 PID4 PID3 PID2 PID1 PID0

PID1 Address: 0xE3 Type: OTP


Access: Read/Write Reset Value: 0x09
Bit 7 6 5 4 3 2 1 0
Field PID15 PID14 PID13 PID12 PID11 PID10 PID9 PID8

Data Type: 16-Bit number.


USAGE: These registers are used to customize device USB PID. Default Pixart's PID = 0x0916.

VID0 Address: 0xE4 Type: OTP


Access: Read/Write Reset Value: 0x2F
Bit 7 6 5 4 3 2 1 0
Field VID7 VID6 VID5 VID4 VID3 VID2 VID1 VID0

VID1 Address: 0xE5 Type: OTP


Access: Read/Write Reset Value: 0x19
Bit 7 6 5 4 3 2 1 0
Field VID15 VID14 VID13 VID12 VID11 VID10 VID9 VID8

Data Type: 16-Bit number.


USAGE: These registers are used to customize device VID. Default Pixart's VID = 0x192F.

OTPLOCK1 Address: 0xE8 Type: OTP


Access: Read/Write Reset Value: 0x00
Bit 7 6 5 4 3 2 1 0
Field OTPLOCK17 OTPLOCK16 OTPLOCK15 OTPLOCK14 OTPLOCK13 OTPLOCK12 OTPLOCK11 OTPLOCK10

Data Type: 8-bit field.


USAGE: Must write 0xFF in this register to lock the OTP configuration.

All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission.
PixArt Imaging Inc.
E-mail: fae_service@pixart.com.tw

You might also like