Using EasyDABv2 hardware as direct sampling transmitter with GnuRadio for producing FM or DRM+ signals

 fm or drm     Introduciton

So, can EasyDABv2 be used to send GnuRadio quadrature signals to the air? For sure Yes, it can!

With simply modified firmware, with removed DAB-blocks, this hardware  is turning into the EasyQDUC (Easy Quadrature Digital Up Converter). And it can be used to send any signal with 192KHz quadratude samplerate or lower. For example, it can be used as DRM or DRM+ transmitter, FM-radio station or any other signal transmitter that fits into ~182 KHz bandwidth.

 

 

The 6 Megabit bandwifth of your ethernet connection will be used for transfer samples from PC to the board. Each sample - is 16bit interleaved signed I/Q sample.

Here is example of simple FM transmitter Gnuradio blocks:

 

The config interface sample and the output of EasyQDUC would be:
This is RTL-SDR capture of the signal. One of the hints to transmit internet-radio - is to use module snd-aloop (audio loopback). Also to feed this module, You can use mpg123 with aplay and sox application. In this case you can run compressor/compander for FM-radio to enchance audio for noisy places:

 

sudo modprobe snd-aloop
mpg123 http://192.168.2.5:8000/radio --wav - | sox -t wav - -t wav - compand 0.3,1 6:-70,-60,-20 -5 -90 0.2 | aplay -D "plughw:1,1,0" -

 Or even simpler player by using internal mp3 decoder of sox application:

 

sox -t mp3 http://192.168.2.5:8000/radio -t alsa "plughw:1,1,0" compand 0.3,1 6:-70,-60,-20 -5 -90 0.2

 

 

 The gr-drm allows to produce DRM+ signal. The GRC file is too big, but click to enlarge:

 

DRM signal, produced by EasyQDUC firmware for EasyDABv2: 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

The output DRM+ signal can be played on android with WaveSink application installed with rtl-sdr stick.

 

FPGA internal flow diagram - is presented on this image:

 Full firmware dump, web-update script and all source codes is avaliable for download:

EasyQDUC_update_script.tar.gz

EasyQDUC_full_flash.tar.gz

EasyQDUC.zip

 

If You have DAB-firmware, You can easily switc between QDUC and DAB versions just by running firmware update script. To use update script, you need to follow this steps:

Firmware update process for EasyQDUC (do all actions in shell window):

1). Download archive file.
2). Unpack archive: tar -xvzf EasyQDUC_update_script.tar.gz
3). Go into unpacked directory: cd EasyQDUC_update_script
4). Edit update_firmware.sh (it's first line) by setting correct deivce's IP and login/password pair.
5). run it: ./update_firmware.sh
6). Confirm that you want to update by pressing "y".
7). Wait for "Update has been finished." line. Update can take up to 8 minutes.
8). Reboot the board by using power cord.

 After that, go to web-interface, set your wanted frequency and amplitude and use GnuRadio to feed the board by I/Q samples.

It is very nice to see

It is very nice to see this.
I have to do some field experimentations in DRM+ to the end this year.
This Easy QDUC can help me tu do it with low cost equipments.
First I have to learn how to do and also some paper to get the frequency for use.
Thank you Sergey.

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <span> <img>
  • Lines and paragraphs break automatically.

More information about formatting options

CAPTCHA
All comments are PRE-MODERATED! Enter what you see:
Image CAPTCHA
Enter the characters shown in the image.