Nanu? Wer hat denn da ein angefangenes Projekt einfach so liegenlassen? Na, das sind aber mal schlechte Manieren – böser retrololo! 😛
Aber mal ernsthaft – ist das Ding denn immer noch nicht fertig? Beim letzten Mal haben wir doch schon zahlreiche Bauteile verlötet und trotzdem sieht das alles noch recht nach „Baustelle“ aus. Wie kann das sein? Ganz klar – hier fehlt ein schickes Gehäuse, um dem Kabelsalat Herr zu werden. Wie immer hat der gute Max mir das mit seinem 3D-Drucker ausgedruckt! Besten Dank dafür! 🙂
Das blaue „PLA Plus“-Filament soll laut Hersteller etwas widerstandsfähiger und schlagfester sein. Tatsächlich wirkt das Gehäuse recht stabil, vielleicht ist es aber auch nur meine Einbildung. 🙂
Zumindest die Platine findet schon mal gut darin Platz:
Tatsächlich ist der Bau des GBS-C damit aber noch nicht abgeschlossen. Um das GBS-Board per Ein-/Ausschalter regulieren zu können, müssen wir leider nochmal zum Lötkolben greifen und die vorhandene Stromversorgung des Boards umleiten. Hierfür lösen wir einen Pol der Schottky-Diode und verbinden die freigewordenen Lötstellen mit den Leitungen des Power-Schalters.
Apropos Schalter – leider habe ich natürlich nicht bedacht, dass die aus den defekten Netzteilen ausgebauten, schwarzen Schalter etwas größer sind, als diejenigen, welche ich eigentlich hätte kaufen müssen. An sich kein Thema, nur blöd, dass das Gehäuse für die kleineren Modelle gedruckt wurde! 😀 Dementsprechend müssen wir jetzt den Feilensatz zur Hand nehmen und die Aussparungen entsprechend vergrößern. Mühsam, aber auch das ist irgendwann geschafft und wir können die zweite Leitung des Power-Schalters mit dem 5Volt-Pin des Mikrocontrollers verbinden, um auch ihn auch mit Strom über den Schalter zu versorgen.
Als nächstes werden SCART- und Klinkenbuchse eingesetzt und über den weißen Stecker mit der Platine verbunden. Zur Stabilisierung wird die SCART-Buchse noch mit dem Gehäuse verschraubt:
Viel aufgeräumter schaut es jetzt nicht wirklich aus, aber zumindest haben wir noch ein paar Teile darin verbaut! 😛
Hatten wir nicht noch einen zweiten Schalter zur Auswahl des Eingangssignals (VGA oder SCART)? Stimmt, da war was! Direkt Neben der SCART-Buchse findet sich für den Taster gerade so noch etwas Platz im Gehäuse. Damit das Ding tut, was es soll, müssen wir es über die Pins „Sync“ und „Masse“ mit der Hauptplatine verbinden.
Das einzige was jetzt noch stört, ist die Tatsache, dass der Controller frei im Gehäuse rumfliegt. Leider kann ich ihn nicht an der dafür vorgesehenen Vorrichtung verschrauben, da in dem Bausatz ein kleineres Modell des ESP8266-Mikrocontroller dabei war. Mist! 🙁
Ich sehe schon – wir müssen etwas basteln. Aus einem alten Stück Holz habe ich eine kleine Halterung gebaut, mit welcher sich das gute Stück befestigen lässt. Sicherlich könnte man hier auch etwas Schöneres mit dem 3D-Drucker zaubern, aber nochmal wollte ich Max nicht belästigen! 😀
Uff – endlich fertig! 🙂
Naja, noch nicht ganz. Zumindest das Gerät selbst ist damit erledigt. Eine Kleinigkeit müssen wir aber trotzdem noch löten. Erinnert ihr euch an den VGA-to-HDMI-Adapter aus Artikel 231, welcher bei dem Bausatz mit dabei war?
Damit wir diesen später nicht über ein eigenes USB-Netzteil mit Strom versorgen müssen, können wir den Strom direkt von der GBS-C-Platine abgreifen. Hierfür müssen wir nur den zweipoligen Steckverbinder (welcher auch beim Bausatz mit dabei war) mit dem Micro-USB-Stecker verlöten:
Dadurch wird das Kabel-Chaos zwar nur noch schlimmer, aber das ist egal, weil später kommt ja ein Deckel drauf und dann muss man das nicht mehr sehen! 😛
Ich denke nach dieser fetten Hardware-Session sollten wir uns jetzt zur Entspannung um die Software (Firmware) des Mikrocontrollers kümmern. Um diese auf das Gerät aufzuspielen, müssen wir erst einmal die „Arduino IDE“ sowie einen USB-Treiber herunterladen und installieren.
In der Arduino-Software muss nun in den Einstellungen die URL (also der Link) zum Download der Bordinformationen des ESP8266-Controllers hinzugefügt werden:
Anschließend können wir mit dem „Bordmanager“ (im Menü Werkzeuge zu finden) die Unterstützung für ESP-Boards herunterladen und installieren.
Not so fun Fact: Man sollte darauf achten, eine ältere Version zu installieren, denn ab Version 3.0.0. haben sich ein paar Bugs eingeschlichen, welche in weiteren Schritten zu Fehlern führen können! 🙁
Nun wird der GBS-Scaler über den MicroUSB-Port des ESP8266-Controllers mit dem PC verbunden und wir können in der Arduino-Software den Board-Typ des Mikrocontrollers (LOLIN(WEMOS) D1 R2 & mini) angeben:
Doch damit noch nicht genug – zusätzlich müssen einige spezielle Einstellungen wie z.B. die CPU-Frequenz (160 MHz) oder Größe des Flashspeichers (4MB (FS:1MB OTA:~1019KB)) explizit mit angegeben werden. Schon echt unfassbar, an was man da alles denken muss! xD
Als nächstes müssen wir dem Projekt noch ein paar Bibliotheken hinzufügen:
Erst jetzt können wir die eigentliche Firmware herunterladen, in der Arduino IDE öffnen, kompilieren und anschließend auf den Mikrocontroller hochladen:
Gott sei Dank ist das geschafft. Ich denke, jetzt sollten wir endlich die wichtigste Frage klären: Funktioniert unser gepimpter „DIY-Upscaler“? Um das zu überprüfen, habe ich die mit einem RGB-Mod versehene N64-Konsole aus Artikel 230 nochmal herausgeholt. Wichtig: Mit der unmodifizierten N64-Konsole, welche nur ein Composite-Signal ausgeben kann, brauchen wir es erst gar nicht probieren. Der GBS-C kann nur mit RGB- oder Componentsignalen umgehen.
Ich gebe es ja zu – der Anschluss aller Kabel (HDMI-Kabel, Stereo-Audiokabel, SCART-RGB-Kabel, Netzkabel) an dem Gerät sieht etwas wild aus! 😀
Mit eingestecktem „Super Mario 64“-Modul bekommen wir tatsächlich ein Bildsignal. Das ist zwar relativ scharf, doch leider sehen die Farben irgendwie merkwürdig aus. Seit wann hat Mario denn eine schwarze Mütze auf?! Irgendwas stimmt hier definitiv noch nicht. Bei genauerer Betrachtung sieht es so aus, als würde die rote Farbe gänzlich fehlen!
Nur durch wildes herumprobieren, sowie erneuter Analyse der Hardwarekomponenten (durchmessen einzelner Bauteile, Überbrücken diverser Leitungen) bin ich dahintergekommen, was das Problem ist. Es sieht so aus, als würde die Leitung für das rote Signal von der SCART-RGB-Buchse gar nicht am GBS-Board ankommen! Das ist merkwürdig, da sie ja eigentlich (analog der anderen Signalleitungen) über den weißen Stecker zur Platine geführt wird. Wie dem auch sei – ich habe die eine Leitung vom Stecker direkt zu einem Kontaktpunkt auf der Platine mit einem Stück Kabel überbrückt:
Not so fun Fact: Ich hatte natürlich als erstes versucht online zu recherchieren, was das Problem sein könnte. Im Endeffekt war das verschwendete Zeit, aber im Nachhinein ist man immer schlauer. Bei so „individuellen“ Fehlern, hilft dir halt leider auch das Internet nicht! 🙁
Aha! Schon sehen die Bildfarben korrekt aus und Mario hat auch wieder eine rote Mütze auf! 🙂
Um ein Gefühl dafür zu bekommen, was der GBS-C-Scaler jetzt anders als der HD Video Converter aus Artikel 230 macht, habe ich von verschiedenen Spielszenen Bilder aufgenommen und nebeneinandergelegt. Hm, so richtig gut sieht das irgendwie noch nicht aus. Das Bild ist immer noch gestaucht und die Farben wirken etwas verwaschen. Das sieht ja fast noch schlechter aus als bei dem billigen HD Video Converter! Doch woran liegt das?
Tja, wir haben ein entscheidendes Detail vergessen! Bisher haben wir uns ja noch gar nicht die Konfiguration der Software angesehen. Dort lassen sich nämlich einige essentielle Parameter (wie z.B. die Auflösung) einstellen. Wie in Artikel 231 gelernt, verfügt der getunte GBS-C-Scaler über ein WLAN-Modul und kann dadurch mit Hilfe eines Webinterfaces konfiguriert werden. Dafür muss man sich lediglich mit einem beliebigen Gerät mit dem WLAN „gbs-control“ verbinden. Ich habe hierfür das Galaxy Smartphone aus Artikel 220 verwendet:
Anschließend kann über die Webseite „http://gbscontrol.local“ die Konfigurationssoftware aufgerufen werden. Sobald wir dort die Auflösung von 1280×1024 (Standardkonfiguration für PAL-Signale) auf 1920×1080 abändern…
…sieht das Bild schon viel besser aus! 🙂
Auch im Vergleich mit dem HD Video Converter schneidet der GBS-C nun besser ab. Das Seitenverhältnis ist korrekt und die Farben kommen wesentlich kräftiger zur Geltung. Und das alles ohne erkennbare Eingabeverzögerung – sehr cool! 🙂
Eine der Stärken des Geräts ist, dass sich über das Webinterface zig verschiedene Einstellungen zur Verbesserung des Bildes vornehmen lassen. So kann beispielsweise an der Helligkeit, der Bildgröße- und Position sowie zahlreichen weiteren Parametern geschraubt werden.
Eine nette Funktion sind beispielsweise die Scanlines (Bildschirmzeile bestehend aus einer definierten Anzahl an Pixeln). Damit lassen sich abwechselnd schwarze Bildschirmzeilen zwischen den eigentlichen Lines einblenden. Das sieht dann fast so aus, wie man es von alten „Flimmerkisten“ (also Röhren-TVs) gewohnt ist! 🙂
Vermutlich gäbe noch zahlreiche weitere Möglichkeiten, das Maximum an Qualität aus dem Gerät herauszuholen, aber ich denke wir sollten es für heute gut sein lassen. Ich bin begeistert, dass das Teil – bis auf den einen Lapsus mit der roten RGB-Leitung – ohne Probleme funktioniert. Ganz klar – perfekt ist der GBS-C natürlich nicht, und es gäbe noch wesentlich bessere, bzw. hochqualitativere Geräte, aber das lässt sich bei dem geringen Preis verschmerzen. In jedem Fall ist der „DIY-Scaler“ eine gute Möglichkeit, alte Konsolen überhaupt via HDMI an modernen TVs anzuschließen! 🙂
Für Leute, die nur Konsolen mit der „Standardausstattung“ (nicht modifiziert, Composite-Kabel, etc.) besitzen, eignet sich das Teil eher weniger. Dafür gibt es aber auch eine Vielzahl an Lösungen über welche wir bereits in Artikel 230 geredet haben. Für umgebaute Konsolen (oder welche die nativ ein RGB-Signal ausgeben) ist der GBS-C prima geeignet und vielleicht sogar notwendig. Schließlich wird es immer unwahrscheinlicher einen TV aufzutreiben, welcher einen SCART-RGB-Anschluss besitzt und von Haus aus mit den teils sehr kryptischen Bildsignalen von Retro-Konsolen umgehen kann. Besonders gut gefällt mir die Tatsache, dass man das Teil dank VGA- und Komponenteneingang auch für alte PCs oder Multimediageräte (DVD-Player, etc.) verwenden könnte. Das Preis-Leistungs-Verhältnis dieser kleinen Box ist echt gigantisch!
Aber wem erzähle ich das alles? Ich weiß – mega langweilig. Auch Mario ist schon eingeschlafen! 😀
In diesem Sinne – bis die Tage, ciao!