Decoding LES-5

LES-5 is a satellite launched in 1967. It was built by the MIT Lincoln Laboratory and its main payload was an experimental transponder for the military 230MHz band. It was placed in a subsynchrounous orbit with an altitude of around 33400km (GEO altitude is 35786km). Its operations ceased in 1971.

A couple days ago, Scott Tilley VE7TIL discovered that LES-5 was still transmitting, and was able to receive its beacon at 236.749MHz. Scott reports that LES-5 is the oldest GEO-belt object that he knows to be still transmitting.

The beacon is modulated, rather than being a CW carrier, so Scott sent me a short recording for analysis. This post is a summary of my study.

There is an interesting document that describes some measurements regarding the in-orbit performance of the LES-5 transponder. This document describes an 800 baud BPSK beacon signal at 228.43MHz and a 100 baud BPSK telemetry system at 236.7MHz, which is what Scott received.

I have made a simple GNU Radio demodulator that outputs the BPSK symbols to a file for later analysis. You can see the decoder running in the figure below. The SNR is quite good and the BPSK constellation locks cleanly, with no or very few bit errors. It is noteworthy the narrow peak in the middle of the BPSK spectrum: more on this later.

LES-5 GNU Radio demodulator

This Jupyter notebook is then used to look at the BPSK symbols. As shown below, we have collected slightly more than 10000 symbols from the short recording.

When doing blind analysis of a bit stream, it is often helpful to look at the autocorrelation, to try to detect any possible structure. The figure below shows the autocorrelation for lags between 1 and 100 bits. We see that for lags between 1 and 6 bits the autocorrelation is high. This means that the probability that consecutive symbols are equal is larger than 1/2.

The autocorrelation shows peaks at lags which are integer multiples of 1024. The peak at 1024 is much smaller than the peak at 2048. However, a look at the bitstream shows that there is indeed a repeating structure every 1024 bits.

The figure below shows the bitstream laid out in rows of 1024 bits. The repetitive structure can be clearly seen. I have arranged things so that the largest section that repeats in all frames is at the left. This may or may not be the start of the frame.

Below we show which bits are equal in all of the frames we have collected.

The figures above suggest that the data should be interpreted as being differentially encoded. There are sections which are similar in adjacent frames, except that the 0’s have being exchanged by 1’s or vice-versa. The figure below shows the differentially-decoded bitstream. Now we see that there are relatively few changes between each of the frames. This is reasonable if each frame just contains a series of real-time values from sensors, as they won’t change much from one frame to the next one.

As we can see below, most of the bits coincide in all of the 10 frames collected.

Regarding the narrow peak that we have noticed in the middle of the spectrum, if we re-encode the bitstream as BPSK and compute its spectrum, we obtain the figure below, where the same narrow peak is also present. Therefore, the reason for this peak is really the structure of the data. It is mainly caused by the tendency of adjacent bits to coincide, which in turn is caused by the many zeros in the differentially encoded data.

With only this short recording it is difficult to conclude anything else regarding the data. It would be interesting to record the signal for an extended period of time (several hours) and then study the data.

So far, my impression is that the data is valid, so at least a good part of the onboard computer is working. It would be very interesting to decode it, as probably it can show us something about the spacecraft’s health. However, this might not be so easy, as the documentation from this very old satellite might be long gone.


  1. Great work! But your assumption there is an onboard computer is questionable. This thing was launched in 1967, two years before Apollo 11. Telemetry systems can be built entirely out of discrete logic. E.g., UoSAT-Oscar-9 launched in 1981 used CMOS SSI/MSI. LES-5 launched in 1967 could have used Apollo-vintage SSI, or even discrete transistors and diodes. So this should be a very simple system.

    1. Fair point! By onboard computer I really meant whatever electronics was generating the telemetry, without giving it too much thought about how “primitive” or simple it might be. “Onboard computer” was just the first term that came to mind. The current state-of-the-art has somehow changed the things we assume, even unconsciously.

Leave a comment

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.