Im Zusammenhang: Ein YouTuber hat eine reale Arbeitsversion des Pokédex aus der Anime-Serie der 1990er Jahre nachgebaut. Für diejenigen, die es nicht kennen: Der Pokédex war ein rotes, kameraähnliches Gerät, mit dem Ash Pokémon identifizierte. Das Gerät würde die Kreatur analysieren und Ash dann lautstark ihren Namen und ihre Beschreibung mitteilen.
Abe Haskins, der Ingenieur und Moderator des YouTube-Kanals Abe's Projects, wollte die nostalgische Funktionalität und das Erscheinungsbild des Pokédex nachbilden. Firmen wie Tiger haben Pokédex-Spielzeuge herausgebracht, aber keines funktionierte so gut wie das aus der Serie. Abes Hauptziele bestanden darin, es der Anime-Version so ähnlich wie möglich zu machen, die meisten Pokémon in den meisten Situationen zu erkennen und sprechen zu können.
Es gelang ihm in den meisten Punkten. Das Einzige, was ihm fehlte, waren einige Knöpfe und Komponenten auf der Innenseite der Türklappe, aber fairerweise muss man sagen, dass diese in der Show nur kosmetischer Natur zu sein scheinen. Es hätte einem ohnehin schon „stressigen“ Projekt viel mehr Komplexität bei minimalem Gewinn hinzugefügt.
Elektronisch benötigte Haskins lediglich einen Kamerasensor, einen kleinen Bildschirm zur Anzeige des identifizierten Monsters, einen Lautsprecher für die Stimme und WLAN, damit es mit chatgpt-4 kommunizieren konnte. Um die Hardware abzurunden, fügte er einen Akku, einen USB-Anschluss und ein paar Tasten zum Scannen und Beenden hinzu. Er nutzte einen 3D-Drucker, um das Gehäuse zu erstellen, und das endgültige Design passt bis hin zur eingekerbten Tür gut zur TV-Version.
Haskins gab zu, dass der anspruchsvollste Teil des Projekts darin bestand, die Software zu entwerfen und zu debuggen.
Das Klonen der Stimme des Pokédex (Schauspieler Nick Stellate) war mithilfe einer Online-KI-Plattform namens „ PlayHT. Die Text-to-Voice-Software hatte Probleme mit der richtigen Aussprache einiger Taschenmonsternamen. Es hat jedoch gut genug funktioniert.
Das Gerät leitet Kamerasensordaten an ChatGPT-4 weiter, das diese über eine API mit einer Datenbank mit Pokémon-Bildern und -Informationen vergleicht. Die Datenbank enthält Bitmap-Bilder gepaart mit Pokémon-Namen. Die Bilder werden auf dem kleinen monochromen OLED-Panel gut wiedergegeben, allerdings erscheint der Text manchmal verstümmelt.
Dennoch sah der Pokédex im zusammengebauten Zustand wie beworben aus und funktionierte wie angekündigt, also war es an der Zeit, ihn zu debuggen. Haskins sagte, das Debuggen habe die meiste Zeit in Anspruch genommen, aber fünf Störungen seien am nervigsten und am schwierigsten zu beheben.
- Das Laden der Pokémon-Bitmap-Bilder führte zum Absturz des Geräts. Er behob dieses Problem, indem er den Code neu schrieb, um die Bitmap Byte für Byte zu lesen und sie Pixel für Pixel zu rendern.
- Als der Pokédex sprach, war ein hörbares Ticken zu hören. Ein Hex-Editor zeigte in den API-Daten in regelmäßigen Abständen „1000“ an. Durch manuelles Entfernen aller Instanzen konnte das Problem behoben werden.
- Das Trennen des Pokémon-Namens von seiner Beschreibung führte zum Absturz des Geräts. Ein falsch konfigurierter Puffer war die Ursache für einen Pufferüberlauf.
- PSRAM schien zufällige Abstürze auszulösen. Haskins hatte das PSRAM zu einem früheren Zeitpunkt im Debugging-Prozess eingeschaltet, um ein damit nicht zusammenhängendes Problem zu beheben, und vergessen, es zu deaktivieren.
- Schließlich friert der Pokédex gelegentlich zufällig ein. Der YouTuber konnte das Problem nicht lokalisieren oder reproduzieren, so dass es nach Abschluss des Projekts der einzige verbleibende Fehler war.
Haskins erklärte, dass er das anhaltende Absturzproblem durch eine Neucodierung des Programms beheben könne, gab jedoch an, dass er keine Zeit habe.
„Ich würde es lieben, wenn ich Zeit hätte, den Code neu zu schreiben und einen Teil davon von vorne zu beginnen“, sagte Haskins. „Aber ich denke, das liegt in der Natur dieser Projekte. Sie werden nicht immer perfekt sein.“
Er hat den Pokédex an ein paar Spielzeugen getestet. Es konnte ein Plüschtier nicht richtig identifizieren, Actionfiguren und Bilder auf einem Computerbildschirm wurden jedoch recht gut erkannt. Haskins meint, das liegt wahrscheinlich daran, dass das ausgestopfte Pokémon seinem Bild aus der Datenbank nicht sehr ähnlich sieht. Man könnte sich eine ähnliche Erfolgsquote für ein Programm vorstellen, das darauf abzielt, Prominente durch den Vergleich von Karikaturen mit Fotos zu identifizieren.