Close

Does this project spark your interest?

Become a member to follow this project and don't miss any updates

SatNOGS - Global Network of Ground Stations

SatNOGS is an open source ground station and network, optimized for modularity, built using affordable tools and resources.

22 317 218
Enjoy this project?
Share on twitter   Share on Facebook

This project was created on 06/04/2014 and last updated 16 days ago.

Description
SatNOGS project is a complete platform of an Open Source Networked Ground Station. The scope of the project is to create a full stack of open technologies based on open standards , and the construction of a full ground station as a showcase of the stack.
SatNOGS provides the basis for:

Bulk manufacturing and deployment of affordable Satellite Ground Stations
Modular design for integration with existing and future technologies
A platform for a variety of instrumentation around Satellite Ground Station operations
A firm platform for a Ground Station collaborative network (one to one, one to many, many to many)
A community based approach on Ground Station development
A solution for massive automation of operator-less Ground Stations based on open standards

Check out our documentation on the website for detailed info.
Details

SatNOGS is a modular and scalable stack for Satellite Ground Station implementation. Fully based on open source technologies and open standards, it provides interoperability with existing or future subsystems.

A Global Management Network is the key part of our stack, connecting multiple observers with multiple ground stations enabling tracking and monitoring of satellites from multiple locations around the world. The data gathered will be publicly accessible through the network website.

The following System Design visualization depicts all subsystems of the reference implementation of a SatNOGS Ground Station.

Components
  • 2 × Stepper Motor NEMA 14 or NEMA 17
  • 2 × 3D printed Gear Assembly Check our repo for designs
  • 1 × Arduino Uno For Alt/Az commands translation and commanding the stepper drivers
  • 1 × TP-Link wr703n For WiFi connectivity and routing
  • 2 × Signal Receiver DVB-T receiver based on RTL2832U
  • 2 × Yagi antenna For 2m and 70cm bands. Check repo for designs
  • 2 × A4988 Stepper Driver Pololu compatible
  • 1 × Odroid U3 For management interface, jobs queue, decoding and receiving

