Πίνακας περιεχομένων:

Gameboy Advance As Bluetooth Gamepad: 7 βήματα
Gameboy Advance As Bluetooth Gamepad: 7 βήματα

Βίντεο: Gameboy Advance As Bluetooth Gamepad: 7 βήματα

Βίντεο: Gameboy Advance As Bluetooth Gamepad: 7 βήματα
Βίντεο: Πιο φορητό είναι το καλύτερο; | Legion go, Rog ally, Stream deck Ή PlayStation Portal 2024, Νοέμβριος
Anonim
Gameboy Advance As Bluetooth Gamepad
Gameboy Advance As Bluetooth Gamepad

Η συσκευή είναι βασικά ένα ESP32 συνδεδεμένο στο GBA μέσω της θύρας σύνδεσης. Με τη συσκευή συνδεδεμένη και χωρίς κασέτα τοποθετημένη στο GBA, μόλις ενεργοποιηθεί το GBA το ESP32 στέλνει μια μικρή rom για να φορτωθεί στο GBA. Αυτή η rom είναι ένα πρόγραμμα που έχει σχεδιαστεί για να επιτρέπει την επικοινωνία μεταξύ του ESP32 και του GBA τόσο για το χειρισμό της σύνδεσης bluetooth όσο και για την αποστολή των εισόδων του χρήστη στο ESP32 όταν είναι συνδεδεμένος σε έναν κεντρικό υπολογιστή bluetooth και λειτουργεί ως gamepad. Δυστυχώς, λειτουργεί μόνο με το παραδοσιακό GBA και δεν μπορούσα να το κάνω να λειτουργήσει με το GBA SP. Νομίζω ότι το GBA SP απλά δεν δίνει αρκετή ισχύ.

Όταν είναι ενεργοποιημένο, το ESP32 εκτελεί μια ακολουθία πολλαπλών εκκινήσεων μέσω του SPI στο GBA στέλνοντας μια rom που έχει αποθηκεύσει το ESP32 στη μνήμη flash. Μόλις φορτωθεί, το ESP32 ενεργοποιεί τη θύρα UART στις ίδιες ακίδες και η rom επικοινωνεί με το ESP32 χρησιμοποιώντας το UART μέσω της θύρας συνδέσμου. Το ESP32 τροφοδοτείται από τα 3.3V που δίνει το GBA μέσω της θύρας

Προμήθειες:

Προγραμματιστής ESP32 WROOM & ESP32

Προσαρμογέας GBA-GC knock-off για αρσενικό συνδετήρα θύρας σύνδεσης GBA και θήκη

Λίγη ηλεκτρική ταινία και καλωδίωση

Βήμα 1: Προγραμματίστε το ESP32

Προγραμματίστε το ESP32
Προγραμματίστε το ESP32

Ξεκινήστε να προγραμματίζετε το ESP32 με το υλικολογισμικό που μπορείτε να βρείτε εδώ:

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

Σας συνιστώ να χρησιμοποιήσετε έναν από αυτούς τους προγραμματιστές που πουλάνε εκεί έξω, έναν σαν την εικόνα.

Αυτό το έργο δοκιμάστηκε με ESP-IDF v3.3.2 που μπορείτε να βρείτε εδώ:

Θα χρειαστεί επίσης να εγκαταστήσετε το btstack. Commit https://github.com/bluekitchen/btstack/commit/a0a… είναι η πιο πρόσφατη έκδοση που αποδεδειγμένα λειτουργεί σε αυτό το έργο.

Ακολουθήστε τις οδηγίες περιβάλλοντος ESP32 εδώ

Συνδέστε το ESP32 στον προγραμματιστή. Συνδέστε τον προγραμματιστή στον υπολογιστή. Μεταβείτε στον κατάλογο κωδικών και εκτελέστε το "make flash"

Βήμα 2: Λήψη του συνδέσμου θύρας συνδέσμου

Λήψη του συνδέσμου θύρας συνδέσμου
Λήψη του συνδέσμου θύρας συνδέσμου

Σας συνιστώ να αγοράσετε ένα από αυτά τα καλώδια GBA-GC που πωλούν.

Θα παρέχουν τόσο ένα σύνδεσμο θύρας σύνδεσης όσο και μια θήκη όπου θα στεγάσετε τη συσκευή και θα προσαρμοστεί όμορφα στο GBA σας.

Αποσυναρμολόγηση και αποκόλληση του συνδέσμου θύρας συνδέσμου. Προσοχή εδώ και μην βιαστείτε, ο σύνδεσμος είναι κυρίως από πλαστικό και αν τοποθετήσετε το κολλητήρι για πολύ καιρό θα αρχίσει να λιώνει και δεν θα συνδεθεί σωστά αργότερα στο GBA σας.

Βήμα 3: Κόψτε ένα μικρό PCB

Κόψτε ένα μικρό PCB
Κόψτε ένα μικρό PCB

Μπορεί να έχετε παρατηρήσει ότι το PCB που έρχεται στον προσαρμογέα GBA-GC έχει ένα ειδικό σχήμα, έτσι ώστε ο σύνδεσμος να μην βγαίνει από τη θήκη κάθε φορά που τραβάτε τον προσαρμογέα από το επάνω μέρος του GBA. Για να φτιάξω το ίδιο πράγμα έκοψα ένα κομμάτι γυαλιού με αυτά τα μεγέθη

Βήμα 4: Κόψτε ένα μικρό PCB (2)

Κόψτε ένα μικρό PCB (2)
Κόψτε ένα μικρό PCB (2)
Κόψτε ένα μικρό PCB (2)
Κόψτε ένα μικρό PCB (2)

Μπορεί να έχετε παρατηρήσει ότι το PCB που έρχεται στον προσαρμογέα GBA-GC έχει ένα ειδικό σχήμα, έτσι ώστε ο σύνδεσμος να μην ξεκολλάει από τη θήκη κάθε φορά που τραβάτε τον προσαρμογέα από την κορυφή του GBA. Για να φτιάξω το ίδιο πράγμα έκοψα ένα κομμάτι γυαλιού με αυτά τα μεγέθη:

Μπορείτε να χρησιμοποιήσετε τα σύνολα ως αναφορά εάν δεν θέλετε να αφαιρέσετε τον χάρακα για μέτρηση. Τώρα πρέπει να κολλήσουμε το σύνδεσμο της θύρας σύνδεσης στο πόδι που έχει τρεις οπές σε πλάτος. Στο παραπάνω διάγραμμα θα τοποθετήσετε τη φίσα στο αριστερό πόδι και το κάτω μέρος της υποδοχής θα δείχνει προς τα έξω την οθόνη. Λάβετε υπόψη ότι τα σύνολα συνδέουν και τις δύο πλευρές του πίνακα και δεν θέλουμε να συντομεύσουμε τις καρφίτσες της θύρας σύνδεσης. Αυτό που έκανα ήταν να κολλήσω τις καρφίτσες της μίας πλευράς του συνδέσμου στην πρώτη σειρά οπών και στην άλλη πλευρά να κολλήσω τους άλλους τρεις πείρους στη δεύτερη σειρά οπών προσπαθώντας να αποφύγω την επαφή με την πρώτη σειρά. Λίγο τραχύ αλλά λειτουργεί.

Βήμα 5: Συνδέστε τη σύνδεση στο ESP32

Συνδέστε τη σύνδεση στο ESP32
Συνδέστε τη σύνδεση στο ESP32

Ακολουθώντας αυτό το διάγραμμα, συνδέστε 5 συνδέσεις από τη θύρα σύνδεσης στις ακίδες ESP32. Θυμηθείτε να κάνετε σύντομο EN με 3V3 διαφορετικά δεν θα λειτουργήσει.

Βήμα 6: Προσαρμόστε την υπόθεση

Προσαρμόστε την υπόθεση
Προσαρμόστε την υπόθεση
Προσαρμόστε την υπόθεση
Προσαρμόστε την υπόθεση

Τώρα που το έχουμε ενσύρματο, μπορείτε να το δοκιμάσετε και να δείτε αν λειτουργεί.

Μόλις δοκιμαστεί μπορούμε να προχωρήσουμε στην τοποθέτησή του στη θήκη. Για να προσαρμοστεί, θα πρέπει να χαράξουμε τη θήκη σε δύο μέρη. Μπορείτε να δείτε στις εικόνες όπου πρέπει να χαράξετε στη μία πλευρά της θήκης.

Στην άλλη πλευρά, μπορείτε να κάνετε μερικές πολύ ελαφριές εγκοπές για να ταιριάζουν με τις γωνίες ESP32.

Βήμα 7: Ολοκλήρωση

Τελειώνω
Τελειώνω

Βάλτε κάποια ηλεκτρική βρύση στις ακίδες ESP32, ώστε να αποφύγετε τυχόν βραχυκύκλωμα μόλις κλείσει. Τοποθετήστε τα κομμάτια όπως στην εικόνα. Η κομμένη σανίδα με τον σύνδεσμο σύνδεσης στη μία πλευρά και το ESP32 στην άλλη. Φέρτε τις δύο πλευρές μαζί λυγίζοντας τα καλώδια ώστε να παραμείνουν μέσα.

Βάλτε τις δύο βίδες και είστε έτοιμοι!

Συνιστάται: