Delirios de un Informático

Teclas multimedia de teclados Logitech G en Mac

En ninguno de los teclados Logitech G que he probado en Mac OS X (G11, G15 y G510) funcionaban las teclas multimedia para el control de la música (excepto en iTunes, curiosamente). Ni Spotify ni VLC ni otros programas respondían a las teclas prev/next (pero sí a play/pause), por lo que pensé en hacer un pequeño script que solucionara el problema.

Al ponerme a investigar econtré con Karabiner, un excelente software que soluciona muchos de los problemas más comunes con teclados en Mac (el punto del teclado numérico, la posición de las teclas < y >…) y que es extensible mediante archivos XML. Al ser un proyecto alojado en GitHub hice el correspondiente pull request que el autor amablemente aceptó.

Desde hace unos días los cambios se han integrado en la versión estable (desde la 10.5) por lo que basta instalar el programa y activar el mapeo llamado Enable PC Prev/Next Media Keys para poder por fin saltar canciones en Spotify….

Logitech G15 con g15daemon y Xorg 7.5 en Debian

Hace unos días que se actualizó Xorg a la versión 7.5 en Debian SID, actualización que por fin hizo funcionar de nuevo los botones de mi Wacom pero que se cargó los botones extra del Logitech G15 debido a un error en g15daemon, que devuelve el error:

G15 Extra keys: dropping events due to full queue

En los foros de g15tools.com se ha hablado del problema y se ha proporcionando un parche que ya está en el SVN, pero que por desgracia todavía no se ha actualizado en Debian. Es por eso por lo que es necesario hacerlo a mano, descargándose los archivos fuente de los repositorios, parcheando el archivo modificado y compilando el paquete. El proceso es sencillo:

sudo apt-get install build-essential devscripts
sudo apt-get build-dep g15daemon
mkdir g15daemon-src
cd g15daemon-src
sudo apt-get source g15daemon
sudo apt-get build-dep g15daemon
svn co https://g15daemon.svn.sourceforge.net/svnroot/g15daemon g15daemon-svn
cd g15daemon-1.9.5.3
cp ../g15daemon-svn/trunk/g15daemon-wip/plugins/g15_plugin_uinput.c plugins/
dpkg-buildpackage -rfakeroot -us -uc -b

Esto nos creará un paquete .deb en la carpeta g15daemon-src con el daemon actualizado, que sólo habra que instalar con un dpkg -i g15daemon_1.9.5.3-8_amd64.deb :).

Logitech G15 y LCDproc en Debian

Ya hace unos meses que comenté cómo hacer funcionar un Logitech G15 en Debian con los controladores específicos y utilizando scripts especialmente programados para su pantalla LCD. Pero hasta ahora no había probado LCDproc, un software que permite el uso de pantallas LCD genéricas (utilizadas mucho en las cajas de los equipos) y que en su versión 0.5.2 añade soporte para este teclado.

El primer problema es que es necesario instalar la versión de los repositorios Experimental, ya que la versión de los repositorios estables es la 0.4.5, sin soporte para el G15. Para eso, deberemos añadir a nuestro /etc/apt/sources.list lo siguiente:

deb http://ftp.fr.debian.org/debian/ experimental main contrib non-free

Y luego instalar el programa:

sudo apt-get install -t experimental lcdproc

Una vez instalado se inicia automáticamente el daemon y debería aparecer LCDproc Server en la pantalla del teclado, pero no es así. Una llamada a lcdproc nos devuelve:

sock_connect: connect failed
Error connecting to LCD server 127.0.0.1 on port 13666.
Check to see that the server is running and operating normally.

Y el registro del sistema muestra:

Nov 22 09:41:37 vito LCDd: Could not open driver module server/drivers/g15.so:
server/drivers/g15.so: cannot open shared object file: No such file or directory
Nov 22 09:41:37 vito LCDd: Driver [g15] binding failed
Nov 22 09:41:37 vito LCDd: Could not load driver g15
Nov 22 09:41:37 vito LCDd: There is no output driver
Nov 22 09:41:37 vito LCDd: Critical error while initializing, abort.

Es decir, que no se ha compilado con el controlador para el G15, por lo que habrá que compilarlo a mano:

