Difference between revisions of "Toshiba Tecra M4"

From ArchWiki
Jump to: navigation, search
(use https for links to archlinux.org)
(archive page)
(14 intermediate revisions by 5 users not shown)
Line 1: Line 1:
#redirect [[ArchWiki:Archive]]
The Tecra M4 is a convertible-PC produced by Toshiba.
Mine includes 512MByte of RAM, 60Gbyte SATA-HDD, NVidia 6200 graphics card and a serial Wacom tablet.
This will be a short introduction on how to make everything work perfectly.
This tutorial is a bit work in progress so stay tuned ;)
= Installation =
Just boot the ArchLinux Installation disc and install the basics
= Wireless drivers =
This PC contains an intel wireless card, that is supported by the [[ipw2200]].
Therefor run a
# pacman -S ipw2200-fw
and afterwards reload the ipw2200 driver.
= Installing Wacom Tablet =
Install xf86-input-wacom from AUR - if you installed aurpac like me:
  $ aurpac -S xf86-input-wacom
Now, you'll have to configure xorg.conf:
# X -configure
# cp /root/xorg.conf.new /etc/X11/xorg.conf
# nano -w /etc/X11/xorg.conf
The ServerLayout Section should look like this:
Section "ServerLayout"
Identifier      "Default Layout"
Screen "Screen0"
Inputdevice    "cursor" "SendCoreEvents"
Inputdevice    "stylus" "SendCoreEvents"
Inputdevice    "eraser" "SendCoreEvents"
Identifier    "X.org Configured"
Screen      0  "Screen0" 0 0
InputDevice    "Mouse0" "CorePointer"
InputDevice    "Keyboard0" "CoreKeyboard"
        InputDevice    "Touchpad" 
In section "Module" add
Load  "synaptics"
The Input-Sections:
Section "InputDevice"
  Driver          "wacom"
  Identifier      "cursor"
  Option          "Device" "/dev/ttyS0"
  Option          "Type" "cursor"
  Option          "ForceDevice" "ISDV4"
  Option          "Rotate" "NONE"
Section "InputDevice"
  Driver          "wacom"
  Identifier      "stylus"
  Option          "Device" "/dev/ttyS0"
  Option          "Type" "stylus"
  Option          "ForceDevice" "ISDV4"
  Option          "Rotate" "NONE"
Section "InputDevice"
  Driver          "wacom"
  Identifier      "eraser"
  Option          "Device" "/dev/ttyS0"
  Option          "Type" "eraser"
  Option          "ForceDevice" "ISDV4"
  Option          "Rotate" "NONE"
This is my Input-Section for the touchpad
Section "InputDevice"
  Identifier  "Synaptics Touchpad"
  Driver      "synaptics"
  Option      "AlwaysCore"        "true"  # send events to CorePointer
  Option      "Device"            "/dev/psaux"
  Option      "Protocol"          "auto-dev"
  Option      "SHMConfig"        "false" # configurable at runtime? security risk
  Option      "LeftEdge"          "1700"  # x coord left
  Option      "RightEdge"        "5300"  # x coord right
  Option      "TopEdge"          "1700"  # y coord top
  Option      "BottomEdge"        "4200"  # y coord bottom
  Option      "FingerLow"        "25"    # pressure below this level triggers release
  Option      "FingerHigh"        "30"    # pressure above this level triggers touch
  Option      "MaxTapTime"        "180"  # max time in ms for detecting tap
  Option      "VertEdgeScroll"    "true"  # enable vertical scroll zone
  Option      "HorizEdgeScroll"  "true"  # enable horizontal scroll zone
  Option      "CornerCoasting"    "true"  # enable continuous scroll with finger in corner
  Option      "CoastingSpeed"    "0.30"  # corner coasting speed
  Option      "VertScrollDelta"  "100"  # edge-to-edge scroll distance of the vertical scroll
  Option      "HorizScrollDelta"  "100"  # edge-to-edge scroll distance of the horizontal scroll
  Option      "MinSpeed"          "0.10"  # speed factor for low pointer movement
  Option      "MaxSpeed"          "0.60"  # maximum speed factor for fast pointer movement
  Option      "AccelFactor"      "0.0020"    # acceleration factor for normal pointer movements
  Option      "VertTwoFingerScroll"  "true"  # vertical scroll anywhere with two fingers
  Option      "HorizTwoFingerScroll"  "true"  # horizontal scroll anywhere with two fingers
  Option      "TapButton1" "1"
  Option      "TapButton2" "2"
  Option      "TapButton3" "3"
My Device Section
Section "Device"
Identifier  "Card0"
Option "NoLogo" "1" # I do not like the NVidia Logo
Option "RandRRotation" "true" # making it possible to rotate the screen
Option "Coolbits" "1"
Option "RegistryDwords" "PerfLevelSrc=0x3333" # for saving battery lifetime
Driver      "nvidia"
VendorName  "nVidia Corporation"
BoardName  "NV43 [Geforce Go 6600TE/6200TE]"
BusID      "PCI:1:0:0"
= Optimizing battery lifetime =
== CPUFreq ==
Just install [[cpufrequtils]]
== PHC ==
I reduced VCores to make my battery live longer:
install intel-phc and linux-phc-optimize from AUR
$ aurpac -S intel-phc linux-phc-optimize
then run
# linux-phc-optimize
remember the original and the optimized values - you'll need them ;)
then I created the following script /etc/rc.d/phc
case "$1" in
    stat_busy "Optimizing PHC VIDs"
    echo "'''14:21 12:15 10:9 8:4 6:3'''" > /sys/devices/system/cpu/cpu0/cpufreq/phc_controls
    stat_busy "Resetting PHC VIDs"
    echo "'''14:41 12:36 10:30 8:24 6:18'''" > /sys/devices/system/cpu/cpu0/cpufreq/phc_controls
    $0 stop
    sleep 1
    $0 start
    echo "usage: $0 {start|stop|restart}" 
exit 0
the bold passages are the optimized and original values - these are for my Pentium M 1,86GHz
the formate is the following:
14:value_for_full_speed 12:value_for_speed2 10:value_for_speed3
etc etc
in the "Optimizing" part insert the optimized values and in the "Resetting" part the original values.
= Mapping screen-key to something that makes sense =
by default, the buttons on the screen return the combinations
Super_L + [1-7]
I prefer this tiny joystick to use as page up and page down - so I tried xmodmap
$ nano -w .Xmodmap
change the line of keycode 134 to
keycode 134 = Mode_switch NoSymbol Mode_switch NoSymbol Super_R
and the following lines:
keycode  10 = 1 exclam Prior Prior onesuperior exclamdown
keycode  11 = 2 quotedbl Next Next twosuperior oneeighth
keycode  12 = 3 section Prior Prior threesuperior sterling
keycode  13 = 4 dollar Next Next onequarter currency
that produces:
tablet is landscape and orientation "normal" - joystick up -> page up, down -> page down
tablet is portrait and orientation "left" - joystick up -> page up, down -> page down
= Script for changing orientation =
# nano -w /usr/bin/rotate
#### rotate.sh - A script for tablet PCs to rotate the display.
## This software is licensed under the CC-GNU GPL.
## http://creativecommons.org/licenses/GPL/2.0/
## https://wiki.archlinux.org/index.php/Tablet_PC
## REQUIRES: linuxwacom (http://sourceforge.net/apps/mediawiki/linuxwacom/index.php?title=Main_Page)
#### Function(s)
function set_normal {
  xrandr -o normal
  xsetwacom set "stylus" Rotate NONE
  xsetwacom set "cursor" Rotate NONE
  xsetwacom set "eraser" Rotate NONE
function set_left {
  xrandr -o left
  xsetwacom set "stylus" Rotate CCW
  xsetwacom set "cursor" Rotate CCW
  xsetwacom set "eraser" Rotate CCW
#### Variable(s)
orientation="$(xrandr --query --verbose | grep '(normal left inverted right) 0mm x 0mm' | awk '{print $5}')"
#### Main
if [ "$orientation" = "normal" ]; then
elif [ "$orientation" = "right" ]; then
elif [ "$orientation" = "inverted" ]; then
elif [ "$orientation" = "left" ]; then
#### EOF
# chmod 0755 /usr/bin/rotate
I customized the given script a bit, because turning right and inverted made no sense for me.
This script can now be used with gnome-keybinding-properties
= What does not work =
* Mapping joystick to page_up/down AND using the rotate button in gnome-keybinding-properties at the same time
* sound does work, if you reload the snd_intel8x0 module after boot - do not know, why

Latest revision as of 08:59, 26 November 2017

Redirect to: