Paragon Projekt: DOOM auf einem Arduino Nano ESP32

Doom auf Arduino Titelbild

Es gibt eine klassische Frage im Universum der Computerspiele - aber kann er Crysis ausführen? In der Welt der Mikrocomputerspiele und Mikrocontroller haben wir jedoch eine etwas andere Frage: Kann er DOOM ausführen?

Nun, wir haben endlich die Antwort für den Arduino Nano. Und die Antwort ist: Ja!

Sie können DOOM tatsächlich auf einem Arduino Nano ESP32 spielen, wenn auch mit einigen notwendigen Anpassungen.

Aber am Ende dieses kleinen Projekts wirst du eine vollständig tragbare DOOM-Konsole haben.

Ein großes Lob an Naveen, der dies erstellt und dann die Details auf hackster.io hochgeladen hat, um euch zu zeigen, wie ihr es selbst zusammenbauen könnt!

Kredit: Naveen.

Und wirklich, das ist unglaublich einfach. Alles, was Sie tun müssen, ist, die Komponenten miteinander zu verdrahten und dann die Firmware zu konfigurieren und zu flashen, um DOOM zum Laufen zu bringen.

Auf der hacker.io-Seite wird geschätzt, dass man für dieses Projekt 5 Stunden braucht. Aber ich würde sagen, Sie könnten es wahrscheinlich viel schneller als das mit Naveen's fantastische Anweisungen zu bekommen.

Hardware

Wie bereits erwähnt, dreht sich dieses Projekt um einen Arduino Nano ESP32. Naveen hat sich für einen Adafruit 2,8″ TFT kapazitiver Touchscreen als Display, aber wenn Sie ein anderes Display herumliegen haben, wird das sicher reichen.

Zusätzlich hat Naveen ein Breadboard verwendet, um alles zusammenzuhalten. Wie Sie vielleicht bemerkt haben, wurde diese Konsole für den Konzeptnachweis auch aus Plastikresten hergestellt. Natürlich wird so etwas nur als vorübergehende Lösung dienen.

Wenn Sie das Gerät dauerhaft anschließen möchten, müssen Sie vielleicht mit einem 3D-gedruckten Gehäuse und einem Lötkolben kreativ werden.

Wie auch immer, wenn Sie sich das Bild unten ansehen, werden Sie sehen, dass Naveen auch einen M5Stack Joystick und einen Seeed Studio Grove Doppelknopf verwendet hat. Auch hier gilt: Wenn Sie einen anderen Joystick oder andere Knöpfe herumliegen haben, werden diese ausreichen.

Kredit: Naveen.

Zum Schluss brauchst du natürlich noch ein paar Überbrückungsdrähte, um alles über das Breadboard miteinander zu verbinden.

Wie Naveen erklärt, basiert die Verbindung zwischen dem Nano und dem TFT-Display auf die serielle Peripherieschnittstelle (SPI). In der Zwischenzeit werden der Joystick und die Tasten über den Inter-Integrated Circuit Bus (I2C).

Software

Naveen erklärt, dass für die Portierung von DOOM einige Modifikationen erforderlich sind, da das Originalspiel mehr RAM und Festplattenplatz benötigt, als der Arduino Nano bietet.

Daher basiert der Aufbau auf Ducalex' sehr cooles Retro-Go-Repository auf GitHub, eine Firmware, die klassische Spiele für ESP32-Geräte modifiziert.

Speziell für dieses Projekt hat Naveen es so konfiguriert, dass es mit den Joysticks, den Knöpfen und dem Display funktioniert. So entsteht eine DOOM-Konfiguration, die Sie sicher schätzen werden.

Dann müssen Sie nur noch die Firmware flashen. Und dann brauchen Sie eine Konfigurationsdatei, um WiFi automatisch auf dem ESP32 zu aktivieren.

Legen Sie diese auf die SD-Karte und stecken Sie diese in Ihren Arduino Nano.

Kredit: Naveen.

Das Spiel hat eine durchschnittliche Bildrate von 34 FPS bei einer Auflösung von 320×240 Pixeln.

Jetzt kannst du DOOM auch unterwegs mit einem Arduino Nano erleben!

Schlussfolgerung

Die vollständigen Schaltpläne, den Code und weitere Details finden Sie auf die Seite hacker.io.

Sie können sich auch weitere Paragon-Projekte ansehen, die wir vorgestellt haben, indem Sie auf hier.

Wir haben schon einmal über eines von Naveens Projekten berichtet, der Mikrocontroller-Rechner.

Lassen Sie mich dies mit einem Geständnis beenden. Um ehrlich zu sein, habe ich das klassische DOOM noch nie komplett durchgespielt - Sie etwa?

