diff options
Diffstat (limited to 'src/SW/usb-ir-toy-lirc/document.it.rest.txt')
-rw-r--r-- | src/SW/usb-ir-toy-lirc/document.it.rest.txt | 111 |
1 files changed, 111 insertions, 0 deletions
diff --git a/src/SW/usb-ir-toy-lirc/document.it.rest.txt b/src/SW/usb-ir-toy-lirc/document.it.rest.txt new file mode 100644 index 0000000..953bd22 --- /dev/null +++ b/src/SW/usb-ir-toy-lirc/document.it.rest.txt @@ -0,0 +1,111 @@ +================================= +Come usare lo USB IR Toy con LIRC +================================= +:CreationDate: 2012-10-08 10:49:07 +:Id: SW/usb-ir-toy-lirc +:tags: - software + - configs + +Mi son comprato un `telecomando universale a forma di cacciavite +sonico <http://thewandcompany.com/sonic/>`_ (il sito è orrendo e +difficile da navigare…). Chiaramente voglio poterci controllare il mio +PC! + +Per farlo, mi serviva un ricevitore IR e `LIRC +<http://www.lirc.org/>`_. Visto che mi piace complicarmi la vita, ho +comprato lo `USB Infrared Toy +<http://dangerousprototypes.com/docs/USB_Infrared_Toy>`_ da `Dangerous +Prototypes <http://dangerousprototypes.com/>`_, che permette di +inviare e ricevere qualsiasi sequenza di impulsi a infrarossi. + +Convincere i tre pezzi (telecomando, Toy, LIRC) a funzionare assieme è +stato più complicato di quel che avrei gradito, per cui descrivo qua +quel che ho fatto, per aiutare i prossimi. + +Aggiornare il firmware +====================== + +Il vostro IR Top ha probabilmente una versione vecchia del +firmware. Se usate Windows, le `instruzioni fornite +<http://dangerousprototypes.com/docs/USB_IR_Toy_firmware_update>`_ +potrebbero anche funzionare; altrimenti, bisogna studiarci un po'. I +sorgenti del programma ``fw_update`` che potete ottenere da quelle +pagine (o dal `repository Subversion +<http://dangerous-prototypes-open-hardware.googlecode.com/svn/trunk/Bootloaders/USB-HID-Diolan/18F24J50/fw_update/>`_) +non compilano neppure (si sono "scordati" di includere metà degli +header che servono), e quando riuscite a compilarli, vanno in +segfault. L'utente "JessH" dei forum di Dangerous Prototypes `ha +postato una versione che funziona +<http://dangerousprototypes.com/forum/viewtopic.php?t=3697&p=37398#p37371>`_ +(`questa è la patch <JessH.patch>`_ se la volete vedere, dovrebbe +applicarsi alla versione SVN). + +.. note:: + + Sì, lo so che sto puntando ai sorgenti per il 18F24J50, ma il chip + sul IR Toy dice "18F2550". Che ci posso fare, così funziona! + +Dopo averlo compilato, sono finalmente riuscito ad aggiornare il +firmware alla versione 22:: + + $ echo '$' > /dev/ttyACM0 + $ ./fw_update -e -w -v -m all -vid 0x04D8 -pid 0xFD0B \ + -ix ~/src/dangerous-prototypes-open-hardware/USB_IR_Toy/package/firmware/USBIRToy.v22.hex + +Stacca, ri-attacca, e siamo pronti. + +Patch per LIRC +============== + +LIRC può usare lo IR Toy in modalità compatibile ``irman``, ma a me +serviva la funzione completa di invio segnali, per programmare il +cacciavite. Ho trovato `una patch per aggiungere il supporto completo +<http://sourceforge.net/mailarchive/forum.php?thread_name=4ebf97df-17f8-48bb-ba65-32e4b9983ac4%40devleno&forum_name=lirc-list>`_, +grazie a Peter Kooiman. Se usate Gentoo, potete aggiungere `la mia +overlay <http://www.thenautilus.net/cgit/gentoo-overlay/>`_ e +installare `LIRC già modificato +<http://www.thenautilus.net/cgit/gentoo-overlay/tree/app-misc/lirc/>`_. + +Configurare LIRC +================ + +Questo dovrebbe essere scritto da qualche parte, ma non sono riuscito +a trovare usa spiegazione usabile, per cui mostro quel che ho fatto: + +1) mi son procurato un set completo di codici Philips RC-5 dal + `repository di telecomandi LIRC + <http://lirc.sourceforge.net/remotes/rc-5/>`_ + +2) ho assegnato, arbitrariamente, i primi 39 codici ai 13 gesti su 3 + banchi di memoria del cacciavite:: + + begin remote + name sonic + # snip + begin codes + b1_tap_top 0x1000 + b1_tap_left 0x1001 + #etc etc + +Programmare il telecomando +========================== + +Ho scritto `un semplice programma Perl per inviare i codici IR +<send>`_. Eseguitelo mentre ``lircd`` è in esecuzione, e con +``irsend`` nel path. Quando dice ``Ready to send $something``, premete +"enter" per inviare il codice, ``a`` per tornare al codice precedente +(utile se il cacciavite non l'ha ricevuto), ``n`` per saltare al +codice successivo senza inviare nulla. + +Ho messo il cacciavite in modalità programmazione, ho eseguito i 39 +gesti uno alla volta, e li ho programmati tutti. LIRC ora usa nomi +sensati per tutti e 39 i gesti. + +Usarlo +====== + +Finalmente, ho ri-compilato `vlc <http://www.videolan.org/>`_ col +supporto LIRC, e ho scritto `un |lircrc| per vlc <lircrc>`_. A questo +punto, posso controllare ``vlc`` col cacciavite sonico! + +.. |lircrc| replace:: ``~/.lircrc`` |