Driving A PAL TV Over RF Thanks To PWM Harmonics

While most analog televisions come with composite video inputs on a yellow RCA jack, the feature is not universal. This problem was even more prevalent in the 1980s, and most home consoles got around the problem by instead feeding video to the television’s tuner with an RF modulator. [Manzel Seet] had just such a television which used the PAL standard. Wanting to display images from a microcontroller, he put together PAL-Streamer.

The aim of the project was to display images on an analog television with minimal investment in hardware over and above what [Manzel] already had on hand. To this end, the project was built using a STM32F411 Nucleo development board. Capable of running at clock speeds up to 100 MHz, there’s plenty of grunt to handle demanding tasks like outputting video signals to a TV.

To achieve the target frequency of VHF Channel 3 (61.25 MHz), [Manzel] elected to rely on the onboard PWM hardware, after being inspired by [CNLohr]’s ATTiny NTSC project. The project takes advantage of the odd harmonics of square waves. Setting the PWM output to operate at 6.86 MHz, the ninth harmonic ends up at around 61.71 MHz, close enough to be tuned in on the TV set. With the hard part done, [Manzel] then implemented a virtual COM port allowing an attached PC to send PNG images or GIF animations to the display.

It’s a fun project that shows it’s possible to drive all kinds of analog displays if you’re willing to be creative about how you do it. Files are available on GitHub for those eager to recreate the work. [Manzel] points out that this method does put out a lot of RF energy in the surrounding bands, but for direct hookup to an antenna input, it works just fine. We love to see creative video projects on microcontrollers, so if you’ve figured out how to get an Arduino Uno to do 1080P over HDMI, be sure to let us know. Video after the break.

11 thoughts on “Driving A PAL TV Over RF Thanks To PWM Harmonics

    1. Considering that building something that outputs ATSC requires (among other things) an MPEG encoder, its not something you are going to be doing on a microcontroller or SoC (unless you are using specialized MPEG encoding hardware)

    1. eurocents. Off by a factor of 100.

      That said, 34¢ smells like clearance pricing, so I bet that inventory will either be in the junkyard or some warehouse to be forgotten before long.

  1. Now that is a slick trick. I always thought it would take dedicated hardware or an FPGA to output mhz-range RF video (or audio) in a microcontroller project. The FCC probably doesn’t like this much, could a bandpass filter be used to remove the other harmonics so it would be safe to amplify?

Leave a Reply to Jonathan WilsonCancel reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.