ATSC 3.0 Transmitter
Posted: Fri Nov 28, 2025 7:43 am
I haven't posted here in many moons, but I thought I'd share my latest project, gr-atsc3.
https://github.com/drmpeg/gr-atsc3
It's an ATSC 3.0 transmitter that can be used with the SiliconDust HDHomeRun FLEX 4K receiver. Unfortunately, I haven't implemented the full IP stack (ROUTE/DASH), so it doesn't work with ATSC 3.0 capable TVs. It accepts old fashioned Transport Streams as input.
Here's what it looks like in GNU Radio:

Note that the connection pins between the interleaver and modulator are yellow. In GNU Radio, that means the connection is a 16-bit value. That's because ATSC 3.0 supports 1024QAM and 4096QAM modulation.
Here's some demo videos.
https://www.youtube.com/watch?v=cmIGM0I3NE0
In this demo, the SNR is below the noise floor at -2 dB.
https://www.youtube.com/watch?v=bLn5L-k4EPA
In both videos I reduce the TX power until the decoded video starts to break up, and then I go back up 1/4 dB. The videos are with an Ettus B210, but of course, you can use a bladeRF instead.
https://github.com/drmpeg/gr-atsc3
It's an ATSC 3.0 transmitter that can be used with the SiliconDust HDHomeRun FLEX 4K receiver. Unfortunately, I haven't implemented the full IP stack (ROUTE/DASH), so it doesn't work with ATSC 3.0 capable TVs. It accepts old fashioned Transport Streams as input.
Here's what it looks like in GNU Radio:

Note that the connection pins between the interleaver and modulator are yellow. In GNU Radio, that means the connection is a 16-bit value. That's because ATSC 3.0 supports 1024QAM and 4096QAM modulation.
Here's some demo videos.
https://www.youtube.com/watch?v=cmIGM0I3NE0
In this demo, the SNR is below the noise floor at -2 dB.
https://www.youtube.com/watch?v=bLn5L-k4EPA
In both videos I reduce the TX power until the decoded video starts to break up, and then I go back up 1/4 dB. The videos are with an Ettus B210, but of course, you can use a bladeRF instead.