❌

Normal view

There are new articles available, click to refresh the page.
Before yesterdayMain stream

GSoC Project: Improving the transmission capabilities of gr-satnogs-Michalis Raptakis

29 July 2021 at 13:32

At Libre Space Foundation we support scientific research and knowledge by creating the conditions for people from around the world to be part of our community, to contribute, and learn. For the third year running, LSF participates in the Google Summer of Code programme as a mentoring organisation. Helping university students gain experience and knowledge by participating and contributing in fascinating projects and by being part of an active, inclusive and collaborative community.

This year, there are 3 projects which were chosen to participate in the programme and in the following weeks we will explore each project in detail. We will have a closer look at each project through the eyes of the students contributing to it.

Improving the Transmission capabilities of gr-satnogs

The first project we will focus on today is a project related to SatNOGS and developed by Michalis Raptakis, a student of Computer Science at the University of Crete. The project aims at improving the transmission capabilities of gr-satnogs. gr-satnogs is the Out-of-tree module of GNU-Radio that is used by SatNOGS (the world’s biggest, open-source network of satellite ground stations). Michalis will focus on expanding the existent transmission capabilities of SatNOGS by improving the gr-satnogs transmission framing API. He will also add new encoders to the existing AX.25 and IEEE 802.15.4, such as the Nanocom AX.100, various AMSAT-related encoders and more.
Ξ‘ttempts to expand the transmission capabilities of gr-satnogs have already been made in the past. With relevant tests carried out on UPSat while in orbit, and on QUBIK-1 and QUBIK-2 in the lab.

The Progress so far

In the first months of the project, the encoders of Mode 5 and Mode 6 of the AX.100 modem have been implemented. If you want to learn more about the entire encoding process for each mode and how Michalis went about it, you can read this detailed analysis on his blog.

GSoC 2020 logo

The GSoC experience so far and the steps to follow

The Google Summer of Code programme is a great opportunity for University students to expand their horizons, hone their skills and gain knowledge and expertise. β€œParticipating in an open-source project has proven to be a great experience so far” Michalis Raptakis points out. β€œI have gained new knowledge both in C++ coding and signal processing, as well as in my participation in a real group project. During this time I have gained more interest so that the work I share with the open-source community is the best possible both in terms of performance and quality. I also believe that I still have a lot to learn so that I can be an active member of both the organization and the open source community and in the future, I can share this knowledge.”

In the weeks to come, Michalis will be working on improving and optimising some of the SatNOGS features available and gaining even more knowledge and experience through the GSoC programme.

*You can read Michalis Raptakis’s blog and follow his progress here.


Building a SatNOGS-RF Collisions library as part of the GSoC 2020 Libre Space Foundation contributions

25 September 2020 at 11:28
GSoC 2020 logo

It was in May 2020 when we announced the two projects that Libre Space Foundation would have under its mentorship as part of the Google Summer of Code. A few weeks ago we presented to you the first of the two projects of this year’s GSoC 2020 titled Deep Learning and Space Weather. So now is the time for us to present to you the second project we have been mentoring. The project is SatNOGS-RF collisions: A python library to calculate RF collisions during Satellite observation. Our mentee, Ravi Charan had been working on this project over the summer months and here is what the project is about.

SatNOGS-RF Collisions Library

The project’s main goal was to create a tool to be able to calculate and predict Radio Frequency collisions during a Satellite and a ground station communication. In the future, the tool is meant to be integrated into SatNOGS. (The worldwide, open-source network of satellite ground stations).

The Case

As the number of deployed satellites keeps increasing it is often that satellites transmit within the same or near frequency range. The overlapping in frequencies may easily interfere with the results of the observations and it may affect their accuracy. This interference in the observed results is what we refer to as Radio Frequency collision.

The Solution

The SatNOGS-RF collisions library is designed to deal with exactly that problem. It attempts to calculate efficiently and predict the Radio Frequency Collisions for a given location(s) of a ground station(s) or for a given satellite(s) and orbit(s) over a time range.

Having a more detailed look into the project

The SatNOGS-RF Collisions library is built on python and it is divided into two submodules: the GSS and the Onlysat.

The GSS submodule

The Ground Station-Satellite submodule aims at detecting the possible collisions between multiple satellites at a single or multiple ground stations over a time period. This is achieved by taking into consideration certain parameters. These include the ground station ID(s) (or) the coordinates, the elevation of a ground station, the satellite details and the time range. With the time-range into mind, the user can check if any of the satellites mentioned pass or fall under the Field of View of the Ground Station. As soon as the list of all the satellites is composed, then all the transmitters of these satellites are checked to detect if they fall within a close frequency range.

In order to deal with the Doppler shift effect successfully and having in mind that satellites revolve around the Earth at a faster velocity than the Earth’s rotation, the downlink frequency of a Satellite wouldn’t be the same as the observed frequency at the ground station.

As Ravi analyses in detail in his article:

An external library PyEphem is used to compute the relative velocity of the satellite at the given point of time. We also make use of the PyEphem library to extract the dynamic meta-data of the Satellites that changes with time as it provides an implementation forΒ SGP4 modelsΒ which is used to get essential data of the Satellite given the TLE of the Satellite.

With the GSS submodule, the users can either choose to detect if there will be a Radio Frequency collision or to detect and compute the collision details.

The detect_collision methods return boolean values indicating if the collision is possible among the satellites in the given time range whereas, the compute_collision methods return collisions in a JSON format which include metadata of the collisions including Groundstation details, time period of the possible collision, and the transmitter frequencies of the satellites at which the collisions take place.

The Onlysat submodule

This is an extension module excluding the ground station from being a parameter. Instead, what it does is to locate the region on the surface of the Earth where a potential Radio Frequency collision might take place. The parameters that need to be specified include the satellite details as well as the specific time range for which the possible collision must be detected and the results are returned in a GeoJSON format.

This submodule first computes the footprints of each satellite and then it computes the intersection of the footprints. Once the latter is checked, the Satellite transmitters are checked too, particularly those that transmit within a near frequency range over the specific region. And that is what is marked as a Radio Frequency collision. You can find out more on Computing the footprint of Satellites in Ravi’s full article.

As was the case with the GSS, the Onlysat submodule also allows the user to opt between detect_collision and compute_collision where the latter also returns the region over which an RF collision might take place. The calculated area is returned in the GeoJSON format as part of the metadata.

SatNOGS- RF Collisions: Next Steps

Both submodules require further work and testing in order to be integrated fully into SatNOGS. When this is completed the users of SatNOGS will have at their disposal a tool with which they will be able to calculate Radio Frequency collisions efficiently.

Conclusion

By collaborating closely with his mentor, Ravi Charan devoted his time, effort and knowledge for the SatNOGS-RF collisions library for GSoC 2020. This collaboration provided a valuable hands-on experience for him and from our part, we would like to wish him the best of luck for his future!

If you are a developer yourself, interested in space technologies and wishing to gain practical and hands-on experience in developing space technologies, do not hesitate to join our community forums and our SatNOGS/element Channel. All you have to do is state your interest and you might be able to work and contribute in inspiring projects allowing you to obtain actual experience, hone your development skills and get an insight look at space technology development processes. Our Communities at Libre Space Foundation and SatNOGS are always accessible and welcome projects, ideas and collaborations that promote, enhance and support open-source technologies and methodologies. So feel free to join us any time!

❌
❌