ubuntu 11.04 64bit su K53SV[Aggiornato]

Voglio condividere con voi questa nuova esperienza. Come avere tutto funzionante sul K53SV su ubuntu 11.04. Premetto che bisogna un po’ conoscere come muoversi, ma neanche poi tantissimo! Allora, appena installato dovrebbe andare quasi tutto eccetto, tasti funzione, l’optimus(switch tra scheda video integrata e discreta), touchpad.

Prima di iniziare, installate TUTTI gli aggiornamenti, in modo da non dover ripetere tutta la guida dopo 10min!

Partiamo con ordine allora.

Tasti Funzione

Per i tasti funzione, basta dare i seguenti comandi(Grazie al blog Redo’em!):

sudo apt-get install git  (installa git se non è già presente)
git clone git://git.iksaif.net/acpi4asus-dkms.git
cd acpi4asus-dkms 
make 
sudo make install
sudo modprobe asus-nb-wmi   (carica il modulo)

Ora, ad ogni nuovo kernel, va rifatta questa procedura, per ovviare, createvi un .deb da usare ad ogni aggiornamento(sempre più facile che rifare a mano i comandi no?)

sudo apt-get install debhelper 
cd acpi4asus-dkms 
dpkg-buildpackage
sudo modprobe asus-nb-wmi

A questo punto abbiamo i maggiori comandi funzione usabili(quelli che lanciano i profili o programmi asus non vanno, ma poco male direi).

Touchpad

Per il touchpad dobbiamo scaricare sempre un modulo e caricarlo(guida su ubuntu forum), ovvero:

sudo apt-get install dkms

Scarichiamo il modulo:

cd /usr/src/
sudo wget http://planet76.com/drivers/elantech/psmouse-elantech-v6.tar.bz2

Spacchetta il tar:

sudo tar jxvf psmouse-elantech-v6.tar.bz2

I comandi successivi aggiungono il modulo a dkms, in modo da “installarsi” in automatico ad ogni aggiornamento del kernel(a differenza dei tasti funzione):

sudo dkms add -m psmouse -v elantech-v6
sudo dkms build -m psmouse -v elantech-v6
sudo dkms install -m psmouse -v elantech-v6

Ora disabilitiamo il vecchio modulo psmouse e carichiamo quello nuovo:

sudo rmmod psmouse && sudo modprobe psmouse

Anche il touchpad dovrebbe funzionare. Se premete l’icona ubuntu e cercate “mouse”, dovreste vedere il tab “Touchpad”. Questo è il segnale che è caricato :)

Ora, c’è un modo per disabilitare il trackpad se non lo volete. Ho creato lo script e l’ho testato sulla mia macchina, visto che molte guide sono vecchie e di modelli diversi. Quindi, su ubuntu 11.04, K53SV, funziona l’abilitazione/disabilitazione del trackpad. Per farlo, bisogna prima di tutto scaricare xinput:

sudo apt-get install xinput

A questo punto prendete il mio script, scompattatelo e mettelo in qualsiasi directory, segnatevi il percorso.

SCRIPT DISABILITAZIONE/ABILITAZIONE TOUCHPAD

Ora, andate nel Terminale e digitate:

xinput list

Dovrebbe restituire qualcosa come questo:

