DSPRelated.com
Forums

FM SW Demodulated Audio - I get just noise

Started by b2508 August 25, 2015
Hi everyone, 

this is my first post and it is quite important and urgent to me.

I am new with this area so forgive me if I have some gaps in knowledge.

I am trying to receive FM radio station (possibly the one with only voice)
and play it on speakers. 
This is all done in Labview (thats mandatory), first NI board is used to
downconvert 50 MHz of bandwidth from desired center frequency to baseband,
then specific channel of 200 kHz at the position of known radio station is
extracted.

This is read from fpga and written to a file and I am trying to demodulate
data read from file in SW and play it on speakers. 
First I demodulate the channel with custom made Labview block, than I
filter demodulated signal with filter whose cut off frequency is 15 kHz to
preserve mono sound only, then I resample to 8 kHz since this is a
requirement. I know 15 kHz filter is probably unnecessary if later I
resample to 8 kHz, but I just wanted to do this in order to try playing
that on speakers as well. Either way, the only thing I get on speakers is
terrible noise.

I modulated my own recorded voice in software (in Labview) and let it
through my demodulation system and it works. 
Could it be that data from receiver is not correct. I do not know how to
recognize from received 200 kHz spectrum if something is wrong. Spectrum
of received data seems to have the same shape as theoretical FM band (19
kHz carrier and so on)

Any help would be much appreciated.




---------------------------------------
Posted through http://www.DSPRelated.com
On Tue, 25 Aug 2015 20:39:04 -0500, b2508 wrote:

