¿Existe una buena solución para reenviar la entrada del mouse y el teclado de una computadora (a la que se accede de forma remota) a otra mediante una conexión USB?

¿Existe una buena solución para reenviar la entrada del mouse y el teclado de una computadora (a la que se accede de forma remota) a otra mediante una conexión USB?

Primero, he vistoesteyesteviejas preguntas.

Sin embargo, mientras tanto, han pasado varios años y tengo un caso de uso ligeramente diferente y, por lo tanto, estoy buscando una solución diferente, con suerte, eficiente/buena:

Contamos con un laboratorio con un dispositivo de prueba integrado. No podemos instalar ningún software en él. Sin embargo, podemos conectar exactamente un juego de mouse y teclado USB. Ahora queremos darle a los desarrolladores (uno a la vez es absolutamente suficiente) acceso pseudo remoto.

Nuestra configuración deseada para esto sería una caja de Windows o Linux (barata) frente a nuestro dispositivo integrado que tenga una cámara HD filmando la pantalla de la consola de nuestro dispositivo integrado. Configurar y administrar el acceso remoto a dicha caja sería fácil. Ver la consola del dispositivo integrado también funcionaría naturalmente como transmisión de video en la caja (el retraso, la velocidad de fotogramas y la calidad del video no son un problema ni son críticos).

Sin embargo, ¿cómo podríamos transferir la entrada del mouse y el teclado desde la caja al dispositivo integrado? Por cierto, las pulsaciones de teclas no son suficientes, también hay que transmitirlas con el ratón. Mi problema es que las entradas del mouse y el teclado provienen de la conexión de escritorio remoto y no del hardware en el sitio; de lo contrario, un simple interruptor USB sería suficiente. Por lo tanto, lo mejor sería un software que simule/reenvíe el mouse y el teclado como salida USB desde la caja a la que se accede de forma remota al dispositivo integrado. Pero no pude encontrar algo así.

¿Existe tal software? Y si no, ¿existe alguna otra solución para este caso de uso? Cualquier cosa que funcione estaría bien, solo espero poder deshacerme de las soluciones KVM sobre IP de 2-3k que parecen una exageración...

Respuesta1

Lo que finalmente necesita aquí es una forma de que un sistema se presente como un USB.dispositivoen lugar de un USBanfitrión. Es prácticamente imposible hacer esto con Windows (estécnicamenteposible, pero necesita la edición Windows 10 IoT o una versión anterior equivalente), pero Linux tiene soporte nativo para emular un dispositivo USB y, de hecho, puede emular casi cualquier dispositivo USB.

El problema es que también necesita soporte de hardware para esto, no solo soporte de software, y encontrar dicho hardware es un poco complicado porque los fabricantes usan una variedad de nombres para esta funcionalidad. Por lo general, está etiquetado como USB OTG (o On-The-Go, que es el término oficial USB-IF para un dispositivo de modo dual), compatibilidad con dispositivos USB (la terminología oficial del kernel de Linux) o modo de dispositivo USB.

Conozco de memoria dos computadoras Linux de placa única económicas que admiten esta funcionalidad:

Ambos son más que suficientes para lo que estás hablando, pero requerirán algo de codificación adicional para emular realmente un teclado y un mouse (no te preocupes, no es difícil, solo que generalmente es tan específico de la aplicación que realmente no hay buen software disponible para ello). Personalmente elegiría el Pi Zero W, ya que debería ser más fácil comenzar a trabajar con esta aplicación (el Beaglebone ya usa activamente el modo gadget en su firmware, por lo que será más trabajo agregarlo que comenzar desde cero). y también tiene soporte nativo MIPI CSI (interfaz serie de cámara, un estándar ampliamente utilizado para cámaras en dispositivos Linux integrados), por lo que podría integrar fácilmente una cámara compatible (por ejemplo,el módulo de cámara Raspberry Pi V2) en la configuración para proporcionar la transmisión de video.

información relacionada