Tengo algunos sistemas básicos que ejecutan el software heredado en hardware chirriante. Quiero ser capaz de automatizar muchas tareas mediante el uso de secuencias de comandos automáticas de teclas para tareas que actualmente se deben realizar manualmente. Realmente no quiero instalar ningún software en estas máquinas, y en algunos casos no puedo (ya que ya están al máximo en recursos, o ejecutando compilaciones de Linux, o ejecutando extrañas versiones de Windows simplificadas desde la edad de piedra)
Necesito una solución por la cual pueda recibir pulsaciones de teclas en una máquina en tiempo real sin instalar cualquier software en él. Sin embargo, requerir controladores o software en la máquina que envía pulsaciones de teclas no es problema.
Ese es el problema que necesito resolver. Dada la restricción en la máquina receptora, solo puedo imaginar que una solución podría ser que la entrada sea a través de un dongle Bluetooth o un receptor USB que se registre como un teclado, pero en realidad recibe pulsaciones de teclas que se originan en otra computadora. Si alguien sabe si existe tal pieza de hardware, ¿podría publicar a continuación? O, como alternativa, cualquier otra solución que cumpla los objetivos.
Puede usar un KVM remoto basado en IP para generar pulsaciones de teclas en otra máquina en tiempo real.
Simplemente conecte el teclado del KVM (y opcionalmente el video y el mouse) a la computadora a la que desea enviar las pulsaciones de teclas remotas.
A continuación, se conecta a la IP en el KVM a través de su navegador web o la aplicación de sistema nativa proporcionada, y envía las pulsaciones de teclas que desee.
Uno de esos productos es Control remoto del servidor Tripp Lite, KVM externo sobre IP y otro es el Lantronix Spider KVM
Alternativamente, puede reconstruir una versión de uno de estos con solo soporte para teclado (en lugar de soporte para teclado, video y mouse) usando un Teensy USB Dev Board conectado a un Módulo de Ethernet WIZ712MJ con el Kit adaptador Ethernet WIZ812
En ese punto, podrías usar Teensy's ethernet y teclado bibliotecas para escribir un pequeño programa que genera un servidor usando Server.begin()
, espera una conexión y luego tiene un bucle while infinito con algo así como el siguiente contenido para crear un servidor de eco de red unidireccional:
if (myclient.available()) {
Keyboard.print(myclient.read());
}
Es probable que desee completar eso con algunas comprobaciones de errores y similares, pero debería funcionar como un esqueleto.
Aquí hay una posible solución, se requiere ensamblaje.
Puede usar un microcontrolador para recibir pulsaciones de teclas a través de la red y transferirlas a la computadora a la que está conectado. Una posible opción sería Arduino plataforma y es teclado biblioteca, ya que puede ser más simple que hacer el hardware y las bibliotecas usted mismo. También necesitará software de bricolaje para enviar las teclas y, en el caso de Arduino, se puede escribir en su IDE (entorno JAVA simplificado). Existen otras plataformas y la mayoría pueden reducirse en el entorno de producción si considera que es demasiado grande o costoso de implementar (ya que puede necesitar más de uno).
Esto está lejos de ser una solución lista para usar, pero es posible que pueda adaptar algo como el USB Teensy para lograr esta misión Me imagino configurando el Teensy USB para que aparezca como un teclado, luego cargando un programa en el Teensy USB que
- recibe pulsaciones de teclas sobre una conexión en serie conectada a sus pines de E / S y
- envía esas teclas a la máquina de destino a través de su conexión USB.
Personalmente conecté uno a un pedal y lo programé para que enviara la tecla "s" cuando pisé el pedal, pero ese proyecto fue mucho más simple de lo que necesitaría.
Sería un poco extraño que un teclado reciba entrada. Creo que entiendo un poco mejor su ángulo para enviar una secuencia de teclas desde una computadora portátil. El receptor bluetooth (dongle USB) recibe desde un teclado bluetooth. Así que olvídate del teclado ya que tienes un portátil que te envía. Puede que haya un receptor bluetooth que sea de propósito general y que te permita vincular y recibir datos de teclado desde algún otro dispositivo bluetooth. Los datos del teclado forman parte del perfil bluetooth para HID ("Human Interface Device Profile"), al menos eso está cubierto. Pero un receptor que viene con un teclado Logitech, por ejemplo, podría no permitir recibir nada más que un teclado Logitech. La búsqueda en Amazon de "bluetooth data receiver usb" trae algunos que podrían funcionar como los de Mediastic.
¿Ya tiene una forma de enviar los datos desde la computadora portátil a través de Bluetooth? Preguntaste sobre recibir, pero no enviar. Ya hay un par de preguntas interesantes sobre esto:
Perfectamente posible. De hecho, es el ataque vectorial exacto detrás de lo que se llama BAD USB
.
Puedes leer en detalle sobre esto en aquí.
Básicamente, se trata de cambiar (reprogramar) la memoria USB del dispositivo de almacenamiento a otro dispositivo HUD. No es tan fácil de hacer, pero si tienes el tiempo y las habilidades, sí, es posible. Ciertamente no es fácil sin embargo.
Un dispositivo BadUSB puede incluso haber reemplazado el BIOS de la computadora, nuevamente por
emulando un teclado y desbloqueando un archivo oculto en el pulgar USB
manejar.