Ardutouch – Touchpad Synaptics T1004

10 comments Escrito el 13 de febrero del 2011 por
Categorias: Arduino, Library, Sample Code

ardutouch1Lectura del touchpad a través de arduino es muy fácil, por que la salida de muchos touchpad es como la de un ratón con conexión ps2 (+5V, GND, data y clock) y esos datos los puede leer nuestra placa arduino con la libreria ps2.h

A continuación les pongo unas imágenes de como he conectado mi touchpad de Synaptics con chip T1004 y un vídeo con un ejemplo de una LED en una salida PWM controlada por el touchpad. Pero sus aplicaciones pueden ser infinitas no solo controlar una LED pueden controlar un servo, etc...

Conexiones del chip Synaptics T1004
touchpad-synaptics-t1004  chip-synaptics-T1004-pinout
Vídeo

 

Código de ejemplo
#include <ps2.h>

PS2 mouse(6, 5); //Pin 5 is the mouse data & pin 6 is the clock.

void mouse_init()
{
  mouse.write(0xff);  // reset
  mouse.read();  // ack byte
  mouse.read();  // blank */
  mouse.read();  // blank */
  mouse.write(0xf0);  // remote mode
  mouse.read();  // ack
  delayMicroseconds(100);
}

int brightness = 0; void setup() { Serial.begin(9600); mouse_init(); } void loop() { char mstat; char mx; char my; /* get a reading from the mouse */ mouse.write(0xeb); // give me data! mouse.read(); // ignore ack mstat = mouse.read(); mx = mouse.read(); my = mouse.read(); /* send the data back up */ Serial.print(mstat, BIN); Serial.print("\tX="); Serial.print(mx, DEC); Serial.print("\tY="); Serial.print(my, DEC); Serial.println(); // Control del LED analogWrite(9, brightness); brightness = brightness + my + mx; if (brightness < 0) {brightness = 0 ;} if (brightness > 255) { brightness = 255 ;} }
Library
ps2.zip (71 KB)

Tags: , , , , ,

10 comments “Ardutouch – Touchpad Synaptics T1004”

It’s a nice blog you have over here! It’s very usefull information for me and I just want to thank you for that! If you post more threads as this one, I’ll follow your blog active!

I gotta bookmark this internet site it seems very helpful handy :)

This website has lots of very useful information on it. Cheers for sharing it with me!

Hola! Buenisimo lo q vas colgando acá. te hago una consulta: estoy queriendo conectar un mouse PS2 a la UNO y no he podido hacerlo andar, conpilo este código pero nada. no tengo mucha idea y recien comienzo con esto de programar así q me limita el conocimiento. si abro el monitor serial, debería ver los valores correr no? este código q armaste debería funcionar con el mouse PS2, no es cierto? Gracias!

Congatulations for your blog!

Here you can see more information about Synaptics TouchPad :

http://www.synaptics.com/sites/default/files/ACF126.pdf?q=decaf/utilities/ACF126.pdf

pinout at pag. 27

Enhorabuena por tu blog.
Aquí podéis ver más información acerca de los TouchPad de Synaptics:

http://www.synaptics.com/sites/default/files/ACF126.pdf?q=decaf/utilities/ACF126.pdf

En la página 27 están los pines de salida Así podremos soldar más facilmente sin cargarnos nada sobre el cable de cinta plana.

Gracias por el datasheet Ricardo! Me lo mirare detenidamente haber si se puede actualizar algo en esta entrada.

Hola, al compilar el programa me daba un error: WProgram.h no encontrado.
Se soluciona renombrando WProgram.h de la librería ps2.h a Arduino.h

La librería era para la antigua versión del IDE de arduino (las 00XX), ya he subido el archivo actualizado!

Es mejor en vez de cambiar WProgram.h por Arduino.h, añades:

#if ARDUINO >= 100
#include “Arduino.h”
#else
#include “WProgram.h”
#endif

Así la librería seguirá siendo compatible para las versiones anteriores y las nuevas.

Un saludo!

Hello,

Do you still have the code for this project http://www.youtube.com/watch?v=ORohcXbIrEQ ? I have a Synaptics T1004 trackpad but my Arduino Uno returns nothing in the serial monitor… I’m using the PS/2 library ‘mouse’ code and it doesn’t work.

Thanks!

Hello Neema!
Check the connections are correct!


Leave a Reply