I had a thought about making myself an arcade cabinet. I found a nice cheap and sturdy 8 directional arcade joystick online, and now I'm thinking about the possible ways of displaying graphics.

I would like to know how can I send graphical data to a large screen using Arduino. When I was researching this I saw "TV Text" library that allows sending PAL and SECAM signals, but that's not the "modern" way. Is there a way of using DisplayPort or HDMI to simply use a cheap used PC monitor? Maybe there are other protocols that I can use? I'm looking for a "cheap" way to create a display that's physically as large as screen of arcades from "the good old days".

  • If you can find one (they're discontinued now, so you will only get a used one), you want one of the original Gameduino shields. Then you can use VGA. – Majenko Apr 25 '19 at 11:33
  • 1
    Better would be to ditch the Arduino and use a Raspberry Pi with the RetroPi operating system image. – Majenko Apr 25 '19 at 11:35
  • @Majenko I understand there are many "out of box" solutions that handle games, but I just want this project to be an excuse to gain the know-how to create high quality display with my hardware in the future. I'm looking for some way that doesn't require using retro hardware, and can be used in my future proijects. – Filip Franik Apr 25 '19 at 11:46
  • 3
    Also if you don't want to use ready-to-go solutions, ditch the Arduino. Especially with AVR based Arduinos you will never get something that can be in any way called "high quality" and when adding functionalities you will run very fast into pure physical limitations. Doing this with an AVR Arduino can be called masochistic. – chrisl Apr 25 '19 at 12:47

I'm just going to post things that I found thanks to comment by Juraj.

  1. "TV Text" library - PAL, SECAM, NTSC
  2. "VGAX" library - VGA

And with large dedication to everyone who wrote that "it's impossible" I give you a blog post of someone who actually did create he's own NTSC console and a game from scratch (called "The Box") using ATmega328P with external 16Mhz crystal. And he did it in 2013.


Original sources were deleted, but I think they can be found when looking for Toorum Quest 2

I think I'll try analyzing the VGAX. It looks promising.


There actually is HDMI shield for Arduino!


And a nice and very easy VGA tutorial here:


| improve this answer | |
  • I tested TVout library once. It uses composite video signal. The demo has a rotating 3D wireframe cube. youtube.com/watch?v=ZT46khR2A3c – Juraj Apr 25 '19 at 17:22
  • I think most of us stumbled across your phrase "high quality". The quality, that you can get from it is very limited. You won't get video quality that can hold up to the standards we are accustomed to from HDMI and Displayport. If this is sufficient, then of course it is possible. – chrisl Apr 25 '19 at 20:44
  • @chrisl There actually is a solution that gives you "high quality" It just costs 50USD youtube.com/watch?v=MUeIY_gLn3c – Filip Franik Apr 25 '19 at 21:13
  • That looks quite interesting. Good to know, that you can buy such a thing. Though it is worth mentioning that it doesn't seem to work with an Uno. My guess is, that AVR based boards will not work with it. – chrisl Apr 26 '19 at 6:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.