Hola, mi nombre es Nikita y hoy hablaremos sobre la API webHAD como una forma de controlar algunos dispositivos reales directamente desde el navegador a través de USB. Pero un pequeño aviso, no solo USB, también puedes trabajar con Bluetooth, pero hoy solo hablaremos de USB.
¿Quién soy? Soy Nikita Dubko, soy desarrollador web, con unos 15 años de experiencia. Soy un podcaster un poco, jugador de D&D, me encanta hacer kayak con mis amigos y también toco un poco la batería y el piano, y lo usaremos en esta charla. También soy un experto desarrollador de Google, y para mí GDE se trata de conocimiento. Y es realmente genial asistir a algunas reuniones de GDE y aprender algo sobre nuevas API web. Por ejemplo, sobre WebHAD y hablaremos de eso ahora mismo debido a las reuniones de GDE.
¿Y cómo comenzó todo? Tal vez hayas visto en Twitter algún tipo de front-end, no es una programación real. Solo mueves algunos píxeles, coloreas algunos botones y ni siquiera tienes acceso a dispositivos reales. Nosotros, los programadores de C++, los verdaderos desarrolladores, trabajamos con dispositivos reales, usamos controladores y así sucesivamente. Pero realmente, tal vez tengamos alguna posibilidad de trabajar con dispositivos reales. Así que exploremos. Hablemos sobre algún tipo de lenguajes C++, no solo C++.
Para trabajar con dispositivos reales, debes usar la interfaz HID. HID: son los Dispositivos de Interfaz Humana. Y lo usas mucho. Por ejemplo, es el teclado, el ratón, el gamepad, todos los dispositivos que ayudan a las personas a comunicarse con laptops, PCs. Y es como una capa entre la PC y el humano. Puede ser una clase USB y una clase Bluetooth. Hoy hablaremos sobre la clase USB, pero trabajar con Bluetooth no es tan complicado.
Y hablemos de los controladores, tales controladores. Para escribir un controlador, debes conocer mucho sobre tu dispositivo y, ya sabes, los controladores son como una capa de abstracción para ayudar a nuestra aplicación a trabajar con el sistema operativo. Si tenemos alguna aplicación y quiere comunicarse con algún dispositivo real, con hardware, debe llamar a alguna biblioteca del sistema operativo que puede ser un controlador. Y este controlador usará algunos data sin procesar para comunicarse con este dispositivo real. Pregunta al dispositivo real, ¿tienes algún data? El hardware puede responder, sí, lo tengo, tómalo. El sistema operativo procesa este data y devuelve el resultado de dicho procesamiento a la aplicación. Entonces, es como una capa de abstracción, puedes escribir esta capa y llamarla controlador. Pero para ser honesto, tenemos una encuesta en nuestro sistema operativo. Entonces, cuando conectas algún dispositivo real a través de USB al sistema operativo, le pregunta al dispositivo real, ¿tienes algo? Dispositivo real, no, no tengo. ¿Tienes?
Comments