MCP2210 - Teclado HID Plug and Play

0

Estoy trabajando en algo en este momento que utiliza un ESP32. Me gustaría tener cadenas simples que pueda especificar dentro del código ESP32 para "escribir" automáticamente en la pantalla. Por ejemplo, si hiciera keyboardWrite ("Hello World") y tuviera un bloc de notas abierto en la PC / Mac, se escribiría automáticamente Hello World.

Me doy cuenta de que el ESP32 no tiene una interfaz USB, así que decidí usar un MCP2210 (SPI- > USB bridge) para tomar información (cadenas simples) del ESP32 a través de SPI y luego transferirlos a la PC. Microchip afirma que es un dispositivo plug and play, sin embargo, proporcionan un .dll para desarrollar aplicaciones para él.

Mi pregunta es: ¿hay alguna forma de llevar a cabo esto sin tener que desarrollar / instalar ningún software o controlador personalizado o cualquier .dll y simplemente sería un dispositivo plug and play para PC / Mac? Por ejemplo, ¿existe alguna forma de integrar la funcionalidad de enviar pulsaciones del teclado desde el MCP2210 en lugar de a través de una aplicación en la PC / Mac?

En resumen, ¿cómo puedo conectar un ESP32 a USB para emular un teclado USB sin ningún software adicional?

    
pregunta FShiwani

1 respuesta

0

Los dispositivos USB nunca envían nada por su cuenta. Para operar, necesitan un controlador en el lado del host para iniciar las transferencias.

En la mayoría de los casos con puentes impares, los dispositivos USB están designados para "clase miscelánea" 0xEF, y necesitan un controlador de dispositivo para iniciar las comunicaciones / configuraciones de dispositivos. Por lo general, MCHP suministra estos controladores que necesitan ser instalados. Luego, estos puentes utilizan una interfaz propietaria para ingresar y salir datos reales. Es por eso que necesita una biblioteca de varias llamadas de API en el lado del host y escriba una aplicación que use estas llamadas para comunicarse con puentes USB como MCP22xx.

El puente MCP2210 usa la clase HID como su interfaz básica y, por lo tanto, utiliza controladores de sistema operativo estándar, sin necesidad de controladores propietarios de MCHP. Aparentemente esa es su definición de "plug-n-play". Sin embargo, la conformidad con la clase HID no significa automáticamente que se trate de un teclado, puede ser un mouse, un joystick o un lector de códigos de barras, por lo que aún necesita sus herramientas y bibliotecas para configurar el puente y enviar / recibir datos SPI. p>     

respondido por el Ale..chenski

Lea otras preguntas en las etiquetas