[HOWTO] LCD4Linux en Debian con soporte para serdisplib

Probablemente ésta es una guía de poco interés para la mayoría del público, pero me interesa dejarla publicada tanto para usarla para mi propia referencia en el futuro como para esa pequeña minoría de usuarios de Debian (o Ubuntu) que tengan un LCD gráfico soportado por serdisplib.

Todo esto viene al caso porque mi nuevo LCD es un Hitachi SP14Q002-A1 de 320×240 píxeles con chip SD1D13700, perfectamente soportado por serdisplib. Además, se lo he comprado a Henri Skippari (autor de LCDInfo) que además se curra unas placas controladoras muy majas (USB13700) para poder usar éstos LCDs a través de USB. Así que se dan tres circunstancias que me incitan a escribir esta guía:

  • Serdisplib no está incluido en ninguno de los repositorios oficiales de Debian, y tampoco existen (que yo sepa) repositorios no oficiales para instalarlo sin compilar
  • Si bien lcd4linux está incluido en Debian en su versión más reciente, no está compilado por defecto con soporte para serdisplib.
  • Por último, el soporte de serdisplib para el controlador USB13700 sólo está hasta la fecha en el SVN.

Por esta última razón, además, ya que nos ponemos a compilar, lo vamos a hacer desde SVN en ambos casos (lcd4linux y serdisplib) ya que suelen ser bastante fiables a pesar de todo.

¡Vamos allá!

Vamos a descubrir las maravillas de compilar una versión SVN y de crear paquetes DEB que nos servirán para instalar de forma limpia y eficiente los programas compilados en el sistema.

Serdisplib

Vamos primero con serdisplib. Nos situamos en una carpeta cualquiera (mejor dentro de tu home) y ejecutamos el comando necesario para descargarnos la versión SVN actual de serdisplib. Recuerda que para usar SVN necesitarás tener instalado el paquete subversion.

svn co https://serdisplib.svn.sourceforge.net/svnroot/serdisplib/serdisplib/branches/serdisplib-1.98.x serdisplib-1.98.x

Para los dos siguientes pasos vamos a necesitar instalar build-essential (para compilar) y checkinstall (para crear el paquete DEB). También necesitaremos instalar los paquetes libusb y libusb-dev para compilarlo con soporte USB.

Ya estamos listos para configurarlo…

cd serdisplib-1.98.x ./configure --enable-libusb

…y compilarlo

make

Ahora sólamente con usar el comando checkinstall (como root) accederemos a un asistente que nos hará varias preguntas ynos creara en un momento un paquete DEB que podremos usar para instalar limpiamente serdisplib.

checkinstall

LCD4Linux

Para instalar LCD4Linux prácticamente repetimos los pasos anteriores. Primero nos bajamos la versión actual SVN:

svn co https://ssl.bulix.org/svn/lcd4linux/trunk lcd4linux

Ahora configuramos.

cd lcd4linux ./configure

Si la configuración ha acabado bien, al final mostrará un resumen de los drivers y plugins con los que va a ser compilado. Nos tenemos que asegurar de que va a ser compilado con soporte para serdisplib fijándonos en la sección de drivers. Aquí no debe haber ningún problema si ya hemos instalado antes el paquete creado para serdisplib.

-----------------------------------------
including drivers:
   drv_BeckmannEgle.o drv_BWCT.o drv_Crystalfontz.o drv_Curses.o drv_Cwlinux.o drv_D4D.o drv_EA232graphic.o drv_G15.o drv_GLCD2USB.o drv_HD44780.o drv_IRLCD.o drv_LCD2USB.o drv_LCDTerm.o drv_LEDMatrix.o drv_LPH7508.o drv_M50530.o drv_MatrixOrbital.o drv_MatrixOrbitalGX.o drv_MilfordInstruments.o drv_Noritake.o drv_NULL.o drv_Pertelian.o drv_PHAnderson.o drv_picoLCD.o drv_picoLCDGraphic.o drv_RouterBoard.o drv_Sample.o drv_serdisplib.o drv_ShuttleVFD.o drv_SimpleLCD.o drv_T6963.o drv_Trefon.o drv_USBHUB.o drv_USBLCD.o drv_WincorNixdorf.o drv_X11.o drv_Image.o drv_generic_text.o drv_generic_graphic.o widget_image.o drv_generic_gpio.o drv_generic_parport.o drv_generic_serial.o drv_generic_i2c.o drv_generic_keypad.o
-----------------------------------------

Ahora, como es costumbre, compilamos…

make

…y creamos el paquete correspondiente para instalarlo:

checkinstall

Si estamos ejecutando checkinstall como root lo más normal es que tras crear el paquete ya lo deje instalado (fíjate en los mensajes del final del asistente) pero si no es así, podemos instalar los paquetes creados fácilmente ejecutando éste comando como root:

dpkg -i nombre-del-paquete.deb

Y ya tenemos lcd4linux instalado limpiamente como un paquete DEB, y con soporte de serdisplib. Para hacer una comprobación «en vivo» de que efectivamente tenemos lcd4linux funcionando con dicho soporte, ejecutamos el siguiente comando, que sirve para pedir a lcd4linux qué drivers tiene disponibles en este momento:

lcd4linux -l

Con esto ya tenemos todo lo necesario para empezar a configurar lcd4linux y empezar a mostrar información en el LCD, pero lo de configurarlo va para otra entrada más adelante.

Previous Post Next Post

2 Comments

  • Reply novatux 1 febrero, 2013 at 23:07

    Pues aunque creas que posiblemente no sea muy útil, yo te agradezco que lo hayas publicado porque tengo 2 pantallas alphacool y siempre conectadas a sistemas linux y nunca me acuerdo cuando cambio algo de como reconfigurarlas.
    Gracias

  • Reply Angel 26 abril, 2019 at 10:22

    Hola, es un post antiguo, pero es de lo poco que he encontrado que intuyo que me pueda valer. Tengo un LCD alphacool desde hace años años sin usar, ( este, https://www.coolmod.com/alphacool-lcd-grafico-externo-240×128-silver-azul-precio ). Me dio por buscar para poder usarlo con una raspberry pi 3 b+ y que por ejemplo me saque info de pi-hole, pero no había encontrado nada que lo arrancara. Podría funcionar en este caso? Si tienes un ratito explícame un poco los pasos que debería hacer ya que imagino que en 6 años ya no será lo mismo. Saludos y gracias de antemano.

  • Responder a Angel Cancel Reply

    Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.