Giter VIP home page Giter VIP logo

avago's Introduction

AVAGO

ADNS-7550 laser sensor chip for quadrature output mouse

dell mouse

This project is based on a Dell mouse which is run by an unknown micro-controller, and SPI ADNS-7550 sensor chip. It made a very easy for me to modify it and drop in msp430g2553 micro-chip in the same spot, after a handful of easy modifications: trace-cuts, and wire jumpers. A full schematic is missing but the pin assignment should tell whole story:

                                 ______________
                            Vcc  | 1       20 | GND                DB9 8
               top button   P1_0 |            | P2_6   QRA
               MOTION/IRQ   P1_1 |            | P2_7   QRB
                      CS    P1_2 |            | TEST
        DB9 5         MMB   P1_3 | 5          | RESET
                mmb-in      P1_4 |            | P1_7   MOSI
                      CLK   P1_5 |            | P1_6   MISO
   XQ   DB9 4         QXA   P2_0 |            | P2_5   5th button
    X   DB9 2         QXB   P2_1 |            | P2_4   4th button
    Y   DB9 1         QYB   P2_2 |_10______11_| P2_3   QYA      DB9 3 YQ   

mouse pinout DB9:
     QYB QXB QYA QXA
      Y   X  YQ  XQ  MMB     DB9   color   UTP         MCU
      U   D   L   R  PotY      1   red     w/grn         10
   _______________________     2   blk     w/brw          9
   \  1   2   3   4   5  /     3   gry     w/blu         11
    \                   /      4   org      org           8
     \__6___7___8___9_ /       5   brw      brw           5
       LMB  +  gnd RMB         6   grn      grn         LMB
                   PotX        7   wht      blu       +5vcc
                               8   blu     shield       GND
                               9   ylw     w/org        RMB

Among not included components in the above schematics is 3.3V regulator, necessary to run MSP430 at it maximum clock 16MHz. It is supplied from 5V at pin 7 of DB9 port. Wire colors listed are for own reference (happened to be the one in the game controller replacement cable (DB9) offered on one of the far-east on-line retail shop)

Before desoldering controller chip from the original mouse, dump the calibration values that are send during boot-up. Write down what values are written to register 0x1a LASER_CTRL0/1 (0x1f) and 0x1c LSRPWR_CFG0/1 (0x1d). See datasheet page 7 for details.

Communication protocol

  • at constant intervals (VerticalBlankISR), host is polling with a low level at MMB line
  • controller reacts at the falling edge of MMB linkage (see marker 1 - blue line MMB)
  • quadrature lines are negated with command for a brief moment (20us ... 40us) (see marker 2 - lines QXB and QYB)
  • after restoring original state of quadrature lines, state of MMB is checked to verify reception
    • if MMB line is still low - treat transaction as successfully (see marker 3)

single transaction

Corresponding host driver software can be obtained from AmigaMouse repository.

Programming pins access

Case can be easily opened, even without removing front latches. Pins 1 (Vcc), 20 (GND), 16 (RESET) and 17 (TST) can be reached with small programming terminals (clips).

programming pins accdess

avago's People

Contributors

sq7bti avatar

Stargazers

 avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.