Dell Inspiron 1090 (Duo)
Accelerometer
According to this source, the model name is LSM303DLH
. Only partial configuration has been achieved so far, although the cited source claims to have full support of the accelerometer. See STMicroelectronics LSM303DLH Accelerometer/Magenetometer.
Folding detection
When this computer is folded (or unfolded) into a tablet, it sends a keystroke. You can assign the keys XF86LAUNCH1
and XF86LAUNCH2
to these keystrokes with the following commands, respectively:
setkeycodes e073 148 setkeycodes e074 149
/etc/rc.local
to execute them when booting.Screen rotation
The screen can be rotated with xrandr
, but the coordinates of the touchscreen are not rotated accordingly. You can fix this with xinput
by running the following commands:
xinput --list
, which may change on driver updates for the touchscreen.xrandr -o left
xinput set-prop "eGalax Inc. USB TouchController" 'Coordinate Transformation Matrix' 0 1 0 1 0 0 0 0 1 xinput set-prop "eGalax Inc. USB TouchController" 'Evdev Axis Inversion' 0 1 xinput set-prop "eGalaxTouch Virtual Device for Multi" 'Coordinate Transformation Matrix' 0 1 0 1 0 0 0 0 1 xinput set-prop "eGalaxTouch Virtual Device for Multi" 'Evdev Axis Inversion' 0 1 xinput set-prop "eGalaxTouch Virtual Device for Single" 'Coordinate Transformation Matrix' 0 1 0 1 0 0 0 0 1 xinput set-prop "eGalaxTouch Virtual Device for Single" 'Evdev Axis Inversion' 0 1
xrandr -o right
xinput set-prop "eGalax Inc. USB TouchController" 'Coordinate Transformation Matrix' 0 1 0 1 0 0 0 0 1 xinput set-prop "eGalax Inc. USB TouchController" 'Evdev Axis Inversion' 1 0 xinput set-prop "eGalaxTouch Virtual Device for Multi" 'Coordinate Transformation Matrix' 0 1 0 1 0 0 0 0 1 xinput set-prop "eGalaxTouch Virtual Device for Multi" 'Evdev Axis Inversion' 1 0 xinput set-prop "eGalaxTouch Virtual Device for Single" 'Coordinate Transformation Matrix' 0 1 0 1 0 0 0 0 1 xinput set-prop "eGalaxTouch Virtual Device for Single" 'Evdev Axis Inversion' 1 0
xrandr -o inverted
xinput set-prop "eGalax Inc. USB TouchController" 'Coordinate Transformation Matrix' 1 0 0 0 1 0 0 0 1 xinput set-prop "eGalax Inc. USB TouchController" 'Evdev Axis Inversion' 1 1 xinput set-prop "eGalaxTouch Virtual Device for Multi" 'Coordinate Transformation Matrix' 1 0 0 0 1 0 0 0 1 xinput set-prop "eGalaxTouch Virtual Device for Multi" 'Evdev Axis Inversion' 0 0 xinput set-prop "eGalaxTouch Virtual Device for Single" 'Coordinate Transformation Matrix' 1 0 0 0 1 0 0 0 1 xinput set-prop "eGalaxTouch Virtual Device for Single" 'Evdev Axis Inversion' 0 0
xrandr -o normal
xinput set-prop "eGalax Inc. USB TouchController" 'Coordinate Transformation Matrix' 1 0 0 0 1 0 0 0 1 xinput set-prop "eGalax Inc. USB TouchController" 'Evdev Axis Inversion' 0 0 xinput set-prop "eGalaxTouch Virtual Device for Multi" 'Coordinate Transformation Matrix' 1 0 0 0 1 0 0 0 1 xinput set-prop "eGalaxTouch Virtual Device for Multi" 'Evdev Axis Inversion' 0 0 xinput set-prop "eGalaxTouch Virtual Device for Single" 'Coordinate Transformation Matrix' 1 0 0 0 1 0 0 0 1 xinput set-prop "eGalaxTouch Virtual Device for Single" 'Evdev Axis Inversion' 0 0
Observe that the transformation matrix is the same for normal and inverted orientations, and for left and right orientations. Therefor the corresponding commands need to be applied only when changing between orientations with different transformation matrix.
See also
- Thread in the Ubuntu Forums.
- Luke Ross' website