> Hi everyone, > > this is my first post and it is quite important and urgent to me. > > I am new with this area so forgive me if I have some gaps in knowledge. > > I am trying to receive FM radio station (possibly the one with only > voice) > and play it on speakers. > This is all done in Labview (thats mandatory), first NI board is used to > downconvert 50 MHz of bandwidth from desired center frequency to > baseband, > then specific channel of 200 kHz at the position of known radio station > is extracted. > > This is read from fpga and written to a file and I am trying to > demodulate data read from file in SW and play it on speakers. > First I demodulate the channel with custom made Labview block, than I > filter demodulated signal with filter whose cut off frequency is 15 kHz > to preserve mono sound only, then I resample to 8 kHz since this is a > requirement. I know 15 kHz filter is probably unnecessary if later I > resample to 8 kHz, but I just wanted to do this in order to try playing > that on speakers as well. Either way, the only thing I get on speakers > is terrible noise. > > I modulated my own recorded voice in software (in Labview) and let it > through my demodulation system and it works. > Could it be that data from receiver is not correct. I do not know how to > recognize from received 200 kHz spectrum if something is wrong. Spectrum > of received data seems to have the same shape as theoretical FM band (19 > kHz carrier and so on) > > Any help would be much appreciated.
Please declare school projects as such at the outset -- you get a different sort of help for homework. It sounds like you've done a whole bunch of things right, including doing an independent check of the data to see if it looks right. I would try the following: * make sure you're on the right frequency in your data sampling. * make some really bone-headed demodulation program and try that out (unless that's already where you are!) * try another station You may also want to look at your captured off-the-air signal and make sure that it's not distorted somehow. Graph it vs. time and make sure it resembles what you recorded and modulated yourself (in small chunks, obviously). -- www.wescottdesign.com
"b2508" <108118@DSPRelated> writes:
> [...] > First I demodulate the channel with custom made Labview block, than I > filter demodulated signal with filter whose cut off frequency is 15 kHz to > preserve mono sound only, then I resample to 8 kHz since this is a > requirement. I know 15 kHz filter is probably unnecessary if later I > resample to 8 kHz, but I just wanted to do this in order to try playing > that on speakers as well. Either way, the only thing I get on speakers is > terrible noise.
When you resample to 8 kHz are you first lowpass filtering to < 4 kHz? If not you may be getting a lot of noise aliasing into the downsampled band. -- Randy Yates Digital Signal Labs http://www.digitalsignallabs.com
Data is sampled at the rate of 50 MHz and then using channelizer, channel
of 200 kHz is extracted. 
I have put 4 kHz cut off to LP filter before resampling.

I tried comparing the overall shape of my recorded and modulated voice and
the fm modulated signal received from HW. But as far as I know, FM
Modulated signal does not contain only voice, but can contain music, song
title etc. Should I still expect to see the similar shape? I really am not
sure about that. And the problem is that they may be some distortion in
received signal but I do not know how to recognize them.

---------------------------------------
Posted through http://www.DSPRelated.com
"b2508" <108118@DSPRelated> writes:

> Data is sampled at the rate of 50 MHz and then using channelizer, channel > of 200 kHz is extracted. > I have put 4 kHz cut off to LP filter before resampling. > > I tried comparing the overall shape of my recorded and modulated voice and > the fm modulated signal received from HW. But as far as I know, FM > Modulated signal does not contain only voice, but can contain music, song > title etc. Should I still expect to see the similar shape? I really am not > sure about that. And the problem is that they may be some distortion in > received signal but I do not know how to recognize them.
The RDS data is modulated on a 57 kHz subcarrier, https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0CB4QFjAAahUKEwiph8Lw5cbHAhXCzoAKHYnYBYo&url=http%3A%2F%2Fwww.interactive-radio-system.com%2Fdocs%2FEN50067_RDS_Standard.pdf&ei=SrfdVam6LsKdgwSJsZfQCA&usg=AFQjCNHTce8SqF1gXbtXZ62bFQywA07qJg so your 15 kHz filter should get rid of that. If your self-generated modulated signal gets demodulated correctly, then there must be something wrong with your input signal (file). -- Randy Yates Digital Signal Labs http://www.digitalsignallabs.com
Thank you very much for your help.

I have managed to demodulate data from a file as well. I had some very
stupid bug, but the concept was alright.


---------------------------------------
Posted through http://www.DSPRelated.com
On Wed, 26 Aug 2015 08:36:26 -0500, b2508 wrote:

> Thank you very much for your help. > > I have managed to demodulate data from a file as well. I had some very > stupid bug, but the concept was alright.
Yay! This is why you do the real project work -- because all the hifalutin' theory doesn't mean crap if you've got a stupid bug, and because part of learning how to make real systems is sorting out the difference between an error in the theory and an error in the code. -- Tim Wescott Wescott Design Services http://www.wescottdesign.com
b2508 <108118@dsprelated> wrote:
> Thank you very much for your help.
> I have managed to demodulate data from a file as well. > I had some very stupid bug, but the concept was alright.
It is usual once you find the bug to explain it in the newsgroup. (Not a long explanation, but long enough that others could find it.) For one, that helps others when they have the same problem. -- glen
>b2508 <108118@dsprelated> wrote: >> Thank you very much for your help. > >> I have managed to demodulate data from a file as well. >> I had some very stupid bug, but the concept was alright. > >It is usual once you find the bug to explain it in the newsgroup. >(Not a long explanation, but long enough that others could find it.) > >For one, that helps others when they have the same problem. > >-- glen
Well, to be honest, bug was badly connected wire in Labview. There is no knowledge that could be extracted from solving my bug. This was not a school but work project, but I am insecure in my knowledge in the area - therefore I assumed I had mistake in concept and not in coding. Procedure described in my first question works just fine in demodulating FM broadcast radio. --------------------------------------- Posted through http://www.DSPRelated.com
On Wednesday, August 26, 2015 at 1:39:07 PM UTC+12, b2508 wrote:
> Hi everyone, > > this is my first post and it is quite important and urgent to me. > > I am new with this area so forgive me if I have some gaps in knowledge. > > I am trying to receive FM radio station (possibly the one with only voice) > and play it on speakers. > This is all done in Labview (thats mandatory), first NI board is used to > downconvert 50 MHz of bandwidth from desired center frequency to baseband, > then specific channel of 200 kHz at the position of known radio station is > extracted. > > This is read from fpga and written to a file and I am trying to demodulate > data read from file in SW and play it on speakers. > First I demodulate the channel with custom made Labview block, than I > filter demodulated signal with filter whose cut off frequency is 15 kHz to > preserve mono sound only, then I resample to 8 kHz since this is a > requirement. I know 15 kHz filter is probably unnecessary if later I > resample to 8 kHz, but I just wanted to do this in order to try playing > that on speakers as well. Either way, the only thing I get on speakers is > terrible noise. > > I modulated my own recorded voice in software (in Labview) and let it > through my demodulation system and it works. > Could it be that data from receiver is not correct. I do not know how to > recognize from received 200 kHz spectrum if something is wrong. Spectrum > of received data seems to have the same shape as theoretical FM band (19 > kHz carrier and so on) > > Any help would be much appreciated. > > > > > --------------------------------------- > Posted through http://www.DSPRelated.com
use a good antenna