{"id":5287,"date":"2023-09-14T09:07:26","date_gmt":"2023-09-14T09:07:26","guid":{"rendered":"https:\/\/picockpit.com\/raspberry-pi\/?p=5287"},"modified":"2023-11-27T08:08:31","modified_gmt":"2023-11-27T08:08:31","slug":"paragon-project-doom-on-an-arduino-nano","status":"publish","type":"post","link":"https:\/\/picockpit.com\/raspberry-pi\/paragon-project-doom-on-an-arduino-nano\/","title":{"rendered":"Paragon Project: DOOM on an Arduino Nano ESP32"},"content":{"rendered":"\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Doom-on-Arduino-Title-Image-1024x576.png\" alt=\"Doom on Arduino Title Image\" class=\"wp-image-5288\" srcset=\"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Doom-on-Arduino-Title-Image-1024x576.png 1024w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Doom-on-Arduino-Title-Image-300x169.png 300w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Doom-on-Arduino-Title-Image-768x432.png 768w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Doom-on-Arduino-Title-Image-18x10.png 18w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Doom-on-Arduino-Title-Image.png 1200w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">There&#8217;s a classic question in the universe of computer games &#8211; but can it run Crysis? However, in the world of microcomputer games and microcontrollers, we have a slightly different question &#8211; but can it run DOOM?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Well we finally have the answer for the Arduino Nano. And the answer is: <em>yes! <\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You can indeed play DOOM on an Arduino Nano ESP32, albeit with some necessary adjustments.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"> But by the end of this little project, you&#8217;ll have a fully portable DOOM console.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Huge shout out to Naveen, who created this and then uploaded the details to hackster.io to show you how you can put it together yourself!<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Screenshot-from-2023-09-14-09-57-09.png\" alt=\"\" class=\"wp-image-5289\" style=\"width:464px;height:352px\" width=\"464\" height=\"352\" srcset=\"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Screenshot-from-2023-09-14-09-57-09.png 957w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Screenshot-from-2023-09-14-09-57-09-300x228.png 300w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Screenshot-from-2023-09-14-09-57-09-768x583.png 768w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Screenshot-from-2023-09-14-09-57-09-16x12.png 16w\" sizes=\"auto, (max-width: 464px) 100vw, 464px\" \/><figcaption class=\"wp-element-caption\">Credit: <a href=\"https:\/\/www.hackster.io\/naveenbskumar\/yes-arduino-nano-esp32-can-play-doom-ccfde1\">Naveen<\/a>.<\/figcaption><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">And really, this is unbelievably straightforward. All you need to do is wire the components together and then configure and flash the firmware in order to get DOOM running.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">On the hacker.io page, the estimation that this project will take you 5 hours. But I&#8217;d say you could probably get it done a lot faster than that with Naveen&#8217;s fantastic instructions.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Hardware<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">So, as already mentioned, this project revolves around an Arduino Nano ESP32. Naveen&#8217;s gone with an <a href=\"https:\/\/buyzero.de\/products\/adafruit-pitft-plus-320x240-2-8-tft-capacitive-touchscreen?s=rec&amp;w=p\">Adafruit 2.8&#8243; TFT capacitive touchscreen<\/a> as the display, but if you&#8217;ve got another display lying around, that&#8217;ll surely do.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Additionally, Naveen has gone with a breadboard to hold everything together. For the proof of concept, as you might have notice, this console is also made with some leftover plastic. Of course, something like will only serve as a temporary solution.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If you&#8217;re looking to hook this up permanently, you might have to get creative with a 3D-printed case and a soldering iron.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Anyway, aside from that, if you look at the picture below, you&#8217;ll see that Naveen has also utilized an M5Stack Joystick and a Seeed Studio Grove dual button. Again, if you&#8217;ve got another joystick or other buttons lying around, those will suffice.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Screenshot-from-2023-09-14-09-54-24.png\" alt=\"\" class=\"wp-image-5291\" style=\"width:461px;height:350px\" width=\"461\" height=\"350\" srcset=\"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Screenshot-from-2023-09-14-09-54-24.png 957w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Screenshot-from-2023-09-14-09-54-24-300x228.png 300w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Screenshot-from-2023-09-14-09-54-24-768x583.png 768w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Screenshot-from-2023-09-14-09-54-24-16x12.png 16w\" sizes=\"auto, (max-width: 461px) 100vw, 461px\" \/><figcaption class=\"wp-element-caption\">Credit: <a href=\"https:\/\/www.hackster.io\/naveenbskumar\/yes-arduino-nano-esp32-can-play-doom-ccfde1\">Naveen<\/a>.<\/figcaption><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Finally, of course, you&#8217;ll need some jumper wires to hook up everything together through the breadboard. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">As Naveen explains, the connection between the Nano and the TFT display is based on <a href=\"https:\/\/picockpit.com\/raspberry-pi\/spi-the-serial-peripheral-interface\/\">the Serial Peripheral Interface (SPI)<\/a>. Meanwhile, the joystick and buttons are connected via <a href=\"https:\/\/picockpit.com\/raspberry-pi\/i2c-the-inter-integrated-circuit-bus\/\">the Inter-Integrated Circuit Bus (I2C)<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Software<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Naveen clarifies that in order to port DOOM, the game requires some modification, because the original game demands more RAM and disk space than the Arduino Nano offers.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Therefore, the setup is based on <a href=\"https:\/\/github.com\/ducalex\/retro-go\">Ducalex&#8217;s very cool Retro-Go repository<\/a> on GitHub, which is firmware that modifies classic games for ESP32 devices.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For this project specifically, Naveen has configured it to work with the joysticks, buttons, and display. aking a DOOM configuration that you&#8217;re sure to appreciate.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Then you just need to flash the firmware. And then you need a configuration file to enable WiFi automatically on the ESP32. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Put that on the SD card and then insert that into your Arduino Nano.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Screenshot-from-2023-09-14-09-55-53.png\" alt=\"\" class=\"wp-image-5290\" style=\"width:465px;height:353px\" width=\"465\" height=\"353\" srcset=\"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Screenshot-from-2023-09-14-09-55-53.png 957w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Screenshot-from-2023-09-14-09-55-53-300x228.png 300w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Screenshot-from-2023-09-14-09-55-53-768x583.png 768w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Screenshot-from-2023-09-14-09-55-53-16x12.png 16w\" sizes=\"auto, (max-width: 465px) 100vw, 465px\" \/><figcaption class=\"wp-element-caption\">Credit: <a href=\"https:\/\/www.hackster.io\/naveenbskumar\/yes-arduino-nano-esp32-can-play-doom-ccfde1\">Naveen<\/a>.<\/figcaption><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">The game has an average frame rate of 34 FPS with a resolution of 320&#215;240 pixels.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Now you can have DOOM on the go with an Arduino Nano!<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">You can find the full schematics, code, and more details over on <a href=\"https:\/\/www.hackster.io\/naveenbskumar\/yes-arduino-nano-esp32-can-play-doom-ccfde1\">the hacker.io page<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You can also check out more Paragon Projects that we\u2019ve featured by clicking <a href=\"https:\/\/picockpit.com\/raspberry-pi\/category\/paragon-projects\/\">here<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">We&#8217;ve covered one of Naveen&#8217;s projects before, <a href=\"https:\/\/picockpit.com\/raspberry-pi\/paragon-project-microcontroller-computer\/\">the Microcontroller Computer<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Let me end this with a confession. To be honest, I&#8217;ve never actually completed the classic, full DOOM &#8211; have you?<\/p>\n<div class=\"shariff shariff-align-center shariff-widget-align-left shariff-buttonstretch\"><ul class=\"shariff-buttons theme-white orientation-horizontal buttonsize-medium\"><li class=\"shariff-button twitter shariff-nocustomcolor\" style=\"background-color:#595959\"><a href=\"https:\/\/twitter.com\/share?url=https%3A%2F%2Fpicockpit.com%2Fraspberry-pi%2Fparagon-project-doom-on-an-arduino-nano%2F&text=Paragon%20Project%3A%20DOOM%20on%20an%20Arduino%20Nano%20ESP32\" title=\"Share on X\" aria-label=\"Share on X\" role=\"button\" rel=\"noopener nofollow\" class=\"shariff-link\" style=\"; background-color:#000; color:#000\" target=\"_blank\"><span class=\"shariff-icon\" style=\"fill:#000\"><svg width=\"32px\" height=\"20px\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 24 24\"><path fill=\"#000\" d=\"M14.258 10.152L23.176 0h-2.113l-7.747 8.813L7.133 0H0l9.352 13.328L0 23.973h2.113l8.176-9.309 6.531 9.309h7.133zm-2.895 3.293l-.949-1.328L2.875 1.56h3.246l6.086 8.523.945 1.328 7.91 11.078h-3.246zm0 0\"\/><\/svg><\/span><span class=\"shariff-text\" style=\"color:#000\">share<\/span>&nbsp;<\/a><\/li><li class=\"shariff-button facebook shariff-nocustomcolor\" style=\"background-color:#4273c8\"><a href=\"https:\/\/www.facebook.com\/sharer\/sharer.php?u=https%3A%2F%2Fpicockpit.com%2Fraspberry-pi%2Fparagon-project-doom-on-an-arduino-nano%2F\" title=\"Share on Facebook\" aria-label=\"Share on Facebook\" role=\"button\" rel=\"nofollow\" class=\"shariff-link\" style=\"; background-color:#3b5998; color:#3b5998\" target=\"_blank\"><span class=\"shariff-icon\" style=\"fill:#3b5998\"><svg width=\"32px\" height=\"20px\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 18 32\"><path fill=\"#3b5998\" d=\"M17.1 0.2v4.7h-2.8q-1.5 0-2.1 0.6t-0.5 1.9v3.4h5.2l-0.7 5.3h-4.5v13.6h-5.5v-13.6h-4.5v-5.3h4.5v-3.9q0-3.3 1.9-5.2t5-1.8q2.6 0 4.1 0.2z\"\/><\/svg><\/span><span class=\"shariff-text\" style=\"color:#3b5998\">share<\/span>&nbsp;<\/a><\/li><li class=\"shariff-button telegram shariff-nocustomcolor\" style=\"background-color:#4084A6\"><a href=\"https:\/\/telegram.me\/share\/url?url=https%3A%2F%2Fpicockpit.com%2Fraspberry-pi%2Fparagon-project-doom-on-an-arduino-nano%2F&text=Paragon%20Project%3A%20DOOM%20on%20an%20Arduino%20Nano%20ESP32\" title=\"Share on Telegram\" aria-label=\"Share on Telegram\" role=\"button\" rel=\"noopener nofollow\" class=\"shariff-link\" style=\"; background-color:#0088cc; color:#0088cc\" target=\"_blank\"><span class=\"shariff-icon\" style=\"fill:#0088cc\"><svg width=\"32px\" height=\"20px\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 32 32\"><path fill=\"#0088cc\" d=\"M30.8 6.5l-4.5 21.4c-.3 1.5-1.2 1.9-2.5 1.2L16.9 24l-3.3 3.2c-.4.4-.7.7-1.4.7l.5-7L25.5 9.2c.6-.5-.1-.8-.9-.3l-15.8 10L2 16.7c-1.5-.5-1.5-1.5.3-2.2L28.9 4.3c1.3-.5 2.3.3 1.9 2.2z\"\/><\/svg><\/span><span class=\"shariff-text\" style=\"color:#0088cc\">share<\/span>&nbsp;<\/a><\/li><li class=\"shariff-button reddit shariff-nocustomcolor\" style=\"background-color:#ff5700\"><a href=\"https:\/\/www.reddit.com\/submit?url=https%3A%2F%2Fpicockpit.com%2Fraspberry-pi%2Fparagon-project-doom-on-an-arduino-nano%2F\" title=\"Share on Reddit\" aria-label=\"Share on Reddit\" role=\"button\" rel=\"noopener nofollow\" class=\"shariff-link\" style=\"; background-color:#ff4500; color:#ff4500\" target=\"_blank\"><span class=\"shariff-icon\" style=\"fill:#ff4500\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 512 512\"><path fill=\"#ff4500\" d=\"M440.3 203.5c-15 0-28.2 6.2-37.9 15.9-35.7-24.7-83.8-40.6-137.1-42.3L293 52.3l88.2 19.8c0 21.6 17.6 39.2 39.2 39.2 22 0 39.7-18.1 39.7-39.7s-17.6-39.7-39.7-39.7c-15.4 0-28.7 9.3-35.3 22l-97.4-21.6c-4.9-1.3-9.7 2.2-11 7.1L246.3 177c-52.9 2.2-100.5 18.1-136.3 42.8-9.7-10.1-23.4-16.3-38.4-16.3-55.6 0-73.8 74.6-22.9 100.1-1.8 7.9-2.6 16.3-2.6 24.7 0 83.8 94.4 151.7 210.3 151.7 116.4 0 210.8-67.9 210.8-151.7 0-8.4-.9-17.2-3.1-25.1 49.9-25.6 31.5-99.7-23.8-99.7zM129.4 308.9c0-22 17.6-39.7 39.7-39.7 21.6 0 39.2 17.6 39.2 39.7 0 21.6-17.6 39.2-39.2 39.2-22 .1-39.7-17.6-39.7-39.2zm214.3 93.5c-36.4 36.4-139.1 36.4-175.5 0-4-3.5-4-9.7 0-13.7 3.5-3.5 9.7-3.5 13.2 0 27.8 28.5 120 29 149 0 3.5-3.5 9.7-3.5 13.2 0 4.1 4 4.1 10.2.1 13.7zm-.8-54.2c-21.6 0-39.2-17.6-39.2-39.2 0-22 17.6-39.7 39.2-39.7 22 0 39.7 17.6 39.7 39.7-.1 21.5-17.7 39.2-39.7 39.2z\"\/><\/svg><\/span><span class=\"shariff-text\" style=\"color:#ff4500\">share<\/span>&nbsp;<\/a><\/li><\/ul><\/div>","protected":false},"excerpt":{"rendered":"<p>There&#8217;s a classic question in the universe of computer games &#8211; but can it run Crysis? However, in the world of microcomputer games and microcontrollers, we have a slightly different question &#8211; but can it run DOOM? Well we finally have the answer for the Arduino Nano. And the answer is: yes! You can indeed&hellip;<\/p>\n","protected":false},"author":2,"featured_media":5288,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2242,1534],"tags":[501,505,1922,1917,377,1918,1923,205,597,486,447,799,1921,1920,1919,166,197,580],"class_list":["post-5287","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-esp32-projects","category-paragon-projects","tag-arduino","tag-arduino-nano","tag-classic-gaming","tag-doom","tag-esp32","tag-game","tag-game-console","tag-i2c","tag-microcontroller","tag-project","tag-projects","tag-retro-game-emulation","tag-retro-gaming","tag-retro-go","tag-retropi","tag-sd-card","tag-spi","tag-wifi"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Paragon Project: DOOM on an Arduino Nano ESP32 | PiCockpit<\/title>\n<meta name=\"description\" content=\"Looking for a portable, inexpensive, creative way to play everyone&#039;s favorite classic shooter? Learn how to play Doom with an Arduino Nano!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/picockpit.com\/raspberry-pi\/paragon-project-doom-on-an-arduino-nano\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Paragon Project: DOOM on an Arduino Nano ESP32 | PiCockpit\" \/>\n<meta property=\"og:description\" content=\"Looking for a portable, inexpensive, creative way to play everyone&#039;s favorite classic shooter? Learn how to play Doom with an Arduino Nano!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/picockpit.com\/raspberry-pi\/paragon-project-doom-on-an-arduino-nano\/\" \/>\n<meta property=\"og:site_name\" content=\"PiCockpit\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/pi3gshop\" \/>\n<meta property=\"article:published_time\" content=\"2023-09-14T09:07:26+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-11-27T08:08:31+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Doom-on-Arduino-Title-Image.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"675\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"raspi berry\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@pi3g\" \/>\n<meta name=\"twitter:site\" content=\"@pi3g\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"raspi berry\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/paragon-project-doom-on-an-arduino-nano\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/paragon-project-doom-on-an-arduino-nano\\\/\"},\"author\":{\"name\":\"raspi berry\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#\\\/schema\\\/person\\\/7af3a7a8c999bc722029ef9ca9d78eee\"},\"headline\":\"Paragon Project: DOOM on an Arduino Nano ESP32\",\"datePublished\":\"2023-09-14T09:07:26+00:00\",\"dateModified\":\"2023-11-27T08:08:31+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/paragon-project-doom-on-an-arduino-nano\\\/\"},\"wordCount\":593,\"commentCount\":21,\"publisher\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/paragon-project-doom-on-an-arduino-nano\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/wp-content\\\/uploads\\\/2023\\\/09\\\/Doom-on-Arduino-Title-Image.png\",\"keywords\":[\"Arduino\",\"Arduino Nano\",\"classic gaming\",\"DOOM\",\"ESP32\",\"game\",\"game console\",\"I2C\",\"microcontroller\",\"project\",\"Projects\",\"retro game emulation\",\"retro gaming\",\"Retro-Go\",\"retropi\",\"SD Card\",\"SPI\",\"WiFi\"],\"articleSection\":[\"ESP32 Projects\",\"Paragon Projects\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/paragon-project-doom-on-an-arduino-nano\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/paragon-project-doom-on-an-arduino-nano\\\/\",\"url\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/paragon-project-doom-on-an-arduino-nano\\\/\",\"name\":\"Paragon Project: DOOM on an Arduino Nano ESP32 | PiCockpit\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/paragon-project-doom-on-an-arduino-nano\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/paragon-project-doom-on-an-arduino-nano\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/wp-content\\\/uploads\\\/2023\\\/09\\\/Doom-on-Arduino-Title-Image.png\",\"datePublished\":\"2023-09-14T09:07:26+00:00\",\"dateModified\":\"2023-11-27T08:08:31+00:00\",\"description\":\"Looking for a portable, inexpensive, creative way to play everyone's favorite classic shooter? Learn how to play Doom with an Arduino Nano!\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/paragon-project-doom-on-an-arduino-nano\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/paragon-project-doom-on-an-arduino-nano\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/paragon-project-doom-on-an-arduino-nano\\\/#primaryimage\",\"url\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/wp-content\\\/uploads\\\/2023\\\/09\\\/Doom-on-Arduino-Title-Image.png\",\"contentUrl\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/wp-content\\\/uploads\\\/2023\\\/09\\\/Doom-on-Arduino-Title-Image.png\",\"width\":1200,\"height\":675,\"caption\":\"Doom on Arduino Title Image\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/paragon-project-doom-on-an-arduino-nano\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Paragon Projects\",\"item\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/category\\\/paragon-projects\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Paragon Project: DOOM on an Arduino Nano ESP32\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#website\",\"url\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/\",\"name\":\"PiCockpit\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#organization\",\"name\":\"PiCockpit.com\",\"url\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/Screenshot-from-2023-07-24-15-01-24.png\",\"contentUrl\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/Screenshot-from-2023-07-24-15-01-24.png\",\"width\":1165,\"height\":283,\"caption\":\"PiCockpit.com\"},\"image\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/pi3gshop\",\"https:\\\/\\\/x.com\\\/pi3g\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#\\\/schema\\\/person\\\/7af3a7a8c999bc722029ef9ca9d78eee\",\"name\":\"raspi berry\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c10c423ceeff34163dd54a5472d6da17d71c0e360e0cf8cdb8847006372f216b?s=96&d=blank&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c10c423ceeff34163dd54a5472d6da17d71c0e360e0cf8cdb8847006372f216b?s=96&d=blank&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c10c423ceeff34163dd54a5472d6da17d71c0e360e0cf8cdb8847006372f216b?s=96&d=blank&r=g\",\"caption\":\"raspi berry\"},\"description\":\"I'm here to help you with all your Raspberry Pi related questions &amp; love to share about new project ideas for the Raspberry Pi, and give quick tips. Of course I'll also help you with PiCockpit and how to make your Raspberry Pi even easier to use with this raspberry pi monitoring solution :-)\",\"sameAs\":[\"https:\\\/\\\/picockpit.com\"],\"url\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/author\\\/raspi-berry\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Paragon Project: DOOM on an Arduino Nano ESP32 | PiCockpit","description":"Looking for a portable, inexpensive, creative way to play everyone's favorite classic shooter? Learn how to play Doom with an Arduino Nano!","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/picockpit.com\/raspberry-pi\/paragon-project-doom-on-an-arduino-nano\/","og_locale":"en_US","og_type":"article","og_title":"Paragon Project: DOOM on an Arduino Nano ESP32 | PiCockpit","og_description":"Looking for a portable, inexpensive, creative way to play everyone's favorite classic shooter? Learn how to play Doom with an Arduino Nano!","og_url":"https:\/\/picockpit.com\/raspberry-pi\/paragon-project-doom-on-an-arduino-nano\/","og_site_name":"PiCockpit","article_publisher":"https:\/\/www.facebook.com\/pi3gshop","article_published_time":"2023-09-14T09:07:26+00:00","article_modified_time":"2023-11-27T08:08:31+00:00","og_image":[{"width":1200,"height":675,"url":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Doom-on-Arduino-Title-Image.png","type":"image\/png"}],"author":"raspi berry","twitter_card":"summary_large_image","twitter_creator":"@pi3g","twitter_site":"@pi3g","twitter_misc":{"Written by":"raspi berry","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/picockpit.com\/raspberry-pi\/paragon-project-doom-on-an-arduino-nano\/#article","isPartOf":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/paragon-project-doom-on-an-arduino-nano\/"},"author":{"name":"raspi berry","@id":"https:\/\/picockpit.com\/raspberry-pi\/#\/schema\/person\/7af3a7a8c999bc722029ef9ca9d78eee"},"headline":"Paragon Project: DOOM on an Arduino Nano ESP32","datePublished":"2023-09-14T09:07:26+00:00","dateModified":"2023-11-27T08:08:31+00:00","mainEntityOfPage":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/paragon-project-doom-on-an-arduino-nano\/"},"wordCount":593,"commentCount":21,"publisher":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/#organization"},"image":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/paragon-project-doom-on-an-arduino-nano\/#primaryimage"},"thumbnailUrl":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Doom-on-Arduino-Title-Image.png","keywords":["Arduino","Arduino Nano","classic gaming","DOOM","ESP32","game","game console","I2C","microcontroller","project","Projects","retro game emulation","retro gaming","Retro-Go","retropi","SD Card","SPI","WiFi"],"articleSection":["ESP32 Projects","Paragon Projects"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/picockpit.com\/raspberry-pi\/paragon-project-doom-on-an-arduino-nano\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/picockpit.com\/raspberry-pi\/paragon-project-doom-on-an-arduino-nano\/","url":"https:\/\/picockpit.com\/raspberry-pi\/paragon-project-doom-on-an-arduino-nano\/","name":"Paragon Project: DOOM on an Arduino Nano ESP32 | PiCockpit","isPartOf":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/#website"},"primaryImageOfPage":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/paragon-project-doom-on-an-arduino-nano\/#primaryimage"},"image":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/paragon-project-doom-on-an-arduino-nano\/#primaryimage"},"thumbnailUrl":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Doom-on-Arduino-Title-Image.png","datePublished":"2023-09-14T09:07:26+00:00","dateModified":"2023-11-27T08:08:31+00:00","description":"Looking for a portable, inexpensive, creative way to play everyone's favorite classic shooter? Learn how to play Doom with an Arduino Nano!","breadcrumb":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/paragon-project-doom-on-an-arduino-nano\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/picockpit.com\/raspberry-pi\/paragon-project-doom-on-an-arduino-nano\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/picockpit.com\/raspberry-pi\/paragon-project-doom-on-an-arduino-nano\/#primaryimage","url":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Doom-on-Arduino-Title-Image.png","contentUrl":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/09\/Doom-on-Arduino-Title-Image.png","width":1200,"height":675,"caption":"Doom on Arduino Title Image"},{"@type":"BreadcrumbList","@id":"https:\/\/picockpit.com\/raspberry-pi\/paragon-project-doom-on-an-arduino-nano\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/picockpit.com\/raspberry-pi\/"},{"@type":"ListItem","position":2,"name":"Paragon Projects","item":"https:\/\/picockpit.com\/raspberry-pi\/category\/paragon-projects\/"},{"@type":"ListItem","position":3,"name":"Paragon Project: DOOM on an Arduino Nano ESP32"}]},{"@type":"WebSite","@id":"https:\/\/picockpit.com\/raspberry-pi\/#website","url":"https:\/\/picockpit.com\/raspberry-pi\/","name":"PiCockpit","description":"","publisher":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/picockpit.com\/raspberry-pi\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/picockpit.com\/raspberry-pi\/#organization","name":"PiCockpit.com","url":"https:\/\/picockpit.com\/raspberry-pi\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/picockpit.com\/raspberry-pi\/#\/schema\/logo\/image\/","url":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/Screenshot-from-2023-07-24-15-01-24.png","contentUrl":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/Screenshot-from-2023-07-24-15-01-24.png","width":1165,"height":283,"caption":"PiCockpit.com"},"image":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/pi3gshop","https:\/\/x.com\/pi3g"]},{"@type":"Person","@id":"https:\/\/picockpit.com\/raspberry-pi\/#\/schema\/person\/7af3a7a8c999bc722029ef9ca9d78eee","name":"raspi berry","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/c10c423ceeff34163dd54a5472d6da17d71c0e360e0cf8cdb8847006372f216b?s=96&d=blank&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/c10c423ceeff34163dd54a5472d6da17d71c0e360e0cf8cdb8847006372f216b?s=96&d=blank&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c10c423ceeff34163dd54a5472d6da17d71c0e360e0cf8cdb8847006372f216b?s=96&d=blank&r=g","caption":"raspi berry"},"description":"I'm here to help you with all your Raspberry Pi related questions &amp; love to share about new project ideas for the Raspberry Pi, and give quick tips. Of course I'll also help you with PiCockpit and how to make your Raspberry Pi even easier to use with this raspberry pi monitoring solution :-)","sameAs":["https:\/\/picockpit.com"],"url":"https:\/\/picockpit.com\/raspberry-pi\/author\/raspi-berry\/"}]}},"_links":{"self":[{"href":"https:\/\/picockpit.com\/raspberry-pi\/wp-json\/wp\/v2\/posts\/5287","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/picockpit.com\/raspberry-pi\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/picockpit.com\/raspberry-pi\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/picockpit.com\/raspberry-pi\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/picockpit.com\/raspberry-pi\/wp-json\/wp\/v2\/comments?post=5287"}],"version-history":[{"count":11,"href":"https:\/\/picockpit.com\/raspberry-pi\/wp-json\/wp\/v2\/posts\/5287\/revisions"}],"predecessor-version":[{"id":6204,"href":"https:\/\/picockpit.com\/raspberry-pi\/wp-json\/wp\/v2\/posts\/5287\/revisions\/6204"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/picockpit.com\/raspberry-pi\/wp-json\/wp\/v2\/media\/5288"}],"wp:attachment":[{"href":"https:\/\/picockpit.com\/raspberry-pi\/wp-json\/wp\/v2\/media?parent=5287"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/picockpit.com\/raspberry-pi\/wp-json\/wp\/v2\/categories?post=5287"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/picockpit.com\/raspberry-pi\/wp-json\/wp\/v2\/tags?post=5287"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}