Introduction
|
This guide is meant to help get the Gigabyte T1005 netbook working with Ubuntu 11.04.
Summary
What works out the box
- Graphics
- Sound
- Bluetooth
- Special keys on the keyboard
- eSata
- Card Reader
- 3G (standard PCI Express mini card, tested Ericsson F5521gw for Lenovo)
Fixes available
- Touchpad
- Sleep/Hibernate fail
- Sleep on Power removal
- Touchscreen when rotating screen
- Side Hard Button (battery level/SmartManager in Windows)
Keyboard keys get "stuck" Bug 769103
Unresolved Problems
- Lid Button registers as permanently closed
Not Tested
- usb 3
- external VGA
Solutions
Touchpad
Modify /etc/defaults/grub and modify the "splash quiet" line by including 'i8042.noloop=1'. Afterwards run update-grub2. You can test this by adding 'i8042.noloop=1' in the grub menu at boot. (From this post) See bug #737482.
Sleep/Hibernate fail
This is related to the USB 3 not unbinding (see this thread)
- In /etc/pm/sleep.d create a new script: 20_custom-xhci_hcd
# File: "/etc/pm/sleep.d/20_custom-xhci_hcd". case "${1}" in hibernate|suspend) # Unbind xhci_hcd for first device 0000:02:00.0: echo -n "0000:02:00.0" | tee /sys/bus/pci/drivers/xhci_hcd/unbind ;; resume|thaw) # Bind xhci_hcd for first device 0000:02:00.0: echo -n "0000:02:00.0" | tee /sys/bus/pci/drivers/xhci_hcd/bind ;; esac
Sleep on Power removal
This is a symptom of Lid Button registers as permanently closed. The default power setting is to sleep on lid close when on battery so when the power is removed the computer sleeps. Disable sleep on lid close in System > Preferences > Power Management by change When Laptop Lid is Closed from suspend to blank.
Touchscreen when rotating screen
Use xrandr -o [normal,right,inverted,left] to rotate the screen
Use xinput set-prop to rotate the Touchscreen to match
Find the touchscreen device number with xinput list|grep Cando | grep -o 'id=[0-9]*' | sed 's/id=//' e.g. 10
- Use:
- normal:
xrandr -o normal && xinput set-prop 10 "Coordinate Transformation Matrix" 1, 0, 0, 0, 1, 0, 0, 0, 1
- right:
xrandr -o right && xinput set-prop 10 "Coordinate Transformation Matrix" 0, 1, 0, -1, 0, 1, 0, 0, 1
- inverted:
xrandr -o inverted && xinput set-prop 10 "Coordinate Transformation Matrix" -1, 0, 1, 0, -1, 1, 0, 0, 1
- left:
xrandr -o left && xinput set-prop 10 "Coordinate Transformation Matrix" 0, -1, 1, 1, 0, 0, 0, 0, 1
- normal:
Side hard button (SmartManager)
You can get the button to work using gb-wmi DKMS module which is hosted on https://launchpad.net/~ivzave/+archive/gigabyte. To install open a terminal and enter following commands:
sudo apt-add-repository ppa:ivzave/gigabyte sudo apt-get update sudo apt-get install gb-wmi
Reboot to load the module (it will be loaded automatically on system boot) or manually start it:
sudo modprobe gb-wmi
Then you can bind the button to any action of your choice (e.g. screen rotation) using System Settings > Keyboard > Hotkeys.
Keyboard
Use System > Preferences > Keyboard and uncheck Repeat Keys This will prevent multiple key presses when a key gets "stuck". See Bug 769103 for a better workaround that makes autorepeat work almost as expected.
Touchscreen configuration (T1005P only)
Device is equipped with IDEACOM IDC 6650 touchscreen. Ubuntu uses synaptics driver for it by default, which doesn't fit well. Alternative is evdev driver which (after some patching) works well and handles single touch (bug #811227).
- Modify (or create) /etc/X11/xorg.conf adding the following lines:
Section "InputClass" Identifier "IDC 6650" MatchProduct "IDC 6650" MatchDevicePath "/dev/input/event*" Driver "evdev" Option "SHMConfig" "true" Option "SendCoreEvents" "true" EndSection
- get source code for evdev: apt-get source xserver-xorg-input-evdev
- install packages needed for compilation: sudo apt-get install xserver-xorg-dev
- open evdev.c file, find and comment out lines as follow:
/*if (has_lmr || TestBit(BTN_TOOL_FINGER, pEvdev->key_bitmask)) { xf86Msg(X_PROBED, "%s: Found absolute touchpad.\n", pInfo->name); pEvdev->flags |= EVDEV_TOUCHPAD; memset(pEvdev->old_vals, -1, sizeof(int) * pEvdev->num_vals); } else*/ { xf86Msg(X_PROBED, "%s: Found absolute touchscreen\n", pInfo->name); pEvdev->flags |= EVDEV_TOUCHSCREEN; pEvdev->flags |= EVDEV_BUTTON_EVENTS; }
./configure && make && sudo make install
- copy resulting file evdev_drv.so from /usr/local/lib/xorg/modules/input/ to /usr/lib/xorg/modules/input
To Do
Getting Multitouch to work using utouch and ginn. See bug #773138.
Suggestions
If you have any solutions please update this page or send them to XRayA4T