LimeSDR mini - transmit question

Hi, i’m experimenting about signal transmission with LimeSDR mini and SoapySDR drivers.
Program is written in C++.

I have an Audio signal sampled at 22.050 Khz and i want to generate an Amplitude modulated signal.
So i upsampled the signal 20 times at a rate of 441000 Hz and i used a FIR interpolation filter (119 taps) designed with Matlab to interpolate the samples.
Then i generated with a software DDS Generator at 441 khz a 50 Khz carrier samples sequence and built the am signal with 0.4 modulation index.

When trasmitting the signal i set the limesdr transmit frequency to 120Mhz (Air Band) and i send a complex flow CF32 stream to limesdr passing samples on I component and 0s as the Q component.

When listening to the signal I found the nice modulated audio at 120.050 Mhz (as expected)
but also i have audio at 119.950 Mhz (image frequency) and i also have 120Mhz blank carrier.

I don’t guess this is normal … there is no reason why the up conversion leaves so strong DC component (120 Mhz in this case is DC). Should i have to do some IQ balancing before transmission ?

Tnx, Fabio.

You should have hardware RF filtering to stop spurious signals. Also be aware that 120Mhz airband is a bad idea. Try sticking to licence free ISM bands such as 433.92 Mhz. Transmitting on commercial bands will get you into trouble. Be aware of the spike when you Tx, you might need to offset. Youll see the same spike in the waterfall on Rx.

Hi, tnx for your suggestions for the ISM band.

However, I am an ham radio operator so i am licensed to use many bands up to 500watt of power. However in this case i’m transmitting into a dummy load so no problem getting on the “air band” really.
Air band has been chosen for convenience having an am portable radio around on that frequency connected through a cable.

What’s happening here is not a “spurious” signal, the image signal around the NCO usually means that I and Q components are unbalanced. The NCO signal represents the DC component in the input mix samples, but i am matematically sure that the stream does not contain any dc value, so it should be related to some internal unbalance. I am investigating if this is normal or not and what SOAPY library commands exists to address this problem.

Usually when getting really on the air after the RF pilot stage there is an analog band pass filter at RF and after the final PA RF amplifier a low pass filter to cut the harmonics of the tx frequency. These band pass filters usually select the band where operating but does not isolate each specific tx frequency, since the transmitter usually cover a plurality of channels

This is not the case since the harmonics here are at 240 Mhz (2nd) 360 Mhz (3rd) etc. while i am looking to component +/- 50Khz around 120Mhz.

73, Fabio IZ0IBA

To eliminate images use NCO and good hardware LPF or BPF. Set NCO to 10MHz above desired frequency, use down converter and internal LimeSDR mini LPF to minimum 15MHz. On TX output connect LPF with 125MHz or less cutoff frequency and you will have clean RF output. All images and LO leakage are arround NCO at 130MHz and if hardware filter is good 60dB below wanted signal.

73, Goran ytpwr