Estoy trabajando en un proyecto de gafas inteligentes que está utilizando un Intrinsyc Open-q 2500 SOM (conectado a una placa breakout personalizada) que utiliza un procesador Snapdragon, ejecutando un SDK Android personalizado (Oreo 8.1) hecho para relojes inteligentes.
Para navegar por la interfaz de usuario de Android, así como por las aplicaciones, esperamos utilizar un chip sensor táctil IQS223, que dará una salida alta durante un breve período cuando se detecte un gesto. Por ejemplo, si se detecta un deslizamiento hacia adelante, el pin1 (conectado al GPIO1 del SOM) se pondrá en alto durante 80ms, o si se detecta un TAP, el pin2 (conectado al GPIO2 del SOM) se pondrá en alto durante 80ms.
He leído que es posible conectar la navegación/control de una aplicación a través de un teclado externo. Todos los widgets interactivos son enfocables, lo que significa que el widget seleccionado es resaltado (a través de un brillo o cambio de apariencia). Por lo tanto, parece que debería ser capaz de disparar un evento de teclado en la detección de un cambio de entrada GPIO, y utilizar ese evento para desencadenar una acción. Por ejemplo, al detectar una entrada alta en el GPIO1, dispararía un evento de pulsación de tecla "Enter".
Mi pregunta es ¿cómo puedo hacer esto para la interfaz de usuario principal de Android (navegación de la configuración, la selección de una aplicación en el menú principal, etc.)? Es decir, quiero configurar la interfaz de usuario principal de Android para que sea enfocable (si es posible) para que pueda navegar / controlar el dispositivo mediante la simulación de pulsaciones de teclas, que se disparan cuando un nivel de entrada cambia en un determinado pin GPIO.
¿Hay algún método alternativo para conseguirlo?
0 votos
En la dirección de @Puspam respuesta, ¿ha mirado en la construcción de su propio Servicio de accesibilidad para manejar la traducción de la entrada GPIO.
0 votos
Gracias @MorrisonChang, parece la información que estaba buscando. Parece que voy a ser capaz de vincular un evento de pulsación de tecla (generado por la entrada GPIO) a una acción de navegación mediante la creación de un servicio de accesibilidad.
0 votos
Si puedes/necesitas hacer una Custom ROM, pues a ver: source.Android.com/devices/input/touch-devices para las consideraciones relativas al controlador táctil.
0 votos
¡Genial! Eso también parece que será útil. Tenemos una ROM personalizada proporcionada por Intrinsyc, por lo que es sólo una cuestión de configurar el DT / Driver para generar un evento específico de pulsación de tecla en el cambio de nivel de entrada GPIO.