Nice work Adrian. A good way to present this work is plots of BER
with. See my blog posts on FSK etc for examples.
real world implementations, these are well known for BPSK, FSK, and GMSK.
equal. Eb/No is convenient as everything is normalised.
Post by Adrian MusceacHi,
Some more news from the VHF modem front. First of all, I did some
performance comparisons between GMSK waveforms and regular AFSK as used
by a typical APRS modem. Obviously, there is a reason why Bell AFSK
was chosen: the Gaussian pulse shaping filter does introduce ISI as a
cost for reducing the signal bandwidth.
The next question was "how much". Luckily, using the excellent filter
design tool from Gnuradio, we can change the filter parameters and then
test the result against a channel with AWGN noise. The difference seems
to be around 2 dB in favour of AFSK.
However, my earlier experiments showed that DBPSK will do even better.
Unfortunately, sending PSK over a narrow FM channel requires some tuning
of the modem parameters. 3 dB of improvement at the same BER is not
surprising, what was surprising to me though was the fact that adding a
pulse shaping filter immediately before the frequency conversion
improved the signal decoding by another 1-2 dB. A 9 dB SNR signal has
the same BER as a 14 dB SNR GMSK modem. At this point we are almost
doing better than analog voice already.
To add further gain we can always decrease the bitrate to 1200 bit/s.
And since I was focused on filters, I had to take another look at the
data. What we want is a signal that can pass 1300 bit/s Codec2 through a
narrow mode FM transceiver (wide mode is beginning to be phased out at
this point). We still have bandwidth to spare, so it seemed to me that
using the same filter bandwidth for TX and RX is wasteful. Instead, the
TX filter is 20% wider than the RX filter for (very little) added
performance.
The bad news is that the new modem is computationally about twice more
expensive. Using it on my phone will be a big stretch. We will see if I
can make it work on a 1.2 GHz CPU.
Finally, there are some people out there who criticise Gnuradio for
being slow, bloated and too high level for this kind of stuff. I just
want to say that for me as a student, it is a very valuable tool for
learning. Maybe some day I will join the ranks of the Octave gurus, but
not today.
http://youtu.be/YOX7H3Fcxe4
Cheers,
Adrian
Hi Brady, David,
I have started transitioning my GRC flowgraphs to C++ and I have put
the code up on Github, just in case you might find it useful in your
tests for the 2400B mode. My choice of a modem is AFSK, 2000 bit/sec
(1200 bit voice or 1300 bit data). It has no FEC, no scrambling and
no interleaving (yet). The audio is framed for the standard 40 msec
Codec2. It works through a handheld FM transceiver and can be
decoded easily with Gqrx.
The perfomance is 5 dB worse than analog FM, measured for 12 dB SNR.
I would be very curious to see a comparison with 2400B. My next step
is to transition the DBPSK modem which is 3 dB worse than analog FM
based on my USRP captured data.
Link to the code repo: https://github.com/kantooon/gnuradio_audio_modems
Video of operation: http://youtu.be/2FZBQvVm5Co
Cheers,
Adrian (YO8RZZ)
On Thu, Mar 17, 2016 at 12:04 AM, Brady O'Brien
Hey Adrian,
The gnuradio-companion pipelines I used for the test are
attached. These grc pipelines are only meant to get 16-bit 48k
samples in and out of the HackRF and rtlsdr for testing. The
meat of the FSK is done with the C fsk modem, used in freedv_rx,
freedv_tx, fsk_mod, and fsk_demod. We are also running our FSK
modem directly from SDR samples instead of through FM radios. We
will be running 2400B over legacy FM radios, but don't yet have
the same degree of test coverage.
Thanks,
Brady O'Brien
On Wed, Mar 16, 2016 at 3:34 PM, Adrian Musceac
Hi David,
Is it possible to get our hands on the Gnuradio code? I've
been trying
to optimize modems running at 1200 bits/second and the best
I could do
was 100% copy at 8 dB above analog FM for DBPSK and 12 dB above for
GMSK. Your modem seems to be 16-20 dB better than that! If I
could see
the Gnuradio graph maybe I could figure out what I'm doing wrong.
Thanks,
Adrian
Post by SteveHa, I wish it was through a radio!
I'm trying to think what I have laying around here that
might make a good
Post by Stevetransmitter for it.
On Wed, Mar 16, 2016 at 4:02 AM, glen english
ah. good stuff. nice progress.
freedv_tx 2400A ve9qrp_10s.raw modem.raw
Which produces a RAW audio file sampled at 48 kHz and
importing that into
Post by Steveaudacity.
On Wed, Mar 16, 2016 at 3:46 AM, glen english
Hi Steve
Nice
is that through a PA- if so, linear or linear in say
3dB compression?
Post by SteveThought I'd upload a spectrum snapshot. You can't
really see the
Post by Stevecarriers
until you drop the number of samples to about 256, but
this shows how
Post by Stevewide
it is.
I noticed that the freedv_tx was outputting +/- 1.0
signals and a couple
Post by Steveof clips going on. Maybe need to knock it down to +/-
.5 like the old
------------------------------------------------------------------------------
Post by SteveTransform Data into Opportunity.
Accelerate data analysis in your applications with
Intel Data Analytics Acceleration Library.
Click to learn
more.http://pubads.g.doubleclick.net/gampad/clk?id=278785231&iu=/4140
Post by Steve_______________________________________________
Freetel-codec2 mailing
<http://lists.sourceforge.net/lists/listinfo/freetel-codec2>
Post by Steve------------------------------------------------------------------------------
Transform Data into Opportunity.
Accelerate data analysis in your applications with
Intel Data Analytics Acceleration Library.
Click to learn more.
http://pubads.g.doubleclick.net/gampad/clk?id=278785231&iu=/4140
_______________________________________________
Freetel-codec2 mailing list
https://lists.sourceforge.net/lists/listinfo/freetel-codec2
------------------------------------------------------------------------------
Transform Data into Opportunity.
Accelerate data analysis in your applications with
Intel Data Analytics Acceleration Library.
Click to learn
more.http://pubads.g.doubleclick.net/gampad/clk?id=278785231&iu=/4140
_______________________________________________
Freetel-codec2 mailing
<http://lists.sourceforge.net/lists/listinfo/freetel-codec2>
------------------------------------------------------------------------------
Post by SteveTransform Data into Opportunity.
Accelerate data analysis in your applications with
Intel Data Analytics Acceleration Library.
Click to learn more.
http://pubads.g.doubleclick.net/gampad/clk?id=278785231&iu=/4140
Post by Steve_______________________________________________
Freetel-codec2 mailing list
https://lists.sourceforge.net/lists/listinfo/freetel-codec2
------------------------------------------------------------------------------
Transform Data into Opportunity.
Accelerate data analysis in your applications with
Intel Data Analytics Acceleration Library.
Click to learn more.
http://pubads.g.doubleclick.net/gampad/clk?id=278785231&iu=/4140
_______________________________________________
Freetel-codec2 mailing list
https://lists.sourceforge.net/lists/listinfo/freetel-codec2
------------------------------------------------------------------------------
Transform Data into Opportunity.
Accelerate data analysis in your applications with
Intel Data Analytics Acceleration Library.
Click to learn more.
http://pubads.g.doubleclick.net/gampad/clk?id=278785231&iu=/4140
_______________________________________________
Freetel-codec2 mailing list
https://lists.sourceforge.net/lists/listinfo/freetel-codec2
------------------------------------------------------------------------------
Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San
Francisco, CA to explore cutting-edge tech and listen to tech luminaries
present their vision of the future. This family event has something for
everyone, including kids. Get more information and register today.
http://sdm.link/attshape
_______________________________________________
Freetel-codec2 mailing list
https://lists.sourceforge.net/lists/listinfo/freetel-codec2