Detecting the Sprites from KickSat-2

The Sprites chipsats are tiny satellites built on a 3.5×3.5cm PCB with the bare minimum electronics to do something useful: a CC430 microcontroller with integrated FSK transceiver, an IMU, and solar cells.

Sprite chipsat (taken from the KickSat webpage)

The Sprites have been developed as part of the KickSat project, led by Zac Manchester, from Stanford University. The idea is to carry up to 128 Sprites in a cubesat and deploy them in a swarm once the cubesat is in orbit. The first test of this concept was done by the KickSat 3U cubesat in 2014. The test was a failure, since the Sprites couldn’t be deployed before KickSat reentered.

The second test was made this year with the KickSat-2 3U cubesat, a reflight of the KickSat mission carrying 104 Sprites. KickSat-2 was launched to the ISS onboard Cygnus NG-10 in November 2018 and deployed into orbit in February 2019.

On March 19, the Sprites were successfully deployed from KickSat-2, as Zac announced in Twitter, requesting help from the Amateur radio community to receive the signals from the Sprites at 437.240MHz. On March 22, Cees Bassa and Tammo Jan Dijkema tried to detect the Sprites by doing a planar scan with the Dwingeloo 25m radiotelescope. They were successful, detecting several transmissions from the Sprites in the waterfall. At that moment, the Sprites were up to 5 minutes ahead KickSat-2, due to their much higher drag to mass ratio. They all probably reentered a few days after this.

All the Sprites transmit in the same frequency using CDMA, so further analysis is required to identify which Sprites were observed by Dwingeloo. Zac said he was working on decoding the recording, however, I haven’t seen any results published yet. Here I show my analysis of the recording made at Dwingeloo. I manage to detect 4 different Sprites.

QO-100 beacon FEC decoder

Since the BPSK beacon on the QO-100 narrowband transponder was first activated, I had thought that it only transmitted messages using the AO-40 uncoded protocol. However, a Twitter conversation a few days ago with Rob Janssen PE1CHL convinced me that FEC messages might be sent in between uncoded messages.

The AO-40 FEC protocol used a concatenated code with a (160, 128) Reed-Solomon code and an r=1/2, k=7 convolutional code, together with scrambling and interleaving to achieve very good performance. The same protocol has then been used in the FUNcube satellites, so I have an AO-40 FEC decoder in gr-satellites since I added support for AO-73.

It is quite easy to notice that the QO-100 beacon transmits both uncoded and FEC messages. Indeed, using my gr-satellites decoder, I see that an uncoded message is transmitted every 23 seconds approximately. Since an uncoded message comprises 514 bytes, it takes 10.28 seconds to transmit it at 400baud, so something else must be sent between uncoded messages.

A FEC message is formed by 5200 symbols (after applying FEC), so it takes 13 seconds to transmit at 400baud. This gives us the total 23.28 seconds that I had observed between uncoded messages. Note that the contents of the uncoded and FEC blocks are different. An uncoded block contains 8 lines of 64 characters plus 2 bytes of CRC. A FEC block only contains 4 lines of 64 characters, and no CRC.

I have added a FEC decoder to the QO-100 decoder in gr-satellites, so that it now decodes both FEC and uncoded messages.

NPR: Hamnet over 70cm

Some days ago, Guillaume F4HDK emailed me to introduce me his latest project, NPR (New Packet Radio). This is an open-source modem designed to carry IP traffic over the 70cm Amateur radio band, with data rates of up to 500kbps. The goal of this modem is to be used for the Hamnet Amateur radio IP network, to give access to end users where coverage on the 2.3GHz and 5GHz bands is poor due to the terrain.

Guillaume knew that I had worked on IP over 70cm with my CC1101 and Beaglebone black project, so he wanted to know what I though about NPR. After reading all the available documentation, I found NPR very interesting. Indeed, Guillaume has come up with clever ways of solving some of the difficulties I foresaw when planning out my experiments with the CC1101.

