Zeitreise in’s Jahr 1989

Vielleicht seit ihr auch Kinder der späten 70er oder 80er Jahre, dann werdet ihr den sicher kennen, den Ur Game Boy von 1989. Wie viele andere Kinder hatte ich damals auch einen, der dann irgendwann unbeachtet im Kasten gelandet ist, bis ich ihn eines Tages herausgeholt und eingeschaltet habe. Ein schwerwiegender Fehler wie ich herausgestellt hat 😉

Leider hatte das Display die Jahre nicht gut überdauert und war defekt. Aus Neugierde hatte ich dann versucht ihn zu reparieren was auch gelang. Doch zeigte sich, dass das Spielen für die Augen anstrengender war als dazumals. Deswegen beschloss ich eine Hintergrundbeleuchtung einzubauen, die es heute von verschiedenen Herstellern zu kaufen gibt.

Das war eine große Verbesserung, doch man sagt uns Technikern nach, dass wir immer etwas finden, was wir noch verbessern können. In diesem Falle die Einstellung der Helligkeit der Hintergrundbeleuchtung.
Einfach ein Poti einzubauen gefiel mir nicht, da ich kein Loch ins Gehäuse bohren wollte, so entstand die Idee es über die Tasten des Game Boys zu steuern. Microcontroller und dazugehörige Entwicklungsumgebungen gibt es heute schon in großer Vielfalt und für wenig Geld und nach 1-2 Tagen war es geschafft und es läuft so:

  • vor dem Einschalten die Start Taste drücken und gedrückt halten
  • die Helligkeit mit den nach oben/nach unten Tasten einstellen
  • die Start Taste loslassen und das Spiel wird gestartet

Damit man das nicht jedes Mal machen muss, wird die Einstellung dauerhaft gespeichert.

Und hier seht ihr den ersten Prototypen in Aktion

 

22.05.2019: Die Platinen sind eingetroffen und eine wurde auch trotz einem bereits langem Arbeitstag noch aufgebaut…läuft 🙂

 

30.05.2019: Ein weiterer Mangel des Ur-GameBoys ist die Batterieanzeige. Zwar kann man an der Intensität der LED erahnen, wie es um den Ladezustand der Batterie/des Akkus steht, recht exakt ist das aber nicht und kann zur Folge haben, dass einem in einer heiklen Spielsituation der “Saft” ausgeht. Das im GameBoy eingebaute Netzteil ist zwar recht genügsam und funktioniert auch bei 4V Eingangsspannung noch, doch man soll ja Akkus auch nicht tiefentladen.

Da der verwendete Microcontroller einen integrierten Analog/Digital-Wandler besitzt, ist es naheliegend diesen zu verwenden, um die Batteriespannung zu überwachen. Zurecht werden einige sagen, dass auch das keinen exakten Schluss auf den Ladezustand der Batterie zulässt, aber es ist zumindest eine Verbesserung.
Nominal sind für einen NiCd/NiMH Akku 1.2V pro Zelle, daher habe ich den Schwellwert für die Überwachung auf 4.6V festgelegt, da die Verpolschutzdiode für einen zusätzlichen Spannungsabfall sorgt. Unterschreitet die Batteriespannung diesen Wert, beginnt die LED zu blinken. Bei Überschreiten einer Spannung von 4.8V – z.B. wenn ein Netzgerät angesteckt wurde – hört die LED wieder auf zu blinken.

Dank ausgeklügelter Stromsparfunktionen benötigt der Microcontroller nur wenig Strom. Insgesamt sind es bei maximaler Helligkeit der Hintergrundbeleuchtung 10.5mA und bei minimaler Heligkeit 8.5mA.

Nachdem das getan ist, widme ich mich noch einer anderen Idee: Bivertierung bei Bedarf.
Ihr kennt das vielleicht schon, dass zur Verbesserung des Kontrastes die Pixel des Displays invertiert werden. Dazu genügt es, zwei Signale mit Hilfe eines invertierenden Schmitt-Triggers zu invertieren. Die existierenden Lösungen sind jedoch permanent dh. es wird dann immer invertiert.
Der Schaltungsaufwand für die Bivertierung bei Bedarf ist minimal und es erfordert nur einen zusätzlich Portpin am Microcontroller, der Aufbau des Prototypen erforderte jedoch eine ruhige Hand.

Und fast wie durch ein Wunder hat es auch auf Anhieb funktioniert 🙂

Wie man sieht kann man durch ca. 1sec langes Drücken der Select Taste im Setup-Modus die Bivertierung ein- und ausschalten, was durch die LED angezeigt wird. Nach dem Wiedereinschalten war die Bivertierung dann ausgeschaltet. Zukünftig soll das dann auch im EEPROM gespeichert werden.

 

20.06.2019: Damit es auch nachgebaut werden kann, hier noch ein Bild der CPU Platine mit Markierungen, wo das Flachbandkabel anzulöten ist. Die Nummern entsprechen dabei der Adernnummer des Kabels. Pin 1 beim PCB ist durch ein abgerundetes/ovales Pad gekennzeichnet.




Wer gerne seinen GameBoy selbst nachrüsten möchte, findet die Platinen hier zum Kauf:
I sell on Tindie