¿Reprogramar el IC interno de un mouse de computadora?

7

Tengo un mouse con un IC interno: SPCP168A después de leerlo, descubrí que está específicamente diseñado y programado para la funcionalidad del mouse. Estoy interesado en reprogramar el dispositivo para poder usar su "cámara" (160 cuadros / s). Mis preguntas son: ¿Puedo reprogramarlo, o es una OTP? ¿Alguien ha hecho algo similar?

    
pregunta Ernest Dujo

4 respuestas

14

Las especificaciones para este chip en particular (SPCP168A) no muestran ningún puerto serial / SPI explícito. Además, no hay ninguna indicación en la blogósfera de que este chip en particular tenga alguna opción de actualización de firmware de campo. Por lo tanto, es muy probable que se ejecute desde una ROM de máscara.

Sin embargo, hay otros ratones ópticos en el mercado que se basan en la tecnología original patentada de Avago. El chip principal ADNS-2051 tiene una interfaz para una MCU, ambas en serie, y " Salidas en cuadratura ". Hay algunos ejemplos de hackeo que usan este chip como matriz de video 16x16 usando Arduino.

    
respondido por el Ale..chenski
12

Ni siquiera estoy seguro de que la MCU dentro de ese IC tenga memoria programable en absoluto, tal vez unos pocos bytes para configurar un dispositivo USB y una identificación de proveedor, pero probablemente sea eso. (El resto sería ROM)

Estoy bastante seguro de que está diseñado específicamente de una manera que calcula el movimiento relativo directamente desde la observación de la cámara con hardware; eso es muy fácil de diseñar en hardware (y más difícil de hacer lo suficientemente rápido en el software MCU).

Me temo que este no es el IC que estás buscando.

Pero no se preocupe, hay ratones un poco más caros que vienen con MCU de gran tamaño para conectar el sensor a USB e implementar una funcionalidad más compleja, y si tuviera que buscar la reprogramación, entonces allí. Además, ya ha habido gente que demostró que pueden ejecutar software malicioso. en un ratón gamer.

    
respondido por el Marcus Müller
4

Para hacer que el costo de fabricación sea lo más bajo posible, el chip especialmente diseñado puede ser un diseño de máquina de estado al 100% en hardware. Incluso si hubiera una MCU interna con firmware, es una buena posibilidad que esté almacenada en la ROM enmascarada.

    
respondido por el Michael Karas
4

He hecho esto antes para un proyecto de robótica escolar. El objetivo era utilizar la información de posición del mouse para usarla como un sensor de posición para un robot.

Esto es lo que encontré:

1) Todos los ratones que utilicé tenían ASICS (y apuesto a que todos lo hacen)

2) El ASIC que tenía información era un ratón chino y tenía una hoja de datos (en lugar de tratar de encontrar una hoja de datos para un ratón en particular, busqué en diferentes ratones para encontrar una hoja de datos)

3) El mouse para el que tenía una hoja de datos tenía dos problemas

  • Los datos que regresan del mouse no eran una posición absoluta, sino una posición \ $ \ Delta x \ Delta y \ $, eran ruidosos y no eran útiles para la posición absoluta, pero sí para la velocidad o la aceleración.

  • Después de un poco de ingeniería inversa, el mouse se puede sondear para encontrar los valores de la cámara. Sin embargo, esto solo se puede hacer en intervalos de ~ 1 segundo. No es muy útil.

respondido por el laptop2d

Lea otras preguntas en las etiquetas

Comentarios Recientes

Nuestro proyecto es como abrir un paquete. Ahora es lo suficientemente grande como para necesitar tres correas de pegamento (una para cada ranura en el enchufe del mouse y siete pares de cualquier pieza de puentes en particular dentro), pero la carcasa de la computadora a su alrededor es lo suficientemente pequeña como para que no nos preocupemos demasiado si el mouse está estirado o no. Todo entra en un AllSource, una computadora masivamente modular que tiene un puerto USB incorporado y varios otros componentes esenciales... Lees verder