The most important aspect about NPR is that it is already a finished product that people can build as a kit and start using. My experiments with the CC1101 were a mixture of proof of concept and play around, and never progressed from that stage due to lack of interest in my local Amateur community. However, Guillaume has put a lot of time, thought and effort in developing NPR. Of course the project can evolve further, but it is usable in its present stage. In what follows, I do a detailed analysis of the technical aspects of NPR.

Weekend maintenance to QO-100 NB beacons

This weekend, the beacons of the Es’hail 2 narrowband transponder have undergone maintenance. The beacons have been off for several periods of a few hours on Friday and Saturday. After the maintenance, there are two main changes: the phase noise of the beacons has been fixed, and the beacons are now approximately 3dB stronger.

Since the opening of the transponder on February 14, some phase noise on the two beacon signals was appreciable slightly above the noise floor, and with the latest increase in power of the beacons, the phase noise was more evident. Now the problem is fixed and the transponder is clear of phase noise.

The figure below shows the power of the beacons and transponder noise (measured in 2kHz bandwidth). You can see that the beacon power has daily fluctuations of up to 2dB, but despite of this fact it is clear that the beacons are now approximately 3dB stronger than before (maybe even 4dB).

The figure below shows the CN0 of the beacons, measured both at the transponder and at my receiver (where it is lower due to system noise). The CN0 is now extremely high: 56dB for the BPSK beacon. In a previous post I thought about what could be done with 45dB of CN0. The conclusion was that if you want to fit a digital signal in an SSB channel bandwidth, you are much more bandwidth-limited than SNR-limited. This is now even more true.

With the increased beacon power, it should be fairly easy to decode the beacons with a bare LNB, even despite the fact that the transponder gain has been reduced twice. Also, now that the SNR of the beacons is so high, there is no excuse for being louder than the beacon. Anyone who is stronger than the beacon is most likely using too much power. Their mode of choice probably works equally well with several dB less of SNR.

Measuring QO-100 beacons frequency

Continuing with my frequency measurements of Es’hail 2, I have now been measuring the frequency of the beacons of the QO-100 narrowband transponder for several days. The main goal of these frequency measurements is to use Doppler to study the orbit of Es’hail 2. Previously, I had been doing frequency measurements on the engineering beacons at 10706MHz and 11205MHz. However, these beacons are currently being transmitted on a MENA beam, so I’m quite lucky to be in Spain, as they can’t be received in many other parts of Europe.

During the in-orbit tests of Es’hail 2, the engineering beacons were transmitted on a global beam, and I performed some differential Doppler studies with Jean Marc Momple 3B8DU, in Mauritius. The engineering beacons are no longer any good for these kind of studies, since their area of coverage is small. Thus, I have started to measure the beacons in the narrowband transponder, which covers all the satellite footprint.

Recovering an image transmitted by DSLWP-B

The image accompanying this post has a nice story to it. It was taken by the Amateur camera in DSLWP-B, the Chinese microsatellite in lunar orbit. On February 27, a download of this image was attempted by transmitting the image in SSDV format in the 70cm band and receiving it in the Dwingeloo radiotelescope, in the Netherlands.

The download was attempted twice, but due to errors in the transmission, a small piece of the image was still missing. Today, the Amateur payload of DSLWP-B was active again, and the plan was to download the missing piece, as well as other images. However, after the payload turned on and transmitted its first telemetry beacons, we discovered that the image had been overwritten.

The camera on-board DSLWP-B has a buffer that stores the last 16 images taken. Any of these images can be selected to be transmitted (completely or partially) while the Amateur payload is active. An image can be taken manually by issuing a command from ground. Besides this, every time the Amateur payload powers on, an image is taken. Of course, taking new images overwrites the older ones.

This is what happened today. The image we wanted to download was the oldest one in the buffer and got overwritten as soon as the payload turned on. This is a pity, especially because there was another activation of the payload last Friday, but a large storm in Germany prevented Reinhard Kuehn DK5LA’ from moving his antennas safely, so the satellite couldn’t be commanded to start the download.

After seeing that the image had been overwritten, Tammo Jan Dijkema suggested that I try to recover manually the missing chunk in the recording made on February 27. As you can see, I was successful. This is a report of how I proceeded.

Changes to the QO-100 NB transponder settings

Yesterday, AMSAT-DL announced that the narrowband transponder of QO-100 was under maintenance and that some changes to its settings would be made. This was also announced by the messages of the 400baud BPSK beacon. Not much information was given at first, but then they mentioned that the transponder gain was reduced by 6dB and a few hours later the beacon power was increased by 5dB.

Since I am currently doing continuous power measurements of the transponder noise and the beacons, when I arrived home I could examine the changes and determine using my measurements that the transponder gain was reduced by 5dB (not 6dB) at around 15:30 UTC, and then the uplink power of the beacons was increased by 5dB at around 21:00 UTC, thus bringing the beacons to the same downlink power as before. In what follows, I do a detailed analysis of my measurements.

New dish for Es’hail 2 reception

I have replaced the dish I had for receiving Es’hail 2 by a new one. The former dish was a 95cm offset from diesl.es which was a few years old. I had previously used this dish for portable experiments, and it had been lying on an open balcony for many months until I finally installed it in my garden, so it wasn’t in very good shape.

Comparing with other stations in Spain, I received less transponder noise from the narrowband transponder of QO-100 than other stations. Doing some tests, I found out that the dish was off focus. I could get an improvement of 4dB or so by placing the LNB a bit farther from the dish. This was probably caused by a few hits that the dish got while using it portable. Rather than trying to fix this by modifying the arm (as the LNB couldn’t be held in this position), I decided to buy a new dish.

Es’hail 2 frequency measurements

After being busy with other projects, I have resumed my frequency measurements of the Es’hail 2 beacons. The last measurement I performed was made when the satellite reached its operational slot at 26ºE. After manoeuvering to this spot, the Doppler was very small, on the order of 0.8ppb peak-to-peak, indicating a very accurate geostationary orbit. Now Es’hail 2 has been two months in its operational slot, inaugurating its Amateur transponders on February 14 and entering commercial service on March 7.

I am curious about studying again the Doppler at this point in the mission, to see how accurate the GEO orbit is. I am also interested in collaborating with other Amateurs to perform differential Doppler measurements, as I did with Jean Marc Momple 3B8DU. Here I detail the first results of my measurements.

New decoders for Astrocast 0.1

A couple months ago, I added a decoder for Astrocast 0.1 to gr-satellites. I spoke about the rather non-standard FX.25 protocol it used. Since then, Mike Rupprecht DK3WN and I have been in contact with the Astrocast team. They noticed the mistake about using NRZ instead of NRZ-I, and in February 13 they sent a software update to the satellite to use NRZ-I instead of NRZ. However, the satellite has some failsafe mechanisms, so sometimes it is seen transmitting in the older NRZ protocol.

Mike has also spotted Astrocast 0.1 transmitting sometimes in 9k6, instead of the usual 1k2. This is used to download telemetry, and it is only enabled for certain passes. The coding used for this telemetry download is different from the FX.25 beacon. The team has published the following information about it. The coding follows CCSDS, using five interleaved Reed-Solomon encoders. A CCSDS scrambler is also used.

Following this variety of protocols, I have added new decoders for Astrocast 0.1 to gr-satellites. The astrocast.grc decoder does NRZ-I FX.25, and should be used for the beacon. The astrocast_old.grc decoder implements NRZ FX.25, and should be used for the beacon when the satellite is in failsafe mode. The astrocast_9k6.grc decoder serves to decode the 9k6 telemetry downloads. Sample recordings corresponding to these three decoders can be found in satellite-recordings.