I have a graph consisting of a modulator mixed with a signal source, and
a USRP sink.

I have it configured with a sampling rate of 720KHz.

When I run it, UHD fires the following warning (and transmission seems
fine).

The requested interpolation is odd; the user should expect CIC

rolloff.
Select an even interpolation to ensure that a halfband filter is
enabled.
interpolation = dsp_rate/samp_rate -> 89 = (64.000000
MHz)/(0.719101 MHz)

(1) 720Khz is not an exact integer fraction of 64MHz (the sampling
rate
of the device)–so it rounded

(2) It’s warning you that you’ll get a “humped” frequency response
with
more rolloff than you’d like, due to the rounded-down sample rate
requiring an interpolation rate that is not divisible by two.

If I understood correctly, this it means that the transmitted signal
gets filtered more on the edges than expected?

Note that by setting a sampling rate of 720KHz, the transmission and
receiving work fine.

That is, can I fix the sampling rate warning and preserve the
transmitted signal by modifying the sampling rate (e.g. to 480KHz) and
by adding a band-pass filter before the USRP sink block?

(1) 720Khz is not an exact integer fraction of 64MHz (the sampling rate
of the device)–so it rounded

(2) It’s warning you that you’ll get a “humped” frequency response with
more rolloff than you’d like, due to the rounded-down sample rate
requiring an interpolation rate that is not divisible by two.

–
Marcus L.
Principal Investigator
Shirleys Bay Radio Astronomy Consortium

My signal is 25 KHz wide, centered at 25 KHz. (I mix the baseband signal
with a sin function at 25 KHz)

Then find the nearest sample rate > your_bandwidth that satisfies the
desired outcome that the computed
interpolation rate (64.0e6 / desired_rate) is an even number.
If the signal has artefacts that “spill” outside the required sample
rate, then, yet, filter it first.

While experimenting, I discovered that with 870 KHz sampling rate works,
i.e. without the half-band filter problem. However, I get the baseband
signal mirrored at 50 KHz lower than the center frequency configured in
the USRP. It seems like related to the sampling theorem (I mean
aliasing, 2*Fmax=Fs)

I can’t figure out how the USRP works internally, and why moves the
baseband signal to the transmitting frequency (Yes, I’m not an RF/DSP
expert, just intermediate
Looking on-line,I found out that the function block diagram is something
like: CIC (Intepolation) -> half-band filter -> DAC -> TX. Can you
confirm it?