Gr-dvbs2 DVB-S2 transmitter

I’ve just completed a DVB-S2 transmitter for GnuRadio.

This is a port of G4GUO’s DVB-S2 transmitter for the
DATV-Express Digital Amateur Television project.

The code includes an implementation of LDPC and BCH codes
(although DVB-S2 specific) and contains a gnuradio-companion
flowgraph for the bladeRF transmit capable SDR (easily changed
to UHD).

The implementation has been tested with a Novra S300V
DVB-S2 receiver with QPSK, 8PSK, 16APSK and 32APSK


You need a host running GnuRadio 3.7.x (I did all my
testing with 3.7.3). The sample rate will be 2X the
symbol rate, so unless you’re using very low symbol
rates, you’ll need to use USB3.0 with the bladeRF.

How much processing power required will be a
function of symbol rate. I did my testing at 10 Msym/s,
which is way higher than what would be used on
amateur frequencies (it’s a 12 MHz wide signal).
At that rate (and a 34.8 Mbps Transport Stream),
I was using about 60% on all 4 cores of an Intel
E5-1607 (which is a pretty mediocre CPU).

At more reasonable symbol rates, a less powerful
CPU could work. How much less is difficult to
predict. If you’re thinking of some embedded
host, then I hear the Odroid U3 is pretty powerful,
but I have no direct experience with it.

The gnuradio-companion flowgraph and the Python
script included in the code currently expect to transmit
a Transport Stream from a file. It would be easy to
change that to a UDP source. The Transport Stream
must be muxed to the proper constant bit-rate. I can
supply properly muxed streams for testing (based on
symbol rate, constellation and if pilots are used).


This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs