Author: Nikoletta Triantafyllopoulou

An exciting new Milestone: Celebrating the 3,000,000th SatNOGS Observation!

We are excited and thrilled to announce that the SatNOGS network has reached its 3.000.000th observation on the 16th of October!

Observation #3000000 was uploaded on the SatNOGS Network by station #704- kc1ist in Somerville, Massachusetts, USA, operated by kc1ist receiving data from the  XW-2E picosatellite.

The 3.000.000th observation is a result of the continuous efforts of hundreds of ground station owners around the world. They are the ones scheduling, organising and performing the satellite observations. They all make up SatNOGS, the collaborative and dynamic, open-source network of satellite ground stations.

Today, the SatNOGS community boasts dazzling statistics. A booming number of 8k observations per day made by 200+ fully operational ground stations and 120+ in testing mode. The observations come from 450+ satellites and 960+ transmitters having delivered over 84.880.000 data frames.

Do you want to join the next millions of observations?

Do you want to be part of this collaborative community? We always welcome people who wish to contribute their time, knowledge and expertise to our projects. For this, you can start by checking out the SatNOGS knowledge-base wiki, and feel free to reach out to the community forums and chat. We would love to have you onboard the SatNOGS network and community. Join us now!

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

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.


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!

Introducing the brand new SatNOGS DB!

Quetzal-1 Information

Today, we are thrilled to announce the launching of the newly-redesigned and updated SatNOGS DB. We have put a lot of hard work into it and we are thrilled to present it to you.

A New UI for SatNOGS DB

The brand new SatNOGS DB focuses on providing an improved experience to users. It has a clearer and more efficient design, a more user-friendly interface and a more efficient and functional DB.

To start with, the design of the welcoming page has changed featuring three main fields. The first field is the New Satellites field. It contains the names of the latest satellite entries. The second field is the Latest Data and lists the names of the satellites receiving the latest data. The third field is the Recent Contributors field. It features the long list of the names of the contributors collecting data in the last 24 hours. Perched next to the names is the number of data frames they have contributed to the SatNOGS DB.

Welcoming page of the new SatNOGS DB

As with the old DB, the new SatNOGS DB sports an “All Satellites” tab from which you can navigate and scroll through the long list of satellites (400+) tracked by the network. A new feature added is the ability to see the status of a satellite. What is more, there is a recently-added “All Transmitters” tab listing all the transmitters (900+) in the network. This is a separate and distinct tab, under the “All Satellites” tab on the left of the screen.

For each satellite, there are dedicated views with additional information for the mission and its operational status.

There is also a Statistics tab. By clicking on it you can land on a page offering you a more spherical view of the numbers making up SatNOGS. Indicating the number of satellites, transmitters, data frames, frequency bands and modes of transmission.

From a technical point of view, the DB is built based on the Django Python framework. You can find the code here and if you have any suggestions or ideas on how we can further improve SatNOGS DB feel free to create an issue! We would love to read your suggestions!

The work of SatNOGS DB redesign was headed by our core contributor Corey Shields, with additional work from Julien Flawinne and Pierros Papadeas.

Future Work

SatNOGS DB has exciting new things in the pipeline, which are currently under development. Integration with Metasat Schema, Orbital Data tab per satellite with extended view and analysis, more satellite attributes and information, additional artifacts from observations, are just some of the new features coming soon!

About the SatNOGS DB

SatNOGS DB is an integral part of the SatNOGS project counting over 360+ satellite ground stations worldwide. It is an open-source, participatory initiative, fueled by the contributions and efforts of its devoted and diverse community of space enthusiasts, radio amateurs and satellite observers. SatNOGS DB is an attempt to create and maintain an up-to-date global Database of all artificial objects in space (of satellites and spacecrafts too). It is machine-readable and open to everyone who needs to have access to the data obtained. You can even connect your application to it using the available API.

This crowd-sourced, open-development and fully-transparent approach we apply to the SatNOGS project is a great example of how we operate and manage projects at the Libre Space Foundation. Everything we do adheres to the beliefs and the principles fueled by the Libre Space Manifesto. You can find out more about the Libre Space Manifesto and its principles and you can even show your support if you agree with it.

Care to join us?

