Las pantallas táctiles son muy comunes en dispositivos como smartphones, consolas, ordenadores “todo-en-uno” y tablet. También juegan un papel un importante en el diseño de aparatos digitales como los paneles de señalización, Terminales punto de venta (TPV), Dispositivos GPS, teléfonos móviles, videos juegos y libros electrónicos. Android, uno de los principales sistemas operativos para ODROID, cuenta con una interfaz de usuario muy intuitiva diseñada para usarse en pantallas táctiles. Este artículo describe cómo usar ODROID para convertir cualquier monitor o TV en una gigante Tablet Android.
Tecnología Infrarroja vs Tecnología Capacitiva
Las pantallas táctiles usan principalmente tecnología por infrarrojos o tecnología capacitiva. Ésta última es la que está más entendida entre los smartphones y tablet pero también es la más cara, especialmente cuando el tamaño de la pantalla supera las 20 pulgadas. Una pantalla capacitiva sólo funciona con el dedo (o con un puntero) y puede presentar dificultades si el monitor no está correctamente montado. Teniendo en cuenta su facilidad de uso y bajo coste, vamos a utilizar la pantalla táctil por infrarrojos para este proyecto.
Sistema de cuadrícula por Infrarrojos (IR)
Una pantalla táctil por infrarrojos utiliza una matriz LED de infrarrojos X-Y y fotodetectores en los bordes de la pantalla para detectar una interrupción en el patrón LED. Estas líneas LED se cruzan entre sí en vertical y horizontal, que ayuda a los sensores a detectar la ubicación exacta cuando se toca la pantalla. Una principal ventaja del sistema por infrarrojos es que puede detectar cualquier entrada, un dedo, un guante, un lápiz o un bolígrafo. Generalmente se utiliza en dispositivos al aire libre y terminales punto de venta en los que puede presentar cierta dificultad la utilización de una pantalla táctil.
A diferencia de las pantallas táctiles capacitivas, las pantallas táctiles por infrarrojos no requieren ningún patrón en el cristal, lo que mejora la durabilidad y claridad del sistema. Sin embargo, estas pantallas son más sensibles a la suciedad y al polvo. Además, no son aptas para superficies curvas y se pueden activar elementos erróneamente cuando el usuario desliza el dedo por la pantalla.
Cómo elegir una pantalla táctil por infrarrojos
Podemos montar nuestra propia pantalla táctil siguiendo cualquier tutorial que localicemos en internet, pero no es tarea fácil ya que el algoritmo multi-táctil es bastante complejo al igual que alinear correctamente el emisor/receptor IR, tal y como se muestra en la Figura 4.
A la hora de comprar una pantalla táctil por inflarrojos nos asegurarnos de su compatibilidad con Android. Debemos tener en cuenta los siguientes requisitos:
1) ¿Aparece la pantalla táctil en la lista de compatibilidad multitáctil de Linux?
http://lii-enac.fr/en/architecture/linux-input/multitouch-devices.html
En caso afirmativo, activar la pantalla táctil será relativamente fácil.
2) ¿La pantalla táctil es compatible con Windows 8?
En caso afirmativo, será necesario hacer algunas modificaciones en el Kernel y en el archivo de configuración de entrada.
3) ¿La pantalla dispone de un controlador específico para Android suministrado por el fabricante?
En caso afirmativo, debemos seguir sus instrucciones
En el mercado coreano y chino no hay disponibles pantallas compatibles con Linux. Algunos fabricantes de china ofrecen drivers específicos que en la práctica no son muy útiles. La mejor alternativa es hacerse con una pantalla táctil que admita Windows 8 y el estándar Plug & Play.
Es muy importante comprobar si la pantalla táctil es realmente compatible con Windows 8. Los dispositivos Plug & Play no requieren de un driver independiente para ser instalado en un PC con Windows. Si la pantalla táctil necesita un driver específico, nos está indicando que no es compatible al 100% con Windows 8 y posiblemente presentará problemas con Android.
Conectar la pantalla táctil a Android
Debemos seguir cuatro pasos para usar una pantalla táctil con Android:
Conseguir el número de identificación (ID) del proveedor y del producto desde la interfaz USB de la pantalla táctil
Modificar los archivos hid-ids.h y hidmultitouch.c, localizados en el directorio kernel/drivers/hid/
Compilar el Kernel con la opción multi-táctil habilitada, y trasladar la imagen del kernel al ODROID
Crear un archivo IDC (Configuración del dispositivo de entrada).
Paso 1: Consultar valores VID y PID
Conecta la pantalla táctil a cualquier PC con Linux. A continuación, localiza el valor VID y PID escribiendo “lsusb” en el terminal tal y como muestra la figura 5
Para determinar qué entrada está asociada a la pantalla táctil, debemos comparar la lista de dispositivos antes y después conectar la pantalla. La nueva entrada que aparezca corresponderá al dispositivo de pantalla táctil.
Durante nuestro proyecto, cuando conectamos la pantalla táctil de 23 pulgadas, aparecido la siguiente entrada VID:03FC, PID:05D8 que corresponde a una pantalla táctil fabricada por Elitegroup Computer Systems. Con una pantalla táctil de 42 pulgadas aparece la entrada VID:1870, PID:0119 que corresponde a una pantalla táctil de Nexio Co., Ltd. Cada pantalla conectada mostrará diferente información del fabricante y diferentes valores VID Y PID.
Paso 2: Modificar archivos hid-ids.h y hidmultitouch.c
Tras descargar el correspondiente código fuente del kernel de Android desde dn.odroid.com, entra en el directorio kernels/drivers/hid/, abre el archivo hid-ids.h y añade los valores VID y el PID al final del mismo.
Además, añada el nuevo ID al archivo hidmultitouch.c que debe escribirse con una estructura especifica hid_device_id mt_devices.
Paso 3: Compilar el kernel con la opción HID-MULTITOUCH activada
Escribe "make menuconfig" para configurar el kernel, dirígete a Device Drivers > HID Devices > Special HID drivers > HID Multitouch panels y seleccionarlo para activar el driver (*), tal y como muestra la figura 8
Selecciona las dos opciones que aparece a continuación ya que es un driver integrado, indicadas con un asterisco (*)
Device Drivers -> Input device support -> touch screens -> USB touch screen Driver
Device Drivers -> Input device support -> touch screens -> GeneralTouch touch screen device support
Guarda la configuración del kernel y compílalo para hacer una zImage .
Traslada la zImage a tu ODROID a través del protocolo fastboot en el u-boot .
Paso 4: Crear un archivo IDC (Configuración del dispositivo de entrada)
Si no se crea correctamente el archivo IDC, la resolución de la pantalla táctil no coincidirá con la resolución HDMI
El archivo IDC es un archivo de texto plano en formato Unix.
Aquí tienes un ejemplo. Puedes usar este archivo tal cual.
touch.deviceType = touchscreen touch.orientationAware = 1 device.internal = 1 keyboard.layout = qwerty keyboard.characterMap = qwerty2 keyboard.orientationAware = 1 keyboard.builtIn = 1cursor.mode = navigation cursor.orientationAware = 1El nombre del archivo debe ser Vendor_xxxx_Product_yyyy.idc (xxxx: ID Proveedor, yyyy: ID Dispositvo). Yo he creado dos archivos para Elitegroup y Nexio. El nombre del archivo es sensible a las mayúsculas.
Vendor_03fc_Product_05d8.idc y Vendor_1870_Product_0119.idc
Copia los archivos IDC a tu ODROID utilizando los siguientes comandos:
adb remount adb push Vendor_03fc_Product_05d8.idc /system/usr/idx/. adb push Vendor_1870_Product_0119.idc /system/usr/idc/. adb reboot
Cómo fijar el panel táctil de 42 pulgadas a la pantalla de TV .
Prepara la pantalla táctil
Coloca cinta de doble cara sobre el marco de la pantalla táctil
Acopla con cuidado la pantalla táctil al televisor y alinéala.
Prueba la pantalla táctil. Nuestra pantalla llego a detectar hasta 6 puntos.
Cómo fijar el panel táctil de 23 pulgadas a la pantalla del monitor.
Esta pequeña pantalla de 23” viene con 4 correas de velcro que facilitan bastante su montaje.
Conclusión
Además de su uso personal y como plataforma de juegos, ODROID es ideal como dispositivo informático para quioscos, señalización digital e investigación de interfaces entre otras aplicaciones, gracias a su alto potencial y bajo coste. Al tratarse de una plataforma abierta permite modificaciones como esta pantalla táctil.
Puedes ver los resultados de este proyecto en http://youtu.be/b8_cV_NeWQ8, y para tener más acción Minecraft con la gigante tablet Android, visita http://www.youtube.com/watch?v=HDsnuxchxtU.
Be the first to comment