KeyMouSerial resuelve los problemas de su teclado Raspberry Pi

Todas las computadoras portátiles tienen un teclado y un mouse que funcionan, el único problema es que no puede usar estas herramientas en otras computadoras que no las tengan. Al menos hasta ahora. [Peter] creó KeyMouSerial para usar el teclado y el mouse de su computadora portátil como dispositivos físicos en su Raspberry Pi, liberando finalmente las conexiones que retienen los dispositivos de interfaz humana de nuestras computadoras portátiles.

El software para KeyMouSerial copia las pulsaciones del teclado y la información del mouse y la envía a través de un puerto serie desde su computadora portátil (a través de USB a un adaptador en serie). A partir de ahí, Arduino traduce la información en comandos HID, que se envían a través de USB a la computadora de destino, en este caso Raspberry Pi. Es una solución bastante elegante para llevar un teclado y un mouse gruesos solo para una Raspberry Pi, o para cualquier computadora que no tenga acceso a la red y SSH.

[Peter] También trabajó en el uso de su iPod como convertidor de serie a USB, así que si eres un desarrollador de Rockbox y quieres ayudar, déjalo en línea. Todo el software está disponible (para Windows, Mac o Linux) incluido el boceto de Arduino si desea probar este programa usted mismo. Y, si no quiere convertir una computadora en un teclado y quiere ir en la otra dirección y convertir un teclado en una computadora, esa también es una opción.

  • araneoidulo dice:

    ¿No sería la sinergia una solución mucho más sencilla y económica? (http://synergy-project.org/)

    • Erik Johansson dice:

      No si necesita escribirlos con el teclado cuando no tiene una red, en una BIOS, etc.

      • dice:

        Por otro lado, en ese caso probablemente desee utilizar directamente la consola serie de la raspberry pi.

        • Peter Burkimsher dice:

          La consola serial no es útil si necesita usar el mouse. La conexión en red es particularmente molesta cuando mi computadora portátil ni siquiera tiene Ethernet y mi Raspberry Pi no tiene WiFi. Ya tengo un Arduino, por lo que el precio no es un problema.

  • desgarrador121 dice:

    A un precio elevado por una solución de este tipo.
    Los desarrolladores V-usb y usbasp cuestan alrededor de $ 2

  • Stefano dice:

    ¿Hay alguna forma de hacer esto sin la conversión USB serial a USB?

    • desgarrador121 dice:

      Sí, puedes hacerlo con v_usb

      • John S. dice:

        ¿Está apuntando a ejecutar V-USB con algo con hardware USB, como 32U4, para obtener dos puertos USB (uno de hardware y un bit-beat)? Nunca antes lo había investigado, pero me encantaría saber si es compatible y qué tan bien funciona.

      • tekkieneet dice:

        ¿Por qué necesitaría tener 2 dispositivos USB? el teclado y el mouse pueden existir en un solo dispositivo USB.

        • John S. dice:

          > ¿Por qué necesitaría tener 2 dispositivos USB?

          Un USB a la manguera, un USB al cliente.

          La configuración se conecta a una máquina a través de USB-CDC, transmite datos a través de UART a otro dispositivo, que se conecta a una segunda máquina a través de USB-HID y envía esos datos como eventos de mouse / teclado.

          Si quisiera hacer esto “sin la conversión USB serial a USB”, entonces con un dispositivo / un chip, no estoy seguro de cómo podría hacerlo sin dos enchufes USB físicos. Es por eso que me pregunto si la sugerencia de V-USB puede admitir dos puertos USB, tal vez con hardware manejando uno de los puertos.

          Supongo que podría tener dos MCU con V-USB, pero aún haría “USB-serial-USB” (o USB-I2C-USB, etc.), solo en una PCB. Pero operar ambos puertos USB con una MCU sería genial.

          Además, si se puede usar V-USB para admitir dos puertos USB en el 32u4, sería interesante en general. Permitiría una variedad de clones faciales baratos, al menos.

        • tekkieneet dice:

          V-USB es solo un dispositivo. 32U4 es solo un dispositivo. Incluso si extiende V-USB para manejar un lado de host de la comunicación (que no admite atm), ¿puede escribir una pila de host USB en 32kB de FLASH y 2.5kB de RAM? Supuse que podría conectarlo con un chip puente MAXIM SPI-USB, pero eso es mucho más caro que una solución nativa.

          Es hora de sacarte del mundo de los 8 bits. Hay chips con 2 puertos USB: compatible con OTG y puerto USB del dispositivo.

    • makomk dice:

      ¿Utiliza una de las placas basadas en Allwinner con un puerto de dispositivo USB en lugar del Pi?

      • Peter Burkimsher dice:

        De lo contrario: KeyMouSerial pasa de mi computadora portátil a USB a una computadora de destino (por ejemplo, Raspberry Pi).
        Aunque escribí una versión de Linux si quieres usar tu RPi como una tecla de dispositivo, entre el teclado USB y otro dispositivo.

    • Justin dice:

      ¿Podrías usar también uno de los tableros profesionales de baratijas? Tiene pines seriales, USB ocultos y gpio para hacer todo lo demás.

      • desgarrador121 dice:

        Enfrentar.

        • Dissy dice:

          $ 10 por una pieza de prototipo, una que se reutilizaría para otros prototipos, no parece realmente demasiado cara.

          Para un producto final seguro, eso es muy alto, pero como estamos hablando de la Raspberry Pi, solo puedo asumir que no estamos hablando de productos finales aquí.

        • Peter Burkimsher dice:

          El software es gratuito. Ya tengo un Arduino y un adaptador de serie USB. Se trata de piratear mi hardware de copia de seguridad existente para hacer lo que necesito, en lugar de construir un dispositivo comercial.

      • John S. dice:

        ¿Está buscando reemplazar la serie USB en el host o reemplazar el Arduino en el pi (o uno para cada uno, supongo)? Supongo que no pretendes utilizar ambos puertos USB al mismo tiempo.

  • Magdalena de fantasía dice:

    ¿Sigues tirando tu dinero a un agujero lento e incompatible? Siento que la “Fundación” de Raspi (suena mucho mejor que un corpus para hacer dinero) tiene que enviar a todos una tarjeta de Navidad para rascar la cabeza con una sección Qwerty completa y un trackpad en la tarjeta para compensar la venta al mundo de manera efectiva “uno zapato”.

  • Anybodysguess dice:

    Ve a la tienda de segunda mano, compra un teclado y un mouse por $ 1

    • Peter Burkimsher dice:

      En cada ciudad, ¿a dónde viajas? ¿Incluso cuando no hablas chino? Portátil es mucho más fácil. Y ya llevo mi portátil.

  • Erik Johnson dice:

    Creo que preferiría usar un pin gpio en lugar de un usb para el suyo, ¿puede ser tan difícil escribir un módulo central para eso?

    • Peter Burkimsher dice:

      El RPi ya tiene construcción en serie en los puertos GPIO. Esto es para momentos en los que realmente solo necesita USB, por una variedad de razones (vea ejemplos en la web).

  • John S. dice:

    Pero si necesita un mouse y un teclado, necesita una pantalla que esto no ayuda. Y si lleva una pantalla, una de esas pequeñas combinaciones de teclado + pistas no agrega mucho a la carga, ¿verdad?

    En cuanto a “¿cómo lo haría de otra manera?”, Parece que todos los mouse / teclados inalámbricos del mundo vienen con un “nano dongle de 2.4GHz” que casi siempre se basa en una radio nrf24 conectada a algún tipo de controlador USB. que se traduce en HID. Parece conectar ese arduino (o cualquier cosa con un mínimo de USB) en la computadora host y agregar nrf24 debería permitirle hablar con un dongle nrf24 estándar en la frambuesa. O, si desea piratear el dongle, Logitech parece ser lo suficientemente bueno para usar siempre versiones flash de MCU (no OTP) y romper líneas de programa para probar tablas. Incluso construyeron su receptor enano con ATMega16U2 + NRF24L01 por un tiempo si quieres quedarte con el ecosistema AVR. Además, debido a que es inalámbrico, siempre puede mirar las fotos internas de la FCC antes de comprar un dongle especial para saber exactamente qué está obteniendo y cuán pirateable será.

    Parece que un receptor bluetooth USB también funcionará bastante bien, aunque es posible que no pueda emparejarlo y usarlo hasta que el sistema operativo se haya cargado en el Pi. Pero supongo que las utilidades para compartir el mouse y el teclado a través de bluetooth están disponibles para casi todos los dispositivos de alojamiento imaginables; Windows incluso viene con uno integrado.

    • Que no dice:

      Creo que lo importante aquí es evitar la conexión inalámbrica / BT y UTP, y usar el teclado de la computadora portátil.
      Por lo tanto, no hay teclado BT ni otros teclados, independientemente de sus dongles.

      Estos son los límites mencionados en el enlace:
      una. No puedo instalar un programa en la computadora de destino.
      Hay algunos equipos en la fábrica a continuación que queremos verificar, pero de alguna manera cambiar el sistema anulará la garantía del fabricante. En lugar de comprar un hardware keylogger USB, decidí construir uno con Arduino y Raspberry Pi.
      B. Los equipos host y de destino se encuentran en redes diferentes.
      La conexión a Internet en la oficina es bastante mala, pero generalmente los problemas solo ocurren a través de WiFi o Ethernet, no ambos al mismo tiempo. Así que mantengo mi computadora portátil personal conectada a la red Ethernet y la computadora portátil corporativa conectada a WiFi. Podría usar un teclado externo y un conmutador KM, pero prefiero el teclado integrado de mi computadora portátil y necesito espacio en el escritorio.

      El ejercicio consiste en llevar de alguna manera los datos del teclado de la computadora portátil a cosas como el raspador y otras computadoras con las limitaciones mencionadas anteriormente, como puede ver.

    • Bogdan dice:

      Elegí un teclado + TV para Pi cuando no tenía una pantalla adicional. Realmente no se necesita un mouse.

      Bus, como mencionan otros, V-usb funciona en 2 dispositivos, uno es un adaptador en serie y otro es HID.

    • Peter Burkimsher dice:

      Una pantalla podría ser un sintonizador de TV USB, un proyector, un televisor en una habitación de hotel o un proyector en la sala de conferencias, donde ejecuta sus demostraciones.
      La solución de computadora Arduino 2.4GHz USB suena más complicada que esto, ¡pero puede reutilizar el código de registro clave para su proyecto si lo necesita!

  • Que no dice:

    Me pregunto si esos teclados de portátiles no utilizan internamente el mismo chip que los teclados USB, porque entonces es posible que pueda piratear con un cable USB.
    Aunque es un poco difícil instalar cosas en los lugares estrechos de las computadoras portátiles, supongo.

    • Bogdan dice:

      Hm … acabo de abrir algunas computadoras portátiles y ninguno de los teclados tenía IC, solo un cable plano, tal vez 20-30 patas.

    • tekkieneet dice:

      Por lo general, son solo un teclado de membrana con tinta conductora. La decodificación del teclado real la realiza un microcontrolador en el circuito base. Lo mismo para el teclado bluetooth, el panel de pensamiento antiguo, el teclado IR, etc. El microcontrolador puede colgarse de un PS / 2 de un chipset.

    • Peter Burkimsher dice:

      De hecho, la MacBook Pro usa USB internamente. Pero arrendarlo anularía mi garantía de AppleCare. Ya tengo una vieja de repuesto y mi legendario colega me la vendió, pero esas almohadillas son realmente pequeñas.
      http://blog.hawkwood.com/archives/743

  • tekkieneet dice:

    La forma automática de resolver este problema Rube Goldberg es un buen ejemplo de por qué los programas están tan inflados hoy en día. Las personas utilizan soluciones preempaquetadas y acumulan marcos en lugar de inventar soluciones más sencillas.

  • Disputas dice:

    ¿No estoy seguro de entender exactamente lo que está tratando de hacer? ¿Como un escritorio remoto? Me sorprendería un poco si no hubiera uno que pudieras ejecutar con el Pi. Dicho esto, cuando todavía estaba usando Pi después de que inicialmente lo instalé y eliminé la GUI, simplemente lo ingresé desde allí.

    • Peter Burkimsher dice:

      No es un escritorio remoto, simplemente copia las entradas del teclado interno a un dispositivo de salida USB macho. Podrías usar SSH porque tenías una red disponible, pero ese lujo no siempre es viajar. También necesitaba habilitar SSH durante la configuración inicial; si su tarjeta SD se dañara, sería bloqueado.

      • peleas dice:

        Siempre que su computadora portátil tenga Wifi incorporado y tenga un dongle wifi para su SBC (suponiendo que no esté incorporado), siempre puede Ad Hoc. Si la imagen está dañada, tendrá que rehacerla. Si tuviera que viajar, me gustaría pensar (que no puedo garantizar) que tendría la previsión de clonar una imagen ya arreglada, como necesitaba que se arreglara.

        Dicho esto, puedo ver cómo funcionaría algo como esto, sin siquiera darme cuenta inicialmente de que en realidad es lo mismo que la interfaz en serie incorporada para el C1. Lo que utilicé para la configuración inicial y fue agradable no tener que molestarme en conectar la pantalla o el teclado a la cosa.

  • Samar Singh dice:

    En Linux al menos puede configurar un punto de acceso. Si no, entonces uno podría usar un teléfono celular para hacer eso. ¿No proporcionaría eso la interconexión necesaria para hacer SSH?

    Habiendo dicho eso, agradezco que haya trabajado duro para encontrar una solución a un problema y luego compartir ese trabajo. Identificar una aplicación en la que funciona esta solución es el problema que ha intentado abordar con este artículo. Gran trabajo.

Joel Carrasco
Joel Carrasco

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *