HID (dispositivo de interfaz humana)

(Redirigido desde «Dispositivo de interfaz humana»)
Dispositivo de Interfaz Humana o HID
Información sobre la plantilla
HID.jpeg
Dispositivo de Interconexión [plug-and-play]
Inventado por:Mike Van Flandern de Microsoft
Conectado a:Puertos USB
Vía 1:Vía USB mediante conectores USB-HID.
Fabricantes:HID Global Corp. con sede en Irvine(California,EE.UU.Bandera de los Estados Unidos de América ), sedes regionales en Haverhill, Inglaterra (EMEA) y Hong Kong (Pacífico asiático).

Dispositivo de Interfaz Humana o HID. Es un dispositivo de interfaz humana o HID diseñado para ordenadores que interactúan directamente tomando entradas de humanos, y también pueden entregar una salida a los humanos.

Aspectos principales

Un dispositivo de interfaz humana o HID por sus siglas en inglés (Human Interface Device), es un tipo de dispositivo para computadores que interactúa directamente con, y que toman entradas de humanos, y que también pueden entregar una salida a los humanos. El termino "HID" comúnmente se refiere a la especificación USB-HID. El termino fue acuñado por Mike Van Flandern de Microsoft cuando el le propuso a la comitiva USB, crear un grupo de trabajo para la clase Human Input Device. El nombre del grupo de trabajo fue cambiado a la clase Human Interface Device en sugerencia de Tom Schmidt de DEC, porque la norma propuesta soportaba la comunicación bidireccional.

Motivaciones para su creación

Las principales motivaciones para HID eran las de permitir innovaciones en los dispositivos de entrada a la computadora y simplificar el proceso de instalar esos dispositivos. Antes de HID, los dispositivos normalmente se ajustaban a muy estrictos protocolos para el ratón, teclados y joystricks. Cualquier innovación en el hardware, requería sobrecargar el uso de datos en un protocolo existente o la creación de un nuevo driver y la evangelización de un nuevo protocolo para los desarrolladores de aplicación. En contraste con todos los dispositivos HID, entregan paquetes autodescriptivos que pueden contener una infinidad variada de tipos de datos y formatos. Un solo driver HID en la computadora parsea los datos y permite una asociación dinámica de datos de entrada y salida (I/O) con la funcionalidad de la aplicación. Este tiene habilitado la innovación rápida y proliferación de nuevos dispositivos de interfaz humana.

Los objetivos principales del HID

  • Ser lo más compacto posible para ahorrar espacio de datos del dispositivo.
  • Permitir la aplicación de software para omitir información desconocida.
  • Ser extensible y robusto.
  • Que soporte la anidación y las colecciones.
  • Ser autodescriptivo para permitir aplicaciones de software genéricas.

Estándar del HID

El estándar del HID fue desarrollado por una comisión de trabajo con representantes de varias empresas, esta lista de participantes puede ser encontrada en el documento "Device Class Definition for Human Interface Devices (HID)". El concepto de un autodescribible protocolo libre, fue inicialmente concebido por Mike Van Flandern y Manolito Adan, cuando se encontraban trabajando en el proyecto llamado Raptor en Microsoft e independientemente por Steve McGowan mientras trabajaba en el protocolo de un dispositivo para Access Bus en Forte. Después de comparar notas en la conferencia de Consumer Game Developer, Steve y Mike aceptaron colaborar en un nuevo estándar para el emergente Universal Serial Bus USB.

HID comunes

  • Teclado(informática)Teclado
  • Mouse,Trackball,Touchpad,Pointing stick
  • Graphics tablet

HID menos comunes

  • Driving simulator devicesand flight simulator devices have HIDs such as gear sticks,steering wheels and pedals.
  • Nintendo Power Glove
  • Dance pad
  • Wii Remote

La mayoría de los sistemas operativos reconocen dispositivos estándares USB-HID, como lo son los teclados y los ratones, sin necesidad de un controlador especial. Cuando se conectan, generalmente se despliega un mensaje en la pantalla diciendo que "un dispositivo HID-compliant ha sido reconocido" En comparación, este mensaje usualmente no aparece para los dispositivos que son conectados a conectores de 6 pines PS/2 lo cuales preceden al USB. El conector PS/2 no soporta plug-and-play, lo que significa que conectar un teclado o ratón PS/2 con el computador encendido no siempre funcionarán. Además, PS/2 no soporta el protocolo HID.

