User Tag List

Resultados 1 al 5 de 5

Tema: Crear mando usb a partir de raspberry / arduino

  1. #1

    Fecha de ingreso
    Jul 2006
    Ubicación
    Madriz
    Mensajes
    1,297
    Mencionado
    28 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    176
    Agradecer Thanks Received 
    322
    Thanked in
    Agradecido 172 veces en [ARG:2 UNDEFINED] posts

    Crear mando usb a partir de raspberry / arduino

    El otro día probando juegos de mame pensé "como molaría jugar al Prop Cycle usando la bici estática que tengo en el salón, no?"
    Me puse a recordar un proyecto que hicimos hace años cuando trabajaba en Decathlon con una bici que subía a internet tus ritmos actuales usando un arduino, pero usando el puerto serie de la bici directamente (yo hice el soft que te permitía echar una carrera usando google earth, la parte hw la hizo un compi mucho más mañoso que yo), pero recuerdo que me dijo que las primeras pruebas las planteó con un iman y un sensor, como los que poníamos a las bicis de carretera para medir la velocidad...

    Bueno, que empiezo a desvariar... mi idea sería coger un mando sencillito, añadir un "sensor de velocidad de pedaleo" con un arduino / raspi como si fuese un eje más del mando y sacar toda la salida por USB o similar para poder conectarlo a la recreativa. (Es decir, a la raspi / arduino se le conectaría el mando usb y la bici por GPIO)

    Supongo que en algún punto tendría que sacar las salidas ya mezcladas con todo por el GPIO y de ahí a un USB para poder conectarlo para que se pudiese detectar como un joypad. ¿Alguien tiene experiencia en algo parecido? ¿Sería muy complicado sacar USB? ¿Mejor usar otra alternativa aunque sea más esotérica (serie, un servicio de red...)?

    -----Actualizado-----

    Acabo de encontrar esto:
    https://blog.arduino.cc/2012/05/14/unojoy-a-usb-joystick-for-mac-pc-linux-or-ps3/

    y viendo los vídeos se me ocurre una cantidad de mandos cada cual más esotérico...

    creo que va siendo hora de desempolvar mi arduino black widow

  2. #2

    Fecha de ingreso
    Jan 2012
    Mensajes
    560
    Mencionado
    7 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    63
    Agradecer Thanks Received 
    225
    Thanked in
    Agradecido 133 veces en [ARG:2 UNDEFINED] posts
    En Linux hay desde hace años una API (USB-gadget) para utilizar los controladores USB esclavos y OTG. Así que podrías montar todo el tinglado en una Raspberry, y al conectarla por USB a otro ordenador, para éste la Raspberry sería un joypad. Es un tema que nunca he mirado, así que no te puedo decir mucho más. Por si quieres investigar...

    http://www.linux-usb.org/gadget
    https://www.kernel.org/doc/Documenta...gadget_hid.txt

    Hum, parece que esto sólo sería factible con la Raspberry Pi Zero, no con el resto de modelos:

    The Raspberry Pi Zero (and model A and A+) support USB On The Go, given the processor is connected directly to the USB port, unlike on the B, B+ or Pi 2 B, which goes via a USB hub.
    Because of this, if setup to, the Pi can act as a USB slave instead, providing virtual serial (a terminal), virtual ethernet, virtual mass storage device (pendrive) or even other virtual devices like HID, MIDI, or act as a virtual webcam!
    It is important to note that, although the model A and A+ can support being a USB slave, they are missing the ID pin (is tied to ground internally) so are unable to dynamically switch between USB master/slave mode. As such, they default to USB master mode. There is no easy way to change this right now.
    https://gist.github.com/gbaman/50b6cca61dd1c3f88f41

  3. #3

    Fecha de ingreso
    Aug 2006
    Ubicación
    Teruel (España)
    Mensajes
    618
    Mencionado
    5 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    277
    Agradecer Thanks Received 
    125
    Thanked in
    Agradecido 81 veces en [ARG:2 UNDEFINED] posts
    También puedes echarle un ojo a esto:

    https://github.com/NicoHood/HID

  4. #4

    Fecha de ingreso
    Jul 2006
    Ubicación
    Madriz
    Mensajes
    1,297
    Mencionado
    28 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    176
    Agradecer Thanks Received 
    322
    Thanked in
    Agradecido 172 veces en [ARG:2 UNDEFINED] posts
    Gracias por la info, ya tengo dos frentes por donde tirar, una raspi zero que no uso para nada y el arduino...

  5. #5

    Fecha de ingreso
    Jul 2006
    Ubicación
    Madriz
    Mensajes
    1,297
    Mencionado
    28 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    176
    Agradecer Thanks Received 
    322
    Thanked in
    Agradecido 172 veces en [ARG:2 UNDEFINED] posts
    Al final creo que me estoy complicando demasiado con esto... en el fondo no me hace falta control analógico ni nada (es decir, al principio pensé ver la velocidad de pedaleo con un sensor de efecto hall o similar y sacar un valor analógico como si fuese un eje de un HID por usb), ya que al final para conectarlo a juegos tontos arcade no me hará falta más que un valor digital... eso sí, eligiendo una velocidad mínima de pedaleo.

    Así que he pensado que simplemente necesito un microcontrolador muy simple (he pensado en éste) que tome por un lado la entrada del detector de efecto hall y compare la frecuencia con un valor dado (seleccionado por un potenciómetro por ejemplo) y si es superior da una salida 1 y si es inferior, una salida 0.

    Esa salida la puedo conectar directamente a uno de los pines de la controladora del joystick de la recreativa como si de un botón se tratase: si pedaleas más deprisa de lo que has seleccionado con el potenciómetro -> botón pulsado, si no -> botón sin pulsar.

    Ya no hay excusa para quemar calorías mientras juegas al Pole Position !

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •