Decoding ESEO

ESEO is an educational satellite project for university students led by ESA. It is a microsatellite based on the S-50 platform by SITAEL and indeed serves as an in-orbit validation of that platform. It carries payloads developed by students in 10 European universities, and also a FUNcube payload from AMSAT-UK. It was launched last Monday in the SSO-A launch.

The satellite transmits 9k6 GFSK telemetry in the 70cm Amateur satellite band (do not confuse this telemetry with the telemetry sent by the FUNcube payload in the 2m Amateur satellite band). Last week I wrote an open letter to the directors of the ESEO program requesting the publication of the complete specifications for this telemetry. The existing documentation is published here as two documents called attachment 1, which describes the coding of the frames, and attachment 2, which describes the structure of the telemetry frames.

The main problem motivating my open letter was that the information in attachment 2 was insufficient to produce a telemetry decoder for ESEO. However, last Tuesday an updated version of this document was published. This new version seems to include all the information we need. Apparently, this new version has been published due to my open letter and the pressure made by some people at ESA surrounding the ESEO project.

I would like to thank all the people that have expressed their opinion about the importance of having well documented protocols in the Amateur radio service, as well as all the people in ESA that have pushed for the publication of the documentation, and understood that this is an important matter.

In this post we look at the coding used by ESEO, that is, everything described in attachment 1, and how the decoder in gr-satellites is implemented.

Continue reading “Decoding ESEO”

Uploading PW-Sat2 telemetry with gr-satellites

Yesterday I spoke about decoding the telemetry of PW-Sat2 with gr-satellites. Today I have added to gr-satellites a telemetry submitter block that sends the frames to the PW-Sat2 telemetry server. All users of the PW-Sat2 decoder from gr-satellites are recommended to set this up and submit telemetry to the PW-Sat2 telemetry server, as well as to the SatNOGS database. Here are the instructions to configure the submitter.

Continue reading “Uploading PW-Sat2 telemetry with gr-satellites”

Decoding PW-Sat2 with gr-satellites

PW-Sat2 is a students satellite made by the Students Space Association at Warsaw University of Technology, in Poland. The project started in 2013 and was finally launched last Monday in the SSO-A launch. The satellite carries a sail to aid in deorbiting. This will be deployed on the 39th mission day. The deorbit is expected to happen in one year.

The satellite team has made available a lot of open-source software, such as groundstation software for Radio Amateurs, a telemetry server and even the software that runs on the on-board computer. There is also a good amount of design documentation. This is something a bit unusual and admirable for a university satellite.

PW-Sat2 transmits standard G3RUH-scrambled BPSK AX.25 frames in the 70cm Amateur Satellite band. The baudrate can be selected between 1k2, 2k4, 4k8 and 9k6 by the satellite team. The interesting thing is that there are many types of packets besides telemetry. For instance, it can list and transfer on-board files, such as the images taken by the satellite camera. These packets can be decoded by using the FramePayloadDecoder software.

Since the FramePayloadDecoder software is quite complex and it is written in Python, I have decided to make a telemetry parser for gr-satellites that simply loads this software into GNU Radio and passes the frames to the decoder. Here are the instructions to set this up.

Continue reading “Decoding PW-Sat2 with gr-satellites”

Decoding 3CAT-1

A few days ago I spoke about my Reaktor Hello World decoder in gr-satellites. Another of the satellites that were launched with Reaktor Hello World in the November 29 PSLV launch is 3CAT-1, a 1U cubesat from the NanoSat Lab in Universidad Politècnica de Catalunya. It is designed as a technology demonstrator of COTS parts, and integrates four scientific payloads.

The communications system of 3CAT-1 uses a Texas Instrument CC1101 FSK transceiver chip, which is very similar to the CC1125 used in Reaktor Hello World. It transmits a 9k6 FSK telemetry beacon in the 70cm Amateur band. An interesting thing about this beacon is that it is powered by a temperature gradient that generates naturally within the satellite. A Peltier module is used to collect energy from the gradient and power the communications module. This is called “eternal self-powered beacon demonstrator” by the designers of the satellite, since it doesn’t depend on batteries or solar cells.

