ADNS-2080 Low Power Optical Mouse Sensor Data Sheet Description The 1JY"SU*NBHJOH ADNS-2080 is a low power, small form factor optical mouse sensor. It has a new low-power architecture and automatic power management modes, making it ideal for battery, power-sensitive applications – such as cordless input devices. The ADNS-2080 is capable of high-speed motion detection – up to 30 ips and 20 g. In addition, it has an on-chip oscillator and requires an external resistor to set the LED current. The ADNS-2080 along with the ADNS-5110-001 lens, PS"%/4MFOT-&%DMJQBOE)4%-*3-&% or HLMP-EG3E-xxxxx Red LED GPSNBDPNQMFUFBOE DPNQBDUmouse tracking system. 5IFSFBSFOPNPWJOH parts and this translates to high reliBCJMJUZBOEMFTT maintenance for the end user. In addition, QSFDJTJPO optical alignment is not required, facilitating IJHI volume assembly. The sensor is programmed via registers through a twowire serial port. It is housed in an 8-pin staggered dual in-line package (DIP). Features • Low Power Architecture • Small Form Factor • Programmable Periods / Response Times and Downshift Times from one mode to another for the Power-saving Modes • High Speed Motion Detection up to 30 ips and 20 g • External Interrupt Output for Motion Detection • Internal Oscillator – no clock input needed • Selectable Resolution of up to 2000 cpi • Operating Voltage: as low as 2.1 V • IO reference voltage of 1.7 V to 3.3 V • 2-wire serial port interface Applications • Optical mice and optical trackballs • Integrated input devices • Battery-powered input devices 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: [email protected] PixArt Imaging Inc. Low Power Optical Mouse Sensor Theory of Operation The ADNS-2080 is based on Optical Navigation Technol ogy, which measures changes in position by optically acquiring sequential surface images (frames) and math ematically determining the direction and magnitude of movement. The ADNS-2080 contains an Image Acquisition System (IAS), a Digital Signal Processor (DSP), and a two wire serial port. The IAS acquires microscopic surface images via the lens and illumination system. These images are processed by the DSP to determine the direction and distance of motion. The DSP calculates the Dx and Dy relative dis placement values. An external microcontroller reads and translates the Dx and Dy information from the sensor serial port into PS2, USB, or RF signals before sending them to the host PC. Pinout of ADNS-2080 Optical Mouse Sensor Pin Name Input/ Output Description 1 SDIO I/O Serial Data Input/Output 2 LED I LED Illumination 3 MOTION O Motion Interrupt Output (Default active low, edge triggered) 4 VDDIO I Input/Output Reference Voltage 5 SCLK I Serial Clock 6 GND I Ground 7 VDD O Regulator output 8 VDDA I Supply Voltage Date Code 4 5 3 6 2 7 1 8 Product Number Lot Code Item Marking Remarks Product Number A2080 Date Code XYYWWZ X = Subcon Code YYWW = Date Code Z = Sensor Die Source Lot Code VVV Numeric Figure 1. Package Outline Drawing (Top View) 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: [email protected] 2 PixArt Imaging Inc. Low Power Optical Mouse Sensor Product Number Date Code Features for Illustration only Pin 1 9.10 0.358 9.90 0.390 A (At shoulder) 3.72 0.146 3.50 0.138 5.15 0.203 12.85 0.506 Lot Code ± 90 3° Lead Pitch 2.00 0.079 ∅ 4.12 0.162 A 1.00 Lead Offset 0.039 12.85 ± 0.50 (At lead tip) 0.506 ± 0.020 ( 2.74 ) 0.108 0.50 0.020 ( 0.04 ) 0.002 Lead Width Pin 1 4.55 0.179 Protective Kapton Tape Section A-A ∅ 0.70 0.028 Clear Optical Path 3.92 0.154 Notes: 1. Dimensions in millimeter / inches. 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: ± 3° 7. Maximum flash: 0.2mm. 8. Brackets () indicate reference dimension. 9. Document Number: LED_SPC_8C_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: [email protected] 3 PixArt Imaging Inc. Low Power Optical Mouse Sensor Overview of Optical Mouse Sensor Assembly 1JY"SU*NBHJOH provides an IGES file drawing describing the base plate molding features for lens and PCB alignNFOU The ADNS-2080 sensor is designed for mounting on a through-hole PCB, looking down. There is an aperture stop and features on the package that align to the lens. The ADNS-5110-001 BOE"%/4lens provides optics GPSUIFJNBHJOHPGUIFsurface 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 LED 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. The LEDs recommended for illumination include HSDL-4261 IR LED and HLMP-EG3E Red LED. 26 1.024 25.00 2X 0.984 12.9 0.508 12.60 0.496 11.22 0.442 0.3 0.012 Optical center 10.35 0.407 0 6.290362 0.247652 7.56 0.298 5.02 0.198 0 2.25 0.089 Pin 1 1.37 0.054 24.15 2X 0.951 14.94 0.588 14.5 0.571 13.06 0.514 2.00 3X 0.079 0.383999 0.015118 1.00 0.039 Optional hole for alignment post if used ø 3.00 0.118 Notes: Clear zone 1. Dimensions in millimeter/inches 10X ø 0.80 0.031 2. View from component side of PCB (or top view of mouse) 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: [email protected] 4 PixArt Imaging Inc. Low Power Optical Mouse Sensor 33.45 1.317 A A 13.10 0.516 Pin 1 PCB Sensor Lens LED LED Clip Section A A 2.40 0.094 7.45 0.293 10.60 0.417 Alignment Post (Optional) Base Plate Important Note: Pin 1 of sensor should be located nearest to the LED Figure 4. 2D Assembly drawing of ADNS-2080 (Top and Side View) Sensor Lens 2.40 A 0.094 6.87 0.271 B Surface Lens Reference Plane Note: A – Distance from object surface to lens reference plane B – Distance from object surface to sensor reference plane 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: [email protected] 5 PixArt Imaging Inc. Low Power Optical Mouse Sensor LED LED Clip ADNS-2080 (Sensor) Customer supplied PCB ADNS-5110-001 Customer supplied base plate with recommended alignment features per IGES drawing Important Note: IR LED is recommended for lower power consumption. Figure 6. Exploded View of Assembly PCB Assembly Considerations 4. This sensor package is only qualified for wave-solder process. 5. Wave solder the entire assembly in a no-wash solder process utilizing solder fixture. The solder fixture is needed to protect the sensor during the solder process. It also sets the correct sensor-to-PCB distance as the lead shoulders do not normally rest on the PCB surface. The fixture should be designed to expose the sensor leads to solder while shielding the optical aperture from direct solder contact. 6. Place the lens onto the base plate. 7. Remove the protective Kapton tape from optical aperture of the sensor. Care must be taken to keep contaminants from entering the aperture. Recommend not to place the PCB facing up during the entire mouse assembly process. Recommend to hold the PCB first vertically for the Kapton removal process. 8. Insert PCB assembly over the lens onto the base plate aligning post to retain PCB assembly. The sensor aperture ring should self-align to the lens. 6 10. Install mouse top case. There MUST be a feature in the top case to press down onto the PCB assembly to ensure all components are interlocked to the correct vertical height. ADNS-2080 VDDA VDD VDDIO GND IMAGE ARRAY DSP LED OSCILLATOR SERIAL PORT AND REGISTERS 3. Insert the LED clip assembly into PCB. POWER AND CONTROL 2. Insert the LED into the assembly clip and bend the leads 90 degrees. 9. The optical position reference for the PCB is set by the base plate and lens. Note that the PCB motion due to button presses must be minimized to maintain optical alignment. LED DRIVE 1. Insert the sensor and all other electrical components into PCB. Figure 7. Block diagram of ADNS-2080 optical mouse 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: [email protected] SDIO SCLK MOTION PROG R0 P20 SW1 SLIDE SW SPDT 14 2AA BATTERY BT1 ZB ZA 1 RESET MSCK S4 P6 P24 C4 10uF/50V L2 4.7uH 10uF/50V C5 L1 4.7uH P25 7 R13 1M R14 1M 13 ZA ZB COM CON1 PCB_SKT_SMD_1.27/2X5 PROG R2 S1 R3 300k R4 1M1 R2 453k R1 1M3 C7 100nF C6 100nF Z-ENCODER_3P Q1 S2 RESET R1 12 2 TPS61220 U2 TPS61220 U1 Figure 8a. Schematic diagram for ADNS-2080 mainboard (cordless application) P1 C3 100nF C1 100nF C12 4.7uF/10V C8 4.7uF/10V P16 P7 Option 2: R5 = 66R Note: Option 1: R5 = 39R P21 LED R5 39R D5 P22 C11 MOSI ADNS-2080 U5 P26 C9 2.2uF/16V R6 1M R9 0R 100nF 0R R17 Option 2: R1 = 1M6 , R2 = 470k R3 = 300k , R4 = 1M1 VCC_DC1 = 2.2V VCC_DC2 = 2.3V Note: Option 1: R1 = 1M3 , R2 = 453k R3 = 300k , R4 = 1M1 VCC_DC1 = 1.9V VCC_DC2 = 2.3V C13 4.7uF/10V C10 4.7uF/10V MOTION MSCK VDDIO 11 1 4.7uF/10V C2 P27 10 S4 S3 S1 R1 SW4 SW3 SW2 R12 1M NC COMNO NC COMNO MISO P28 R7 1M CS NC COMNO TACT_SW SW5 5 4 R11 1M R10 1M R0 VDD_LED P3 P4 P5 9 P11 P17 P18 P19 P10 P9 P2 GND VCC_DC1 P13 P12 P14 VBAT 8 7 6 3 S3 CS MISO MOSI COM R1 MOTION R2 S1 S2 S3 AFFINEX P15 VCC_DC2 + C1 100nF C3 100nF P7 P6 P5 P1 R0 100nF C5 PROG ZB ZA U1 C14 5pF NRF24LE1 C15 5pF P10 P11 P12 P13 P14 P15 P16 22K R1 C7 22pF 8 C4 33nF C13 5pF Figure 8b. Schematic diagram of the RF module (to be attached to the mouse mainboard PCB) GND9 GND8 GND7 GND6 GND5 GND4 GND3 COM GND2 P29 P28 R1 GND1 P32 C6 22pF X1 16MHz MOTION R2 VDD S1 CS S2 MISO MOSI S3 ANT2 ANT1 VDD_PA RESET MSCK S4 5pF C16 6.8nH L3 C9 2.2nF L2 6.8nH 4.7nH L1 1.5pF C8 1 C11 1pF C12 1.8pF AT1 ANTENNA AFFINEX P17 P18 P19 C2 100nF R6 R3 R4 10R 22R 22R J2 Header 5 10uF C12 Prog PROG SCK MOSI MISO CSN R7 10k C7 10nF R5 10k X1 16MHz 33nF 22k C10 R2 nRF24LU1+ U1 33nF C9 C11 100nF 9 Figure 8c. Schematic diagram of the dongle USB Type A J1 C8 10nF 22pF C2 22pF C1 6.8nH L2 L1 5.6nH 6.8nH L3 C4 4.7pF C6 1.0pF 2.2pF C13 L4 3.9nH 0402 Antenna AFFINEX C3 2.2nF 1.0pF C5 PixArt Imaging Inc. Low Power Optical Mouse Sensor Design Considerations for Improved ESD Performance Regulatory Requirements For improved electrostatic discharge performance, typical • Passes FCC B and worldwide analogous emission limits creepage and clearance distance are shown in the table when assembled into a mouse with shielded cable and below. Assumption: base plate construction is as per the following 1JY"SU*NBHJOH recommendations. 1JY"SU*NBHJOHsupplied IGES file and ADNS-5110- • UL flammability level UL94 V-0. BOE"%/4 lens. Note that the lens material is QPMZDBSCPOBUFPSpolystyrene HH30. Therefore, cyanoacrylate CBTFEBEIFsives or other adhesives that may damage the lens should NOT be used. Typical Distance (mm) Creepage 16.0 Clearance 2.0 Table 1. Absolute Maximum Ratings Parameter Symbol Minimum Maximum Units Storage Temperature TS -40 85 °C Operating Temperature TA -15 55 °C Lead Solder Temperature VO 260 °C Supply Voltage VDDA 3.6 V -0.5 VIN For 10 seconds, 1.6 mm below seating plane. 3.6 V 2 kV All pins, human body model JESD22-A114 -0.5 3.6 V All I/O pins Typ. Max Units 40 °C VDDIO ESD Input Voltage Notes Table 2. Recommended Operating Condition Parameter Symbol Min Operating Temperature TA 0 Notes Power Supply Voltage VDDA 2.1 2.2 3.3 V VDDIO 1.7 1.8 3.3 V Power Supply Rise Time TRT 0.15 20 ms 0 to VDDA min/VDDIO min Supply Noise (Sinusoidal) VNA 100 mVp-p 10 kHz –50 MHz Serial Port Clock Frequency fSCLK 50% duty cycle Distance from Lens Reference Plane to Tracking Surface (Z) Z 2.3 Speed 1 S 0 Acceleration Load Capacitance 1 MHz 2.5 mm 30 ips a 20 g At run mode Cout 100 pF SDIO and MOTION 2.4 At default frame rate Note: 1. For higher than 500 dpi setting, use 12-bit motion reporting to achieve the maximum speed 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: [email protected] 10 PixArt Imaging Inc. Low Power Optical Mouse Sensor Table 3. AC Electrical Specifications Electrical characteristics over recommended operating conditions. Typical values at 25 °C, VDDA = 2.2 V, VDDIO = 1.8 V. Parameter Symbol Motion Delay after Reset Min. Typ. Max. Units Notes tMOT-RST 50 ms From RESET register write to valid motion Forced Rest Enable tREST-EN 1 s From Rest Mode(RM) bits set to target rest mode Wake from Forced Rest tREST-DIS 1 s From Rest Mode(RM) bits cleared to valid motion Power Down tPD 50 ms From PD active (when bit 1 of register 0x0d is set) to low current Wake from Power Down tWAKEUP 55 ms Through RESET register 0x3a. From PD inactive to valid motion SDIO Rise Time tr-SDIO 60 200 ns CL = 100 pF SDIO Fall Time tf-SDIO 40 200 ns CL = 100 pF SDIO Delay after SCLK tDLY-SDIO 120 ns From SCLK falling edge to SDIO data valid, no load conditions SDIO Hold Time thold-SDIO 250 1/fSCLK ns Data held until next falling SCLK edge SDIO Timeout After Failure ttimeout-SDIO 50 ms Quiet time needed for the SPI block to reset when it fails SPI Time between Write Commands tSWW 30 μs From rising SCLK for last bit of the first data byte, Commands to rising SCLK for last bit of the second data byte SPI Time between Write and Read Commands tSWR 20 μs From rising SCLK f or last bit of the first data byte, to rising SCLK for last bit of the second address byte SPI Time between Read and Subsequent Commands tSRW tSRR 250 ns From rising SCLK for last bit of the first data byte, to falling SCLK for the first bit of the next address SPI Read AddressData Delay tSRAD 4 μs From rising SCLK for last bit of the address byte, to falling SCLK for first bit of data being read Transient Supply Current IDDT mA Max supply current during a VDDA ramp from 0 to VDDA with min 150 ms and max 20 ms rise time. (Does not include charging currents for bypass capacitors.) 60 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: [email protected] 11 PixArt Imaging Inc. Low Power Optical Mouse Sensor Table 4. DC Electrical Specifications Electrical characteristics over recommended operating conditions. Typical values at 25 °C, VDDA = 2.2 V, VDDIO = 1.8 V, VDDLED = 2.2 V, IRLED HSDL-4261, ILED DC = 5mA. Parameter Symbol DC Supply Current in Various Mode IDD_AVG Min Units Notes 1.5 mA IDD_REST1 110 mA Average sensor current at max frame rate. No load on SDIO IDD_REST2 34 mA IDD_REST3 18 mA IDDLED_AVG 0.4 mA IDDLED_REST1 66 mA IDDLED_REST2 15 mA IDDLED_REST3 4 mA Power Down Current Typ. Max mA 10 0.3* VDDIO Input Low Voltage VIL Input High Voltage VIH Input Hysteresis VI_HYS 200 Input Leakage Current Ileak ±1 Output Low Voltage VOL Output High Voltage VOH Input Capacitance Cin V SCLK, SDIO V SCLK, SDIO mV SCLK, SDIO ±10 mA Vin = VDDIO or 0 V 0.45 V Iout = 1 mA, SDIO, MOTION V Iout = -1 mA, SDIO, MOTION pF SDIO, SCLK 0.7* VDDIO VDDIO -0.45 50 Average LED current at max frame rate. No load on SDIO 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: [email protected] 12 PixArt Imaging Inc. Low Power Optical Mouse Sensor Synchronous Serial Port MOTION Detection Routine The synchronous serial port is used to set and read pa rameters in the ADNS-2080, and to read out the motion information. The port is a two wire serial port. The host micro-con troller always initiates communication; the ADNS-2080 never initiates data transfers. SCLK and SDIO may be driven directly by a micro-controller. Typically in the motion detection routine, MCU will poll the sensor for valid motion data by checking on the MOTION_ST bit in MOTION_ST register. If MOTION_ST bit is set, motion data in DELTA registers is valid and ready to be read by the MCU. For 8-bit motion reporting the DELTA registers are DELTA_X and DELTA_Y and for 12-bit motion reporting the DELTA registers are DELTA_X, DELTA_Y and DELTA_XY_HIGH. The lines that comprise the SPI port: SCLK:Clock input. It is always generated by the master (the micro-controller). SDIO: Input/Output data. Power Management Modes The ADNS-2080 has three power-saving modes. Each mode has a different motion detection period with its respective response time to mouse motion. Response Time is the time taken for the sensor to ‘wake up’ from rest mode when motion is detected. When left idle, the sensor automatically changes or downshift from Run mode to Rest1, to Rest2 and finally to Rest3 which consumes the least current. Do note that current consumption is the lowest at Rest3 and highest at Rest1, however time required for sensor to respond to motion from Rest1 is the shortest and longest from Rest3. Downshift Time is the elapsed time (under no motion condition) from current mode to the next mode for example, it takes 10s for the sensor that is in Rest1 to change to Rest2. The typical response time and downshift time for each mode is shown in the following table. However, user can change the default time setting for each mode via register 0x0e through 0x13. Mode Response Time (Typical) Downshift Time (Typical) Rest 1 20 ms <1 s Rest 2 100 ms 10 s Rest 3 500 ms 600 s MOTION Function MOTION output signal (pin 3) can be used as interrupt input to the microcontroller of the mouse to trigger the controller to read the motion data from the sensor whenever there is motion detected by the sensor. The MOTION signal can be configured to be level or edge triggered, active high or low by setting the bits in MOTION_CTRL register. For active high level-triggered configuration, the MOTION pin level will be driven high as long the MOTION bit in register 0x02 is set and there is motion data in DELTA registers ready to be read by the microcontroller. Once all the motion data has been read, DELTA registers value become zero, MOTION bit is reset and the MOTION pin level is driven low. For active high edge-triggered configuration, a pulse of 380ns (typical) will be sent through the MOTION pin when there is motion detected by the sensor during rest modes. The pulse can be used as interrupt input to activate the microcontroller from its sleep mode to enter into run mode to start polling the sensor for motion data by monitoring MOTION_ST bit (set whenever there is valid motion data) in MOTION register (0x02) and reading DELTA registers until MOTION_ST bit is reset. Note: These default timings are subject to changes after characterization. Another feature in ADNS-2080 that can be used to optimize the power consumption of the optical mouse system is the Motion Interrupt Output or MOTION pin (pin 3). It allows the host controller to be in sleep mode (or lowest operating current mode) when there is no motion detected after some time instead of consistently be in active mode and polling motion data from the sensor. When motion is detected, the sensor will send the motion interrupt signal through pin 3 to the controller to wake it up from sleep mode to resume its motion detection routine for navigation position and direction update. 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: [email protected] 13 PixArt Imaging Inc. Low Power Optical Mouse Sensor Write Operation Write operation, defined as data going from the micro-controller to the ADNS-2080, is always initiated by the microcontroller and consists of two bytes. The first byte contains the address (seven bits) and has a “1” as its MSB to indicate write sequence. The second byte contains the data. The ADNS-2080 reads SDIO on rising edges of SCLK 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 2 1 A6 A5 A4 A3 A2 A1 A0 D7 D6 D5 D4 D3 D2 D1 D0 1 A6 SCLK MOSI MISO MOSI DRIVEN BY MICRO-CONTROLLER 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 2 1 A6 A5 A4 A3 A2 A1 A0 D7 D6 D5 D4 D3 D2 D1 D0 1 A6 SCLK SDIO SDIO DRIVEN BY MICRO-CONTROLLER SCLK SDIO thold-write tsetup-write SDIO setup and hold time during write operation Read Operation A read operation, defined as data going from the slave to the microcontroller, is always initiated by the microcontroller and consists of two bytes. The first byte contains the address, is sent by the microcontroller over slave SDIO, and has a “0” as its MSB to indicate data direction. The second byte contains the data and is driven by the slave over SDIO. The sensor outputs data bits on falling edges of SCLK. SCLK Cycle # 1 2 3 4 5 6 7 0 A6 A5 A4 A3 A2 A1 8 9 10 11 12 13 14 15 16 D7 D6 D5 D4 D3 D2 D1 D0 SCLK SDIO A0 tSRAD DELAY SCLK tDLY-READ SDIO tHOLD-READ D0 SDIO delay and hold time during read operation Note: The 500 ns minimum high state of SCLK is also the minimum SDIO data hold time of the ADNS-2080. Since the falling edge of SCLK is actually the start of the next read or write command, the ADNS-2080 will hold the state of data on SDIO until the falling edge of SCLK. All rights strictly reserved any portion in this paper shall not be reproduced, copied or transformed to any other forms without permission. 14 PixArt Imaging Inc. E-mail: [email protected] PixArt Imaging Inc. Low Power Optical Mouse Sensor Required Timing between Read and Write Commands There are minimum timing requirements between read and write commands on the serial port. Timing between Two Write Commands If the rising edge of the SCLK for the last data bit of the second write command occurs before the required delay (tSWW), then the first write command may not complete correctly. tSWW SCLK ADDRESS DATA ADDRESS WRITE OPERATION DATA WRITE OPERATION Timing between Write and Read Commands If the rising edge of SCLK for the last address bit of the read command occurs before the required delay (tSWR), the write command may not complete correctly. tSWR ••• SCLK ADDRESS DATA ADDRESS ••• WRITE OPERATION NEXT READ OPERATION Timing between Read and Subsequent Write or Read Commands During a read operation SCLK should be delayed at least tSRAD after the last address data bit to ensure that the ADNS-2080 has time to prepare the requested data. The falling edge of SCLK for the first address bit of either the read or write command must be at least tSRR or tSRW after the last SCLK rising edge of the last data bit of the previous read operation. tSRW & tSRR tSRAD ••• SCLK ADDRESS ADDRESS DATA ••• READ OPERATION NEXT READ or WRITE OPERATION Motion Burst Timing tSRAD ••• SCLK MOTION_BURST REGISTER ADDRESS READ FIRST BYTE ••• FIRST READ OPERATION READ SECOND BYTE READ THIRD BYTE 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. 15 E-mail: [email protected] PixArt Imaging Inc. Low Power Optical Mouse Sensor Burst Mode Operation Reset Burst mode is a special serial port operation mode that may be used to reduce the serial transaction time for a motion read. The speed improvement is achieved by continuous data clocking to or from multiple registers without the need to specify the register address, and by not requiring the normal delay period between data bytes. During power-up, the ADNS-2080 does not need a power on reset as there is an internal circuitry that performs power on reset in the sensor. However it can be reset by writing 0x5a to register 0x3a. A full reset will thus be executed and any register settings must be reloaded. Burst mode is initiated by reading the MOTION_BURST register (0x63). The ADNS-2080 will respond with the contents of the DELTA_X, DELTA_Y, SQUAL, SHUT_HI, SHUT_LO, and PIX_MAX and PIX_ACCUM registers in that order. The default value in BURST_READ_FIRST register (0x42) is the address of the DELTA_X register. The address that is specified in the BURST_READ_FIRST register can be changed to address 0x00 – 0x02 (PROD_ID – MOTION_ST) or 0x05 – 0x08 (SQUAL – PIX_MAX). In 12-bit motion reporting there will be an extra content in DELTA_XY_HIGH (register 0x0c), to be read out in the order of DELTA_X, DELTA_Y, DELTA_XY_HIGH, SQUAL, SHUT_HI, SHUT_LO, PIX_MAX and PIX_ACCUM. The rest of the burst mode operation is the same as 8-bit motion reporting. The default value in BURST_LAST_READ register (0x44) is the address of PIX_ACCUM register. This last address setting must be larger than the first address setting, address 0x01-0x02 (REV_ID - MOTION_ST), or 0x04 – 0x09 (DELTA_Y – PIX_ACCUM) or 0x0c (DELTA_XY_HIGH) if 12-bit motion reporting is set. Power Down The ADNS-2080 can be set to Power Down mode by writing 0x02 to register 0x0d to disable the sensor. In addition, the SPI port should not be accessed during power down. The table below shows the state of various pins during power down. To exit Power Down, write 0x5a to register 0x3a to reset the sensor in order to wake it up. A full reset will thus be executed. Wait tWAKEUP before accessing the SPI port. Any register settings must then be reloaded. Pin During Power Down MOTION SCLK SDIO XY_LED Undefined Functional* Functional* Low current Notes: * Reading of registers should only be performed after exiting from the power down mode. Any read operation during power down will not reflect the actual data of the registers. The burst read must continue until the last specified address in order for the IO to be back to normal mode. After reading the MOTION_BURST address (0x63), the microcontroller must wait tSRAD before starting to read the continuous data bytes. All data bits can be read with no delay between bytes by driving SCLK at the normal rate. The data are latched into the output buffer after the last address bit is received. 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: [email protected] 16 PixArt Imaging Inc. Low Power Optical Mouse Sensor Registers The ADNS-2080 registers are accessible via the serial port. The registers are used to read motion data and status as well as to set the device configuration. Address Register Name Register Description Read/Write Default Value 0x00 PROD_ID Product ID R 0x2A 0x01 REV_ID Revision ID R 0x00 0x02 MOTION_ST Motion Status R 0x00 0x03 DELTA_X Lower byte of Delta_X R 0x00 0x04 DELTA_Y Lower byte of Delta_Y R 0x00 0x05 SQUAL Squal Quality R 0x00 0x06 SHUT_HI Shutter Open Time (Upper 8-bit) R 0x00 0x07 SHUT_LO Shutter Open Time (Lower 8-bit) R 0x64 0x08 PIX_MAX Maximum Pixel Value R 0xD0 0x09 PIX_ACCUM Average Pixel Value R 0x80 0x0a PIX_MIN Minimum Pixel Value R 0x00 0x0b PIX_GRAB Pixel Grabber R/W 0x00 0x0c DELTA_XY_HIGH Upper 4 bits of Delta X and Y displacement R 0x00 0x0d MOUSE_CTRL Mouse Control R/W 0x01 0x0e RUN_DOWNSHIFT Run to Rest1 Time R/W 0x08 0x0f REST1_PERIOD Rest1 Period R/W 0x01 0x10 REST1_DOWNSHIFT Rest1 to Rest2 Time R/W 0x1f 0x11 REST2_PERIOD Rest2 Period R/W 0x09 0x12 REST2_DOWNSHIFT Rest2 to Rest3 Time R/W 0x2f 0x13 REST3_PERIOD Rest3 Period R/W 0x31 0x22 PERFORMANCE Performance R/W 0x00 0x3a RESET Reset W 0x00 0x3f NOT_REV_ID Inverted Revision ID R 0xff 0x40 LED_CTRL LED Control R/W 0x00 0x41 MOTION_CTRL Motion Control R/W 0x40 0x42 BURST_READ_FIRST Burst Read Starting Register R/W 0x03 0x44 BURST_READ_LAST Burst Read Ending Register R/W 0x09 0x45 REST_MODE_CONFIG Rest Mode Configuration R/W 0x00 0x63 MOTION_BURST Burst Read R 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: [email protected] 17 PixArt Imaging Inc. Low Power Optical Mouse Sensor PROD_ID Address: 0x00 Product ID Register Access: Read Reset Value: 0x2A Bit 7 Field PID7 6 5 4 3 2 1 0 PID6 PID5 PID4 PID3 PID2 PID1 PID0 Data Type: 8-Bit unsigned integer USAGE: This register contains a unique identification assigned to the ADNS-2080. The value in this register does not change; it can be used to verify that the serial communications link is functional. REV_ID Address: 0x01 Product ID Register Access: Read Reset Value: 0x00 Bit 7 Field RID7 6 5 4 3 2 1 0 RID6 RID5 RID4 RID3 RID2 RID1 RID0 Data Type: 8-Bit unsigned integer USAGE: This register contains the IC revision. It is subject to change when new IC versions are released. MOTION_ST Address: 0x02 Motion Status Register Access: Read/Write Reset Value: 0x00 Bit 7 6 Field MOTION_ST RSVD 5 4 3 2 1 0 RSVD RSVD RSVD RSVD RSVD RSVD Data Type: Bit field. USAGE: Register 0x02 allows the user to determine if motion has occurred since the last time it was read. If the MOTION_ ST bit is set, then the user should read registers 0x03 (DELTA_X) and 0x04 (DELTA_Y) to get the accumulated motion data. Read this register before reading the DELTA_X and DELTA_Y registers. Writing any data into this register clears MOTION_ST bit, DELTA_X and DELTA_Y registers. However the written data byte will not be saved. Bit Field Name 7 MOTION_ST Description Motion detected since last report 0 = No motion (default) 1 = Motion occurred, data in DELTA_X and DELTA_Y registers ready to be read 6-0 RSVD Reserved 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: [email protected] 18 PixArt Imaging Inc. Low Power Optical Mouse Sensor DELTA_X Address: 0x03 X Displacement Register 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: Eight bit 2’s complement number. USAGE: X-axis movement in counts since last report. Absolute value is determined by resolution. Reading this register clears the content of this register. -127 -126 -2 -1 0 +1 +2 +126 +127 Delta_X 81 82 FE FF 00 01 02 7E 7F Motion -128 -127 -2 -1 0 +1 +2 +126 +127 Delta_X 80 81 FE FF 00 01 02 7E 7F Motion NOTE: 1JY"SU RECOMMENDS that registers 0x03, 0x04 and 0x0C be read consecutively in 12-bit motion reporting. DELTA_Y Address: 0x04 Y Displacement Register 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: Eight bit 2’s complement number. USAGE: Y-axis movement in counts since last report. Absolute value is determined by resolution. Reading this register clears the content of this register. -127 -126 -2 -1 0 +1 +2 +126 +127 Delta_Y 81 82 FE FF 00 01 02 7E 7F Motion -128 -127 -2 -1 0 +1 +2 +126 +127 Delta_Y 80 81 FE FF 00 01 02 7E 7F Motion NOTE: 1JY"SU RECOMMENDS that registers 0x03, 0x04 and 0x0C be read consecutively in 12-bit motion reporting. 19 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: [email protected] PixArt Imaging Inc. Low Power Optical Mouse Sensor SQUAL Address: 0x05 Squal Quality Register Access: Read Reset Value: 0x00 Bit 7 Field SQ7 6 5 4 3 2 1 0 SQ6 SQ5 SQ4 SQ3 SQ2 SQ1 SQ0 Data Type: Upper 8 bits of a 9-bit unsigned integer. USAGE: SQUAL (Surface Quality) is a measure of the number of valid features visible by the sensor in the current frame. The maximum SQUAL register value is 180. Since small changes in the current frame can result in changes in SQUAL, variations in SQUAL when looking at a surface are expected. The graph below shows 250 sequentially acquired SQUAL values, while a sensor was moved slowly over white paper. SQUAL is nearly equal to zero, if there is no surface below the sensor. SQUAL is typically maximized when the navigation surface is at the optimum distance from the imaging lens (the nominal Z-height). Squal value Squal 60 50 40 30 20 10 0 1 55 109 163 217 271 325 379 433 487 541 595 649 703 757 811 865 Count Figure 9. Squal values (white paper) Mean SQUAL vs Z 60 Avg-3sigma Avg Avg+3sigma Squal count 50 40 30 20 10 0 -10 -0.8 -0.6 -0.4 -0.2 0 0.2 Delta from Nominal Focus (mm) 0.4 0.6 0.8 1 Figure 14. Mean squal vs. Z (White Paper) 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: [email protected] 20 PixArt Imaging Inc. Low Power Optical Mouse Sensor SHUT_HI Address: 0x06 Shutter Open Time (Upper 4-bits) Register Access: Read Reset Value: 0x01 Bit 7 Field Reserved SHUT_LO 6 5 4 3 2 1 0 Reserved Reserved Reserved S11 S10 S9 S8 Address: 0x07 Shutter Open Time (Lower 8-bits) Register Access: Read Reset Value: 0x64 Bit 7 6 5 4 3 2 1 0 Field S7 S6 S5 S4 S3 S2 S1 S0 Data Type: Twelve bit unsigned integer. USAGE: Units are in clock cycles. Read SHUT_HI first, then SHUT_LO. They should be read consecutively. The shutter is adjusted to keep the average and maximum pixel values within normal operating ranges. The shutter value is automatically adjusted. PIX_MAX Address: 0x08 Maximum Pixel Value Register Access: Read Reset Value: 0x00 Bit 7 Field MP7 6 5 4 3 2 1 0 MP6 MP5 MP4 MP3 MP2 MP1 MP0 Data Type: Eight-bit number. USAGE: Store the highest pixel value in current frame. Minimum value = 0, maximum value = 254. The highest pixel value may vary with different frame. PIX_ACCUM Address: 0x09 Accumulated Pixel Value Register Access: Read Reset Value: 0x00 Bit 7 Field AP7 6 5 4 3 2 1 0 AP6 AP5 AP4 AP3 AP2 AP1 AP0 Data Type: High 8-bits of an unsigned 17-bit integer. USAGE: This register stores the accumulated pixel value of the last image taken. This register can be used to find the average pixel value, where Average Pixel = (register value AP[7:0]) * 1.058. The maximum accumulated value is 122936 but only bits [16:9] are reported, therefore the maximum register value is 240. The minimum is 0. The PIX_ACCUM value may vary with different frame.register value is 240. The minimum is 0. The PIX_ACCUM value may vary with different frame. 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: [email protected] 21 PixArt Imaging Inc. Low Power Optical Mouse Sensor PIX_MIN Address: 0x0a Minimum Pixel Value Register Access: Read Reset Value: 0x00 Bit 7 Field MP7 6 5 4 3 2 1 0 MP6 MP5 MP4 MP3 MP2 MP1 MP0 Data Type: Eight-bit number. USAGE: Store the lowest pixel value in current frame. Minimum value = 0, maximum value = 254. The minimum pixel value may vary with different frame. PIX_GRAB Address: 0x0b Pixel Grabber Register Access: Read Reset Value: 0x00 Bit 7 Field PG_VALID 6 5 4 3 2 1 0 PG6 PG5 PG4 PG3 PG2 PG1 PG0 Data Type: Eight bit word. USAGE: The pixel grabber captures 1 pixel per frame. Bit-7 (MSB) of this register will be set to indicate that the 7-bit pixel data (PG[6:0]) is valid for grabbing. In 22x22 pixel arrays, it will take 484 read operations to grab all the pixels to form the complete image. Bit(s) Field Name Description 7 PG_VALID Pixel Grabber Valid 6:0 PG[6:0] Pixel Data NOTE: Any write operation into this register will reset the grabber to origin (pixel 0 position). The sensor should not be moved before the 484 read operations are completed to ensure original data is grabbed to produce good (uncorrupted) image. 22X22 Pixel Array Address Map – (View from top of sensor) 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 482 460 438 416 394 372 350 328 306 284 262 240 218 196 174 152 130 108 Last 483 461 439 417 395 373 351 329 307 285 263 241 219 197 175 153 131 109 86 87 64 65 42 43 20 21 First Top X-ray View of Mouse Button Left Button Right 4 5 3 6 2 7 1 8 Pin 1 LED Positive X 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: [email protected] 22 Positive Y PixArt Imaging Inc. Low Power Optical Mouse Sensor DELTA_XY_HIGH Address: 0x0c Upper 4 bits Delta-X/Y Displacement Register Access: Read Reset Value: 0x00 Bit 7 Field DELTA_X_ HI3 6 5 4 3 2 1 0 DELTA_X_ HI2 DELTA_X_ HI1 DELTA_X_ HI0 DELTA_Y_ HI3 DELTA_Y_ HI2 DELTA_Y_ HI1 DELTA_Y_ HI0 Data Type: Eight bit 2’s complement number. USAGE: Concatenate the values to have a 12-bit reporting for the motion. X motion = {DELTA_XY_HIGH[7:4], DELTA_X} , Y motion = DELTA_XY_HIGH[3:0], DELTA_Y} Bit(s) Field Name Description 7:4 DELTA_X_HI Upper 4 bits of DELTA_X displacement for 12-bit reporting 3:0 DELTA_Y_HI Upper 4 bits of DELTA_Y displacement for 12-bit reporting NOTE: 1JY"SURECOMMENDS that registers 0x03, 0x04 and 0x0C be read consecutively in 12-bit motion reporting. MOUSE_CTRL Address: 0x0d Mouse Control Register Access: Read/Write Reset Value: 0x01 Bit 7 Field BIT_ REPORTING 6 5 4 3 2 1 0 RSVD RES_EN RES2 RES1 RES0 PD RES_D Data Type: Bit field. USAGE: Resolution and chip reset information can be accessed or to be edited by this register. Bit(s) Field Name Description 7 BIT_REPORTING 0x0: 8-bit motion reporting 0x1: 12-bit motion reporting. Read register 0x03, 0x04 and 0x0c. 6 RSVD Reserved 5 RES_EN Enable resolution settings set on MOUSE_CTRL [4:2] 4:2 RES [2:0] Resolution 0x0: 1000 dpi (default) 0x1: 250 dpi 0x2: 500 dpi 0x3: 1250 dpi 0x4: 1500 dpi 0x5: 1750 dpi 0x6: 2000 dpi 1 PD Power Down 0 RES_D 0x0: 500 dpi 0x1: 1250 dpi (default) NOTE: Setting MOUSE_CTRL [5] bit to ‘1’ will supersede and ignore MOUSE_CTRL [0] setting. 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: [email protected] 23 PixArt Imaging Inc. Low Power Optical Mouse Sensor RUN_DOWNSHIFT Address: 0x0e Run to Rest1 Time Register Access: Read/Write Reset Value: 0x08 Bit 7 Field RUD7 6 5 4 3 2 1 0 RUD6 RUD5 RUD4 RUD3 RUD2 RUD1 RUD0 Data Type: Eight bit number. USAGE: This register sets the Run to Rest1 mode downshift time. The time is the value of this register multiply by 8 times of position mode period (default is 4ms). Default downshift time = 8 * 8 * 4 = 256 ms NOTE: Writing into this register when the sensor itself is operating in this rest mode may result in unexpected behavior of the sensor. To avoid this from happening, below commands should be incorporated prior and after the write command into this register. w 22 40 -> write 0x40H into register 0x22H prior to writing into this register w 0e XX -> writing into this register w 22 00 -> write 0x00H into register 0x22H after writing into this register REST1_PERIOD Address: 0x0f Rest1 Period Register Access: Read/Write Reset Value: 0x01 Bit 7 Field RIP7 6 5 4 3 2 1 0 RIP6 RIP5 RIP4 RIP3 RIP2 RIP1 RIP0 Data Type: Eight bit number. USAGE: This register sets the Rest1 period. Period = (register value R1P [7:0] +1) x 10ms (typical slow clock period). Min value for this register is 0x01. Max value is 0xFD. NOTE: Writing into this register when the sensor itself is operating in this rest mode may result in unexpected behavior of the sensor. To avoid this from happening, below commands should be incorporated prior and after the write command into this register. w 22 40 -> write 0x40H into register 0x22H prior to writing into this register w 0f XX -> writing into this register w 22 00 -> write 0x00H into register 0x22H after writing into this register 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: [email protected] 24 PixArt Imaging Inc. Low Power Optical Mouse Sensor REST1_DOWNSHIFT Address: 0x10 Rest1 to Rest2 Downshift Time Register Access: Read/Write Reset Value: 0x1f Bit 7 Field R1D7 6 5 4 3 2 1 0 R1D6 R1D5 R1D4 R1D3 R1D2 R1D1 R1D0 Data Type: Eight bit number. USAGE: This register sets the Rest1 to Rest2 mode downshift time. Time = (register value R1D [7:0]) x (Rest1 period) x 16. Min value for this register is 0x01. NOTE: Writing into this register when the sensor itself is operating in this rest mode may result in unexpected behavior of the sensor. To avoid this from happening, below commands should be incorporated prior and after the write command into this register. w 22 40 -> write 0x40H into register 0x22H prior to writing into this register w 10 XX -> writing into this register w 22 00 -> write 0x00H into register 0x22H after writing into this register REST2_PERIOD Address: 0x11 Rest2 Period Register Access: Read/Write Reset Value: 0x09 Bit 7 Field R2P7 6 5 4 3 2 1 0 R2P6 R2P5 R2P4 R2P3 R2P2 R2P1 R2P0 Data Type: Eight bit number. USAGE: This register sets the Rest2 period. Period = (register value R2P [7:0] +1) x 10ms (typical slow clock period). Min value for this register is 0x01. Max value is 0xFD. NOTE: Writing into this register when the sensor itself is operating in this rest mode may result in unexpected behavior of the sensor. To avoid this from happening, below commands should be incorporated prior and after the write command into this register. w 22 40 -> write 0x40H into register 0x22H prior to writing into this register w 11 XX -> writing into this register w 22 00 -> write 0x00H into register 0x22H after writing into this register 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: [email protected] 25 PixArt Imaging Inc. Low Power Optical Mouse Sensor REST2_DOWNSHIFT Address: 0x12 Rest2 to Rest3 Downshift Time Register Access: Read/Write Reset Value: 0x2f Bit 7 Field R2D7 6 5 4 3 2 1 0 R2D6 R2D5 R2D4 R2D3 R2D2 R2D1 R2D0 Data Type: Eight bit number. USAGE: This register sets the Rest1 to Rest2 mode downshift time. Time = (register value R2D [7:0] ) x (Rest2 period) x 128. Min value for this register is 0x01. NOTE: Writing into this register when the sensor itself is operating in this rest mode may result in unexpected behavior of the sensor. To avoid this from happening, below commands should be incorporated prior and after the write command into this register. w 22 40 -> write 0x40H into register 0x22H prior to writing into this register w 12 XX -> writing into this register w 22 00 -> write 0x00H into register 0x22H after writing into this register REST3_PERIOD Address: 0x13 Rest3 Period Register Access: Read/Write Reset Value: 0x31 Bit 7 Field R3P7 6 5 4 3 2 1 0 R3P6 R3P5 R3P4 R3P3 R3P2 R3P1 R3P0 Data Type: Eight bit number. USAGE: This register sets the Rest3 period. Period = (register value R3P [7:0] +1) x 10ms (typical slow clock period). Min value for this register is 0x01. Max value is 0xFD. NOTE: Writing into this register when the sensor itself is operating in this rest mode may result in unexpected behavior of the sensor. To avoid this from happening, below commands should be incorporated prior and after the write command into this register. w 22 40 -> write 0x40H into register 0x22H prior to writing into this register w 13 XX -> writing into this register w 22 00 -> write 0x00H into register 0x22H after writing into this register 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: [email protected] 26 PixArt Imaging Inc. Low Power Optical Mouse Sensor PERFORMANCE Address: 0x22 Performance Register Access: Read/Write Reset Value: 0x00 Bit 7 Field RSVD 6 5 4 3 2 1 0 FORCE3 FORCE1 FORCE0 RSVD RSVD RSVD RSVD Bit(s) Field Name Description 7 RSVD Reserved 6:4 FORCE[2:0] force modes 0x0: Normal operation. 0x1: force mode rest 1. 0x2: force mode rest 2. 0x3: force mode rest 3. 0x4: force mode run 1. 0x5: force mode run 2. 0x6: force mode idle. 3:0 RSVD RESET Reserved Address: 0x3a Reset Register Access: Write Reset Value: 0x00 Bit 7 Field RST7 6 5 4 3 2 1 0 RST6 RST5 RST4 RST3 RST2 RST1 RST0 Data Type: Eight bit unsigned integer. USAGE: This register is used as chip reset by writing 0x5a into this register. NOT_REV_ID Address: 0x3f Inverted Revision ID Register Access: Read Reset Value: 0xff Bit 7 Field RRID7 6 5 4 3 2 1 0 RRID6 RRID5 RRID4 RRID3 RRID2 RRID1 RRID0 Data Type: Eight bit unsigned integer. USAGE: This register contains the inverse of the revision ID which is located at 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: [email protected] 27 PixArt Imaging Inc. Low Power Optical Mouse Sensor LED_CTRL Address: 0x40 LED Control Register Access: Read/Write Reset Value: 0x00 Bit 7 Field RSVD 6 5 4 3 2 1 0 RSVD RSVD RSVD LCOF RSVD RSVD RSVD Data Type: Eight bit unsigned integer. USAGE: This register is used to control the LED operating mode. Bit(s) Field Name Description 7:4 RSVD Reserved 3 LCOF 0 : Normal operation (default) 1 : LED Continuous Off 2:0 RSVD MOTION_CTRL Reserved Address: 0x41 Motion Control Register Access: Read/Write Reset Value: 0x40 Bit 7 Field MOT_A 6 5 4 3 2 1 0 MOT_S RSVD RSVD RSVD RSVD RSVD RSVD Data Type: Eight bit unsigned integer. USAGE: This register is used to set the feature of MOTION interrupt output. If MOT_S bit is clear, the MOTION pin is levelsensitive. With active low (MOT_A bit is clear) level-sensitive configuration, the MOTION pin will be driven low when there is motion detected indicating there is motion data in DELTA_X and DELTA_Y registers. The mouse microcontroller can read MOTION_ST register, DELTA_X register, and then DELTA_Y register sequentially. After all the motion data has been read, DELTA_X and DELTA_Y registers will be zero, the MOTION pin will be driven high by the sensor. If MOT_S is set, the MOTION pin is edge sensitive. If MOT_A is also set, it means active high or rising edge triggered. Whenever there is motion detected by the sensor, a pulse (~380ns) will be sent out through this pin. This pulse can be used to trigger or wake the controller up from its sleep mode to read motion data from the sensor. The controller can then read MOTION_ST register, DELTA_X register, and then DELTA_Y register sequentially. (Refer to Motion Function for more information). Bit(s) Field Name Description 7 MOT_A MOTION Active 0 : LOW (default) 1 : HIGH 6 MOT_S MOTION Sensitivity 0 : Level sensitive 1 : Edge sensitive (default) 5:0 RSVD Reserved 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: [email protected] 28 PixArt Imaging Inc. Low Power Optical Mouse Sensor BURST_READ_FIRST Address: 0x42 Burst Read Starting Address Register Access: Read/Write Reset Value: 0x03 Bit 7 Field BM7 6 5 4 3 2 1 0 BM6 BM5 BM4 BM3 BM2 BM1 BM0 Data Type: Eight bit unsigned integer. USAGE: This register provides the starting register address the sensor will read during Burst Mode. For more information, refer to Burst Mode Operation. BURST_READ_LAST Address: 0x44 Burst Read Ending Address Register Access: Read/Write Reset Value: 0x09 Bit 7 Field BM7 6 5 4 3 2 1 0 BM6 BM5 BM4 BM3 BM2 BM1 BM0 Data Type: Eight bit unsigned integer. USAGE: This register provides the ending register address the sensor will read during Burst Mode. For more information, refer to Burst Mode Operation. Note: The last address should be larger than the starting address. REST_MODE_CONFIG Address: 0x45 Rest Mode Configuration Register Access: Read/Write Reset Value: 0x00 Bit 7 Field RM1 6 5 4 3 2 1 0 RM0 RSVD RSVD RSVD RSVD RSVD RSVD Data Type: Eight bit unsigned integer. USAGE: This register is used to set the operating mode of the ADNS-2080. Bit(s) Field Name 7:6 RM[1:0] Description Sensor Operating Mode 0x00: Normal (default) 0x01: Rest 1 0x02: Rest 2 0x03: Rest 3 5:0 RSVD Reserved Read operation to REST_MODE_CONFIG indicates which mode the sensor is in. Write operation into this register will force the sensor into rest modes (Rest 1, 2 or 3). Write the value 0x40 into 0x45 register to force sensor into Rest 1, 0x80 to Rest 2 or 0xC0 to Rest 3. To get out of any forced rest mode, write 0x00 into this register to set back to normal mode. 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: [email protected] 29 PixArt Imaging Inc. Low Power Optical Mouse Sensor MOTION_BURST Address: 0x63 Burst Read Register Access: Read Reset Value: 0x00 Bit 7 Field MB7 6 5 4 3 2 1 0 MB6 MB5 MB4 MB3 MB2 MB1 MB0 Data Type: Various. USAGE: This register is used to enable burst mode. Burst is initiated by a read of this register, which will then return continuous data starting from the address stored in BURST_READ FIRST register through BURST_READ_LAST register. Burst read must read the exact number of addresses set in order to complete the burst operation. For more information refer to Burst Mode Operation 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: [email protected]