Inhoudsopgave:

Gameboy Advance als Bluetooth-gamepad - Ajarnpa
Gameboy Advance als Bluetooth-gamepad - Ajarnpa

Video: Gameboy Advance als Bluetooth-gamepad - Ajarnpa

Video: Gameboy Advance als Bluetooth-gamepad - Ajarnpa
Video: GAMEBOY ADVANCE AGS 001 + BLUETOOTH EP. 1 2024, November
Anonim
Gameboy Advance als Bluetooth-gamepad
Gameboy Advance als Bluetooth-gamepad

Het apparaat is in feite een ESP32 die via de link-poort op de GBA is aangesloten. Met het apparaat aangesloten en zonder cartridge in de GBA geplaatst, stuurt de ESP32 zodra de GBA wordt ingeschakeld een kleine rom om in de GBA te worden geladen. Deze rom is een programma dat is gemaakt om communicatie tussen de ESP32 en GBA mogelijk te maken voor zowel het afhandelen van de Bluetooth-verbinding als het verzenden van gebruikersinvoer naar de ESP32 wanneer deze is aangesloten op een Bluetooth-host en als gamepad fungeert. Helaas werkt het alleen met traditionele GBA en ik kon het niet laten werken met GBA SP. Ik denk dat GBA SP gewoon niet genoeg kracht geeft.

Wanneer ingeschakeld, voert de ESP32 een multiboot-sequentie uit via de SPI naar de GBA en stuurt een rom die de ESP32 in het flashgeheugen heeft opgeslagen. Eenmaal geladen, schakelt de ESP32 de UART-poort in dezelfde pinnen in en communiceert de rom met de ESP32 met behulp van UART via de link-poort. De ESP32 wordt aangedreven door de 3,3V die de GBA via de poort geeft

Benodigdheden:

ESP32 WROOM & ESP32 programmeur

GBA-GC knock-off adapter voor GBA link port male connector en de behuizing

Wat elektrische tape en draad

Stap 1: Programmeer de ESP32

Programmeer de ESP32
Programmeer de ESP32

Begin met het programmeren van uw ESP32 met de firmware die u hier kunt vinden:

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

Ik raad aan om er een te gebruiken van deze programmeurs die ze daar verkopen, een zoals op de foto.

Dit project is getest met ESP-IDF v3.3.2 die u hier kunt vinden:https://github.com/espressif/esp-idf/releases

Je moet ook btstack installeren. Commit https://github.com/bluekitchen/btstack/commit/a0a… is de meest recente versie waarvan is bewezen dat deze in dit project werkt.

Volg gewoon de ESP32-omgevingsinstructies hier

Sluit de ESP32 aan op de programmer. Sluit de programmer aan op de pc. Ga naar de codemap en voer 'make flash' uit

Stap 2: De Link Port Connector verkrijgen

De Link Port Connector verkrijgen
De Link Port Connector verkrijgen

Ik raad aan om een van deze GBA-GC-kabels te kopen die ze verkopen.

Ze bieden zowel een link-poortconnector als een behuizing waarin u het apparaat kunt huisvesten en mooi in uw GBA kunt bevestigen.

Het demonteren en desolderen van de verbindingspoortconnector. Wees hier voorzichtig en haast je niet, de connector is voornamelijk van plastic en als je de soldeerbout te lang legt, zal deze beginnen te smelten en zal hij later niet correct in je GBA pluggen.

Stap 3: Snijd een kleine PCB

Knip een kleine PCB
Knip een kleine PCB

Het is je misschien opgevallen dat de print in de GBA-GC-adapter een speciale vorm heeft, zodat de connector niet van de behuizing loskomt wanneer je de adapter van de bovenkant van de GBA trekt. Om hetzelfde te maken heb ik een stuk perfboard gesneden met deze maten

Stap 4: Knip een kleine PCB (2)

Knip een kleine PCB (2)
Knip een kleine PCB (2)
Knip een kleine PCB (2)
Knip een kleine PCB (2)

Het is je misschien opgevallen dat de print in de GBA-GC-adapter een speciale vorm heeft, zodat de connector niet van de behuizing loskomt wanneer je de adapter van de bovenkant van de GBA trekt. Om hetzelfde te maken heb ik een stuk perfboard gesneden met deze maten:

U kunt de gehelen als referentie gebruiken als u de liniaal er niet uit wilt halen om te meten. Nu moeten we de verbindingspoortconnector op het been plakken met een breedte van drie gaten. In het bovenstaande diagram plaats je de connector in het linkerbeen en wijst de onderkant van de connector naar buiten het scherm. Houd er rekening mee dat helen beide zijden van het perfboard verbinden en dat we de pinnen van de linkpoort niet willen kortsluiten. Wat ik deed, was de pinnen van de ene kant van de connector aan de eerste rij gaten solderen en aan de andere kant de andere drie pinnen aan de tweede rij gaten solderen om contact met de eerste rij te vermijden. Beetje ruw maar het werkt.

Stap 5: Sluit de connector aan op de ESP32

Sluit de connector aan op de ESP32
Sluit de connector aan op de ESP32

Volg dit diagram draad 5 verbindingen van de link-poort naar de ESP32-pinnen. Vergeet niet EN af te korten met 3V3, anders werkt het niet.

Stap 6: Pas de zaak aan

Pas de zaak aan
Pas de zaak aan
Pas de zaak aan
Pas de zaak aan

Nu we het hebben bedraad, kun je het testen en kijken of het werkt.

Eenmaal getest kunnen we het in de koffer plaatsen. Om het passend te maken, moeten we de behuizing op een paar plaatsen snijden. Je kunt op de foto's zien waar je in één kant van de koffer moet snijden.

Aan de andere kant kun je een paar heel erg lichte inkepingen maken die passen bij de ESP32-hoeken.

Stap 7: Afwerking

Afronden
Afronden

Plaats een elektrische kraan op de ESP32-pinnen, zodat u kortsluiting vermijdt als deze eenmaal is gesloten. Plaats de stukken zoals op de afbeelding. Het gesneden perfboard met de link-connector aan de ene kant en de ESP32 aan de andere. Breng de twee kanten samen en buig de kabels zodat ze binnen blijven.

Plaats de twee schroeven en je bent klaar om te gaan!

Aanbevolen: