Transmit - Unwanted Carrier [Fixed]

Simon, not understanding any of the codework you are all talking about, I notice one thing, peculiar. Your sample rate is a division of the clock frequency of the lime?
I doubt it is the issue, but thought I would mention it.

Ed

Ed,

Let’s see what the Lime engineers say. It’s frustrating, but at least there are viable alternatives. I’ve invested a lot of time on the Lime TX side, so don’t want to give up yet.

2 Likes

Well, I surely hope they can get a fix for this, as it seems to be an issue across the board for many users/programmers. Again, if there is any way to help, let me know.

Thank you,
Ed

1 Like

I hope this manual procedure will help to determine how should automatically do:

  • turn off DC corrector bypass in TXTSP (write param DC_BYP_TXTSP -> 0)
  • set DC corrector value, channel I and channel Q (write param LMS7_DCCORRI_TXTSP and LMS7_DCCORRQ_TXTSP from -128 to +127, 8 bit, 2’s complement)
    Just tested on 14Mhz (30MHz carrier is gone) and on 144MHz also nulling carrier!
2 Likes

Ah,

yt7pwr - many thanks, I was expecting the calibration to do this for me. I’ll add two sliders, try it and see how it goes. There must be a way of automating this…

1 Like

yt7pwr

How did you determine the values to set for LMS7_DCCORRI_TXTSP and LMS7_DCCORRQ_TXTSP? Trial and error or?

Hi,
I have updated basicTX example on GitHub (as you mentioned looking at samples ). Now it should call LMS_Calibrate() before starting transmission. I have tried it myself and on 3 LimeSDR-USB boards TX calibration seems to work. Can you check it yourself?

It should be 0-255 (add 128 to slider -128 to 127 values).
Have to apologize for mistake I made yesterday: both devices shows identical symptoms but only on Mini can be manually null carrier. I was working on Mini to resolve this issue with wrong assumption that solution for big brother is straight forward. Today I connected both devices and to my supprise Mini can be callibrated manually and automatically but LimeSDR-USB board not! For Mini carrier goes down to noise floor and it is not vissible on spectrum analyzer. After automatic calibration procedure LimeSDR-USB TX0 carrier is above noise floor 35-40dB and with manual correction can be reduced to 15-20dB. On TX1 is even worse! The situation worsens as I increase frequency.
Currently I’m using latest software vesrions: Limesuite 18-10, 2.18 GW, FW 4 for LimeSDR-USB and 1.26 GW for Mini.
Once again I’m sorry if I made confusion with my posts.

IgnasJ,

Many thanks for this, sadly it is exactly what i am currently doing. As yt7pwr is also unable to remove the spur at the centre of the transmission I will put my TX work on hold and switch to the bladeRF2 (Analog Devices AD 9361).

Maybe you have a proven way to get a clean transmission without this spur?

@SimonG4ELI - Simon,

See what Ignas mentions on this, but I would have to agree that if the TX still shows a spur in the spectra that cannot be nulled out on the LimeSDR then this is going to be a huge blow to making the LimeSDR a viable transceiver foundation for HF - - Hopefully better for V/U/SHF. I’m hoping for a miracle here because you’ve done that in the past, but I also realize that there are limits to what can be done, too. I’m pullin’ for you, Simon…

73 de Marty, KN0CK

I concur. Kinda bites, as I bought the Lime (And a second) to build a HF/VHF/UHF ham radio. I also have a lot invested in parts to make this happen. Somewhere in the neighborhood of $700, beyond the Lime. It’s all built & just needs software.
To the Lime group, Please fix this issue. If not, the Limes go on the shelf & I have to go another route, of which I do not know.
If it’s not going to be, or cannot be fixed, please state that for myself & others, so we can move on.
All of these hours that purchasers & developers have worked around issues, bugs & such are not good for the Lime legacy.

Simon, thank you for your efforts. Your gift will be on it’s way this weekend. A few more goodies to finish (Heatsinks to epoxy to all of the major chips, filter for fan). Also, the undisclosed article that may thrill you.

Ed
AA7QQ

1 Like

@martywittrock
Can you please test this carrier issue on the last version of SDRAngel in UHF range?
I am not in position to do that at the moment. But remember that carrier was not present
on later versions…

@9a4db - Djani,

Unfortunately I’m in the same situation, Djani. I suffered a home fire in mid-September that was extensive enough that all the AC power and electrical panel was burned in the fire (see attached picture). The earliest ETA for me getting back into the house is late December. Right now, a good share of my LimeSDR and PC that had all the drivers for it is in storage until the house is completely recovered (and cleaned). I do have one LimeSDR with me that I can try to hook up to one of my cube PCs I have with me that run USB 3.0 and see if I can retrieve my HDMI screen from storage - - but this is going to take a day or two to make happen. I will try to get this going as soon as possible - please stay tuned…

73 de Marty, KN0CK

I am really sorry to hear that.
Keep the good spirit and please first resolve that home issue.
I can manage that test mid of next week, hopefully.
73
Djani

1 Like

@9a4db - Djani,

I’ll try to give it a go over the next couple of days…I need a strong challenge like this while I’m living out of a defined number of moving boxes and suitcases until this is done…

73 de Marty, KN0CK

I’ll jump on SDRAngel this weekend. Have to flash the dang FX3, as I had a bad update.

Ed

@SimonG4ELI Could you provide a test script that produces the issue on your hardware? That would enable us to reproduce the problem and actually start making progress in solving it.

Hi,

My software is not scripted, sorry. I transmit with the Lime USB and watch the signal with an Airspy HF+ on another computer.

The spur at 0Hz (centre of passband) is only a few dB below the peak signal. It does not depend on the IQ data, still there at the same level even when I send 0’s in the IQ stream. Running calibration doesn’t help.

I have not tried I,Q sliders to manually reduce the spur, if I have time I will do that today or tomorrow.

My current aim is to transmit at 145 / 440 MHz and have the spur at least 40 / 60 dB below peak output.

@gasparka

Ideally you run a program:

  • Use a Lime USB
  • Transmit bandwidth 3.072 MHz
  • Audio - could be a steady tone, two tones, …
  • Transmit at 145 MHz, 440 MHz
  • Look at the transmitted signal, look for a spur in the centre of the transmit bandwidth

I have a massive spur, running LMS_Calibrate() does nothing to reduce the spur, others have also experienced this spur.

If you are able to generate a signal without a spur then it’s either my hardware (and others’ hardware), or your .ini file.

After walking dogs I’ll add some screenshots showing this spur, I have attached a logfile (above) showing the diagnostic information.

I have run basicTX with 4 more LimeSDR-USB v1.4 boards (so 7 in total) and calibration works on all. So if it does not work for you, there may be something wrong with your board.

Typical basicTX output on spectrum analyser:

and with LMS_Calibrate() commented out:

1 Like