Difference between revisions of "Lenovo ThinkPad Helix"

From ArchWiki
Jump to: navigation, search
(update link(s) (avoid redirect))
(significant rewrite/update, i recently got this machine)
Line 1: Line 1:
 
[[Category:Lenovo]]
 
[[Category:Lenovo]]
== Model description ==
+
{| class="wikitable"
 +
|+ Hardware Information
 +
! Form Factor
 +
| Tablet/Ultrabook Convertible (detachable keyboard dock)
 +
|-
 +
! Display
 +
| 11.6" 1920x1080 LCD with Capacitive and Pen Digitisers
 +
|-
 +
! CPU
 +
| 3rd Generation (Ivy Bridge) Core i5-3427U or i7-3667U
 +
|-
 +
! RAM
 +
| 4GiB (i5) or 8GiB (i7) DDR3L RAM (dependent upon CPU)
 +
|-
 +
! Storage
 +
| 128/160/256GB mSATA SSD
 +
|-
 +
! WiFi
 +
| Intel Centrino Advanced-N 6205S mPCI WLAN
 +
|-
 +
! Bluetooth
 +
| Broadcom BCM20702 Bluetooth 4.0 (USB connected)
 +
|-
 +
! Camera
 +
| 5MP Rear and 2MP Front (also USB)
 +
|}
  
Lenovo ThinkPad Helix, 3rd Generation Core i5/i7
+
== Installation ==
This model comes without optical drive,.
 
Has UEFI BIOS with BIOS-legacy fallback mode.
 