Virtual core pointer                    	id=2	[master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer              	id=4	[slave  pointer  (2)]
⎜   ↳ USB Optical Mouse                       	id=11	[slave  pointer  (2)]
⎜   ↳ ETPS/2 Elantech ETF1059 Click-Pad id=14	[slave  pointer  (2)]
⎣ Virtual core keyboard                   	id=3	[master keyboard (2)]
    ↳ Virtual core XTEST keyboard             	id=5	[slave  keyboard (3)]
    ↳ Power Button                            	id=6	[slave  keyboard (3)]
    ↳ Video Bus                               	id=7	[slave  keyboard (3)]
    ↳ Video Bus                               	id=8	[slave  keyboard (3)]
    ↳ Sleep Button                            	id=9	[slave  keyboard (3)]
    ↳ ASUS USB2.0 WebCam                      	id=10	[slave  keyboard (3)]
    ↳ Asus WMI hotkeys                        	id=12	[slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard            	id=13	[slave  keyboard (3)]

Quello che ci interessa è evidenziato, ovvero  ETPS/2 Elantech ETF1059 Click-Pad. Controllate di avere questo nome, o segnatevi il vostro!

Quindi digitiamo:

xinput list-props "ETPS/2 Elantech ETF1059 Click-Pad"

L’output è di questo tipo:

Device 'ETPS/2 Elantech ETF1059 Click-Pad':
	Device Enabled (127): 0
	Coordinate Transformation Matrix (129):	1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
	Device Accel Profile (247):	1
	Device Accel Constant Deceleration (248):	2.500000
	Device Accel Adaptive Deceleration (249):	1.000000
	Device Accel Velocity Scaling (250):	12.500000
	Synaptics Edges (264):	50, 1204, 35, 625
	Synaptics Finger (265):	24, 29, 255
	Synaptics Tap Time (266):	180
	Synaptics Tap Move (267):	62
	Synaptics Tap Durations (268):	180, 180, 100
	Synaptics Tap FastTap (269):	0
	Synaptics Middle Button Timeout (270):	75
	Synaptics Two-Finger Pressure (271):	280
	Synaptics Two-Finger Width (272):	7
	Synaptics Scrolling Distance (273):	28, 28
	Synaptics Edge Scrolling (274):	0, 0, 0
	Synaptics Two-Finger Scrolling (275):	1, 1
	Synaptics Move Speed (276):	1.000000, 1.750000, 0.141143, 40.000000
	Synaptics Edge Motion Pressure (277):	29, 159
	Synaptics Edge Motion Speed (278):	1, 113
	Synaptics Edge Motion Always (279):	0
	Synaptics Button Scrolling (280):	1, 1
	Synaptics Button Scrolling Repeat (281):	1, 1
	Synaptics Button Scrolling Time (282):	100
	Synaptics Off (283):	0
	Synaptics Locked Drags (284):	0
	Synaptics Locked Drags Timeout (285):	5000
	Synaptics Tap Action (286):	2, 3, 0, 0, 1, 3, 2
	Synaptics Click Action (287):	1, 1, 1
	Synaptics Circular Scrolling (288):	0
	Synaptics Circular Scrolling Distance (289):	0.100000
	Synaptics Circular Scrolling Trigger (290):	0
	Synaptics Circular Pad (291):	0
	Synaptics Palm Detection (292):	0
	Synaptics Palm Dimensions (293):	10, 199
	Synaptics Coasting Speed (294):	20.000000, 50.000000
	Synaptics Pressure Motion (295):	29, 159
	Synaptics Pressure Motion Factor (296):	1.000000, 1.000000
	Synaptics Grab Event Device (297):	1
	Synaptics Gestures (298):	1
	Synaptics Capabilities (299):	1, 1, 1, 1, 1, 1, 1
	Synaptics Pad Resolution (300):	1, 1
	Synaptics Area (301):	0, 0, 0, 0
	Synaptics Jumpy Cursor Threshold (302):	0
	CUT_BUFFER5 (14):

Quello che vi interessa è il numero tra le parentesi di Device Enabled, segnatevelo e modificate lo script col nome del vostro trackpad ed il vostro numero. Nel mio script, come nell’output, io ho ETPS/2 Elantech ETF1059 Click-Pad e 127, è possibile che voi abbiate nome e numero diverso. Una volta modificato lo script, cliccate sull’icona ubuntu e cercate “scorciatoie da tastiera”. Qui dovete mettere una nuova scorciatoia allo script che avete scaricato ed assegnare una scorciatoia. Io ho usato CTRL+F9, visto che è simile a FN+F9 che si usa in windows, ed il tasto CTRL è vicino all’FN.

Come si vede dovete dare nome e percorso, il percorso va messo a “mano”, quindi digitate il percorso di dove risiede lo script. Applicate e fate la prova :D

Se non dovesse andare, controllate di avere i permessi di lettura/esecuzione dello script e che il nome e id del device enabled siano corrispondenti ai vostri.

Optimus e CUDA

Optimus è una tecnologia che permette di spegnere la scheda discreta nvidia in favore di quella integrata intel, andando così a risparmiare sulla batteria, e di utilizzarla nel caso ci sia bisogno di 3D, CUDA o altro.

Prima di tutto nei driver proprietari di ubuntu, dobbiamo installare quelli nvidia proprietari e riavviare.

Fatto questo dobbiamo scaricare ed installare ironhide. Ironhde è l’erede del progetto bumblebee, che permette lo spegnimento e accensione della scheda video nvidia.

Io ho provato ironhide, ciò non toglie che uno possa provare anche bumblebee.

Dicevo, bisogna installare i repo per ironhide. Andiamo nel terminale e digitiamo:

sudo add-apt-repository ppa:mj-casalogic/ironhide

Fatto questo lanciamo “sudo synaptic” sempre dal terminale, su “Origine” scegliamo ironhide e installiamo tutti i pacchetti del repo ironhide.

Dovrebbe partire in automatico una configurazione che chiede alcune cose tra cui quale configurazione scaricare. Scegliete quella di “Thomas Krutz” che ha alcuni fix utili.

Terminata l’installazione riavviate e nei programmi scegliete “Ironhide Indicator”. Vedrete un’icona stile transformers nella barra superiore. Quello dice se la scheda nvidia è attiva o meno.

Per esempio installiamo il pacchetto “mesa-utils” che contiene glxgears, un piccolo tool che lancia una schermata in opengl.

Abbiamo 2 modi per lanciare le applicazioni 3D:

1 – il comando diretto, tipo glxgears o ./comando che usa la scheda video intel

2 – il comando optirun glxgears o optirun ./comando che usa la scheda video nvidia.

Nel caso si usi optirun, si vedrà l’icona di ironhide diventare gialla ed una notifica ci avvertirà che la scheda video nvidia è attiva.

Fate qualche prova, dovrebbe funzionare senza problemi.

Per CUDA, bisogna installare anche qua un repo che contiene tutto il necessario(Guida originaria in inglese QUI).

Aggiungete il repo

sudo add-apt-repository ppa:aaron-haviland/cuda-4.0

Quindi date un bel

sudo apt-get update

Ora installiamo i pacchetti necessari per i 64bit:

sudo apt-get install nvidia-cuda-gdb nvidia-cuda-toolkit nvidia-compute-profiler libnpp4 nvidia-cuda-doc libcudart4 libcublas4 libcufft4 libcusparse4 libcurand4 nvidia-current nvidia-opencl-dev nvidia-current-dev nvidia-cuda-dev opencl-headers

Per i 32bit invece è(riporto ma non “supporto”, avendo il sistema a 64bit):

sudo apt-get install nvidia-cuda-gdb nvidia-cuda-toolkit nvidia-compute-profiler lib32npp4 nvidia-cuda-doc lib32cudart4 lib32cublas4 lib32cufft4 lib32cusparse4 lib32curand4 nvidia-current nvidia-opencl-dev nvidia-current-dev nvidia-cuda-dev opencl-headers

E concludiamo con un:

sudo apt-get install freeglut3-dev libxi-dev libXmu-dev

Ora CUDA è installato ed è attivabile con “optirun ./programmaCUDA” senza particolari problemi.

Per testare le funzionalità CUDA dobbiamo scaricare ed installare alcuni codici di test:

wget http://developer.download.nvidia.com/compute/cuda/4_0/sdk/gpucomputingsdk_4.0.17_linux.run 
sudo chmod +x gpucomputingsdk_4.0.17_linux.run 
./gpucomputingsdk_4.0.17_linux.run

Nell’installazione lasciate tutto a default, quindi:

cd NVIDIA_GPU_computing_SDK/C
make

Vedrete il pc “macinare” per un po’, con alcuni warning, ma lasciate fare. Una volta terminato, andate in

cd NVIDIA_GPU_computing_SDK/C/bin/linux/release

E fate una prova di funzionamento CUDA con

optirun ./deviceQuery

o

optirun ./nbody

Se tutto funziona, beh, avete terminato la guida con successo ed ora potete godervi ubuntu 11.04 senza altri grattacapi.

Per ora almeno :p

 EDIT:

Allora, altre 2 cosine non vanno, il bluetooth e il card reader.

Bluetooth

Per il bluetooth, scaricate ed installate questo package : BT

In seguito riavviate ed il bluetooth dovrebbe andare.

Card Reader

Per il card reader, dovete installare il pacchetto seguente:

sudo apt-get install build-essential 

Quindi scaricare ed estrarre questo ta: LINK

 

Fatto questo, dovete cercare un file e copiarlo nella cartella scompattata(rts5139) .

Il file si chiama stdarg.h ed è in

/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/include/stdarg.h

Fatto questo apriamo il terminale, andiamo nella cartella rts5139 e diamo:

make
sudo make install
depmod
modprobe rts5139

Se ora inserite una memory card vi verrà riconosciuta :p

Se non vi funziona qualcosa, fate un riavvio che non fa mai male…neanche su ubutu!