Reprogramming a computer mouse's internal IC?

Specifications for this particular chip (SPCP168A) don't show any explicit serial/SPI port. Also, there is no indication in blogosphere that this particular chip has any field firmware update options. So it is very likely that it runs from a mask ROM.

However, there are other optical mice on the market, they are based on the original patented Avago technology. The main chip ADNS-2051 does have an interface to a MCU, both some serial, and "quadrature outputs". There are some hack examples that use this chip as 16x16 video matrix using Arduino.


I'm not even sure the MCU inside that IC has programmable memory at all – maybe a few bytes to set a custome USB Device and Vendor ID, but that's probably it. (Rest would be ROM)

I'm fairly certain it's designed specifically in a way that calculates the relative motion directly from the camera observation with hardware; that's very easy to design into hardware (and harder to do sufficiently fast in MCU software).

So I'm afraid this isn't the IC you're looking for.

But don't fret, there's slightly more expensive mice that come with oversized MCUs to connect the sensor to USB and implement more complex functionality, and if I were to look for reprogrammability, then there. Also, there's already been folks that demonstrated that they can run malicious software on a gamer mouse.


To make the manufacturing cost as low as possible the specially designed chip may be a 100% state machine design in hardware. Even if there was an internal MCU with firmware it is a good possibility that it is stored in masked ROM.