Skip to main content

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)

驴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

Agradecimientos

Gracias a Pete LePage y Kayce vascos para revisar este art铆culo.

Foto por Ugur Akdemir en Unsplash