Inhaltsverzeichnis:

Controller für unterwegs - Gunook
Controller für unterwegs - Gunook

Video: Controller für unterwegs - Gunook

Video: Controller für unterwegs - Gunook
Video: Der PlayStation Backbone One Controller | PS5 für unterwegs! 2024, November
Anonim
Unterwegs-Controller
Unterwegs-Controller
Unterwegs-Controller
Unterwegs-Controller
Unterwegs-Controller
Unterwegs-Controller

Spielen Sie gerne Spiele auf Ihrem Smartphone? Sind Sie es leid, mit klobigen Touchscreen-Steuerelementen zu spielen? Hassen Sie es zu vergessen, Ihren Bluetooth-Controller aufzuladen? Brauchen Sie eine Verwendung für das Kabel für unterwegs, das Sie gekauft, aber nie verwendet haben?

Warum machst du nicht deinen eigenen Controller für unterwegs?

Ich bin mir sicher, dass ich ziemlich spät zum Spiel komme (Wortspiel beabsichtigt), aber ich habe kürzlich entdeckt, dass mein altes Smartphone Retro-Spiele per Emulation spielen kann. Als ich aufwuchs, war ich ein großer Fan der Game Boy-Systeme und erinnere mich gerne daran, stundenlang zu spielen und meine Augen auf langen Autofahrten zu strapazieren, um verzweifelt nach einem Speicherpunkt zu suchen, bevor mein Akku leer war oder die Sonne zu weit hinter dem Horizont stand siehe meinen Bildschirm. Jetzt kann ich auf meinem Handy spielen und der Nostalgie nachgeben, aber mit einem schönen hintergrundbeleuchteten Bildschirm. Danke Technik!

Haftungsausschluss: Spiele-Emulation ist ein heikles Thema und geht in einigen Fällen an der Grenze der Piraterie vorbei. Bitte bildet euch weiter und spielt verantwortungsbewusst!

Hintergrund:

Ich beschloss, dieses Projekt zu verfolgen, nachdem ich eine Tastaturkürzel erstellt hatte. Während ich die Arduino-Tastaturbibliothek erlernte und Verknüpfungen entwickelte, habe ich einige der Testtasten an WASD gebunden. Es begann sofort mit meinen PC-Spielen zu arbeiten und das brachte die Räder zum Drehen. Ungefähr zur gleichen Zeit ging mir auf meinem Telefon der Platz für Hörbücher aus und ich suchte nach der Verwendung eines USB-Flash-Laufwerks mit meinem Telefon, da mein Modell keine microSD-Karten zulässt. Da erfuhr ich von OTG. OTG nutzt die Ladung des Akkus Ihres Telefons, um das daran angeschlossene Gerät mit Strom zu versorgen. Dazu gehören Tastaturen, Mäuse und Flash-Laufwerke, um nur einige zu nennen. Das Telefon kann 5-V-Geräte mit Strom versorgen und erraten, was das Arduino-Mikro zum Betrieb benötigt? Es war ein Spiel im Himmel.

Lieferungen

Arduino Micro

Prototypenplatine

12 x 6-mm-Tasten (ich habe klassische taktile Taster verwendet)

Lötkolben und Lot

3D Drucker

Kabel für unterwegs (OTG); Ich habe meine eigenen gemacht

Micro-USB-Ladekabel

Schritt 1: Design

Entwurf
Entwurf
Entwurf
Entwurf
Entwurf
Entwurf

Ich wollte, dass mein Controller tragbar ist und alle Tasten bietet, die ich brauche, um Spiele bis zur Super Nintendo-Ära zu spielen. Dies bedeutete, dass ich 12 Tasten benötigen würde. Vier für die Richtungstaste (D-Pad) und acht für die A, B, X, Y, Start, Select, Left Trigger und Right Trigger. Ich hatte auch eine zusätzliche Anforderung, dass ich wollte, dass es symmetrisch ist, damit ich es mit jeder Hand einhändig spielen konnte. Diese zusätzliche Anforderung mag seltsam klingen, aber um einen Kontext zu geben, muss ich erwähnen, dass ich in letzter Zeit regelmäßig ein schlafendes Baby halte und während meiner begrenzten Spielzeit nur eine Hand benutze.