Has Windows 8 pre-installed.
 
  
== Installation method ==
+
{{Note|As this model includes no physical recovery media, it's highly recommended to create a Windows reinstallation flash drive just in case using the recovery media creation tool included with your preinstalled Windows system.}}
 
 
{{Note|If you'd like to create Windows recovery flash drive, do it before Arch installation with the help of autorun located at recovery partition, from your installed Windows system.}}
 
  
 
Due to the fact that there is no optical drive, you need to [[USB Installation Media|install Arch from USB stick]].
 
Due to the fact that there is no optical drive, you need to [[USB Installation Media|install Arch from USB stick]].
  
=== Legacy-BIOS ===
+
The Arch install media will happily boot under UEFI, so it is recommended to disable legacy boot in the system setup utility. If legacy boot is needed for some reason, it does work fine as well.
 
 
This procedure is far less involved then UEFI and works perfectly.
 
 
 
In order to turn off UEFI booting you will need to boot into your BIOS and change the boot mode to Legacy. Afterward, follow the [[Beginners' guide]] for standard installation instructions.
 
 
 
=== UEFI ===
 
  
Installation from UEFI bootable USB works with the default bootloader, so rEFInd is unnecessary. In the BIOS under Startup, set "UEFI/Legacy Boot" to UEFI only.
+
Booting using [[Gummiboot]] works perfectly. Again, if legacy boot is needed, GRUB-BIOS is perfectly functional as well.
The default partition table (and Windows installation) uses MBR. For UEFI, reformat the disk as GPT.
 
  
Booting using an [[UEFI Bootloaders#Using efibootmgr entry|efibootmgr entry]] works well. The warnings about incompatibility and embedding arguments to do not apply.
+
== Hardware Configuration ==
  
== Hardware ==
+
To fully support all hardware in X, one needs to ensure that the following driver packages are installed:
  
Almost everything works out of the box except for bluetooth, and the wacom screen due to the digitizer; the helix uses the Atmel Atmel maXTouch Digitizer. although this isn't a wacom digitizer it does work with the wacom drivers, you just have to tell it to.
+
*{{Pkg|xf86-input-synaptics}} (for the clickpad)
 +
*{{Pkg|xf86-input-wacom}} (for the digitisers)
 +
*{{Pkg|xf86-video-intel}} (for the GPU)
  
Make sure to install {{ic|xf86-input-wacom}}
+
Nearly everything works fine with no special configuration. The sensors (accelerometer, gyroscope, magnetometer, ambient light sensor) don't seem to be recognised yet.
  
=== Wacom ===
+
=== Digitisers ===
  
Make sure you check that the screen does in fact use the Atmel digitizer with {{ic|xinput}} or {{ic|lsusb}} then update the xorg configuration:
+
The pen digitiser should be recognised by the wacom driver out of the box. The capacitive (touch) digitiser works with the same driver, but is not recognised as compatible by default. To fix this, add Atmel to the first MatchProduct entry in the wacom driver configuration file:
  
 
{{hc|/etc/X11/xorg.conf.d/50-wacom.conf|
 
{{hc|/etc/X11/xorg.conf.d/50-wacom.conf|
Line 42: Line 57:
 
     MatchDevicePath "/dev/input/event*"
 
     MatchDevicePath "/dev/input/event*"
 
     Driver "wacom"
 
     Driver "wacom"
EndSection
 
 
Section "InputClass"
 
    Identifier "Wacom serial class"
 
    MatchProduct "Serial Wacom Tablet"
 
    Driver "wacom"
 
EndSection
 
 
Section "InputClass"
 
    Identifier "Wacom serial class identifiers"
 
    MatchProduct "WACf|FUJ02e5|FUJ02e7|FUJ02e9"
 
    Driver "wacom"
 
EndSection
 
 
# Waltop tablets
 
Section "InputClass"
 
    Identifier "Waltop class"
 
    MatchProduct "WALTOP"
 
    MatchIsTablet "on"
 
    MatchDevicePath "/dev/input/event*"
 
    Driver "wacom"
 
EndSection
 
 
# N-Trig Duosense Electromagnetic Digitizer
 
Section "InputClass"
 
    Identifier "Wacom N-Trig class"
 
    MatchProduct "HID 1b96:0001|N-Trig Pen"
 
    MatchDevicePath "/dev/input/event*"
 
    Driver "wacom"
 
    Option "Button2" "3"
 
EndSection
 
 
Section "InputDevice"
 
    Driver "wacom"
 
    Identifier "stylus"
 
    Option "USB" "on"
 
    Option "Device" "/dev/input/wacom"
 
    Option "Type" "stylus"
 
    Option "Threshold" "5"
 
    Option        "Mode"        "Relative"
 
EndSection
 
 
Section "InputDevice"
 
    Driver        "wacom"
 
    Identifier    "eraser"
 
Option "USB" "on"
 
    Option        "Device"      "/dev/input/wacom" 
 
    Option        "Type"        "eraser"
 
    Option        "Mode"        "Relative"
 
    Option        "Threshold"    "5" 
 
EndSection
 
 
Section "InputDevice"
 
    Driver        "wacom"
 
    Identifier    "cursor"
 
    Option "USB" "on"
 
    Option        "Device"      "/dev/input/wacom" 
 
    Option        "Type"        "cursor"
 
    Option        "Mode"        "Relative"
 
 
EndSection
 
EndSection
 
}}
 
}}
  
Notice that I added Atmel to the MatchProduct entry in the first section.
+
Everything should work after a reboot.
Also notice the three input devices at the bottom stylus, eraser, and cursor.
 
 
 
After a reboot if listing wacom devices comes up empty, refer to [[Wacom Tablet]] to manually confugure. Upon rebooting I had a soft link to the proper input in /dev/input/ if setting up manually make sure your device option in the above config points to the proper event.
 
 
 
To list wacom devices run:
 
 
 
{{bc|xsetwacom --list devices}}
 
 
 
Once you have that set up and your devices are being listed you should have full wacom functionality including pressure sensitivty. I tested this with xournal for note taking, and mypaint/gimp.
 
  
===Bluetooth===
+
If you find yourself frustrated by the capacitive digitiser while trying to use the pen, you may have interest in the {{AUR|thinkpad-helix-utils}} package. It contains a script, {{ic|helix-toggle-touch}}, which will toggle the capacitive digitiser on and off with a simple command.
  
If there is no HCI device, it's because you need to turn it on first:
+
=== Screen Rotation ===
 
 
{{bc|echo 1 > /sys/devices/platform/thinkpad_acpi/bluetooth_enable}}
 
 
 
but that's a deprecated interface; another way is
 
 
 
{{bc|echo 1 > /sys/devices/platform/thinkpad_acpi/rfkill/rfkill0/state}}
 
 
 
===Trackpad===
 
If you cannot get the synaptics driver to recognize a 3-finger click, this bug is probably the culprit:  https://bugs.freedesktop.org/show_bug.cgi?id=55365  You can fix it by commenting out the call to clickpad_guess_clickfingers in the synaptics driver:
 
 
 
{{hc|fixing synaptics manually|
 
git clone git://anongit.freedesktop.org/xorg/driver/xf86-input-synaptics
 
vi src/synaptics.c
 
./autogen.sh
 
make
 
sudo make install
 
}}
 
 
 
It will be installed in /usr/local/lib/xorg/modules/input by default, though.
 
 
 
===Screen Rotation===
 
 
 
The next issue was how to rotate the screen when in tablet modes. Well there are two ways to do this, the first is [https://launchpad.net/magick-rotation/ Magick Rotate] an originally Ubuntu based auto rotation utility. It does setup automatic rotation based on events and detaching the screen triggered the rotation.
 
 
 
If you don't want the screen to automatically rotate, you can manually do it through side buttons or an icon using this script:
 
{{hc|Screen rotation script|
 
#!/bin/sh
 
 
 
#Gets the current mode of the screen
 
mode="$(xrandr -q --verbose | grep 'connected' | egrep -o '\) (normal|left|inverted|right) \(' | egrep -o '(normal|left|inverted|right)')"
 
 
 
case "$mode" in
 
  normal)
 
  #toggle rotate to the left
 
  xrandr -o left
 
  xsetwacom set "Atmel Atmel maXTouch Digitizer touch" Rotate ccw
 
  xsetwacom set "Wacom ISDv4 EC Pen stylus" Rotate ccw
 
  xsetwacom set "Wacom ISDv4 EC Pen eraser" Rotate ccw
 
  ;;
 
  left)
 
  #toggle rotate to normal
 
  xrandr -o normal
 
  xsetwacom set "Atmel Atmel maXTouch Digitizer touch" Rotate none
 
  xsetwacom set "Wacom ISDv4 EC Pen stylus" Rotate none
 
  xsetwacom set "Wacom ISDv4 EC Pen eraser" Rotate none
 
  ;;
 
esac
 
}}
 
  
First it grabs the current rotation, and will then toggle the state between left and normal states. Feel free to add to this for inverted or right rotations as well.
+
If you have both digitisers configured through the xf86-input-wacom driver, they will automatically rotate with the display and you can use a simple command like {{ic|xrandr --output eDP1 --rotate left}} to rotate the screen with ease.
  
Using {{ic|xsetwacom --list devices}} rename the wacom devices in the script.
+
There is also [https://launchpad.net/magick-rotation/ Magick Rotation], which is supposed to automatically rotate the screen based on input events, but it only seems to respond to docking/undocking the tablet.
  
===Screen brightness and ambient light sensor===
+
=== Bluetooth ===
This machine has an ambient light sensor, but it's not showing up as an ACPI device yet.  [https://wiki.archlinux.org/index.php/Backlight#Calise Calise] is one alternative for managing the screen brightness using the camera to detect ambient light.
 
  
You can control the brightness by writing various numbers into /sys/class/backlight/acpi_video0/brightness, however the firmware seems to ignore values which are not multiples of 5.  It's probably for the same reason that when using the Fn+F5/F6 keys to decrement/increment the brightness, it takes some time for the key repeat to hit one of the values that triggers a brightness change.
+
If the Broadcom USB device isn't showing up, you likely need to turn it on with {{ic|echo 1 > /sys/devices/platform/thinkpad_acpi/rfkill/rfkill0/state}}

Revision as of 02:57, 2 July 2014

Hardware Information
Form Factor Tablet/Ultrabook Convertible (detachable keyboard dock)
Display 11.6" 1920x1080 LCD with Capacitive and Pen Digitisers
CPU 3rd Generation (Ivy Bridge) Core i5-3427U or i7-3667U
RAM 4GiB (i5) or 8GiB (i7) DDR3L RAM (dependent upon CPU)
Storage 128/160/256GB mSATA SSD
WiFi Intel Centrino Advanced-N 6205S mPCI WLAN
Bluetooth Broadcom BCM20702 Bluetooth 4.0 (USB connected)
Camera 5MP Rear and 2MP Front (also USB)

Installation

Note: As this model includes no physical recovery media, it's highly recommended to create a Windows reinstallation flash drive just in case using the recovery media creation tool included with your preinstalled Windows system.

Due to the fact that there is no optical drive, you need to install Arch from USB stick.

The Arch install media will happily boot under UEFI, so it is recommended to disable legacy boot in the system setup utility. If legacy boot is needed for some reason, it does work fine as well.

Booting using Gummiboot works perfectly. Again, if legacy boot is needed, GRUB-BIOS is perfectly functional as well.

Hardware Configuration

To fully support all hardware in X, one needs to ensure that the following driver packages are installed:

Nearly everything works fine with no special configuration. The sensors (accelerometer, gyroscope, magnetometer, ambient light sensor) don't seem to be recognised yet.

Digitisers

The pen digitiser should be recognised by the wacom driver out of the box. The capacitive (touch) digitiser works with the same driver, but is not recognised as compatible by default. To fix this, add Atmel to the first MatchProduct entry in the wacom driver configuration file:

/etc/X11/xorg.conf.d/50-wacom.conf
Section "InputClass"
    Identifier "Wacom class"
    MatchProduct "Wacom|WACOM|Hanwang|PTK-540WL|Atmel"
    MatchDevicePath "/dev/input/event*"
    Driver "wacom"
EndSection

Everything should work after a reboot.

If you find yourself frustrated by the capacitive digitiser while trying to use the pen, you may have interest in the thinkpad-helix-utilsAUR package. It contains a script, helix-toggle-touch, which will toggle the capacitive digitiser on and off with a simple command.

Screen Rotation

If you have both digitisers configured through the xf86-input-wacom driver, they will automatically rotate with the display and you can use a simple command like xrandr --output eDP1 --rotate left to rotate the screen with ease.

There is also Magick Rotation, which is supposed to automatically rotate the screen based on input events, but it only seems to respond to docking/undocking the tablet.

Bluetooth

If the Broadcom USB device isn't showing up, you likely need to turn it on with echo 1 > /sys/devices/platform/thinkpad_acpi/rfkill/rfkill0/state