Make 4/2023
S. 66
Make
Projekt

IR-Lightgun für den PC

Wer das Arcade-Feeling alter Lightgun-Spiele vermisst, kann sich mit dem SAMCO-Projekt die Plastikkanone für den modernen Monitor bauen.

von Daniel Schwabe

Heute sind die Maus oder der Controller das Eingabemittel der Wahl bei Videospielen. Durch Herumschieben der Maus oder Neigen des Joysticks bewegen wir ein virtuelles Fadenkreuz über den Bildschirm und klicken den Pixelgegner tot. Ein anderes Eingabegerät ist heute fast vergessen: die sogenannte Lightgun. Mit gezückter Kanone wartet man vor dem Bildschirm darauf, dass sich die digitalen Enten aus ihren Verstecken wagen, um dann blitzschnell mit der Plastikwaffe zu zielen und abzudrücken.

Bis zur ersten Xbox von Microsoft wurden Lightgun-Spiele und die passenden Lightguns für die Wohnzimmerkonsolen produziert. Mit der Playstation 3 und der Xbox 360 ist dieses Eingabegerät allerdings fast ausgestorben. Zwar gibt es mit der PlayStation Move und dem Wii-Bedienkonzept moderne Nachfolger, aber das Angebot an Spielen dafür ist mittlerweile sehr stark zusammengeschrumpft.

Wieso das? Ist die Spielwelt pazifistischer geworden? Die Antwort ist banaler: Die Bildschirmtechnologie hat sich geändert.

Die Funktionsweise von Lightguns

Klassische Lightguns funktionieren nur auf Röhrenfernsehern. Diese arbeiten nämlich fundamental anders als ihre flachen Nachkommen.

Anstatt auf Pixeln, wie bei modernen Geräten, basiert das Bild eines Röhrenfernsehers auf Zeilen. Ein Kathodenstrahl zeichnet das jeweils aktuelle Fernsehbild von oben nach unten zeilenweise auf den Bildschirm und baut es sukzessive auf. Das passiert so schnell, dass das menschliche Auge das nicht wahrnehmen kann und wir nur die fertigen Bilder sehen.

Funktionsweise eines Röhrenfernsehers mit Kathodenstrahlröhre: Makey wird zeilenweise abgebildet.
Funktionsweise eines Röhrenfernsehers mit Kathodenstrahlröhre: Makey wird zeilenweise abgebildet.

Dieses System wird von den Lighgun-Spielen folgendermaßen ausgenutzt: Drückt die Person vor der Flimmerkiste den Abzug, wird der Bildschirm einmal komplett schwarz und zeichnet danach überall dort, wo sich ein potenzielles Ziel befindet, ein weißes Quadrat.

Ist die Pistole auf so eine helle Stelle gerichtet, erkennt eine Fotodiode im Lauf der Lightgun den Helligkeitsunterschied und registriert einen Treffer. Anhand der Information, wo gerade auf dem Bildschirm eine Zeile des Quadrates gezeichnet wird, erhält das dazugehörige Videospielziel „Schaden“.

Das funktioniert auf modernen Monitoren nicht mehr, da auf diesen Geräten jedes Bild sofort vollständig angezeigt wird.

DIY Lightgun – das SAMCO-Projekt

Zum Glück für alle Retro-Enthusiasten hat Samuel Ballantyne mit dem Projekt Samco DIY Lightgun eine Software plus Leiterplatte entwickelt, mit denen das auch wieder auf modernen TVs funktioniert. Mit dem Kit kann ein alter Namco GunCon Controller für die Playstation 1 zur „IR-Maus“ für einen PC mit LC-Bildschirm umgebaut werden. Die alte Funktionsweise per Fotodiode wird ersetzt durch eine Infrarotkamera, die anhand von auf oder um den Monitor angebrachten Infrarot-LEDs das Ziel der Lightgun ermittelt und so die Mausbewegung bestimmt. Wir haben das Projekt nachgebaut.

Der Namco GunCon bildet die Basis der modifizierten IR-Lightgun.
Der Namco GunCon bildet die Basis der modifizierten IR-Lightgun.

Das Herzstück des ganzen ist das Mikrocontroller-Board Adafruit ItsyBitsy M0 Express, das auf eine speziell designte Leiterplatte aufgelötet ist. Auf diesem Träger-Board befinden sich vorgegebene Lötstellen, um die Original-Knöpfe der Lightgun anzuschließen und wiederzuverwenden. Dazu muss man sie natürlich von der Original-Platine ablösen. Geschieht das vorsichtig und vorausschauend, kann man diese Modifikation bei Bedarf später wieder zurückbauen.