Mit den definierten Anforderungen machte ich mich daran, meine Steuerung im CAD zu entwerfen. Ich persönlich benutze OnShape, aber ich weiß, dass viele Leute auch mit Fusion360 Erfolg haben. Ich möchte den anderen Leuten auf dieser Seite, die ihre eigenen Kreationen entwerfen, einen kurzen Gruß aussprechen. Es ist harte Arbeit! Das Design, das ich mir ausgedacht habe, war super einfach, aber es dauerte immer noch viele Stunden, bis ich zufrieden war. Schon während ich dies schreibe, bemerke ich viele Verbesserungen, die ich gerne machen würde.

(Ich habe vor, die.stl-Dateien auf Thingiverse zu verwenden, wenn es die Zeit erlaubt. Die Dateien werden dort sein, damit ich sie aktualisieren kann, ohne ständig Dateien hier hochladen zu müssen.)

Schritt 2: Drucken Sie Ihre Kreation

Drucken Sie Ihre Kreation!
Drucken Sie Ihre Kreation!

Ich habe einen Ender 3 Drucker, den ich erst seit ein paar Monaten habe. Es ist ein großartiger Drucker für den Einstieg, wenn Sie in den 3D-Druck einsteigen möchten. Ich wusste nicht, wie aus dem Gleichgewicht geraten es war, bis ich meine Teile für dieses Projekt gemessen habe. Bis zu diesem Projekt hatte ich es nur verwendet, um Minis für Tabletop-Gaming zu drucken. Die Minis sind großartig geworden und ich habe mich nicht so sehr um die Abmessungen gekümmert. Es brauchte mehrere Kalibrierungswürfel und eine neue Filamentrolle, bis ich mit den Ergebnissen zufrieden war.

Schritt 3: Vorbereiten Ihres Prototypenboards

Vorbereiten Ihres Prototypenboards
Vorbereiten Ihres Prototypenboards
Vorbereiten Ihres Prototypenboards
Vorbereiten Ihres Prototypenboards

Vor dem Löten von Knöpfen an eine Prototypenplatine habe ich alle Knöpfe auf einem Steckbrett getestet und gleichzeitig meinen Arduino-Code getestet. Ich werde den Code in einem späteren Schritt durchgehen.

Jetzt ist die beste Zeit, um Ihre Prototypenplatine zuzuschneiden. Verwenden Sie Ihr gedrucktes Controller-Gehäuse als Richtlinie und passen Sie die Tasten trocken an, um sicherzustellen, dass alles ausgerichtet ist. Ich habe nur ein paar Drahtscheren genommen und das überschüssige Brett abgeschnitten und dann die Kanten mit etwas 150er Schleifpapier quadratisch geschliffen.

Die Verkabelung für den Controller ist wirklich einfach, da wir die internen Pull-Up-Widerstände des Arduino Micro verwenden. Alle Tasten gehen auf einen Eingang und Masse. Die Tasten, die ich verwende, sind generische 6-mm-Tastschalter.

Das Löten der Knöpfe an das Arduino war ein lustiges kleines Rätsel, das es zu lösen galt. Einige der Knöpfe waren unter dem Arduino und ich musste Drähte darunter herausführen, bevor ich das Arduino an die Prototypenplatine lötete. Wenn man sich die Tastenseite des Boards genau ansieht, habe ich links und rechts für das Steuerkreuz übersehen.

Für mein spezifisches Design lötete ich die Richtungstasten nach oben und unten (ich habe die linken und rechten Richtungstasten vermisst) zusammen mit einigen extra langen Drähten an die Prototypenplatine, drehte dann die Platine um und lötete das Arduino. Ich habe kein Diagramm, weil ich die Tasten meistens nach dem Zufallsprinzip gelötet habe (ich könnte eine hochladen, wenn genug Interesse besteht). Nachdem das Arduino gesichert ist, drehte ich die Platine wieder auf die Knopfseite und lötete den Rest der Knöpfe und deren Drähte.

Schritt 4: Optional: Verschönern Sie Ihr Controller-Gehäuse

Vor der Endmontage ist ein guter Zeitpunkt, um das Controllergehäuse zu schleifen, Lücken zu füllen und zu lackieren. Ich habe mich entschieden, diesen Schritt für meinen Prototyp zu überspringen, weil ich etwas sofort verwenden wollte. Wenn ich mein Design unweigerlich zu etwas Polierterem verbessere, werde ich ihm die Mühe geben, die es verdient.

Schritt 5: Endmontage

Endmontage
Endmontage

Jetzt ist es an der Zeit, alle Ihre Tasten und die fertige Prototypenplatine in das Gehäuse zu stecken. Ich habe für mein Design #4-24 x 1/2 Blechschrauben verwendet. Sie erledigen die Arbeit, passen aber nicht so gut, wie ich es gerne hätte.

Schritt 6: Programmieren Sie Ihr Arduino

Vielleicht möchten Sie diesen Schritt früher machen, wenn Sie die Platine noch entwerfen oder nachdem Sie alles an die Prototypenplatine gelötet haben. Ich mag es einfach, das in einem eigenen Abschnitt zu haben.

Der Code ist im Vergleich zu den meisten Arduino-Programmen, die ich gesehen habe, sehr einfach. Wir müssen nur jeder Taste einen Tastaturwert zuweisen und das Arduino durchläuft eine Schleife, um zu überprüfen, welche Tasten gedrückt werden, und sendet diese Informationen an unser Telefon.

Für Interessierte nutze ich die retroArch-App, um meine Retro-Spiele zu spielen. Die von mir verwendeten Tasten sind auf das für retroArch verwendete Standard-Tastaturlayout eingestellt.

#include #include "Keyboard.h" #define NUM_BUTTONS 12 const uint8_t BUTTON_PINS[NUM_BUTTONS] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}; // a = 'x' // b = 'z' // x = 's' // y = 'a' // linke Schulter = 'q' // rechte Schulter = 'w' // select = 'rshift ' // start = 'enter' // up = 'key:up' // down = 'key:down' // left = 'key:left' // right = 'key:right' const char BUTTON_KEYS[NUM_BUTTONS] = {KEY_RETURN, KEY_DOWN_ARROW, KEY_UP_ARROW, KEY_LEFT_ARROW, KEY_RIGHT_ARROW, KEY_RIGHT_SHIFT, 'z', 'x', 's', 'a', 'q', 'w'}; Bounce * Tasten = neuer Bounce [NUM_BUTTONS]; void setup() { for (int i = 0; i <NUM_BUTTONS; i++) {buttons.attach(BUTTON_PINS, INPUT_PULLUP); Tasten. Interval(25); } // Kontrolle über die Tastatur initialisieren: Keyboard.begin(); aufrechtzuerhalten. Void loop () {// prüfen, ob sich der Wert geändert hat für (int i = 0; i < NUM_BUTTONS; i++) { buttons.update(); if (buttons.fell()) { Keyboard.press(BUTTON_KEYS); } if (buttons.rose()) { Keyboard.release (BUTTON_KEYS); } } }

Schritt 7: Spielen Sie Ihre Spiele

Spielen Sie Ihre Spiele!
Spielen Sie Ihre Spiele!

Alternativ kann dieser Controller mit einem PC ohne das OTG-Kabel verwendet werden, um Tastendrücke oder Makros zu senden. Ich hatte auch einen Freund, der sagte, dass ein solcher Controller auch zum Zeichnen von Tablets nützlich sein könnte, obwohl ich noch nie mit einem herumgespielt habe.

Ich hoffe, Sie fanden dieses Instructable hilfreich. Nachfolgend finden Sie einen Abschnitt zu den Lektionen, die Sie erfahren haben, für diejenigen, die neugierig sind, was ich während des Prozesses gelernt habe und was ich gerne anders gemacht hätte.

Schritt 8: Gelernte Lektionen

CAD:

Ich habe mich in der Vergangenheit nie viel mit CAD-Software beschäftigt und musste mit dieser Konstruktion unterwegs lernen. Ursprünglich habe ich mich für ein aufrechteres Design entschieden, das ähnlich wie ein Wii Nunchuk in Ihre Hände passt. Mein begrenztes Wissen über das Gestalten mit organischen Formen war mein Untergang. Vielleicht sollte ich Intructables in seine CAD-Designklasse aufnehmen.

Tasten:

Die Knöpfe, die ich benutzt habe, waren lauter, als mir lieb ist (besonders wenn Sie versucht haben, jemanden am Aufwachen zu hindern). Ich würde gerne leisere Tasten finden. Das Einfügen von Federn zwischen den Knöpfen und Knopfkappen würde einen großen Beitrag dazu leisten, dass sich der Aufbau polierter anfühlt. Die Tasten haben für meinen Geschmack zu viel Spiel.

Löten:

Ich bin ein Anfänger im Löten und habe keine sehr ruhigen Hände. Das Löten all dieser winzigen Drähte überall dauerte viel länger als ich erwartet hatte. Wenn ich es noch einmal machen müsste, würde ich definitiv planen, wo meine Drähte verlaufen würden, bevor ich das Eisen greife. Das würde die Fehler mildern, die ich nach dem Anbringen des Arduino an der Prototypenplatine entdeckt habe, und hätte mir Zeit gespart.

Empfohlen: