Tabla de contenido:

Gameboy Advance como gamepad Bluetooth: 7 pasos
Gameboy Advance como gamepad Bluetooth: 7 pasos

Video: Gameboy Advance como gamepad Bluetooth: 7 pasos

Video: Gameboy Advance como gamepad Bluetooth: 7 pasos
Video: The Konami Code on the Fisher Price Gameboy ACTUALLY WORKS 2024, Noviembre
Anonim
Gameboy Advance como Gamepad Bluetooth
Gameboy Advance como Gamepad Bluetooth

El dispositivo es básicamente un ESP32 conectado al GBA a través del puerto de enlace. Con el dispositivo conectado y sin ningún cartucho insertado en el GBA, una vez que el GBA enciende el ESP32 envía una pequeña rom para ser cargada en el GBA. Esta rom es un programa creado para permitir la comunicación entre el ESP32 y GBA tanto para manejar la conexión bluetooth como para enviar la entrada del usuario al ESP32 cuando está conectado a un host bluetooth y actúa como un gamepad. Desafortunadamente, solo funciona con GBA tradicional y no pude hacerlo funcionar con GBA SP. Creo que GBA SP simplemente no da suficiente potencia.

Cuando se enciende, el ESP32 realiza una secuencia de arranque múltiple a través del SPI al GBA enviando una rom que el ESP32 ha almacenado en la memoria flash. Una vez cargado, el ESP32 habilita el puerto UART en los mismos pines y la rom se comunica con el ESP32 usando UART a través del puerto de enlace. El ESP32 funciona con los 3.3V que el GBA da a través del puerto.

Suministros:

Programador ESP32 WROOM y ESP32

Adaptador de imitación GBA-GC para el conector macho del puerto de enlace GBA y la carcasa

Un poco de cinta aislante y wir

Paso 1: Programe el ESP32

Programar el ESP32
Programar el ESP32

Comience a programar su ESP32 con el firmware que puede encontrar aquí:

github.com/Shyri/gba-bt-hid/tree/master/es…

Recomiendo usar uno de estos programadores que venden por ahí, uno como el de la imagen.

Este proyecto fue probado con ESP-IDF v3.3.2 que puede encontrar aquí:

También necesitará instalar btstack. Commit https://github.com/bluekitchen/btstack/commit/a0a… es la versión más reciente que se ha demostrado que funciona en este proyecto.

Simplemente siga las instrucciones del entorno ESP32 aquí

Conecte el ESP32 al programador. Conecte el programador a la PC. Vaya al directorio de código y ejecute 'make flash'

Paso 2: Obtener el conector del puerto de enlace

Obtener el conector del puerto de enlace
Obtener el conector del puerto de enlace

Recomiendo comprar uno de estos cables GBA-GC que venden.

Proporcionarán un conector de puerto de enlace más un estuche donde alojará el dispositivo y se conectará perfectamente a su GBA.

Desmontarlo y desoldar el conector del puerto de enlace. Tenga cuidado aquí y no se apresure, el conector está hecho principalmente de plástico y si coloca el soldador durante demasiado tiempo, comenzará a derretirse y no se conectará correctamente a su GBA más adelante.

Paso 3: corte una placa de circuito impreso pequeña

Cortar una PCB pequeña
Cortar una PCB pequeña

Es posible que haya notado que la PCB que viene en el adaptador GBA-GC tiene una forma especial para que el conector no se salga de la carcasa cada vez que extraiga el adaptador de la parte superior del GBA. Para hacer lo mismo corté un trozo de perfboard con estos tamaños

Paso 4: corte un PCB pequeño (2)

Cortar una PCB pequeña (2)
Cortar una PCB pequeña (2)
Cortar una PCB pequeña (2)
Cortar una PCB pequeña (2)

Es posible que haya notado que la PCB que viene en el adaptador GBA-GC tiene una forma especial para que el conector no se salga de la carcasa cada vez que extraiga el adaptador de la parte superior del GBA. Para hacer lo mismo corté un trozo de perfboard con estos tamaños:

Puede usar los totales como referencia si no desea sacar la regla para medir. Ahora tenemos que pegar el conector del puerto de enlace a la pata que tiene tres orificios de ancho. En el diagrama de arriba, colocaría el conector en la pata izquierda y la parte inferior del conector apuntaría hacia el exterior de la pantalla. Tenga en cuenta que todas las conexiones conectan ambos lados de la placa perfilada y no queremos acortar los pines del puerto de enlace. Lo que hice fue soldar los pines de un lado del conector a la primera fila de agujeros, y del otro lado soldar los otros tres pines a la segunda fila de agujeros tratando de evitar el contacto con la primera fila. Un poco duro pero funciona.

Paso 5: conecte el conector al ESP32

Conecte el conector al ESP32
Conecte el conector al ESP32

Siguiendo este diagrama, cablee 5 conexiones desde el puerto de enlace a los pines ESP32. Recuerde acortar EN con 3V3, de lo contrario no funcionará.

Paso 6: Adapte el caso

Adapte el caso
Adapte el caso
Adapte el caso
Adapte el caso

Ahora que lo tenemos conectado, puede probarlo y ver si funciona.

Una vez probado podemos proceder a colocarlo en el estuche. Para que encaje, necesitaremos tallar el estuche en un par de lugares. Puedes ver en las imágenes donde tienes que tallar en un lado de la caja.

En el otro lado, puede hacer solo un par de muescas muy ligeras para que coincidan con las esquinas del ESP32.

Paso 7: Terminando

Terminando
Terminando

Ponga un toque eléctrico en los pines del ESP32 para evitar cualquier cortocircuito una vez que esté cerrado. Coloca las piezas como en la imagen. El perfboard cortado con el conector de enlace en un lado y el ESP32 en el otro. Junte los dos lados doblando los cables para que queden adentro.

¡Coloque los dos tornillos y estará listo para comenzar!

Recomendado: