Saturday, May 13, 2006

Costruire un Media Center con Linux e Freevo (seconda parte)

 
Telecomando
Nessun media center che si rispetti puo' funzionare senza un telecomando. Quindi me ne sono procurato uno standard fornito di apposito sensore infrarossi da attaccare alla porta seriale (fig.). Per farlo funzionare su Linux occorre installare un apposito driver chiamato Lirc (www.lirc.org). Nel mio caso (Fedora core 3)ho installato con yum i seguenti:
lirc-lib-0.7.2-49.rhfc3.at
lirc-devices-0.7.0-1.rhfc3.at
lirc-0.7.2-49.rhfc3.at
lirc-lib-devel-0.7.2-49.rhfc3.at
lirc-kmdl-2.6.12-1.1378_FC3-0.7.2-49.rhfc3.at

Nota che lirc-kmdl-2.6.12-1.1378_FC3-0.7.2-49.rhfc3.at e` valido per il mio sistema che e` basato su kernel 2.6.12-1.1378. Tale rpm contiene i moduli per il kernel e devono corrispondere. Nel mio caso ho dovuto perfino aggiornare il kernel perche' per il mio vecchio (2.6.9) non riuscivo a trovare i moduli lirc corrispondenti. A questo punto si dovrebbe trovare fra i device

/dev/lirc

o qualcosa tipo

/dev/lirc0

Se non c'e' il device allora c'e' un problema con il caricamento del driver. Nel mio caso ho provato a fare un

modprobe lirc_serial

e mi ha dato un errore del tipo: resource busy. Quindi gugolando un po' ho trovato che il comando:

setserial /dev/ttyS0 uart none

risolveva il problema. Un successivo

modprobe lirc_serial

ha creato il device /dev/lirc0. A questo punto ho lanciato il programma

mode2 /dev/lirc0

e ho cominciato a premere i tasti del telecomando ottenendo a schermo una serie di dati tipo:

pulse 871
space 839
pulse 848
space 840
pulse 848
space 839
pulse 848
space 90856
pulse 850
space 843
pulse 902
space 788

BINGO!! L'hardware funziona! Infatti questo programma visualizza il treno di onda ricevuto dal telecomando senza dover usare un oscilloscopio.


Scheda TV

Questa scheda consente di ricevere il segnale ad alta frequenza dal cavo d'antenna, di sintonizzarsi su un canale e di ricevere il video del programma sullo schermo. Naturalmente fa molte altre cose ma non sto qui ad elencarle. Importante. Bisogna scegliere una scheda supportata dal kernel di Linux. E' noto che le schede con chipset BT878 funzionano bene. Per una lista completa delle schede TV supportate nel kernel date un'occhiata qui: http://www.linuxtv.org/

Nel mio caso ho scelto una scheda analogica. Certo in futuro sarà necessario sostituirla con una scheda per il digitale terrestre o affiancarla ad una scheda per il satellite.

Per una verifica immediata della scheda basta lanciare tvtime (se non ce l'avete do dovrete installare) e giocare un po con i suoi comandi. In figura e' visibile tvtime che gira dentro twm




#