Popular Guides
View more guides at Linux Wiki Guides
This is a guide to running Linux with the Toshiba Qosmio F50-F55 laptop.
This guide is intended to provide you details on how well this laptop works with Linux and which modules you need to configure. For details on how to actually install and configure the required modules have a look at our guides section for distribution specific instructions.
Sami Racho
If you would like to edit this page please first view our Editing Guidelines.
| Name | Toshiba Qosmio F50-F55 |
| Processor | Intel Core 2 Duo |
| Screen | 15.4” WXGA+ Widescreen |
| RAM | 2GB to 4GB |
| HDD | 320GB |
| Optical Drive | DVD+-RW |
| Graphics | NVIDIA Geforce 9700M GTS |
| Network | Ethernet, Atheros 802.11bgn, Bluetooth |
| Device | Compatibility | Comments |
|---|---|---|
| Processor | Yes | |
| Screen | Yes | |
| HDD | Yes | |
| Optical Drive | Yes | |
| Graphics | Yes | Will need the proprietary NVIDIA driver |
| Sound | Yes | |
| Ethernet | Yes | |
| Wireless | Yes | Needs kernel 2.6.27 |
| Bluetooth | Yes | |
| USB | Yes | |
| Firewire | Yes | |
| Card Reader | Yes | |
| ExpressCard Slot | Not Tested | |
| Fingerprint Reader | Not Tested | |
| Camera | Yes | |
| Remote controller | Yes | With lirc from CVS |
| TV Tuner | Yes | Needs kernel 2.6.30 |
For full support from this laptop you will need to use a distribution which uses kernel version 2.6.27 or higher.
You need to install the proprietary NVIDIA package to get full support from the NVIDIA Geforce 9700M GTS.
As long as you are using an up to date Linux distribution (such as Fedora 10 or Ubuntu 8.10) and install the NVIDIA drivers, you shouldn't have too many issues with running Linux on the Toshiba Qosmio F50-F55.
(Solution for debian distros, it will run with minor changes on others)
1. On F50 Bluetooth is disable by default
2. Add the repositories (http://packages.kirya.net/) on sources.list:
gksu gedit /etc/apt/sources.list deb http://packages.kirya.net/debian/ sid main contrib non-free deb-src http://packages.kirya.net/debian/ sid main contrib non-free gpg --keyserver wwwkeys.eu.pgp.net --recv-keys E435C74B gpg --export -a E435C74B | apt-key add - sudo aptitude update
For other distros you have to download omnibook from sourceforge and compile it.
3. Install omnibook-source:
sudo aptitude install omnibook-source build-essential module-assistant gcc-3.4 linux-headers-generic
4. Use module assistant to install it ( you must repeat this step every time you update your kernel)
sudo m-a a-i omnibook-source
5. Add the module to /etc/modules:
gksu gedit /etc/modules omnibook
6. We make the setup for the module:
gksu gedit /etc/modprobe.d/omnibook.conf options omnibook ectype=14 userset=0 lcd=0 display=0 blank=0 battery=0 ac=0 bluetooth=1
7. Restart (if not we can load the module manually):
sudo modprobe omnibook ectype=14
It's done
8. To be able to receive files by bluetooth (Ubuntu 9.10)
sudo apt-get install gnome-user-share
In gnome
System>Preferences>Sharing files preferences>Receive bluetooth files to downloads folder
9. Script to start/stop Bluetooth
Open an editor and copy the script
gedit bluetooth.sh
#!/bin/bash #Mensajes de texto MESSAGE_1="ERROR: Tiene que ejecutar este script como administrador." MESSAGE_2="Ejemplo: sudo ./bluetooth.sh" MESSAGE_3="ERROR:Compruebe que el módulo Omnnibook está instalado correctamente" MESSAGE_4="Bluetooth activado correctamente" MESSAGE_5="Bluetooth desactivado correctamente" #Configuración de la ventana emergente WIN_TIMEOUT="2" SHOW_WIN="1" ROOT_UID="0" #Comprobar si el usuario es root if [ "$UID" -ne "$ROOT_UID" ] ; then echo $MESSAGE_1 echo $MESSAGE_2 if [ "$SHOW_WIN" -eq 1 ] ; then zenity --timeout=$WIN_TIMEOUT --warning --text==$MESSAGE_1 ; fi exit 1 fi #si el módulo omnibook está desactivado, lo activamos y viceversa if [ $(lsmod |grep -c "omnibook") -eq 0 ] ; then modprobe omnibook ectype=14 if [ $(lsmod |grep -c "omnibook") -eq 0 ] ; then echo $MESSAGE_3 if [ "$SHOW_WIN" -eq 1 ] ; then zenity --timeout=$WIN_TIMEOUT --warning --text="$MESSAGE_3" ; fi exit 1 else echo $MESSAGE_4 if [ "$SHOW_WIN" -eq 1 ] ; then zenity --timeout=$WIN_TIMEOUT --info --text="$MESSAGE_4" ; fi exit 0 fi else rmmod omnibook echo $MESSAGE_5 if [ "$SHOW_WIN" -eq 1 ] ; then zenity --timeout=$WIN_TIMEOUT --info --text="$MESSAGE_5" ; fi exit 0 fi
After we give execution permissions to the script
chmod 775 bluetooth.sh
(On Debian based distros. For others see point 7)
1. Install required packages
sudo apt-get install lirc lirc-modules-source
2. Edit the lirc setup files
sudo gedit /etc/lirc/hardware.conf
It must look like this
# /etc/lirc/hardware.conf # #Chosen Remote Control REMOTE="ENE KB3926 B/C/D (ENE0100) CIR port" REMOTE_MODULES="lirc_dev lirc_ene0100" REMOTE_DRIVER="default" REMOTE_DEVICE="/dev/lirc" REMOTE_SOCKET="/var/run/lirc/lircd" REMOTE_LIRCD_CONF="/etc/lirc/lircd.conf" REMOTE_LIRCD_ARGS="--permission=666" #Chosen IR Transmitter TRANSMITTER="None" TRANSMITTER_MODULES="" TRANSMITTER_DRIVER="" TRANSMITTER_DEVICE="" TRANSMITTER_SOCKET="" TRANSMITTER_LIRCD_CONF="" TRANSMITTER_LIRCD_ARGS="" #Enable lircd START_LIRCD=true #Don't start lircmd even if there seems to be a good config file START_LIRCMD="false" #Try to load appropriate kernel modules LOAD_MODULES="true" # Default configuration files for your hardware if any LIRCMD_CONF="" #Forcing noninteractive reconfiguration #If lirc is to be reconfigured by an external application #that doesn't have a debconf frontend available, the noninteractive #frontend can be invoked and set to parse REMOTE and TRANSMITTER #It will then populate all other variables without any user input #If you would like to configure lirc via standard methods, be sure #to leave this set to "false" FORCE_NONINTERACTIVE_RECONFIGURATION="false"
Now the remote controller (in my f50 laptop it's a Toshiba Model G83008A110
sudo gedit /etc/lirc/lircd.conf
Paste the following
# Please make this file available to others
# by sending it to <lirc@bartelmus.de>
#
# this config file was automatically generated
# using lirc-0.8.7-CVS(default) on Sat Apr 3 11:49:40 2010
#
# contributed by Sami Racho
#
# brand: Toshiba
# model no. of remote control: G83C0008A110
# devices being controlled by this remote: Thosiba Qosmio F50-10Q (ene0200 ir receiver)
#
begin remote
name Toshiba_G83C0008A110
bits 16
flags RC6|CONST_LENGTH
eps 30
aeps 100
header 2667 889
one 444 444
zero 444 444
pre_data_bits 21
pre_data 0x37FF0
gap 105000
toggle_bit 22
rc6_mask 0x100000000
begin codes
Blue 0x00007ba1
Yellow 0x00007ba2
Green 0x00007ba3
Red 0x00007ba4
Teletext 0x00007ba5
RecTV 0x00007bb7
Guide 0x00007bd9
LiveTV 0x00007bda
DVD 0x00007bdb
#NoGap
Back 0x00007bdc
OK 0x00007bdd
Right 0x00007bde
Left 0x00007bdf
Down 0x00007be0
Up 0x00007be1
#NoGap
Star 0x00007be2
Hash 0x00007be3
#NoGap
Replay 0x00007be4
Skip 0x00007be5
Stop 0x00007be6
Pause 0x00007be7
Record 0x00007be8
Play 0x00007be9
Rewind 0x00007bea
Forward 0x00007beb
#NoGap
ChanDown 0x00007bec
ChanUp 0x00007bed
VolDown 0x00007bee
VolUp 0x00007bef
#NoGap
Mute 0x00007bf1
Home 0x00007bf2
Power 0x00007bf3
#NoGap
Enter 0x00007bf4
Clear 0x00007bf5
#NoGap
Nine 0x00007bf6
Eight 0x00007bf7
Seven 0x00007bf8
Six 0x00007bf9
Five 0x00007bfa
Four 0x00007bfb
Three 0x00007bfc
Two 0x00007bfd
One 0x00007bfe
Zero 0x00007bff
end codes
end remote
The last version on repositories is 0.86. We have to modify the ene0100 driver to make it run with the ene0200 IR device that the F50 has.
3. Edit the lirc source code.
sudo gedit /usr/src/lirc-0.8.6/drivers/lirc_ene0100/lirc_ene0100.c
Below line 601 we add the following:
{.id = "ENE0200",},
So the function will look like
static const struct pnp_device_id ene_ids[] = {
{.id = "ENE0100",},
{.id = "ENE0200",},
{},
};
4. Recompile the lirc-source
sudo dpkg-reconfigure lirc-0.8.6
5.Edit the lirc startup script
sudo gedit /etc/init.d/lirc
Below line 135 ( after start) ) add:
if [ ! -e /dev/lirc ] then /bin/mknod /dev/lirc c 61 0 fi
6.Edit your .lircrc conf file
.lircrc file is in your home folder (in my case /home/sam )
I put mine as an example:
###################
# programas
###################
begin
button = Home
prog = irexec
repeat = 0
config = if [ $(ps -eo cmd | grep -c ^smplayer) -eq 0 ]; then (smplayer); fi
end
begin
button = Red
prog = irexec
repeat = 0
config = if [ $(ps -eo cmd | grep -c ^rhythmbox) -eq 0 ]; then (rhythmbox); fi
end
begin
button = Green
prog = irexec
repeat = 0
config = if [ $(ps -eo cmd | grep -c ^vlc) -eq 0 ]; then (vlc); fi
end
begin
button = Record
prog = irexec
repeat = 0
config = /etc/acpi/sleepbtn.sh
end
###################
#pulseaudio
###################
begin
prog = pulseaudio
config = mute-toggle
button = Mute
end
###################
# smplayer
###################
begin
button = ChanUp
prog = irexec
repeat = 0
config = if [ $(ps -eo cmd | grep -c ^smplayer) -eq 1 ]; then (smplayer -send-action inc_zoom); fi
end
begin
button = ChanDown
prog = irexec
repeat = 0
config = if [ $(ps -eo cmd | grep -c ^smplayer) -eq 1 ]; then (smplayer -send-action dec_zoom); fi
end
begin
button = Power
prog = irexec
repeat = 0
config = if [ $(ps -eo cmd | grep -c ^smplayer) -eq 1 ]; then (smplayer -send-action quit); fi
end
begin
button = Right
prog = irexec
repeat = 0
config = if [ $(ps -eo cmd | grep -c ^smplayer) -eq 1 ]; then (smplayer -send-action dvdnav_right); fi
end
begin
button = Left
prog = irexec
repeat = 0
config = if [ $(ps -eo cmd | grep -c ^smplayer) -eq 1 ]; then (smplayer -send-action dvdnav_left); fi
end
begin
button = Up
prog = irexec
repeat = 0
config = if [ $(ps -eo cmd | grep -c ^smplayer) -eq 1 ]; then (smplayer -send-action dvdnav_up); fi
end
begin
button = Down
prog = irexec
repeat = 0
config = if [ $(ps -eo cmd | grep -c ^smplayer) -eq 1 ]; then (smplayer -send-action dvdnav_down); fi
end
begin
button = Ok
prog = irexec
repeat = 0
config = if [ $(ps -eo cmd | grep -c ^smplayer) -eq 1 ]; then (smplayer -send-action dvdnav_select); fi
end
begin
button = LiveTV
prog = irexec
repeat = 1
config = if [ $(ps -eo cmd | grep -c ^smplayer) -eq 1 ]; then (smplayer -send-action fullscreen compact true); fi
end
begin
button = DVD
prog = irexec
repeat = 0
config = if [ $(ps -eo cmd | grep -c ^smplayer) -eq 1 ]; then (smplayer -send-action open_dvd); fi
end
begin
button = Teletext
prog = irexec
repeat = 0
config = if [ $(ps -eo cmd | grep -c ^smplayer) -eq 1 ]; then (smplayer -send-action subtitle_visibility); fi
end
begin
button = Play
prog = irexec
repeat = 0
config = if [ $(ps -eo cmd | grep -c ^smplayer) -eq 1 ]; then (smplayer -send-action play_or_pause); fi
end
begin
button = Stop
prog = irexec
repeat = 0
config = if [ $(ps -eo cmd | grep -c ^smplayer) -eq 1 ]; then (smplayer -send-action stop); fi
end
begin
button = Rewind
prog = irexec
repeat = 1
config = if [ $(ps -eo cmd | grep -c ^smplayer) -eq 1 ]; then (smplayer -send-action dec_speed); fi
end
begin
button = Forward
prog = irexec
repeat = 1
config = if [ $(ps -eo cmd | grep -c ^smplayer) -eq 1 ]; then (smplayer -send-action inc_speed); fi
end
begin
button = Replay
prog = irexec
repeat = 1
config = if [ $(ps -eo cmd | grep -c ^smplayer) -eq 1 ]; then (smplayer -send-action rewind2); fi
end
begin
button = Skip
prog = irexec
repeat = 1
config = if [ $(ps -eo cmd | grep -c ^smplayer) -eq 1 ]; then (smplayer -send-action forward2); fi
end
begin
button = VolUp
prog = irexec
repeat = 3
config = if [ $(ps -eo cmd | grep -c ^smplayer) -eq 1 ]; then (smplayer -send-action increase_volume); fi
end
begin
button = Voldown
prog = irexec
repeat = 3
config = if [ $(ps -eo cmd | grep -c ^smplayer) -eq 1 ]; then (smplayer -send-action decrease_volume); fi
end
#begin
# button = Mute
# prog = irexec
# repeat = 0
# config = if [ $(ps -eo cmd | grep -c ^smplayer) -eq 1 ]; then (smplayer -send-action mute); fi
#end
begin
button = Back
prog = irexec
repeat = 0
config = if [ $(ps -eo cmd | grep -c ^smplayer) -eq 1 ]; then (smplayer -send-action next_audio); fi
end
begin
button = One
prog = irexec
repeat = 0
config = if [ $(ps -eo cmd | grep -c ^smplayer) -eq 1 ]; then (smplayer -send-action aspect_4:3); fi
end
begin
button = Two
prog = irexec
repeat = 0
config = if [ $(ps -eo cmd | grep -c ^smplayer) -eq 1 ]; then (smplayer -send-action aspect_16:9); fi
end
begin
button = Three
prog = irexec
repeat = 0
config = if [ $(ps -eo cmd | grep -c ^smplayer) -eq 1 ]; then (smplayer -send-action aspect_16:10); fi
end
###################
# Rhythmbox
###################
begin
prog = Rhythmbox
button = Pause
config = playpause
end
begin
prog = Rhythmbox
button = Play
config = playpause
end
begin
prog = Rhythmbox
button = Stop
config = stop
end
begin
prog = Rhythmbox
button = Forward
config = seek_forward
end
begin
prog = Rhythmbox
button = Rewind
config = seek_backward
end
begin
prog = Rhythmbox
button = Skip
config = next
end
begin
prog = Rhythmbox
button = Replay
config = previous
end
begin
prog = rhythmbox
button = VolUp
config = volume_up
end
begin
prog = rhythmbox
button = VolDown
config = volume_down
end
#begin
#prog = rhythmbox
#button = Mute
#config = mute
#end
begin
prog = Rhythmbox
button = Power
repeat = 0
config = quit
end
###################
# VLC
###################
#en .config/vlc/vlcrc aádir la linea control=lirc
# Show OSD
begin
prog = vlc
button = Info
config = osd
end
# Pause playback
begin
prog = vlc
button = Pause
config = key-play-pause
end
# Play
begin
prog = vlc
button = Play
config = key-play
end
begin
prog = vlc
button = Rewind
config = key-jump-short
end
begin
prog = vlc
button = Forward
config = key-faster
end
# Stop playback and exit
begin
prog = vlc
button = Stop
config = key-quit
end
# Volume Down
begin
prog = vlc
button = VolDown
repeat = 3
config = key-vol-down
end
# Volume Up
begin
prog = vlc
button = VolUp
repeat = 3
config = key-vol-up
end
# Faster
begin
prog = vlc
button = ChanUp
config = key-faster
end
# Slower
begin
prog = vlc
button = ChanDown
config = key-slower
end
# Mute
#begin
#prog = vlc
#button = Mute
#config = key-vol-mute
#end
# Seek back 10 seconds
begin
prog = vlc
button = One
repeat = 3
config = key-jump-short
end
# Seek forward 10 seconds
begin
prog = vlc
button = Three
repeat = 3
config = key-jump+short
end
# Quit
begin
prog = vlc
button = Power
config = key-quit
end
# Seek forward 1 minute
begin
prog = vlc
button = Skip
repeat = 3
config = key-jump+medium
end
# Seek backward 1 minute
begin
prog = vlc
button = Replay
repeat = 3
config = key-jump-medium
end
# Seek forward 5 minutes
begin
prog = vlc
button = Six
repeat = 3
config = key-jump+long
end
# Seek backward 5 minutes
begin
prog = vlc
button = Four
repeat = 3
config = key-jump-long
end
# Position - shows where you are in the video
begin
prog = vlc
button = Info
config = key-position
end
# Subtitles
begin
prog = vlc
button = Teletext
config = key-subtitle-track
end
# Snapshots
#begin
#prog = vlc
#button = Record
#config = key-snapshot
#end
# Audio Sync'ing
# Audio Delay UP
begin
prog = vlc
button = Star
config = key-audiodelay-up
end
# Audio Delay DOWN
begin
prog = vlc
button = Hash
config = key-audiodelay-down
end
# Navigation Menu Up
begin
prog = vlc
button = Up
repeat = 3
config = key-nav-up
end
# Navigation Menu Down
begin
prog = vlc
button = Down
repeat = 3
config = key-nav-down
end
# Navigation Menu Right
begin
prog = vlc
button = Right
repeat = 3
config = key-nav-right
end
# Navigation Menu Left
begin
prog = vlc
button = Left
repeat = 3
config = key-nav-left
end
# Navigation Select
begin
prog = vlc
button = Ok
repeat = 3
config = key-nav-activate
end
#DVDMenu
begin
prog = vlc
button = DVD
config = key-disc-menu
end
With my .lircrc file you ned to execute irexec to use some functions.
I did it this way because the lirc modules will be recompiled automatically after a kernel update.
7. Other distros
You can download the last lirc version from the cvs, (follow the instructions on lirc.org to know what dependencies are needed to compile lirc)
You can use the same config files and the following lirc starting script to make it run.
sudo gedit /etc/init.d/lirc
Paste the following script:
#!/bin/bash
### BEGIN INIT INFO
# Provides: lircrc
# Required-Start: $local_fs $syslog
# Required-Stop: $local_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Script para ejecutar lirc para el driver ene0100, ene0200 y ene0201.
# Description: Lirc permite utilizar el mando a distancia por infrarojos.
### END INIT INFO
case "$1" in
start)
echo -n "Iniciando lirc..."
ARGS=' --output=/var/run/lirc/lircd --permission=666 --device=/dev/lirc /etc/lirc/lircd.conf'
if [ ! -e /dev/lirc ]
then
/bin/mknod /dev/lirc c 61 0
fi
if [ ! -d /var/run/lirc ]
then
mkdir /var/run/lirc
fi
start-stop-daemon --start --exec /usr/local/sbin/lircd -- $ARGS
echo " Hecho"
;;
stop)
echo -n "Parando lirc..."
start-stop-daemon --stop --exec /usr/local/sbin/lircd
echo " Hecho"
;;
*)
echo "Modo de uso: /etc/init.d/lircd {start|stop}"
exit 1
esac
exit 0
Give execution permissions:
sudo chmod 775 /etc/init.d/lirc
And with executing /etc/init.d/lirc start you will be able to use your remote controller.
Discussion
Hi,
I'm trying to follow your instructions for lirc (for the remote controller), for my Toshiba Qosmio f60-159 and Ubuntu 12.04, but no way. It seems that linux-modules-source is no longer available, so I don't know how to configure the module ene0200.
Please, any help?
Thanks for this tutorial, and thanks in advance,
Miguel
umm.. runnin 9.10 bluetooth and wireless NOT WORKIN!
reply me at sir508 at gmail dot com
Hi,
I've recently buyed a Toshiba Qosmio F50-10Q and I tried to make the Yuan MC770 DVB-T
work, operation which ended quite satisfactory.
I've published the patch at linuxtv.org mailing list:
http://www.linuxtv.org/pipermail/linux-dvb/2009-March/031958.html
I'm running Linux kernel 2.6.28 and the card reader of SD, MMC and MS works, but the XD not yet.
Best regards
Components which works with linux
Processor: yes
Screen: yes
HDD: yes
Optical Drive: yes
Graphics: yes
Sound: yes
Ethernet: yes
Wireless: yes
Bluetooth: yes
USB: yes
Firewire: yes
Cardreader: NOT TESTED
Expresscard Slot: NOT TESTED
Fingerprint Reader: NOT TESTED
Webcam: yes
TV Analog & Digital Device: NO DRIVERS FOUND YET