Die umrandeten Teile müssen mit ihren Kabeln vorsichtig von der Hauptplatine abgelöst werden.
Die umrandeten Teile müssen mit ihren Kabeln vorsichtig von der Hauptplatine abgelöst werden.

Ganz ohne invasive Eingriffe am Pistolengehäuse kommt das Projekt leider nicht aus. Am hinteren Teil muss ein kleines Loch für einen zusätzlichen Schalter gebohrt werden. Dazu kann man das kleine Carrier-Board an die betreffende Stelle halten und mithilfe einer dünnen Nadel durch ein Loch in der Leiterplatte stechen, um die richtige Stelle zu markieren. Dort wird danach mit einem richtigen 5 mm Kunststoffbohrer vorsichtig gebohrt. Das kann man auch ohne Maschine mit der Hand machen.

Schweren Herzens muss eine kleine Anpassung am Originalgehäuse vorgenommen werden.
Schweren Herzens muss eine kleine Anpassung am Originalgehäuse vorgenommen werden.

Der ItsyBitsy M0 Express gehört auf die beschriftete Seite der Platine, auf der groß SAMCO 1.1 steht. Die USB-Schnittstelle des Boards muss in die Richtung der Beschriftungen LEFT, CALI und PEDAL ausgerichtet sein. Wichtig hierbei ist: Die hinteren Kontakte (En, RESET, 3 und 4) haben auf der Leiterplatte keine zugehörigen Löcher zum Anlöten der Pins. Deshalb dürfen an diesen Stellen auch keine Pins in den ItsyBitsy M0 Express eingelötet werden (wir haben das für Sie mal getestet und anschließend umständlich wieder ausgelötet).

Originalbauteile haben auch beim Umbau ihren Platz.
Originalbauteile haben auch beim Umbau ihren Platz.

Die beiden schwarzen Kabel des Abzugstasters müssen an die beiden Lötpunkte G und LEFT gelötet werden. Die roten Kabel des Schafttasters gehören mit RIGHT und G verbunden und die weißen mit G und MID. Für den Kalibrierungsknopf am kleinen Tochter-Board müssen die Board-Anschlüsse G und CALI mit den Lötpads G und CALI auf der Hauptplatine verlötet werden.

Die IR-Kamera hat vier Anschlusskabel. Diese muss man wie folgt anlöten: Gelb an SDA, Grün an SCL, Rot an die nicht beschriftete Lötstelle neben Grün/SCL und Schwarz an G.

Ist alles an den entsprechenden Stellen angelötet, kann man die Platine und alle Träger-Boards in ihre Halterungen einschieben.

Formschön passt das neue Innenleben in die Lightgun. Fast wie das Original.Mithilfe der beiden Muttern an der IR-Kamera passt das Bauteil wie angegossen.
Formschön passt das neue Innenleben in die Lightgun. Fast wie das Original.Mithilfe der beiden Muttern an der IR-Kamera passt das Bauteil wie angegossen.

Beim Einsetzen der IR-Kamera können die beiden Muttern am Gehäuse so auf- und zugedreht werden, dass das Gerät perfekt an der alten Linsenhalterung klemmt. Hier ist zu beachten, dass die Kamera eine Ober- und eine Unterseite hat. Die Oberseite ist mit dem Vermerk „TOP“ versehen und muss nach oben zeigen.

Mithilfe der beiden Muttern an der IR-Kamera passt das Bauteil wie angegossen.
Mithilfe der beiden Muttern an der IR-Kamera passt das Bauteil wie angegossen.

Phaser auf Puls – Software

Nachdem alles zusammengebaut ist, braucht die Lightgun noch Software. Benötigt wird die Arduino IDE (Integrated Development Environment, integrierte Entwicklungsumgebung). Wie man die installiert und konfiguriert, finden Sie unter unseren Links in der Kurzinfo.

Die Unterstützung für das ItsyBitsy-Board zu der IDE wird manuell hinzugefügt. Die Board-URL ist https://adafruit.github.io/arduino-board-index/package_adafruit_index.json . Jetzt ist der Code von Samuel Ballantyne an der Reihe. Dieser ist unter https://github.com/samuelballantyne/IR-Light-Gun zu finden.