I have been in contact with Juan Fran Muñoz from NanoSat Lab, who has been kind enough to send me a telemetry recording for 3CAT-1. With this, and following my implementation of the Reaktor Hello World decoder, I have added a decoder for 3CAT-1 to gr-satellites.

Continue reading “Decoding 3CAT-1”

December DSLWP-B camera planning

It is again the beginning of the month, which means that the Earth will be in view of the Inory eye camera on board DSLWP-B. As usual, I have updated my camera planning notebook to compute the location of the Moon and Earth, as seen from the camera.

Wei has already scheduled observations on 2018-12-06 11:20 UTC and 2018-12-07 08:30 UTC. On each of these observations, an image will be taken at the start of the observation and the UHF transmitter will be activated for 2 hours.

I have used the 20181128 tracking file from dslwp_dev as orbital state for the calculations. As the date of the observations comes nearer, I might rerun the computations with updated ephemeris data, but this time it doesn’t seem critical to estimate the orbit with precision. In November, there were occultations of the Earth behind the lunar disc, and the times for these depended a lot on the orbital state. In December there will be no occultations, however.

The figure below shows the prediction for the camera view in the scheduled observations. On the 6th, the Earth will come close to the edge of the Moon. On the 7th, the Earth will be closest to the camera centre since we started planning and taking images in October.

Decoding Reaktor Hello World

Reaktor Hello World is a 2U cubesat built by the Finnish company Reaktor Space Lab as a test of their cubesat platform and demonstration of the first miniature infrared hyperspectral imager. It was launched on November 29 by a PSLV from Satish Dhawan Space Centre, together with several other cubesats. It transmits 9k6 GFSK telemetry in the 70cm Amateur satellite band.

The satellite uses a Texas Instruments CC1125 FSK transceiver chip. This is very similar to the CC1101 that I used a few years ago in my 70cm Hamnet experiments, so I already knew the coding and features of this chip quite well. The satellite team has a Github repository with a GNU Radio decoder based on the gr-cc11xx decoder block for the CC11xx series of chips. Since gr-cc11xx doesn’t seem to be maintained anymore, I wanted to implement my own CC11xx decoder in gr-satellites and use it to decode Reaktor Hello World.

Continue reading “Decoding Reaktor Hello World”

An open letter about ESEO telemetry specifications

Dear Piero Galeone and Antonio de Luca,

As an Amateur Radio operator experienced in the field of Amateur satellites and in the space industry, I am publishing this open letter to motivate and request the release of the complete technical specifications for the telemetry that the ESEO satellite will transmit in the frequency 437.00MHz, in the 70cm Amateur satellite band.

According to the ITU Radio Regulations for the Amateur and Amateur-satellite Services, “Transmissions between amateur stations of different countries shall not be encoded for the purpose of obscuring their meaning, except for control signals exchanged between earth command stations and space stations in the amateur-satellite service.” A strict interpretation of this rule means that the specifications of all digital protocols used by Amateur stations should be publicly available, so that anyone is able decode the data. The use of protocols with undisclosed specifications can be seen as a try to obscure the meaning of the data.

Continuing with the ITU Radio Regulations, the definition of the Amateur service describes it as “a radiocommunication service for the purpose of self-training, intercommunication and technical investigations carried out by amateurs, that is, by duly authorized persons interested in radio technique solely with a personal aim and without pecuniary interest.” In my opinion, the use of protocols with undisclosed specifications goes against the spirit of this definition, in particular, it can hinder technical investigations and self-training.

For these reasons, I am a strong proponent of requiring that all the protocols used by Amateur stations have publicly available specifications, allowing anyone to decode the data, study the protocols, learn, experiment and improve upon the state of the art. In view of the paragraphs cited above, publishing the full specifications so that anyone can build a complete decoder independently is both an obligation and the best practice.

This is especially important for Amateur satellites, which often use at least some form of ad-hoc protocols in their telemetry downlink. The public specifications for this telemetry downlink are often incomplete or inexistent. As an attempt to remedy this situation, I develop gr-satellites, which aims to decode every satellite that transmits in Amateur bands. Developing this tool usually requires some reverse engineering, due to the lack of documentation. Some similar tools by other Amateurs are the Soundmodem decoders by Andrey Kopanchuk UZ7HO and the Telemetry decoders by Mike Rupprecht DK3WN, who face similar challenges.

