En esta entrada vamos a ver como conectar una pantalla táctil HDMI de 7 pulgadas (aunque la guía vale para cualquier tamaño) a nuestra Raspberry Pi 3. En nuestro caso vamos a conectar una pantalla como esta, que podéis comprar (aquí por 38€, o si preferís con un poco menos de resolución por 32€ aquí).

Pantalla de siete pulgadas
Pantalla de siete pulgadas HDMI y con capacidad táctil.

Por lo tanto para comenzar necesitamos tener a mano:

  • Pantalla como las de arriba
  • Conector HDMI
  • Raspberry pi 3

Conectando todo

La conexión entre los componentes es muy sencilla. Primero conectamos el puerto de GPIOs. Luego añadimos el adaptador HDMI para conectar la pantalla y el Raspberry pi. Solo nos queda
alimentar la Raspberry Pi 3 y listo. En caso de no conectar los GPIOs, por ejemplo si queremos tener la pantalla y la RPI separada conectada con un cable HDMI normal, habría que alimentar con 5 voltios la pantalla a través del conector que pone Power Only justo al lado del HDMI.

Configuración Raspbian

En nuestro caso vamos a configurar la pantalla con Raspbian. Necesitamos la versión con escritorio (sino para que queremos el táctil?). Vamos a realizar todo suponiendo la pantalla de 1024×600, para otras resoluciones es igual, solo hay que cambiar un par de valores.

Fichero /boot/config.txt

Lo primero que haremos será configurar el arranque. Tenemos que buscar o añadir las siguientes líneas en el fichero ‘/boot/config.txt’:

#hdmi
disable_overscan=1
hdmi_cvt=1024 600 60 3 0 0 0
hdmi_group=1
hdmi_mode=3

dtparam=i2c_arm=on
dtparam=spi=on
dtoverlay=ads7846,penirq=25,speed=10000,penirq_pull=2,xohms=150

Fichero ’99-calibration.conf’

Lo siguiente que nos quedaría, sería configurar la parte táctil de la pantalla. Para ello tenemos que añadir un controlador de Inputs en el X11. Para eso, si no existe creamos, la carpeta ‘/etc/X11/xorg.conf.d/’ y dentro de esta carpeta el fichero ’99-calibration.conf’ (La ruta completa quedaría ‘/etc/X11/xorg.conf.d/99-calibration.conf‘)

Section "InputClass"
Identifier "calibration"
MatchProduct "ADS7846 Touchscreen"
Option "Calibration" "3853 170 288 3796"
Option "SwapAxes" "1"
EndSection<br>

En caso mi caso, los ejes de la pantalla táctil estaban mal colocados y para ponerlos en su sitio tuve que añadir más configuraciones para cambiar los ejes. El fichero de configuración me quedo tal que así:

Section "InputClass"<br>Identifier "calibration"
MatchProduct "ADS7846 Touchscreen"
Option "Calibration" "3853 170 288 3796"
Option "SwapAxes" "1"
Option "InvertX" "true"
Option "InvertY" "true"
Option "TransformationMatrix" "0 1 0 -1 0 1 0 0 1"
EndSection

Con esto ya podemos reiniciar y tendremos nuestra pantalla táctil completamente funcional 😀

Pantalla táctil inicio
Inicio de sesión de escritorio en la pantalla táctil

Gluón

Teleco con ganas de aprender más y compartirlo. Viajero empedernido y amante de la fotografía y la tecnología. Espero dejar mi granito de arena y que este pueda servir de ayuda.