Transmitting through QO-100 with the LimeNET Micro and LimeRFE

A couple weeks ago, I did a demo where I showed the LimeRFE radio frequency frontend being used as an HF power amplifier to transmit WSPR in the 10m band. Another demo I wanted to do was to show the LimeNET Micro and LimeRFE as a standalone 2.4GHz transmitter for the QO-100 Amateur radio geostationary satellite.

The LimeNET Micro can be best described as a LimeSDR plus Raspberry Pi, so it can be used as an autonomous transceiver or remotely through an Ethernet network. The LimeRFE has a power amplifier for 2.4GHz. According to the specs, it gives a power of 31dBm, or a bit over 1W. This should be enough to work QO-100 with a typical antenna.

You may have seen the field report article about the QO-100 groundstation I have in my garden. It is based around a LimeSDR Mini and BeagleBone Black single board ARM computer. The groundstation includes a driver amplifier that boosts the LimeSDR to 100mW, and a large power amplifier that gives up to 100W. The LimeSDR Mini and BeagleBone Black give a very similar functionality to the LimeNET Micro, but the LimeNET Micro CPU is more powerful.

The idea for this demo is to replace my QO-100 groundstation by the LimeNET Micro and LimeRFE, maintaining only the antenna, which is a 24dBi WiFi grid parabola, and show how this hardware can be used as a QO-100 groundstation.

For this temporary demo, the hardware is conveniently installed in a hand ladder in front of my QO-100 groundstation weather proof box, as shown in the figure below.

QO-100 transmitter demo hardware setup

Instead of the usual Airborne 10 low loss coax, I used a smaller diameter coax to connect the LimeRFE to the antenna, since I don’t have an SMA to N female adapter. This coax has somewhat higher losses than the Airborne 10, but it works OK, and indeed I have used it for several months in the groundstation (it can be seen in the field report article images).

The LimeNET Micro and LimeRFE are placed side by side on top of the ladder. The Ethernet cable of the QO-100 groundstation is connected to the LimeNET Micro as a convenient way to access the setup remotely from the house. A GPS antenna is used to lock the LimeNET Micro in frequency. The LimeRFE is controlled by USB from the LimeNET Micro.

LimeNET Micro and LimeRFE

Speaking of power supplies, though I have 230VAC in the QO-100 groundstation, this is supplied though a special water tight connector, so it was more convenient to run an extension cord from the house. The LimeNET Micro uses its own 5VDC power supply, while I am using a large 12VDC switched power supply for the LimeRFE.

Power supplies

To simplify things, I have copied where possible the software configuration that I am using in the BeagleBone Black in my QO-100 groundstation. There are two main differences. The first is the PTT control, which in the QO-100 groundstation is done with one of the BeagleBone Black GPIOs, and in the case of the LimeRFE is controlled through a Python script that uses the LimeSuite API, as described in my previous post about the LimeRFE. The second is that, for some reason, the limetx utility from limetool, which is what I normally use to transmit IQ data generated with GNU Radio on my laptop, doesn’t seem to work with the LimeNET Micro. Instead, I have used limesdr_send from limetoolbox, which works well.

For the reception, I am using the same equipment that I use with the QO-100 groundstation: a 120cm offset dish, a GPSDO locked LNB, and a LimeSDR connected to my laptop inside my house. As a GUI for the reception I use Linrad. The IQ samples are received from the LimeSDR using GNU Radio and sent to Linrad with gr-linrad.

Of course it is possible to use the LimeNET Micro in full duplex mode to receive the QO-100 transponder, but I wanted to do a quick demo and concentrate on showcasing the transmit capabilities of the LimeNET Micro and LimeRFE.

After setting up all the hardware and software during this afternoon, I used it for a while on the QO-100 narrow band transponder, demonstrating some of the things I normally do with my groundstation.

First, I put a CW beacon that is generated autonomously in the LimeNET Micro with a Python script that toggles the PTT of the LimeRFE. The LimeNET Micro is generating a continuous carrier with a Python script that transmits a sequence of ones as IQ samples using SoapySDR.

This beacon is really useful to test transmitter power, frequency stability, etc. We see that the frequency stability of the LimeNET Micro is very good, since it is locked to GPS. In this experiment, both the transmitter and receiver are locked to GPS (but using different GPS units).

Automated CW beacon

The power meter is the yellow track on the lower right of the screen. It shows that the signal is 12dB above the noise floor, measured in SSB bandwidth. This is an average power for an SSB station in the QO-100 narrowband transponder. It is amazing how well QO-100 works with only 1W. The digital beacon is usually 18dB above the noise floor, and it marks the maximum power that any station can use. With my QO-100 groundstation I transmit at the beacon level, using around 5W of power.

After this, I demonstrate my GNU Radio SSB transmitter. This runs in my laptop, generating an IQ stream that is sent by TCP to the LimeNET Micro and transmitted using limesdr_send from limetoolbox. Having the GNU Radio transmitter running in my laptop gives me much flexibility as to what modes to transmit (SSB voice, digital, etc.). However, it should be easy to run something similar inside the LimeNET Micro.

First I send a pre-recorded voice and waterfall text CQ. Sending waterfall text is sometimes seen on the narrowband transponder, but it is not very common. I have decided to start using it after seeing Paul Marsh M0EYT use it. I think that it is interesting, because these days most people are looking at a waterfall, so you can see at a glance if any of your friends are on the air calling CQ, without having to listen to a dozen of voice signals. Using a dual waterfall text and voice CQ also takes care of those listening on a conventional radio. My waterfall text has been generated using gr-paint.

Automated CQ with voice and waterfall text

After calling CQ for a while, Kurt Moraw DJ0ABR answered. We had a short QSO where I explained him the equipment I was testing and he told me that he uses a 1.2m dish with a 5W homebrew amplifier. In the figure below, you can see one of the overs in the QSO, with Kurt’s signal on the bottom and my signal on the top. Kurt is only 4dB stronger than me.


This demo shows that the LimeNET Micro and LimeRFE is already a complete solution for using the QO-100 narrowband transponder. I think that it is especially interesting for portable stations, if an appropriate box is designed to mount and protect the units. Other interesting projects that are appropriate for the LimeNET are some kind of automated transmitter or transceiver (though be careful when deploying this, as the transponder is a shared and valuable resource), or some sort of signal monitor that searches and analyzes signals in the transponder.

A very interesting possibility that I haven’t explored is to use the LimeNET Micro GPSDO to lock the LNB used for receiving QO-100. There is a clock output connector on the LimeNET Micro, but I think that the frequency of the clock is 30.72MHz. Most PLL-based LNBs need either 25 or 27MHz, so perhaps a PLL to convert the frequency could be used. Alternatively, a good question is if it is possible to do software or hardware modifications to use a 25 or 27MHz clock on the LimeNET Micro.

One Reply to “Transmitting through QO-100 with the LimeNET Micro and LimeRFE”

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.