Project logs
  • LNA experimentation

    a month ago • 0 comments

    SatNOGS is focused on TX operations for Low Earth Orbit (LEO) satellites. Most satellites in those orbits transmit signals in relatively low power (compared to GSO satellites). 100mW to 2W is a typical range for LEO. Given that power output and our RX assembly (yagi + dvb dongle for reception) a Low Noise Amplifier can really improve our RX capabilities.

    We decided that LNA would be an integral part of our RX assembly early on, but we could not easily find something that would meet our requirements (bands, noise figure, cost, size etc). After browsing and researching a lot of different options out there, we stumbled upon LNA4ALL.

    LNA4ALL [1] is a great project by 9A4QV. The amplifier is built around Mini-Circuits PSA4-5043+ E-PHEMT Ultra Low noise MMIC amplifier operating from 50 MHz to 4 GHz. Small SOT-343 package combine low noise and high IP3 performance with internal match to 50 ohms. With 20 Euros as a pricetag, this was the LNA we were looking for.

    We are using our 5V output from the regulator we have inside SatNOGS as VCC for the LNA (required a tiny bit of modification) and the LNA is connected in line between our RX dongle and the antenna (using SMA connectors)

    Initial tests are showing great improvement in our reception (tested against a variety of bands, encoding and satellites) making this LNA an irreplaceable part of our project.

    Proper shielding and housing should be in place, so we designed [2] and 3d printed quickly a housing for this LNA. Some grounded aluminum tape makes up for a shield.

    More tests will follow, and we are designing new antennas and evaluating their matching.

    [1] http://lna4all.blogspot.com/

    [2] https://github.com/satnogs/satnogs-hardware/tree/master/Lna

  • Global Management Network - Intro and UX

    a month ago • 0 comments

    SatNOGS as a project has been concieved as many Satellite Ground Station implementations (like the v0.1 which is ready) coupled together under a global Network that would enable anyone to utilize SatNOGS as a single platform for observations.

    The UX idea is simple. An observer/astronomer/maker/hacker accesses our global Network via a web interface. Then she provides details about the observation that she would like to schedule like, which satellite, which band, what timeframe, which encoding etc. Then, having all the info , the system calculates the possible observation windows, on the available Ground Stations connected to the Network for the given timeframe (taking into account any tool, location and time constrains). Once the observer confirms the proposed "observation job" then it gets sent as a job to each Ground Station (GS) job queue to be executed when it has to.

    GSs are gathering observations, decoding/recording them and sending them back to the Network, making them available to the observer (and the world!).

    Here is a glimpse into the initial DB Schema of the Network (not all attributes are populated in the tables)

    The general design of the Network part of SatNOGS constitutes a typical many-to-many scheduling problem (many observers to many ground stations) Interestingly enough projects have been developed for observations planning and scheduling on satellites like Hubble (HST) Projects like SPIKE [1] and ASPEN [2]. Those are examples of many-to-one scheduling system s and we have been looking around for implementations that would be similar to our proposed one. Unfortunately we haven't found anything closely related, thus we are building the Network part from scratch.

    Given the expertise of our software people, we are building the application part on Django (python), and relying on rest APIs for communication with our ground stations. The first iteration of the network will be focused on a client-pull approach (versus a server-push) to eliminate any network restrictions.

    Our challenges towards the global network are interesting. Given the data-heavy approach of the network (imagine all observations from all stations stored and indexed) we expect data storage to be a serious challenge. We are evaluating deep-storage as an approach to this, and we welcome any feedback or ideas around that.

    [1] http://www.stsci.edu/institute/software_hardware/spike/

    [2] http://aspen.jpl.nasa.gov/

  • New Electronics Shield

    a month ago • 0 comments

    For v0.2 of our ground station we have been working on consolidation of our electronics trying to minimize size and upgrade the components. Combined with the current minimized approach for the gear assemblies, this will enable us to deliver a smaller more rigid and reliable ground station.

    The electronics that needed to be fitted in are the following:

    * An Arduino. We selected Pico for the size advantage

    * Two stepper drivers. We are using Pololu compatible A4983 based stepper drivers.

    Agis (our electronics expert) designed an integrated board to fit everything in. Here is the result:

    And the schematic:

    We are printing the PCB as we speak and will be posting a new log with the construction and testing.

View all 4 project logs

Build instructions
  • 1

    Build documentation of SatNOGS platform is coming soon. For now you can check our GitHub repo

Discussions

n0p wrote 8 days ago null point

For the new electronics shield, I think it would be a nice addition to break out the unused arduino pins. For future upgrades and prototyping of other features.

Are you sure? [yes] / [no]

Pierros Papadeas wrote 8 days ago null point

Hey n0p. Indeed a breakout for the unused arduino pins could be useful in the future. We will make sure to add this on v2. If you want you can take a pass on a v2 too :)

Are you sure? [yes] / [no]

Fotis Georgatos wrote a month ago null point

Hi Pierros et al,

I would like to point out, that if we are to implement a many-to-many configuration, this requires scheduling on at least two levels: A) global (=task submission) B) local (=execution site).

This is for example how the LCG (LHC Computing Grid) system has been implemented, crunching tons of data coming out of CERN, for some years already. Iff a FIFO queue at local (B) level is considered sufficient, then this has already been described how it's done in paper [1]; it is relatively trivial implementation for people experienced with the gLite middleware stack. Truth be told, that solution does not take into account celestial and orbital mechanics natively, at least not in a way that would yield near-optimal scheduling. Optimality here is a far more complex problem, which should rather be solved by the groups of users and resource owners. To do that, the concept of Virtual Organizations that grid systems provide, would become handy.

In short, there can be *some* initial solution, but for optimal utilization let's all honestly expect that this is a problem that will take some man-years of effort and tuning! If you are not sure why this would take time, try to play NetworKing [2] and you will understand ;-)

keep up,
Fotis

[1] Solomos, N. H. and Georgatos, F. (2006), System aspects of the EUDOXOS observatories network. Astronomische Nachrichten, 327: 796–799. doi: 10.1002/asna.200610673
[2] http://www.nasa.gov/multimedia/3d_resources/scan.html

Are you sure? [yes] / [no]

Jasmine wrote a month ago null point

Hello Pierros & SatNOGS team, I hope you received your Astronaut or Not t-shirts!

Just looking at your project and wanted to remind you that by August 20th you must have the following documentation on Hackaday Projects to be considered for the next round:
- A video less than 2 minutes long describing your project.
- At least 4 Project Logs (you need at least 3 more)
- A system design document (give us a visual overview of how it all works. Highlight the design doc in the details section)
- Links to code repositories, and remember to mention any licenses or permissions needed for your project. For example, if you are using software libraries you need to document that information.

You should also try to highlight how your project is 'Connected' and 'Open' in the details and video.

Good luck!

Are you sure? [yes] / [no]

Pierros Papadeas wrote a month ago null point

Hey Jasmine,

The Video is linked (actually we made a second one too) and we will be publishing the rest of the logs by 20th of Aug. Also links to code repos are on the side.

Does the uploaded Design Document viz meet the requirements?

Are you sure? [yes] / [no]

Marios Papachristou wrote a month ago null point

A great project from ardent developers!

Are you sure? [yes] / [no]

Fotis Georgatos wrote 2 months ago -1 point

Hello folks,

The idea of using 100s of SatNOGS together for tracking "whatever" has been buzzing in my mind, after the recent "astroexormisi" event in Mt. Elikonas, Greece, of last week!

There are a zillion of approaches to take about how to run such a setup and I'm growingly convinced that the best way may be to allow a bouquet of technologies to co-exist together.

I started looking at SPIKE and found out it's already 25 years old technology and many more things have sprung up in the meantime, see [1] [2] [3]. Windows of Opportunity (WoP) are an objective to highlight and calculating celestial and orbital mechanics may be the holy grail of this business. Subgroups of SatNOGs may be homogeneous or heterogenous, which affects scheduling dearly [4]. Finally, efforts to integrate observations with data reductions and network transfers should be overlooked and may become relevant [5].

Let me explain:
* This is by far and large a Multi-Objective-Optimization problem
* There are multiple scheduling platforms (SPIKE, ASPEN, Raptor/TALON)
* There are plenty of planning languages that could be of interest (ANML, PDDL, NDDL, AML)
* It is not clear if a push or pull scheduling (ref. "Condor") mechanism is optimal in efficiency
So, neither would ever any single approach be optimal for everybody at the same time!

In short, let's keep the current open API (congrats for that) and, build upon it multiple implementations, perhaps even allowing different coordinated groups to tackle this!

Thanks for reading the long email, F.

Ref.
[1] http://scholar.google.gr/scholar?q=SPIKE+Intelligent+Scheduling
[2] The Deep Space Network Scheduling Problem
http://www.aaai.org/Papers/AAAI/2005/IAAI05-009.pdf
[3] http://aspen.jpl.nasa.gov/
[4] http://scholar.google.gr/scholar?q=htn+telescope+scheduling
[5] https://www.google.gr/search?q=System+aspects+of+the+EUDOXOS+observatories+network

Are you sure? [yes] / [no]

Glenn Powers wrote 2 months ago null point

Since "Connectivity is a key aspect of our project," have you considered using BitTorrent Sync to share the data collected by the network? I'm using it to distribute my DokuWiki:

http://net127.com/

BitTorrent Sync and DokuWiki work well together, since DokuWiki uses plain text files and media files.

BitTorrent Sync is also excellent for synchronizing sites with intermittent network access.

http://www.bittorrent.com/sync

Are you sure? [yes] / [no]

Dan Royer wrote 2 months ago null point

I've been designing 3d printable slew bearings. Would they help?
http://www.thingiverse.com/thing:321679
I use them in my project: http://hackaday.io/project/945-6DOF-Robot-Arm

Are you sure? [yes] / [no]