21 Kommentare

  1. Veröffentlich von Виталий am September 15, 2023 um 12:49 pm

    это ложь в некоторой степени. представленная ссылка ведёт на Ардуино нано с атмега 128, а на картинках esp32. это небо и земля

    • Veröffentlich von Adam am Oktober 9, 2023 um 10:45 am

      Да, ссылка была неверной - спасибо за комментарий!

  2. Veröffentlich von motosega am September 15, 2023 um 1:03 pm

    das ist kein Arduino nano mit einem atmega 328 (wie der, den du verlinkt hast).

    es ist ein Arduino nano-stm32. das ist nicht so schockierend, um doom darauf laufen zu lassen. deutlich leistungsfähiger als, sagen wir, ein Amiga 500, auf dem Leute doom zum laufen gebracht haben.

    • Veröffentlich von Adam am Oktober 9, 2023 um 10:45 am

      Ja, der Link war falsch angegeben. Entschuldigung für den Fehler!

  3. Veröffentlich von Tim am September 15, 2023 um 7:42 pm

    das ist eine Nano-esp32-Version. Ich dachte für eine
    Moment, in dem du das auf einem AVR nano laufen hattest.

    • Veröffentlich von Adam am Oktober 9, 2023 um 10:46 am

      Nein, tut mir leid. Ich habe den ESP32-Teil nicht klar genug ausgedrückt! Ich habe den Text korrigiert.

  4. Veröffentlich von Alex am September 15, 2023 um 8:32 pm

    Es ist ein "minimaler" Unterschied zwischen einem Arduino Nano (8 MHz, 2kB RAM) und einem ESP32 (240MHz, viel mehr RAM)! Das ist komplett irreführend formuliert.

    • Veröffentlich von Adam am Oktober 9, 2023 um 10:47 am

      Du hast völlig recht! Ich habe den Text korrigiert. Danke für den Kommentar!

      • Veröffentlich von Albert am November 8, 2023 um 2:05 pm

        Aber Du sprichst sehr gut Deutsch. Wo kommst Du her?

  5. Veröffentlich von Алексей am September 15, 2023 um 10:42 pm

    это не просто Arduino Nano, а ардуино с контроллером esp32. А ссылка отправляет нас в магазин где просто arduino nano, а не esp32

    • Veröffentlich von Adam am Oktober 9, 2023 um 10:48 am

      Да, ссылка была неверной - спасибо за комментарий!

  6. Veröffentlich von Александр am September 16, 2023 um 6:12 am

    Что бы писать такие статьи, нужно хоть немного разбираться в этом. Создатель молодец, а автор статьи написал полную ахинею.

    • Veröffentlich von Adam am Oktober 9, 2023 um 10:50 am

      Хаха извини за ахинею!

  7. Veröffentlich von Проходящий мимо пользователь am September 16, 2023 um 6:16 am

    просьба поменять заголовок, так как используется Arduino Nano ESP32

    • Veröffentlich von Adam am Oktober 9, 2023 um 10:52 am

      Все в порядке?

  8. Veröffentlich von Brak wiedzy autora am September 18, 2023 um 4:57 am

    to nie jest Arduino nano !
    nano jest na atmedze a nie na esp

    • Veröffentlich von Adam am Oktober 9, 2023 um 10:51 am

      Bitte melden Sie sich, wenn Sie etwas brauchen! To jest Arduino Nano ESP32

  9. Veröffentlich von Brak wiedzy autora am September 18, 2023 um 4:59 am

    wifi na karcie SD ??

    • Veröffentlich von Adam am Oktober 9, 2023 um 10:55 am

      Myślę, że w tłumaczeniu brakowało jednego słowa. Teraz lepiej?

  10. Veröffentlich von robbert am Dezember 4, 2023 um 8:33 pm

    ziemlich fest in der esp idf Fortschritt. (Code ist nicht das gleiche wie in Ihren Dokumenten) eine vorkompilierte Version zur Verfügung, die nur hochladen muss?
    das wäre schön 😀

  11. Veröffentlich von robbert am Dezember 4, 2023 um 8:38 pm

    Scheint so, als ob mein letzter Kommentar nicht durchkam, haha

    Ich komme mit dem esp-idf-Fortschritt nicht weiter. Der Code scheint sich im Laufe der Zeit geändert zu haben.
    wollte dieses Jahr zu Weihnachten einen für meine Kinder bauen, haha
    Gibt es eine Möglichkeit, eine vorkompilierte Bin-Datei auf den esp32 zu laden?

    Mit freundlichen Grüßen und vielen Dank
    Robbert

Hinterlassen Sie einen Kommentar