Graphics Co-Processor

Hi guys,
I am wanting to build a simple TV display device, interface with PAL composite.

I realise there is a library (aptly named TVOut) for displaying to TV with a handful of components, I have concerns that this will take away a lot of processing power and increase coding difficulty for other application tasks.

I am wondering if graphics co-processors (or something that does the same job that I don't know about yet) are still available and could be used with the arduino or standalone AVR?

The ideal features I would want is:

  • Ability to provide predefined (ideally programmable) tiles or sprites to be used for english language characters or graphics
  • Able to position these at arbitrary locations on screen
  • Simple interface from the arduino side which then has the coprocessor do all of the more difficult time/sync/actual display (I write to a buffer)

Ideally this is an IC rather than a completed shield that I could later build into a circuit on a custom PCB.
Part friendly sources for Australia a bonus (Element 14 is our version of Farnell).

Thanks for any advice you can give that gets me further towards my goal :slight_smile:

People report that when using the TVout library there is substantial CPU time left over for other tasks. I haven't seen a timing breakdown, though.

You could have one Arduino do the video, and another sending it display commands. Or, consider various commercially available video overlay modules, like those from Decade DecEng

  • You could use a second AVR as your video co-processor.
  • There are a number of FPGA-based projects that implement something like this. these usually show up as a shield. PAL output is getting rare (as is NTSC) One example: Gameduino shield : ID 384 : $53.00 : Adafruit Industries, Unique & fun DIY electronics and kits
  • There are some “video overlay” chips, like the Maxim MAX7456 Those might be bendable to your needs.
  • There are some specialty chips aimed at smart panel displays. I don’t know offhand whether they can be bent to support PAL-like formats. is an example.
  • Some microcontrollers specifically advertise as having additional video-generation capabilities. There’s the Parallax Propeller and a series of Microchip PICs (probably others.) Also, some of the low-cost ARM chips have been programmed to do software video (like TVOut), but have somewhat better performance, DMA, and more memory than an AVR.

People report that when using the TVout library there is substantial CPU time left over for other tasks.

I'll second that. Here I am using a Nano 3 16MHz running TV-out and running Conway's Game Of Life at a pretty good speed, showing there is considerable processing speed still available.

Thanks for the suggestions guys, I think the EVE range looks close to what I'm chasing (possibly more features than I need).

Having thought about this some more I'm not sure why I limited the output requirement to composite PAL. Connection to a modern TV may have been more accurate.

EVE seems mostly aimed at "bare" TFT LCD display panels, rather than standard video formats. It's a bit disturbing that I don't see prominent App notes for interfacing EVE to NTSC, PAL, VGA, or HDMI :frowning:
FTDI's documentation is generally weak (from trying to work with their Vinculum-II chip.) They publish glowing specs, and useful (?) examples, but fall down when it comes to actually explaining basic operation. Sigh.