Como Fabricar Un Adaptador Alámbrico E Inalámbrico Para Controles De Videojuegos Compatible En Varias Consolas Con Joypad OS

Joypad OS es un firmware para placas de microcontroladores (RP2040, ESP32-S3, nRF52840) con el cual puedes fabricar un adaptador tanto alámbrico como inalámbrico para controles de videojuegos.

Podrás conectar estos controles USB y Bluetooth:

Xbox

  • Xbox Original (Duke/S-Controller)
  • Xbox 360 (cableada e inalámbrica con adaptador)
  • Xbox One (todas las revisiones)
  • Serie Xbox X|S

PlayStation

  • PlayStation Classic Controller
  • DualShock 3 (PS3)
  • DualShock 4 (PS4)
  • DualSense (PS5)

Nintendo

  • Mando Switch Pro : compatibilidad total con vibración.
  • Mando Switch Pro 2 : compatibilidad total
  • Joy-Con Grip : Dos Joy-Con en modo de agarre.
  • Joy-Con Single – Soporte para Joy-Con individual
  • Adaptador para GameCube – Adaptador oficial de Nintendo GameCube (4 puertos)
  • Mando de GameCube de NSO – Mando de GameCube para Nintendo Switch Online

8BitDo

Mandos inalámbricos:

  • Controlador PCEngine 2.4g
  • Controlador M30 de 2,4 GHz (Genesis/Mega Drive)
  • Controlador Bluetooth M30
  • Controlador NeoGeo

Adaptadores USB:

  • Adaptador USB inalámbrico 2 (negro/rojo)
  • Adaptador USB inalámbrico (gris/rojo)

Otros controladores compatibles

  • Logitech Wingman Action Pad – Classic PC gamepad
  • Sega Astrocity Mini Controller – Arcade stick
  • Hori Pokken Tournament Controller – Fight stick
  • Hori Horipad – Generic Hori gamepads
  • Google Stadia Controller – USB mode
  • Generic DirectInput Controllers – Most D-input gamepads
  • Generic HID Gamepads – Standard USB HID joysticks

Consolas compatibles

ModoDescripción
SInputModo compuesto predeterminado: funciona en la mayoría de las plataformas.
XInputCompatible con Xbox 360
DInputEntrada directa genérica
PS3PlayStation 3
PS4PlayStation 4 (puede requerir autenticación mediante paso directo)
SwitchMando Pro de Nintendo Switch
Xbox originalXbox original (XID)
Xbox OneXbox One (en desarrollo)
PS ClassicPlayStation Classic
Teclado/RatónEmulación de teclado y ratón
Adaptador GCModo adaptador de GameCube
XACCompatibilidad con el mando adaptativo de Xbox
PCE MiniPC Engine Mini

También lo puedes soldar directamente a los pines a las consolas:

  • 3DO
  • Dreamcast
  • GameCube
  • GBA
  • N64
  • Neogeo
  • PCEngine

Crear Adaptador USB Alámbrico

Podrás conectar todos los controles antes mencionados con su respectivo cable USB para ello requieres:
Raspberry Pi Pico

O RP2040-Zero / Raspberry Pico Mini

Adaptador USB Tipo A Hembra a DIP PCB 4 Pines

Y Cable 26AWG (Cable Dupont) o 28AWG o 30AWG (Cable Kynar)

Soldar los cables a los puntos que muestra el diagrama

A mi me agrada mas la RP2040-Zero por pequeña puedes imprimir en 3D esta carcasa, se ajusta perfecto:
https://www.printables.com/model/835816-ogx-mini-case

Configurar el Firmware

Descargar el Firmware

Ve a la pagina https://github.com/joypad-ai/joypad-os/releases y descarga joypad_2.1.0_usb2usb_rp2040zero.uf2 para RP2040-Zero o joypad_2.1.0_usb2usb_pico.uf2 para Raspberry Pi Pico, ten en cuenta que:
* 2.1.0 es la versión esta puede ser mayor
* usb2usb indica la configuración será de USB a la consola a puerto USB donde se conectara el control mediante cable.

Configúrala con el Firmware

Presiona el botón BOOT mientras la conectas a la computadora, esta la reconocerá como una memoria USB

Si ya has usado ese RP2040-Zero o Raspberry Pi Pico / W en otro proyecto o lo has conseguido de segunda mano lo puedes dejar como recién salido de la fabrica y borrar cualquier configuración usa universal_flash_nuke.uf2 lo puedes descargar en https://github.com/Gadgetoid/pico-universal-flash-nuke/releases arrastra y/o copia el archivo .uf2 a RPI-RP2, se reiniciara el dispositivo

Arrastra y/o copia el archivo .uf2 correspondiente a tu Raspberry Pi y listo…

Configura tu Adaptador

Ve a config.joypad.ai o joypad.raymundopizano.com (versión en español) y sigue los pasos:

Selecciona el modo de salida de tu consola

ModoDescripción
SInputModo compuesto predeterminado: funciona en la mayoría de las plataformas PC’s y Mac.
XInputCompatible con Xbox 360
DInputEntrada directa genérica
PS3PlayStation 3
PS4PlayStation 4 (puede requerir autenticación mediante paso directo)
SwitchMando Pro de Nintendo Switch
Xbox originalXbox original (XID)
Xbox OneXbox One (en desarrollo)
PS ClassicPlayStation Classic
Teclado/RatónEmulación de teclado y ratón
Adaptador GCModo adaptador de GameCube
XACCompatibilidad con el mando adaptativo de Xbox
PCE MiniPC Engine Mini

Como la conectare a una Nintendo Switch, selecciono ese modo y presiono el botón Guardar y Reiniciar

Para algunos modos muestra la advertencia de que ya no podrás usar la configuración web una vez configurado, tendrás que realizar el proceso desde cero si quieres configurarlo para otra consola, en la ventana emergente de confirmación del modo selecciona el botón Cancelar para que se configure ya que si presionas Aceptar no se cambiara de modo.

Lo desconecto de la computadora y lo conecto al Switch

Pruebo con los controles que tengo a la mano y funciona de maravilla, recuerda que puedes conectar un control Xbox 360 inhalambrico con su adaptador

Crear Adaptador USB Inalámbrico

Usare la Raspberry Pi Pico W https://github.com/joypad-ai/joypad-os/releases y descarga joypad_2.1.0_bt2usb_pico_w.uf2, ten en cuenta que:
* 2.1.0 es la versión esta puede ser mayor
* bt2usb indica la configuración será Bluetooth para los controles al USB de la consola.

Presiona el botón BOOT mientras la conectas a la computadora esta la reconocerá como una memoria USB

Si ya haz usado Raspberry Pi Pico W para otro proyecto o la conseguiste de segunda mano sigue el paso de universal_flash_nuke.uf2

Arrastra y/o copia el archivo .uf2 y listo…

Configura tu Adaptador

Ve a config.joypad.ai o joypad.raymundopizano.com (versión en español) y sigue los pasos. He seleccionado PS4., para este y otros modos muestra la advertencia de que ya no podrás usar la configuración web una vez configurado, tendrás que realizar el proceso desde cero si quieres configurarlo para otra consola, en la ventana emergente de confirmación del modo selecciona el botón Cancelar para que se configure ya que si presionas Aceptar no se cambiara de modo.

Modo de salida de tu consola

ModoDescripción
SInputModo compuesto predeterminado: funciona en la mayoría de las plataformas PC’s y Mac.
XInputCompatible con Xbox 360
DInputEntrada directa genérica
PS3PlayStation 3
PS4PlayStation 4 (puede requerir autenticación mediante paso directo)
SwitchMando Pro de Nintendo Switch
Xbox originalXbox original (XID)
Xbox OneXbox One (en desarrollo)
PS ClassicPlayStation Classic
Teclado/RatónEmulación de teclado y ratón
Adaptador GCModo adaptador de GameCube
XACCompatibilidad con el mando adaptativo de Xbox
PCE MiniPC Engine Mini

Lo probamos…

Al momento de conectarlo a la consola se encontrara en modo de emparejamiento activo y aceptara cualquier control que este en modo de sincronizar.

Para sincronizar los controles:

  • Xbox One / Series S | X presiona el botón Sync hasta que parpadee el botón central
  • PS4 presiona los botones Share + PS por unos segundos hasta que parpadee la luz
  • Etc., revisa un tutorial para sincronizar tu modelo de control.

Recuerda que para conectar otro control debes de desincronizar y/o apagar el control para que el adaptador entre en modo emparejamiento.

Puedes imprimir en 3D esta carcasa:

https://www.printables.com/model/226610-raspberry-pi-pico-case

También puedes usar placas como ESP32-S3 y nRF52840., yo he usado Raspberry Pi RP2040, Pico y Pico W por populares y accesibles.

Si te gusto 🙃​

View more articles
  • Como Fabricar Un Adaptador Alámbrico E Inalámbrico Para Controles De Videojuegos Compatible En Varias Consolas Con Joypad OS

    Joypad OS es un firmware para placas de microcontroladores (RP2040, ESP32-S3, nRF52840) con el cual puedes fabricar un adaptador tanto alámbrico como inalámbrico para controles de videojuegos. Podrás conectar estos controles USB y Bluetooth: Xbox PlayStation Nintendo 8BitDo Mandos inalámbricos: Adaptadores USB: Otros controladores compatibles Consolas compatibles Modo Descripción SInput Modo compuesto predeterminado: funciona en…

  • Como usar Esptool

    Esptool es un conjunto de herramientas creadas en Python para programar las placas de desarrollo ESP8266, ESP8585, ESP32, ESP32-C2, ESP32-C3, ESP32-C6, ESP32-H2, ESP32-S2 y ESP32-S3. 1.- Instala la ultima versión de Python (ocupas 3.10 o superior., sigue la guía) 2.- Instala Visual Studio Code (Sigue el tutorial) 3.- Crea una carpeta por ejemplo esptool y…

  • Como configurar un entorno de desarrollo para el lenguaje C / C++

    Para crear un entorno de trabajo para poder jugar con el lenguaje C recomiendo 1. Instalar compilador C / C++ Para Windows Descarga e instala MinGW Ejecuta MinGW Installer Manager selecciona los paquetes básicos e instálalos (durara algunos minutos ya que los descarga) Agregar MinGW al PATH Es importante agregarlo a las variables del sistema…