An diesem Punkt ist eine Entscheidung fällig: Werden für die Lightgun vier IR-Orientierung-LEDs (eine an jeder Seite des Bildschirms) oder zwei (links und rechts an der oberen Bildschirmkante) verwendet? Im Folgenden wird von zwei LEDs am oberen Bildschirmrand ausgegangen. Bei der Verwendung von zwei LEDs funktioniert die Lightgun mit generischen, batteriebetriebenen Wii-Sensorbars, oder sogar mit zwei Teelichtern, die auf den Bildschirm gestellt werden. Dieses System ist schneller aufgebaut und funktioniert mit einer bereits erwähnten vorgefertigten Sensorbarlösung.

Dieses Projekt nutzt einen GunCon 1, der im Folgenden verwendete Code ist deshalb Samco_2IR/Samco_1.1_2IR/.

Bevor der Code auf die Lightgun übertragen wird, müssen alle notwendigen Libraries (jeweils zu finden im Verzeichnis Samco_2IR bzw. Samco_4IR) in den Bibliotheksordner der Arduino-IDE kopiert werden. Dieser Ordner ist unter Windows standardmäßig das Verzeichnis c:\Users\{Nutzerkonto}\Documents\Arduino.

Alle Dateien, die den gleichen Namen haben (in diesem Fall sind es immer zwei: eine .h- und eine .ccp-Datei), kommen in einen eigenen Ordner, der den gleichen Namen hat wie die Dateien.

Ist das alles vorbereitet, kann man die Datei Samco_1.1_2IR.ino unter Samco_2IR/Samco_1.1_2IR per Doppelklick öffnen.

In der 2IR-Version des Codes müssen noch zwei Zeilen angepasst werden.

In Zeile 63 und 64 des Codes muss in der 2IR-Version die Auflösung angepasst werden.
In Zeile 63 und 64 des Codes muss in der 2IR-Version die Auflösung angepasst werden.

Als letztes ist in der Konfiguration das richtige Board auszuwählen und der Port festzulegen. Dazu die Lightgun per USB mit dem Computer verbinden und in der IDE unter Tools/Board/Adafruit SAMD Boards das „Adafruit itsyBitsy M0 Express (SAMD21)“ auswählen. Für den Port unter Tools/Port den Port auswählen, unter dem das Board angezeigt wird.

Und jetzt der letzte Klick auf Übertragen. Während des Kopiervorganges wird das Board einmal getrennt und automatisch neu verbunden.

Wo bin ich? – Kalibrierung

Was bei der ersten Inbetriebnahme auffällt: Der Mauszeiger macht seltsame Dinge. Ursache ist die fehlende Kalibrierung. Dafür muss in der Position, aus der später gespielt werden soll, der Kalibrierungs-Button betätigt werden. Daraufhin hört die Maus auf sich zu bewegen.

Mit einem Druck auf den Abzug beginnt der Kalibrierungsprozess. Der Mauszeiger springt in die linke obere Monitorecke. Auf diesen Zeiger muss nun gezielt und abgedrückt werden. Darauf hin springt der Zeiger in die rechte untere Ecke. Auf diesen Bereich muss wieder geschossen werden. Damit ist die Lightgun kalibriert und funktioniert jetzt als Maus am PC. Der Abzug ist der linke Mausklick, der rechte rote Button dient als rechte Maustaste und der linke Button fungiert als mittlere Maustaste. Den Kalibrierungsvorgang können Sie in unserem Video sehen. Den Link finden Sie in der Kurzinfo.

Absch(l)ießende Gedanken

Nach der Fertigstellung der IR-Gun kam sie bei verschiedenen Spielen auf den Prüfstand. Sowohl mit nativen PC-Spielen, wie House of The Dead, als auch mit emulierten Playstation-1 und -2-Spielen - unter anderem mit Time Crisis.

Generell ist die „IR-Mauspistole“ ausreichend genau für ein spaßiges Spielerlebnis. Manchmal muss der Kalibriervorgang mehrfach wiederholt werden, bevor sich die Mausbewegung gut anfühlt.

Gegen Deutschlands gefährlichstes DIY-Magazin haben auch Zombies keine Chance!
Gegen Deutschlands gefährlichstes DIY-Magazin haben auch Zombies keine Chance!

Neben diesem funktionalen Aspekt ist aber auch der Authentizitäts-Faktor nicht zu vergessen. Als Vergleich diente eine Nintendo Wii-Mote mit spezieller Software. Im Endeffekt funktioniert so eine Wii-Fernbedienung auf ähnliche Weise, allerdings macht Spielen damit einfach keinen Spaß. Ein Spiel braucht das richtige Eingabegerät. Und für ein Lightgun-Spiel muss man eben eine klobige Plastikpistole in der Hand halten. Dann ist der Arcade-Spaß garantiert. —das