How I did Install Ubuntu Gutsy 7.10 in a Toshiba M700 (tablet PC)

This is a brief note of my experience with the installation of Ubuntu 7.10 in a Toshiba M700. Before I have used an HP TC1100 tablet, which has  not a good Linux hardware compatibility. This Toshiba M700 tablet PC is really very very nice!
 
Lately, I have found  the Wiki webpage where how to install Ubuntu in a Toshiba tablet M700 is explained from a to z : https://wiki.ubuntu.com/LaptopTestingTeam/ToshibaPortegeM700 .

What works: graphics, network, pen with screen rotation, DVD-RW, sound, bluetooth
What yet does not work: modem
What I have not tried: all the rest

Remark
Note that with newer Ubuntu versions, more features will work out of the box - see the wiki.ubuntu.com page cited earlier.


1) Disk partition
Toshiba M700 comes with a 120GB hard disk (in Canada). The disk comes with 4 primary partitions.  I choosed to keep Windows Vista.   The partitions 1, 2, 4 are needed for Vista.

To make larger space for Linux I resized the 2nd partition to 25GB (you can use 'disk management' tool coming with Vista, or 'ntfsresize' and 'fdisk' see here, or better, use the disk partitioner while installing Ubuntu)  and I used for Linux the space left from 2nd partition together with the space of 3rd partition (around 90GB). The space created, now refered as 3rd partition, I partitioned as follows:

4G for swap
25 GB for /
the rest for /home

2) Installing Linux
I installed Ubuntu 7.10 straight from the CD, and I got a pretty decent working system. Namely, graphics (mouse, touchpad, keyboard) and network (wired and wireless), DVD-RW work fine out of the box. Pretty good to start with. The pen does not work, neither the sound, nor the modem. I haven't tried the other devices.

3) Installing the pen
a) First I checked that the packages

    xserver-xorg-input-wacom, wacom-kernel-source, wacom-tools, setserial

are installed.

b) Next I added the line

        /bin/setserial /dev/ttyS0 port 0x338 autoconfig

at the end of "/etc/rc.local" file.

c) In the file "/etc/X11/xorg.conf" I changed

         /dev/input/wacom (or whatever)
to
         /dev/ttys0

With these actions the pen worked fine after a restart.

4) Rotate the screen.
I used the following scripts (I found them in internet)

#!/bin/bash
# Tablet PC Mode Script 'portrait-CCW'
# Move this script to /usr/local/bin
# Then run 'sudo chmod +x portrait-CCW'
# Be sure landscape is installed as well
xrandr -o left
xsetwacom set "stylus" Rotate CCW
xsetwacom set "cursor" Rotate CCW
xsetwacom set "eraser" Rotate CCW
exit 0

I saved this script file as "/usr/local/bin/portrait-CCW" and I run 'sudo chmod +x /usr/local/bin/portrait-CCW' to make it executable. The second script is

#!/bin/bash
# Tablet PC Mode Script 'portrait-CW'
# Move this script to /usr/local/bin
# Then run 'sudo chmod +x portrait-CW'
# Be sure landscape is installed as well
xrandr -o right
xsetwacom set "stylus" Rotate CW
xsetwacom set "cursor" Rotate CW
xsetwacom set "eraser" Rotate CW
exit 0

I saved this script file as "/usr/local/bin/portrait-CW" and I run 'sudo chmod +x /usr/local/bin/portrait-CW' to make it executable. The last script is

#!/bin/bash
# Laptop Mode Script 'landscape'
# Move this script to /usr/local/bin
# Then run 'sudo chmod +x landscape'
# Reverses the effects of portrait mdes
xrandr -o normal
xsetwacom set "stylus" Rotate none
xsetwacom set "cursor" Rotate none
xsetwacom set "eraser" Rotate none
exit 0

I saved it as "/usr/local/bin/landscape" and I made it executable.

Next, in the section "Device" of "xorg.conf" I added the lines

Option "RandRRotation" "True"     # to allow xserver to rotate the screen
Option "DRI" "False"                        # to eliminate random behavior of the mouse and the windows

In the "stylus" section I added

Option "PressCurve"     "50,0,100,50"
Option "Button2"            "3"
Option "Button1"           "1"

In the section "cursor" I added

Option "Button2"            "3"
Option "Button1"            "1"

and in the section "eraser" I added

Option "Button1"     "2"

I run "portrait-CCW", "portrait-CW" to rotate the screen at portrait mode, and "landscape" to bring it to normal position. I actually added a drawer to the panel and attached three applications, one for each of scripts. This works like a charm.

Here is my xorg.conf file.


5) Sound
Be sure that your linux backports modules are installed. You can type
    uname -a
to find the kernel you are using (a typical output will be like
    'Linux galois 2.6.22-15-generic #1 SMP Tue Jun 10 09:21:34 UTC 2008 i686 GNU/Linux').
Then, you should install the package 'linux-backports-modules-2.6.22-15-generic'.

Next, add the line
   
options snd-hda-intel model=toshiba
at the end of /etc/modprobe.d/alsa-base. Finally, restart and the sound should work.


6) Bluetooth
This device works perfectly. Probably, it works out of the box. I don't remember exactly what I have done but here are a few steps that I'm sure I did follow.

- Install the packages
    bluez-utils, gnome-bluetooth
  
sudo apt-get install gnome-bluetooth

- Restart your bluetooth device
    sudo /etc/init.d/bluetooth restart

- Turn on/off bluetooth device by pressing
    Fn+F8


I did have the good surprise even to connect my Nokia 6120c handest using bluetooth device. I did several things to make this work and I don't remember the steps, but it works fine - I can read the memory of the phone, as well as the memory card, I can transfer files from PC to phone and vice-versa.

I remember that the connection with my Nokia 6120c worked well after I followed this webpage
    http://news.softpedia.com/news/Connect-to-the-Internet-from-Anywhere-Using-a-GPRS-Connection-50670.shtml

7) Modem
The modem is winmodem Si3054 ALSA. It seems the modem is not yet supported though recognized by the driver.  I performed these steps, without success ...
 
a) I installed the packages

       sl-modem-source, sl-modem-daemon

b) I run at command promt

    sudo slmodemd -c YOUR-COUNTRY --alsa hw:0,6
 
c) and I configured the modem by running

    sudo wvdialconfig

d) I edited the file /etc/wvdial.conf

and I run wvdial command. But I got the error message

WvDial<*1>: WvDial: Internet dialer version 1.56
WvModem<*1>: Cannot get information for serial port.
WvDial<*1>: Initializing modem.
WvDial<*1>: Sending: ATZ
WvDial Modem<*1>: ATZ
WvDial Modem<*1>: OK
WvDial<*1>: Sending: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
WvDial Modem<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
WvDial Modem<*1>: OK
WvDial<*1>: Modem initialized.
WvDial<*1>: Sending: ATDT6135626801
WvDial<*1>: Waiting for carrier.
WvDial Modem<*1>: ATDT6135626801
WvDial Modem<*1>: NO CARRIER
WvDial Modem<*1>: ERROR
WvDial<Warn>: No Carrier!  Trying again.
....


7) Other devices

I have not yet considered any other devices.