Interferometric imaging with Allen Telescope Array

In the weekend experiments that we are doing with the GNU Radio community at Allen Telescope Array we usually have access to some three antennas from the array, since the rest are usually busy doing science (perhaps hunting FRBs). This is more than enough for most of the experiments we do. In fact, we only have two N32x USRPs, so typically we can only use two antennas simultaneously.

However, for doing interferometry, and specially for imaging, the more antennas the better, since the number of baselines scales with the square of the number of antennas. To allow us to do some interferometric imaging experiments that are not possible with the few antennas we normally use, we arranged with the telescope staff to have a day where we could access a larger number of antennas.

After preparing the observations and our software so that everything would run as smoothly as possible, on 2021-02-21 we had a 18 hour slot where we had access to 12 antennas. The sources we observed where Cassiopeia A and Cygnus A, as well as several compact calibrators. After some calibration and imaging work in CASA, we have produced good images of these two sources.

Many thanks to all the telescope staff, specially to Wael Farah, for their help in planning together with us this experiment and getting everything ready. Also thanks to the GNU Radio team at ATA, specially Paul Boven, with whom I’ve worked side by side for this project.

This post is a long report of the experiment set up, the software stack, and the results. All the data and software is linked below.

Voyager-1 single dish detection at Allen Telescope Array

This post has been delayed by several months, as some other things (like Chang’e 5) kept getting in the way. As part of the GNU Radio activities in Allen Telescope Array, on 14 November 2020 we tried to detect the X-band signal of Voyager-1, which at that time was at a distance of 151.72 au (22697 millions of km) from Earth. After analysing the recorded IQ data to carefully correct for Doppler and stack up all the signal power, I published in Twitter the news that the signal could clearly be seen in some of the recordings.

Since then, I have been intending to write a post explaining in detail the signal processing and publishing the recorded data. I must add that detecting Voyager-1 with ATA was a significant feat. Since November, we have attempted to detect Voyager-1 again on another occasion, using the same signal processing pipeline, without any luck. Since in the optimal conditions the signal is already very weak, it has to be ensured that all the equipment is working properly. Problems are difficult to debug, because any issue will typically impede successful detection, without giving an indication of what went wrong.

I have published the IQ recordings of this observation in the following datasets in Zenodo:

Tianwen-1 plane change manoeuvre

Today at 9:00 UTC Tianwen-1 made its plane change manoeuvre, as reported by Xinhua. Yesterday I showed my planning for this manoeuvre. Shortly after the spacecraft returned to the high gain antenna after the manoeuvre, the Bochum 20m antenna operated by AMSAT-DL received state vectors with the new trajectory. These state vectors allow us to calculate the timestamp of the burn and the delta-V vector, as I have done in other occasions. It is convenient to remark that the state vectors that we are seeing right now are probably a prediction. In the next few days we will see updates in the trajectory as the Chinese DSN measures the effects of the actual burn and updates the onboard ephemerides.

Tianwen-1 plane change planning

Today, the Chinese media published a short piece of news stating that tomorrow, 2021-02-15, Tiawen-1 will make make a plane change to a polar orbit. The post is accompanied by an short video, which includes an animation depicting the manoeuvre. A screenshot of the video is shown below. As the spacecraft arrives to apoapsis, it effects a plane change into an ascending polar orbit.

Tianwen-1 plane change manoeuvre. Source 人民日报 in weibo.com

This is a good moment to review the maths behind a plane change manoeuvre and compute what the manoeuvre will look like.

Emirates Mars Mission MOI burn observed in Bochum

A few days ago, Emirates Mars Mission (Hope), and Tianwen-1 performed their Mars orbit injection burn (MOI). AMSAT-DL made a livestream for each of the two events, showing the X-band signals of the spacecraft as received with the 20m antenna at Bochum.

In the case of Tianwen-1 the signal was pretty strong even while the spacecraft was on the low gain antenna, and we could clearly see the change in Doppler rate as the thrusters fired up. However, in the case of Emirates Mars Mission the signal disappeared as soon as the spacecraft switched to the low gain antenna. In fact DSN Now reported a received power of -155 dBm with the 34m DSS55. That was a large drop from the -118 dBm that it was reporting with the high gain antenna. Therefore, nothing could be seen in the livestream waterfall until the spacecraft returned to the high gain antenna, well after the manoeuvre was finished.

Nevertheless, a weak trace of the carrier was still present in the livestream audio, and it could be seen by appropriate FFT processing, for example with inspectrum. I put up a couple of tweets showing this, but at the moment I wasn’t completely sure if what I was seeing was the spacecraft’s signal or some interference. After the livestream ended, I’ve been able to analyse the audio more carefully and realize that not only this weak signal was in fact the Hope probe, but that the start of the burn was recorded in perfect conditions.

In this post I’ll show how to process the livestream audio to clearly show the change in drift rate at the start of the burn and measure the acceleration of the spacecraft.

Decoding IDEASSat

One of the interesting Amateur cubesats in yesterday’s SpaceX Transporter-1 launch from Cape Canaveral is IDEASSat, a 3U cubesat from the National Central University of the Republic of China (Taiwan) designed to study ionospheric plasma. Jan van Gils PE0SAT drew my attention to this satellite as he was trying to see if it was possible to decode it with any of the decoders existing in gr-satellites. Mike Rupprecht DK3WN also helped with a good recording, much cleaner than the SatNOGS recording that Jan was using.

Presumably this satellite uses “AX25, 9k6, GMSK”, as listed at the bottom of this page from Taiwan’s National Space Organization, and also in this research paper. However, this is not true. It’s simple to check that the usual 9k6 FSK AX.25 decoders aren’t able to decode this signal, and a look at the FSK symbols shows that there is no scrambler (9k6 AX.25 uses the G3RUH scrambler) and that the symbol sequence doesn’t have much to do with AX.25.

After some reverse-enginnering, yesterday I figured out how the coding used by IDEASSat worked, and today I added a decoder to gr-satellites to help Mike investigate what kind of telemetry the packets contain. The protocol is not very good, so I think it’s interesting to document it in detail, as some sort of lessons learned. In this post I’ll do so. As it turns out, the protocol has some elements that loosely resemble AX.25, so I’m left wondering whether this is some unsuccessful attempt at implementing standard AX.25 (we’ve already seen very weird attempts, such as ESEO).

BPSK radar received through Meridian 8

Ever since SETI Insitute published the news of a possible signal received from Proxima Centauri in some of the Parkes telescope recordings at 982 MHz, Scott Tilley VE7TIL has taken up the interest to search and catalogue the satellites that transmit on this band (specially old, forgotten and zombie satellites). His idea is to try to see if this candidate signal can be explained as interference from some satellite.

This has led him to discover some signals coming from satellites on a Molniya orbit. After examination with the Allen Telescope Array of these signals, we confirmed that they came from wideband transponders (centre frequency around 995 MHz, 13 MHz width) on some of the Meridian Russian communications satellites (in particular Meridian 4 and 8, but also others).

These transponders show all sorts of terrestrial signals that are relayed as unintended traffic through the transponder. By measuring Doppler we know that the uplink is somewhere around 700 or 800 MHz. We have found some OFDM-like signals that seem to be NB-IoT. Unfortunately we haven’t been able to do anything useful with them, maybe because there are several signals overlapping on the same frequency. We also found a wideband FM signal containing music and announcements in Turkmen, which later turned out to be the audio subcarrier of a SECAM analogue TV channel from Turkmenistan.

A few days ago, Scott detected a pulsed strong signal through the transponder of the Meridians at a downlink frequency of 994.2 MHz. He did an IQ recording of this signal on the downlink of Meridian 8. It turns out that this signal is a BPSK pulse radar. In this post I do a detailed analysis of the radar waveform using this recording.

Decoding the NEXUS π/4-DQPSK signal

NEXUS, also called FO-99, is a Japanese Amateur satellite built by Nihon University and JAMSAT. It was launched on January 2019, and one of its interesting features is a π/4-DQPSK high-speed transmitter for the 435 MHz Amateur satellite band.

I was always interested in implementing a decoder for this satellite, due to its unusual modulation, but the technical information that is publicly available is scarce, so I never set to do it. A few days ago, Andrei Kopanchuk UZ7HO asked me a question about the Reed-Solomon code used in this satellite. He was working on a decoder for this satellite, and had some extra documentation. This renewed my interest in building a decoder for this satellite.

With some help from Andy regarding the symbol mapping for the π/4-DQPSK constellation, I have made a decoder GNU Radio flowgraph that I have added to gr-satellites.

Chang’e 5 interferometric astrometry

Bill Gray, from Project Pluto is doing a great job trying to estimate the orbit of Chang’e 5 as it travels to somewhere around the Sun-Earth L1 Lagrange point (see my previous post). He is using RF pointing data from Amateur observers and the Allen Telescope Array, since the low elongation and the distance of the spacecraft have made it impossible to observe it optically.

For this task, the pointing data I am obtaining with my observations on Allen Telescope Array as part of the activities of the GNU Radio community there is quite valuable, since the 6.1 metre dishes give more accurate pointing measurements than the smaller dishes of Amateurs. The pointing data from ATA should be accurate to within 0.1 or 0.2 degrees.

To try to get more accurate data for Bill, last weekend I decided to do a recording with two dishes from the array, with the goal of using interferometry to obtain a much more precise pointing solution that what can be achieved with a single dish. This post is a report of the processing of the interferometric data.

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.