In a previous post I looked at the modulation and coding of Euclid, the recently launched ESA space telescope. I processed a 4.5 hour recording that I did with two dishes from the Allen Telescope Array. This post is an analysis of the telemetry frames. As we will see, Euclid uses CCSDS TM Space Data Link frames and the PUS protocol version 1. The telemetry structure is quite similar to that of JUICE, which I described in an earlier post. I have re-used most of my analysis code for JUICE. However, it is interesting to look at the few differences between the two spacecraft.
Tag: ccsds
Analysis of JUICE frames
In the previous post, I showed how to use GNU Radio to decode a 3 hour recording of the ESA spacecraft JUICE that I made with the Allen Telecope Array. In this post I will analyse the contents of the telemetry frames.
As I mentioned, the decoder I used was quite slow because the Turbo decoder was rather inefficient. In fact, the 3 hour recording has taken a total of 70.82 hours to process using the gnuradio1 machine at the GR-ATA testbed (a dual-socket Xeon Silver 4216). This means that the decoder runs 23.6 times slower than real time in this machine. Here I have used the decoder that beamforms two ATA antennas, as I described in the previous post. In total, 152 MiB worth of frames have been decoded.
Decoding INTEGRAL
INTEGRAL, the INTErnational Gamma-Ray Astrophysics Laboratory, is a gamma ray space telescope from ESA that was launched in 2002. It is on a highly elliptical Earth orbit, and uses S-band for communications (see this page).
Yesterday, Scott Tilley VE7TIL shared on Twitter a short 30 second recording of the INTEGRAL downlink at 2215 MHz. Since I’ve never had a look at this spacecraft, I decided to try to decode the data. This post is an overview of what I’ve found about the INTEGRAL S-band downlink.
Decoding the BlueWalker 3 S-band downlink
BlueWalker 3 is a satellite built by AST SpaceMobile that was launched in 2022-09-11. It is as a prototype mission that will try to communicate from low Earth orbit with unmodified cellphones on ground using a large 64 m² unfoldable phased array antenna. It has received some criticism because of concerns of the satellite being too bright due to the large antenna (impacting astronomy observations) and potentially causing RF interference to radioastronomy and other services, since the cellular bands it will use are normally used only in terrestrial applications.
It also received criticism when shortly after launch, amateur radio operators noticed that the satellite was transmitting packets on 437.500 MHz, in the UHF amateur satellite band. The mission of this satellite is not compatible with the amateur radio service and it hasn’t received IARU coordination. There were some arguments on Twitter about whether BlueWalker 3 actually had the proper experimental license from the FCC to do this or not, and people posted ITU SNL filings and FCC applications. I didn’t track all of this in detail, so I don’t have a well informed opinion about whether BlueWalker 3 is following the regulations correctly.
A month ago, I looked at the UHF packets and checked that BlueWalker 3 used exactly the same modulation and coding as Light-1, which is a 3U cubesat from United Arab Emirates (this was first discovered by Tetsurou Satou JA0CAW). The framing contains the typical elements of the built-in packet handler of low cost FSK chips such as the Texas Instruments CC11xx family. Scott Tilley noticed some details that seem to explain this connection: Light-1 was built by NanoAvionics, which apparently has collaborated with AST SpaceMobile in the BlueWalker 3 mission. Therefore, it seems that the satellite bus used by BlueWalker 3 is that of a typical cubesat.
BlueWalker 3 also transmits in S-band, at a frequency of 2245 MHz. Scott Tilley has been doing some observations of this signal and sharing some recordings. Aang254 has been analysing the signal and remarks that it’s mostly idle data. In this post I’ll do an analysis of the BlueWalker 3 S-band signal using two recordings made by Scott.
Reed-Solomon bug in Queqiao
Queqiao is the communications relay satellite for the Chang’e 4 Chinese lunar lander mission to the far side of the Moon. It is in a halo orbit around the Earth-Moon Largrange L2 point and provides communications to the lander in Von Kármán crater.
Queqiao transmits telemetry in S-band, using the frequency 2234.5 MHz. The modulation and coding is similar to other recent Chinese probes, such as Chang’e 5 and Tianwen-1. Here I report an interesting bug that I found in the Reed-Solomon encoding performed by Queqiao.
Decoding the Falcon-9 upper stage
This is hardly news any longer. Since a few weeks ago, some people have been decoding the S-band telemetry from the Falcon-9 upper stage, which includes live video of the exterior of the spacecraft and the liquid oxygen tanks interior. This started with the work of r00t.cz, @aang254 and others, who around the second week of March managed to decode video from the telemetry for the first time. r00t.cz has published some information about the telemetry, @aang254 has added a decoder to SatDump, and Alexandre Rouma is adding a decoder to SDR++. In fact, the whole exercise of decoding the video has become quite popular, and more and more people are contributing to decode the latest launches.
On 2021-03-24 there was a launch of 60 Starlink satellites from Cape Canaveral, and Iban Cardona EB3FRN sent me the IQ recording he did on the first orbit, some 18 minutes after the launch. I decided to make a GNU Radio decoder flowgraph for this, since even though there are already several software decoders, I haven’t seen anyone using GNU Radio. I figured out that I could easily put together a flowgraph using some blocks from gr-satellites. This would make a useful and interesting example of using GNU Radio to decode digital signals.
Chang’e 5 telemetry from the lunar surface received by Bochum
A few days ago, Achim Vollhardt DH2VA shared with me some recordings of the lander+ascender combo of Chang’e 5 with the 20m antenna at Bochum observatory, which is operated by AMSAT-DL. The recordings were made on 2020-12-02, while the lander+ascender combo was still on the lunar surface collecting samples (see this tweet by Scott Tilley VE7TIL for the detailed mission timeline). The successful reception of Chang’e 5 by Bochum was announced by AMSAT-DL in Twitter.
The recordings that Achim made are the following:
- Recording of the low data rate telemetry at 8463.7 MHz for some 15 minutes at 6:00 UTC. This frequency was in ground-lock at that time, as shown by the telecommand loopback at +/-8kHz from the main carrier (there are several telecommand packets being transmitted, plus the usual idle telecommand subcarrier)
- Five recordings of a high-speed signal at 8495 MHz. The recording was done at 21:10 UTC, has a length of 5 minutes, and is split in five files due to a constraint of 2GB in the size of the recorded files.
In this post I look at the telemetry decoded from these recordings.
Chang’e 5 LOI-2 observed with Allen Telescope Array
If you follow me on Twitter you’ll probably have seem that lately I’m quite busy with the Chang’e 5 mission, doing observations with Allen Telescope Array as part of the GNU Radio activities there and also following what other people such as Scott Tilley VE7TIL, Paul Marsh M0EYT, r00t.cz, Edgar Kaiser DF2MZ, USA Satcom, and even AMSAT-DL at Bochum are doing with their own observations. I have now a considerable backlog of posts to write, recordings to share and data to process. Hopefully I’ll be able to keep a steady stream of information coming out.
In this post I study the observation I did with Allen Telescope Array last Sunday 2019-11-29. During the observation, I was tweeting live the most interesting events. The observation is approximately 3 hours long and contains the LOI-2 (lunar orbit injection) manoeuvre near its end. LOI-2 was a burn that circularized the elliptical lunar orbit into an orbit with a height of approximately 207km over the lunar surface.
A look at Chang’e 5 telemetry
Chang’e 5 is a Chinese lunar sample return mission. It was launched a few days ago on 2020-11-23 from Wenchang and is estimated to perform lunar orbit injection on Saturday. Since then, a number of Amateurs such as USA Satcom, Paul Marsh M0EYT, Scott Tilley VE7TIL, Fer IW1DTU and others have been receiving the X-band signals from the spacecraft and posting reports over on Twitter. Meanwhile, r00t.cz has been working in decoding the frames, which has led him to the amazing achievement of being able to retrieve a short video from the signal.
In this post I will look at some of the frames demodulated by USA Satcom and Paul during the first couple of days of the mission. The frame structure has many similarities with Tianwen-1, which I have described in several posts, such as here and here. However, there are some interesting differences.
Tianwen-1 virtual channel usage
A few days ago, Paul Marsh M0EYT told me that he had seen something interesting in his recording of Tianwen-1‘s signal during the previous night. Paul usually does some nice videos of the signal waterfall by doing screen captures of Spectrum Lab. These clearly show events such as frequency jumps due to groundstation locking, and any high-speed data transmissions. You can see some of these in his Twitter feed.
The waterfall that Paul talked me about can be seen in this video. It corresponds to the night between September 20 and 21. Note that the data sidebands show some horizontal stripes. For a while they disappear altogether, and at other times their density changes. This is what caught Paul’s eye.
Paul was convinced that when the stripes disappeared, more data was being transmitted in the signal. I was a bit sceptical about it, but clearly there was something changing in the signal. I thought about the “dancing” related to the subcarrier and data clocks sliding. However, after analysing the signal, I saw that Paul was completely right, as I will explain here. After knowing exactly what happens, I’m still quite amazed that this shows up in the Spectrum Lab waterfall.