If you have been intrigued by what you have read so far, have in mind that you can always join the SatNOGS project. Whether you are a space enthusiast wishing to build a SatNOGS ground station or you are fluent in Python and/or JS and you wish to contribute to the SaNOGS-DB web application. Everyone is welcome and you can start by reading how you can Get started with SatNOGS. You are also more than welcome to join our community forums and our riot/matrix channels. Reach out to us and be part of our community. We would love to hear from you!

Reaching a new Milestone: Celebrating the 2,000,000th SatNOGS Observation!

We are excited and thrilled to announce that the SatNOGS network has reached its 2.000.000th observation on the 9th of April!

Observation #2000000 got uploaded on the SatNOGS Network by station #6-Apomahon in Nea Filadelfia , Athens, Greece, operated by Dimitris Papadeas receiving data from SOKRAT satellite.

The 2.000.000th observation is a result of an amazing network of ground stations and it marks the continuous efforts of hundreds of ground station owners! The SatNOGS community boasts a booming number of 200+ fully operational ground stations and 100+ in testing mode. The observations come from 400+ satellites and 880+ transmitters and over 64.800.000 data frames.

Do you want to join the next millions of observations? Do you want to be part of this community? Check out the SatNOGS knowledge-base wiki, and don’t hesitate to reach out to the community forums and chat. We would love to have you onboard the SatNOGS network and community. Join us now

SatNOGS client March 2020 update

The time has come for a brand new update! We would like to announce that a new upgrade is available for the SatNOGS Client software. You are advised to check the SatNOGS Client Setup wiki page to find out more about how to upgrade and configure your station.

A few words on the new update

You will find that in the new version, Ansible has been updated to include all the latest stable SatNOGS Client, Radio and Setup Software. This new version sees a major shift towards new technologies and new architecture.

Advanced Configuration Settings

One of the most significant changes that this new release delivers is gr-soapy and the transition from the OsmoSDR library to the SoapySDR Library. This inclusion brings forth numerous performance improvements and expands support to include new, upcoming software-defined radio devices. As far as gr-soapy is concerned, it is a sub-activity of SDR Makerspace; an initiative brought on by ESA and Libre Space Foundation. The aim of this initiative is to develop several open-source, Software Defined Radio projects to enable, facilitate and support satellite communications. The latest SatNOGS update delivers to you this technology.

the SDR makerspace logo

What is more, this new release comes with more sensitive decoders allowing a wider range of data to be collected by the network. With each satellite pass, more valuable data is collected, enhancing observation results. Note that contributions have been made easier as the GNU Radio flowgraphs have been removed from gr-satnogs and have been granted a separate, dedicated repository satnogs-flowgraphs.  Lastly, satnogs-config, the SatNOGS client configuration utility, has been rewritten in Python allowing for rapid development of new configuration features.


SatNOGS constitutes an amazing open-sourced project comprised of a global network of satellite ground stations. It is a participatory project which allows for satellite information and data to be available to any observer and enthusiast. Not only can individuals utilize all available ground stations, as they have free access to those, but they can even communicate with the satellites. The data and the results of the observations carried out are distributed freely.

This aligns with our values as they are expressed in detail, in the Libre Space Manifesto. We firmly believe in the power of information and how it can drastically contribute to allowing humanity to explore new horizons. Free access to information can help develop and use knowledge differently, and even thrive in different ways while overall changing life for the better.  For this, we work hard towards expanding the network of ground stations as well as providing updates (like the one we released) for the SatNOGS software. We wish this project to run on the most up-to-date technology and architecture, offering improvements and making observations more accurate and efficient.

The latest update facilitates improvements in performance, technology, and architecture for a network of 200+ fully operational ground stations and 100+ in testing mode. These have delivered over 1.900.000 observations (and counting), from 400+ satellites and 880+ transmitters and over 64.800.000 data frames. With the latest release, we aim at improving this whole network of free information and knowledge and making it more accurate for the observer.

Map of the network of all the active ground stations and those in testing mode

Interested in joining this project?

If you found what you read interesting and you are fascinated by space you can join us in this inspirational project. You are welcome to be part of this global network of enthusiasts and observers and you can even build your own ground station. Visit the Get Started page and get all the information you need and all the steps you need to take to be part of our Community. An easy way to get started is to build your own omnidirectional station by following the steps found on the How-to Page. We would love to welcome you to our project and to our community!