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.