Componentes del protocolo HID

En el protocolo HID, existe 2 entidades: el "host" y el "dispositivo". El dispositivo es la entidad que directamente interactúa con un humano, como lo hace un teclado o un ratón. El host se comunica con el dispositivo y recibe datos de entradas del dispositivo en las acciones ejecutadas por el humano. Los datos de salidas van del host a el dispositivo y luego al humano. El ejemplo más común de un host es un computador pero algunos celulares y PDAs también pueden ser hosts.

El protocolo HID realiza la implementación de los dispositivos muy sencillo. Los dispositivos definen sus paquetes de datos y luego presentan un "Descriptor HID" al host. El descriptor HID es codificado como un arreglo de bytes que describen los paquetes de datos del dispositivo. Esto incluye: cuantos paquetes soporta el dispositivo, que tan grandes son los paquetes, y el propósito de cada byte y bit en el paquete. Por ejemplo, un teclado con un botón que ejecuta el programa de calculadora puede decirle al host que el estado de presionar/soltar ese botón, es almacenado en el 2 bit del 6 byte en el paquete de datos número 4 (nota: estas localizaciones solo son ilustrativas y son especificas al dispositivo). El dispositivo normalmente almacena el descriptor HID en la ROM y no se necesita intrínsecamente parsear el descriptor HID. Algunos hardwares de ratones y teclados en el mercado de hoy, son implementados usando solo un 8-bit CPU.

Se espera del host que sea más una entidad más compleja que el dispositivo. El host necesita agarrar el descriptor HID del dispositivo y lo parsea antes que se puede entablar la comunicación con el dispositivo. Parsear el descriptor HID puede ser complicado. Muchos sistemas operativos son conocidos de tener shipped bugs en los drivers de los dispositivos para parsear los descriptores HID años antes de que los drivers del dispositivo fueran originalmente lanzado al publico. Sin embargo, esta complejidad es la razón del porque la innovación rápida con dispositivos HID fuesen posibles.

El mecanismo anterior describe los que es conocido como "el modo de reporte" HID. Ya que se conoce que no todos los host estarán en la capacidad de parsear los descriptores HID. El HID también define "el modo de arranque". En modo arranque, solo dispositivos específicos soportan características especificas ya que paquetes de datos definidos son usados. El descriptor HID no es usado en este modo así que la innovación está limitada. Sin embargo, el beneficio es que esta mínima funcionalidad es aun posible en los host que no soportan HID. Los únicos dispositivos soportados en modo arranque son:

  • Teclado — Solo el núcleo de 104 teclas es soportado. Cualquier funcionalidad avanzada no está disponible. Por ejemplo,un teclado en particular US con teclas QWERTY funcionaran,pero las teclas Calculadora y Apagar no.
  • Ratón — Solo los eje-X y eje-Y,la rueda, y los primeros 3 botones están disponibles. Cualquier adicional característica en el ratón no funcionara.

Un uso común del modo arranque esta durante las primeras secuencias cuando el computador arranca. Configurando directamente la BIOS de la computadora es a menudo hecha usando modo de arranque.

Otros protocolos usando HID

Ya que HID fue definido originalmente sobre USB, HID también es usado en otros buses de comunicación de computadora. Esto permite a los dispositivos HID que normalmente solo eran encontrados en USB, que también sean usados en alternativos buses. Esto es hecho ya que soportar existentes dispositivos USB HID pueden ser adaptados más rápidos que tener que inventar completamente un nuevo protocolo que soporte un ratón, teclado, etc. Buses conocidos que usan HID son:

  • Bluetooth HID — Bluetooth es una tecnología de comunicación inalámbrica. Muchos ratones y teclados Bluetooth ya existen en el mercado.
  • Serial HID — usado en receptores de control remotos en Microsoft Windows Media Center.

Fuentes