Tuesday, July 5, 2011

[Module] | X8 only | AX8MT v005 | Dual touch for Cypress touchpad

[Module] | X8 only | AX8MT v005 | Dual touch for Cypress touchpad by andyx

This is module that enables dual touch in Cypress touchpad.
Currently there is nothing new to implement unless there will be some breakthrough e.g: datasheet for Cypress chip. I know that FroyoBread people have problems I couldn't solve it without help.

- cypress based touchpad,
- X8,
- Baseband x15

Known issues:
- on FroyoBread - you can't accept or reject the incoming call - works if added in hw_config.sh - thanks der_mart
- cypress chip don't report second touch if distance between fingers is lower then about 110 pixels (by AnDyX)
- if you slide one finger to second - chip reports one finger and geometric center will be in the middle of two fingers (by AnDyX)
- sometimes doesn't report second touch if you quickly press both fingers alltogether (by AnDyX)
- on FroyoBread sliding position of touch from first finger to second if you release first and quicly press second finger in another position - could you check both v003 versions guys ?

How to check which chip our X8 has:
- if you already have X8Gesture module from doixanh and it works on your X8 - you have synaptic - so from now stop yelling, screaming and complaining - for me this is disrespect his work !
- run following command in shell (via adb or Terminal Emulator):

dmesg | grep cyttsp-i2c
If you have something like this, that means your X8 is using Cypress chip otherwise your X8 has Synaptic chip (so look at note above):

cyttsp_i2c_probe: Successful registration cyttsp-i2c
if you have "permission denied" you must first enter this in the terminal

and then you can enter the above commands.

Manual installation:
- push ax8mt.ko to /system/lib/modules
- run the following command 
 insmod /system/lib/modules/ax8mt.ko
- run dmesg in shell, must contains following lines:

ax8mt: module v005 loadedinput: cyttsp-spi as /devices/platform/i2c-adapter/i2c-0/0-0024/input/input3cyttsp-i2c 0-0024: ax8mt_cyttsp_setup_input_dev: Registered input device cyttsp-spiax8mt: Enjoy dual touch now :)ax8mt_init: Mode set to: andyx 
Thats all - dual touch should works now.
If system reboot happens, get last kernel messages (get it using adb command:

adb pull /proc/last_kmesg 
Check in Multitouch Visualiser - if it works correctly.

Until you're sure that it works with your hardware, don't install it to hw_config.sh.
Release history

  • - now there are four modes in driver (can be switched on the fly) each differently reports touches to OS:
  • * 'original' - uses code from driver - don't send tracking id that chip reports - so OS must do tracking fingers it by itself,
  • * original_tid' - uses code from driver - send tracking id from chip - in Multitouch Visualiser/Tester - there are additional id number,
  • * 'andyx' - default mode - send tracking id to OS - but only reports track id set to 1 or 2 - so there is no additional id number in Multitouch Visualiser,
  • * 'desire' - don't send tracking id that chip reports - so OS must do tracking fingers it by itself; reports touches similar to driver in HTC Desire.

In XGin - all version works - so by default 'andyx' mode is set, IMHO - don't forces OS to track touches by itself and up to 2 tracking id ( two fingers  ), so should be fastest.

How to change mode:
In dmesg output there will be line:

ax8mt: module v005 loaded
input: cyttsp-spi as /devices/platform/i2c-adapter/i2c-0/0-0024/input/input3 
Use device name from second line without two last slashes at the end and add '/sys/ at the beginning:

echo "andyx" > /sys/devices/platform/i2c-adapter/i2c-0/0-0024/mode
Dmesg command output should contain:

attr_driver_mode: Mode switched to: andyx

  • - driver reports smaller constant touch area,
  • - this is version that not send tracking id sent to OS,
  • - added sending the same information from driver to OS like in Synaptic driver - maybe it helps FroyoBread people.


  • - removed all hacks - module is initialised in init section,
  • - two versions with and without tracking id sent to OS.


  • - code cleaning,
  • - module is removable using rmmod command,
  • - driver send track id to OS - visible in Multitouch Visualiser.


  • - just initial version  

The CY8CTMA340-XXX-03 (two-finger support) and CY8CTMA340-XXX-11 (four-finger support) device families are both available today from Cypress. Qualified customers can contact Cypress for more information and to obtain samples.

Download ax8mt_v005.zip

Original thread from xda-developers.com

tags: hvga, 320x480, xperia x8, android, optimus one, p500, xperia x8 games, xperia x8 games apk, xperia x8 apps, xperia x8 apk, Dual touch, Cypress touchpad http://anonym.to/


Post a Comment

Above article useful to you? Leave your comment to show your appreciation :)