Conexión a dispositivos poco comunes desde su aplicación.
Actualizado
La API de WebHID es parte de proyecto de capacidades y actualmente está en desarrollo. Esta publicación se actualizará a medida que avance la implementación.
¿Qué es la API de WebHID?
Existe una larga lista de dispositivos de interfaz humana (HID) que son demasiado nuevos, demasiado antiguos o poco comunes para que los controladores de dispositivos de los sistemas puedan acceder a ellos. La API WebHID resuelve esto proporcionando una forma de implementar la lógica específica del dispositivo en JavaScript.
Casos de uso sugeridos para la API de WebHID
Un HID toma información de los seres humanos o les proporciona resultados. Ejemplos de dispositivos incluyen teclados, dispositivos señaladores (mouse, pantallas táctiles, etc.) y gamepads. los Protocolo HID hace posible acceder a estos dispositivos en computadoras de escritorio utilizando controladores del sistema operativo. La plataforma web admite HID basándose en estos controladores.
La imposibilidad de acceder a dispositivos HID poco comunes es particularmente dolorosa cuando se trata de compatibilidad con gamepad. Los gamepads diseñados para PC a menudo usan HID para las entradas del gamepad (botones, joysticks, disparadores) y salidas (LED, rumble). Sin embargo, las entradas y salidas del gamepad no están bien estandarizadas y los navegadores web a menudo requieren una lógica personalizada para dispositivos específicos. Esto es insostenible y da como resultado un soporte deficiente para la larga cola de dispositivos más antiguos y poco comunes. También hace que el navegador dependa de las peculiaridades presentes en el comportamiento de dispositivos específicos.
Estado actual
Paso | Estado |
---|---|
1. Crea un explicador | Completar |
2. Crear borrador inicial de especificación | En progreso |
3. Recopile comentarios y repita el diseño | En progreso |
4. Prueba de origen | Empieza en Chrome 86 |
5. Lanzamiento | No empezado |
Demos, demos, demos
Uno de los miembros de mi equipo está trabajando actualmente en un artículo de instrucciones. Dado que WebHID está comenzando una prueba de origen en Chrome 86, algunos de nosotros queríamos avisarle y compartir algunas demostraciones para jugar. Si tiene curiosidad acerca de cómo funciona alguno de estos ejemplos, el código fuente de todos ellos está disponible en GitHub. Hay un ejemplo de código barebones en el explicador.
Para usar las demostraciones, habilite el #enable-experimental-web-platform-features
bandera en chrome://flags
.
Retroiluminación del teclado de MacBook Pro
La mayor barrera para probar cualquiera de estas demostraciones es la falta de acceso al dispositivo. Afortunadamente, si tiene una MacBook Pro con TouchBar, no necesita comprar nada. Esta demostración le permite utilizar la API directamente desde su computadora portátil. También muestra cómo se puede usar WebHID para desbloquear la funcionalidad de los dispositivos integrados, no solo los periféricos.
Autor: FWeinb
Demo / Fuente: Luz de fondo del teclado
Controladores de juegos
El siguiente paso es algo que probablemente tengan menos de ustedes. El DualShock 4 de Sony es un controlador inalámbrico para consolas de juegos PlayStation 4.
La demostración de DualShock 4 utiliza WebHID para recibir los informes de entrada sin procesar del DualShock 4 y proporciona una API de alto nivel para acceder a las entradas del giroscopio, acelerómetro, panel táctil, botón y joystick del controlador. También admite retumbar y configurar el color de un LED RGB alojado dentro del controlador.
Autor: TheBITLINK
Manifestación: Demostración de DualShock 4 (Fuente)
El BlinkStick Strip
BlinkStick Strip es una tira de luz compatible con HID con 8 LED RGB. La demostración permite al usuario seleccionar entre varios patrones de parpadeo, incluidos persecución, parpadeo y escáner Larson (también conocido como Cylon).
Autor: Robat Williams
Manifestación: tira parpadeante (fuente)
Parpadear, parpadear, parpadear
¿Qué hace esta demostración? (Espérelo.) Parpadea. En realidad, son tres demostraciones que usan la luz de notificación USB parpadeante (1).
blink (1) es simple y está bien documentado, lo que lo convierte en una excelente opción para comenzar con HID.
Autor: Tod E. Kurt
Población: parpadear (1) (fuente)
Conclusión
Espero haber despertado su interés en la API de WebHID. Mire este espacio en las próximas semanas para conocer las actualizaciones y la Parte II de la introducción, que le mostrará cómo usar la API usted mismo.
Enlaces Útiles
¿Quieres ir más profundo?
Agradecimientos
Gracias a Pete LePage y Kayce vascos para revisar este artículo.
Foto por Ugur Akdemir en Unsplash