Forum: GNU Radio wfm_tx and nbfm_tx

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Dimitris S. (Guest)
on 2008-12-19 15:33
(Received via mailing list)
Hi list,

I think I found two errors in the wfm_tx.py and nbfm_tx.py blocks:

while the description says:
@param audio_rate: sample rate of audio stream, >= 16k
for both of them, they have an low-pass interpolating filter which
cuts off at 16kHz for wfm and 4.5kHz for nbfm...

this is wrong also in firas's user manual...

regards

Dimitris S.
"If you think you're too small to make a difference, try sleeping with
a mosquito!" - Amnesty International
Dimitris S. (Guest)
on 2008-12-20 13:11
(Received via mailing list)
Hi Firas,

the description should be changed to show that:
- blks2.wfm_tx can receive a maximum audio rate of <=16k (instead of
the declared >= 16k)
- blks2.nbfm_tx can receive a maximum audio rate of <= 4.5k (instead of
>= 16k)
This both in the code, and in the pdf file


On a different mistake, both files contain a line reading:
        # FIXME audio_rate and quad_rate ought to be exact rationals
while this issue seems to be fixed in both...

I hope this is clear enough...


Dimitris S.
"If you think you're too small to make a difference, try sleeping with
a mosquito!" - Amnesty International
Firas A. (Guest)
on 2008-12-20 13:44
(Received via mailing list)
Hi Dimtris,


--- On Fri, 12/19/08, Dimitris S. <removed_email_address@domain.invalid> wrote:
> the description should be changed to show that:
> - blks2.wfm_tx can receive a maximum audio rate of <=16k
> (instead of > the declared >= 16k)
> - blks2.nbfm_tx can receive a maximum audio rate of <=
> 4.5k (instead of >= 16k)
>
> I hope this is clear enough...
>
>
> Dimitris S.


I think you have mixed between audio frequency bandwidth and audio
digitizing rate.

The following example will explain it :

Suppose that you want to transmit nbfm signal for an input audio signal
with maximum bandwidth of 3 KHz. Suppose also that this audio signal is
digitized by (lets say) 32K PCM encoder which results in digitized audio
rate of 32K.

To produce nbfm signal, we do the following:

1) Ensure that the incoming digitized signal (32K) does not contains any
frequency components above 4.5 KHz (this is done by a digital FIR low
pass filter).

2) Software interpolate the output of the digital FIR (32 K) to a rate
suitable for transmission (lets say 256K) with interpolation rate of 8.

3) Do an FM Pre-emphasis to this 256K signal (this is how it was done in
the nbtx.py). The output is also 256K.

4) Feeding this 256K to a frequency modulator (VCO) which produces
complex output signal.

5) Stream this output complex signal to the USRP with interpolation rate
of 500 to produce 128M which is fed to its DAC.


I hope this is clear now.

Best Regards,

Firas
This topic is locked and can not be replied to.