I upgraded to Ubuntu 11.10 without much trouble.
I had to install the luminosity fix from plippo.
For correct rotation of the touchscreen I modified the touchrotate script to use the Coordinate Transformation Matrix (edit : noticed crazyness003 proposed a similar solution 3 pages ago) :
Code:
#!/bin/sh
if [ $# -eq 1 ];
then OUTPUT=auto
INPUTDEV=auto
ROTATION=$1
elif [ $# -eq 3 ];
then OUTPUT=$1
INPUTDEV=$2
ROTATION=$3
else echo "Usage: touchrotate [output inputdevice] left|right|inverted|normal|toleft|toright|topdown|current"
exit 1
fi
if [ $OUTPUT = auto ];
then LV=$(xrandr|grep -i 'LVDS')
OUTPUT=$(echo $LV | sed 's/ connected.*//')
fi
if [ $INPUTDEV = auto ];
then EG=$(xinput list|grep -E 'eGalax|MultiTouch')
INPUTDEV=$(echo $EG | grep -o 'id=[^ ]*' | sed 's/id=//')
fi
ORIGROTATION="$ROTATION"
case $ROTATION in
toleft|toright|topdown|current)
XR=$(xrandr)
if echo $XR | grep -q "$OUTPUT connected [^ ]* left";
then
case $ROTATION in
toleft) ROTATION=inverted ;;
toright) ROTATION=normal ;;
topdown) ROTATION=right ;;
current) ROTATION=left ;;
esac
elif echo $XR | grep -q "$OUTPUT connected [^ ]* right";
then
case $ROTATION in
toleft) ROTATION=normal ;;
toright) ROTATION=inverted ;;
topdown) ROTATION=left ;;
current) ROTATION=right ;;
esac
elif echo $XR | grep -q "$OUTPUT connected [^ ]* inverted";
then
case $ROTATION in
toleft) ROTATION=right ;;
toright) ROTATION=left ;;
topdown) ROTATION=normal ;;
current) ROTATION=inverted ;;
esac
else
case $ROTATION in
toleft) ROTATION=left ;;
toright) ROTATION=right ;;
topdown) ROTATION=inverted ;;
current) ROTATION=normal ;;
esac
fi
esac
case $ROTATION in
normal) xinput set-float-prop $INPUTDEV "Coordinate Transformation Matrix" 1 0 0 0 1 0 0 0 1;;
left) xinput set-float-prop $INPUTDEV "Coordinate Transformation Matrix" 0 -1 1 1 0 0 0 0 1;;
right) xinput set-float-prop $INPUTDEV "Coordinate Transformation Matrix" 0 1 0 -1 0 1 0 0 1;;
inverted) xinput set-float-prop $INPUTDEV "Coordinate Transformation Matrix" -1 0 1 0 -1 1 0 0 1;;
*) echo "Unknown option"; exit 1;;
esac
if [ $ORIGROTATION != current ];
then
xrandr --output $OUTPUT --rotate $ROTATION
fi
Multitouch (dualtouch in fact) seems to be working as mtview records two simultaneous touches. Nonetheless, when touching a part of the desktop with a finger and adding a close other finger, the touch screen stops responding, and
Code:
eGalax Inc. USB TouchController: reallocated 4 touches
is printed in the Xorg.0.log . Any idea of what might be causing that?
Bookmarks