Manthos Papamathaiou wrote 2 months ago null point

Very interesting piece of hardware Dan. We will definitely think about to use them. Nice robot arm to!

Are you sure? [yes] / [no]

Fotis Georgatos wrote 2 months ago null point

Geia hara Dan, (=hello)

I'm an engineer of the non-mechanical flavor, yet I'm inclined to infer that using such bearings would allow to increase the load envelope that the design can sustain, without pumping the costs too high. If so, that's very interesting. In fact, it might permit to add on SatNOGS heavier loads such as cameras, parabolic antennas and... well, maybe just maybe, small scale telescopes (to be sure: weight-balanced).

Are you sure? [yes] / [no]

Fotis Georgatos wrote 2 months ago null point

and an extra crazy thought: a mechanical robot arm such as yours, placed near the cargo area, could even service some of the equipment (switch receivers & lenses, monitor devices with a webcam, provide load support under heavy weather etc).

Are you sure? [yes] / [no]

Gary wrote 2 months ago null point

would like to see more. Really interested in how well those 3d gear will work with that larger array.

Are you sure? [yes] / [no]

Manthos Papamathaiou wrote 2 months ago 1 point

we will come up with more photos and videos very soon Gary. We are making some changes to the design to make it more compact and more easy to maintain. I think that the v0.2 will be ready very soon.

Are you sure? [yes] / [no]

hpux735 wrote 3 months ago null point

What are you using for the mechanics of the Az/El mount? Are those custom-machined or off-the-shelf?

Are you sure? [yes] / [no]

Manthos Papamathaiou wrote 3 months ago null point

Hello! We are actually using only 3D printed parts and some nuts and bolts.

Are you sure? [yes] / [no]

Adam Fabio wrote 3 months ago 1 point

Pierros, SatNOGS looks great! Thanks for sending it in to The Hackaday Prize. Can you upload a few more pictures of the prototype? Cad drawings are great, but nothing beats seeing those stepper worm drives in real life. I'd like to see more on the connected protocols as well - Can we use SatNOGS to create an open source Deep Space Network similar to the one NASA has?

Are you sure? [yes] / [no]

Pierros Papadeas wrote 3 months ago null point

Connectivity is a key aspect of our project. Indeed the concept is to create a global distributed network for satellite tracking and communications (similar to DSN, but for LEO MEO orbits :) )

Are you sure? [yes] / [no]

Fotis Georgatos wrote 2 months ago null point

> Can we use SatNOGS to create an open source Deep Space Network similar to the one NASA has?

Totally, YES!

I am able to tell so, since I saw the prototype in action couple of days ago, and it simply does what you would like it to do. The design is quite open and extendible. An area of possible improvements is to use more expensive materials as a matter of hardening it (eg. for harsh weather) yet its design is sound and, reusable to the max!

Are you sure? [yes] / [no]

Fotis Georgatos wrote 2 months ago null point

btw.
if you are on Apple or Wintel devices, check out this game (set aside 20mins):
http://www.nasa.gov/multimedia/3d_resources/scan.html # read objectives!
It will take you to the i-am-looking-forward-to-DSN mode quickly ;-)
Very useful and edutaining time-killer for long hours in airport/airplanes.
IMHO, it should be declared the official game of SatNOGs followers!

btw.
keep dreaming of possibilties, you never know what may happen with newer ideas!
http://www.technologyreview.com/article/403435/space-tracker/

Are you sure? [yes] / [no]

Mike Szczys wrote 3 months ago null point

Thanks for submitting this as an entry for The Hackaday Prize. You should add "TheHackadayPrize" as a tag.

As you get further along with your documentation make sure to look over the requirements and judging preferences. For instance, more documentation on your communications protocol would help satisfy the "connected" requirement and improve on the "open" preference.

Are you sure? [yes] / [no]

Pierros Papadeas wrote 3 months ago 2 points

Thanks for the suggestions Mike! We will make sure to publish the documentation with the requirements and judging preferences in mind.

Are you sure? [yes] / [no]