A large number of Amateur operators and enthusiasts throughout the world routinely use these tools to decode telemetry from Amateur satellites, contributing valuable data to the satellite operators through the SatNOGS network and other databases. Also, these tools can be an invaluable reference to educational or research institutions or companies that start building satellites.

Regarding the ESEO satellite, I believe that the educational and collaborative aims of the project is in line with the self-training and investigation aspects of the Amateur service. Thus, publishing complete specifications for the telemetry downlink seems the best practice to respect the goals of the project.

Additionally I think ESA should be held to the highest standards and be exemplary in publishing the specifications. This is specially important, since currently it is often hard to get documentation from the developers of many Amateur satellites.

While some documentation for ESEO has already been published, this is not enough to build a complete telemetry decoder. For instance, the equations needed to interpret the raw telemetry readings such as voltage, current and temperature are missing.

I hope that this letter serves to raise awareness about the need of publishing specifications for the protocols used in the Amateur service and that a complete set of documentation is published for ESEO, allowing Amateurs to build their own telemetry decoders.

Best regards,

Dr. Daniel Estévez, EA4GPZ.

Batch processing of DSLWP-B Moonbounce: part I

In previous posts I’ve talked about how the DSLWP-B 70cm signal can sometimes be received in the Dwingeloo 25m radiotelescope via a reflection off the Moon’s surface. I’ve studied the geometry of this reflection, the cross-correlation against the direct signal, and even decoded some reflected JT4G.

However, so far the reflection has been detected by hand by looking at the recording waterfalls. We don’t have any statistics about how often it happens or which conditions favour it. I want to make some scripts to process all the Dwingeloo recordings in batch and try to extract some useful conclusions from the data.

Here I show my first script, which computes the power of the direct and reflected signals (if any). The analysis of the results will be done in a future post.

Continue reading “Batch processing of DSLWP-B Moonbounce: part I”

Es’hail 2 launch in GMAT

After a long wait by many Amateur radio operators, Es’hail 2, the first geostationary satellite carrying an Amateur radio transponder launched yesterday on a SpaceX Falcon 9 Full Thrust from the historical LC-39A pad in Kennedy Space Centre, which was used by many Apollo and Space Shuttle launches in the past.

Es’hail 2 is the second communications satellite operated by the Qatari company Es’hailSat. It was built by Mitsubishi Electric Corporation (MELCO). It carries several Ku and Ka band transponders intended for digital television, Internet access and other data services. It also carries an Amateur radio payload designed by AMSAT-DL, in collaboration with the Qatar Amateur Radio Society. The payload has two transponders, with S-band uplink and X-band downlink. One of the transponders is 250kHz wide and intended for narrowband modes, and the other one is 8MHz wide and intended for DVB-S and other wideband data modes.

SpaceX live-streamed the launch, and the recording can be seen in YouTube. Today, Space-Track has published the first TLEs for Es’hail 2 and the second stage of the Falcon 9 rocket. Here I look at these TLEs using GMAT.

Continue reading “Es’hail 2 launch in GMAT”

November DSLWP-B images of the Moon and Earth

In previous posts, I have already spoken about the chance of DSLWP-B taking images of the Moon and Earth during the beginning of November. The window to take these images was between November 6 and 9. This window included the possibility of taking an Earthrise image, with the Earth appearing from behind the Moon.

The planning for the activations of the Amateur payload made by Wei Mingchuan BG2BHC was as follows.

7 Nov 2018 08:13 to 7 Nov 2018 10:13
8 Nov 2018 09:40 to 8 Nov 2018 11:40
9 Nov 2018 12:00 to 9 Nov 2018 14:00
10 Nov 2018 14:00 to 10 Nov 2018 16:00
11 Nov 2018 13:30 to 11 Nov 2018 15:30

On November 7, from 8:13 to 9:33 UTC, a total of 9 images with 10 minutes of spacing between each would be taken. These images would be downloaded during the activations on the next days. As usual, an image would also be taken when the Amateur payload powered up on November 8 to 11, but the main focus was on downloading the sequence of images taken on November 7. This is a complete report of the images taken and downloaded.

Continue reading “November DSLWP-B images of the Moon and Earth”