wget http://ftp.de.debian.org/debian/pool/main/l/lcdproc/lcdproc_0.5.2.orig.tar.gz
tar xzvf lcdproc_0.5.2.orig.tar.gz
cd lcdproc-0.5.2
./configure --enable-drivers=g15
make
sudo cp server/drivers/g15.so /usr/lib/lcdproc/

Y una vez compilado el controlador y copiado en su directorio, es necesario configurar el daemon editando el archivo /etc/LCDd.conf y modificando las siguientes líneas:

Driver=g15
DriverPath=/usr/lib/lcdproc/

Tras esto, tendremos todo listo y un sudo /etc/init.d/LCDd restar debería mostrar información en la pantalla y se podrá ejecutar el comando lcdproc normalmente.

Logitech G15 en Debian

Iba a comprarme un Logitech G11 pero cuando fuí a pedirlo me encontré con que tenían en tienda el viejo G15 con luz azul y me salía casi igual, por lo que no pude resistirme

El teclado es muy cómodo y bastante grande. Las teclas son robustas y cómodas, pero lo mejor es la pantalla LCD, la iluminación con intensidad variable y el montón de teclas personalizables: los controles multimedia ( 4 teclas de control y una rueda para el volumen ) y las 18 teclas “G” a la izquierda con 3 modos, lo que dan a efectos prácticos 54 teclas, que combinadas con Ctrl, Win, Alt y Alt Gr dan 216 posibilidades ( miles si combinamos varias teclas a la vez ).

Para hacer funcionar todas estas teclas en Debian, es necesario instalar los paquetes de G15 Tools:

sudo apt-get install g15macro g15daemon g15composer

Por defecto las teclas extra se detectan como F1-F12 y 1-6 y no funcionan las teclas M, por lo que deberemos ejecutar el comando g15macro para que se detecten correctamente ( se puede añadir un enlace simbólico a ~/.kde/Autostart ) y veremos que se enciende la tecla M1. Con esto podremos detectar las pulsaciones tanto desde el centro de control de KDE ( lo que nos permite añadir acciones desde Introducir Acciones y ejecutar programas o llamadas dcop ) o usando XBindKeys. El mapeo de teclas puede modificarse editando el archivo ~/.g15macro/g15macro.conf.

Por si interesa, os dejo unos cuantos enlaces:

Todavía me queda trastear a fondo con la pantalla LCD, que tiene mucho potencial

Actualización: el paquete g15macro no es 100% necesario. Permite activar modos con las teclas M, pero si preferimos tenerlas disponibles como teclas independientes únicamente es necesario ejecutarlo una primera vez para que se cree el archivo de configuración en el que se basará g15daemon.

Logitech Quickcam en Debian

Hace unos días me compré una pequeña webcam de Logitech, la Quickcam Messenger. Antes había comprobado la compatibilidad con Linux y parecía funcionar sin problema.

Preparándome para instalar paquetes dev y compilar módulos, descubrí que hacer funcionar en Debian cualquiera de las cámaras soportadas por el controlador gspca es de lo más sencillo:

sudo apt-get install gspca-modules-`uname -r`

¿Para qué complicarse más?. Podemos ver si se carga correctamente viendo el syslog al enchufarla:

usb 2-2: new full speed USB device using uhci_hcd and address 2
usb 2-2: configuration #1 chosen from 1 choice
gspca_core.c: USB GSPCA camera found.(ZC3XX)
gspca_core.c: [spca5xx_probe:4098] Camera type JPEG
Vimicro/zc3xx.h: [zc3xx_config:515] Sensor ID:7
Vimicro/zc3xx.h: [zc3xx_config:597] Find Sensor HV7131R(c)
gspca_core.c: [spca5xx_getcapability:1215] maxw 640 maxh 480 minw 176 minh 144
usbcore: registered new interface driver gspca
gspca_core.c: gspca driver 2.6.22 registered
usbcore: registered new interface driver snd-usb-audio

Se creará el dispositivo /dev/video0 ( video1 o mayor si ya tenéis otros dispositivos de video configurados ), que podremos visualizar con mplayer:

mplayer tv:// -tv driver=v4l:width=640:height=480evice=/dev/video1:noaudio

NOTA: Para detectar el código del producto es necesario hacer lsusb como root, ya que si no no aparecerá listada la cámara.