Esta es quizá una de las entradas en las que he trabajado más tiempo, desde que tenía el blog en Blogger y me regalaran mi primer tableta gráfica ahí por 2011, me he puesto como reto hacer que funcionen de forma decente en Linux, lo bueno es que hay gente que ha desarrollado varias herramientas para que esto sea posible, explicare dos métodos que he utilizado para hacer que funcione mi Huion Kamvas Pro 16 del 2019, aunque el proceso puede ser adaptado a distintos tipos de tabletas gráficas.
ADVERTENCIA: Este tutorial es extenso, intenté simplificarlo lo más que pude, si necesitan que explique más a detalle algún elemento lo pueden mencionar en los comentarios.
IMPORTANTE: Este tutorial se realizó utilizando Fedora 35 KDE y X11, por lo tanto los comandos o nombres de paquetes pueden ser distintos en otras distribuciones.
Respecto a X11: no utilizo Wayland debido a que no tiene soporte de momento para los perfiles de colores, existen algunos trabajos en progreso o soluciones pero hasta donde he leído ninguno ha sido agregado de forma oficial, cuando lo hagan actualizaré esta entrada con los datos correspondientes.
Algunos de los enlaces de interés son (solo disponibles en inglés):
DIGImend Kernel Drivers
Se descarga en su github al momento de escribir esto, la versión más reciente es la v10.
Requisitos
Algunos requisitos para poder instalar los controladores son:
- Antes de comenzar deben actualizar su sistema, si se instala una actualización de kernel deben reiniciar su computadora.
- Linux-headers de la versión del kernel que tengan.
- DKMS, simplifican la instalación aunque un inconveniente sería que al momento de actualizar el kernel, dicha actualización demora un poco más dependiendo de la velocidad de su disco duro, en mi caso con un disco de 5400 RPM, se demoraba aproximadamente entre 7 a 15 minutos y con un disco NVMe se demora de 3 a 6 minutos.
Instalación
Luego extraen el contenido de lo que descargaron de github y abren una consola en esa ubicación, el controlador se instala ejecutando lo siguiente:
Si no se les muestra ninguna advertencia o error el siguiente paso es reiniciar la computadora o pueden desconectar la tableta de la computadora, ejecutar lo siguiente en una consola y luego volver a conectarla.
Configuración de los controladores X.org
Por defecto las tabletas gráficas son manejadas por el controlador libinput X.org, en el caso de Fedora el paquete se denomina xorg-x11-drv-libinput
, este controlador brinda soporte para las coordenadas del lápiz y la presión, además de algunos controles adicionales. Sin embargo algunas tabletas gráficas pueden funcionar con el controlador de Wacom, este posee algunas características avanzadas como:
- Curva de presión para el lápiz.
- Atajos de teclado para los botones que tiene algunas tabletas gráficas.
- Existen algunas herramientas gráficas de configuración.
En el caso de Fedora el controlador Wacom lo provee el paquete llamado xorg-x11-drv-wacom
, para verificar que la tableta conectada es compatible con el controlador deben ejecutar xsetwacom list
en una teminal, si su tableta es soportada les mostrará algo parecido a esto:
Forzando la compatibilidad con el controlador Wacom
Al momento de instalar el controlador de DIGImend se agregan unas reglas como archivo para que se asocien esos dispositivos con el controlador Wacom, este archivo se encuentra en /usr/share/X11/xorg.conf.d/50-digimend.conf
y su contenido es similar al siguiente:
Para forzar la compatibilidad deben escribir los siguiente en el archivo /etc/X11/xorg.conf.d/50-tablet.conf
con su editor de texto preferido:
Los valores <VID>:<PID>
corresponden al ID del vendedor y producto respectivamente, se pueden obtener ejecutando lsusb
en la consola, en el caso de mi Huion Kamvas Pro 16 aparece algo similar a lo siguiente:
Por lo tanto mi valor VID es 256c y PID es 006d, el archivo /etc/X11/xorg.conf.d/50-tablet.conf
queda de la siguiente forma:
Para que los cambios surjan efecto hay que cerrar y volver a iniciar sesión o reiniciar la computadora.
Configurando el controlador Wacom X.org
Para configurar la tableta que utiliza el controlador Wacom se utiliza el comando xsetwacom
, como se mencionó antes para ver el listado de los dispositivos disponibles se utiliza la opción xserwacom list
, que muestra lo siguiente:
Los elementos que se muestran para mi tableta gráfica son 3:
- HID 256c:006d stylus: Corresponde al lápiz y al área de trabajo de este.
- HID 256c:006d Touch Strip pad: Es la barra táctil de la tableta, actualmente no tiene soporte o es demasiado engorroso hacerla funcionar por lo que será omitida.
- HID 256c:006d Pad pad: Corresponde a los botones que se encuentran en la tableta, en mi caso son 6 pero haciendo pruebas pude usar el botón de acceso al menú OSD.
Para asignar un atajo de teclado a uno de los botones en la tableta se utiliza el comando de la siguiente forma, xsetwacom set nombre_del_dipositivo parámetro valor
, si se quiere asignar la tecla r al presionar el botón 1 de la tableta se ejecutaría lo siguiente:
Para asignar teclas se utiliza la palabra key
seguido de la tecla que se desea asignar, si se quieren asignar combinaciones como Ctrl+Z
o similares se agrega el listado de teclas separadas por un espacio y todo entre comillas, por ejemplo "key Ctrl z"
.
Algo importante a tener en cuenta es que las configuraciones de la tableta se pierden cada vez que se reinicia la computadora por lo tanto es útil tener las configuraciones en un script y ejecutarlas cuando necesitemos utilizar nuestra tableta gráfica, tomando como ejemplo el script de David Revoy en su reseña de la tableta gráfica Gaomon m10k 2018, este se puede adaptar para el modelo o marca de la tableta que utilicen.
Algunas notas sobre el script
- Personalizar los botones del lápiz: si desean cambiar el comportamiento por defecto solo deben quitar el comentario eliminado el carácter # debajo de la línea ”# Bonotes del lápiz por si se quiere cambiar el comportamiento por defecto:” y agregar los valores que necesiten.
- Nombres de las teclas: si desean utilizar alguna tecla no estándar pueden hacerlo utilizando su nombre en X11, en el post de David Revoy hay un enlace a un pastebin con las teclas extra y su equivalente https://pastebin.com/aXGDkJTU.
- Caso especial de la tecla espacio: si asignan dicha tecla a un botón solamente devolverá una pulsación, no puede regresar una pulsación mantenida.
- Modo para usuarios zurdos: solo remuevan el comentario eliminado el carácter # debajo de la línea ”# Modo para usuarios zurdos (rotación):”.
- Obtener el nombre del monitor: para obtener el nombre del monitor al que desean asociar el área activa de la tableta debe utilizar
xrandr
en fedora se instala condnf install xrandr
al ejecutarlo les debería de mostrar algo similar a esto:
Con esto se obtiene el nombre HDMI-A-0 utilizado en el script. Solo faltaría guardar el script con extensión .sh
darle permisos de ejecución con el entorno gráfico que utilicen o desde la consola con chmod +x nombre_script.sh
y ejecutarlo cada vez que conecten su tableta o si siempre estará conectada es bueno agregarlo a los que se ejecutan al iniciar sesión, en KDE Plasma se puede hacer en: Opciones del sistema > Startup and Shutdown > Autostart > + Add login script.
Desinstalar o Actualizar el controlador
El proceso para desinstalar el controlar es simple, si utilizan los paquetes .deb disponibles pueden utilizar sus herramientas de manejo de paquetes favorita, en el caso de la instalación utilizando dkms hay que ubicarse en la carpeta donde ejecutaron el comando para la instalación y ejecutar lo siguiente:
ría
sudo dkms_uninstall
Para realizar actualizaciones del paquete deben primero desinstalar versiones anteriores para luego instalar la versión mas reciente o la que necesiten utilizar.
Configurar tableta de forma gráfica
Nota: este método de configuración actualmente no me funciona del todo, pero tal vez le sea útil a alguien con mejor suerte que la mía.
Para utilizar este método pueden seguir el tutorial hasta antes del script de configuración, para Fedora existe el paquete llamado kcm_wacomtablet
en algunas distribuciones viene instalado por defecto pero si no es el caso se instala con el comando dnf install kcm_wacomtablet
pueden encontrar el panel de configuración en el área de dispositivos de entrada en la sección de hardware de las opciones del sistema.
En mi caso no funciona todo en mi instalación, por lo tanto daré una breve explicación de cada pestaña:
- General: se pueden tener perfiles por aplicación, cambiar entre ellos y realizar algunas acciones con atajos de teclado.
- Stylus: configuración general del lápiz de la tableta gráfica, asignación de botones, configuración de curvas de presión, etc.
- Express Buttons: asignación de acciones a los botones de la tableta gráfica, en mi caso esto no funciona.
- Tablet: asignación del modo de operación del lápiz, la orientación y configuración del mapeo del área de la tableta a uno o varios monitores.
Forzando la detección de la tableta gráfica
Si por alguna razón han seguido los pasos anteriores y su tableta no es reconocida pueden utilizar la aplicación Wacom Tablet Finder
para agregar los datos de su tableta gráfica, luego de esto guardan los cambios y ya deberían de poder utilizar la herramienta gráfica de configuración.
Explicando brevemente cada sección:
- Tablet Selection: debería ser posible seleccionar el identificador de la tableta gráfica que estén utilizando, en la sección de dispositivos debería de mostrar lo mismo que el comando
xsetwacom list
. - Tablet Features: deben indicar las características extra que posee su tableta, aunque casi ninguna se encuentra soportada para dispositivos que no son de Wacom.
- Button mapping: aquí se indica la cantidad de botones fisicos que posee su tableta gráfica, en el caso mi Huion Kamvas tiene 8 botones físicos pero solo 6 se pueden mapear o 7 si se incluye el botón del menú OSD, una vez seleccionada la cantidad de botones hacen clic en Map Hardware Buttons les aparecerá una ventana en donde les piden que coloquen el cursor dentro del cuadro de diálogo sin hacer clic y presionen de uno en uno los botones para asignarle el número que se utilizará para asociar dicho botón con una acción, al finalizar hacen clic en OK para cerrar la ventana.
- Touch Sensor: asumo que esto esta relacionado con la capacidad de algunas tabletas gráficas Wacom de detectar gestos con la mano, yo seleccione la opción Normal tablet.
Al finalizar la configuración hacen clic en Save All y su tableta ya debería ser reconocida en las opciones del sistema.
Comparando la configuración con script o interfaz gráfica.
Comparando los dos métodos de configuración pude llegar a las siguientes conclusiones, si les pasa como a mí y hay configuraciones que no pueden ser modificadas desde la interfaz gráfica pueden combinarlas con el script cambiando solo los valores que necesitan.
Beneficios del script contra la interfaz gráfica
- La configuración se aplica tal y como la coloquen.
- No es necesario descargar paquetes adicionales.
- Si su tableta gráfica es detectada no hay necesidad de “forzar” la detección.
Desventajas del script contra la interfaz gráfica
- El script debe ser ejecutado cada vez que se inicia sesión o se desee utilizar la tableta gráfica.
- Al inicio puede ser complejo entender la configuración en general.
Beneficios de la interfaz gráfica contra el script
- Facilidad de uso.
- Las configuraciones se guardan entre sesiones, se encuentran en el archivo
/home/USUARIO/.config/tabletprofilesrc
donde USUARIO es el nombre de usuario que utilizan en su computadora. - Los botones físicos pueden ser asignados sin mayor problema.
Desventajas de la interfaz gráfica contra el script
- No siempre funcionan todas las opciones de configuración.
- Si la tableta gráfica no es detectada hay que “forzar” su detección.
Controladores oficiales de Huion
El 19 de abril de 2022 se subió al canal de youtube de Huion un vídeo mostrando la instalación de los controladores para linux, de momento se encuentran en una versión beta pero espero que los mejoren con el tiempo, el vídeo es el siguiente:
Los modelos compatibles de momentos son (actualizado con las notas de lanzamiento de la versión 15.0.0.89 del controlador):
- Tabletas gráficas sin pantalla:
- Serie Inspiroy: H430P, H640P, H950P, H420X, H580X, H610X, H1161, H320M, Q620M, CG610, GC710, Q11K V2, WH1402V2, H610PRO V2, H1060P, RTE-100, RTS-300, RTM-500, RTP-700.
- Serie HS: HS64, HS610, HS611, HC16.
- Tabletas gráficas con pantalla:
- Serie Kamvas: Kamvas 12 (GS1161), Kamvas 13 (GS1331), Kamvas 16 2021 (GS1562), Kamvas 22 (GS2201), Kamvas 22 Plus (GS2202), Kamvas 24 (GS2401), Kamvas 24 Plus (GS2402).
- Serie Kamvas Pro: Kamvas Pro 12 (GT-116), Kamvas Pro 13 (GT-133), Kamvas Pro 16 (GT-156), Kamvas Pro 16 4K(GT1561), Kamvas Pro 16 Plus 4K(GT1562), Kamvas Pro 24 4K(GT2401), Kamvas Pro 13 2.5K(GT1302), Kamvas Pro 16 2.5k(GT1602).
- Versiones anteriores: Kamvas 16 (GS1561), Kamvas 20(GS1901), Kamvas Pro 20 (GT-192), Kamvas Pro 22(GT-221), Kamvas Pro 20(2019) (GT1901), Kamvas Pro 22(2019) (GT2201), Kamvas Pro 24(GT-240.
El controlador lo pueden encontrar en la zona de descargas de la página de Huion o pueden utilizar este enlace, el controlador se encuentra disponible en dos versiones en paquete .deb y en tar.xz, al momento de escribir esto la versión más reciente es la 15.0.0.89 publicado el 26-05-2022.
Pueden ver los cambios así como los modelos agregados en cada nueva versión en este enlace que muestra el historial de actualizaciones del controlador oficial en la pestaña de Linux.
Instalación
El proceso de instalación es simple, descargan la opción .tar.xz de la página de descarga, lo extraen y abren una consola en esa ubicación luego solo tienen que ejecutar como administrador el script install.sh
con algo como su -c "sh install.sh"
o sudo sh install.sh
luego de esto reinician su computadora y les debería de aparecer el panel de control al iniciar sesión, similar al siguiente:
Desinstalación
Similar al proceso de instalación, el único cambio es el script que se ejecuta, en este caso es uninstall.sh
el comando quedaría de la siguiente forma su -c "sh uninstall.sh"
o sudo sh uninstall.sh
, luego de esto reinician su computadora.
Configuración
En la sección Pen Display > Press Key se pueden asignar los atajos a los botones físicos de la tableta así como asignarle una acción a la barra táctil.
En la sección Pen Display > Working Area se puede asignar el área de la tableta a uno o varios monitores, así como recortar partes, ajustar el área a la relación de aspecto que tenga el monitor o rotar la pantalla en caso el usuario sea zurdo. Como nota adicional a esta sección me atrevería a decir que en la versión de Linux la calibración predeterminada de la tableta gráfica esta mucho mejor que en Windows, en Windows tenía que andar “jugando” con la calibración para tener el cursor “cerca” de la punta del lápiz.
En la sección Digital Pen > Press Key se pueden asignar las acciones a los botones del lápiz de la tableta.
En la sección Digital Pen > Pressure Sensitivity Adjustment se puede configurar la curva de presión para el lápiz así como una pequeña área para probar las configuraciones.
En las opciones de la aplicación se encuentra, el listado de dispositivos, la opción de realizar o restaurar una copia de seguridad de la configuración, la configuración del idioma en la sección general y la información sobre la versión del controlador y la posibilidad de comprobar si existe actualizaciones disponibles y brindar retroalimentación sobre el controlador.
Problemas encontrados
El listado de problemas que encontré es el siguiente:
- No se puede asignar una acción diferente a la barra táctil de la tableta gráfica.
- Con el funcionamiento por defecto de la barra táctil solo funciona el gesto para zoom out, zoom in de momento no me funciona.
- Los botones laterales del lápiz no funcionan, no importa que función se les asigne.
- En algunas ocasiones se queda colgada en una acción la tableta, por ejemplo mientras presionaba la barra espaciadora para mover el lienzo en krita la tableta gráfica se quedó en esa acción, la solución fue desconectar y volver a conectar el cable USB de la tableta gráfica.
- La pestaña Store no funciona o no hace nada cuando se hace clic en ella, asumo que ha de ser un enlace directo a su sitio web.
- En general los botones en la sección About relacionados con comprobar si existen actualizaciones disponibles o de enviar retroalimentación no funcionan.
Hay que tener en cuenta que el controlador se encuentra en estado beta, que existan cosas que no funcionen es lo esperado, intenté comunicarme con Huion para preguntar si había una forma oficial de reportar el funcionamiento pero de momento no me han respondido, asumo que se podrán reportar en las cuentas oficiales, adjunto aquí todas las que se listan en el video.
Official sites
- Huion Official Website: https://huion.com/
- Huion Store: https://store.huion.com/
English
- Follow us now: https://www.youtube.com/channel/UC1i6Qtt-ude6K1sVyFOhBXw
- Facebook: https://www.facebook.com/huion
- Twitter: https://twitter.com/HuionTab
- Instagram: https://www.instagram.com/huiontablet/
Spanish
- Instagram: https://www.instagram.com/huiontableta/
- Twitter: https://twitter.com/HuionEspanol
- Facebook: https://www.facebook.com/HuionEspanol
Japanese
- Instagram: https://www.instagram.com/huion_jp/?hl=ja%C2%A0%C2%A0
- Twitter: https://twitter.com/HuionLeon_JP
Français
- Twitter: https://twitter.com/HuionFr
- Instagram: https://www.instagram.com/huiontablette/
- Facebook: https://www.facebook.com/HuionFrance/
Canada
- Instagram: https://www.instagram.com/huioncanada/
- Facebook: https://www.facebook.com/huiontabcanada
Southeast Asia
- Facebook: https://www.facebook.com/Huionsea/
German
- Instagram: https://www.instagram.com/huion_deutschland/
- Twitter: https://twitter.com/HuiontabletD
- Facebook: https://www.facebook.com/HuionDE
Beneficios del controlador oficial de Huion para Linux
- La instalación es simple y rápida.
- No se ejecuta ningún proceso extra cuando se actualiza el sistema.
- La interfaz gráfica es simple e intuitiva.
- Buen ritmo de actualización, al menos entre las dos versiones que se han lanzado han pasado 45 días aproximadamente.
Desventajas del controlador oficial de Huion para Linux
- No se encuentra en estado para ser utilizado en producción.
- De momento el soporte lo enfocan en Ubuntu con Gnome, no es imposible instalarlo en otros sistemas pero tal vez esa sea la razón por la que no funcionan ciertas cosas.
Conclusiones
- Por el momento recomiendo utilizar el controlador de DIGImend, debido a que funcionan más características de la tableta que con el oficial de Huion.
- Recomiendo probar cada versión nueva que lance Huion de su controlador para ayudar a depurar los errores y con el tiempo tener una forma simple de utilizar y configurar sus tabletas gráficas en Linux.
- Agradezco el esfuerzo de Huion por estar desarrollando una versión de sus controladores para Linux pero los invito a unir fuerzas con el proyecto DIGImend, pueden apoyar por alguno de estos medios (Patreon, Liberapay o buymeacoffee) al mantenedor principal del proyecto, ponerse en contacto con él para llegar a un acuerdo o incluso contratarlo para que les ayude en el desarrollo de su controlador.
Si alguien quiere agregar algo o realizar una corrección lo puede hacer en los comentarios.