lunedì 8 aprile 2013

Raspberry-Pi ed il telecomando - Parte 2

Una volta collegato il sensore infrarossi alla nostra Raspberry-pi, occorre installare i driver necessari per farlo funzionare: LIRC
Nel caso stiate configurando un media-center per mezzo di "raspbmc" il driver è già disponibile bisogna solo attivarlo all'avvio, aprendo come root /etc/modules e aggiungendo alla fine la seguente riga di testo:
lirc_rpi
dopo il riavvio sarà possibile (sempre da console) memorizzare i tasti del nostro telecomando preferito lanciando l'applicazione irrecord mediante il comando:
irrecord -d /dev/lirc0 mioTelecomando.conf
L'applicazione, ci chiederà dapprima il nome del telecomando (marca e modello), successivamente di premere e rilasciare alcuni tasti a caso e poi passerà alla fase ciclica di memorizzazione dei vari tasti del telecomando (più facile a farsi che a dirsi!). Ci verrà chiesto il nome del tasto che stiamo per premere e poi ci chiederà di premerlo, dando invio si termina la fase di memorizzazione.
I nomi dei tasti bisogna sceglierli da una lista ottenibile digitando il comando:
irrecord --list-namespace
L'elenco è lungo qui di seguito solo una parte...

KEY_0
KEY_102ND
KEY_1
KEY_2
KEY_3
KEY_4
KEY_5
KEY_6
KEY_7
KEY_8
KEY_9
KEY_A
KEY_AB
KEY_ADDRESSBOOK
KEY_AGAIN
KEY_ALTERASE
KEY_ANGLE
KEY_APOSTROPHE
KEY_ARCHIVE
KEY_AUDIO
KEY_AUX
KEY_B
KEY_BACK
KEY_BACKSLASH
KEY_BACKSPACE
KEY_BASSBOOST
KEY_BATTERY
KEY_BLUE
KEY_BLUETOOTH
KEY_BOOKMARKS
KEY_BREAK
KEY_BRIGHTNESS_CYCLE
KEY_BRIGHTNESSDOWN
...

 Se, per esempio, volessi memorizzare il tasto di accensione dovrò specificare il nome: KEY_POWER, per il tasto '1': KEY_1, etc...

I dati acquisiti vengono salvati nel file di configurazione (testuale) che abbiamo specificato come parametro (in questo caso: "mioTelecomando.conf"); se volessimo utilizzare tale telecomando come telecomando di default, occorrerebbe copiare (con i diritti di super utente) il file appena creato nella cartella: "/etc/lirc/" e salvato con il nome: "lircd.conf".

A questo punto è l'applicazione che utilizziamo che si farà carico di gestire il verificarsi di eventi legati alla ricezione del segnale relativo ad un pulsante del telecomando; XBMC, per esempio, funziona senza problemi! :-)













È anche possibile usare il driver LIRC appena configurato e un diodo ad infrarossi per trasmettere; in questo modo Raspberry-Pi verrebbe usato come un telecomando per controllare le nostre apparecchiature in maniera automatica e/o via internet.... ma questa è un'altra storia....


4 commenti:

  1. Non so davvero come ringraziarti. Hai risolto un grosso problema che avevo, possedendo un televisore che supportasse i CEC solo per accendere/spegnere la Pi. Proverò quanto prima a replicare quello che hai mostrato in quest'ottima guida, e sappi che ti seguo soprattutto riguardo Arduino, a cui mi sto iniziando ad interessare parecchio... complimenti ancora!

    RispondiElimina
    Risposte
    1. Grazie per i complimenti :), anche se in realtà vado molto a rilento con i post, li scrivo più che altro per me stesso (dimentico facilmente), sapere poi che qualcuno li legge e li trova utili sicuramente mi incoraggia a farlo più spesso.
      Grazie ancora.

      Elimina